倒立摆实验报告(现代控制理论)_第1页
倒立摆实验报告(现代控制理论)_第2页
倒立摆实验报告(现代控制理论)_第3页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

现代控制理论实验报告——倒立摆小组成员:指导老师:2013.5实验一建立一级倒立摆的数学模型一、实验目的学习建立一级倒立摆系统的数学模型,并进行Matlab仿真。二、实验内容写出系统传递函数和状态空间方程,用Matlab进行仿真。三、Matlab源程序及程序运行的结果Matlab源程序见附页给出系统的传递函数和状态方程gs为摆杆的角度:>>gsTransferfunction:2.054ss^3+0.07391s^2-29.23s-2.013gspo>>gspoTransferfunction:0.7391s^2-20.13s^4+0.07391s^3-29.23s^2-2.013sA,B,C,D:>>sysa=x1x2x3x4x10100x20-0.073910.71750x30001x40-0.205429.230b=u1x10x20.7391x30x42.054c=x1 x2x3 x4y11 00 0y20 01 0d=u1y1 0y2 0Continuous-timemodel.Ags>>PP=5.4042-5.4093-0.0689gspo>>PoPo=05.4042-5.4093-0.0689A>>EE=0-0.06895.4042-5.4093给出系统开环脉冲响应和阶跃响应的曲线开环脉冲响应曲线阶跃响应曲线四、思考题答:由状态空间方程转化为传递函数:>>gso=tf(sys)Transferfunctionfrominputtooutput...0.7391s^2-6.565e-016s-20.13#1: s^4+0.07391s^3-29.23s^2-2.013s2.054s+4.587e-016#2: s^3+0.07391s^2-29.23s-2.013#1gspo#2gs而直接得到的传递函数为:>>gspoTransferfunction:0.7391s^2-20.13s^4+0.07391s^3-29.23s^2-2.013s>>gsTransferfunction:2.054ss^3+0.07391s^2-29.23s-2.013s6.565e-016gs答:开环系统不稳定极点为:>>PP=5.4042-5.4093-0.0689>>PoPo=05.4042-5.4093-0.0689s5.4042gspogs(matlabclearall;f1=0.001;M=1.32;m=0.132;b=0.1;l=0.27;I=0.0032;g=9.8;T=0.02;gsgspo(q=(M+m)*(I+m*l^2)-(m*l)^2;num=[m*l/q0];den=[1b*(I+m*l^2)/q-(M+m)*m*g*l/q-b*m*g*l/q];gs=tf(num,den);numpo=[(I+m*l^2)/q0-m*g*l/q];denpo=[1b*(I+m*l^2)/q-(M+m)*m*g*l/q-b*m*g*l/q0];gspo=tf(numpo,denpo);p=I*(M+m)+M*m*l^2;A=[0100;0-(I+m*l^2)*b/pm^2*g*l^2/p0;0001;0-m*b*l/pm*g*l*(M+m)/p0];B=[0;(I+m*l^2)/p;0;m*l/p];C=[1000;0010];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/morAngle/rad');axis([02080]);legend('CarPosition','PendulumAngle');sysgs0=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/morAngle/rad');axis([02080]);legend('CarPosition','PendulumAngle');%通过传递函数求系统(摆杆角度和小车位置)的开环阶越响应t=0:T:5;y1=step(gs,t);y2=step(gspo,t);figure(3);plot(t,y2,'b',t,y1,'r');axis([02.5080]);xlabel('t/s');ylabel('Position/morAngle/rad');legend('CarPosition','PendulumAngle');%通过状态方程求系统(摆杆角度和小车位置)的开环阶越响应t=0:T:5;y=step(sys,t);figure(4);plot(t,y(:,1),t,y(:,2),'r');xlabel('t/s');ylabel('Position/morAngle/rad');axis([02.5080]);legend('CarPosition','PendulumAngle');%求传递函数极点P=pole(gs);Po=pole(gspo);AE=eig(A);实验二倒立摆系统控制算法的状态空间法设计一、实验目的学习如何使用状态空间法设计系统的控制算法。二、实验内容0.2m的响应指标为:µx5x22µ20(0.35)4%.三、Matlab源程序及程序执行结果Matlab(见附录)程序执行结果(a)k的值>>KK=-14.1421 -12.1570 63.5837 11.8416(b)反馈后的响应曲线给出无扰动时两次不同K值下,小车的稳定位置P1Pend1;(a)>>KK=-14.142-12.157 63.58411.842小车的稳定位置P1=-0.02Pend1=0.001(b)>>KK=-14.1421 -12.1570 63.5837 11.8416小车的稳定位置P1=-0.007绿色的曲线为摆杆的稳定角度Pend1=0.0015度给出两次不同K①K=-14.1421 -12.1467 63.5825 11.841300=(0.11-0.0825)/0.0925=29.7%tp=(4100-3880)/1000*8.8=1.936str=(4030-3880)/1000*8.8=1.32s ts=(4800-3880)/1000*8.8=8.096s②K=-14.1421 -12.1570 63.5837 11.84160=(0.11-0.085)/0.092=27.17%0tp=(3025-2840)/1000*8.8=1.628str=(2955-2840)/1000*8.8=1.012s ts=(4800-3900)/1000*8.8=7.92s四、思考题Ac的特征值。①K=-14.1421 -12.1467 63.5825 11.8413②K=-14.1421 -12.1570 63.5837 11.8416Q11Q33(Q11Q(1;个元素):Q33Q11Q33=100Q11=100(红、500(蓝、1000(绿)Q11间缩短了。Q11Q33Q11=100Q33=100(红、1000(蓝、2000(绿)Q33长了。(matlabclearall;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*l^2;A=[0100;0-(I+m*l^2)*b/pm^2*g*l^2/p0;0001;0-m*b*l/pm*g*l*(M+m)/p0];B=[0;(I+m*l^2)/p;0;m*l/p];C=[1000;0010];D=0;R=1;Q1=200;Q2=0;Q3=100;Q=[Q1000;0Q200;00Q30;0000];K=lqr(A,B,Q,R);Ac=A-B*K;Bc=B*K(1);sysstate=ss(Ac,Bc,C,D);lqrt=0:T:5;U=0.2*ones(size(t));y=lsim(sysstate,U,t);figure(1);holdon;plot(t,y(:,1),t,y(:,2),'r');boxon;xlabel('t/s');ylabel('Position/morAngle/rad');legend('CarPosition','PendulumAngle');实验三研究倒立摆系统对信号的跟踪一、实验目的解。二、实验内容在平衡位置,分别设定下列三种信号,记录倒立摆的运动情况:0.2Hz,0.05m0.2Hz,0.05m0.2Hz,0.05m三、Matlab源程序及程序执行结果Matlab(见附录)Matlab(三种扰动下的响应曲线ABCQ1=500,Q2=700A锯齿波信号下的实际响应曲线B方波信号下的实际响应曲线C正弦信号下的实际响应曲线当Q1=300,Q2=500A锯齿波信号下的实际响应曲线BC20s23258.602*10^-3s.25*8.602/1000=0.215s15*8.602/1000=0.129s修正后的曲线:①K=-14.1421 -12.1467 63.5825 11.8413②K=-14.1421 -12.1570 63.5837 11.8416四、思考题(1)仿真曲线和实际响应曲线是否大致相同?通过比较可以看出仿真的曲线和实际响应曲线大致相同。(2)请说明原系统是否完全可控?因为3<4,所以,原系统不完全可控。附录:Matlabclearall;f1=0.001;M=1.096;m=0.109;b=0.25;l=0.25;I=0.0034;g=9.8;T=0.02;%求系统状态空间参数p=I*(M+m)+M*m*l^2;A=[0100;0-(I+m*l^2)*b/pm^2*g*l^2/p0;0001;0-m*b*l/pm*g*l*(M+m)/p0];B=[0;(I+m*l^2)/p;0;m*l/p];C=[1000;0010];D=0;R=1;Q1=200;Q2=0;Q3=100;Q=[Q1000;0000;00Q30;0000];K=lqr(A,B,Q,R);Ac=A-B*K;Bc=B*K(1);%输入变换使输入与反馈的量纲匹配sysstate=ss(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;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%lqry=lsim(sysstate,U,t);figure(1);holdon;plot(t,y(:,1),t,y(:,2),'r');boxon;xlabel('t/s');ylabel('Position/m

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论