动态无人机编队控制方法、装置及存储介质
技术领域
本发明涉及无人机技术领域,尤其涉及动态无人机编队控制方法、装置 及存储介质和电子设备。
背景技术
随着无人机技术的发展和控制***的逐渐成熟,多旋翼无人机编队表演 逐渐成为一种新型的表演形式,具有环保、不受场地限制、可重复使用的优 点。
目前,无人机编队主要有两种表演形式:幕布式静态表演和动画式动态 表演。其中,当进行幕布式静态表演时,无人机编队根据航点信息在空中组 成灯光点阵,利用灯光的亮灭实现图案或文字的展示;当进行动画式动态表 演时,无人机编队依靠无人机在空中飞行位置的变化,组成二维或三维图形, 进一步实现二维或三维图案的动态变换。相比于幕布式静态编队,动态无人 机编队具有图案丰富、动画效果美观、所需无人机数量较少等优点,但同时 对无人机的同步性控制要求更高。
目前,动态无人机编队一般由地面站根据每架无人机的编号上传带有时 间坐标的航点或航迹函数,无人机根据航点或航迹函数得到相应的期望位置, 进而利用位置-速度PID(比例微分积分)算法得到相应的期望速度,进而得 到期望加速度和期望姿态角,从而控制无人机向期望位置飞行。
上述现有的动态无人机编队飞行控制方法存在的问题如下:
一、传统的PID算法根据实际位置与期望位置的误差得到速度控制量, 具有一定的延后性,无法实现无人机对航点或轨迹曲线的实时跟随,难以实 现精确的动画效果;
二、不同无人机自身参数特性不同导致控制时延的不同,相邻无人机极 易发生相撞,进而发生连锁反应,导致编队机群坠毁;
三、在进行位置-速度PID控制时,由于位置误差不恒定,导致无人机的 速度不平滑,出现往复加减速的情况,姿态不稳定,在大风或导航信息不精 确的情况下容易导致无人机的坠毁。此外,由于位置控制误差较大,延迟较 高,对地面规划软件提出了更高的要求,相邻无人机之间的安全距离增大, 导致表演图案连贯性较差,美观性受到影响。
发明内容
本发明实施例提出动态无人机编队控制方法、装置及存储介质和电子设 备,以提高动态无人机编队控制的精度。
本发明的技术方案是这样实现的:
一种动态无人机编队控制方法,该方法包括:
编队无人机接收并保存地面站发来的动态编队的位置-时间函数和编队 控制开始时刻;
当编队控制开始时刻到达时,每隔一个预设时间步长,根据所述位置- 时间函数计算得到本无人机的当前期望位置和当前期望速度;
获取本无人机的当前真实位置;
根据所述当前期望位置和所述当前真实位置,采用比例积分微分PID算 法对所述当前期望速度进行调整;
根据调整后的当前期望速度,控制本无人机飞行。
所述编队无人机接收并保存地面站发来的动态编队的位置-时间函数和 编队控制开始时刻进一步包括:
所述编队无人机接收地面站发来的局部坐标系的原点和X、Y、Z轴信 息,其中,所述局部坐标系为:以预设点为原点,以预设方向为X轴正向, 以X轴垂直向上或向下方向为Z轴方向,并根据右手定则确定Y轴正向的 坐标系;且,
所述位置-时间函数中的位置为局部坐标系下的位置;
所述获取本无人机的当前真实位置为:
获取本无人机当前的经纬度和海拔高度,并结合局部坐标系的原点和X、 Y、Z轴信息,计算得到本无人机在局部坐标系下的当前真实位置。
所述采用PID算法对所述当前期望速度进行调整包括:
对于本无人机在X、Y、Z三个方向中每个方向上的调整后的当前期望 速度分量,根据如下方式得到:
计算本无人机在该方向上的期望位置分量与真实位置分量的差值,将该 差值乘以预设的比例系数得到本无人机在该方向上的调整后的期望速度的比 例分量;
将本无人机在该方向上的期望速度分量乘以预设的微分系数,得到本无 人机在该方向上的调整后的期望速度的微分分量;
将本无人机在该方向上的调整后的期望速度的比例分量和微分分量相 加,得到本无人机在该方向上的调整后的期望速度分量。
所述采用PID算法对所述当前期望速度进行调整包括:
对于本无人机在X、Y、Z三个方向中每个方向上的调整后的当前期望 速度分量,根据如下方式得到:
计算本无人机在该方向上的期望位置分量与真实位置分量的差值,将该 差值乘以预设的比例系数得到本无人机在该方向上的调整后的期望速度的比 例分量;
将本无人机在该方向上的期望速度分量乘以预设的微分系数,得到本无 人机在该方向上的调整后的期望速度的微分分量;
计算本无人机在该方向上的期望位置分量与真实位置分量的累积误差, 将该累积误差乘以预设的积分系数,得到本无人机在该方向上的调整后的期 望速度的积分分量;
将本无人机在该方向上的调整后的期望速度的比例分量、微分分量和积 分分量相加,得到本无人机在该方向上的调整后的期望速度分量。
所述位置-时间函数中的时间参数以编队控制开始时刻作为0时刻;
所述根据所述位置-时间函数计算得到本无人机的当前期望位置和当前 期望速度包括:
计算当前时刻与编队控制开始时刻的相对时长,将该相对时长作为时间 参数代入所述位置-时间函数,得到本无人机的当前期望位置;
对所述位置-时间函数以时间参数求微分,得到速度-时间函数,将所述 相对时长作为时间参数代入该速度-时间函数,得到本无人机的当前期望速 度。
一种动态无人机编队控制装置,该装置位于无人机的飞行控制器上,该 装置包括:
接收和保存模块,接收并保存地面站发来的动态编队的位置-时间函数和 编队控制开始时刻;
期望位置和速度计算模块,当编队控制开始时刻到达时,每隔一个预设 时间步长,根据接收和保存模块保存的所述位置-时间函数计算得到本无人机 的当前期望位置和当前期望速度,将本无人机的当前期望位置和当前期望速 度发送给速度调整模块;
速度调整模块,接收期望位置和速度计算模块发来的本无人机的当前期 望位置和当前期望速度,获取本无人机的当前真实位置,根据所述当前期望 位置和所述当前真实位置,采用比例积分微分PID算法对所述当前期望速度 进行调整;
飞行控制模块,根据调整后的当前期望速度,控制本无人机飞行。
所述接收和保存模块进一步包括:
接收地面站发来的局部坐标系的原点和X、Y、Z轴信息,其中,所述 局部坐标系为:以预设点为原点,以预设方向为X轴正向,以X轴垂直向上 或向下方向为Z轴方向,并根据右手定则确定Y轴正向的坐标系;且,所述 位置-时间函数中的位置为局部坐标系下的位置;
所述速度调整模块获取本无人机的当前真实位置为:
获取本无人机当前的经纬度和海拔高度,并结合局部坐标系的原点和X、 Y、Z轴信息,计算得到本无人机在局部坐标系下的当前真实位置。
所述速度调整模块采用PID算法对所述当前期望速度进行调整包括:
对于本无人机在X、Y、Z三个方向中每个方向上的调整后的当前期望 速度分量,根据如下方式得到:
计算本无人机在该方向上的期望位置分量与真实位置分量的差值,将该 差值乘以预设的比例系数得到本无人机在该方向上的调整后的期望速度的比 例分量;
将本无人机在该方向上的期望速度分量乘以预设的微分系数,得到本无 人机在该方向上的调整后的期望速度的微分分量;
将本无人机在该方向上的调整后的期望速度的比例分量和微分分量相 加,得到本无人机在该方向上的调整后的期望速度分量。
所述速度调整模块采用PID算法对所述当前期望速度进行调整包括:
对于本无人机在X、Y、Z三个方向中每个方向上的调整后的当前期望 速度分量,根据如下方式得到:
计算本无人机在该方向上的期望位置分量与真实位置分量的差值,将该 差值乘以预设的比例系数得到本无人机在该方向上的调整后的期望速度的比 例分量;
将本无人机在该方向上的期望速度分量乘以预设的微分系数,得到本无 人机在该方向上的调整后的期望速度的微分分量;
计算本无人机在该方向上的期望位置分量与真实位置分量的累积误差, 将该累积误差乘以预设的积分系数,得到本无人机在该方向上的调整后的期 望速度的积分分量;
将本无人机在该方向上的调整后的期望速度的比例分量、微分分量和积 分分量相加,得到本无人机在该方向上的调整后的期望速度分量。
所述接收和保存模块接收和保存的位置-时间函数中的时间参数以编队 控制开始时刻作为0时刻;
所述期望位置和速度计算模块根据接收和保存模块保存的所述位置-时 间函数计算得到本无人机的当前期望位置和当前期望速度包括:
计算当前时刻与编队控制开始时刻的相对时长,将该相对时长作为时间 参数代入所述位置-时间函数,得到本无人机的当前期望位置;
对所述位置-时间函数以时间参数求微分,得到速度-时间函数,将所述 相对时长作为时间参数代入该速度-时间函数,得到本无人机的当前期望速 度。
一种非瞬时计算机可读存储介质,所述非瞬时计算机可读存储介质存储 指令,所述指令在由处理器执行时使得所述处理器执行如上任一项所述的动 态无人机编队控制方法的步骤。
一种电子设备,包括如上所述的非瞬时计算机可读存储介质、以及可访 问所述非瞬时计算机可读存储介质的所述处理器。
本发明实施例根据无人机编队的位置-时间函数计算得到本无人机的当 前期望位置和当前期望速度;根据当前期望位置和当前真实位置,采用PID 算法对当前期望速度进行调整,实现了无人机对航点或轨迹曲线的实时跟随, 提高了动态无人机编队控制的精度。
附图说明
图1为本发明一实施例提供的动态无人机编队控制方法流程图;
图2为本发明另一实施例提供的动态无人机编队控制方法流程图;
图3为本发明实施例提供的动态无人机编队控制装置的结构示意图。
具体实施方式
下面结合附图及具体实施例对本发明再作进一步详细的说明。
图1为本发明一实施例提供的动态无人机编队控制方法流程图,其具体 步骤如下:
步骤101:对于动态编队中的每一无人机,该无人机接收并保存地面站 发来的动态编队的位置-时间函数和编队控制开始时刻。
步骤102:当编队控制开始时刻到达时,该无人机每隔一个预设时间步 长,根据位置-时间函数计算得到本无人机的当前期望位置和当前期望速度。
步骤103:该无人机获取本无人机的当前真实位置。
步骤104:该无人机根据当前期望位置和当前真实位置,采用PID算法 对所述当前期望速度进行调整。
步骤105:该无人机根据调整后的当前期望速度,控制本无人机飞行。
在一可选实施例中,步骤101中,无人机接收并保存地面站发来的动态 编队的位置-时间函数和编队控制开始时刻进一步包括:
无人机接收地面站发来的局部坐标系的原点和X、Y、Z轴信息,其中, 局部坐标系为:以预设点如:本次编队中的一个无人机的位置为原点,以预 设方向如:该无人机机头指向为X轴正向,以X轴垂直向上或向下方向为Z 轴方向,并根据右手定则确定Y轴正向的坐标系;且,位置-时间函数中的 位置为局部坐标系下的位置;
步骤103中,获取本无人机的当前真实位置为:
获取本无人机当前的经纬度和海拔高度,并结合局部坐标系的原点和X、 Y、Z轴信息,计算得到本无人机在局部坐标系下的当前真实位置。
在一可选实施例中,步骤104中,采用PID算法对所述当前期望速度进 行调整包括:
对于本无人机在X、Y、Z三个方向中每个方向上的调整后的当前期望 速度分量,根据如下方式得到:
计算本无人机在该方向上的期望位置分量与真实位置分量的差值,将该 差值乘以预设的比例系数得到本无人机在该方向上的调整后的期望速度的比 例分量;
将本无人机在该方向上的期望速度分量乘以预设的微分系数,得到本无 人机在该方向上的调整后的期望速度的微分分量;
将本无人机在该方向上的调整后的期望速度的比例分量和微分分量相 加,得到本无人机在该方向上的调整后的期望速度分量。
在一可选实施例中,步骤104中,采用PID算法对所述当前期望速度进 行调整包括:
对于本无人机在X、Y、Z三个方向中每个方向上的调整后的当前期望 速度分量,根据如下方式得到:
计算本无人机在该方向上的期望位置分量与真实位置分量的差值,将该 差值乘以预设的比例系数得到本无人机在该方向上的调整后的期望速度的比 例分量;
将本无人机在该方向上的期望速度分量乘以预设的微分系数,得到本无 人机在该方向上的调整后的期望速度的微分分量;
计算本无人机在该方向上的期望位置分量与真实位置分量的累积误差, 将该累积误差乘以预设的积分系数,得到本无人机在该方向上的调整后的期 望速度的积分分量;
将本无人机在该方向上的调整后的期望速度的比例分量、微分分量和积 分分量相加,得到本无人机在该方向上的调整后的期望速度分量。
在一可选实施例中,步骤101中的位置-时间函数中的时间参数以编队控 制开始时刻作为0时刻;
步骤102中,根据位置-时间函数计算得到本无人机的当前期望位置和当 前期望速度包括:
计算当前时刻与编队控制开始时刻的相对时长,将该相对时长作为时间 参数代入位置-时间函数,得到本无人机的当前期望位置;
对位置-时间函数以时间参数求微分,得到速度-时间函数,将该相对时 长作为时间参数代入该速度-时间函数,得到本无人机的当前期望速度。
图2为本发明另一实施例提供的动态无人机编队控制方法流程图,其具 体步骤如下:
步骤201:按照1~N的顺序依次对所有动态编队无人机进行编号。
其次,N为编队无人机的总数。
步骤202:当所有编队无人机按照动态表演要求的初始位置摆放在起飞 场地时,将其中一无人机的初始位置作为局部坐标系原点,将该无人机机头 指向作为局部坐标系X轴的正向,Z轴相对X轴垂直向下,Y轴正向在水平 平面内根据右手定则得到。
为提高安全性,两两无人机之间的初始间距d满足:1m(米)≤d≤2m。
为方便起见,可将局部坐标系原点所在位置的无人机编号为1号机。
步骤203:地面站根据无人机动态编队所需表演的图案或动画,利用路 径规划算法对所有无人机进行路径规划,得到每一无人机在局部坐标系下的 位置-时间函数(xi(t),yi(t),zi(t)),将每一无人机在局部坐标系下的位置- 时间函数(xi(t),yi(t),zi(t))发送给对应无人机,i=1,2,3,…,N。
其中,(xi(t),yi(t),zi(t))中的t=0时刻为无人机动态编队控制开始时 刻,(xi(t),yi(t),zi(t))可微。
需要说明的是,利用路径规划算法如:A*算法、蚁群算法等对所有无人 机进行路径规划,得到每一无人机在局部坐标系下的位置-时间函数 (xi(t),yi(t),zi(t))属于成熟技术,在此不再赘述。
在进行路径规划时,需要保证任一时刻两两无人机的距离都大于预先规 定的安全距离。
步骤204:地面站将无人机的解锁时刻、编队控制开始时刻、局部坐标 系的参数信息(包括:原点的经纬度和海拔以及X、Y、Z轴的方向信息) 发送给所有编队无人机,并进行反馈校验,确保所有无人机都接收到。
步骤205:对于每一编队无人机,当该无人机发现到达解锁时刻时,解 锁,当该无人机发现到达编队控制开始时刻时,每隔一个时间间隔Δt,执行 如下步骤206-209:
Δt为预先设定的编队控制循环的时间步长,其具体取值可根据编队控制 精度的需要进行设置。
步骤206:该无人机计算当前时刻与编队控制开始时刻的相对时长txd, 根据txd和位置-时间函数(xi(t),yi(t),zi(t)),得到自己的当前期望位置 (xi(txd),yi(txd),zi(txd))和期望速度(xi′(txd),yi′(txd),zi′(txd)),i为该无 人机的编号。
根据位置-时间函数(xi(t),yi(t),zi(t))对时间t求微分得到对应的速度 -时间函数(xi′(t),yi′(t),zi′(t))。
由于位置-时间函数(xi(t),yi(t),zi(t))是将无人机的动态编队控制开 始时刻作为时间参数t的0时刻,因此,在计算无人机的当前期望位置时, 应该将当前时刻与编队控制开始时刻的相对时长txd代入该函数的时间参数 t。
在实际应用中,由于GPS模块所接收到的当前时间信息具有统一性,因 此无人机可利用GPS模块得到当前绝对时间,再减去编队控制开始时刻,即 可得到相对时间txd。当然,也可由内部时钟,或者与地面站或其他无人机进 行时间同步等方式获得当前绝对时间。
步骤207:该无人机获取自己当前的经纬度和海拔高度,并结合局部坐 标系的参数信息(包括:原点的经纬度和海拔高度以及X、Y、Z轴的方向 信息),利用等距方位投影等坐标转换算法,得到自己在局部坐标系下的当 前真实位置(xi_T(txd),yi_T(txd),zi_T(txd))。
步骤208:该无人机利用PID算法,对自己的当前期望速度进行调整, 得到自己在局部坐标系下三个方向X、Y、Z上的调整后的期望速度分量: vx_E(txd)、vy_E(txd)和vz_E(txd):
vx_E(txd)=px(xi(txd)-xi_T(txd))+dx·x'i(txd)+Ix(txd)
vy_E(txd)=py(yi(txd)-yi_T(txd))+dy·y'i(txd)+Iy(txd)
vz_E(txd)=pz(zi(txd)-zi_T(txd))+dz·z'i(txd)+Iz(txd)
其中,
Ix(txd)=Ix(txd-Δt)+ix(xi(txd)-xi_T(txd))
Iy(txd)=Iy(txd-Δt)+iy(yi(txd)-yi_T(txd))
Iz(txd)=Iz(txd-Δt)+iz(zi(txd)-zi_T(txd))
且,Ix(0)=0,Iy(0)=0,Iz(0)=0,Ix(t),Iy(t),Iz(t)分别为无人机在X、Y、 Z三个方向上的位置误差积分量。
其中,px,py,pz分别为X、Y、Z三个方向上的比例系数,ix,iy,iz分别 为X、Y、Z三个方向上的积分系数,dx,dy,dz分别为X、Y、Z三个方向上 的微分系数,Δt为编队控制循环的时间步长,px,py,pz,ix,iy,iz和dx,dy,dz的具体取值为预先经过多次试验得到的。
在实际应用中,在用PID算法计算vx_E(txd)、vy_E(txd)和vz_E(txd)时, 也可不考虑积分项,即:
vx_E(txd)=px(xi(txd)-xi_T(txd))+dx·x'i(txd)
vy_E(txd)=py(yi(txd)-yi_T(txd))+dy·y'i(txd)
vz_E(txd)=pz(zi(txd)-zi_T(txd))+dz·z'i(txd)
步骤209:该无人机根据当前自己在局部坐标系下三个方向X、Y、Z上 的调整后的期望速度分量:vx_E(txd)、vy_E(txd)和vz_E(txd),计算得到当 前自己的期望加速度和期望姿态角,根据期望姿态角得到期望姿态角速率, 根据期望姿态角速率并结合混控算法得到电机的PWM(脉冲宽度调制)波, 根据电机的PWM波控制无人机飞行。
在根据调整后的期望速度计算期望加速度和期望姿态时,可仍然采用 PID算法进行计算,本算法属于成熟算法,在此不作赘述。
图3为本发明实施例提供的动态无人机编队控制装置的结构示意图,该 装置位于无人机的飞行控制器上,该装置主要包括:接收和保存模块31、期 望位置和速度计算模块32、速度调整模块33和飞行控制模块34,其中:
接收和保存模块31,接收并保存地面站发来的动态编队的位置-时间函 数和编队控制开始时刻,将编队控制开始时刻发送给期望位置和速度计算模 块32。
期望位置和速度计算模块32,当编队控制开始时刻到达时,每隔一个预 设时间步长,根据接收和保存模块31保存的位置-时间函数计算得到本无人 机的当前期望位置和当前期望速度,将本无人机的当前期望位置和当前期望 速度发送给速度调整模块33。
速度调整模块33,接收期望位置和速度计算模块32发来的本无人机的 当前期望位置和当前期望速度,获取本无人机的当前真实位置,根据当前期 望位置和当前真实位置,采用PID算法对当前期望速度进行调整,将调整后 的当前期望速度发送给飞行控制模块34。
飞行控制模块34,接收速度调整模块33发来的调整后的当前期望速度, 根据调整后的当前期望速度,控制本无人机飞行。
在一可选实施例中,接收和保存模块31进一步包括:
接收地面站发来的局部坐标系的原点和X、Y、Z轴信息,其中,所述 局部坐标系为:以预设点如:本次编队中的一个无人机的位置为原点,以预 设方向如:该无人机机头指向为X轴正向,以X轴垂直向上或向下方向为Z 轴方向,并根据右手定则确定Y轴正向的坐标系;且,位置-时间函数中的 位置为局部坐标系下的位置;
速度调整模块33获取本无人机的当前真实位置为:
获取本无人机当前的经纬度和海拔高度,并结合局部坐标系的原点和X、 Y、Z轴信息,计算得到本无人机在局部坐标系下的当前真实位置。
在一可选实施例中,速度调整模块33采用PID算法对当前期望速度进 行调整包括:
对于本无人机在X、Y、Z三个方向中每个方向上的调整后的当前期望 速度分量,根据如下方式得到:
计算本无人机在该方向上的期望位置分量与真实位置分量的差值,将该 差值乘以预设的比例系数得到本无人机在该方向上的调整后的期望速度的比 例分量;
将本无人机在该方向上的期望速度分量乘以预设的微分系数,得到本无 人机在该方向上的调整后的期望速度的微分分量;
将本无人机在该方向上的调整后的期望速度的比例分量和微分分量相 加,得到本无人机在该方向上的调整后的期望速度分量。
在一可选实施例中,速度调整模块33采用PID算法对当前期望速度进 行调整包括:
对于本无人机在X、Y、Z三个方向中每个方向上的调整后的当前期望 速度分量,根据如下方式得到:
计算本无人机在该方向上的期望位置分量与真实位置分量的差值,将该 差值乘以预设的比例系数得到本无人机在该方向上的调整后的期望速度的比 例分量;
将本无人机在该方向上的期望速度分量乘以预设的微分系数,得到本无 人机在该方向上的调整后的期望速度的微分分量;
计算本无人机在该方向上的期望位置分量与真实位置分量的累积误差, 将该累积误差乘以预设的积分系数,得到本无人机在该方向上的调整后的期 望速度的积分分量;
将本无人机在该方向上的调整后的期望速度的比例分量、微分分量和积 分分量相加,得到本无人机在该方向上的调整后的期望速度分量。
在一可选实施例中,接收和保存模块31接收和保存的位置-时间函数中 的时间参数以编队控制开始时刻作为0时刻;
期望位置和速度计算模块32根据位置-时间函数计算得到本无人机的当 前期望位置和当前期望速度包括:
计算当前时刻与编队控制开始时刻的相对时长,将该相对时长作为时间 参数代入位置-时间函数,得到本无人机的当前期望位置;
对位置-时间函数以时间参数求微分,得到速度-时间函数,将相对时长 作为时间参数代入该速度-时间函数,得到本无人机的当前期望速度。
本发明实施例还提供一种非瞬时计算机可读存储介质,该非瞬时计算机 可读存储介质存储指令,该指令在由处理器执行时使得处理器执行如步骤 101-105,或者步骤201-209所述的动态无人机编队控制方法的步骤。
本发明实施例还提供一种电子设备,包括如上所述的非瞬时计算机可读 存储介质、以及可访问所述非瞬时计算机可读存储介质的上述处理器。
本发明实施例的有益技术效果如下:
通过根据无人机编队的位置-时间函数计算得到本无人机的当前期望位 置和当前期望速度;根据当前期望位置和当前真实位置,采用PID算法对当 前期望速度进行调整,实现了无人机对航点或轨迹曲线的实时跟随,提高了 动态无人机编队控制的精度;
另外,通过建立统一时间轴,基于相对时间和位置-时间函数进行编队控 制,以及建立统一局部坐标系,将所有编队无人机的经纬度和海拔高度信息 转换到统一坐标系下进行计算,避免了不同无人机参数特性的差异,减少了 无人机同步时延,降低了无人机发生碰撞的概率,进一步提高了编队控制的 精度;
另外,在采用PID算法对速度进行调整时,考虑了位置误差的积分量, 进一步提高了位置控制的精度,从而进一步提高了编队控制的精度。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在 本发明保护的范围之内。