多无人机飞行控制系统设计与轨迹规划
2018-10-09单俊杰赖水清
单俊杰,赖水清
(1.海装武汉局,湖北 武汉 430064;2.中国直升机设计研究所,江西 景德镇 333001)
0 引言
无人机是一种使用无线电遥控装置或其自带的软件自动控制装置控制飞行的飞行器,分为旋翼无人机和固定翼无人机。多旋翼无人机能够垂直起降、自由悬停,稳定性好、机动性强,因此引起了各国的广泛关注。
随着无人机任务的日趋多样化,单机作战和纯手控飞行模式已不能满足其飞行任务的日常需要。因此,多架无人机编队飞行和航迹规划已成为必然要求。
实现多无人机编队自主飞行的关键技术分为两部分:多无人机的跟踪控制和轨迹规划。无人机跟踪控制部分要求有完整的无人机控制系统,然后无人机可以按照给定的轨迹飞行。轨迹规划要求给定起始状态和结束状态之间的连接,以及在三维空间中的时间、速度参数和无碰撞位置。在实际系统中,无论是跟踪控制还是轨迹规划都面临着许多困难,这已成为自主飞行技术的瓶颈之一。
完成无人机的跟踪控制,需要一个合适的无人机控制系统平台。美国耶鲁大学、宾夕法尼亚大学、麻省理工学院和瑞士的苏黎世联邦理工学院等多家高校均展开了无人机自主控制系统的研究和开发工作,包括研制新的无人机,开发新的传感器,环境的认识和定位,跟踪控制和路径规划等。其中,麻省理工学院的Huang A S[1]利用RGB-D摄像头和惯性组合导航方式实现无人机的探索和定位,缺乏对高度自治未知环境下的GPS信号定位的功能。而深圳大疆创新的Yang S[2]使用单眼相机、GPS和IMU的组合,实现了室内和室外的精确定位,为无人机在复杂环境下的自主飞行技术奠定了基础。以上所提到的工作都是做面向编队飞行任务的其中一个模块,并没有完成一个完整的编队飞行任务体系。
Guilherme V. Raffo[3]提出非线性 H∞姿态控制和位置控制相结合的路径跟踪方法,该方法在抵抗外界扰动和内部参数摄动方面具有一定的鲁棒性,但由于位置环的控制仅考虑位置误差和误差的导数,因此在路径跟踪上无法消除稳态误差。Penghong Lin[4]针对路径跟踪控制器进行改进,通过引入积分环,使飞行器在跟踪恒定速度路径时可以消除稳态误差,但该方法在跟踪其他信号时表现还是一般,存在一定的滞后,导致无人机无法实时地跟随飞行轨迹。
Carrillo L R G[5]提出一种切变滑模控制来解决路径问题,然而该方法在切边时容易带来飞行器的震颤,影响跟踪效果。由于路径跟踪的特点,这些控制多用于无时间要求的单机中低精度飞行任务。如果这种方法被用于多UAV编队,抖动可能导致多UAV之间的碰撞。
Hoffmann G M[6]首先提出了一种基于时间的轨迹跟踪控制方案。该方法可以根据需要调整跟踪速度,并增加时间参数跟踪。Mellinger D[7]完成了基于PD控制器的无人机精确轨迹跟踪控制飞行。然而,他们只进行单无人机飞行,没有考虑多UAV编队的任务。
Turpin M发表的文章[ 8]提出了一种用于编队飞行的轨迹跟踪控制方法:单个无人机只跟踪自身轨迹,多无人机采用队形保持控制。这种方法能够保持固定队形飞行,但不能根据实际需要制定特殊轨迹队形。本文提出的方法可以根据不同的需要设计多种不同的队形。
在实际的三维环境中,跟踪控制和轨迹规划存在许多问题。找到解决以下问题的办法是必要的:
1)较大的轨迹跟踪误差;
2)只完成了单个无人机的飞行;
3)不能根据需求设定不同的特殊的飞行轨迹。
为此,本文首先建立飞行控制平台,实现室内环境下多无人机编队飞行,同时解决轨迹规划问题;其次进行轨迹规划和编队队形设计;然后构建多UAV飞行平台;最后进行多无人机编队飞行试验,并对飞行试验数据进行分析和总结。
1 轨迹规划
编队飞行的一个重要前提就是要有适合的多无人机飞行轨迹,所以考虑环境条件并进行轨迹规划是实现编队飞行的一个重要步骤。
1.1 轨迹规划步骤
我们使用matlab软件进行轨迹规划,同时要考虑到以下的约束条件:
1)考虑到场地尺寸设定实际飞行编队任务;
2)根据飞机的轴间距,确定两架飞机的最小距离限制(至少是轴间距的两倍);
3)考虑到飞机自身的性能,轨迹不能存在尖角;
4)同一时间,两架无人机不能上下重叠,因为可能导致表面的mark点被掩盖,致使定位失败。
在使用matlab规划轨迹的过程中,我们将每种编队队形、起飞降落阶段视作独立的阶段,不同独立阶段之间的衔接过程使用直线轨迹连接,这样的做法可以使轨迹达到最短最方便的效果,同时减少编队飞行时无人机的耗电量。
以下是轨迹规划方法简介:
第一步,我们需要确定要完成的编队队形,进而就可以确定需要的无人机数量。
第二步,分别确定起飞阶段的编队集结方式和降落阶段的编队解散方式。在规划每架无人机轨迹的过程中,要保证各架无人机的同步性,在同一时间保证各架飞机达到同一次序轨迹点,以确保多架无人机的同步飞行。
第三步,连接各个轨迹之间的开始和终止状态,完成整体的编队轨迹。在这一过程中,应保证同一时间每两架无人机之间的距离大于距离限制条件。
第四步,检查多无人机之间的距离是否大于距离的限制,如果满足,轨迹规划完成。如不满足,则重复步骤二,修改轨迹,直到满足距离限制条件。
在实际飞行中,两个轨迹点之间的时间是固定的,可以通过改变轨迹点之间的距离来改变无人机的速度。
1.2 飞行队形设计
我们基于以上的约束条件以及美观性考虑,设计8条起始位置不同、中间路径有部分相同的轨迹;使用matlab 软件规划出了4种轨迹;8架飞机的编队分别为高低椭圆形、八字形、内外环形和仿生鸟形的形状。
队形1: 高低椭圆形
轨迹由两圈近似椭圆的曲线构成,其中一圈高度保持在 0.95 m高度,另一圈为渐变高度,高度上限为 1.2 m,下限为 0.85 m。两圈椭圆的xy值相同,俯视图都为长轴 2.4m、短轴 1.2 m的椭圆,八架飞机依次等间距的沿轨迹进行飞行,保持同一时间下,飞机间距离大于 1.25 m,即保持安全距离。轨迹形状如图1所示。
图1 高低椭圆形轨迹
队形2: 八字形
因飞行条件不允许飞机同时在正上正下方,所以设计的八字轨迹高度都相同,8架飞机交替地穿越中间的轨迹交汇点。考虑到同时性,设定飞机的距离分别为1/8圆弧、1/4圆弧和3/8圆弧,保持飞机间距离大于 0.85m,以此可以交替地通过八字中间点。轨迹形状如图2所示。
图2 八字形轨迹
队形3: 内外环形
分别由俯视图半径为 1m和2m 的圆环构成,各飞机间距均为其所在圆环的1/4弧长,外环的高度在 0.9m 至 1m 之间来回变化,内环的高度在1.2m 至 0.8m 间来回变化;在内环的飞机沿顺时针旋转,外环的飞机沿逆时针旋转,飞机旋转飞行的角速度相同;两架飞机的最小间距可保持在 1m 以上的较为安全的距离。轨迹形状如图3所示。
队形 4: 仿生鸟形
由4架飞机分别组成鸟的翅膀,4架飞机组成身体,翅膀在1.2m和0.8m间上下挥动,与此同时,组成身体的4架飞机也在0.9m 到 1.1m间变化,达到飞行的视觉效果。同时,仿生鸟绕躯干逆时针旋转飞行2圈,最终缓缓落地。在此队形中,同一时刻两飞机的距离始终保持在 1m 以上,维持机间安全距离。最终的轨迹形状如图4所示。
图4 仿生鸟形轨迹
2 无人机多机飞行平台的构建
本文设计了一种新的无人机编队控制系统,系统结构如图5所示。系统由地面控制系统、运动捕捉数据处理平台和无人机控制系统组成。运动捕捉系统通过广播交换机以组播的方式实时地将姿态传送给地面控制站。无人机也可以通过WiFi(5G模块)实时地将自己的状态返馈到地面系统。地面控制站在这些反馈信息的基础上,通过无人机对无人机飞行任务进行切换,并有选择地将轨迹数据传送给无人机,完成多架无人机编队飞行。地面控制站还具有应急处理机制、数据流量监控等功能。
通过以上过程,我们可以完成无人机与地面控制系统的信息交互,保证多机编队飞行的安全性和同时性。下面对每个子系统的构造进行说明。
2.1 无人机控制系统
为了稳定地完成多架无人机的编队飞行,需要有信息传输器、飞行控制器、执行器等一系列综合设备。为了实现多无人机编队飞行较长时间,硬件设备(电机、螺旋桨布线等)需要满足重量轻、功耗低的要求。
图5 系统结构框图
本试验使用的飞行控制器为pixhawk开源飞行控制器,它是由3DR公司(最主流的飞行控制硬件制造商) 推出的新一代高级自动驾驶仪系统,该系统具有良好的灵活性和可靠性。
由于无人机需要足够的空间来搭载pixhawk飞控,无人机机身应足够大;而无人机飞行是在一个较为有限的空间,因此机身又不能太大。考虑到这些要求,我们选择了EX260型纯碳纤维框架。
无线通信系统用于地面控制系统与无人机控制系统之间的通信。考虑到试验的可行性,最后选择了rs9113模块的UART功能,在5G网络环境下互相交流。
图6展示的就是组装后的无人机。
图6 组装后的无人机
2.2 动作捕捉系统
动作捕捉系统是一种定位精度较高的定位系统,主要用于GPS无法定位的室内环境。运动捕获系统能够实时准确地测量和记录室内空间中无人机的运动轨迹和姿态,并在仿真的三维空间中实时显示无人机刚体的运动状态。本试验采用的是基于标记点定位的OptiTrack光学动作捕捉系统,如图7所示,由光学识别点(标记点)、动作捕捉摄像头、交换机和数据处理平台的组成。
图7 动作捕捉系统
摄像机从不同角度记录和跟踪目标标记点,获得无人机的实时数据。OptiTrack系统处理返回的数据,并设置无人机的坐标和姿态,然后将它们发送到地面控制系统。
2.3 地面控制系统
ROS程序通常由许多功能模块(即节点)组成,节点之间的信息传递是通过发送和接收主题进行的。
地面控制系统和单个UAV之间的主题和节点图如图8所示,整个控制系统由8组这样的控制节点组合而成。图中的节点将从运动捕捉系统获得的信息TF1转换成实际坐标系中的无人机数据。
图8中的efymul1节点用来与pixhawk飞行控制系统通过udp_mavlink协议进行通信。uav_stop_node实现接收键盘输入指令,然后选择offb_node控制模式。其中mocap_node的功能是获得运动捕捉系统传输来的实时数据,即自身以及其他无人机的位置信息。
图8 控制系统节点
我们的控制站可以使无人机在固定数量的轨迹点上调整时间,然后在不同的轨道点间控制无人机的速度。接下来,我们将介绍如何跟踪轨迹飞行点。
offb_node节点是地面控制系统的核心部分,其功能是跟踪无人机轨迹点。此程序的流程图如图9所示。此方案运行后,8架无人机同时进入起飞阶段。地面控制系统可以设定起飞阶段的起点。首先,检查它是否达到起飞阶段的起点。如果没有,则继续飞向起点。如果无人机已到达飞行起始点,它们将进入飞行模式选择阶段。
该程序设计了三种飞行模式。借助uav_stop_node的功能,我们可以通过键盘输入来选择飞行模式。按1键立即进入着陆模式(模式1):所有无人机下降到0.05m,然后降落。按2进入轨迹跟随模式(模式2):所有的无人机进行事先给出的一系列轨迹点的飞行。模式3不需要按键盘,在飞行过程中不断地判断多无人机的距离,如果在某一时刻两无人机的距离小于0.7m,则所有的无人机自动进入紧急处理模式降落至地面。
模式2是正常编队飞行模式,在该模式开始时,每一架无人机飞向其整个轨迹的第一目标点。在本次飞行中,连续地判断无人机位置,如果距离目标点未到达0.02m(可调大小),则继续朝这个目标点飞行。如果距离达到0.02m,同时所有其他无人机到达当前的目标点(即同步),那么所有无人机继续跟踪整个飞行轨迹的下一个目标点。随后的编队飞行有相同的过程,不断地循环前进,直到所有的无人机到达给定轨迹的最后一个点,最后进入着陆过程。每个无人机保持XY坐标不变,高度变成0.05m着陆。在飞行过程中,通过调整轨迹点之间的距离来确定无人机的速度,同时通过轨迹点次序的统一来保持无人机的同步性。
图9 轨迹跟踪程序流程图
3 飞行试验和数据分析
在本文中,我们按照规划出的4种编队队形进行了多次飞行试验。在试验过程中,通过视频记录飞行效果。我们选取了几次试验的飞行效果图,如图10所示。
从轨迹跟踪效果、多自由度飞行速度和多无人机间距离等方面对比飞行试验,分析了编队飞行的最终效果。
图10 飞行效果图片
3.1 轨迹跟随
根据实际飞行试验数据,在matlab中再现编队飞行路径。图11显示了轨迹跟随效果,表1是我们从试验中得到的数据。深色线是目标飞行轨迹,浅色线是实际飞行轨迹。编队飞行使用了8架无人机,因为它们的轨迹相似,其中一架无人机可以代表所有的无人机。这里我们根据1号无人机的飞行数据进行轨迹跟踪分析。
图11 轨迹跟随效果
最大偏差X方向Y方向Z方向空间距离平均值单位:m0.14200.13400.08100.15600.0210
从图片和表格信息中,我们可以分析出目标轨迹与实际飞行在XYZ方向上的最大偏差为0.1340m,同一次序的轨迹点间最大距离偏差为0.1560m。在这样的偏差下,无人机之间的距离大于0.9440m(1.1-0.156 = 0.944),所以它可以使多无人机间保持安全距离。
3.2 速度数据分析
以一架无人机的飞行数据为代表,对所有无人机进行轨迹速度的分析。图12所示是无人机的速度曲线对比,浅色线是目标速度曲线,深色线是实际速度曲线。
图12 目标速度与实际速度对比
通过对比实际飞行数据和目标飞行数据,得到了表2的结果。
表2 速度效果对比
从图表的数据中可以看出,实际飞行速度与目标速度的极值差在0.2700m/s以内,平均值可以视为相等。目标速度和实际速度的平均误差为0.0093m/s,可以总结得到,实际飞行速度可以很好地拟合目标速度,从而使无人机能够根据目标轨迹实现目标速度。
3.3 多无人机间距离分析
图13中8条曲线代表进行轨迹规划后,相邻的两架飞机间的距离,即1号和2号、2号和3号……8号和1号等等(在编队飞行过程中,相邻编号的轨迹距离为最小值)。由图我们可以看出两架飞机间的距离大于 1 m,距离最大值达到 5.50m,无人机间距离在1m到5.5m间不断变换,最小的机间距离为 1 m且只保持很短一段时间。对数据进行计算,得到两架飞机之间的距离平均值约为2.95 m,始终能保持远大于无人机轴间距的2倍(0.5 m)。由此可知,轨迹规划后,任意两架机间的距离都可以始终保持在较为安全的范围,同时多无人机间螺旋桨的风力影响可以近乎不计,提高了多机编队飞行的可靠性。
3.4 试验总结
使用轨迹规划后得到的多无人机轨迹进行编队飞行试验,从轨迹跟随、速度、多机间距离三个方面对编队飞行效果进行分析。通过轨迹规划可以使多无人机间的最小距离保持在 1m 以上,保持了多无人机之间的安全距离。通过轨迹规划得到的多无人机编队轨迹,借助搭建的飞行试验平台以及地面站控制程序,可以较好地使无人机贴合预定的轨迹进行编队飞行,而不会因出现大幅度的晃动而导致编队飞行失败。从整体的试验过程来看,本文使用的轨迹规划以及搭建的试验平台、轨迹跟随控制程序,在轨迹跟随、速度、多机间距离三个方面都满足要求,可以较好地完成多无人机编队飞行的任务。
图13 两架相邻无人机间距离
4 总结
本文提出了一种轨迹规划方法,并用这种方法设计了4种编队队形及起飞降落阶段,搭建了无人机控制系统、动作捕捉系统、地面站控制系统,编写轨迹跟随程序。通过以上的工作能够在保证多无人机间在安全距离(即避免碰撞的可能性)的同时完成多无人机编队飞行的任务。
无人机的运动约束是编队飞行的重要组成部分,当前考虑的运动约束条件相对简单,在实际应用中可能导致编队飞行的失败。为了解决这一问题,我们将在未来的研究中完善无人机的轨迹规划,以满足无人机编队飞行的稳定性和安全性。