数学模型:传递函数与状态空间模型
大家好,我是老张。今天咱们聊聊控制系统的数学模型。
说实话,搞控制这么多年,我最大的体会就是:模型是控制的基础。你模型建得准,控制器设计就成功了一半。模型建得稀里糊涂,后面再怎么调参也是白费力气。
这一章,我带你吃透两种最常用的模型——传递函数和状态空间模型。它们就像控制工程师的左膀右臂,缺一不可。
2.1 传递函数:从时域到频域的桥梁
传递函数这东西,说白了就是输出拉氏变换除以输入拉氏变换。你想想看,一个线性时不变系统,输入是 \( u(t) \),输出是 \( y(t) \),那它的传递函数就是:
\[ G(s) = \frac{Y(s)}{U(s)} \]这里有个前提——初始条件必须为零。我记得刚入行那会儿,有个项目死活调不通,查了半天才发现是初始条件没清零。嗯,这个坑我替你们踩过了。
2.1.1 传递函数的标准形式
实际工程中,我们通常把传递函数写成有理分式:
\[ G(s) = \frac{b_m s^m + b_{m-1} s^{m-1} + \cdots + b_0}{a_n s^n + a_{n-1} s^{n-1} + \cdots + a_0} \]这里 \( n \geq m \),也就是分母阶次不低于分子阶次。为什么?因为物理可实现系统的因果性约束。我在做电机控制时,经常遇到分子阶次比分母高的情况,那多半是模型简化出了问题。
- 极点:分母多项式的根,决定系统稳定性
- 零点:分子多项式的根,影响系统动态响应
- 增益:系统稳态时的放大倍数
2.1.2 典型环节的传递函数
我习惯把复杂系统拆成几个典型环节来分析。你想想看,再复杂的系统,无非就是这些基本单元的串联和并联:
| 环节名称 | 传递函数 | 典型应用 |
|---|---|---|
| 比例环节 | \( G(s) = K \) | 放大器、传感器 |
| 积分环节 | \( G(s) = \frac{K}{s} \) | 电机转速、液位控制 |
| 微分环节 | \( G(s) = Ks \) | 速度反馈、超前校正 |
| 一阶惯性 | \( G(s) = \frac{K}{Ts+1} \) | RC电路、热系统 |
| 二阶振荡 | \( G(s) = \frac{\omega_n^2}{s^2 + 2\zeta\omega_n s + \omega_n^2} \) | 弹簧-质量-阻尼系统 |
2.2 状态空间模型:现代控制理论的基石
传递函数虽然好用,但它有个硬伤——只能描述单输入单输出系统。你想想看,现在的工业系统哪个不是多变量耦合的?这时候就得请出状态空间模型了。
状态空间模型的核心思想是:用一阶微分方程组描述系统。标准形式如下:
\[ \begin{cases} \dot{\mathbf{x}}(t) = \mathbf{A}\mathbf{x}(t) + \mathbf{B}\mathbf{u}(t) \\ \mathbf{y}(t) = \mathbf{C}\mathbf{x}(t) + \mathbf{D}\mathbf{u}(t) \end{cases} \]其中:
- \( \mathbf{x}(t) \):状态向量,描述系统内部状态
- \( \mathbf{u}(t) \):输入向量
- \( \mathbf{y}(t) \):输出向量
- \( \mathbf{A} \):系统矩阵,决定系统动态特性
- \( \mathbf{B} \):输入矩阵
- \( \mathbf{C} \):输出矩阵
- \( \mathbf{D} \):直接传递矩阵(通常为零)
2.2.1 从传递函数到状态空间
这两者之间可以互相转换。我给大家展示一个最简单的例子——可控标准型。
假设传递函数为:
\[ G(s) = \frac{b_1 s + b_0}{s^2 + a_1 s + a_0} \]对应的状态空间模型为:
A = [0 1;
-a0 -a1]
B = [0;
1]
C = [b0 b1]
D = 0
为什么会这样?你想想看,状态变量 \( x_1 \) 和 \( x_2 \) 其实对应的是系统内部的两个积分环节。这种结构在MATLAB里直接用 tf2ss 函数就能搞定。
2.3 线性系统的基本性质
搞清楚了模型,咱们还得聊聊线性系统的基本性质。说白了,就是叠加性和齐次性。
- 叠加性:多个输入同时作用,总输出等于各输入单独作用时输出之和
- 齐次性:输入放大 \( k \) 倍,输出也放大 \( k \) 倍
这两个性质看似简单,但实际工程中经常被忽略。我记得有一次做温度控制系统,明明输入是线性的,输出却非线性。查了半天,原来是加热器的电阻随温度变化了——系统本身就不是线性的。
- 满足叠加性和齐次性
- 参数不随时间变化(时不变)
- 微分方程系数为常数
2.4 知识体系总览
下面这张图,是我自己总结的数学模型知识框架。你把它记在心里,后面学起来会轻松很多。
2.5 模型选择:什么时候用哪个?
很多新手会问:到底用传递函数还是状态空间?我的建议是:
- 单输入单输出、频域分析:用传递函数,直观方便
- 多输入多输出、时域分析:用状态空间,灵活强大
- 现代控制方法(LQR、卡尔曼滤波):必须用状态空间
好了,这一章的内容就到这里。数学模型是控制系统的灵魂,你把它吃透了,后面的稳定性分析、控制器设计都会顺风顺水。
公众号:蓝海资料掘金营,微信deep3321