计算机控制系统实验报告.docx
《计算机控制系统实验报告.docx》由会员分享,可在线阅读,更多相关《计算机控制系统实验报告.docx(16页珍藏版)》请在冰点文库上搜索。
计算机控制系统实验报告
计算机控制系统
课程设计
实验报告
姓名:
班级:
计算机+自动化
学号:
2011
指导教师:
日期:
2014/7/6
1、基于状态空间系统模型的设计与仿真:
针对下述状态空间模型
(a)利用Matlab判断开环系统稳定性
>>A=[0100;00-10;0001;00110];
>>A
A=
0100
00-10
0001
00110
>>eig(A)
ans=
0
0
3.3166
-3.3166
因为特征根有正的,所以开环系统不稳定
(b)任意给定系统初始值,利用ODE绘制开环系统轨迹,对比稳定性分析结果
由图可得系统不稳定
(c)利用Matlab判断系统能控性与能观性
>>A=[0100;00-10;0001;00110];
>>B=[0;1;0;-1];
>>C=[1000];
>>ctrb(A,B)
ans=
0101
1010
0-10-11
-10-110
>>rank(ans)
ans=
4
所以系统能控
>>obsv(A,C)
ans=
1000
0100
00-10
000-1
>>rank(ans)
ans=
4
所以系统能观
(d)设计状态反馈控制率,将闭环极点配置在-1,-2,-3,-4,绘制相应的系统轨迹
>>A=[0100;00-10;0001;00110];
>>B=[0;1;0;-1];
>>C=[1000];
>>P=[-1,-2,-3,-4];
>>k=place(A,B,P)
k=
-2.4000-5.0000-48.4000-15.0000
(e)设计全维观测器,将观测器极点配置在-1,-2,-3,-4,绘制观测误差曲线
>>P=[-1-2-3-4];
>>K=place(A',C',P)
K=
10.000046.0000-160.0000-530.0000
>>H=K'
H=
10.0000
46.0000
-160.0000
-530.0000
故系统全维观测器的状态空间方程为
(f)取
,求最优反馈增益矩阵,并仿真
>>A=[0100;00-10;0001;00110];
>>B=[0;1;0;-1];
>>C=[1000];
>>D=0;
>>Q=diag([1,1,1,1]);
>>R=2;
>>K=lqr(A,B,Q,R)
K=
-0.7071-1.8667-32.1045-9.8539
K为求解获得的最优反馈增益矩阵
(g)利用全维观测器,设计输出反馈控制律,使闭环系统渐进稳定
2、MPC部分内容
(1)利用MPCTOOL界面设计控制器
第一步:
导入模型
第二步:
设置属性
第三步:
仿真场景的设置
第四步:
开始仿真
(2)下图是设置ThetaL的参考信号为阶跃信号,阶跃时间为1s,幅度为1。
设置T的参考信号为常值信号,幅度为零的仿真图。
。
灰色线为设定值,蓝色线为实际输出值。
可见,输出信号在30s时仍没有稳定下来,没有实现指令信号的准确跟踪。
(3)为了得到更快速、精确的响应,进入MPC1WeightTuning选项板,将滑动条拖至最右方,然后重新开始仿真,仿真结果如下图。
可见,此时的响应速度和跟踪精度都有了很大的改进。
(4)将ThetaL的阶跃响应幅度重新设置为pi,仿真结果如下图所示。
可见仍能实现很好的跟踪效果。
(5)利用MPCToolbox命令函数设计控制器
仿真结果如下图所示
(6)在Simulink中使用MPCTools