自动控制原理2实验三状态空间分析
更新时间:2024-03-08 12:04:01 阅读量: 综合文库 文档下载
实验三 用Matlab进行状态空间分析及设计
一、实验目的:
掌握使用MATLAB进行及状态空间分析及状态反馈控制系统的设计。 二、实验内容
实验内容一:系统状态空间模型如下:
10??0??0?;B??0?;C?100
A??001?????????1????6?11?6??(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; %输入矩阵ABCD
sys1=ss(A,B,C,D) %显示ABCD构成的状态空间模型
[num,den]=ss2tf(A,B,C,D) %实现状态空间模型到传递函数模型的转换 sys2=tf(num,den) %得到系统按分子分母多项式降幂排列的传递函数 P=roots(den) %求出系统的极点
eig(sys1) % 由状态空间模型得到系统的特征值 syms t1
expm(A*t1) %求系统状态转移矩阵 x0=[2;1;2] %系统的初始状态 t=[0:0.1:20]'; %定义时间t u(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('单位阶跃输入响应状态曲线') grid
text(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) %计算可控性矩阵S
f=rank(s) %通过rank命令求可控矩阵的秩 n=length(A) %计算矩阵A的维数
if f==n %判断系统的可控性 disp('system is controlled') else
disp('system is no controlled') end
v=obsv(A,C) %计算可观性矩阵v
m=rank(v) %通过rank命令求可控矩阵的秩 if m==n %判断系统的可观性 disp('system is observable') else
disp('system is no observable') End
sys3=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 1 0 1 -6
1 -6 25 则系统可控性矩阵的秩f=3,矩阵A的维数为n=3 得到系统的结果是system is controlled即系统是可控的 B.系统的可观性矩阵v为:
v = 1 0 0 0 1 0
0 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=
1 0 0 0 1 0 0 0 1 可控性矩阵的秩f=3
得到系统的结果是system is controlled即系统是可控的 系统的可观性矩阵v为 v =
0 0 1 0 1 -6 1 -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)知道经过线性变换后系统的一些固有特性:系统的特征值,传递矩阵,可控性,可观性等重要性质保持不变。特征值不变也说明系统的稳定性也不会发生变化。 实验内容二:分析下列系统的可控性、可观性
?0?0A???0(1)
??1实验程序如下:
200??1?01?20??,B???0031???000??10?0??;C??0100??0010?1???
?0?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==n
disp('system is controlled') else
disp('system is no controlled') end
v=obsv(A,C) m=rank(v) if m==n
disp('system is observable') else
disp('system is no observable') End
实验结果如下:
系统的可控性矩阵s为: s =
1 0 0 0 0 -4 -4 -16 0 0 0 -2 -2 -8 -10 -26 0 1 1 3 4 9 12 27 1 0 1 0 0 0 0 -4 可控性矩阵的秩f = 4 系统的维数n =4
得到系统的结果是system is controlled即系统是可控的 系统的可观性矩阵v为: v =
0 1 0 0 0 0 1 0 0 1 -2 0 0 0 3 1 0 1 -8 -2 1 0 9 3 -2 1 -26 -8 3 2 27 9 系统的可观性矩阵秩m =4
得到系统的结果是system is observable即系统是可观测的 综上说明该系统即是可控的也是可观测的
00000??31?0?300000??00?41000?000?4000(2)A???0000?110?0000?10?0?000000?5?000000??00??1?50???0??4??0?0B???10???0??0?91???5???0?3?7??3??0? ?6?0?2??0???31050036?C???14020071??
实验程序如下:
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=0
sys1=ss(A,B,C,D) s=ctrb(A,B) f=rank(s) n=length(A) if f==n
disp('system is controlled') else
disp('system is no controlled') end
v=obsv(A,C) m=rank(v) if m==n
disp('system is observable') else
disp('system is no observable') End
实验结果如下:
系统的可控性矩阵s为: 可控性矩阵的秩 f=5 系统的维数n =8
得到系统的结果是system is no controlled即系统是不可控的 系统的可观性矩阵v为: 系统的可观性矩阵秩m =5
得到系统的结果是system is no observable即系统是不可观测的 综上说明该系统即是不可控的也是不可观测的
00???10?0??2?30??0?0?;B???;C??3010? (3)A???1?1?0?20?????4?12?4???2?实验程序如下:
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==n
disp('system is controlled') else
disp('system is no controlled') end
v=obsv(A,C)
m=rank(v) if m==n
disp('system is observable') else
disp('system is no observable') End
实验结果如下:
系统的可控性矩阵s为: s =
0 0 0 0 0 0 0 0 1 -2 4 -8 2 -6 20 -72 可控性矩阵的秩f = 2 系统的维数n =4
得到系统的结果是system is no controlled即系统是不可控的 系统的可观性矩阵v为: v =
3 0 1 0 -2 0 -2 0 0 0 4 0 4 0 -8 0 系统的可观性矩阵秩m =2
得到系统的结果是system is no observable即系统是不可观测的 综上说明该系统即是不可控的也是不可观测的 实验内容三:系统状态空间模型如下,(1)判别系统的可控性;(2)设计状态反馈控制器使闭环极点为p=[-1,-10,-12];(3)求出闭环系统的传递函数和动态方程;(4)比较反馈前后系统的阶跃响应。
实验程序如下:
A=[0 1 0;0 0 1;-50 -25 -12];
B=[0 0 1]';C=[1 0 0];D=0; %输入矩阵ABCD
sys1=ss(A,B,C,D) %显示ABCD构成的状态空间模型 s=ctrb(A,B) %计算可控性矩阵S
f=rank(s) %通过rank命令求可控矩阵的秩 n=length(A) %计算矩阵A的维数 if f==n %判断系统的可控性 disp('system is controlled') else
10??0?0??;B??0?;C?100A??001?? ????????50?25?12???1?? disp('system is no controlled') end
v=obsv(A,C) %计算可观性矩阵v
m=rank(v) %通过rank命令求可控矩阵的秩 if m==n %判断系统的可观性 disp('system is observable') else
disp('system is no observable') End
p=[-1,-10,-12] %希望配置的闭环极点 k=place(A,B,p) %求状态反馈矩阵
A1=A-B*k %求状态反馈控制系统闭环状态矩阵
[num,den]=ss2tf(A,B,C,D) %实现原来状态空间模型到传递函数模型的转换 sys2=tf(num,den) %求原来状态空间模型的传递函数
[num1,den1]=ss2tf(A1,B,C,D) %实现配置后状态空间模型到传递函数模型的转换 sys3=tf(num1,den1) %求配置后状态空间模型的传递函数 sys4=ss(A,B,C,D) %原来系统的动态方程即状态空间模型 Sys5=ss(A1,B,C,D) %重新配置后的动态方程即状态空间模型 t=0:0.1:20 %定义时间t
[y1,t,x1]=step(sys1,t) %计算原来系统的单位阶跃响应 figure(1)
subplot(2,1,1)
plot(t,x1); %绘制系统的单位阶跃响应状态曲线 grid
xlabel('t/秒');ylabel('x1(t)');title('before change step response')
[y2,t,x2]=step(sys2,t) %计算重新配置后系统的单位阶跃响应 subplot(2,1,2)
plot(t,x2); %绘制重新配置后系统的单位阶跃响应状态曲线 grid
xlabel('t/秒');ylabel('x2(t)');title('after change step response') figure(2) subplot(2,1,1)
plot(t,y1); %绘制系统的单位阶跃响应输出曲线 grid
xlabel('t/秒');ylabel('y1(t)');title('before change step response') subplot(2,1,2)
plot(t,y2); %绘制重新配置后系统的单位阶跃响应输出曲线 grid
xlabel('t/秒');ylabel('y2(t)');title('after change step response') 实验结果
(1)判别系统的可控性 系统的可控性矩阵s为: s =
0 0 1 0 1 -12 1 -12 119 可控性矩阵的秩f = 3 系统的维数n =3
得到系统的结果是system is controlled即系统是可控的 系统的可观性矩阵v为: v =
1 0 0 0 1 0 0 0 1
系统的可观性矩阵秩m =3
得到系统的结果是system is observable即系统是可观测的 综上说明该系统即是可控的也是可观测的
(2)设计状态反馈控制器使闭环极点为p=[-1,-10,-12];
所求状态反馈增益矩阵为k=[70.0000 117.0000 11.0000] 状态反馈控制系统闭环状态矩阵: A1 =
0 1 0 0 0 1 -120 -142 -23
(3)求出闭环系统的传递函数和动态方程
改变前系统传递函数 改变后系统传递函数
改变前系统的动态方程
改变后系统动态方程
(4)比较反馈前后系统的阶跃响应 A.系统的单位阶跃响应状态曲线
B.系统的单位阶跃响应输出曲线
实验分析:
下面对系统进行理论分析:通过终值定理 有s→0时有Y(∞)=lim[s*G(S)U(S)] 其中U为单位阶跃U(s)=1/s 即 : s*1 Y(∞)=lim[s*G(S)U(S)]=lim[ -------------------------- * 1/s ]
s^3 + 23 s^2 + 142 s + 120
Y(∞)=1/120=0.00833
在分析系统的极点配置问题上首先要判断原来的系统是完全可控,如果系统不是完全可控的,则不能进行极点的配置,所谓的极点配置就是利用状态反馈或输出反馈使系统的极点位于所希望的极点位置,通过对原来系统的传递函数和动态方程及在单位阶跃输入下,加状态反馈后系统更容易稳定,即系统抗干扰性提高。
正在阅读:
自动控制原理2实验三状态空间分析03-08
赞美妈妈的歌有哪些02-14
生物化学试卷及答案10套11-16
小弟弟小学生二年级作文250字06-13
追梦路上优秀10篇03-26
生活理想演讲稿04-21
小班打击乐:大象和小蚊子01-21
“K字型”相似专题复习练习09-10
非诉行政执行案件立案制度07-02
通信建设工程概预算继续教育考核试题01-17
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 自动控制
- 原理
- 状态
- 实验
- 分析
- 空间
- 高中生物 第6章 细胞的生命历程专题总结(含解析)新人教版必修1
- 油藏描述基础 - 图文
- 2015年日历(A4打印&横向&简洁&周日窄版) - 每月一页
- 300吨稻谷加工工艺流程
- 2017年电大监督学考试参考试题答案
- 广告法试题答案综述
- 当“海淘”遇上海关
- 易飞ERP月结和成本
- 四川省普通高中新课程英语学科教学基本要求模块词汇
- 增值税课后作业及答案
- 超星尔雅慕课中国四大名著考试全答案
- 《突出矿井防突避灾演练》
- 浅谈地下变电站的安全问题
- 精校Word版2014年高考北京卷物理试题全解全析
- 2016中国名曲精选荟萃《古韵留声》《洞箫》《国韵江南之梦江南
- 比较秦始皇兵马俑与霍去病墓前雕刻
- 萜类和挥发油
- 怎样让小学生更爱上体育课
- 结合《标准》和自己的学科特点,谈谈学科教师的专业能力素养
- 航海学,天文航海