本发明涉及无人机巡查技术领域,具体为一种基于网格离散化的无人机巡查路径优化方法。
背景技术:
无人机技术是近来军用、民用飞行器的一个热点研究领域,在战场勘察、监视、目标定位等军事用途,以及环境探测、航拍摄影、资源勘探、灾情巡查、物流运输等民事用途都有着广泛的应用。
传统的巡查任务通常是依托相关人员进行人工巡查,并且要求工作人员有一定的职业技能,这种传统模式工作量大、运行成本高、巡查效率低。无人机作为一种有动力、可控制、能携带多种任务设备、执行多任务并能重复使用的无人驾驶航空器,拥有携带方便、操作简单、反应迅速、载荷丰富、任务用途广、起飞降落对环境要求低、自主飞行等特点,可以应用于多种领域,完成巡查作业。
但在实际飞行作业中,无人机受到自身续航能力、地形因素等客观条件的约束,对于巡查范围过大的区域,往往无法实现对所有监测区域的巡查作业。因此,如何根据诸多约束条件来优化无人机巡查路径,减少无人机的架次,并提高无人机的巡查覆盖率成为无人机实际应用场景研究的热点。
技术实现要素:
本发明目的是提供一种基于网格离散化的无人机巡查路径优化方法,提高巡查区域覆盖率、减少无人机架次及对巡查区域内目标进行定位,迭代优化后得出无人机的优化飞行路径。
一种基于网格离散化的无人机巡查路径优化方法,包括如下步骤:
本发明以下列假设条件为前提:
(1)无人机飞行高度为h1~h2,飞行速度为v,每架无人机电池能量为e;
(2)无人机与水平地面之间距离为固定值h,无人机位置三维坐标随时可知;
(3)无人机有效巡查范围为区域平面与无人机仰角大于θ且不被障碍物阻隔,所有无人机起降点相同;
(4)假设所有无人机均按优化后的路径自主飞行,无须人工控制,完成任务后自动返回起降点;
(5)假设忽略无人机起飞、降落及转弯过程对续航时间的影响。
步骤s1、从地图软件获取巡查区域的坐标参数;
步骤s2、根据坐标参数进行可视化处理;
步骤s3、对巡查区域的总面积进行离散化处理,网格划分巡查区域,取网格中心为目标点,将巡查区域转化为多个离散目标点;
步骤s4、建立多无人机调度模型,将寻求n架无人机在巡查区域的优化巡查路线转化为求无人机经过离散目标点的优化巡查路线;
步骤s5、采用改进的a*算法,对离散目标点进行路径规划,寻找路径规划最佳目标节点;
步骤s6、根据最佳目标节点,迭代优化后得到无人机的最优飞行路径,输出最优规划路径。
步骤s2中,所述的可视化处理,是通过导入函数读取坐标数据,采用填充函数构建三维空间模型,对巡查区域进行标定,设无人机与水平地面之间的距离固定,根据地形高度的变化,采用无人机控制系统动态调整无人机的飞行高度,使无人机扫描的圆域面积保持不变,以便于对巡查区域进行离散化处理,并可以根据无人机三维坐标对巡查区域内目标进行定位。
步骤s3中,所述的离散化处理,是用无人机扫描面积固定的圆域离散化巡查区域并用圆域进行覆盖,将巡查区域离散为多个圆形网格,并将离散化网格中心标定为具有代表性的离散目标点,将大范围目标区域离散为多个离散目标点,减少计算量,以便于步骤s4的求无人机经过离散目标点的优化巡查路线。
步骤s4,具体是进行多无人机调度建模,得到无人机的覆盖率与架次的优化解。寻求n架无人机在巡查区域的优化巡查路线可转化为求无人机经过离散目标点的优化巡查路线,通过对比不同架次下的巡查覆盖率,在保证覆盖率的同时又找到无人机架次的优化解,建立如下目标方程:
公式(1)中,cr表示覆盖率,
0<∑i∈[1,m]∑j∈[1,m](j-i+1)≤m(2)
0<a(t)+b(t)+c(t)≤e(3)
公式(3)中,a(t)表示每架无人机的运算模块能耗,b(t)表示每架无人机的飞行控制模块能耗,c(t)表示每架无人机的通信模块能耗,t表示时间;
公式(2)的约束条件表示多架次无人机飞过的目标点个数要小于目标点总个数,公式(3)的约束条件表示每架无人机能耗要在电池能量e的约束内。
步骤s5,具体是采用改进的a*算法,对离散目标点进行路径优化,a*算法是通过估算函数来实现的,无人机每走一步都需要计算估算函数的值,该估算函数值最小的节点是无人机下一步需要到达的位置,估算函数的表达式为:
f(n)=g(n)+h(n)(4)
公式(4)中,g(n)是指无人机从路径的起始点到路径规划中节点n所经过的实际路程,函数g(n)的值为实际数值;h(n)是从节点n到路径规划的终点所花费的估算路程,函数h(n)为初始估算函数。函数f(n)是函数g(n)的值与函数h(n)的代数和,表示无人机在整个路径规划中所经过的总路程。
改进的a*算法在初始估算函数h(n)里将二维欧氏距离拓展到三维欧氏距离,并引入了能量损耗约束代价参量,公式如下:
h(n)=α·di,j+β·e(t)(5)
公式(5)中,α表示距离因子,di,j表示空间两点i与j之间的欧式距离,β表示能耗因子,e(t)表示剩余能量,di,j的表达式为:
公式(6)中,xi表示空间点i的x轴坐标,xj表示空间点j的x轴坐标;yi表示空间点i的y轴坐标,yj表示空间点j的y轴坐标;zi表示空间点i的z轴坐标,zj表示空间点j的z轴坐标;
步骤s6的具体实现步骤如下:
step1:初始化,生成open列表和closed列表,open列表保存所有已生成而未考察的节点,closed列表中记录已访问过的节点。
step2:加载初始值,把起始点的信息载入在step1生成的open列表中,在生成的open列表中只包含起始节点,并记做f(n)=h(n)。
step3:查找open列表,若查找后得到open列表中没有数值,则路径起始点规划失败,转向执行step2继续寻找路径规划的起始节点;若open列表内已经加载路径规划的目标节点,则执行step4。
step4:查找函数f(n)的值,利用估算函数计算open列表中的数值,查找列表中所有节点f(n)值的最小的点记为最佳节点bestnode,将把这个节点载入closed列表中,并把这个节点作为当前节点,进行下一步运算。
step5:判断目标点,根据估算函数判断最佳节点是否为路径的目标点。
如果是,那么算法结束,并输出规划出的路径节点;如果不是路径中规定的目标点,就把当前节点的临近节点载入open列表中,进行step3。依次循环直至找到规定的目标节点。
step6:输出路径,保存最佳节点,并将其保存在closed列表中,根据closed列表中的节点输出规划路径。
本发明的有益效果为:本发明提出的一种基于网格离散化的无人机巡查路径优化方法,通过设计优化目标和约束条件,建立多无人机调度模型,在提高巡查区域覆盖率的同时减少了无人机架次,并可以对巡查区域内目标进行定位,为大范围无人机巡查提供了一种优化规划方案。
附图说明
图1为本发明提供的一种基于网格离散化的无人机巡查路径优化方法的流程示意图;
图2为本发明提供的一种基于网格离散化的无人机巡查路径优化方法的目标巡查区域分布图;
图3为本发明提供的一种基于网格离散化的无人机巡查路径优化方法的区域网格离散化示意图;
图4是本发明提供的一种基于网格离散化的无人机巡查路径优化方法的目标定位图。
具体实施方式
下面结合附图和实施例对本发明做进一步阐述,但不是对本发明的限定。
实施例:
本发明提供一种基于网格离散化的无人机巡查路径优化方法,以下列假设条件为前提:
(1)无人机飞行高度为h1~h2,飞行速度为v,每架无人机电池能量为e;
(2)无人机与水平地面之间距离为固定值h,无人机位置三维坐标随时可知;
(3)无人机有效巡查范围为区域平面与无人机仰角大于θ且不被障碍物阻隔,所有无人机起降点相同;
(4)假设所有无人机均按优化后的路径自主飞行,无须人工控制,完成任务后动返回起降点;
(5)假设忽略无人机起飞、降落及转弯过程对续航时间的影响。
如图1所示,一种基于网格离散化的无人机巡查路径优化方法,包括如下步骤:
步骤s1、从地图软件获取巡查区域的坐标参数;
步骤s2、根据坐标参数进行可视化处理;
步骤s3、对巡查区域的总面积进行离散化处理,网格划分巡查区域,取网格中心为目标点,将巡查区域转化为多个离散目标点;
步骤s4、建立多无人机调度模型,将寻求n架无人机在巡查区域的优化巡查路线转化为求无人机经过离散后目标点的优化巡查路线;
步骤s5、采用改进的a*算法,对离散目标点进行路径规划,寻找路径规划最佳目标节点;
步骤s6、根据最佳目标节点,迭代优化后得到无人机的最优飞行路径,输出最优规划路径。
如图2所示,步骤s2中,使用matlab根据坐标参数等进行可视化处理。通过xlsread函数读取坐标数据,并使用mesh函数构建三维空间模型,再使用rectangle函数标定目标区域;考虑到地形高程数据差异,无人机与巡查区域之间的海拔距离会不断变化,导致扫描面积不断变化及其视线被障碍物阻挡等因素,将无人机与水平地面之间的距离固定,根据地形高度的变化动态调整无人机的飞行高度,可以保证无人机扫描圆域面积保持不变,以便于对巡查区域进行离散化处理,并可以根据无人机三维坐标对巡查区域内目标进行定位。
如图3所示,步骤s3中,对巡查区域进行离散化处理。是以无人机固定扫描圆域对巡查区域进行覆盖,将巡查区域离散为多个网格,并将离散化网格中心标定为具有代表性的离散目标点,将大范围目标区域离散为多个离散目标点,减少了计算量;虽然会有空白区域看似没有被巡查到,但考虑其实际情况,无人机从一个目标点飞往下一个目标点时会呈现出一条“带状”的巡查路径,这些空白区域也一定会被扫描到。其次,因为巡查区域边界存在凹凸不平,导致处于边界的某些区域可能不会被扫描到,但其面积相比于总巡查区域来说很小,故这些扫描不到的区域可忽略不计。
步骤s4中,进行多无人机调度建模,寻求n架无人机在巡查区域的优化巡查路线可转化为求无人机经过离散后目标点的优化巡查路线,通过对比不同架次下的巡查覆盖率,在保证覆盖率的同时又找到无人机架次的优化解:
建立目标方程:
公式(1)中,cr表示覆盖率,
0<∑i∈[1,m]∑j∈[1,m](j-i+1)≤m(2)
0<a(t)+b(t)+c(t)≤e(3)
公式(3)中,a(t)表示每架无人机的运算模块能耗,b(t)表示每架无人机的飞行控制模块能耗,c(t)表示每架无人机的通信模块能耗,t表示时间;
公式(2)的约束条件表示多架次无人机飞过的目标点个数要小于目标点总个数,公式(3)的约束条件表示每架无人机能耗要在总能量e的约束内。
通过引入能量约束条件,可以提高无人机续航时间的精确度,有效避免中途无人机能量意外耗尽的情况,提升巡查任务的成功率。
将巡查区域离散为目标点之后,步骤s5中,采用改进的a*算法的离散目标点路径优化,a*算法是通过估算函数来实现的,无人机每走一步都需要计算估算函数的值,该估算函数值最小的节点就是无人机下一步需要到达的位置,估算函数的一般表达式如下:
f(n)=g(n)+h(n)(4)
公式(4)中,g(n)是指无人机从路径的起始点到路径规划中节点n所经过的实际路程,函数g(n)的值为实际数值;h(n)是从节点n到路径规划的终点所花费的估算路程,函数h(n)为初始估算函数。函数f(n)是函数g(n)的值与函数h(n)的代数和,表示无人机在整个路径规划中所经过的总路程。
改进的a*算法在初始估算函数h(n)里将二维欧氏距离拓展到三维欧氏距离,并引入了能量损耗约束代价参量,公式如下:
h(n)=α·di,j+β·e(t)(5)
公式(5)中,α表示距离因子,di,j表示空间两点i与j之间的欧式距离,β表示能耗因子,e(t)表示剩余能量,di,j的表达式为:
公式(6)中,xi表示空间点i的x轴坐标,xj表示空间点j的x轴坐标;yi表示空间点i的y轴坐标,yj表示空间点j的y轴坐标;zi表示空间点i的z轴坐标,zj表示空间点j的z轴坐标;
步骤s6中,具体实现步骤如下:
step1:初始化,生成open和closed列表,open表保存所有已生成而未考察的节点,closed表中记录已访问过的节点。
step2:加载初始值,把起始点的信息载入在step1生成的open列表中,在生成的open列表中只包含起始节点,并记做f(n)=h(n)。
step3:查找open列表,若查找后得到open列表中没有数值,则路径起始点规划失败,转向执行step2继续寻找路径规划的起始节点;若open列表内已经加载路径规划的目标节点,则执行step4。
step4:查找函数f(n)的值,利用估算函数计算open列表中的数值,查找列表中所有节点f(n)值的最小的点记为最佳节点bestnode,将把这个节点载入closed列表中,并把这个节点作为当前节点,进行下一步运算。
step5:判断目标点,根据估算函数判断最佳节点是否为路径的目标点。如果是,那么算法结束,并输出规划出的路径节点;如果不是路径中规定的目标点,就把当前节点的临近节点载入open列表中,进行step3。依次循环直至找到规定的目标节点。
step6:输出路径,保存最佳节点,并将其保存在closed列表中,根据closed列表中的节点输出规划路径。
结合图4,由于无人机飞行高度与水平地面之间的距离固定,无人机位置三维坐标随时可知,当目标位于无人机扫描圆域圆心时,通过无人机三维坐标的高度值减去飞行高度值,即可得出目标的位置坐标,对目标进行精确定位。