利用MATLAB 实现极点配置设计状态观测器现代控制系统Word下载.docx
《利用MATLAB 实现极点配置设计状态观测器现代控制系统Word下载.docx》由会员分享,可在线阅读,更多相关《利用MATLAB 实现极点配置设计状态观测器现代控制系统Word下载.docx(12页珍藏版)》请在冰点文库上搜索。
二、原理简述
1、状态反应和输出反应
设线性定常系统的状态空间表达式为
如果采用状态反应控制规律u=r-Kx,其中r是参考输入,如此状态反应闭环系统的传递函数为:
2、极点配置
如果SISO线性定常系统完全能控,如此可通过适当的状态反应,将闭环系统极点配置到任意期望的位置。
MATLAB提供的函数acker()是用Ackermann公式求解状态反应阵K。
该函数的调用格
式为
K=acker(A,B,P)
其中A和B分别为系统矩阵和输入矩阵。
P是期望极点构成的向量。
MATLAB提供的函数place()也可求出状态反应阵K。
该函数的调用格式为
K=place(A,B,P)
函数place()还适用于多变量系统极点配置,但不适用含有多重期望极点的问题。
函数acker()不适用于多变量系统极点配置问题,但适用于含有多重期望极点问题。
三、仪器设备
PC计算机,MATLAB软件
四、容步骤、数据处理
题5-1 某系统状态方程如下
理想闭环系统的极点为
,试
〔1〕采用直接计算法进展闭环系统极点配置;
〔2〕采用Ackermann公式计算法进展闭环系统极点配置;
〔3〕采用调用place函数法进展闭环系统极点配置。
>
A=[010;
001;
-4-3-2];
B=[1;
3;
6];
C=[100];
D=0;
G=ss(A,B,C,D);
[Q,D]=eig(A)
结果:
Q=
0.29950.3197-0.0731i0.3197+0.0731i
-0.49440.0573+0.5074i0.0573-0.5074i
0.8160-0.7948-0.7948
D=
-1.650600
0-0.1747+1.5469i0
00-0.1747-1.5469i
如此矩阵A的特征根为:
-1.6506,-0.1747+1.5469i,-0.1747-1.5469i
程序:
-6];
p=[-1-2-3];
k=acker(A,B,p)
k=1.48090.7481-0.0458
验证:
k=[0.50530.70520.2299];
A1=A-B*k;
sys=ss(A1,B,C,D);
G1=zpk(sys)
Zero/pole/gain:
(s^2+5s+15)
-------------------------
(s+1)(s+1.999)(s+3.001)
如此其极点为-1,-2,-3
(2)
k=place(A,B,p)
k=place(A,B,p);
(s+4.303)(s+0.6972)
--------------------
(s+3)(s+2)(s+1)
如此其极点为-1,-2,-3
题5-2某控制系统的状态方程描述如下:
y=[172424]x
通过状态反应使系统的闭环极点配置在[-30-1.2
]位置上,求出状态反应矩阵K,验证闭环极点,并绘制闭环系统的阶跃响应曲线进展比照。
程序>
A=[-10-35-50-24;
1000;
0100;
0010];
0;
0];
C=[172424];
p=[-30-1.2-2.4+4i-2.4-4i];
k=26.0000172.5200801.7120759.3600
(s+1.539)(s^2+5.461s+15.6)
------------------------------------
(s+30)(s+1.2)(s^2+4.8s+21.76)
G1=ss(A1,B,C,D);
t=0:
0.5:
20;
u=ones(size(t));
y2=lsim(G1,u,t);
y1=lsim(G,u,t);
plot(t,y1,'
:
'
t,y2,'
-'
)
蓝色为配置前,绿色为配置后
题5-3 某系统状态空间描述如下
设计全维状态观测器,要求状态观测器的极点为
。
-6]'
;
L=(acker(A'
C'
p))'
L=4
0
-10
题5-4系统
y=[660]x
(1)求系统的零点,极点和传递函数,并判断系统的能控性和能观测性。
(2)分别选取K=[030].K=[132],K=[031]为状态反应矩阵,求解闭环系统的零点,极点和传递函数,并判断系统的能控性和能观测性。
它们是否发生改变?
为什么?
〔1〕
程序
-12-16-7];
B=[0;
1];
C=[660];
sys=ss(A,B,C,D);
G=zpk(sys)
Zero/pole/gain:
6(s+1)
-------------
(s+2)^2(s+3)
如此系统的零点为:
-1
如此系统的极点为:
-2,-2,-3
Uc=ctrb(A,B);
rank(Uc)
ans=3
如此系统能控
Vo=obsv(A,C);
rank(Vo)
ans=3
如此系统能观
〔2〕
当k=[030]时:
k=[030];
---------------------------------
(s+0.8821)(s^2+6.118s+13.6)
如此零点为-1
pole(G)
ans=
-0.8821
-3.0589+2.0606i
-3.0589-2.0606i
3
Vo=obsv(A,C);
当k=[132]时:
k=[132];
(s+6.319)(s^2+2.681s+2.057)
如此闭环系统的零点为:
-6.3186
-1.3407+0.5099i
-1.3407-0.5099i
如此系统具有能控性
如此系统具有能观测性
当k=[013]时:
k=[013];
-------------------------------
(s+8.08)(s^2+1.92s+1.485)
分析:
系统完全能控如此可以任意配置极点,配置极点不改变系统的能控性,但可能改变系统的能观测性。
不存在零极相消的情况下,如此不改变系统的能观测性。
五、分析讨论
通过本次试验,掌握了状态反应和输出反应的概念与性质。
掌握了利用状态反应进展极点配置的方法。
学会了用MATLAB求解状态反应矩阵。
掌握了状态观测器的设计方法。
学会了用MATLAB设计状态观测器。
熟悉了别离定理,学会了设计简单的带有状态观测器的状态反应系统。
原本通过平常的上课,对于一些概念我还是没有完全掌握,比如极点配置,状态反应,输出反应。
通过实验的验证,翻阅书籍,使我对于书本上的概念产生了更深的理解,学会了分析验证书本上的定理而不是盲目学习。