一、倒立摆模型的研究意义倒立摆控制系统是一个复杂的、不稳定的、非线性系统,是进行控制理论教学及开展各种控制实验的理想实验平台。
对倒立摆系统的研究能有效的反映控制中的许多典型问题:如非线性问题、鲁棒性问题、镇定问题、随动问题以及跟踪问题等。
通过对倒立摆的控制,用来检验新的控制方法是否有较强的处理非线性和不稳定性问题的能力。
同时,其控制方法在军工、航天、机器人和一般工业过程领域中都有着广泛的用途,如机器人行走过程中的平衡控制、火箭发射中的垂直度控制和卫星飞行中的姿态控制等。
故其研究意义广泛。
一、倒立摆的数学模型质量为m的小球固结于长度为L的细杆(可忽略杆的质量)上,细杆又和质量为M的小车铰接相连。
由经验知:通过控制施加在小车上的力F(包括大小和方向)能够使细杆处于θ=0的稳定倒立状态。
在忽略其他零件的质量以及各种摩擦和阻尼的条件下,推导小车倒立摆系统的数学模型。
倒立摆模型如图2-1所示。
图2-2 单机倒立摆模型图小车由电机通过同步带驱动在滑杆上来回运动,保持摆杆平衡。
电机编码器和角编码器向运动卡反馈小车和摆杆位置(线位移和角位移)。
导轨截面成H型,小车在轨道上可以自由滑动,其在轨道上的有效运行长度为1米。
轨道两端装有电气限位开关,以防止因意外失控而撞坏机构。
以摆角θ、角速度θ’、小车位移x、加速度x’为系统状态变量,Y为输出,F为输入以摆角θ、角速度θ’、小车位移x、加速度x’为系统状态变量,Y为输出,F为输入。
如图所示,设细杆摆沿顺时针方向转动为正方向,水平向右方向为水平方向上的正方向。
当细杆摆顺时针往右运动时水平方向施加的力应该为水平向右。
现对小车和细杆摆分别进行隔离受力分析:(1)对小车有: F-F’sinθ=Mx’’(a)(2)对小球有:水平方向上运动为 x+lsinθ故水平方向受力为 F’sinθ= m(x+lsinθ)’’=m(x’+lcosθθ’)’= mx’’+mlcosθθ’’-mlsinθ(θ’)^2 (b)由(a)、(b)两式得 F= (M+m)x’’ +mlcosθθ’’-mlsinθ(θ’)^2 <1>小球垂直方向上位移为 lcosθ故受力为 F’cosθ -mg=m(lcosθ)’’=-mlθ’’sinθ-mlcosθ(θ’)^2即 F’cosθ=mg-mlθ’’sinθ-mlcosθ(θ’)^2 (c)由(b)、(c)两式得cosθx’’ =gsinθ- lθ’’ <2>故可得以下运动方程组:F= (M+m)x’’ +mlcosθθ’’-mlsinθ(θ’)^2cosθx’’ =gsinθ- lθ’’以上方程组为非线性方程组,故需做如下线性化处理:32 sin,cos13!2!θθθθθ≈-≈-当θ很小时,由cosθ、sinθ的幂级数展开式可知,忽略高次项后,可得cosθ≈1,sinθ≈θ,θ’’≈0故线性化后运动方程组简化为F= (M+m)x’’ +mlθ’’x’’ =gθ- lθ’’下面进行系统状态空间方程的求解:以摆角θ、角速度θ’、小车位移x 、加速度x ’为系统状态变量,Y 为输出,F 为输入即X=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡4321x x x x =⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡x'x 'θθ Y=⎥⎦⎤⎢⎣⎡x θ=⎥⎦⎤⎢⎣⎡31x x由线性化后运动方程组得 x1’=θ’=x2 x2’=''θ=()Mlg m M +x1-Ml1 F X3’ =x ’=x4 x4’=x ’’=-M mg x1+M1 F 故空间状态方程如下:X ’=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡'4'3'2'1x x x x =()⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡-+0010000000010Mm gMl g m M ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡4321x x x x + ⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎣⎡-M Ml 1010 FY= ⎥⎦⎤⎢⎣⎡31x x =⎥⎦⎤⎢⎣⎡01000001 ⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡4321x x x x + 0⨯F二、 立题方案倒立摆系统是一个比较复杂的不稳定、多变量、带有非线性和强耦合特性的高阶机械系统,它的稳定控制是控制理论应用的一个典型范例。
早在上个世纪五十年代,国外就丌始了倒立摆的研究,我国学者也从80年代初开始倒立摆系统的研究。
1966年Schaefer 和cannon 就应用bang-bang 控制理论,将一个曲轴稳定于倒置位置,实现了单级倒立摆的稳定控制。
在60年代后期,作为一个典型的不稳定、严重非线性证例,倒立摆的概念被提出,并将其用于检验控制方法对不稳定、非线性和快速性系统的控制能力,受到世界各国许多科学家的重视,寻找不同的控制方法实现对倒立摆的控制。
目前,倒立摆的控制方法可分如下几类: (1) 线性理论控制方法将倒立摆系统的非线性模型进行近似线性化处理获得系统在平衡点附近的线性化模型,然后再利用各种线性系统控制器设计方法得到期望的控制器。
这类方法对一、二级的倒立摆(线性化后误差较小、模型较简单控制时,可以解决常规倒立摆的稳定控制问题。
但对于像非线性较强、模型较复杂的多变量系统(三、四级以及多级倒立摆)线性系统设计方法的局限性就十分明显。
(2) 预测控制和变结构控制方法由于线性控制理论与倒立摆系统多变量、非线性之间的矛盾使人们意识到针对多变量、非线性对象,采用具有非线性特性的多变量控制解决多变量、非线性系统的必由之路。
人们先后丌展了预测控制、变结构控制和自适应控制的研究。
预测控制是一种优化控制方法,强调实模型的功能而不是结构。
变结构控制是一种非连续控制,可将控制对象从任意位置控制到滑动曲面上,仍然保持系统的稳定性和鲁棒性,但是系统存在颤抖。
预测控制、变结构控制和自适应控制在理论上有较好的控制效果,但由于控制方法复杂,成本也高,不易在快速变化的系统上实时实现。
(3) 智能控制方法7在倒立摆系统中用到的智能控制方法主要有神经网络控制、模糊控制、仿人智能控制、拟人智能控制和云模型控制等。
糊控制理论产生于二十世纪六十年代,是美国加利福尼亚U.C.Berkkley学校的自动控制理论专家L.A.扎德(Zadeh)教授最先提出的,主要是为了克服过程本身的不确定性、不精确性,因此在处理复杂系统的大时滞、时变及非线性方面显示了极大的优越性。
由于倒立摆的非线性、多变量、强耦合等特性,本文选择模糊控制器控制。
将E和EC的控制都分别:“负大”(NB) 、“负中”(NM) 、“负小”(NS) 、“零”(ZO) 、“正小”(PS) 、“正中”(PM) 和“正大”(PB) 这7 个语言变量值来描述,即{NB,NM,NS,ZO,PS,PM,PB}模糊集, 其中NB=负方向大的偏差(Negative Big)NM=负方向中的偏差(Negative Medium)NS=负方向小的偏差(Negative Small)ZO=近于零的偏差(Zero)PS=正方向小的偏差(Positive Small)PM=正方向中的偏差(Positive Medium)PB=正方向大的偏差(Positive Big)控制规则是模糊控制器的核心,规则的正确与否直接影响控制器的性能,而规则数目的多也是一个重要因素,通常用if….then的型式来表示。
在这次课程设计中,我们把7*7=49条模糊规则全部写出,有:1.If E is NB and EC is NB then u is PB2.If E is NB and EC ix NM then u isPB3.If E is NB and EC is NS then u is PM49.If E is PB andEC is PB then u is NB…………要是列表则有如下模糊控制规则表:NB在模糊集合论域的选择上,这里取E的论域为对称的[-6 6],EC的论域也为对称的[-6 6], 输出u 的论域为对的[-6 6]。
在输入端或者输出端, 论域与实际控制量的匹配都以通过添加增益环节来进行调节。
只要正确地调节增益的大小, 便可以达到良好的匹配。
在隶属曲线的选择上, 3个模糊控制量都使用Matlab模糊工具箱中的默认三角型曲线, 7个三角形在论域上平均分配,解决模糊的方法使用重心法。
设置规则时的界面如下图(a)、(b) 、(c) 、(d) 、(e) 、(f)。
图(a)控制器输入E 的隶属度函数图像图(b) 控制器输入EC 的隶属度函数图像图(c)控制器输出变量u的隶属度函数图像如此,一个二维的模糊控制器就建立好了,截面图如下图所示:图(d) 两输入一输出系统的图形界面图(e)隶属函数编辑器界面图(f)模糊规则编辑器界面在View菜单下执行View—Rules,激活模糊规则浏览器,观察规则推理是否正确。
模糊规则浏览器如图12所示。
设有两个输入变量、一个输出变量,输入的论域均为[-6 6],输出变量的论域为[-6 6],每个变量都有七个语言值,即在模糊集合论域上有七个三角形隶属函数,那么最多有49条规则。
调整输入值的方法有两种,一种是用鼠标直接拖拽红线到指定的位置,另一种是在input的输入框中输入数字。
如图12所示,输入[0 1] ,可以发现推理出来的结果为-1。
图6 模糊规则浏览器图形界面三、建模仿真用Simulink来搭建的仿真框图如图4-1所示。
通过模糊控制器模块,可以和包含模糊控制器的fis文件联系起来,还可以随时改变输入输出论域,隶属度函数以及模糊规则,方便仿真和调试。
图4-1仿真框图五、仿真结果及分析仿真结果如下图5.1和图5.2图5.1图5.2结果分析:由于所搭环境与真实的有所差别,得到的仿真结果虽与理想波形不符但总体收敛于0古系统较为稳定。
六、实验感受1、由实验中可知,倒立摆系统是一个非线性的较复杂的不稳定系统,故要满足稳定性要求,就得对系统进行线性化近似和稳定控制。
本实验中,在做了线性化和加进控制调整后,系统达到了良好的稳定状态。
当然,这只是一个理想模型,在实际应用中情况会更加复杂,稳定性也更难获得。
不过,通过实验,我们至少掌握了简单控制的基本方法,并得到了预期的实验效果。
2、通过本实验,掌握了倒立摆仿真的整个过程,熟悉了MATLAB的仿真软件Simulink的使用,也对系统控制有了较好的理解。
3、此外,通过仿真,再次认识到了自动控制在改善系统性能方面的重要性,并激发了良好的关于系统控制方面的学习兴趣,在此基础上,相信对以后的进一步研究将会有较大帮助。