您好,欢迎访问三七文档
一级倒立摆研究(160232蒋琴)1.背景介绍倒立摆装置被公认为自动理论中的典型实验设备,也是控制理论教学和科研中不可多得的典型物理模型。通过倒立摆的研究,可以将控制理论所涉及的三个基础学科:力学、数学和电学有机结合起来,在倒立摆中进行综合应用。在稳定控制问题上,倒立摆既具有普遍性又具有典型性。其结构简单,价格低廉,便于模拟和数字实现多种不同的控制方法,倒立摆的控制方法有很多种,如PID、自适应、状态反馈、智能控制、模糊控制及神经元网络等多种理论和方法。用现代控制理论中的状态反馈方法来实现倒立摆系统的控制,就是设法调整闭环系统的极点分布,以构成闭环稳定的倒立摆系统,实际上,用线性化模型进行极点配置求得的状态反馈阵,不一定能使倒立摆稳定竖起来,能使倒立摆竖立起来的状态反馈阵是实际调试出来的,这个调试出来的状态反馈阵肯定满足极点配置。2.倒立摆简介倒立摆可以分为直线倒立摆、平面倒立摆和环形倒立摆等。2-1直线倒立摆2-2平面倒立摆2-3环形倒立摆3.模型构建3.1倒立摆系统运动示意图3-1倒立摆系统运动示意图M小车质量m摆杆质量b小车摩擦系数l摆杆转动轴心到杆质心的长度I摆杆惯量F加在小车上的力x小车位置Φ摆杆与垂直向上方向的夹角(逆时针为正)θ摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下,顺时针为正)3.2受力分析3-2倒立摆受力分析图3.3模型构建1)理论分析应用Newton方法来建立系统的动力学方程过程如下。分析小车水平方向所受的合力,可以得到以下方程:NbxFMx'''由摆杆水平方向所受的合力,可以得到如下方程:)sin(22lxdtdmN2)'(sin''cos''mlmlmx(1)合并得:FmlbxxmM]sin)'(cos''[''')(2(2)摆杆垂直方向:)cos(22ldtdmmgP]cos)'(sin''[2mlcossin''NlPlI合并得到力矩平衡方程:''cossinINlPl(3)当夹角很小时(小于1rad),可以做如下近似处理:1coscos,sinsin,0''用u代替F,可得:'''')(u''''')(2mlxmglmlImlbxxmM(4)设状态空间表达式为:DuCXyBuAXX'在(4)式中对''x和''进行线性求解,可得:upmlpmMmglxpmlbupmlIpglmxpbmlIxxx)('''''')(''''2222(5)其中:))(2MmlmMIp整理后,得到状态空间表达式为:0)(010000)(00010''''''222pmMmglpmlbpglmpbmlIxx''xx+upmlpmlI002(6)uxxy00''01000001其中:2)(MmlmMIp2)实际问题实际系统参数如下:M小车质量1.096kgm摆杆质量0.109kgb小车摩擦系数0.1N/m/sl摆杆转动轴心到杆质心的长度0.25mI摆杆惯量0.00342mkgT采样时间0.005s所以,状态空间表达式为:uxxxx3566.208832.00''08570.272357.00100006300.00883.000010''''''uxxy00''010000013.4系统的能观性和能控性能观性矩阵:][32BABAABBM1506.66662.652082.03566.26662.652082.03566.202629.04915.10780.08832.04915.10780.08832.004)(Mrank能控性矩阵:T32CACACACN8570.271485.00208.006300.00556.00078.0008570.272357.0-006300.00883.0-00000.1000000000.1000000.1000000000.14)(Nrank所以,系统是能控能观的,本身即为最小系统。3.5Simulink仿真3-3Simulink仿真3-4小车位移输出图3-5摆杆角度输出图4.倒立摆实验4.1倒立摆硬件系统结构直线倒立摆本体结构如下图所示,主要部件有:交流伺服电机,同步带,增量式光电编码器,小车,摆杆,滑杆,限位开关等。4-1直线倒立摆4-2倒立摆控制框图4.2Matlab程序%求传递函数gs(输出为摆杆角度)和gspo(输出为小车位置)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);%求状态空间sys(A,B,C,D)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;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');axis([02080]);legend('CarPosition','PendulumAngle');%将状态空间方程sys转化为传递函数gs0gs0=tf(sys);%通过状态方程求系统(摆杆角度和小车位置)的开环脉冲响应t=0:T:5;y=impulse(sys,t);figure(2);plot(t,y(:,1),t,y(:,2),'r');axis([02080]);legend('CarPosition','PendulumAngle')%通过传递函数求系统(摆杆角度和小车位置)的开环脉冲响应t=0:T:5;y1=impulse(gs,t);y2=impulse(gspo,t);figure(1);plot(t,y2,'b',t,y1,'r');axis([02080]);legend('CarPosition','PendulumAngle');%将状态空间方程sys转化为传递函数gs0gs0=tf(sys);%通过状态方程求系统(摆杆角度和小车位置)的开环脉冲响应t=0:T:5;y=impulse(sys,t);figure(2);plot(t,y(:,1),t,y(:,2),'r');axis([02080]);legend('CarPosition','PendulumAngle');5.总结通过对一级倒立摆建模,并结合课本上的知识,对倒立摆控制做了一个系统的分析,本次大作业让我将所学的知识与实践结合起来,更深入地理解了所学知识,此外,还学会了matlab编程方法和simulink仿真方法,收获很大!
本文标题:控制理论大作业
链接地址:https://www.777doc.com/doc-3180211 .html