当前位置:文档之家› 自动控制原理2实验三状态空间分析..

自动控制原理2实验三状态空间分析..

实验三 用Matlab 进行状态空间分析及设计一、实验目的:掌握使用MATLAB 进行及状态空间分析及状态反馈控制系统的设计。

二、实验内容实验内容一:系统状态空间模型如下:010*******A ⎡⎤⎢⎥=⎢⎥⎢⎥---⎣⎦;001B ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦;[]100C = (1) 求其传递函数,由传递函数求系统的极点;(2) 由上述状态空间模型,求系统的特征值;(3) 求上述系统状态转移矩阵;(4) 求其在x0=[2; 1; 2], u 为单位阶跃输入时x 及y 的响应;(5) 分析上述系统的可控性、可观性;(6) 将上述状态空间模型转换为其他标准形式;(7) 取T=[1 2 4;0 1 0;0 0 1] 对上述状态空间模型进行变换,分析变换后的系统。

实验matlab 程序:A=[0 1 0;0 0 1;-6 -11 -6];B=[0 0 1]';C=[1 0 0];D=0; %输入矩阵ABCDsys1=ss(A,B,C,D) %显示ABCD 构成的状态空间模型[num,den]=ss2tf(A,B,C,D) %实现状态空间模型到传递函数模型的转换sys2=tf(num,den) %得到系统按分子分母多项式降幂排列的传递函数P=roots(den) %求出系统的极点eig(sys1) % 由状态空间模型得到系统的特征值 syms t1expm(A*t1) %求系统状态转移矩阵 x0=[2;1;2] %系统的初始状态t=[0:0.1:20]'; %定义时间tu(1,1:201)=1*ones(1,201); %输入单位阶跃[y t x]=lsim(sys1,u,t,x0); %计算系统的单位阶跃响应figure(1)plot(t,x(:,1),'-',t,x(:,2),'-',t,x(:,3),'-') %绘制系统单位输入响应状态曲线xlabel('t/秒');ylabel('x(t)');title('单位阶跃输入响应状态曲线')gridtext(6,0.3,'x_1(t)')text(6,-1.5,'x_2(t)')text(6,1.8,'x_3(t)')figure(2)plot(t,y);grid; %绘制系统单位输入响应输出曲线xlabel('t/秒');ylabel('y(t)');title('系统单位输入响应输出曲线')s=ctrb(A,B) %计算可控性矩阵Sf=rank(s) %通过rank 命令求可控矩阵的秩n=length(A) %计算矩阵A 的维数if f==n %判断系统的可控性disp('system is controlled')elsedisp('system is no controlled')endv=obsv(A,C) %计算可观性矩阵vm=rank(v) %通过rank命令求可控矩阵的秩if m==n %判断系统的可观性disp('system is observable')elsedisp('system is no observable')Endsys3=canon(sys1,'modal') %将系统转化成对角线的标准形式sys4=canon(sys1,'companion') %将系统转化成为A为伴随矩阵的标准形式T=[1 2 4;0 1 0;0 0 1] %输入变换矩阵sys5=ss2ss(sys1,T) %得到变换后的状态空间模型实验结果:(1)传递函数及由此得到的系统的极点极点p =[-3.0000 -2.0000 -1.0000](2)根据状态空间模型得到的系统的特征值(由语句eig(sys1)求出)ans =[-1.0000 -2.0000 -3.0000]系统的特征值全部位于s平面的左半部分,由此判断出系统是一个稳定系统(3)求系统的状态转移矩阵(由语句syms t1 ;expm(A*t1)求出)(4)求系统在x0=[2; 1; 2], u为单位阶跃输入时x及y的响应记录曲线如下:A:单位阶跃输入时状态变量X的响应曲线:B:单位阶跃输入时系统输出y响应曲线(5)系统的可控性,可观性分析A.系统的可控性矩阵s为:s = 0 0 10 1 -61 -6 25 则系统可控性矩阵的秩f=3,矩阵A的维数为n=3 得到系统的结果是system is controlled即系统是可控的B.系统的可观性矩阵v为:0 1 00 0 1 则系统可观性矩阵的秩m=3,矩阵A的维数为n=3得到系统的结果是system is observable即系统是可观测的实验结论:由运行结果可知该系统既可控也可观(6)将原来的系统状态空间模型转化为以下俩种标准形式A.转化为对角线的标准形式(由语句sys3=canon(sys1,'modal')求出)B.转化成为A为伴随矩阵的标准形式(由语句sys4=canon(sys1,'companion')求出)(6)T=[1 2 4;0 1 0;0 0 1] 对上述状态空间模型进行变换,分析变换后的系统的空间模型为(有语句T=[1 2 4;0 1 0;0 0 1] ;sys5=ss2ss(sys1,T) 实现)对变换后的系统的空间模型进行可控可观性分析得到的结果是系统的可控性矩阵s为s=0 1 00 0 1可控性矩阵的秩f=3得到系统的结果是system is controlled即系统是可控的系统的可观性矩阵v为v =0 0 10 1 -61 -6 25系统的可观测矩阵的秩m =3得到系统的结果是system is observable即系统是可观测的系统的特征根ans=[ -1.0000 -2.0000 -3.0000 ]综上实验结果分析:对变换后的系统进行可控性,可观性分析得到可控性矩阵的秩f=n-=3,可观测性矩阵的秩m=n=3由此经过变换后的系统仍即可控也可观,变换后系统的特征根仍为:ans =[1.0000 -2.0000 -3.0000] 与原来系统相同。

