一阶倒立摆控制系统设计_第1页
一阶倒立摆控制系统设计_第2页
一阶倒立摆控制系统设计_第3页
一阶倒立摆控制系统设计_第4页
一阶倒立摆控制系统设计_第5页
已阅读5页,还剩32页未读 继续免费阅读

下载本文档

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

文档简介

课程设计说明书课程名称:控制系统课程设计设计题目:一阶倒立摆控制器设计院系:信息与电气工程学院班级:设计者:学号:指导教师:设计时间:2023年2月25日到2023年3月8号课程设计(论文)任务书专业自动化班级0902101学生指导教师题目一阶倒立摆课程设计子题设计时间2023年2月25日至2023年3月8日共2周设计规定设计(论文)的任务和基本规定,涉及设计任务、查阅文献、方案设计、说明书(计算、图纸、撰写内容及规范等)、工作量等内容。1.建立一阶倒立摆数学模型2.做模型仿真实验(1)给出Matlab仿真程序。(2)给出仿真结果和响应曲线。3.倒立摆系统的PID控制算法设计设计PID控制器,使得当在小车上施加1N的脉冲信号时,闭环系统的响应指标为:(1)稳定期间小于5秒(2)稳态时摆杆与垂直方向的夹角变化小于0.1弧度并作PID控制算法的MATLAB仿真4.倒立摆系统的最优控制算法设计用状态空间法设计控制器,使得当在小车上施加0.2m的阶跃信号时,闭环系统的响应指标为:(1)摆杆角度和小车位移的稳定期间小于5秒(2)的上升时间小于1秒(3)的超调量小于20度(0.35弧度)(4)稳态误差小于2%。指导教师签字:系(教研室)主任签字:2023年3月5日目录TOC\o"1-3"\h\u12765一、建立一阶倒立摆数学模型 4219291.一阶倒立摆的微分方程模型 4246532.一阶倒立摆的传递函数模型 6312223.一阶倒立摆的状态空间模型 711183二、一阶倒立摆matlab仿真 922553三、倒立摆系统的PID控制算法设计 135388四、倒立摆系统的最优控制算法设计 2317103五、总结 2818976六、参考文献 29建立一阶倒立摆数学模型一方面建立一阶倒立摆的物理模型。在忽略空气阻力和各种摩擦之后,可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统,如图1所示。系统内部各相关参数定义如下:M小车质量m摆杆质量b小车摩擦系数l摆杆转动轴心到杆质心的长度I摆杆惯量F加在小车上的力x小车位置φ摆杆与垂直向上方向的夹角θ摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下)一阶倒立摆的微分方程模型对一阶倒立摆系统中的小车和摆杆进行受力分析,其中,N和P为小车与摆杆互相作用力的水平和垂直方向的分量。图SEQ图\*ARABIC1-2小车及摆杆受力图分析小车水平方向所受的合力,可以得到以下方程:(1-1)由摆杆水平方向的受力进行分析可以得到下面等式:(1-2)即:(1-3)把这个等式代入式(1-1)中,就得到系统的第一个运动方程:(1-4)为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以得到下面方程:(1-5)即:(1-6)力矩平衡方程如下:(1-7)由于所以等式前面有负号。合并这两个方程,约去P和N,得到第二个运动方程:(1-8)设,(φ是摆杆与垂直向上方向之间的夹角),假设φ<<1弧度,则可以进行近似解决:。用u代表被控对象的输入力F,运用上述近似进行线性化得直线一阶倒立摆的微分方程为:((1-9)一阶倒立摆的传递函数模型对式(1-9)进行拉普拉斯变换,得:(2-1(2-1)注意:推导传递函数时假设初始条件为0。由于输出为角度φ,求解方程组的第一个方程,可得:(2-2(2-2)或((2-3)假如令QUOTE,则有:((2-4)(2-5)(2-5)整理后得到传递函数:(2-6(2-6)其中。一阶倒立摆的状态空间模型设系统状态空间方程为:((3-1)方程组(2-9)对解代数方程,得到解如下:(3-1(3-1)整理后得到系统状态空间方程:(3-2(3-2)(3-3(3-3)摆杆的惯量为,代入(1-9)的第一个方程为:得:化简得:(3-4(3-4)设则有:(3-5(3-5)4.实际系统的传递函数与状态方程实际系统的模型参数如下:M小车质量0.5Kgm摆杆质量0.2Kgb小车摩擦系数0.1N/m/secl摆杆转动轴心到杆质心的长度0.3mI摆杆惯量0.006kg*m*m代入上述参数可得系统的实际模型。摆杆角度和小车位移的传递函数:(4-1)(4-1)(4-2)摆杆角度和小车加速度之间的传递函数为:(4-3)摆杆角度和小车所受外界作用力的传递函数:以外界作用力作为输入的系统状态方程:((4-4)以小车加速度为输入的系统状态方程:(4-5)(4-5)一阶倒立摆matlab仿真实际系统参数如下,按照上面给出的例子求系统的传递函数、状态空间方程,并进行脉冲响应和阶跃响应的matlab仿真。 小车质量 1.096Kg 摆杆质量 0.109Kg 小车摩擦系数 0.1N/m/sec摆杆转动轴心到杆质心的长度0.25m摆杆惯量 0.0034kg*m*m采样时间 0.005秒传递函数法Matlab程序如下:M=1.096;m=0.109;b=0.1;I=0.0034;g=9.8;L=0.25;q=(M+m)*(I+m*L^2)-(m*L)^2;num=[m*L/q00]den=[1b*(I+m*L^2)/q-(M+m)*m*g*L/q-b*m*g*L/q0];[r,p,k]=residue(num,den);s=p;得到传递函数的分子:num=2.356600以及传递函数分母:den=1.00000.0883-27.8285-2.30940开环极点:s=-5.27805.2727-0.08300由此可知,系统传递函数的多项式表达式为:(2-1)系统的开环极点为(s):、、、,由于有一个开环极点位于平面的右半部,开环系统并不是稳定的。系统的脉冲响应如下,由图也可见,系统并不稳定。图2.1开环系统脉冲响应状态空间法状态空间法可以进行单输入多输出系统设计,因此在这个实验中,我们将尝试同时对摆杆角度和小车位置进行控制。为了更具挑战性,给小车加一个阶跃输入信号。我们用Matlab求出系统的状态空间方程各矩阵,并仿真系统的开环阶跃响应。在这里给出一个state.m文献,执行这个文献,Matlab将会给出系统状态空间方程的A,B,C和D矩阵,并绘出在给定输入为一个0.2N的阶跃信号时系统的响应曲线。state.m程序如下:p=I*(M+m)+M*m*L^2;>>A=[0100;0-(I+m*L^2)*b/p(m^2*g*L^2)/p0;0001;0-(m*L*b)/pm*g*L*(M+m)/p0]A=01.0000000-0.08830.629300001.00000-0.235727.82850>>B=[0;(I+m*L^2)/p;0;m*L/p]B=00.883202.3566>>C=[1000;0010]D=[0;0]C=10000010D=00matlab仿真的开环阶跃响应曲线如下图所示,系统并不稳定。图2.2系统开环阶跃响应曲线倒立摆系统的PID控制算法设计实验规定与目的规定:设计PID控制器,使得当在小车上施加1N的脉冲信号时,闭环系统的响应指标为:(1)稳定期间小于5秒(2)稳态时摆杆与垂直方向的夹角变化小于0.1弧度并作PID控制算法的MATLAB仿真目的:进一步熟悉PID控制器的设计方法,环节,以及P、I、D三参数的调节方法。2.理论分析PID控制原理在模拟控制系统中,控制器最常用的控制规律是PID控制。常规PID控制系统原理框图如下图所示。系统由模拟PID控制器KD(S)和被控对象G(S)组成。PID控制器是一种线性控制器,它根据给定值与实际输出值构成控制偏差将偏差的比例(P)、积分(I)和微分(D)通过线性组合构成控制量,对被控对象进行控制,故称PID控制器。其控制规律为或写成传递函数的形式式中:——比例系数;——积分时间常数;——微分时间常数。在控制系统设计和仿真中,也将传递函数写成式中:——比例系数;——积分系数;——微分系数。

简朴说来,PID控制器各校正环节的作用如下:(1)比例环节:成比例地反映控制系统的偏差信号,偏差一旦产生,控制器立即产生控制作用,以减少偏差。(2)积分环节:重要用于消除稳态误差,提高系统的型别。积分作用的强弱取决于积分时间常数,越大,积分作用越弱,反之则越强。(3)微分环节:反映偏差信号的变化趋势(变化速率),并能在偏差信号值变得太大之前,在系统中引入一个有效的初期修正信号,从而加快系统的动作速度,减小调节时间。摆杆角度控制这个控制问题和我们以前碰到的标准控制问题有些不同,在这里输出量为摆杆的位置,它的初始位置为垂直向上,我们给系统施加一个扰动,观测摆杆的响应。系统框图如下:图中是控制器传递函数,是被控对象传递函数。考虑到输入,结构图可以很容易地变换成该系统的输出为其中:——被控对象传递函数的分子项——被控对象传递函数的分母项——PID控制器传递函数的分子项 ——PID控制器传递函数的分母项 被控对象的传递函数是其中PID控制器的传递函数为只需调节PID控制器的参数,就可以得到满意的控制效果。小车位置控制小车位置作为输出时,系统框图如下:其中,是摆杆传递函数,是小车传递函数。由于输入信号,所以可以把结构图转换成:其中,反馈环代表我们前面设计的摆杆的控制器。从此框图我们可以看出此处只对摆杆角度进行了控制,并没有对小车位置进行控制。小车位置输出为:其中,,,,分别代表被控对象1和被控对象2传递函数的分子和分母。和代表PID控制器传递函数的分子和分母。下面我们来求,根据前面实验二的推导,有可以推出小车位置的传递函数为其中可以看出,==,小车的算式可以简化成:3.PID控制算法的MATLAB仿真实际系统参数如下:M小车质量1.096Kgm摆杆质量0.109Kgb小车摩擦系数0.1N/m/secl摆杆转动轴心到杆质心的长度0.25mI摆杆惯量0.0034kg*m*mF加在小车上的力x小车位置T采样时间摆杆的matlab仿真程序代码如下:M=0.5;m=0.2;b=0.1;I=0.006;g=9.8;L=0.3;q=(M+m)*(I+m*L^2)-(m*L)^2;num1=[m*L/q00];den1=[1b*(I+m*L^2)/q-(M+m)*m*g*L/q-b*m*g*L/q0];Kp=1;Ki=1;Kd=1;numPID=[KdKpKi];denPID=[10];num=conv(num1,denPID);den=polyadd(conv(denPID,den1),conv(numPID,num1));[r,p,k]=residue(num,den);s=pt=0:0.005:5;impulse(num,den,t)axis([02010])运营程序得到:s=-6.41613.96930.001900并得到仿真图像如下:图3.1kp=ki=kd=1时的仿真响应图可见此时系统并不稳定,此时应当一方面调整kp,观测其响应的变化:讲kp设立为150,得到并观测响应图如下:s=-1.2224+18.0044i-1.2224-18.0044i-0.0000-0.0000-0.0000图3-2,kp=150系统仿真图可见此时系统两个闭环极点均在S平面做平面,系统稳定,系统稳定期间约为4秒,满足规定。此时系统有极小的静态误差,根据系统对于精度的规定可酌情考虑是否添加积分控制,本文添加积分控制。将积分参数设为5,得到并观测闭环响应图。在笔者通过多次尝试之后,发现积分控制对于系统响应的调节作用极小,笔者给出当积分参数分别设为10和50的响应图如下:图3-3,ki=10的响应图3-4,ki=50系统的响应积分作用通常是用来调整系统的静态误差,使之达成需要的范围,但是此处明显积分作用对系统的影响不大,并了解到被控对象的特性属于变化快的类型,应当考虑改变微分控制,虽然微分控制在实际系统中运用并不多见。笔者将微分作用参数设立为10,20,50观测其效果图。图3-5,kp=150,ki=50,kd=10的仿真图像图3-6,kp=150,ki=50,kd=20的仿真图像图3-7,kp=150,ki=50,kd=50的仿真图像当微分效果加上去的时候,系统闭环仿真图像结果得到了质的改善,瞬间取代了超调,不稳定,响应时间也迅速降到了0.5秒,稳定期间在1秒,完美地完毕了任务。其效果已经不能简朴的用好来形容,但是微分作用并非如此普及,并且每次都效果如此良好,要根据不同的对象来判断用什么作用。必须要说的是,微分作用在物理实现中是并不容易的,假如只有比例调节和积分调节就能达成预想的效果,那就不要使用微分调节。小车位置控制算法仿真pid2.m是仿真小车位置变化的m文献,文献如下:%小车位置PID控制%输入倒立摆传递函数G1(s)=num1/den1,G2(s)=num2/den2M=1.096;m=0.109;b=0.1; I=0.0034;g=9.8;l=0.25;q=(M+m)*(I+m*l^2)-(m*l)^2;num1=[m*l/q00];den1=[1b*(I+m*l^2)/q-(M+m)*m*g*l/q-b*m*g*l/q0];num2=[-(I+m*l^2)/q0m*g*l/q];den2=den1;%输入控制器PID数学模型Gc(s)=numPID/denPIDKp=150;Ki=50;Kd=50;numPID=[KdKpKi];denPID=[10];%计算闭环系统传递函数G(s)=num/den%多项式相乘num=conv(num2,denPID);%多项式相加den=polyadd(conv(denPID,den2),conv(numPID,num1));%求闭环系统极点[r,p,k]=residue(num,den);%显示闭环系统极点s=p%求取多项式传函的脉冲响应t=0:0.005:5;impulse(num,den,t)%显示范围:横坐标0-5,纵坐标0-10,此条语句参数可根据仿真输出曲线调整

axis([05-0.10.5])

grid此时系统取Kp=150,Ki=50,Kd=50,阶跃响应仿真曲线如下图所示:s=-115.0953-2.4030-0.417700图3-8,小车位置仿真由仿真结果可以看出,当摆杆角度处在很好的闭环控制下时,小车位置虽然处在失控状态,但是上升速度不快。四、倒立摆系统的最优控制算法设计设计目的与规定现代控制理论的最突出特点就是将控制对象用状态空间表达式的形式表达出来,这样便于对多输入多输出系统进行分析和设计。线性二次型最优控制算法()是现代控制理论中一种重要的、基本的方法,算法的目的是在一定的性能指标下,使系统的控制效果最佳,即运用最少的控制能量,来达成最小的状态误差。本章重要运用最优控制算法实现对一阶倒立摆系统的摆杆角度和小车位置的同时控制。

设计目的:学习如何使用状态空间法设计系统的控制算法。设计规定:用状态空间法设计控制器,使得当在小车上施加0.2N的阶跃信号时,闭环系统的响应指标为:(1)摆杆角度和小车位移的稳定期间小于5秒(2)的上升时间小于1秒(3)的超调量小于20度(0.35弧度)(4)稳态误差小于2%。

最优控制器的设计在PID调节中,我们的输入是脉冲量,并且在设计控制器时,只对摆杆角度进行控制,而不考虑小车的位移。然而,对一个倒立摆系统来说,把它作为单输出系统是不符合实际的,假如把系统当作多输出系统的话,用状态空间法分析要相对简朴一些,在这一章我们将设计一个对摆杆位置和小车位移都进行控制的控制器。系统状态方程为在倒立摆相关参数为: 小车质量 1.096Kg 摆杆质量 0.2109Kg 小车摩擦系数 0.1N/m/sec摆杆转动轴心到杆质心的长度0.25m摆杆惯量 0.0034kg*m*m采样时间 0.005秒的条件下,状态方程系数矩阵如下:;;;最优控制的前提条件是系统是能控的,下面来判断一下系统的能控能观性。Matlab仿真程序如下:A=[0100;0-(I+m*L^2)*b/p(m^2*g*L^2)/p0;0001;0-(m*L*b)/pm*g*L*(m+M)/p0]B=[0;(I+m*L^2)/p;0;(m*L)/p]C=[1000;0010]D=[0;0]Qc=ctrb(A,B);//判断能控性K=rank(Qc)Qo=obsv(A,C);//判断能观性I=rank(Qo)Matlab仿真结果为:K=4I=4即:系统的能控矩阵的秩。系统的能观矩阵的秩。故系统是能控能观的。因此可以给系统加上最优控制器使得系统闭环稳定,且满足暂态性能指标。在运用线性二次型最优控制算法进行控制器设计时,重要的目的就是获得反馈向量的值。由上一小节的推导知道,设计系统状态反馈控制器时,一个关键的问题就是二次型性能指标泛函中加权矩阵和的选取。为了使问题简化及加权矩阵具有比较明确的物理意义,我们将取为对角阵。假设;这样得到的性能指标泛函为 由上式可以看出,是对的平方的加权,的相对增长就意味着对的规定相对其它状态变量严格,在性能指标中的比重大,的偏差状态相对减小。是对控制量的平方加权,当相对较大时,意味着控制费用增长,使得控制能量较小,反馈减弱,而取值较小时,系统控制费用减小,反馈增长,系统动态响应迅速。考虑到一阶倒立摆系统在运营过程中,重要的被控量为系统的输出量和,因此在选取加权对角阵的各元素值时,由于代表小车位置的权重,而是摆杆角度的权重,所以只选取、,而。

选取和时需要注意的几个方面:(1)由于我们采用的系统模型是线性化的结果,为使系统个状态量可以在线性范围工作,规定各状态量不应过大。(2)闭环系统最佳能有一对共轭复数极点,这样有助于克服系统的非线性摩擦,但系统主导极点的模不应太大以免系统频带过宽,使得系统对噪声太敏感,以致系统不能正常工作。(3)加权矩阵的减小,会导致大的控制能量,应注意控制的大小,不要超过系统执行机构的能力,使得放大器处在饱和状态。控制系统如下图所示,图中R是施加在小车上的阶跃输入,四个状态量、、和分别代表小车位移、小车速度、摆杆位置和摆杆角速度,输出涉及小车位置和摆杆角度。我们要设计一个控制器,使得当给系统施加一个阶跃输入时,摆杆会摆动,然后仍然回到垂直位置,小车到达新的命令位置。系统仿真M=0.5; m=0.2; b=0.1; I=0.006; g=9.8; l=0.3;p=I*(M+m)+M*m*l^2;A=[010

温馨提示

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

评论

0/150

提交评论