摘要
针对现有两轮平衡机器人线性二次型调节器(LQR)的权重系数需要手动选取的缺陷,提出了一种利用改进的食肉植物算法(ICPA)优化LQR权重系数的方法,实现了两轮平衡机器人的自稳定与高精度轨迹跟踪。首先,利用拉格朗日方程法构建了两轮平衡机器人系统动力学方程,采用LQR优化PID控制策略保证其最优控制力;其次,在食肉植物算法(CPA)成长过程中引入自适应捕捉系数,平衡食肉植物和猎物的成长关系,提升了前期全局探索和后期局部寻优能力;然后,在CPA繁殖过程中设计干扰因子,扩大搜索空间,进一步提升全局寻优能力;最后,基于EA代价函数,利用ICPA 对LQR控制器的权重系数进行寻优,并在MATLAB/Simulink环境中建立两轮平衡机器人控制策略模型。实验结果表明,提出的ICPA-LQR优化的PID控制器,相较于食肉植物算法、麻雀搜索算法、飞蛾扑火算法和改进粒子群算法优化的控制器,动态响应速度更快、抗干扰能力更强、整体性能更好。在扰动情况下,控制两轮平衡机器人跟踪复杂轨迹时,倾角动态偏差小于0.05 rad、横纵坐标的偏差均小于0.2 m、转向角偏差小于0.2 rad、车轮位置角偏差小于3 rad,可以在保持动态平衡的前提下精确跟踪给定的参考轨迹,具有较强的泛化能力。
Abstract
Aiming at the defects that the weight coefficients of linear quadratic regulator (LQR) of two-wheeled balance robot needs to be manually selected, an improved carnivorous plant algorithm (ICPA) is used to optimize the LQR weight coefficients, which realizes the self-stability and high-precision trajectory tracking of two-wheeled balance robot. Firstly, the dynamic equations of the balance robot system is constructed by Lagrange equation method, and the LQR optimization PID control strategy is used to ensure the optimal control force. Secondly, an adaptive capture coefficient is proposed in the growth process of carnivorous plant algorithm, which balances the growth of carnivorous plants and preys, and improves the ability of global exploration in the early stage and local optimization in the later stage. Then, the interference factor is designed in the reproduction process of carnivorous plant algorithm to expand the search space and further improve the global optimization ability. Finally, based on EA cost function, the weight coefficients of LQR controller is optimized by ICPA, and the control strategy model of two-wheeled balanced robot is established in MATLAB/Simulink environment. The experimental results show that the PID controller optimized by the proposed ICPA-LQR optimized PID controller has faster dynamic response speed, stronger anti-interference ability and better overall performance than the control effect optimized by the carnivorous plant algorithm, sparrow search algorithm, moth fire extinguishing algorithm and improved particle swarm optimization algorithm. Under disturbance, the dynamic deviation of the control two-wheeled balance robot tracking complex trajectory dip angle is less than 0.05 rad, the deviations of the horizontal and vertical coordinates is less than 0.2 m, the deviation of the steering angle is less than 0.2 rad, and the deviation of the wheel position angle is less than 3 rad, which can accurately track the given reference trajectory under the premise of maintaining dynamic balance, behaving strong generalization ability.
Keywords
两轮平衡机器人以占地面积小、空间结构简单紧凑、运动灵活和适应性强等优势,在军事侦察、空间探测和日常交通等领域具有较高的应用价值[1-2],同时具有多变量、非线性、参数不稳定、欠驱动、高阶次、强耦合等特性。自平衡能力是两轮平衡机器人运动的基础,精准的轨迹跟踪能力是实现移动功能的关键。受制于非完整约束,设计性能优良的轨迹跟踪控制器难度较大[3-5]。
目前,国内外学者对于两轮平衡机器人系统的研究主要集中在平衡和运动控制策略的设计上,提出了模糊控制[6]、滑模控制[7]和非线性优化控制[8]等多种控制策略。本文结合PID算法[9]和线性二次型调节器(LQR)[10-11]的优势,利用LQR算法调试PID参数,以适用于各种工程应用场景。LQR控制策略的控制效果取决于权重系数的选择,当前主流方法仍是通过仿真试错法调试权重系数。而随着群体智能算法的发展,许多研究人员开始将其应用于LQR控制性能指标权重系数的设计中,成为目前的研究热点。文献[12]利用改进的粒子群算法整定二级倒立摆的LQR惯性矩阵参数,提高了控制的稳定性和快速性;文献[13]和[14]分别利用改进人工蜂群算法和自适应多种群遗传算法优化了主动悬架LQR的权重系数,有效改善了车辆的乘坐舒适性和行驶平顺性;文献[15]利用人工鱼群算法解决了随机结构AMD控制系统线性二次最优控制的权参数选取问题,增强了控制器的鲁棒性;文献[16]通过遗传算法优化了LQR,提升了系统稳态特性,缩短了调节时间。以上群智能算法优化的控制策略在各模型系统的响应上均表现出较好的效果,证明了其在LQR权重系数寻优方面的优越性,但搜索效率和精度仍有进一步提升空间。
食肉植物算法(carnivorous plant algorithm,CPA)[17]是Ong K M于2020年提出的一种新型群智能算法,模拟了食肉植物在恶劣环境中的生存机制(如捕食和繁殖行为等),特点是控制参数少、适应性强、模型易修改、鲁棒性较强且易于实现。CPA本身还存在易陷入局部最优、种群多样性快速下降等问题,需要进一步改进。因此,本文利用CPA在参数寻优中的优势,引入了自适应捕捉系数以及干扰因子,提出改进食肉植物算法(improved carnivorous plant algorithm,ICPA),并通过ICPA优化LQR的权重系数,实现更优控制效果。
1 两轮平衡机器人系统模型和控制器的设计
1.1 两轮平衡机器人的动力学模型
两轮平衡机器人主要由车轮和车体组成,可通过调整速度保持车体平衡,还可通过调节左右轮转速实现转弯,完成复杂的轨迹跟踪。
建立如图1所示的简化运动模型,包含世界坐标系O-X-Y-Z、轮轴系O-Xζ-Yζ-Zζ、车体系O-Xθ-Yθ-Zθ,其中世界坐标系为参考坐标系。图中,θ为车体倾斜角、ζ为小车位置角、τ为车体转向角、ζl和ζr分别为左右轮的位移角,u为控制输入,即左右轮电压。运动过程的平衡控制和轨迹跟踪控制可通过θ、ζ和τ来实现,其中,ζ=(ζl+ζr)/2;τ=R(ζr-ζl)/W为车体前行方向与X轴的夹角。
图1运动过程坐标变换及状态变量变化
Fig.1Coordinate transformation and variation of state variables in motion process
本文实验采用LEGO公司的NXTway-GS两轮平衡机器人[18],硬件参数见表1。
表1两轮平衡机器人硬件参数
Tab.1Two-wheeled balance robot hardware parameters
表1(续)
图1中由A点运动到B点,设左轮的位置为(xl,yl,zl),右轮的位置为(xr,yr,zr),轮轴中心的位置为(xm,ym,zm),车体重心的位置为(xb,yb,zb)。到达B点时,各参数的定义为
(1)
(2)
(3)
(4)
(5)
(6)
系统的平动动能为T1=0.5 MV2,转动动能为T2=0.5 Jω2,重力势能为U。
(7)
(8)
(9)
定义拉格朗日函数为
(10)
系统的广义坐标为ζ、θ和τ,故系统的拉格朗日方程为
(11)
由式(11)可得两轮平衡机器人的非线性模型为
(12)
(13)
(14)
公式(12)~(14)中的参数与表1对应,其中广义力Fζ、Fθ、Fτ由公式(15)~(17)定义。
广义力与左右轮电压ul、ur的关系为
(15)
(16)
(17)
式中:n为直流电机的传动比,在本实验中取值为1;α=nKt/Rm,β=nKtKb/Rm+fm。
1.2 控制系统的建立
车体在|θ|≤10°时,将系统方程在平衡点处线性化处理,利用,并忽略二次及以上部分,整理得
(18)
(19)
(20)
(21)
式中e为系统状态矩阵A中由模型物理参数确定的元素。两轮平衡机器人的运动模型可解耦为直行和转向两种模式,直行的状态变量和转向的状态变量,左右轮的输入为。本文联合控制直行和转向状态,故状态变量,可得如下状态方程:
(22)
式中:C为一个6×6的对角单位阵,D为6×2的零矩阵。
1.3 LQR-PID控制器设计
PID控制响应速度快、可靠性高,但对非线性、高阶次、强耦合系统的控制力不足;LQR控制是一种适用于多变量、线性和可线性化系统的算法,抗干扰能力强、稳态误差小,但存在动态响应慢以及权重系数选择困难的缺点。为确保建立的两轮平衡机器人模型具有最优控制力,需要联合LQR和PID控制策略。利用LQR优化PID控制的比例(P)积分(I)微分(D)参数,引入两轮平衡机器人状态变量的反馈,控制两轮平衡机器人的位置角、倾角和转向角。
为了消除稳态误差,使各指标达到最优状态,在状态设计中加入了ζ和τ的积分项。新的状态变量为
(23)
带入表1中的各参数,NXTway-GS两轮平衡机器人新的A和B矩阵为
(24)
(25)
LQR的Q阵和R阵系数的选取直接影响系统性能,而Q阵和R阵的选取一般无规律可循,通常采用仿真试错法设计。LQR的Q阵和R阵确定后,可通过Matlab中的lqr()函数计算K。引入ζ和τ的积分项,Q为8×8维对角阵、R为2×2维对角阵,共有十个参数。如果利采用试错法,不仅耗时且确定的参数精度误差较大。本文通过ICPA算法寻优LQR控制器的权重系数,规避人为因素的干扰,以确保控制器性能最优。
将上述通过ICPA优化LQR得到的K矩阵,转换为ζ、θ和τ状态变量的PID控制参数:K(1,1)、K(1,4)、K(1,7)为控制左车轮ζl的PID参数;K(2,1)、K(2,4)、K(2,7)为控制右车轮ζr的PID参数。同理可得倾斜角θ和旋转角τ的PID参数。
2 ICPA优化策略
2.1 搜索策略优化
近年来,群体智能算法成为学界的研究热点[19-20]。Ong K M在2020年提出了一种新型群智能算法,即CPA优化算法,优化过程包括种群初始化、分类分组、捕食和繁殖、适应度更新与重组。但CPA存在易陷入局部最优、种群多样性快速减少等问题,需要进一步改进。
2.1.1 自适应捕捉系数
迭代成长过程中,通过比较吸引率和随机数的大小判断猎物是否被食肉植物捕获。当吸引率高于一个随机生成的数值时,猎物被食肉植物捕获并消化,食肉植物的成长能发挥算法的局部开发能力;如果吸引率低于生成的随机值,猎物就会设法逃离陷阱,猎物的生长代表算法的全局搜索能力。在CPA中吸引率通常为固定参数,可能会导致算法早熟。为了平衡食肉植物和猎物的成长过程,提出了一种自适应捕捉系数,其表达式为
(26)
式中:wmax和wmin分别为捕捉系数的最大值和最小值;iter为当前迭代次数;itermax为最大迭代次数。
自适应捕捉系数w的变化见图2。
图2自适应捕捉系数变化曲线
Fig.2Variation curve of the adaptive capture coefficient
在算法的迭代前期,自适应捕捉系数较小,大概率保证猎物获得成长,扩大种群的多样性,促使算法向着全局最优收敛;随着迭代次数的增加,自适应捕捉系数非线性增大,当迭代到中后期时,保证食肉植物捕获猎物获得成长,在最优解附近进行局部开发,加快了收敛速度;迭代后期,自适应捕捉系数存在一定程度的非线性减小,大概率保证食肉植物获得成长的同时,也为猎物保留成长几率,进一步提升算法的收敛精度。
2.1.2 干扰因子
CPA的繁殖过程只允许第一级食肉植物繁殖,并只在第一级植物的引导下收敛,可以提高种群的收敛速度,但存在向局部最优解早熟收敛的可能。因此,在繁殖的过程中需要添加干扰。设计干扰因子的取值范围如图3蓝色区域所示,迭代前期,干扰因子取值范围较大,增强了种群的全局勘探能力,随着迭代次数的增加,干扰因子的取值范围逐渐缩小,加快收敛速度。其繁殖过程的公式可修正为
(27)
式中Repre_rate为繁殖率。
图3干扰因子
Fig.3Interference factor
获得新植物的适应度后,利用贪婪准则筛选出最优个体,作为繁殖过程的新食肉植物,既能保证种群多样性,又能有效提高迭代的收敛速度。
2.2 优化策略的测试
为验证算法性能,将ICPA与CPA、麻雀搜索算法(SSA)[21]、飞蛾扑火算法(MFO)[22]和改进粒子群算法(Improved PSO)在6种基准测试函数[23]上进行比较。其中,SSA具有较快的收敛速度,MFO具有优秀的寻优能力,Improved PSO相较于PSO具备更好的平衡全局和局部搜索能力。测试函数空间图和收敛曲线如图4所示。
图4测试函数收敛曲线
Fig.4Convergence curves of test functions
Sphere函数和Rosenbrock函数是最优值为0的单峰函数,常用来测试算法的收敛可行性。在单峰函数测试中,本文提出的 ICPA 性能仅次于SSA,并优于其他对比算法。因为SSA自身具有趋于0的优势,与其他3种算法相比,本文算法具有更快的收敛速度。其他4个函数是多峰函数,测试寻优性能过程中,ICPA 在迭代速度和收敛精度上均优于其他对比算法,效率更高。实验结果表明,自适应捕捉系数及干扰因子的引入,显著改善了CPA的收敛趋势和全局寻优能力,ICPA具有较强的泛化能力。
3 基于ICPA-LQR优化的PID控制算法设计
3.1 控制方案
利用LQR算法优化Kp、KI和Kd参数,并通过ICPA算法优化LQR权重系数,以确保控制器性能最优。基于ICPA-LQR优化PID控制两轮平衡机器人的控制方案如图5所示。
图5控制方案框图
Fig.5Block diagram of control scheme
3.2 优化变量
在两轮平衡机器人LQR控制器设计中,性能指标中的权重系数反映了系统各状态的重要程度,其设计直接影响控制器的性能。利用ICPA算法优化LQR的权重系数,本文涉及8个状态,2个输入变量,则Q=diag(q1,q2,q3,q4,q5,q6,q7,q8),R=diag(r1,r2)。因此,优化模型的设计变量为X=[q1,q2,q3,q4,q5,q6,q7,q8,r1,r2]T。
3.3 目标函数
利用ICPA算法优化后得到的元素计算LQR控制器增益K,利用K计算闭环系统的左右特征向量,一个特征值的左右特征向量夹角余弦为
(28)
式中W和V分别为左右特征向量的集合。
由于多输入多输出(MIMO)系统具有多个特征值,故对应多个特征向量,因此适应度函数为
(29)
式中θi为特征向量夹角。
极小化适应度函数EA可使左右特征向量趋于正交,进而引起闭环特征值的扰动,从而使闭环系统的极点有效分离,并向s平面的左半部分移动。随着ICPA的进一步迭代,算法收敛至某一解空间,该解空间对应的特征值集相对于前一次迭代更优,对扰动更不敏感,提高了系统的稳定性和鲁棒性。一旦满足迭代终止条件,算法停止,最优位置的植物给出代价函数的最小值,得到Q和R矩阵的最优值。
为比较不同控制器的性能,引入以下两个常用性能指标。
时间绝对误差积分(ITAE),定义为绝对误差与时间的乘积对时间的积分,其数学表达式为
(30)
式中ε为绝对误差。
误差平方积分(ISE),定义为误差平方对时间的积分,数学表达式为
(31)
3.4 ICPA-LQR优化的PID控制算法参数整定过程
ICPA-LQR优化两轮平衡机器人PID控制器参数的整定流程如图6所示。
图6ICPA-LQR-PID算法流程
Fig.6ICPA-LQR-PID algorithm process
4 仿真分析与应用
实验硬件平台为Intel Core i7-11800H 2.3 GHz CPU、RTX 3060 GPU、16 GB内存的计算机,计算软件平台为Matlab R2017b。
4.1 仿真模型搭建
为验证各算法对两轮平衡机器人的控制性能,在Simulink中搭建模块化仿真模型,如图7所示。
图7两轮平衡机器人Simulink仿真模型
Fig.7Simulink simulation model of two-wheeled balance robot
4.2 自稳性能
4.2.1 基于EA、ITAE、ISE的优化对比
分别以EA、ITAE和ISE为目标函数,采用ICPA算法对LQR控制器进行优化,得到Q和R矩阵。
基于EA:REA=diag(1.00,1.00),QEA=diag(50.60,2.24,19.79,2.53,0.01,1.10,16.69,0.89);
基于ITAE:RITAE=diag(0.39,0.57),QITAE=diag(80.10,5.46,5.29,5.47,0.01,3.07,4.82,0.33);
基于ISE:RISE=diag(0.89,0.88),QISE=diag(20.23,90.21,6.26,20.24,10.01,1.33,10.37,3.21)。
根据上述Q和R计算LQR的状态反馈增益矩阵K,并基于K值整定PID控制器的参数。
1)适应度收敛对比
图8给出了ICPA对EA、ITAE、ISE 3种适应度函数迭代200次的收敛曲线。
图8ICPA算法对各种适应度函数的收敛性
Fig.8Convergence of ICPA algorithm for various fitness functions
ICPA对3种适应度函数均能实现收敛,但后续仿真曲线显示,利用ISE和ITAE优化LQR的控制效果并不理想。其中,ISE消除了系统中的大误差,但小振幅的振荡仍然存在;ITAE在响应初期误差的权衡较晚,导致超调量较大;而EA的代价最小,意味着EA相对于ITAE和ISE具有更好的收敛性。
2)自稳定仿真曲线对比
设定一个初始倾角为0.2 rad的干扰量,控制仿真曲线如图9所示;给左右车轮施加幅值为1的阶跃信号扰动,响应曲线如图10所示。
图9倾角干扰控制仿真
Fig.9Simulation of dip angle interference control
图10阶跃干扰控制仿真
Fig.10Simulation of stepped interference control
在倾角扰动下,基于EA、ITAE、ISE 3种不同适应度函数优化的LQR控制器都可实现两轮平衡机器人的稳定控制。其中,基于EA优化的控制器,其位置角仿真响应超调量相比ITAE和ISE分别减小了0.22 rad和0.18 rad;倾角仿真响应超调量相比ITAE和ISE分别减小了0.05 rad和0.04 rad,倾角摆动更趋于平稳。此外,基于EA优化的LQR控制器稳定调整时间更短,抗干扰能力更强,即倾角可控范围更大,能实现偏离期望轨迹最小的动态响应。
在阶跃干扰下,基于EA优化的LQR控制器超调量减小、动态响应加快。具体而言,位置角仿真响应超调量相比ITAE减小0.3 rad,相比ISE增加了0.02 rad,但调整过程更平稳;倾角仿真响应超调量相比ITAE和ISE分别减小了0.011 rad和0.06 rad,动态响应速度也更快。
4.2.2 以EA为适应度函数的群智能算法优化对比
为分析群智能算法优化效果,在EA适应度函数框架下,分别采用MFO、SSA、改进PSO、CPA、ICPA优化LQR控制器的权重系数,得到两轮平衡机器人的Q和R矩阵。
基于MFO:RMFO=diag(0.46,0.46),QMFO=diag(66.07,20.19,0.83,0.69,0.41,0.96,0.33,0.17);
基于SSA:RSSA=diag(0.89,0.84),QSSA=diag(84.97,27.79,31.21,13.22,77.38,37.08,8.92,2.93);
基于改进PSO:RIPSO=diag(0.88,0.87),QIPSO=diag(95.04,64.26,8.29,0.40,0.08,45.24,5.15,10.00);
基于CPA:RCPA=diag(0.15,0.17),QCPA=diag(80.73,2.44,17.87,6.60,1.76,21.74,0.83,1.12);
基于ICPA:RICPA=diag(1.00,1.00),QICPA=diag(50.60,2.24,19.79,2.53,0.01,1.10,16.69,0.89);
基于ITAE(对比组):RITAE=diag(0.39,0.57)。
1)适应度收敛对比
利用Q和R矩阵计算控制矩阵K,图11给出了MFO、SSA、改进PSO、CPA和ICPA对EA适应度函数迭代200次的收敛曲线。
图11各群智能算法对EA适应度函数的收敛曲线
Fig.11Convergence curves of various swarm intelligence algorithms for the EA fitness function
各群智能算法在EA适应度函数优化中均能收敛,但性能存在差异。其中,SSA的全局寻优能力较差,虽收敛速度快但适应度函数值最大;CPA因为种群多样性不足,收敛速度较慢,适应度函数值较大;改进PSO和MFO具有较为出色的全局勘探能力,适应度函数值较小,但收敛速度较慢;ICPA不但具有出色的收敛速度和全局寻优能力,且适应度函数值显著低于其他算法,排序为ICPA<MFO<改进PSO<CPA<SSA。
2)自稳定仿真对比
设定倾角扰动为0.2 rad,控制仿真曲线如图12所示;阶跃仿真响应曲线如图13所示。
图12倾角干扰控制仿真
Fig.12Dip angle interference control simulation
图13阶跃干扰控制仿真
Fig.13Simulation of stepped interference control
各群智能算法优化的控制器均能实现小车自稳,表明群智能优化方法可以有效地确定控制器参数值,避免了繁琐的人为调整过程,但在性能上有所差距。SSA和CPA优化的控制器调整过程存在振荡,超调量较大,动态性能较差;改进PSO和MFO优化的控制器超调较小,性能较好,但MFO优化的控制器阶跃干扰位置角仿真响应存在稳态误差,改进PSO优化的控制器倾角干扰位置角仿真响应存在稳态误差;ICPA算法优化的控制器超调量小、动态响应快且调整过程最平稳[24]。
4.3 轨迹跟踪
实际应用中,两轮平衡机器人不仅需实现自稳平衡,还要能在地面上以一定的速度运动。将本文设计的控制器应用到两轮平衡机器人运动控制仿真中,验证其运动控制的可行性。
实际测量中,机器人左右轮的转角和倾斜角存在一定偏差。故本仿真中,设倾斜角的误差范围为[-1°,1°],位置角的误差范围为[-30°,30°],旋转角误差范围为[-3°,3°],在仿真模型中,分别添加弧度均值为0、方差0.035 rad、0.523 rad和0.052 rad的白噪声信号。
将改进PSO、MFO和ICPA基于EA优化得到控制矩阵K作为PID的控制器参数,控制小车完成轨迹跟踪,得到Q和R矩阵。基于MFO:RMFO=diag(0.88,0.92),QMFO=diag(79.20,5.89,42.66,55.11,9.99,3.80,47.03,50);
基于改进PSO:RIPSO=diag(0.88,1.00),QIPSO=diag(57.27,0.06,57.28,0.01,4.53,100,6.80,24.46);
基于ICPA:RICPA=diag(0.69,0.69),QICPA=diag(42.47,8.33,83.55,99.80,0.03,15.13,8.80,7.09)。
预定义路径与跟踪路径的时序偏差定义为
(32)
式中:xstd、ystd分别为预定义模型路径的横纵坐标;xi、yi分别为第i个跟踪路径点的横纵坐标,故总误差为err_xy=sum(err_xyi)。
4.3.1 匀速直线运动
设定两轮平衡机器人轨迹跟踪起点为(0,0),以2 m/s的速度做直线运动,终点为(x,y)=(40,0)。任何轨迹均可以转换为以位置角ζ、转向角τ及其变化率为输入量的表达式。小车做直线运动时,只考虑位置角ζ的响应,各群智能算法优化的小车位置角ζ的动态响应和时序误差如图14所示;优化控制轨迹跟踪30次路径的最大误差、最小误差和误差均值及标准差如表2所示。
图14小车直线运动动态位置角ζ响应与时序误差
Fig.14Dynamic position angle ζ response and timing error of vehicle linear motion
表2直线轨迹跟踪时序误差
Tab.2Timing error of linear trajectory tracking
从响应与时序误差曲线可以看出,改进PSO、MFO和ICPA都可以完成直线轨迹跟踪。由于小车是强非线性惯性系统,且初始时刻位置角发生突变,故位置角在起始时刻误差较大,但都可较快收敛。本文算法优化的直线轨迹相比改进PSO、MFO,误差超调量更小、收敛更快、波动更小,位置总误差分别减小了2.71 m和5.41 m。
4.3.2 圆周运动
设两轮平衡机器人轨迹跟踪起点为(0,0),以1 m/s的速度做半径为4 m的圆周运动。小车做圆周运动时,需考虑位置角ζ和旋转角τ的响应,各群智能算法优化的小车位置角ζ和旋转角τ的动态响应和时序误差分别如图15和图16所示。30次圆周运动路径跟踪的误差如表3所示。
从ζ和τ的响应与时序误差曲线可以看出,改进PSO、MFO优化的控制器跟踪圆周轨迹效果较差,而ICPA优化的控制器可以较好地跟踪圆周轨迹。由于圆周运动中位置角ζ和转向角τ存在耦合,改进PSO、MFO优化的控制器控制效果不佳,导致位置角和转向角的动态响应误差较大。而ICPA优化的控制器控制效果较好,位置角动态响应可以快速收敛,转向角在起始时刻未出现较大超调量,且一直保持收敛状态。相较于改进PSO、MFO,ICPA优化的圆周轨迹位置角误差收敛更快、转向角误差超调量更小、动态响应更平稳,位置总误差分别减小了32 m和50.8 m。
图15小车圆周运动动态位置角ζ响应与时序误差
Fig.15Dynamic position angle ζ response and timing error of vehicle circular motion
图16小车圆周运动动态转向角τ响应与时序误差
Fig.16Dynamic steering angle τ response and timing error of vehicle circular motion
表3圆周轨迹跟踪30次时序总误差
Tab.3Total timing error of circular tracking 30 times
4.3.3 组合运动
将直线运动和曲线运动结合起来,路径是长为40 m、半径为40/π m、总长度为160 m的操场模型。设定小车在直线运动时的速度为2 m/s,曲线运动时为1 m/s。将路径参数化后,各群智能算法优化的路径如图17所示。为充分检验本文设计控制器的性能,考虑控制输入扰动,扰动为周期5 s、幅值10的脉冲信号,优化轨迹如图17(e)所示。
图17(a)表示两轮平衡机器人的预定义路径,图17(b)~(d)为不同群智能算法优化的实际运动轨迹,图17(e)为ICPA算法考虑控制输入扰动后的实际运动轨迹。由图可知,ICPA(不论有无扰动)优化的实际运行轨迹最贴近预定义路径,且经过30次跟踪验证,ICPA-LQR优化的PID控制器效果更稳定。MFO优化的路径在起点、直曲过渡拐角处存在较大误差,整条轨迹的跟踪能力最差;改进PSO优化的路径较为平滑,但在直线运动转为曲线运动后误差逐渐增大,故在终点处存在较大的误差,跟踪精度较差;ICPA优化的跟踪路径与参考路径重合度高、平滑性好,轨迹跟踪精度和稳定性显著提升。
图17轨迹曲线
Fig.17Trajectory curves
各群智能优化控制器的复杂路径时序误差曲线如图18所示,轨迹跟踪30次后时序总误差值如表4所示。
图18时序误差曲线
Fig.18Timing error curves
表4轨迹跟踪30次时序总误差
Tab.4Total timing error of trajectory tracking 30 times
从图18和表4可以看出,MFO优化路径的时序误差始终较大,控制效果较差;改进PSO优化的路径时序误差呈现上升的趋势,控制效果欠平稳;ICPA优化的路径在起始时刻未出现剧变,但在拐角处出现超调,之后能够很快收敛,因为两轮平衡机器人为非线性强耦合系统,且对状态变量添加了白噪声扰动,扰动期间存在误差,但误差均小于0.5 m;考虑控制输入扰动后,时序误差与无扰动时一致,仅波动幅度变大,但均小于1 m,表明控制器具有较好的鲁棒性[25]。图19为ICPA优化后的LQR控制器在轨迹跟踪过程中倾角偏差、横纵坐标偏差、转向角偏差和车轮位置角偏差曲线。
图19各状态偏差曲线
Fig.19State deviation curves
由图19可以看出,本文算法控制两轮平衡机器人跟踪参考轨迹时,倾角除初始时刻外,偏差小于0.05 rad,机器人具有较好的动态自稳定性能;转向角、位置角误差和横纵坐标偏差较小,在轨迹初始阶段和拐角处呈现高斯分布,之后很快收敛。除此波动外,转向角偏差均小于0.2 rad,车轮位置角偏差小于3 rad,横、纵坐标偏差均小于0.2 m。因此,ICPA-LQR优化的PID控制器能够对两轮平衡机器人的前向和转向系统实现有效控制,表现出较好的泛化能力[26-27]。
5 结语
本文结合两轮平衡机器人的动力学模型,设计了一种基于ICPA-LQR优化的两轮平衡机器人自稳定与轨迹跟踪PID控制器。为改善CPA在成长和繁殖过程中的更新缺陷,引入自适应捕捉系数以及干扰因子,扩大了CPA优化算法的搜索空间,提升了前期全局探索和后期局部寻优能力。并利用ICPA算法对LQR控制器性能指标的权重系数进行优化,建立了两轮平衡机器人的仿真模型。仿真结果表明,本文设计的基于改进CPA算法的两轮平衡机器人,可在保持动态平衡的前提下较好地跟踪给定的参考轨迹。

