HHaarrbbiinnIInnssttiittuutteeooffTTeecchhnnoollooggyy课课程程设设计计说说明明书书((论论文文))课程名称:控制系统设计课程设计设计题目:直线一级倒立摆控制器设计院系:航天学院控制科学与工程系班级:设计者:学号:指导教师:罗晶设计时间:2012.8.27——2012.9.9哈尔滨工业大学教务处哈尔滨工业大学课程设计任务书姓名:张盛博院(系):航天学院控制科学与工程系专业:探测制导与控制技术班号:0904201任务起至日期:2012年8月27日至2012年9月9日课程设计题目:直线一级倒立摆控制器设计已知技术参数和设计要求:本课程设计的被控对象采用固高公司的直线一级倒立摆系统GIP-100-L。系统内部各相关参数为:M小车质量0.5Kg;m摆杆质量0.2Kg;b小车摩擦系数0.1N/m/sec;l摆杆转动轴心到杆质心的长度0.3m;I摆杆惯量0.006kg*m*m;T采样时间0.005秒。设计要求:1.推导出系统的传递函数和状态空间方程。用Matlab进行阶跃输入仿真,验证系统的稳定性。2.设计PID控制器,使得当在小车上施加0.1N的脉冲信号时,闭环系统的响应指标为:(1)稳定时间小于5秒;(2)稳态时摆杆与垂直方向的夹角变化小于0.1弧度。3.设计状态空间极点配置控制器,使得当在小车上施加0.2m的阶跃信号时,闭环系统的响应指标为:(1)摆杆角度和小车位移x的稳定时间小于3秒(2)x的上升时间小于1秒(3)的超调量小于20度(0.35弧度)(4)稳态误差小于2%。工作量:1.建立直线一级倒立摆的线性化数学模型;2.倒立摆系统的PID控制器设计、MATLAB仿真及实物调试;3.倒立摆系统的极点配置控制器设计、MATLAB仿真及实物调试。工作计划安排:第3周(1)建立直线一级倒立摆的线性化数学模型;(2)倒立摆系统的PID控制器设计、MATLAB仿真;(3)倒立摆系统的极点配置控制器设计、MATLAB仿真。第4周(1)实物调试;(2)撰写课程设计论文。同组设计者及分工:各项工作独立完成。指导教师签字___________________年月日教研室主任意见:教研室主任签字___________________年月日*注:此任务书由课程设计指导教师填写。哈尔滨工业大学课程设计说明书(论文)一、直线一级倒立摆数学模型的推导及建立系统建模可以分为两种:机理建模和实验建模。实验建模就是通过在研究对象上加上一系列的研究者事先确定的输入信号,激励研究对象并通过传感器检测其可观测的输出,应用数学手段建立起系统的输入-输出关系。这里面包括输入信号的设计选取,输出信号的精确检测,数学算法的研究等等内容。机理建模就是在了解研究对象的运动规律基础上,通过物理、化学的知识和数学手段建立起系统内部的输入-状态关系。对于倒立摆系统,由于其本身是自不稳定的系统,实验建模存在一定的困难。但是经过小心的假设忽略掉一些次要的因素后,倒立摆系统就是一个典型的运动的刚体系统,可以在惯性坐标系内应用经典力学理论建立系统的动力学方程。下面我们采用其中的牛顿-欧拉方法建立直线型一级倒立摆系统的数学模型。1.1、微分方程的推导在忽略了空气阻力,各种摩擦之后,可将直线一级倒立摆系统抽象成小车和匀质杆组成的系统.下图是系统中小车和摆杆的受力分析图。其中,N和P为小车与摆杆水平和垂直方向的分量。MPNFbpmgNθIx图1(a)小车隔离受力图(b)摆杆隔离受力图本系统相关参数定义如下:M:小车质量m:摆杆质量b:小车摩擦系数l:摆杆转动轴心到杆质心的长度I:摆杆惯量F:加在小车上的力x:小车位置φ:摆杆与垂直向上方向的夹角θ:摆杆与垂直向下方向的夹角(考虑到摆杆初始位置为竖直向下)注意:在实际倒立摆系统中检测和执行装置的正负方向已经完全确定,因而矢量方向定义如图所示,图示方向为矢量正方向。分析小车水平方向所受的合力,可以得到以下方程:MxFbxN由摆杆水平方向的受力进行分析可以得到下面等式:22sindNmxldt即2cossinNmxmlml把这个等式代入上式中,就得到系统的第一个运动方程:2cossinMmxbxmlmlF为了推出系统的第二个运动方程,我们对摆杆垂直方向上的合力进行分析,可以得到下面方程:哈尔滨工业大学课程设计说明书(论文)22cosdPmgmldt即2sincosPmgmlml力矩平衡方程如下:sincosPlNlI注意:此方程中力矩的方向,由于,coscos,sinsin,故等式前面有负号。合并这两个方程,约去P和N,得到第二个运动方程:22sincosImlmglmlx1、微分方程模型设(是摆杆与垂直向上方向之间的夹角),假设与1(单位是弧度)相比很小,即,则可以进行近似处理:2cos1,sin,()0ddt。用u来代表被控对象的输入力F,线性化后两个运动方程如下:2MmxbxmluImlmglmlx2、传递函数对以上微分方程组进行拉普拉斯变换,得到22222()()()()()()()MmXssbXsmlssUsImlssmglsmlXss注意:推导传递函数时假设初始条件为0。由于输出为角度为,求解方程组上述方程组的第一个方程,可以得到22()()ImlgXssmls或者222()()smlsXsImlsmgl(1-12)如果令x,则有哈尔滨工业大学课程设计说明书(论文)22()()smlVsImlsmgl(1-13)把上式代入10式,则有:22222()()()()ImlImlggMmssbssmlssUsmlsmls(1-14)整理:212432()()()mlssqGsUsbImlMmmglbmglssssqqq(1-15)其中22qMmImlml3、状态空间数学模型XAXBuYCXDu,可得状态方程2222222222xxImlbImlmglxxuIMmMmlIMmMmlIMmMmlmglMmmlbmlxuIMmMmlIMmMmlIMmMml哈尔滨工业大学课程设计说明书(论文)22222222220100000000100010000010xxImlbImlmglxxIMmMmlIMmMmlIMmMmlumlbmglMmmlIMmMmlIMmMmlIMmMmlxy00xxu二、直线一级倒立摆PID控制器设计2.1、PID控制器各个校正环节对系统的影响简单来说,PID控制器各个校正环节的作用如下:(1)比例环节:成比例的反应控制系统的偏差信号e(t),偏差一旦产生,控制器立即产生控制作用,以减少偏差。(2)积分环节:主要用于消除稳态误差,提高系统的型别。积分作用的强弱取决于积分时间常数T1,T1越大,积分作用越弱,反之则越强。(3)微分环节:反映偏差信号的变化趋势(变化速率),并能在偏差信号值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减小调节时间。2.2、PID控制器的设计及MATLAB仿真首先,对于倒立摆系统输出量为摆杆的角度,它的平衡位置为垂直向上。系构框图如下:图3直线一级倒立摆PID控制系统框图中KD(s)是控制器传递函数,G(s)是被控对象传递函数。考虑到输入r(s)=0,结构图可以很容易的变换成图4直线一级倒立摆PID控制简化系统框图该系统的输出为哈尔滨工业大学课程设计说明书(论文))())(())(()()())(())((1)()()(1)()(sFnumnumPIDdendenPIDdenPIDnumsFdendenPIDnumnumPIDdennumsFsGsKDsGsy其中,num——被控对象传递函数的分子项den——被控对象传递函数的分母项numPID——PID控制器传递函数的分子项denPID——PID控制器传递函数的分母项被控对象的传递函数是212432()()()mlssnumqGsUsdenbImlMmmglbmglssssqqq其中:22qMmImlmlPID控制器的传递函数为denPIDnumPIDsKsKsKsKKsKsKDIPDIPD2)(需仔细调节PID控制器的参数,以得到满意的控制效果。前面的讨论只考虑了摆杆角度,那么,在我们施加控制的过程中,小车位置如何变化呢?考虑小车位置,得到改进的系统框图如下:图5直线一级倒立摆PID控制改进系统框图其中,是摆杆传递函数,是小车传递函数。由于输入信号r(s)=0,所以可以把结构图转换成:图5直线一级倒立摆PID控制简化后改进系统框图其中,反馈环代表我们前面设计的控制器。哈尔滨工业大学课程设计说明书(论文)小车位置输出为:)())()(())()(())()(()())(())((1)()()(1)()(212112112212sFdennumnumPIDdendendenPIDdendenPIDnumsFdendenPIDnumnumPIDdennumsFsGsKDsGsX其中,num1,den1,num2,den2分别代表被控对象1和被控对象2传递函数的分子和分母。numPID和denPID代表PID控制器传递函数的分子和分母。下面我们来求G2(s),根据前面的推导:22()()ImlgXssmls可以推出小车位置的传递函数为:2222432()()()ImlmglsXsqqGsUsbImlMmmglbmglssssqqq其中:22qMmImlml可以看出,den1=den2=den,小车的传递函数可以简化成:)())(())(())(()(12sFnumnumPIDkdendenPIDdenPIDnumsX2.3、PID控制器参数的调节按题目要求,施加0.1N的脉冲信号,观察指标。脉冲信号仿真源程序为:M=0.5;m=0.2;b=0.1;I=0.006;g=9.8;l=0.3;num1=[m*l];den1=[(I+m*l^2)0-m*g*l];Kp=1;Ki=0;Kd=0;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(0.1*num,den,t)grid当系统加入PID控制器后的方框图为:直线一级倒立摆PID控制MATLAB仿真模型由所查阅资料,调节Kp,会影响ess和振荡次数以及ts;Kp太大不稳定,Kp可以选择负数。调节Ki,会影响稳定性,ess。调节Kd,会影响p,ts;由于Kd的特殊性,必须选择合适的Kd才能使p与ts均位于合适的范围。具体的调试过程:先调节Kp使系统稳定;再调节Kd使系统仅有一次振荡;最后调节Ki使ess为0。令Kp=130、Ki=130、Kd=10