状态空间模型分析报告实验报告材料.docx
《状态空间模型分析报告实验报告材料.docx》由会员分享,可在线阅读,更多相关《状态空间模型分析报告实验报告材料.docx(11页珍藏版)》请在冰豆网上搜索。
状态空间模型分析报告实验报告材料
一、实验目的
1加强对现代控制理论相关知识的理解;
2掌握用matlab进行系统李雅普诺夫稳定性分析、能控能观性分析;
二、实验仪器与软件
1MATLAB7.6环境
三、实验内容
1、模型转换
题目:
将传递函数
分别转换为零极点模型,状态空间模型。
代码:
clearall;
num=5*[1-56]%传递函数分子多项式
den=conv(conv([1,-1],[1-1]),[12])%传递函数分母多项式
tfG=tf(num,den);%传函的分式形式
zpG=zpk(tfG);%转换成零极点模型
[z,p,k]=zpkdata(zpG,'v')%列出零极点及比例系数
ssG=ss(tfG)%转换成状态空间形式
结果:
num=5-2530
den=10-32
z=3.000000000000000
2.000000000000000
p=-2.000000000000001
1.000000015583397
0.999999984416603
k=5
ssG=
a=
x1x2x3
x101.5-1
x2200
x3010
b=
u1
x18
x20
x30
c=
x1x2x3
y10.625-1.5631.875
d=
u1
y10
2、状态方程状态解和输出解
题目:
求出传递函数
在单位阶跃输入作用下的状态响应和零输入响应。
代码:
clearall;
num=[48]
den=[16116]
tfG=tf(num,den);%传函的分式形式
zpG=zpk(tfG);%转换成零极点模型
[z,p,k]=zpkdata(zpG,'v')%列出零极点及比例系数
ssG=ss(tfG)%转换成状态空间形式
[y,t,x]=step(ssG);
plot(t,x)
holdon
[y,t,x]=initial(ssG,[000]);
结果:
单位阶跃输入作用下的状态响应
零输入响应
3、系统能控性和能观性
题目:
设系统传递函数
,判断状态的能控性和能观性。
Ø能控性判断
代码:
A=[-6-2.75-1.5;400;010];
B=[200]';
C=[00.51];
D=0;
co=ctrb(A,B);%构造能控性判别矩阵
det(co)%求矩阵行列式
结果:
ans=128
因为判别矩阵co的行列式不等于0,所以原系统状态能控。
Ø能观性判断
代码:
ob=obsv(A,C);%构造能观性判别矩阵
det(ob)%求行列式
结果:
ans=0
因为判别矩阵ob的行列式等于0,所以原系统状态不能观。
综上:
原状态能控不能观。
4、线性变换
题目:
对传递函数
的状态空间表达式进行线性变换,使其变为对角型,可控标准型,可观标准型。
Ø化为对角型
代码:
[At,Bt,Ct,Dt,T]=canon(A,B,C,D,'modal');%化为对角型,T为变换矩阵。
结果:
At=-3.000000
0-2.00000
00-1.0000
Bt=-15.5242
-19.5959
5.7446
Ct=0.12880.00000.3482
Dt=0
T=-7.7621-5.8216-3.8810
-9.7980-9.7980-7.3485
2.87233.59044.3084
Ø化为能观标准型
代码:
[At,Bt,Ct,Dt,T]=canon(A,B,C,D,'companion')%化为能观标准型
结果:
At=
00-6
10-11
01-6
Bt=1
0
0
Ct=04-16
Dt=0
T=0.50000.75001.3750
00.12500.7500
000.1250
Ø化为能控标准型
代码:
At=At';
Bt=Ct';
Ct=Bt';
Dt=Dt';%利用对偶关系求能观标准型
At,Bt,Ct,Dt
结果:
At=010
001
-6-11-6
Bt=0
4
-16
Ct=04-16
Dt=0
5、线性定常系统的结构分解
题目:
若系统状态空间表达式为
试判断系统是否为状态完全能控,否则将系统按能控性进行分解。
并判断系统是否完全能控,否则将系统按能观性进行分解。
Ø能控能观性判别
代码:
A=[00-1;10-3;01-3];
B=[110]';
C=[01-2];
D=0;
co=ctrb(A,B);%构造能控性判别矩阵
det(co)%求矩阵行列式
ob=obsv(A,C);%构造能观性判别矩阵
det(ob)%求行列式
结果:
det(co)=0,det(ob)=0所以系统状态既不能控又不能观,可以进行能控性和能观性分解。
Ø能控性分解
代码:
[a1,b1,c1,t,k]=ctrbf(A,B,C)%能控性分解
结果:
a1=-1.0000-0.00000.0000
2.1213-2.50000.8660
1.2247-2.59810.5000
b1=0
0
1.4142
c1=1.7321-1.22470.7071
t=-0.57740.5774-0.5774
-0.40820.40820.8165
0.70710.70710
k=110
按能控性分解后的系统状态空间表达式为:
故此二维子系统是能控的。
Ø能观性分解
代码:
[a2,b2,c2,t,k]=obsvf(A,B,C)%能观性分解
结果:
a2=-1.00001.34163.8341
-0.0000-0.4000-0.7348
00.4899-1.6000
b2=1.2247
0.5477
0.4472
c2=0-0.00002.2361
t=0.40820.81650.4082
0.9129-0.3651-0.1826
00.4472-0.8944
k=110
按能观性分解后的系统状态空间表达式为:
6、极点配置算法
题目:
针对状态空间模型为
的被控对象设置状态反馈控制器,使得闭环极点为-4和-5,并讨论闭环系统的稳态。
代码:
A=[01;-3-4];
B=[0;1];
co=ctrb(A,B);
det(ob)
结果:
det(ob)=-1;所以系统是能控的
代码:
A=[01;-3-4];
B=[0;1];
C=[32];
D=[0];
P=[-4-5]
K=place(A,B,P)
t=0:
0.01:
5;
U=0.025*ones(size(t));%幅值为0.025输入阶跃信号
[Y1,X1]=lsim(A,B,C,D,U,t);
[Y2,X2]=lsim(A-B*K,B,C,D,U,t);
figure
(1)
plot(t,Y1);grid;title('反馈前');
figure
(2)
plot(t,Y2);title('反馈后');
grid
结果:
状态反馈前的输出响应曲线
状态反馈后的输出响应曲线
7、线性定常系统稳定判据
题目:
用李雅普诺夫第二法判断下列线性定常系统的稳定性。
代码:
A=[-11;2-3];
A=A';
Q=[10;01];
P=lyap(A,Q)
det(P)
结果:
P=1.75000.6250
0.62500.3750
det(P)=0.2656
因为P11=1.75>0,且det(P)=0.2656>0,所以P>0,正定,所以系统在原点处平衡状态是渐进稳定的。