收藏 分销(赏)

倒立摆实验报告(现代控制理论).doc

上传人:Fis****915 文档编号:552258 上传时间:2023-12-06 格式:DOC 页数:26 大小:861.50KB
下载 相关 举报
倒立摆实验报告(现代控制理论).doc_第1页
第1页 / 共26页
倒立摆实验报告(现代控制理论).doc_第2页
第2页 / 共26页
倒立摆实验报告(现代控制理论).doc_第3页
第3页 / 共26页
倒立摆实验报告(现代控制理论).doc_第4页
第4页 / 共26页
倒立摆实验报告(现代控制理论).doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、现代控制理论实验报告倒立摆小组成员:指导老师:2013.5实验一 建立一级倒立摆的数学模型一、 实验目的学习建立一级倒立摆系统的数学模型,并进行Matlab仿真。二、 实验内容写出系统传递函数和状态空间方程,用Matlab进行仿真。三、 Matlab源程序及程序运行的结果(1) Matlab源程序见附页(2) 给出系统的传递函数和状态方程(a)传递函数gs为摆杆的角度: gsTransfer function: 2.054 s-s3 + 0.07391 s2 - 29.23 s - 2.013(b)传递函数gspo为小车的位移传递函数: gspoTransfer function: 0.739

2、1 s2 - 20.13-s4 + 0.07391 s3 - 29.23 s2 - 2.013 s(c)状态矩阵A,B,C,D: sysa = x1 x2 x3 x4 x1 0 1 0 0 x2 0 -0.07391 0.7175 0 x3 0 0 0 1 x4 0 -0.2054 29.23 0b = u1 x1 0 x2 0.7391 x3 0 x4 2.054c = x1 x2 x3 x4 y1 1 0 0 0 y2 0 0 1 0d = u1 y1 0 y2 0Continuous-time model.(3)给出传递函数极点和系统状态矩阵A的特征值(a)传递函数gs的极点 PP =

3、5.4042 -5.4093 -0.0689(b)传递函数gspo的极点 PoPo = 0 5.4042 -5.4093 -0.0689(c)状态矩阵A的特征值 EE = 0 -0.0689 5.4042 -5.4093(4)给出系统开环脉冲响应和阶跃响应的曲线(a)开环脉冲响应曲线(b)阶跃响应曲线四、思考题(1)由状态空间方程转化为传递函数,是否与直接计算传递函数相等?答:由状态空间方程转化为传递函数: gso=tf(sys)Transfer function from input to output. 0.7391 s2 - 6.565e-016 s - 20.13 #1: - s4 +

4、 0.07391 s3 - 29.23 s2 - 2.013 s 2.054 s + 4.587e-016 #2: - s3 + 0.07391 s2 - 29.23 s - 2.013 #1为gspo传递函数,#2为gs的传递函数而直接得到的传递函数为: gspoTransfer function: 0.7391 s2 - 20.13-s4 + 0.07391 s3 - 29.23 s2 - 2.013 s gsTransfer function: 2.054 s-s3 + 0.07391 s2 - 29.23 s - 2.013通过比较可以看到,gspo由状态空间方程转化的传递函数比直接得

5、到的传递函数多了s的一次项,而6.565e-016非常小几乎可以忽略不计,因此可以认为两种方法得到的传递函数式相同的,同理传递函数gs也可以认为是相同的。(2) 通过仿真表明开环系统是否稳定?请通过极点(特征值)理论来分析。答:开环系统不稳定极点为: PP = 5.4042 -5.4093 -0.0689 PoPo = 0 5.4042 -5.4093 -0.0689由系统稳定性结论可知,极点若都分布在s平面的左半平面则系统稳定,而开环系统的极点有5.4042在右半平面。因此,开环系统不稳定。(3)传递函数的极点和状态方程的特征值的个数、大小是否相等?如果不相等,请解释其原因。传递函数gspo

