[发明专利]多约束条件下智能无人飞行器航迹快速规划方法有效

专利信息
申请号: 201911070114.2 申请日: 2019-11-05
公开(公告)号: CN110715664B 公开(公告)日: 2021-04-20
发明(设计)人: 甘建元;李明楚;郭成;李庆;曲坤 申请(专利权)人: 大连理工大学
主分类号: G01C21/20 分类号: G01C21/20;G05D1/10
代理公司: 大连理工大学专利中心 21200 代理人: 隋秀文;温福雪
地址: 116024 辽*** 国省代码: 辽宁;21
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 约束 条件下 智能 无人 飞行器 航迹 快速 规划 方法
【权利要求书】:

1.多约束条件下智能无人飞行器航迹快速规划方法,其特征在于,首先根据地形,在航迹规划前找出飞行区域中的安全位置,确定可进行定位误差校正的校正点坐标及其类型;其次根据目标确定约束条件,即飞行误差增量约束、垂直误差校正约束、水平误差校正约束、按照规划航迹飞行约束以及最小转弯半径约束,并对约束条件的相互作用机理进行分析,然后以完成任务时间最小且能量消耗最少为目标,建立无人飞行器航迹快速规划模型;最后求解模型,确定满足多约束条件的航迹规划路径;具体步骤如下:

(1)分析飞行区域地形,确定校正点坐标及其类型:

令I={i|i=0,1,2,...,n},表示校正点编号集,其中当i=0时,表示起点,i=n时,表示终点;坐标表示校正点i的坐标,其中当i=0时,(x0,y0,z0)表示起点坐标,i=n时,(xn,yn,zn)表示终点坐标;则任意两校正点i和j之间的距离dij表示为

误差校正类型有2种:垂直误差和水平误差,所以引入0-1函数

同时,令vi,v′i分别表示校正点i∈I校正之前和校正之后的垂直误差,hi,h′i分别表示校正点i∈I校正之前和校正之后的水平误差;

(2)以完成任务时间最少、能量消耗最少为优化目标,建立满足约束条件(i)~(iv)的智能无人飞行器航迹规划模型,其中参数α1212,θ,δ,R0由飞行器本身决定,R0为无人飞行器的最小转弯半径;具体如下:

为规划出无人飞行器的航迹,引入0-1函数

令E={e1,e2,…,ej,…}表示无人飞行器航迹的节点集,其中j表示校正点纳入航迹节点集E的顺序,节点ej存放着第j个纳入航迹节点集E的校正点编号,则有

其中,ej(i)表示航迹节点集E的第j位置存放着校正点编号i;M为航迹节点的个数,

对任意航迹节点ej-1(i0),ej(i1),ej+1(i2)∈E={e1,e2,…,ej,…},i0,i1,i2∈I,j∈{1,2,…,M},其中ej-1(i0),ej(i1),ej+1(i2)分别表示航迹E中相邻3个位置即第j-1,j,j+1个位置上分别存放着校正点编号i0,i1,i2;同时,引入虚拟节点e0(0),e0(0)具有起点的所有信息,包括校正点编号、三维坐标和校正点类型;令和表示航迹节点ej(i1)校正之前的垂直误差和水平误差,和表示航迹节点ej(i1)校正之后的垂直误差和水平误差;同理,和表示航迹节点ej+1(i2)校正之前以及校正之后的垂直误差和水平误差,并且满足如下约束条件:

(i)飞行器飞行误差增量

由于飞行器每飞行1m,垂直误差和水平误差将各增加δ个专用单位;因此,航迹节点ej+1(i2)校正之前的垂直误差和水平误差等于上一航迹节点ej(i1)校正之后的垂直误差和水平误差加上飞行误差增量,即

其中,M为航迹节点的个数,表示航迹节点ej(i1)与ej+1(i2)之间的距离;

(ii)飞行器按照规划路径飞行

另外,只有垂直误差和水平误差均小于θ个单位时,飞行器才能够按照规划航迹飞行;

所以,航迹节点ej(i1)校正之前的垂直误差和水平误差均应小于θ,即

(iii)飞行器定位误差校正

无人飞行器在空间飞行过程中需要根据定位误差进行实时定位,此时存在2种情形:

情形1:飞行器垂直误差校正

当飞行器在水平误差校正点进行垂直误差校正时,只有垂直误差不大于α1个单位,水平误差不大于α2个单位时才能进行垂直误差校正,所以令

其中,当rvi=1时表示校正点i可进行垂直误差校正,当rvi=0时,表示校正点i不可进行垂直误差校正;令

