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

上传人:tbuqq 文档编号:5593626 上传时间:2020-06-21 格式:PDF 页数:27 大小:902.98KB
返回 下载 相关 举报
倒立摆实验报告(现代控制理论).pdf_第1页
第1页 / 共27页
倒立摆实验报告(现代控制理论).pdf_第2页
第2页 / 共27页
倒立摆实验报告(现代控制理论).pdf_第3页
第3页 / 共27页
倒立摆实验报告(现代控制理论).pdf_第4页
第4页 / 共27页
倒立摆实验报告(现代控制理论).pdf_第5页
第5页 / 共27页
点击查看更多>>
资源描述

《倒立摆实验报告(现代控制理论).pdf》由会员分享,可在线阅读,更多相关《倒立摆实验报告(现代控制理论).pdf(27页珍藏版)》请在三一文库上搜索。

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

2、 gspo 为小车的位移传递函数: gspo Transfer function: 0.7391 s2 - 20.13 - s4 + 0.07391 s3 - 29.23 s2 - 2.013 s (c)状态矩阵 A,B,C,D: sys a = 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 0 b = u1 x1 0 x2 0.7391 x3 0 x4 2.054 c = x1 x2 x3 x4 y1 1 0 0 0 y2 0 0 1 0 d = u1 。 -可编辑修改 - y1 0 y

3、2 0 Continuous-time model. (3)给出传递函数极点和系统状态矩阵A的特征值 (a)传递函数 gs 的极点 P P = 5.4042 -5.4093 -0.0689 (b)传递函数 gspo 的极点 Po Po = 0 5.4042 -5.4093 -0.0689 (c)状态矩阵 A的特征值 E E = 0 -0.0689 5.4042 -5.4093 (4)给出系统开环脉冲响应和阶跃响应的曲线 (a)开环脉冲响应曲线 。 -可编辑修改 - (b)阶跃响应曲线 。 -可编辑修改 - 四、思考题 (1)由状态空间方程转化为传递函数,是否与直接计算传递函数相等? 答:由状态

4、空间方程转化为传递函数: gso=tf(sys) Transfer function from input to output. 0.7391 s2 - 6.565e-016 s - 20.13 #1: - s4 + 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 的传递函数 而直接得到的传递函数为: gspo Transfer function: 0.7391 s2 - 20.13 - s4 + 0.07391

5、 s3 - 29.23 s2 - 2.013 s 。 -可编辑修改 - gs Transfer function: 2.054 s - s3 + 0.07391 s2 - 29.23 s - 2.013 通过比较可以看到, gspo 由状态空间方程转化的传递函数比直接得到的传递函 数多了 s 的一次项,而 6.565e-016 非常小几乎可以忽略不计,因此可以认为两 种方法得到的传递函数式相同的,同理传递函数gs 也可以认为是相同的。 (2) 通过仿真表明开环系统是否稳定?请通过极点( 特征值 ) 理论来分析。 答:开环系统不稳定 极点为: P P = 5.4042 -5.4093 -0.06

6、89 Po Po = 0 5.4042 -5.4093 -0.0689 由系统稳定性结论可知, 极点若都分布在 s 平面的左半平面则系统稳定, 而开 环系统的极点有 5.4042 在右半平面。因此,开环系统不稳定。 (3)传递函数的极点和状态方程的特征值的个数、大小是否相等?如果不相等, 请解释其原因。 传递函数 gspo 的极点和状态方程的特征值的个数、大小相等。但是传递函数 gs 的极点和状态方程的特征值个数不相等。因为存在零极点对消。 附录: (matlab 程序) clear all; f1=0.001; % 实际系统参数 M=1.32; m=0.132; b=0.1; l=0.27;

7、 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 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=

