第一课用MATLAB分析状态空间模型
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2、状态空间模型的输入
x Ax Bu y Cx Du
>>A=[a11,a12,…,a1n;a21,a22,…,a2n;…;an1, …,ann];
>>B=[b0,b1,…,bn]; >>C=[c1,c2,…,cn]; >>D=d; 构造状态空间模型 >>ss(A,B,C,D)
s5 g(s) s4 2s3 3s2 4s 5
可由下列命令输入到MATLAB工作空间中 去
>>num=[1, 5];Tdreann=sf[e1r,2fu,3nc,4ti,o5n]:;G=tf(num,den)
s+5 ----------------------------s^4 + 2 s^3 + 3 s^2 + 4 s + 5
2.7 用MATLAB分析状态空间模型
线性定常系统微分方程
y(n) a1 y(n1) an1 y an y b0u(m) b1u(m1) bm1u bmu
对应的传递函数为
G(s)
Y (s) U(s)
b0sm b1sm1 sn a1sn1
0
1
0
x
1
u
0 0 0 1 0
0 0 5 0 2
y 1 0 0 0 x
可由下列语句得出系统相应的传递函数模 型
• >> A=[0,1,0,0;0,0,-1,0;0,0,0,1;0,0,5,0]; • >> B=[0;1;0;-2]; • >> C=[1,0,0,0]; • >> D=0; • >> G=ss(A,B,C,D);G1=tf(G)
y2 0 2 0 2
x4 0 2
d=
u1 u2
y1 0 0
y2 0 0
Continuous-time model.
3、两种模型间的转换
若状态方程模型用G表示,可用下面的命 令得出等效传递函数G1
>>G1=tf(G)
例2.7.3 已知系统状态方程
0 1 0 0 0
x 0
由下列MATLAB语句将直接获得系统的状 态空间模型
>>num=[1,7,24,24];den=[1,10,35,50,24]; G=tf(num,den);G1=ss(G)
a=
x1 x2 x3 x4
x1 -10 -2.188 -0.7813 -0.1875
x2 16 0 0 0
x3 0 4 0 0
例2.7.2 双输入双输出系统
2.25 5 1.25 0.5 4 6 x 2.25 4.25 1.25 0.25 x 2 4 u
0.25 0.5 1.25 1 2 2 1.25 1.75 0.25 0.75 0 2
Transfer function: s^2 - 3
--------------------s^4 - 5 s^2
同wk.baidu.com由ss()函数可立即给出相应的状态空 间模型。
例2.7.4 考虑下面给定的单变量系统传递 函数
s3 7s2 24s 24 g(s) s4 10s3 35s2 50s 24
y
0 0
0 2
0 0
1 2 x
可由下列语句输入到MATLAB工作空间 >>A=[2.25,-5,-1.25,-0.5;2.25,-4.25,-
1.25,-0.25;0.25,-0.5,-1.25,-1;1.25,-1.75,0.25,-0.75]; >>B=[4,6;2,4;2,2;0,2]; >>C=[0,0,0,1;0,2,0,2]; >>D=zeros(2,2); >>G=ss(A,B,C,D)
x4 0 0 2 0
b=
u1 x1 1 x2 0 x3 0 x4 0
c= x1 x2 x3 x4
y1 1 0.4375 0.375 0.1875 d=
u1
y1 0
Continuous-time model.
下述命令也可实现传递函数模型到状态空间模 型的转换
[A,B,C,D]=tf2ss(num,den) 例
bm1s bm an1s an
1、传递函数的输入 将传递函数模型输入到MATLAB环境中
>>num=[b0,b1,…,bn]; >>den=[1,a1,a2,…,an]; 排列方式:从右到左,不够的地方补零。 构造对应的传递函数
>>G=tf(num,den)
例2.7.1 已知传递函数模型
精品课件!
精品课件!
线性非奇异变换 • sys1=ss(A,B,C,D) • sys2=ss2ss(sys1,T) • 或[AA,BB,CC,DD]=ss2ss(A,B,C,D,T)
num=[0 0 10 10];den=[1 6 5 10];[A,B,C,D]=tf2ss(num,den)
下述命令也可实现状态空间模型到传递函数模 型的转换
[num,den]=ss2tf(A,B,C,D,iu)% iu指第iu个输入, 单输入可缺省
例
A=[0 1 0;0 0 1;-5.008 –25.1026 – 5.03247];B=[0;25.04;-121.005];C=[1 0 0];D=[0];[num,den]=ss2tf(A,B,C,D)
a=
x1 x2 x3 x4
x1 2.25 -5 -1.25 -0.5
x2 2.25 -4.25 -1.25 -0.25
x3 0.25 -0.5 -1.25 -1
x4 1.25 -1.75 -0.25 -0.75
b=
u1 u2
c=
x1 4 6
x1 x2 x3 x4
x2 2 4
y1 0 0 0 1
x3 2 2