本人研究生期间,主要研究无人机集群编队,目标追踪,避障,路径规划等,参考了大量论文,也走了不少弯路,今天将一些心得写出来,希望能够帮到师弟师妹们,早发论文,早日毕业。

无人机集群编队

什么叫编队?就是几架无人机保持一个特定的队形移动而已。

什么叫集群?就是很多无人机协调一致的运动,这里面用到了一致性思想。

代码中如何体现?管它什么无人机,无人艇,无人飞船,全部都是质点。
如果考虑到通信,划分通信范围;如果考虑到避障,划分防碰撞范围。本质来说都是以无人机质点为中心得一个圆(二维)或者一个球(三维)。

很多论文中会提出一些算法的背景,比如受到生物集群迁徙等行为的影响,牛群,羊群,蜜蜂等等,论文中这么写可以,代码实现要抓住本质!

另外,我这里着重介绍集群,或许有很多同学研究的只是少量的几个无人机编队,我也希望你们能够看下去,因为多的无人机都能编队了,少的当然更可以了。

---------------- 介绍两个人,或者说是两种算法 ----------------

Reynlod和Olfati-Saber,搞过集群,看过相关论文的都知道他俩,也很熟悉下面这两图吧,图2是我代码跑出来的,标准三维集群。

请添加图片描述
Biods模型
请添加图片描述
三维集群模型

1. 首先介绍Biods模型的思想: 分离,内聚,对齐

通俗的来说,就是 靠的太近的无人机彼此分离,以免碰撞;靠的太远的无人机彼此吸引,以免分散;速度对齐,保持一致,这就是一致性的思想。

这是一种 局部的算法 ,每一架无人机通过其通信范围内的邻居无人机的运动状态,适时调整自身的状态。

其代码实现的本质为: 向量
注意,下面的位置和速度都是向量

位置更新,根据当前时刻无人机i的位置向量和当前时刻无人机邻居j的位置向量,求得下一时刻无人机i的位置

Pi(t+1) = Pi_(t) + (Pi_(t)-Pj_(t))/f(||Pi_(t)-Pj_(t)||)
Vi_(t+1) = Vi_(t) + (Vi_(t)-Vj_(t))/g(||Vi_(t)-Vj_(t)||)

速度一样,只是要调参。

Vi_(t+1) = Vi_(t) + (Vi_(t)-Vj_(t))/g(||Vi_(t)-Vj_(t)||)
 

至于无人机之间怎么避碰,是同样的原理。注意,无人机j是无人机i的邻居,什么叫邻居?通信范围内的;那么避碰的时候呢?对,就是防碰撞范围内的。

2.介绍Olfati-Saber模型的思想

另外,介绍一个重要的概念,什么叫势能?在代码中,无人机是怎么运动起来的呢?

所谓的势能,其实就是距离。MTALB仿真,不论是二维还是三维,首先生成一些随机散乱的点,

N = 20%数量
p = 2*rand(2,N);  %位置

那么计算各个点之间的距离,然后自己设置一个势能函数f,就可以求得势能。

F = f(||p(i)-p(j)||)

然后用一个方法就去降低势能,比如常用的梯度下降算法等,就可以不断地迭代,求得无人机每一次的位置。
然后,画出这些位置,无人机就运动起来了。

人工势场法也就是这个意思

看到这里,同学们肯定觉得我说了一些废话,既不给你们看代码,也不给你们看具体的公式。我只是想先让你们理解,树立一个意识,因为论文是需要创新的,创新点在哪里,就是在这些公式里面,很多论文换一个势能函数,换几个公式就是创新了!!!

别着急,后面我会把代码和公式给大家。

动力学方程:
在这里插入图片描述
无人机邻居集合:
在这里插入图片描述
无人机稳定时状态:
在这里插入图片描述
控制方程:
在这里插入图片描述
势能函数:
在这里插入图片描述
平滑函数:
在这里插入图片描述
总势能:
在这里插入图片描述
后面还有很多公式,我就不一一粘贴了,因为我的本意不是将论文的一些公式摆出来,大家自己去找论文看就好了,我是想要讲解一下我的心得。

至于大家最关心的代码问题,如果需要,我会给大家。

无人机避障

避障的本质:就是障碍物给无人机一个反向的作用力。

就像我之前写的,在代码中一切都是质点,只是有些具有范围。
障碍物就是有范围的质点,我们可以获取到它的坐标,怎么获取?感知范围。怎么避障?一个反向的作用力,更新位置。

看到这,还是一脸懵逼么。MATLAB操作的都是矩阵,这个是核心,我们做的研究,只涉及到位置矩阵,速度矩阵,这也是核心。

至于公式,代码,我后期会更新。

无人机目标追踪

目标追踪的本质:就是目标给无人机一个正向的作用力。

和避障相反,无人机感知到目标之后会给其一个正向吸引的作用力。

动态目标怎么办?
要有预测。

此时需要用到的算法有,kalman滤波算法及其衍生算法KF-kalman,UKF-kalman,DKF-kalman。如果是做无人机集群,建议用DKF-kalman。

