我们从一个常见的例子说起
一个质量为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)−fk−fB⇒mx¨+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)
z1=xz2=x˙⇒z1˙=x˙=z2z2˙=x¨=mf(t)−Bx˙−kx=m1u(t)−mBz2−mkz1(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[
[z1˙z2˙]=[0−mk1−mB][z1z2]+[0m1]u(t)(6)
系统的输出
y
y
y可以用下面这种形式表达
y
=
[
1
0
]
[
z
1
z
2
]
+
[
0
]
[
u
(
t
)
]
(7)
y = [1 \ 0]\left[
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)=(sI−A)−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(sI−A)−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(sI−A)−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(sI−A)−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}
(sI−A)−1,这时候会用到
(
s
I
−
A
)
−
1
=
(
s
I
−
A
)
∗
∣
s
I
−
A
∣
(sI-A)^{-1} = \frac{(sI-A)^*}{|sI-A|}
(sI−A)−1=∣sI−A∣(sI−A)∗,如果令
∣
s
I
−
A
∣
=
0
|sI-A| = 0
∣sI−A∣=0,这时候
s
s
s就是
A
A
A的特征值,也就是
A
A
A矩阵的特征值同样决定系统的稳定性。如果系统不稳定怎么办?我们就要想办法改造
A
A
A矩阵,这会在后边提起。
评论(0)
您还未登录,请登录后发表或查看评论