6、的极点和状态方程的特征值的个数、大小相等。但是传递函数gs的极点和状态方程的特征值个数不相等。因为存在零极点对消。附录:(matlab程序)clear all;f1=0.001;%实际系统参数M=1.32; m=0.132; b=0.1; l=0.27; I=0.0032; g=9.8; T=0.02;%求传递函数gs(输出为摆杆角度)和gspo(输出为小车位置) q=(M+m)*(I+m*l2)-(m*l)2; num=m*l/q 0; den=1 b*(I+m*l2)/q -(M+m)*m*g*l/q -b*m*g*l/q; gs=tf(num,den); numpo=(I+m*l2)/q

7、 0 -m*g*l/q; denpo=1 b*(I+m*l2)/q -(M+m)*m*g*l/q -b*m*g*l/q 0; gspo=tf(numpo,denpo); %求状态空间sys(A,B,C,D) p=I*(M+m)+M*m*l2;A=0 1 0 0;0 -(I+m*l2)*b/p m2*g*l2/p 0;0 0 0 1;0 -m*b*l/p m*g*l*(M+m)/p 0; B=0;(I+m*l2)/p;0;m*l/p; C=1 0 0 0;0 0 1 0; D=0;0; sys=ss(A,B,C,D); %通过传递函数求系统(摆杆角度和小车位置)的开环脉冲响应 t=0:T:5;

8、y1=impulse(gs,t); y2=impulse(gspo,t); figure(1); plot(t,y2,b,t,y1,r); xlabel(t/s);ylabel(Position/m or Angle/rad);axis(0 2 0 80); legend(Car Position,Pendulum Angle); %将状态空间方程sys转化为传递函数gs0 gs0=tf(sys); %通过状态方程求系统(摆杆角度和小车位置)的开环脉冲响应 t=0:T:5; y=impulse(sys,t); figure(2); plot(t,y(:,1),t,y(:,2),r); xlab

9、el(t/s);ylabel(Position/m or Angle/rad);axis(0 2 0 80); legend(Car Position,Pendulum Angle); %通过传递函数求系统(摆杆角度和小车位置)的开环阶越响应 t=0:T:5; y1=step(gs,t); y2=step(gspo,t); figure(3); plot(t,y2,b,t,y1,r); axis(0 2.5 0 80); xlabel(t/s);ylabel(Position/m or Angle/rad);legend(Car Position,Pendulum Angle); %通过状态方

10、程求系统(摆杆角度和小车位置)的开环阶越响应 t=0:T:5; y=step(sys,t); figure(4); plot(t,y(:,1),t,y(:,2),r); xlabel(t/s);ylabel(Position/m or Angle/rad);axis(0 2.5 0 80); legend(Car Position,Pendulum Angle); %求传递函数极点 P=pole(gs); Po=pole(gspo); %求A的特征值 E=eig(A);实验二 倒立摆系统控制算法的状态空间法设计一、 实验目的学习如何使用状态空间法设计系统的控制算法。二、 实验内容用状态空间法设

11、计控制器,使得当在小车上施加 0.2m 的阶跃信号时,闭环系统的响应指标为:(1) 杆角度 和小车位移x的稳定时间小于5秒(2) x的上升时间小于2秒2(3) 的超调量小于20度(0.35弧度)(4) 稳态误差小于4%.三、Matlab源程序及程序执行结果(1)Matlab源程序(见附录)(2)程序执行结果(a)k的值 KK = -14.1421 -12.1570 63.5837 11.8416(b)反馈后的响应曲线(3)给出无扰动时两次不同K 值下,小车的稳定位置P1和摆杆的稳定角度Pend1;(a) KK =-14.142-12.15763.58411.842小车的稳定位置P1=-0.02