svi=ti·rvi

其中,svi表示为校正点i∈I垂直误差是否校正成功,当校正点i为垂直校正点,即校正类型ti=1时,此时svi=1,校正点i垂直误差校正成功;当校正点i为水平校正点,即校正类型ti=0时,此时svi=0,校正点i垂直误差校正失败;

由于飞行器在垂直误差校正点进行垂直误差校正后,其垂直误差变为0,水平误差保持不变,因此,航迹节点ej(i1)校正之后的垂直误差和水平误差表示为

其中,为校正点i1的校正类型,表示为校正点i1是否可进行垂直误差校正;此时,当校正点i1为垂直校正点且时,即垂直误差校正成功,且航迹节点ej(i1)校正之后的垂直误差和水平误差为

情形2:飞行器水平误差校正

当飞行器在水平误差校正点进行水平误差校正时,只有垂直误差不大于β1个单位,水平误差不大于β2个单位时才能进行水平误差校正,所以令

其中,当rhi=1时,表示校正点i可进行水平误差校正,当rhi=0时,表示校正点i不可进行水平误差校正;令

其中,shi表示为校正点i∈I水平误差是否校正成功,当校正点i为水平校正点,即校正类型ti=0时,此时shi=1,校正点i水平误差校正成功;当校正点i为垂直校正点,即校正类型ti=1时,此时shi=0,校正点i水平误差校正失败;

由于飞行器在垂直误差校正点进行水平误差校正后,其水平误差变为0,垂直误差保持不变,因此,航迹节点ej(i1)校正之后的垂直误差和水平误差表示为

其中,为校正点i1的校正类型,表示为校正点i1是否可进行垂直误差校正,此时,当校正点i1为水平校正点且时,即水平误差校正成功,且航迹节点ej(i1)校正之后的垂直误差和水平误差表示为

(iv)飞行器飞行转弯半径

点ej-1,ej,ej+1表示无人飞行器航迹中任意相邻的3个节点,两节点之间的连线代表飞行方向,点ej-1,ej,ej+1的坐标分别是则无人飞行器从节点ej-1飞到节点ej的飞行方向即方向向量为

无人飞行器从节点ej飞到节点ej+1的飞行方向即方向向量为

所以,无人飞行器从节点ej-1飞到节点ej与从节点ej飞到节点ej+1的转弯角度为方向向量与的夹角γ,γ∈[0,π],则有

其中,表示节点ej与ej+1之间的距离,表示节点ej+1与ej+2之间的距离,R为无人飞行器的转弯半径,故

其中,当方向向量与共线时,夹角γ=0或π,此时,γ=0表示无人飞行器继续沿着当前飞行方向飞行,不用转弯;γ=π表示无人飞行器与当前飞行方向的完全相反方向飞行,转弯半径当γ∈(0,π)时,有

相邻航迹节点之间的距离之和尽可能小,即最小化;要求航迹经过校正点,且在该校正点定位误差校正成功,即最小化;确定目标函数为:

则,无人飞行器航迹规划模型如下:

(3)采用基于最速下降的改进Dijkstra算法对无人飞行器航迹规划模型进行求解,确定满足多约束条件的航迹规划路径;具体步骤如下:

给定校正点编号I={i|i=0,1,2,...,n},坐标(xi,yi,zi)i∈I,参数α1212,θ,δ,R0,e1=0,以及航迹节点集E,航迹节点校正之前的定位误差集VH,校正之后的定位误差集VH′;

开始:j=1

Step1:令Ej={e1,e2,...,ej},Ij=I\Ej

Step2:如果n∈Ej,算法终止,转入Step7;否则转入Step3;

Step3:对计算ij与出发点ej的连线投影在起点与终点连线上的长度td(ej,ij),令表示校正点编号ij(1)与出发点ej之间连线投影在起点与终点连线上的长度最大值;

Step4:记

1)当校正点编号ij(1)的类型时,令若且则转入Step7;否则,Ij=Ij\{ij(1)},转入Step3;

2)当校正点编号ij(1)的类型令若且则转入Step7;否则,Ij=Ij\{ij(1)},转入Step3;

Step5:记

1)当|cosγ|=1时,转入Step6;

2)当|cosγ|≠1时,①转弯半径R≥R0时,转入Step6;②转弯半径R<R0时,Ij=Ij\{ij(1)},转入Step3;

Step6:当j≥n时,算法结束,转入Step7;否则j=j+1,转入Step1;

Step7:输出j,ej=ij(1),Ej={e1,e1,...,ej},

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于大连理工大学,未经大连理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201911070114.2/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top