8、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; y1=impulse(gs,t); y2=impulse(gspo,t); figure(1); plot(t,y2,b,t,y1,r); xlabel(t/s); ylabel(Position/m

9、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); xlabel(t/s); ylabel(Position/m or Angle/rad); axis(0 2 0 80); legend(Car Position,Pendulum Angl

10、e); % 通过传递函数求系统 ( 摆杆角度和小车位置 )的开环阶越响应 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); 。 -可编辑修改 - % 通过状态方程求系统 ( 摆杆角度和小车位置 )的开环阶越响应 t=0:T:5; y=step(sys,t); figure(4); plot(t,y(:

11、,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); 。 -可编辑修改 - 实验二倒立摆系统控制算法的状态空间法设计 一、 实验目的 学习如何使用状态空间法设计系统的控制算法。 二、 实验内容 用状态空间法设计控制器, 使得当在小车上施加 0.2m 的阶跃信号时, 闭环系统 的响应指标为: (1) 杆角

12、度 和小车位移 x 的稳定时间小于5 秒 (2) x的上升时间小于 2 秒 2 (3) 的超调量小于 20 度(0.35 弧度) (4) 稳态误差小于 4%. 三、Matlab 源程序及程序执行结果 (1)Matlab 源程序(见附录) (2)程序执行结果 (a)k 的值 K K = -14.1421 -12.1570 63.5837 11.8416 (b)反馈后的响应曲线 。 -可编辑修改 - (3)给出无扰动时两次不同K 值下,小车的稳定位置P1 和摆杆的稳定角度 Pend1; (a) K K = -14.142 -12.157 63.584 11.842 小车的稳定位置 P1=-0.02

13、 。 -可编辑修改 - 绿色的曲线为摆杆的稳定角度Pend1=0.001 度 (b) K K = -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 0 =(0.11-0.0825)/0.0925=29.7% tp= (4100-3880)/100

14、0*8.8=1.936s tr=(4030-3880)/1000*8.8=1.32s ts=(4800-3880)/1000*8.8=8.096s 。 -可编辑修改 - K = -14.1421 -12.1570 63.5837 11.8416 0 0 =(0.11-0.085)/0.092=27.17% tp= (3025-2840)/1000*8.8=1.628s tr=(2955-2840)/1000*8.8=1.012s ts=(4800-3900)/1000*8.8=7.92s 四、思考题 (1) 计算 Ac 的特征值。 K = -14.1421 -12.1467 63.5825 1

15、1.8413 K = -14.1421 -12.1570 63.5837 11.8416 。 -可编辑修改 - (2) 通过仿真分析 Q11和 Q33的大小对控制效果的影响 (Q11 为 Q阵的第 (1; 1) 个元素 ) : ? 固定 Q33 ,改变 Q11 Q33= 100 Q11=100 (红) 、500(蓝) 、1000(绿) 从图中可以看出Q11增大 , 角度超调随着增大 , 位置的超调基本不变 , 但是响应时 间缩短了。 ? 固定 Q11 ,改变 Q33 Q11= 100 Q33=100 (红) 、1000(蓝) 、2000(绿) 从图中可以看出Q33增大 , 角度超调减小 , 位

16、置的超调基本不变 , 但是响应时间延 长了。 。 -可编辑修改 - 附录: (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.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

17、*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=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=lsi

18、m(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); 。 -可编辑修改 - 实验三研究倒立摆系统对信号的跟踪 一、实验目的 观察倒立摆对于不同输入信号的跟踪情况,加深对状态空间和状态反馈的理 解。 二、实验内容 在平衡位置,分别设定下列三种信号,记录倒立摆的运动情况: (1) 方波信号:频率 0.2Hz,幅值 0.05m (2) 正弦波信号:

19、频率 0.2Hz,幅值 0.05m (3) 锯齿波信号:频率 0.2Hz,幅值 0.05m 三、Matlab 源程序及程序执行结果 (1)Matlab源程序(见附录) (2)Matlab仿真图形(三种扰动下的响应曲线) A 阶跃信号下的响应曲线 。 -可编辑修改 - B 方波信号下的响应曲线 C 正弦信号下的响应曲线 。 -可编辑修改 - (3)实际系统的响应曲线 当 Q1=500 ,Q2=700 A 锯齿波信号下的实际响应曲线 B 方波信号下的实际响应曲线 。 -可编辑修改 - C 正弦信号下的实际响应曲线 当 Q1=300 ,Q2=500 A锯齿波信号下的实际响应曲线 。 -可编辑修改 -

20、 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.129s (5)根据统计出的时延,对实验二中

21、阶跃响应的曲线进行修正 修正后的曲线: K = -14.1421 -12.1467 63.5825 11.8413 K = -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

22、=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 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); % 输

23、入变换使输入与反馈的量纲匹配 sysstate=ss(Ac,Bc,C,D); % % 信号模拟发生器 T=0.02 Tmax=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

24、=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); 。 -可编辑修改 - 实验研究的体会和收获 总的来说,通过这次实验,我们将理论应用于实验,加深了对状态空间、状 态空间控制算法和状态反馈的理解。也感谢学院、 老师给我们提供这些宝贵的实 验机会,让我们在理论学习的基础上, 能够通过自己动手对专业知识有深层次的 理解。 参考文献 1

25、固高公司 . 倒立摆( 教学实验设备 ) 用户手册 ,2001 2 赵世敏 . 倒立摆控制系统实验指示书,2007 3 孙建军 , 王仲民. 倒立摆实验系统与最优控制算法研究. 天津职业技术师范 学院学报 , 2004,14(4): 5052 4 胡寿松 . 自动控制原理 . 北京: 科学出版社 , 2001 5 易继铠等 . 智能控制技术 , 北京工业大学出版社 , 1999 6 杨振强等 . 二级倒立摆的状态合成模糊神经网络控制. 控制与决策 , 2002, 17(1):123125 7 张明廉等 . 拟人控制二维单倒立摆 . 控制与决策 , 2002, 17(1):5356 8 薛定宇 . 控制系统计算机辅助设计MATLAB 语言及应用 . 北京: 清华大学 , 1996 。 -可编辑修改 - 欢迎您的下载, 资料仅供参考! 致力为企业和个人提供合同协议,策划案计划书, 学习课件等等 打造全网一站式需求

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1