12、绿色的曲线为摆杆的稳定角度Pend1=0.001度(b) KK = -14.1421 -12.1570 63.5837 11.8416小车的稳定位置P1=-0.007绿色的曲线为摆杆的稳定角度Pend1=0.0015度(4)给出两次不同 K 值下,实际系统的响应曲线,并计算实验要求中的四项响应指标,并注意要利用实验三中统计出的响应时间延迟修正响应曲线。K = -14.1421 -12.1467 63.5825 11.8413=(0.11-0.0825)/0.0925=29.7% tp= (4100-3880)/1000*8.8=1.936str=(4030-3880)/1000*8.8=1.3

13、2s ts=(4800-3880)/1000*8.8=8.096sK = -14.1421 -12.1570 63.5837 11.8416 =(0.11-0.085)/0.092=27.17% tp= (3025-2840)/1000*8.8=1.628str=(2955-2840)/1000*8.8=1.012s ts=(4800-3900)/1000*8.8=7.92s四、思考题(1) 计算Ac 的特征值。K = -14.1421 -12.1467 63.5825 11.8413K = -14.1421 -12.1570 63.5837 11.8416(2) 通过仿真分析Q11和Q33的

14、大小对控制效果的影响(Q11为Q阵的第(1; 1)个元素): 固定Q33 ,改变Q11Q33= 100 Q11=100(红)、500(蓝)、1000(绿)从图中可以看出Q11增大,角度超调随着增大,位置的超调基本不变,但是响应时间缩短了。 固定Q11 ,改变Q33Q11= 100 Q33=100(红)、1000(蓝)、2000(绿)从图中可以看出Q33增大,角度超调减小,位置的超调基本不变,但是响应时间延长了。附录:(matlab程序)clear all;f1=0.001;%实际系统参数% M=1.096; % m=0.109; % b=0.25; % l=0.25; % I=0.0034;

15、% g=9.8; % T=0.001; %求系统状态空间参数 M=1.32; m=0.132; b=0.22; l=0.27; I=0.0032; g=9.8; T=0.02;p=I*(M+m)+M*m*l2; A=0 1 0 0;0 -(I+m*l2)*b/p m2*g*l2/p 0;0 0 0 1;0 -m*b*l/p m*g*l*(M+m)/p 0; B=0;(I+m*l2)/p;0;m*l/p; C=1 0 0 0;0 0 1 0; D=0; %求反馈向量K R=1; Q1=200;Q2=0;Q3=100; Q=Q1 0 0 0;0 Q2 0 0;0 0 Q3 0;0 0 0 0; K

