唐 顺
(佛山职业技术学院 机电工程学院,广东 佛山 528137)
四旋翼飞行器以其独特的结构、起降方式、飞行模式等成为国内外关注的焦点和热点。四旋翼飞行器的机械结构简单,分布对称,因而具有良好的经济性和可维护性[1-2]。四旋翼飞行器的执行机构由四个均匀对称分布的螺旋桨组成,能垂直起降,能在狭小的工作空间内作业,这些优点使其在诸多领域具有广泛的应用前景,如航拍、农用喷药、交通监测、电力线缆检测等[1-5]。
对于四旋翼飞行器的控制系统设计,国内外有着较多的相关研究[3,7-9],如滑模控制[4]、鲁棒控制[5]、反步控制等[6],也取得了丰硕的研究成果,但在控制精度和动态特性上还有所欠缺。
遗传算法(GA)是模拟自然界生物的遗传机制,基于达尔文进化论的一种智能优化算法,它从某一随机产生的或特定的初始解集出发,按照一定的操作规则,如复制、交叉、变异等,不断地迭代计算以得到新一代解集,并根据给它的适应度,按照适者生存和优胜劣汰的原则,引导搜索过程向“最适应环境”的个体(最优解)逼近,逐代演化出越来越好的近似解,最终收敛到问题的最优解或满意解[15-17]。
通过分析四旋翼飞行器的欠驱动、强耦合、非线性等控制问题后[10-13],本研究设计一种由内环姿态控制和外环位置控制组成的双回路PID控制器。针对各类系统控制要求,将系统进行层次分析,建立系统的多目标优化指标,运用遗传算法对系统进行PID参数整定。将整定参数后的控制器用于四旋翼飞行器系统,进行室外飞行实验,实验结果表明飞行器能在室外做满足工程精度要求的飞行。
为了更好地描述飞行器的位置姿态,便于建立数学模型,本研究建立两个右手直角坐标系,机体坐标系B(Ob,xb,yb,zb)和地面坐标系E(Oe,xe,ye,ze)。机体坐标系的原点Ob固定于飞行器的质心,x轴指向机头,z轴垂直地面向上,y轴由右手定则确定。在飞行器起飞前,地面坐标系和机体坐标系完全重合,飞行期间地面坐标系被认为是惯性坐标系,不做任何变化。在三维立体空间中,飞行器有六个自由度,本研究采用在机体坐标系中分析飞行的三个姿态自由度(φ,θ,ψ),分别是滚转角、俯仰角和偏航角,在地面坐标系中分析三个位置自由度(x,y,z)。用这两个坐标系能很好地分析飞行器的运动过程,机体坐标系到地面坐标系的转换矩阵R为
其中:Cτ= cos(τ);Sτ= sin(τ)。
定义P=(x,y,z)为四旋翼飞行器在地面坐标系中的位置,Ω=(p,q,r)为机体坐标系的机体角速度。
四旋翼飞行器在飞行过程中受到升力、重力、空气阻力、向心科里奥利力,由牛顿第二定律和欧拉方程可得到四旋翼飞行器的动力学方程为
其中:F为升力;Ff为空气阻力;Fg为重力。
飞行器的欧拉角和机体角速度之间的关系为[14]
其中Tθ=tan(θ)。
为了便于建立控制模型,本研究定义四个独立的控制输入U=(U1,U2,U3,U4),分别控制四旋翼飞行器的爬升、横滚、俯仰、偏航四种基本运动方式,其他的运动方式都可分解为这四种运动。
综合式(1)—式(3),可得出四旋翼飞行器的动力学模型为
其中:Ki为空气阻力系数,i为1-3时,表示线性运动时的空气阻力系数;i为4-6时,为转动运动时的空气阻力系数。L为无人机的对称几何中心到旋翼中心的距离;矩阵I=diag(I1,I2,I3)是四旋翼无人机的转动惯量矩阵。
四旋翼飞行器有x,y,z,φ,θ,ψ6个输出和U1,U2,U3,U44个输入,是典型的欠驱动系统。四旋翼飞行器要平稳地飞行,要求姿态信息更新的速度高于位置信息的更新速度。本研究设计一种内环姿态控制、外环位置控制的双回路控制系统,四旋翼飞行器的控制系统框图见图1。
图1 四旋翼飞行器的控制系统框图
PID控制是应用最广泛的控制方法,具有结构简单、鲁棒性强、控制可靠等优点。通过对姿态角偏差和位置量偏差进行增益、积分、微分操作,本研究设计了以下两个回路的PID控制器。
姿态控制回路
位置控制回路
其中:下标d表示对应的目标值;kpi为比例系数;kii为积分系数;kdi微分系数;i为φ,θ,ψ,x,y,z。
遗传算法的基本操作是复制、交叉和变异。复制是把种群中适应度高的个体,直接复制到新一代的种群中;交叉是种群中任意选择两个个体,让其染色体进行交叉换位;变异是以很小的概率随机改变染色体上的一个基因[1~5]。复制使遗传算法具有寻优能力,交叉决定了遗传算法的全局搜索能力,变异使遗传算法具有了随机搜索能力。遗传算法能在解空间进行启发式的全局搜索,而且它对问题的依赖性小。这些特点使得遗传算法适合复杂非线性系统的控制参数寻优。
对于多目标优化,遗传算法的目标函数难以确定。本研究充分考虑系统的静态特性、动态特性和可靠性等要求,提出各类优化指标,结合层次分析方法和系统本身的特性,将该控制系统分为系统层、子系统层和参数层,最后在子系统优化指标的基础上,加权得到系统的优化指标。
本研究设计的控制器是双回路PID控制,包含6个传递函数,所以将系统分为6个子系统,每个子系统根据自身的特性设置一个优化指标,比如:对于实时性要求,姿态控制回路高于位置控制回路;对于精度要求,位置控制回路高于姿态控制回路。姿态控制回路是位置控制回路的基础,所以在加权时,姿态控制回路的权值要大于位置控制回路的权值。
层次分析遗传算法的具体步骤如下:
1) 确定寻优参数的范围及其编码;
2) 生成初始种群,确定遗传算法的参数;
3) 确定基于层次分析法的优化指标,并计算出目前种群的指标值;
4) 对种群进行复制、交叉和变异遗传操作;
5) 重复步骤3和步骤4,直到优化指标达到预期值或遗传代数达到设置的最大代数,返回最优指标时的参数以及遗传代数。
其中,实现步骤3,需要先构建目标函数层、子系统层、参数层。系统优化指标的层次模型如图2所示。
图2 系统优化指标的层次模型
则优化指标为
其中:Wi表示各子系统的权重系数;α1为系统误差的权值;α2为控制器能量输出权值;α3为上升时间权值;J1到J6分别为横滚、俯仰、偏航、左右位移、前后位移、上下位移子系统的优化指标;tu表示上升时间,小标1到6分别表示横滚、俯仰、偏航、左右位移、前后位移、上下位移子系统。
为了保证四旋翼飞行实验的顺利进行,本研究用Matlab进行数值仿真。仿真实验中,对6个子系统进行阶跃响应,使用层次分析遗传算法对系统优化指标进行寻优,获得满意的PID参数。遗传算法中,使用的样本个数Size=40,交叉概率Pc=0.9,变异概率Pm=0.05,比例增益参数Kp∈[0,20]、Ki∈[0,10]、Kd∈[0,10],姿态子系统的权值W1=0.25、W2=0.25、W3=0.2,位置子系统的权值W4=0.1、W5=0.1、W6=0.1,系统误差的权值α1=1.0,控制器能量输出权值α2=0.1,上升时间权值α3=0.3。四旋翼飞行器的仿真参数如表1所示。
表1 四旋翼飞行器参数
在Matlab环境下,编写改进遗传算法和对无人机控制率进行数值仿真,仿真步长为1 ms,仿真时间设置为10 s,进行遗传代数为60的仿真运算,遗传寻优过程如图3所示。从图3可看出,当运算到30代时,优化指标已经很小,系统具有良好的综合性能。
图3 遗传寻优过程
将设计的双回路PID控制器安装在四旋翼飞行器上,分别采用临界比例度法和层次分析遗传算法对PID进行参数整定。本实验采用GPS和IMU分别对比检测飞行的位置和姿态角。在悬停实验中,理想的姿态角均设置为0°。使用临界比例度法整定的飞行器在悬停时,出现多次抖动并漂移,基本不能实现悬停试验;使用层次分析遗传算法整定的飞行器能较好地完成悬停飞行,悬停实验见图4,飞行实验的分析如下:
图4 室外悬停的四旋翼飞行器
1)俯仰角和横滚角是描述飞行器水平姿态的角度,其实验变化曲线如图5和图6所示,其平均值分别是2.1°和-0.9°,方差分别是2.5和0.61。俯仰角的误差较大,是因为室外有风等干扰因素,测试记录上记录飞行时室外的风速为5 m/s,风的方向和机头方向一致,为了保证平稳飞行,飞行器调整俯仰角,保证了位置精度,此数据表明本文设计的飞行器有一定的抗风能力。偏航角指明机头方向,其实验变化曲线如图7所示。结果显示横滚角的均值为-0.29°,其均方差为0.1。偏航角是控制飞行器航向的角度,它的高精度保证了飞行器姿态角的误差都在±1°。
图5 俯仰角变化曲线
图6 横滚角变化曲线
图7 偏航角变化曲线
2)悬停的高度设置为2 m,四旋翼飞行器高度均值为2.06 m,误差为0.06 m,方差为0.004。水平位置的最大误差约为0.05 m。其实验高度变化曲线和水平位置变化曲线如图8、图9所示。综合考虑姿态和位置误差,本文设计的四旋翼飞行器在精度上能满足大多数工程上的要求。
图8 高度变化曲线
图9 水平位置变化曲线
四旋翼飞行器控制是多耦合、非线性的,本研究针对其飞行控制问题,设计了一种双回路PID控制器,在考虑到多个优化目标后,采用层次分析遗传算法对PID进行整定。经实验验证,本研究设计的方法在精度上能满足大多数工程上的要求。