0 引言
倒立摆是日常生活中许多重心在上、支点在下的控制问题的抽象模型,本身是一种自然不稳定体,它在控制过程中能有效地反映控制中许多抽象而关键的问题,如系统的非线性、可控性、鲁棒性等问题。对倒立摆系统的控制就是使小车以及摆杆尽快地达到预期的平衡位置,而且还要使它们不会有太强的振荡幅度、速度以及角速度,当倒立摆系统达到期望位置后,系统能克服一定范围的扰动而保持平衡。作为一种控制装置,它具有形象直观、结构简单、便于模拟实现多种不同控制方法的特点,作为一个被控对象它是一个高阶次、非线性、多变量、强耦合、不稳定的快速系统,只有采取行之有效的方法才能使它的稳定效果明了,因此对倒立摆的研究也成为控制理论中经久不衰的研究课题。
1 一级倒立摆系统的数学模型
对于倒立摆系统来说,如果忽略了空气阻力和各种摩擦之后,可将直线一级倒立摆系统抽象成沿着光滑导轨运动的小车和通过轴承连接的匀质摆杆组成,如图1所示。其中,小车的质量M=1.32 kg,摆杆质量m=0.07 kg,摆杆质心到转动轴心距离l=0.2 m,摆杆与垂直向下方向的夹角为θ,小车滑动摩擦系数,fc=0.1。
倒立摆控制系统数学模型的建立方法一般有利用牛顿力学的分析方法和分析力学中的拉格朗日方程建模两种。本文采用的是拉格朗日方程建模。
一级倒立摆系统的拉格朗日方程应为:
式中:L是拉格朗日算子;V是系统动能;G是系统势能。
式中:D是系统耗散能;fi为系统在第i个广义坐标上的外力。
一级倒立摆系统的总动能为:
一级倒立摆系统有4个状态变量,分别是,根据式(7)写出系统状态方程,并在平衡点处进行线性化处理,得到系统的状态空间模型如下:
2 倒立摆性能分析
系统的能控性是控制器设计的前提,所以在设计前对系统进行能控性分析,根据能控性矩阵T0=[B,AB,A2B,A3B],利用Matlab中的rank命令,可以得出rank(T0)=4。由此可知,系统是完全可控的,因此可以对系统进行控制器的设计,使系统稳定。
3LQR控制器的设计
3.1 LQR控制器原理
线性二次型调节器的控制对象是线性系统,这个线性系统必须是状态空间的形式,即:,Y=Cx+Du。通过确定最佳控制量U*=R-1BTPX=-KX的矩阵K,使性能指标的值极小。其中,加权矩阵Q和R是用来平衡状态变量和输入变量的权重;P是Riccati方程的解。这时求解Riccati代数方程:
就可获得P值以及最优反馈增益矩阵K值:
LQR用于单级摆的原理图如图2所示。
3.2 加权矩阵Q和R的选择
在选取Q和R时,主要从以下几方面考虑:
(1)Q是正定或半正定矩阵,R是正定矩阵。
(2)Q阵中对角线上的元素与状态变量一一对应,数值越大,则表示该状态变量对系统的影响越显著。
(3)加权矩阵R不要过小,否则会导致控制量的增大。控制量太大会超过系统执行机构的能力,R阵也不要太大,否则控制作用太小会影响控制性能。
综合以上考虑,取Q=diag([100,100,100,100]),R=1,利用Matlab提供的LQR函数,可得控制器的增益矩阵:
K=[-10.000 0 -24.140 8 250.036 0 158.553 3]
3.3 利用遗传算法优化Q阵
遗传算法是一种基于生物界中的自然选择原理和自然遗传机制的随机搜索算法,它模拟了生物界中的生命进化机制,并用在人工系统中实现特定目标的优化。
采用遗传算法优化加权阵Q的具体步骤如下:
(1)选择编码策略,把参数转换成染色体结构空间。
(2)确定解码方法。
(3)确定优化目标函数的类型及数学描述形式,在LQR最优控制中取目标函数J,J=trace(P)。
(4)设计遗传算子。
(5)确定遗传策略。设群体大小为80,最大迭代次数为200,交叉概率选为0.9,变异概率选为0.01,并随机产生初始群体。
(6)计算群体中的个体或染色体解码后的适应值。在本设计中将适应值取为目标函数值的倒数,即f=1/J。
(7)进行遗传算法搜索过程,即采用随机采样的方法选择个体,通过交叉和变异产生新个体,再计算新个体的目标函数值J’。
(8)判断群体性能是否满足指标或者是否完成迭代次数,若不满足则重复步骤(7)。
通过上述算法即可确定使目标函数值最小加权矩阵Q中待优化元素的值,从而确定反馈控制规律的向量K。
4 仿真结果及分析
取Q=diag([100,100,100,100]),R=1时,得到的一级倒立摆仿真波形如图3所示。由图可见,小车经过5.2 s达到平衡,而摆角经过6.5 s达到平衡。对Q阵优化后系统响应超调量减少,响应速度加快,调节时间减少,系统的静态特性和动态特性都得到改善,如图4所示。
5 结语
本文利用拉格朗日方程建立了直线一级倒立摆控制系统的数学模型,在此基础上分析了该系统的性能,并利用LQR控制器进行控制。结果表明,LQR控制器对该系统具有良好的控制作用。