16、=lqr(A,B,Q,R); %求状态反馈后的系统sysstate Ac=A-B*K; Bc=B*K(1); %输入变换使输入与反馈的量纲匹配 sysstate=ss(Ac,Bc,C,D); %对lqr控制系统进行仿真 t=0:T:5; U=0.2*ones(size(t); y=lsim(sysstate,U,t); figure(1);hold on;plot(t,y(:,1),t,y(:,2),r);box on;xlabel(t/s);ylabel(Position/m or Angle/rad);legend(Car Position,Pendulum Angle);实验三 研究倒立

17、摆系统对信号的跟踪一、实验目的观察倒立摆对于不同输入信号的跟踪情况,加深对状态空间和状态反馈的理解。二、实验内容在平衡位置,分别设定下列三种信号,记录倒立摆的运动情况:(1) 方波信号:频率0.2Hz,幅值0.05m(2) 正弦波信号:频率0.2Hz,幅值0.05m(3) 锯齿波信号:频率0.2Hz,幅值0.05m三、Matlab源程序及程序执行结果(1)Matlab源程序(见附录) (2)Matlab仿真图形(三种扰动下的响应曲线)A 阶跃信号下的响应曲线B 方波信号下的响应曲线C 正弦信号下的响应曲线(3)实际系统的响应曲线当Q1=500,Q2=700A 锯齿波信号下的实际响应曲线B 方波

18、信号下的实际响应曲线C 正弦信号下的实际响应曲线当Q1=300,Q2=500A锯齿波信号下的实际响应曲线B 方波信号下的实际响应曲线C 正弦信号下的实际响应曲线(4)在锯齿波跟踪曲线图上,利用“放大”功能测量出实际系统对于输入的延迟时间:测量输入曲线和锯齿波响应曲线最高点之间的时间差,利用多个时间差求平均获得平均延迟时间。根据图可得时间对应关系为20s对应图中2325,即每一格对应8.602*10-3s.则当Q1=500,Q2=700时,锯齿波中实际输入延迟时间为25*8.602/1000=0.215s则当Q1=300,Q2=500时,锯齿波中实际输入延迟时间为15*8.602/1000=0.

19、129s(5)根据统计出的时延,对实验二中阶跃响应的曲线进行修正修正后的曲线:K = -14.1421 -12.1467 63.5825 11.8413K = -14.1421 -12.1570 63.5837 11.8416四、思考题(1)仿真曲线和实际响应曲线是否大致相同?通过比较可以看出仿真的曲线和实际响应曲线大致相同。(2)请说明原系统是否完全可控?因为34,所以,原系统不完全可控。附录:Matlab源程序clear all; f1=0.001;%实际系统参数M=1.096; m=0.109; b=0.25; l=0.25; I=0.0034; g=9.8; T=0.02; %求系统状

20、态空间参数 p=I*(M+m)+M*m*l2; A=0 1 0 0;0 -(I+m*l2)*b/p m2*g*l2/p 0;0 0 0 1;0 -m*b*l/p m*g*l*(M+m)/p 0; B=0;(I+m*l2)/p;0;m*l/p; C=1 0 0 0;0 0 1 0; D=0; %求反馈向量K R=1; Q1=200;Q2=0;Q3=100; Q=Q1 0 0 0;0 0 0 0;0 0 Q3 0;0 0 0 0; K=lqr(A,B,Q,R); %求状态反馈后的系统sysstate Ac=A-B*K; Bc=B*K(1); %输入变换 使输入与反馈的量纲匹配 sysstate=s

21、s(Ac,Bc,C,D);%信号模拟发生器T=0.02Tmax=45;%生成阶跃信号 % t=0:T:Tmax; % U=0.1*ones(size(t);%生成方波 t=0:T:Tmax; U = 0.1.*gensig(square,15,Tmax,T)-0.1/2;%生成正弦波 % t=0:T:Tmax; % U=0.1*sin(2*pi*t/15); %生成正弦波波 % t=0:T:Tmax; % U=(1-mod(t/8, 1)-0.5)*0.1;%对lqr控制系统进行仿真 y=lsim(sysstate,U,t); figure(1);hold on;plot(t,y(:,1),t

22、,y(:,2),r);box on;xlabel(t/s);ylabel(Position/m or Angle/rad);legend(Car Position,Pendulum Angle);实验研究的体会和收获总的来说,通过这次实验,我们将理论应用于实验,加深了对状态空间、状态空间控制算法和状态反馈的理解。也感谢学院、老师给我们提供这些宝贵的实验机会,让我们在理论学习的基础上,能够通过自己动手对专业知识有深层次的理解。参考文献1 固高公司. 倒立摆(教学实验设备)用户手册,20012 赵世敏. 倒立摆控制系统实验指示书,20073 孙建军,王仲民. 倒立摆实验系统与最优控制算法研究. 天津职业技术师范学院学报, 2004,14(4): 50524 胡寿松. 自动控制原理. 北京: 科学出版社, 20015 易继铠等. 智能控制技术,北京工业大学出版社, 19996 杨振强等. 二级倒立摆的状态合成模糊神经网络控制. 控制与决策, 2002,17(1):1231257 张明廉等. 拟人控制二维单倒立摆. 控制与决策, 2002, 17(1):53568 薛定宇. 控制系统计算机辅助设计MATLAB语言及应用. 北京: 清华大学, 1996

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      联系我们       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号  |  icp.png浙ICP备2021020529号-1 浙B2-2024(办理中)  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服