MATLAB中SSQJ,基于lqr的一级倒立摆仿真研究

41528d3028836879cd698677c3999917.gif基于lqr的一级倒立摆仿真研究

综合性实验设计题目:直线一级倒立摆班级:0802姓名:郭长春指导老师:张白莉学号:200807211065摘要倒立摆是一个复杂的多变量强祸合不稳定非线性的系统,借助于这样一个系统可以有效的检测各种控制理论的好坏。本论文研究了倒立摆系统的建模方法,采用 Lagrange 方程对一级倒立摆系统进行建模。针对倒立摆的状态空间方程,采用 MatLab 软件对倒立摆的稳定性,能控性,能观性和可控度做了分析; 采用最优控制理论对倒立摆系统进行稳摆控制并进行仿真,并利用该理论将倒立摆的数学模型加以改进,并对改进后的倒立。经过仿真分析确认改进后的倒立摆系统控制效果得到了明显的改善。正文1.倒立摆系统研究的背景随着各种控制理论的发展,理论的正确性,它在实际应用中的可行性,都需要用一个典型的对象来验证,这种控制对象必须能够比较各种控制理论的优劣。倒立摆系统就是我们需要的理想的实验控制平台。倒立摆控制系统,是一个复杂的多变量强祸合不稳定非线性系统。对倒立摆系统进行研究,能有效的反映控制策略中的许多典型问题, ,针对倒立摆而研究的控制方法在双足机器人的行走平衡方面、军工方面、火箭发射过程的垂直度控制、卫星在飞行中的姿态控制以及日常生产过程和生活领域中的应用都非常广泛。因此,倒立摆系统的研究,有着重要的工业背景和实际意义。2.直线一级倒立摆系统的建模直线一级倒立摆的工作原理可简述为:用一种强有力的控制方法使小车以一定的规律来回运动,从而使摆杆在垂平面内稳定下来。这样的系统就是倒立摆的控制系统如下图所示若小车不动,摆杆会由于重力作用倒下来若在水平方向给小车一个力,则摆杆受到一个力矩,这个力矩使摆杆朝与小车相反的方向运动,通过规律性的改变小车的受力方向使得摆杆在竖直方向左右摆动从而实现摆杆在竖直方向的动态平衡。在忽略了空气阻力和各种摩擦之后,可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统。如下如所示。图 倒立摆系统其中:M 小车的质量m 摆杆的质量b 小车的摩擦系数l 摆杆转动轴心到杆质心的长度I 摆杆的惯量F 加在小车上的力X 小车的位置φ 摆杆与垂直向上方向的夹角 θ 摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下)图是系统中小车和摆杆的受力分析图。其中,N 和 P 为小车与摆杆相互作用力的水平和垂直方向的分量。 注意:在实际倒立摆系统中检测和执行装置的正负方向已经完全确定,因而矢量方向定义如图所示,图示方向为矢量正方向。 分析小车水平方向所受的合力,可以得到以下方程: NxbFM由摆杆水平方向的受力进行分析可以得到下面等式: )sin(2ldtm即: sicos2llxN把这个等式代入式(3-1)中,就得到系统的第一个运动方程: FmllbmMin)( 2为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以得到下面方程: )cos(2ldtgPin2mll力矩平衡方程如下: INlPlcossi注意:此方程中力矩的方向,由于 ,故等式sini,s, 前面有负号。 合并这两个方程,约去 和 ,得到第二个运动方程: PNcossin)(2xmlglmlI 设 ( 是摆杆与垂直向上方向之间的夹角) ,假设 与 1(单位是弧度)相 比很小,即 ,则可以进行近似处理: 。用 来代1 0)(,si,1co2dtu表被控对象的输入力 ,线性化后两个运动方程如下: F2(+)ImlglxMxbu对式(3-9) 进行拉普拉斯变换,得到 2110()JLlLrr3.传递函数模型推导传递函数时假设初始条件为 0。 由于输出为角度 ,求解方程组的第一个方程,可以得到: 21())[]()JmLgRss或 (18-10)211())sJs如果令 ,则有:xv12())mLVsJsg把上式代入方程组的第二个方程,得到: 22 2110()()() ()()()JmLgslsUsL整理后得到传递函数: (18-11)2124321011()()()ssqJmLmgLUsq其中 220111()()(q4.状态空间方程模型设系统状态空间方程为:DuCXyBA方程组 对 解代数方程,得到解如下:,x22 21 1 120010010011 12 2 210101001100() ()()()()()JmLmgLJmLx uJJ J 整理后得到系统状态空间方程: 22 211 12001001001122101000110()()()()()(x xmLgLmLJJmJ          210)u(18-13)uxxy 5.系统的物理参数代入倒立摆系统的参数。小车的质量:M=1kg摆杆的质量:m=0.1kg小车的摩擦系数:b=0.1N/(m· )1s摆杆转动轴心到杆质心的长度:l=0.5m重力加速度:g=10/ 2s摆杆惯量:I=0.003kg· 2m采样频率:0.005s.将上述数据带入(18-10) 、 ( 18-11) 、 (18-13)摆杆角度与小车位移之间的传递函数: (18-14)5.028.)(ssx摆杆角度与小车所受外力之间的传递函数: =)(u(18-15)ssss 78253.160.90821.75342系统的空间状态表达式为:(18-15)uxx  768452.1093.043628975.1768.0   uxxy16.经典控制器设计——PID 控制PID 控制器因其结构简单,容易调节,且不需要对系统建立精确的模型,在控制上应用较广 PID 的控制器传递函数为:(18-17)PIDIPDIPDPI denumSKSKSG2)(close allclear all%设定系统参数M=1;m=0.1;b=0.1;l=0.5;I=0.003;g=9.8;q=(M+m)*(I+m*l^2)-(m*l)^2%输入倒立摆的传递函数num=[m*l/q 0 0];den=[l b*(I+m*l^2)/q -(M+m)*m*g*l/q -b*m*g*l/q 0];%计算并显示系统未校正的极点[r,p,k]=residue(num,den);disp( the poles are: );p%设定 PID 参数kp=40;ki=1;kd=10;numPID=[kd kp ki];denPID=[1 0];%计算经过 PID 校正后的闭环传递函数numc=conv(num,denPID);denc=polyadd(conv(den,denPID),conv(num,numPID));%j 计算并显示校正后系统

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值