为了便于研究系统的一些固有的特性,常常需要引进线性变换,例如在实验内容(5)中将A阵对角化,但是通过实验内容(6)知道经过线性变换后系统的一些固有特性:系统的特征值,传递矩阵,可控性,可观性等重要性质保持不变。

特征值不变也说明系统的稳定性也不会发生变化。

实验内容二:分析下列系统的可控性、可观性(1),113212A⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=111B;⎥⎦⎤⎢⎣⎡=11C实验程序如下:A=[0 2 0 0;0 1 -2 0;0 0 3 1;1 0 0 0];B=[1 0;0 0;0 1;1 0];C=[0 1 0 0;0 0 1 0];D=0; sys1=ss(A,B,C,D)s=ctrb(A,B)f=rank(s)n=length(A)if f==ndisp('system is controlled')elsedisp('system is no controlled')endv=obsv(A,C)m=rank(v)if m==ndisp('system is observable')elsedisp('system is no observable')End实验结果如下:系统的可控性矩阵s 为:s =1 0 0 0 0 -4 -4 -160 0 0 -2 -2 -8 -10 -260 1 1 3 4 9 12 271 0 1 0 0 0 0 -4可控性矩阵的秩f = 4系统的维数n =4得到系统的结果是system is controlled 即系统是可控的系统的可观性矩阵v 为:v =0 1 0 00 0 1 00 1 -2 00 0 3 10 1 -8 -21 0 9 3-2 1 -26 -83 2 27 9系统的可观性矩阵秩m =4得到系统的结果是system is observable 即系统是可观测的综上说明该系统即是可控的也是可观测的(2)⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡-------=5000000015000000001000000011000000004000000014000000003000000013A ⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡=0029006100347531B ⎥⎦⎤⎢⎣⎡=1700204163005013C实验程序如下:A=[-3 1 0 0 0 0 0 0;0 -3 0 0 0 0 0 0;0 0 -4 1 0 0 0 0;0 0 0 -4 0 0 0 0;0 0 0 0 -1 1 0 0;0 0 0 0 0 -1 0 0;0 0 0 0 0 0 -5 1;0 0 0 0 0 0 0 5]B=[1 3;5 7;4 3;0 0;1 6;0 0;9 2;0 0]C=[3 1 0 5 0 0 3 6;1 4 0 2 0 0 7 1]D=0sys1=ss(A,B,C,D)s=ctrb(A,B)f=rank(s)n=length(A)if f==ndisp('system is controlled')elsedisp('system is no controlled')endv=obsv(A,C)m=rank(v)if m==ndisp('system is observable')elsedisp('system is no observable')End实验结果如下:系统的可控性矩阵s 为:可控性矩阵的秩 f=5系统的维数n =8得到系统的结果是system is no controlled 即系统是不可控的系统的可观性矩阵v 为:系统的可观性矩阵秩m =5得到系统的结果是system is no observable 即系统是不可观测的综上说明该系统即是不可控的也是不可观测的(3)[]0103C ;2100B ;4214020100320001A =⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡-----= 实验程序如下:A=[-1 0 0 0;2 -3 0 0;1 0 -2 0;4 -1 2 -4]B=[0 0 1 2]';C=[3 0 1 0];D=0;sys1=ss(A,B,C,D)s=ctrb(A,B)f=rank(s)n=length(A)if f==ndisp('system is controlled')elsedisp('system is no controlled')endv=obsv(A,C)m=rank(v)if m==ndisp('system is observable')elsedisp('system is no observable')End实验结果如下:系统的可控性矩阵s 为:s =0 0 0 00 0 0 01 -2 4 -82 -6 20 -72可控性矩阵的秩f = 2系统的维数n =4得到系统的结果是system is no controlled 即系统是不可控的系统的可观性矩阵v 为:v =3 0 1 0-2 0 -2 00 0 4 04 0 -8 0系统的可观性矩阵秩m =2得到系统的结果是system is no observable 即系统是不可观测的综上说明该系统即是不可控的也是不可观测的实验内容三:系统状态空间模型如下,(1)判别系统的可控性;(2)设计状态反馈控制器使闭环极点为p=[-1,-10,-12];(3)求出闭环系统的传递函数和动态方程;(4)比较反馈前后系统的阶跃响应。

相关主题