线性系统粗浅认识——第九次作业
声明:本人特别菜,不研究相关的方向,差点挂科,这个作业的内容仅供交流。
题目
利用平衡实现将一个5阶系统降成3阶系统,并将降阶前系统的阶跃响应与降阶后系统的阶跃响应作对比,给出分析。(温馨提示:原系统中3个特征根靠近虚轴,2个远离虚轴,两组根到虚轴的距离比应在5以上)
直接设计 A B C D ABCD ABCD的系统:
系统的设计,为了简化计算设计一个特别简单的系统,
降阶前的系统设计:
对于5阶系统,系统的ABCD阵分别为:
A
=
[
−
1
0
0
0
0
0
−
4
0
0
0
0
0
−
9
0
0
0
0
0
−
1
0
6
0
0
0
0
0
−
4
×
1
0
6
]
B
=
[
1
1
1
1
1
]
C
=
[
1
1
1
1
1
]
D
=
0
G
(
s
)
=
1
(
s
+
1
)
+
1
(
s
+
4
)
+
1
(
s
+
9
)
+
1
(
s
+
10
6
)
+
1
(
s
+
4
×
1
0
6
)
=
5
s
4
+
2
×
10
7
s
3
+
1.2
×
10
13
s
2
+
1.12
×
10
14
s
+
1.96
×
10
14
s
5
+
5
×
10
6
s
4
+
4
×
10
12
s
3
+
5.6
×
10
13
s
2
+
1.96
×
10
14
s
+
1.44
×
10
14
\begin{array}{l} A = \left[ {\begin{matrix}{} {{\rm{ - 1}}}&{\rm{0}}&{\rm{0}}&{\rm{0}}&{\rm{0}}\\ {\rm{0}}&{{\rm{ - 4}}}&{\rm{0}}&{\rm{0}}&{\rm{0}}\\ {\rm{0}}&{\rm{0}}&{{\rm{ - 9}}}&{\rm{0}}&{\rm{0}}\\ {\rm{0}}&{\rm{0}}&{\rm{0}}&{{\rm{ - 1}}{{\rm{0}}^{\rm{6}}}}&{\rm{0}}\\ {\rm{0}}&{\rm{0}}&{\rm{0}}&{\rm{0}}&{{\rm{ - 4}} \times {\rm{1}}{{\rm{0}}^{\rm{6}}}} \end{matrix}} \right]B = \left[ {\begin{matrix}{} 1\\ 1\\ 1\\ 1\\ 1 \end{matrix}} \right]\\ C = \left[ {\begin{matrix}{} 1&1&1&1&1 \end{matrix}} \right]D = 0\\ G(s) = \frac{1}{{(s + 1)}} + \frac{1}{{(s + 4)}} + \frac{1}{{(s + 9)}} + \frac{1}{{(s + {{10}^6})}} + \frac{1}{{(s + {\rm{4}} \times {\rm{1}}{{\rm{0}}^{\rm{6}}})}}\\ = \frac{{5{s^4} + 2 \times {{10}^7}{s^3} + 1.2 \times {{10}^{13}}{s^2} + 1.12 \times {{10}^{14}}s + 1.96 \times {{10}^{14}}}}{{{s^5} + 5 \times {{10}^6}{s^4} + 4 \times {{10}^{12}}{s^3} + 5.6 \times {{10}^{13}}{s^2} + 1.96 \times {{10}^{14}}s + 1.44 \times {{10}^{14}}}} \end{array}
A=⎣⎢⎢⎢⎢⎡−100000−400000−900000−10600000−4×106⎦⎥⎥⎥⎥⎤B=⎣⎢⎢⎢⎢⎡11111⎦⎥⎥⎥⎥⎤C=[11111]D=0G(s)=(s+1)1+(s+4)1+(s+9)1+(s+106)1+(s+4×106)1=s5+5×106s4+4×1012s3+5.6×1013s2+1.96×1014s+1.44×10145s4+2×107s3+1.2×1013s2+1.12×1014s+1.96×1014
很容易看出来该系统能控能观,
G
(
s
)
G(s)
G(s)是 的最小实现
下面求平衡实现
W
c
=
∫
0
∞
e
A
t
B
B
T
e
A
T
t
d
t
=
[
1
2
1
5
1
10
1
10
6
+
1
1
4
×
10
6
+
1
1
5
1
8
1
13
1
10
6
+
4
1
4
×
10
6
+
4
1
10
1
13
1
18
1
10
6
+
9
1
4
×
10
6
+
9
1
10
6
+
1
1
10
6
+
4
1
10
6
+
9
1
2
×
10
6
1
5
×
10
6
1
4
×
10
6
+
1
1
4
×
10
6
+
4
1
4
×
10
6
+
9
1
5
×
10
6
1
8
×
10
6
]
=
W
o
=
∫
0
∞
e
A
T
t
C
T
C
e
A
t
d
t
{W_c} = \int\limits_0^\infty {{e^{At}}B{B^T}{e^{{A^T}t}}} dt = \left[ {\begin{matrix}{} {\frac{1}{2}}&{\frac{1}{5}}&{\frac{1}{{10}}}&{\frac{1}{{{{10}^6} + 1}}}&{\frac{1}{{4 \times {{10}^6} + 1}}}\\ {\frac{1}{5}}&{\frac{1}{8}}&{\frac{1}{{13}}}&{\frac{1}{{{{10}^6} + 4}}}&{\frac{1}{{4 \times {{10}^6} + 4}}}\\ {\frac{1}{{10}}}&{\frac{1}{{13}}}&{\frac{1}{{18}}}&{\frac{1}{{{{10}^6} + 9}}}&{\frac{1}{{4 \times {{10}^6} + 9}}}\\ {\frac{1}{{{{10}^6} + 1}}}&{\frac{1}{{{{10}^6} + 4}}}&{\frac{1}{{{{10}^6} + 9}}}&{\frac{1}{{2 \times {{10}^6}}}}&{\frac{1}{{5 \times {{10}^6}}}}\\ {\frac{1}{{4 \times {{10}^6} + 1}}}&{\frac{1}{{4 \times {{10}^6} + 4}}}&{\frac{1}{{4 \times {{10}^6} + 9}}}&{\frac{1}{{5 \times {{10}^6}}}}&{\frac{1}{{8 \times {{10}^6}}}} \end{matrix}} \right] = {W_o} = \int\limits_0^\infty {{e^{{A^T}t}}{C^T}C{e^{At}}} dt
Wc=0∫∞eAtBBTeATtdt=⎣⎢⎢⎢⎢⎡2151101106+114×106+115181131106+414×106+41101131181106+914×106+91106+11106+41106+912×10615×10614×106+114×106+414×106+915×10618×1061⎦⎥⎥⎥⎥⎤=Wo=0∫∞eATtCTCeAtdt
从计算结果上分析,可以知道给出的
A
B
C
D
ABCD
ABCD阵已经是一种平衡实现
W
c
=
R
T
R
R
=
[
0
.
25
0
.
100
0
.
050
4
.
999
×
1
0
−
7
1
.
2499
×
1
0
−
7
0
.
10
0
.
0625
0
.
038
4
.
999
×
1
0
−
7
1
.
2499
×
1
0
−
7
0
.
05
0
.
0385
0
.
0278
4
.
999
×
1
0
−
7
1
.
2499
×
1
0
−
7
4
.
99
×
1
0
−
7
4
.
99
×
1
0
−
7
4
.
999
×
1
0
−
7
2
.
500
×
1
0
−
7
100000
1
.
2499
×
1
0
−
7
1
.
249
×
1
0
−
7
1
.
2499
×
1
0
−
7
1
.
00
×
1
0
−
7
62500
]
\begin{array}{l} {W_c} = {R^T}R\\ R = \left[ {\begin{matrix}{} {{\rm{0}}{\rm{.25}}}&{{\rm{0}}{\rm{.100}}}&{{\rm{0}}{\rm{.050}}}&{{\rm{4}}{\rm{.999}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}&{{\rm{1}}{\rm{.2499}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}\\ {{\rm{0}}{\rm{.10}}}&{{\rm{0}}{\rm{.0625}}}&{{\rm{0}}{\rm{.038}}}&{{\rm{4}}{\rm{.999}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}&{{\rm{1}}{\rm{.2499}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}\\ {{\rm{0}}{\rm{.05}}}&{{\rm{0}}{\rm{.0385}}}&{{\rm{0}}{\rm{.0278}}}&{{\rm{4}}{\rm{.999}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}&{{\rm{1}}{\rm{.2499}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}\\ {{\rm{4}}{\rm{.99}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}&{{\rm{4}}{\rm{.99}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}&{{\rm{4}}{\rm{.999}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}&{{\rm{2}}{\rm{.500}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}&{{\rm{100000}}}\\ {{\rm{1}}{\rm{.2499}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}&{{\rm{1}}{\rm{.249}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}&{{\rm{1}}{\rm{.2499}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}&{{\rm{1}}{\rm{.00}} \times {\rm{1}}{{\rm{0}}^{ - 7}}}&{{\rm{62500}}} \end{matrix}} \right] \end{array}
Wc=RTRR=⎣⎢⎢⎢⎢⎡0.250.100.054.99×10−71.2499×10−70.1000.06250.03854.99×10−71.249×10−70.0500.0380.02784.999×10−71.2499×10−74.999×10−74.999×10−74.999×10−72.500×10−71.00×10−71.2499×10−71.2499×10−71.2499×10−710000062500⎦⎥⎥⎥⎥⎤
对 进行奇异值分解得到奇异值
235849.528
0.613
0.064
0.0030
9.539
×
10
−
8
\begin{matrix}{{}{}} {235849.528}\\ {0.613}\\ {0.064}\\ {0.0030}\\ {9.539 \times {{10}^{ - 8}}} \end{matrix}
235849.5280.6130.0640.00309.539×10−8
我们可以观察这个奇异值的大小,可以系统的阶次从5降为3,主要的三个特征值就是前三个。
下面我们利用
M
A
T
L
A
B
MATLAB
MATLAB里面函数
b
a
l
a
n
c
e
t
r
u
n
c
balancetrunc
balancetrunc进行降阶的平衡实现,得到了新的系统状态方程矩阵
A
1
,
B
1
,
C
1
,
D
1
{A_1},{B_1},{C_1},{D_1}
A1,B1,C1,D1
A
1
=
[
−
1.846
−
1.851
−
0.492
−
1.851
−
5.424
−
2.504
−
0.492
−
2.504
−
6.73
]
,
B
1
=
[
1
.
505
0
.
833
0
.
201
]
C
1
=
[
1
.
5050
.
8330
.
201
]
D
1
=
0
\begin{array}{l} A{}_1 = \left[ {\begin{matrix}{} { - 1.846}&{ - 1.851}&{ - 0.492}\\ { - 1.851}&{ - 5.424}&{ - 2.504}\\ { - 0.492}&{ - 2.504}&{ - 6.73} \end{matrix}} \right],{B_1} = \left[ \begin{matrix}{} {\rm{1}}{\rm{.505}}\\ {\rm{0}}{\rm{.833}}\\ {\rm{0}}{\rm{.201}} \end{matrix} \right]\\ {C_1} = \left[ {{\rm{1}}{\rm{.505 0}}{\rm{.833 0}}{\rm{.201}}} \right]{D_1} = 0 \end{array}
A1=⎣⎡−1.846−1.851−0.492−1.851−5.424−2.504−0.492−2.504−6.73⎦⎤,B1=⎣⎡1.5050.8330.201⎦⎤C1=[1.5050.8330.201]D1=0
下面对系统进行传递函数和最小实现的状态方程和平衡实现的状态方程和平衡截断的状态方程进行仿真。对系统给阶跃输入,用示波器观察系统的输出,时间选为100s.
仿真的图如下所示:
| 图1 系统仿真图 |
|–|–|
示波器的显示如下:
| 图2 示波器的响应结果 |
|–|–|
从示波器显示的响应结果上看,四种方式实现的系统响应基本完全一致,说明平衡截断降低了系统的阶次,但对系统的性能影响很小,可以进行平衡截断。
基于
M
a
r
k
o
v
Markov
Markov设计参数实现平衡截断
首先我们设计
Σ
2
=
[
−
1
0
0
0
0
0
−
4
0
0
0
0
0
−
9
0
0
0
0
0
−
4
×
1
0
6
0
0
0
0
0
−
9
×
1
0
6
]
{\Sigma ^{\rm{2}}}{\rm{ = }}\left[ {\begin{matrix}{} {{\rm{ - 1}}}&{\rm{0}}&{\rm{0}}&{\rm{0}}&{\rm{0}}\\ {\rm{0}}&{{\rm{ - 4}}}&{\rm{0}}&{\rm{0}}&{\rm{0}}\\ {\rm{0}}&{\rm{0}}&{{\rm{ - 9}}}&{\rm{0}}&{\rm{0}}\\ {\rm{0}}&{\rm{0}}&{\rm{0}}&{{\rm{ - 4}} \times {\rm{1}}{{\rm{0}}^{\rm{6}}}}&{\rm{0}}\\ {\rm{0}}&{\rm{0}}&{\rm{0}}&{\rm{0}}&{{\rm{ - 9}} \times {\rm{1}}{{\rm{0}}^{\rm{6}}}} \end{matrix}} \right]
Σ2=⎣⎢⎢⎢⎢⎡−100000−400000−900000−4×10600000−9×106⎦⎥⎥⎥⎥⎤
H
=
Σ
2
=
u
[
λ
1
0
0
0
⋱
0
0
0
λ
n
]
v
H = {\Sigma ^2} = u\left[ {\begin{matrix}{} {{\lambda _1}}&0&0\\ 0& \ddots &0\\ 0&0&{{\lambda _n}} \end{matrix}} \right]v
H=Σ2=u⎣⎡λ1000⋱000λn⎦⎤v
所以
u
=
v
=
[
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
]
u = v = \left[ {\begin{matrix}{} 1&0&0&0&0\\ 0&1&0&0&0\\ 0&0&1&0&0\\ 0&0&0&1&0\\ 0&0&0&0&1 \end{matrix}} \right]
u=v=⎣⎢⎢⎢⎢⎡1000001000001000001000001⎦⎥⎥⎥⎥⎤
W
c
=
W
o
=
Σ
=
R
T
R
{W_c} = {W_o} = \Sigma = {R^T}R
Wc=Wo=Σ=RTR
因此
R
T
=
[
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
]
{R^T} = \left[ {\begin{matrix}{} 1&0&0&0&0\\ 0&1&0&0&0\\ 0&0&1&0&0\\ 0&0&0&1&0\\ 0&0&0&0&1 \end{matrix}} \right]
RT=⎣⎢⎢⎢⎢⎡1000001000001000001000001⎦⎥⎥⎥⎥⎤
P
=
Σ
u
T
(
R
T
)
−
1
=
[
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
0
0
1
]
P = \Sigma {u^T}{({R^T})^{ - 1}} = \left[ {\begin{matrix}{} 1&0&0&0&0\\ 0&1&0&0&0\\ 0&0&1&0&0\\ 0&0&0&1&0\\ 0&0&0&0&1 \end{matrix}} \right]
P=ΣuT(RT)−1=⎣⎢⎢⎢⎢⎡1000001000001000001000001⎦⎥⎥⎥⎥⎤
根据课堂上推导的公式计算
A
B
C
D
ABCD
ABCD矩阵
传递函数如下:
F
3
=
1
s
+
1
0
0
0
0
0
1
s
+
4
0
0
0
0
0
1
s
+
9
0
0
0
0
0
1
s
+
4
×
10
6
0
0
0
0
0
1
s
+
4
×
10
9
{F_3} = {\begin{matrix}{} {\frac{1}{{s + 1}}}&0&0&0&0\\ 0&{\frac{1}{{s + 4}}}&0&0&0\\ 0&0&{\frac{1}{{s + 9}}}&0&0\\ 0&0&0&{\frac{1}{{s + 4 \times {{10}^6}}}}&0\\ 0&0&0&0&{\frac{1}{{s + 4 \times {{10}^9}}}} \end{matrix}}
F3=s+1100000s+4100000s+9100000s+4×106100000s+4×1091
利用
M
A
T
L
A
B
MATLAB
MATLAB中的
b
a
l
a
n
c
e
t
r
u
n
c
balancetrunc
balancetrunc进行平衡截断,得到状态方程矩阵
A
4
=
[
−
1
0
0
0
−
4
0
0
0
−
9
]
B
4
=
[
1
0
0
0
0
0
1
0
0
0
0
0
1
0
0
]
C
4
=
[
1
0
0
0
1
0
0
0
1
0
0
0
0
0
0
]
\begin{array}{l} {A_4} = \left[ {\begin{matrix}{} {{\rm{ - 1}}}&{\rm{0}}&{\rm{0}}\\ {\rm{0}}&{{\rm{ - 4}}}&{\rm{0}}\\ {\rm{0}}&{\rm{0}}&{{\rm{ - 9}}} \end{matrix}} \right]{B_4} = \left[ {\begin{matrix}{} {\rm{1}}&{\rm{0}}&{\rm{0}}&{\rm{0}}&{\rm{0}}\\ {\rm{0}}&{\rm{1}}&{\rm{0}}&{\rm{0}}&{\rm{0}}\\ {\rm{0}}&{\rm{0}}&{\rm{1}}&{\rm{0}}&{\rm{0}} \end{matrix}} \right]\\ {C_4} = \left[ {\begin{matrix}{} {\rm{1}}&{\rm{0}}&{\rm{0}}\\ {\rm{0}}&{\rm{1}}&{\rm{0}}\\ {\rm{0}}&{\rm{0}}&{\rm{1}}\\ {\rm{0}}&{\rm{0}}&{\rm{0}}\\ {\rm{0}}&{\rm{0}}&{\rm{0}} \end{matrix}} \right] \end{array}
A4=⎣⎡−1000−4000−9⎦⎤B4=⎣⎡100010001000000⎦⎤C4=⎣⎢⎢⎢⎢⎡100000100000100⎦⎥⎥⎥⎥⎤
从状态方程矩阵的变化看出,系统平衡截断去掉了距离虚轴特别远的两个奇异值。
下面对这两个进行仿真:
仿真系统图
| 图3 系统仿真图 |
|–|–|
示波器的结果图:
| 图4 示波器结果图1 |
|–|–|
| 图5 示波器结果图2 |
|–|–|
| 图6 示波器结果图3 |
|–|–|
| 图7 示波器结果图4 |
|–|–|
| 图8 示波器结果图5 |
|–|–|
从图中可以看出,系统进行平衡截断前后,系统的响应几乎没有任何改变。说明平衡截断降低了系统的阶次,但对系统的性能影响很小,可以进行平衡截断。