概述
本系列前几篇文章前面说了这么多关于控制工程的东西,还引入了ACC的被控系统分析,接下来想要针对得到的被控系统,分析一个很重要的问题:如何判定该被控系统是否稳定?该系统是发散还是收敛?
什么叫稳定性
稳定性是系统在收到扰动后回到正常状态的能力,这里扰动和响应都是有界的,因此也被称作 Bounded-input-bounded-output stability。稳定具体可分为三类:稳定,临界稳定和不稳定。下图就很好的解释了稳定、临界稳定和不稳定系统的区别。
实际上,稳定是针对整个系统而言的,我们可以加入控制器,通过设计恰当的控制器,原本不稳定的系统会变的稳定。自动控制理论就是想设计合理的控制器,使得系统最终可控(able to track reference)和稳定(stability)。这也是我们设计PID、MPC的意义所在。
判断稳定性
学习过控制理论的人都知道结论:传递函数极点在复平面左半平面系统稳定,在虚轴上临界稳定,在右半平面不稳定。这句话背后的含义是什么呢?
以下图传递函数G(s)为例说明:
- 传递函数已知时,输出 Y ( s ) = U ( s ) ∗ G ( s ) Y(s)=U(s)*G(s) Y(s)=U(s)∗G(s)。设输入是单位冲击响应(这里用冲击响应的原因是:线性时不变系统满足叠加定理,任意输入都可以看成无数冲击响应的叠加),若冲击响应造成的扰动最后归于0时,其它bounded distrubance造成的扰动响应也会归于0,系统稳定。单位冲击响应的拉普拉斯变换为1,这样输出就等于传递函数,对其进行拉普拉斯反变换后得到时域输出。
- 可以看出,两个极点的根—— -1和-2,出现在时域响应e的指数部分,当实数部分小于0时,随着t的增长,这个数会逐渐趋于0,因此系统稳定。
实际上,极点的实部和虚部,分别对应着时域响应的幅值部分和三角函数部分。对于虚部,根据欧拉公式,
e
i
t
e^{it}
eit 在时域下就是关于
t
t
t 三角函数。对于实部,如果小于0,则幅值会指数衰减,最终稳定;如果等于0,则幅值不变(即震荡);
t
t
t 大于零则幅值指数增大,发散不稳定。(这里可以查一下拉氏变换相关内容)
总结下极点的位置和稳定(响应)的关系如下图:
至此,我们知道通过传递函数的极点可以判断系统稳定性。控制工程师通过设计合理的控制器,改变系统整体的传递函数,达到好的控制效果,但反复求解极点是一件麻烦的事情。因此,聪明的前辈提出了很多方法来辅助判断稳定性,比如劳斯判据,根轨迹,奈奎斯特稳定判据等,这些都是围绕极点展开的方法。
这种思想一直延申到了现代控制领域,现代控制中系统的状态空间方程是:dot x = Ax+Bu,矩阵A的特征值正对应着传递函数的极点,特征根小于0则系统稳定,最后殊途同归。