一致性思想的本质:就是降低差异性,通过邻居的动作调整自身,最后所有无人机协调一致运动。
这一思想在无人机协同控制方程中有体现,在分布式卡尔曼滤波算法中也有体现。

最后,给大家看一下我做的无人机集群的仿真结果吧。

在这里插入图片描述
关于目标追踪,有单目标追踪和多目标追踪。这部分我下次再介绍。

无人机的转弯半径不小于30 m。本质还是二维的路径优化问题,对于求解算法的选择以及模型的假设,都需要根据自己队伍的能力进行选择。需要注意的是,无人机协同避障航迹规划是一个复杂的问题,需要综合考虑多个因素,如传感器准确性、通信延迟、任务优先级等。问题5 当B机的恒定速率在[10,50] m/s内变化、B站点到圆心的距离在[1,10] km内变化(其他参数保持不变)时,问题2中的最优航迹会如何变化?无人机协同避障航迹规划是指多架无人机在共享空域中进行避障飞行,以确保它们之间的安全距离,并完成各自的任务。 个人总结: 无人机个体模型需要考虑惯性,内部噪声、传感器更新延迟、数据处理时延、通讯局域性以及一般环境噪声,其速度控制分量大致可分为四项:趋于期望速度的控制分量,避撞控制分量,对齐控制分量以及边界限制控制分量,当个体在规定区域内时,边界对个体存在斥力,在区域外时,边界限制控制分量使得群体中心趋向区域中心。 存在的问题: 随着生物群体系统观测手段的不断革新,鸽群内部飞行领导等级层级网络结构等之类的研究成果验证了前任的推断,但也出现了与以往研究相悖的结论,Turner关于鸟群群集形成的新假说-通过保持边缘不透 ​针对多无人机编队和躲避障碍物的问题,在传统人工势能的基础上结合距离约束和视线角约束,提出了领航法和人工势能相结合的编队方法.并通过将目标和障碍物信息融入势能函数设计的方法实现追踪目标和躲避障碍物.选择一架无人机为领导者并以其和目标为中心设计虚拟人工势场,使无人机形成编队并以一定的距离和视线角追踪机动目标;以障碍物为中心构建虚拟的排斥力场,同时在编队的势能函数中引入障碍物位置信息反馈,使编队能够随着环境变化而自适应改变,主动躲避障碍;最后通过仿真实验验证了提出的算法. 本文提出了一种新的分布式反馈策略来控制平面上运动点模型运动,形成刚性无环的编队。该方法利用了“目标点”的概念,它的底层有向图可以由一系列Henneberg顶点加法生成,适用于任何二维的编队。结果表明,如果指定领航者和第一个跟随者在不同的位置开始,该方法可以使一组在平面上任意给定初始位置开始的多个运动点以指数速度进入期望的编队. 本系统可采用socket通讯和ROS通讯两种通讯方式,分别实现混合式集群控制和分布式集群控制。实现编队变换、直线编队飞行、三角编队飞行、机间避障四大功能。飞行平台的硬件包括一个笔记本(主控机)和若干架无人机无人机搭载的传感器包括:T265双目相机、JETSON Xavier NX板载计算机、深度相机D435i、WiFi模块,内置基于PX4-ROS的控制模块和SLAM、编队避障等多种算法。适用于无GPS环境下基于视觉的无人机编队定位/导航/避障算法的验证与开发。 机器人跟随人的任务要求移动机器人检测并跟踪选定的目标人,并与目标保持适当的距离。在实际应用中,机器人必须在考虑意外障碍物的情况下不断地估计目标位置,以保持跟随人控制的稳定。本文提出将目标跟随控制避障相结合,使机器人在避障的同时跟随目标。在本设计中,利用RGB-D摄像机获取障碍物和人体特征。深层神经网络(DNN)模型用于在环境中检测和识别用户。将改进的人工势场算法应用于机器人运动规划中,将目标人的位置信息和障碍物信息结合起来。在移动机器人上的实际实验验证了该方法的有效性。 `多无人机集群编队国内外研究现状和发展方向 - 搜狐网 https://m.sohu.com/a/403671784_99986805?trans=010004_pcwzy –编队控制技术最早是针对空间飞行器(主要是卫星)而提出,用于降低卫星的研制与发射成本,提高卫星对地观测的覆盖率。进入21世纪以来,国内外在无人机编队控制方面开展了大量理论探索和研究。例如美国NASA和空军在本世纪初九将其确定为21世纪的关键技术之一。编队控制的具体含义为:当多个无人机组成编队联合飞行时,相互之间要保持固定的几何形态,同时 有朋友留言:正巧,今天得空,写一写。无人机、机器人编队或者是集群控制,说到底,虽然都是多智能体的控制,唯一有区别的在于空间或者平面,但随之带来的问题却衍生出不同的方向。在此稍微叙述下关于无人机的群体编队方面的。最早的研究是在60年代末,美国宾夕法尼亚大学,有一篇博士论文开始研究了关于直升机编队飞行问题。关于编队飞行研究的问题无外乎以下4个:编队队形的生成:如何将多个无人机进行联系起来,完成编队队形...