基于Cesium的无人机集群作战仿真演示系统
2022-05-09陈志明蒋文凯吴云华
陈志明,蒋文凯,吴云华
(南京航空航天大学 航天学院, 南京 211106)
1 引言
无人机作为一种低成本、高效能的飞行器,自诞生之日起,便获得了广泛关注,其可携带多种设备,完成多种类任务。无人机的应用逐步从单无人机向多无人机编队乃至大规模集群发展,利用众多无人机编对组成大集群作战已经成为未来战争明显趋势。但大规模实机验证往往耗资巨大,难以实施,因此,采用仿真演示的方式进行无人机集群研究逐步成为新热点。
目前无人机集群仿真技术取得了丰硕成果,如郑晨明等提出了基于高层次结构的分布式无人机协同仿真系统;许瑞明等针对群体智能无人机系统作战仿真关键需求进行了分析,明确了作战要素与能力指标;景晓年等在充分考虑各无人机个体意愿的基础上,提出一种基于规则的运动控制方法,应用于无人机集群运动控制;张灿等侧重研究多无人机在二维情况下的任务规划仿真技术;冯聪等基于上位机视景软件基础进行二次开发,完成了无人直升机的编队生成、保持与重构飞行。
传统模式下数架无人机组成的编队难以完成大规模作战任务,且基于Matlab/Simulink的仿真缺乏形象立体的效果,无法达到交互式的操作环境。本文针对无人机集群难以大规模演示且缺乏直观的问题,设计了一种基于Cesium的无人机集群作战仿真演示系统,并对其中关键的集群与避障运动进行仿真分析,验证了该系统的可行性与直观性。
2 平台架构及功能模块实现
无人机集群作战仿真演示系统通过实景化演示手段,将无人机集群运动过程进行演示,以三维实景展示多达百架无人机的集群自主避障、自主寻的效果。
2.1 Cesium概述
Cesium是AGI公司创建的开源GIS框架,可用于创建具有高性能、高精度、高易用的三维虚拟地球数据,其界面如图1所示,从航空航天到智慧城市,各行各业的开发人员都在使用Cesium来创建用于共享动态地理空间数据的Web应用程序。依托其强大的互操作性与开放包容性,可高精度地进行可视化分析。
图1 Cesium三维地球界面
2.2 系统开发与实现
通过对集群作战演示需求进行分析,本文所设计的无人机集群仿真演示系统主要包括三大部分:演示系统控制端、集群动力学模拟端、集群三维实景演示端。演示系统控制端负责指令发送与系统设置,集群动力学模拟端负责接收控制端信息,完成动力学仿真,集群三维实景端负责三维场景搭建、加载及动态展示,用户通过浏览器对系统进行访问。各子系统间底层通信传输通过基于UDP协议的无线局域网自动完成。
..系统设计
本文提出的无人机集群作战仿真演示系统的总体设计为B/S架构,用户仅需要安装浏览器,无需安装特定软件即可实现在线访问。系统设计过程如图2所示,Cesium通过加载数字高程瓦片,将其数据与本地数据叠加形成三维地形,控制端主要设置相关集群参数并通过UDP通信方式将发送相关指令到服务器端口,服务端一方面提供所需的空间三维地形数据来源,并通过数据库将集群相关信息存储收集、存储与计算,加载大量的三维数据模型,提高渲染效率与浏览器相应速度,客户端通过浏览器访问,展示集群效果。
系统间数据传输流主要包括:控制端与动力学端的参数设置传输,通过UDP通信方式,将集群数量、种类、速度、障碍物位置,目标点位置等相关信息发送到动力学端,完成动力学模拟。动力学端将集群设置参数与环境信息发送到数据库,形成集群相关数据信息,服务器接收信息,进行相关模型计算并将其加载在GIS系统中,客户端则通过浏览器实现对服务器的访问,展示集群效果。不同的集群参数设置时系统会根据输入信息更新工程文件,并重新调用服务器进行模拟计算并在客户端输出集群效果。
图2 系统总体设计过程框图
..功能设计
无人机集群演示系统,基于C#编写Windows窗体应用程序,主要包含了系统初始化、无人机参数、势能场参数、目标点与障碍物等相关控件。控制终端可根据演示需求,配置集群参数,发送相关指令,并采用UDP传输协议,通过建立的无线局域网将指令传输到系统动力学模拟端与实景仿真演示端,驱使集群演示不断更新,实现闭环仿真。
集群动力学模拟端,用于模拟无人机集群在蜂群动力学与势能场作用下的运动形式。可在集群动力学模拟端软件上展示虚拟的灰色空心圈障碍危险区、灰色实心圆目标点。
实景演示端,用于接收控制端发出的控制指令与动力学模拟端的信息。当用户通过浏览器访问Web服务器时,服务器从数据库中获取无人机集群的飞行信息,浏览器不断地根据获取的参数与信息将无人机集群状态绘制在cesium三维虚拟地球端,完成对集群飞行过程的全程展示,包括集群避开虚拟危险区域、各机避碰以及到达目标点。
3 无人机集群
针对无人机数量较多,环境复杂的情况,本文采用蜂群约束的动力学模型实现无人机自主分布式控制,采用势能场理论实现无人机集群在执行任务过程中的避障、自主寻径等能力。
3.1 蜂群约束算法
结合无人机集群的特点,本文采用蜂群约束算法进行集群建模。首先,定义模型中的所有运动节点均在一个给定长度为、宽度为、高度为的三维区域进行运动,相关参数定义如下。
1) 无人机的位置,为三维坐标,初始时刻,无人机的位置随机产生。为目标点位置。
2) 无人机的速度,为三维矢量。其中,无人机的速度收到周围无人机的作用后会产生新的速度。
3) 危险半径,此距离为与己方无人机距离过近的相关无人机的最小欧式距离。
4) 无人机的一致性速度,此速度使得无人机保持与周围无人机的速度一致。
5) 无人机的分离性速度,此速度确保无人机保持与周围无人机一定安全距离。
6) 无人机的凝聚性速度,此速度由无人机计算根据周围无人机的中心位置,得到趋向集群中心的速度。
7) 集合为周围相邻所有无人机组成的节点集合。
得到集群约束算法主要满足以下3个原则,总结如下:
1) 一致性原则:无人机与相邻无人机的速度形成匹配。通过一致性速度体现。通过感知周围无人机的平均速度,保持自身速度与集群平均速度方向相一致。其中无人机在时刻的一致性速度由周围所有邻近无人机的速度得到,一般表达式为:
(1)
式(1)中:-alignment为时刻第个无人机受到周围的无人机产生的一致性速度;||为周围所有邻近无人机的速度集合;为集合内邻近无人机自身的速度。
2) 分离性原则:无人机与相邻无人机避免碰撞。通过分离性速度体现。无人机通过感知周围无人机的位置,若距离过近,则获得一个相互远离的一个加速度。其中无人机在时刻的分离性速度是通过与该节点距离小于危险半径的周围邻近无人机得到,一般表达式为:
(2)
式(2)中:-seperation为时刻第个无人机受到周围邻近的无人机作用产生的分离性速度;为周围危险半径内相邻所有无人机组成的节点集合;为无人机在时刻的位置。
3) 凝聚性原则:无人机与相邻无人机保持较近距离。通过凝聚性速度体现。无人机通过感知周围无人机距离,计算总体的中心位置,当自身位置与中心偏离时,获得指向中心的加速度。其中无人机在时刻的凝聚性速度是从所有邻近无人机的位置中得到,一般表达式为:
(3)
式(3)中:-cohesion为时刻第个无人机受到周围邻近无人机产生的凝聚性速度;为无人机在时刻的速度。由此可得无人机节点在时刻的合速度,该速度代表了无人机此时的速度与方向信息,速度更新规则为:
(4)
位置更新规则为:
()=(-1)+()
(5)
其效果图如图3所示,细实心箭头为无人机自身速度方向,虚线箭头为集群平均速度方向,短粗实心三角箭头为无人机获得的转向集群平均速度方向的加速度方向。
图3 蜂群约束算法三原则效果图
遵循以上三原则的模型可满足无人机集群的自组织运动。一致性原则下,单体无人机与集群其余无人机保持运动方向的一致性。分离性原则下,无人机在运动过程中避免与周围无人机相撞。凝聚性原则下,单体无人机与周围无人机之间保持在一定区间范围。
由此,建立如图4所示的基于蜂群约束的无人机自主分布式控制算法模型。
无人机首先确定自身的状态数据,其中主要包括速度、加速度以及位置信息。其次,探测自身周围无人机的距离,当距离小于危险半径时,无人机获得一个远离的加速度,并且无人机计算周围集群的中心位置,保证集群内部距离适中,且保持与整体无人机集群的运动方向保持一致。最后,无人机根据目标点提供的加速度,整体向目标点进行运动。由此,建立了基于蜂群约束的无人机自主分布式控制算法模型。
图4 基于蜂群约束的无人机自主分布式控制算法模型框图
3.2 势能场理论
无人机集群在运动过程中,需要考虑障碍物的规避与自主寻的。本文采用势能场理论进行无人机的航迹规划。势能场理论通过模拟现实世界中的各种“场”吸引和排斥物体,如图5所示。
图5 势能场示意图
首先,障碍物对无人机集群产生斥力,目标点对无人机集群产生引力,两者产生合力可确保无人机集群在运动过程中避免碰撞,到达目标点。
其次,对于单无人机,则通过势能场产生的合力与蜂群约束算法模型所应用的三原则结合,最终无人机自身获得合加速度,在总合力的作用下,得到自身运动轨迹。最后,集群形成具有一定运动规则的模式。
本文设定无人机集群作战三维演示终端中,集群所要通过的危险障碍区域以浅灰色圆柱状示意,集群最终目标点以深黑色圆柱状示意。势能场主要涉及以下2个部分。
1) 引力势场。在势能场理论中,无人机距离目标点越近,所具有的引力势能越低,当移动到目标处时,引力势能为零。一般情况下,引力势场函数一般表达式为:
(6)
=-·(-)
(7)
2) 斥力势场。势能场理论中,障碍物在其自身周围产生一定的排斥力,超过一定距离,障碍物将不再产生斥力作用,且随着无人机距离障碍物越近,所具有的引力势能越高,在障碍物处具有无穷大势能。一般情况下,斥力势场函数表达式为:
(8)
(9)
4 系统实现效果
根据上述设计,本文无人机集群作战仿真演示系统配置如下:处理器Intel core i7-8700k、显卡NVIDIA GeForce RTX2070 8G,内存DDR32G、Window10操作系统完成无人机集群演示的指令发送、动力学模拟、可视化功能。演示过程中向系统输入无人机集群数量、类型、障碍物位置、目标点位置以及IP地址等信息,系统实时对无人机集群状态进行渲染更新。
4.1 集群运动环境
无人机集群所在飞行环境通常存在各种障碍对其飞行造成阻碍。如突出山地、气象恶劣区、敌方威胁区等。一般来说,可以将上述区域简化成一定的空间虚拟半径圆柱体。本文以虚拟灰色圆柱体作为无人机集群运动所需避开的虚拟障碍物,并选取现实世界中经度120.912°、纬度23.230°作为集群目标中心区域。
4.2 初始参数设计
本系统主要参数设置包括本地主机IP、远程主机IP,本地主机端口、远程主机端口、无人机类型、无人机数量、无人机速度、势能场引力系数、势能场斥力系数、目标点中心位置、中心点经纬度、4个障碍物位置以及仿真步长。
图6为集群控制端初始参数设置示意图。其中无人机数量设置为150架,势能场引力系数设置为0.5,斥力系数设置为0.7。
图6 集群控制端初始参数设置示意图
..动力学端集群效果展示
图7为无人机集群作战动力学模拟场景图。根据上述参数设置,以白色小型三角形代表单无人机模型,虚拟障碍威胁区域以4个灰色空心圈示意,无人机集群最终的目标点以灰色实心圆示意。150架无人机组成的无人机集群在蜂群约束与势能场的共同作用下,在动力学模拟端的运行过程如下。150架无人机组成的集群,正在穿越中间灰色空心圈危险障碍区域,危险区域对无人机集群产生虚拟斥力作用力,右侧绿色目标点对无人机集群产生虚拟吸引作用力,无人机集群由于本身存在飞行速度,产生的惯性会导致部分进入到危险区域范围内,但危险区域排斥力最大处,无人机集群无法进入。最终无人机集群穿越中间危险障碍区域后在右侧灰色实心圆目标点附近汇集,完成避障。
图7 无人机集群动力学模拟场景图
..虚拟地球端集群效果展示
图8为无人机集群作战三维实景演示图,Cesium演示端接收来自无人机集群控制端与动力学端信息,将无人机集群运动图像以三维立体形式展现,相比二维运动形式更加直观。由图8可看出,无人机集群正在越过右侧及中间部分灰色圆柱组成的危险障碍区域,部分处于前端的无人机已经通过此区域,向最左侧黑色柱状目标点区域前进,后端无人机在虚拟引力与斥力的共同作用下,正在穿越中间危险障碍,与前端无人机保持相同的运动方向。可以看到,无人机集群已经形成有规则的运动形式,整体有相对一致的运动方向。
图8 无人机集群三维运动实景演示图
集群穿越障碍区域后,整体密集向目标点运动,形成更加紧凑的集群样式。无人机集群到达目标点后,仍然受到目标点引力、障碍物斥力与自身速度的影响,最终在目标点附近运动。
5 结论
本文针对无人机集群控制与可视化演示问题,一方面采用蜂群约束的动力学模型,实现无人机的自主分布式控制,采用势能场理论,实现无人机集群任务执行过程中的避障、自主寻的等能力;另一方面基于Cesium三维虚拟地球,以三维实景的形式展示了多达百架的无人机集群效果。演示结果表明,基于本文的三维立体无人机集群演示比二维平面更加直观,可视化程度高,有助于无人机集群的整体分析与应用,大大降低了无人机集群的演示成本。