现代控制理论-2状态空间

我们从一个常见的例子说起
在这里插入图片描述
一个质量为m的物体,受到一个弹簧和阻尼的共同作用,弹簧的弹力系数为k,阻尼的阻尼系数是B,这样的系统称为质量-弹簧-阻尼系统(mass-spring-damping)。这个系统的输入是 u ( t ) = f ( t ) u(t) = f(t) u(t)=f(t),输出是弹簧块向右的位移 x x x,也就是我们可以通过控制 f ( t ) f(t) f(t)的大小,来控制物体右移的距离。汽车的悬挂系统,以及任何与振动相关的系统都是这种形式。
我们可以通过受力来建立起这个系统的数学模型。物体m受到的向左的力包括弹簧的弹力和阻尼力。

f k = k x ,   f B = B x ˙ (1) f_k = kx, \ f_B = B\dot{x} \tag{1} fk=kx, fB=Bx˙(1)

根据牛顿第二定律,可以得到如下的方程

m x ¨ = f ( t ) − f k − f B ⇒ m x ¨ + f k + f B = f ( t ) (2) m\ddot{x} = f(t) - f_k-f_B \Rightarrow m\ddot{x} + f_k + f_B = f(t) \tag{2} mx¨=f(t)fkfBmx¨+fk+fB=f(t)(2)

我们可以通过Laplace Transform来找到这个系统的传递函数,对两边同时进行拉普拉斯变换,可以得到

m s 2 X ( s ) + B s X ( s ) + k X ( s ) = F ( s ) (3) ms^2X(s) + BsX(s) + kX(s) = F(s) \tag{3} ms2X(s)+BsX(s)+kX(s)=F(s)(3)

这样的系统的传递函数就是系统的输出比输入

G ( s ) = X ( x ) F ( s ) = 1 m s 2 + B s + k (4) G(s) = \frac{X(x)}{F(s)} = \frac{1}{ms^2+Bs+k}\tag{4} G(s)=F(s)X(x)=ms2+Bs+k1(4)

状态空间

在现代控制理论中,我们常会用state-space(状态空间)去表达系统的输入,输出和状态变量,而且通常是用一阶微分方程的形式去表达。现在上边的系统是用二阶微分方程去表达的,我们可以选取合适的状态变量去把二阶项消除掉,我们选取这样两个状态

z 1 = x z 2 = x ˙ ⇒ z 1 ˙ = x ˙ = z 2 z 2 ˙ = x ¨ = f ( t ) − B x ˙ − k x m = 1 m u ( t ) − B m z 2 − k m z 1 (5) \begin{matrix} z_1 = x \\ z_2 = \dot{x}\end{matrix} \Rightarrow \begin{matrix} \dot{z_1} = \dot{x} = z_2 \\ \dot{z_2} = \ddot{x} = \frac{f(t) - B\dot{x} - kx}{m} = \frac{1}{m}u(t) - \frac{B}{m}z_2 - \frac{k}{m}z_1 \end{matrix} \tag{5} z1=xz2=x˙z1˙=x˙=z2z2˙=x¨=mf(t)Bx˙kx=m1u(t)mBz2mkz1(5)

我们就可以把上边的微分方程写成状态空间表达式的形式, z 1 , z 2 z_1,z_2 z1,z2就是系统状态随时间的变化

[ z 1 ˙ z 2 ˙ ] = [ 0 1 − k m − B m ] [ z 1 z 2 ] + [ 0 1 m ] u ( t ) (6) \left[ \begin{matrix} \dot{z_1} \\ \dot{z_2} \end{matrix}\right] = \left[ \begin{matrix} 0 & 1 \\ -\frac{k}{m} & -\frac{B}{m} \end{matrix}\right] \left[ \begin{matrix} z_1 \\ z_2 \end{matrix}\right] +\left[ \begin{matrix} 0 \\ \frac{1}{m} \end{matrix}\right]u(t) \tag{6} [z1˙z2˙]=[0mk1mB][z1z2]+[0m1]u(t)(6)
系统的输出 y y y可以用下面这种形式表达

y = [ 1   0 ] [ z 1 z 2 ] + [ 0 ] [ u ( t ) ] (7) y = [1 \ 0]\left[ \begin{matrix} z_1 \\ z_2\end{matrix}\right] + [0][u(t)] \tag{7} y=[1 0][z1z2]+[0][u(t)](7)

上边的两个式子可以用更一般的通用形式表示

z ˙ = A z + B u (8) \dot{z} = Az+Bu\tag{8} z˙=Az+Bu(8)

y = C z + D u (9) y = Cz+Du \tag{9} y=Cz+Du(9)

这就是系统的状态方程的表达形式。

现在来看一下系统的状态方程与传递函数之间的关系。我们对(8)式做拉普拉斯变换

s Z ( s ) = A Z ( s ) + B U ( s ) (10) sZ_{(s)} = AZ_{(s)}+BU_{(s)} \tag{10} sZ(s)=AZ(s)+BU(s)(10)

可以得到下面的等式

Z ( s ) = ( s I − A ) − 1 B U ( s ) , I 是 单 位 矩 阵 (11) Z_{(s)} = (sI-A)^{-1}BU_{(s)},I是单位矩阵 \tag{11} Z(s)=(sIA)1BU(s),I(11)

我们再对(9)式做拉普拉斯变换

Y ( s ) = C Z ( s ) + D U ( s ) (12) Y_{(s)} = CZ_{(s)}+DU_{(s)} \tag{12} Y(s)=CZ(s)+DU(s)(12)

将(11)式带入到(12)式中,可以得到

Y ( s ) = C ( s I − A ) − 1 B U ( s ) + D U ( s ) (13) Y_{(s)} = C(sI-A)^{-1}BU_{(s)}+DU_{(s)} \tag{13} Y(s)=C(sIA)1BU(s)+DU(s)(13)

然后这个系统的传递函数就是

G ( s ) = Y ( s ) U ( s ) = C ( s I − A ) − 1 B + D (14) G_{(s)} = \frac{Y_{(s)}}{U_{(s)}} = C(sI-A)^{-1}B+D \tag{14} G(s)=U(s)Y(s)=C(sIA)1B+D(14)

如果我们上边那个系统的系数带入到(14)中,我们会得到 G ( s ) = C ( s I − A ) − 1 B + D = 1 m s 2 + B s + k G(s) = C(sI-A)^{-1}B+D = \frac{1}{ms^2+Bs+k} G(s)=C(sIA)1B+D=ms2+Bs+k1

我们看一下上式中的分母部分,如果令分母 m s 2 + B s + k = 0 ms^2+Bs+k=0 ms2+Bs+k=0,则此时的 s s s为极点,极点将会决定系统的稳定性,我们可以猜测 A A A矩阵的特征值也会决定系统的稳定性,是因为在求解上述传递函数的过程中,要求 ( s I − A ) − 1 (sI-A)^{-1} (sIA)1,这时候会用到 ( s I − A ) − 1 = ( s I − A ) ∗ ∣ s I − A ∣ (sI-A)^{-1} = \frac{(sI-A)^*}{|sI-A|} (sIA)1=sIA(sIA),如果令 ∣ s I − A ∣ = 0 |sI-A| = 0 sIA=0,这时候 s s s就是 A A A的特征值,也就是 A A A矩阵的特征值同样决定系统的稳定性。如果系统不稳定怎么办?我们就要想办法改造 A A A矩阵,这会在后边提起。

  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值