实验十四_MATLAB的线性控制系统分析与设计说明
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验十四: MATLAB 的线性控制系统分析与设计
一.实验目的
1.熟练掌握线性系统的各种模型描述。
2.熟练掌握模型之间的转换。
二.实验容与步骤
在控制系统分析与设计中,常用状态方程模型来描述一个控制系统,状态方程通常为一阶微分方程
例如,二阶系统 可用状态方程描述如下 其中:
MATLAB 的控制系统工具箱(Control System Toolbox)可以提供对线性系统分析、设计和建模的各种算法。
1.1状态空间描述法
状态空间描述法是使用状态方程模型来描述控制系统,MATLAB 中状态方程模型的建立使用ss 和dss 命令。
语法:
G=ss(a,b,c,d) %由a 、b 、c 、d 参数获得状态方程模型
G=dss(a,b,c,d,e) %由a 、b 、c 、d 、e 参数获得状态方程模型
【例1】写出二阶系统u(t)ωy(t)ωdt
dy(t)2ζdt y(t)
d 2n 2n n 22=+ω+,当ζ=0.707,n ω=1时的状态方程。
zeta=0.707;wn=1;
A=[0 1;-wn^2 -2*zeta*wn];
B=[0;wn^2];
C=[1 0];
D=0;
G=ss(A,B,C,D) %建立状态方程模型
⎩⎨⎧+=+=Du Cx y Bu Ax x &u (t)2n ωy(t)2n ωd t d y(t)n 2ζ2
d t y(t)2d =+ω+u(t)ω0x x 2ζω10x x 2n 21n 2n 21⎥⎦⎤⎢⎣⎡+⎥⎦⎤⎢⎣⎡⎥⎦⎤⎢⎣⎡ω--=⎥⎦
⎤⎢⎣⎡&&dt
t dy x t y x )()(21==
a =
x1 x2
x1 0 1
x2 -1 -1.414
b =
u1
x1 0
x2 1
c =
x1 x2
y1 1 0
d =
u1
y1 0
Continuous-time model.
1.2传递函数描述法
MATLAB中使用tf命令来建立传递函数。
语法:
G=tf(num,den) %由传递函数分子分母得出
说明:num为分子向量,num=[b1,b2,…,b m,b m+1];den为分母向量,den=[a1,a2,…,a n-1,a n]。
【例1续】将二阶系统描述为传递函数的形式。
num=1;
den=[1 1.414 1];
G=tf(num,den) %得出传递函数
Transfer function:
1
-----------------
s^2 + 1.414 s + 1
1.3零极点描述法
MATLAB 中使用zpk 命令可以来实现由零极点得到传递函数模型。
语法:
G=zpk(z,p,k) %由零点、极点和增益获得
说明:z 为零点列向量;p 为极点列向量;k 为增益。
【例1续】得出二阶系统的零极点,并得出传递函数。
num=1;
den=[1 1.414 1];
z=roots(num)
p=roots(den)
zpk(z,p,1)
z =
Empty matrix: 0-by-1
p =
-0.7070 + 0.7072i
-0.7070 - 0.7072i
Zero/pole/gain:
1
-------------------
(s^2 + 1.414s + 1)
程序分析:roots 函数可以得出多项式的根,零极点形式是以实数形式表示的。 部分分式法是将传递函数表示成部分分式或留数形式:
k(s)p s r p s r p s r G (s)n
n 2211+-++-+-=Λ 【例1续】将传递函数转换成部分分式法,得出各系数
num=1;
den=[1 1.414 1];
[r,p,k]=residue(num,den)
r =
0 - 0.7070i
0 + 0.7070i
p =
-0.7070 + 0.7072i
-0.7070 - 0.7072i
k =
[]
1.4离散系统的数学描述
1.状态空间描述法
状态空间描述离散系统也可使用ss和dss命令。
语法:
G=ss(a,b,c,d,Ts) %由a、b、c、d参数获得状态方程模型
G=dss(a,b,c,d,e,Ts) %由a、b、c、d、e参数获得状态方程模型说明:Ts为采样周期,为标量,当采样周期未指明可以用-1表示。
【例2】用状态空间法建立离散系统。
a=[-1.5 -0.5;1 0];
b=[1;0];
c=[0 0.5];
d=0;
G=ss(a,b,c,d,0.2) %采样周期为0.2s
a =
x1 x2
x1 -1.5 -0.5
x2 1 0
b =
u1
x1 1
x2 0
c =
x1 x2
y1 0 0.5
d =
u1
y1 0
Sampling time: 0.2
Discrete-time model.