无人机盘旋跟踪智能控制方法、装置、电子设备和存储介质

专利检索2022-05-10  4



1.本公开属于无人机导航、制导与控制领域,特别涉及一种无人机盘旋跟踪智能控制方法、装置、电子设备和存储介质。


背景技术:

2.伴随着四旋翼无人机技术的快速发展,通过四旋翼无人机进行目标跟踪在军用和民用领域获得了广泛的应用,比如边界巡防、救灾防护、运输护航等。
3.盘旋跟踪是一种特殊的目标跟踪方式:四旋翼无人机在跟踪过程中保持与移动目标之间的相对速度、高度和水平距离不变。
4.李雅普诺夫制导向量法可以通过移动目标与无人机的相对状态产生制导指令,从而引导无人机按照预定的半径盘旋跟踪移动目标。在不考虑四旋翼无人机控制约束的情况下,可以将制导指令看作外环控制然后直接利用反步控制的方法设计控制指令。按照这个思路,文献《quadrotor circumnavigation of an unknown moving target using camera vision

based measurements》设计了包含五个反步操作的控制方法,其控制结构与多回路pid控制是一致的。该方法的缺点是不能在控制器设计过程中考虑无人机的控制约束。
5.相对地,模型预测控制(mpc)的优势在于处理系统约束。但是,mpc难以求解,导致其只适用于低频控制系统。比如,只将mpc用于外回路的路径规划,在内回路则用计算效率高的pid控制方法。为了解决mpc求解困难的问题,显式mpc方法采用离线求解加在线查表的方式来加速计算,mpc的离线解往往是分段线性的形式。随着预测时域、系统维数、控制约束的增加,需要控制域的数量也将指数增加。这会消耗极大的内存空间,也将增大查表的难度。


技术实现要素:

6.本公开的目的是克服现有技术的不足之处,提出一种无人机盘旋跟踪智能控制方法、装置、电子设备和存储介质。本公开不需要在线求解优化问题,直接用深度神经网络控制四旋翼无人机完成对移动目标的盘旋跟踪任务。本公开计算效率高,便于在可编程门阵列(fpga)上并行实现。
7.本公开第一方面实施例提出一种无人机盘旋跟踪智能控制方法,包括:
8.在每个采样时刻,获取待跟踪目标的位置和线速度以及无人机的位置;
9.利用所述待跟踪目标的位置和线速度以及无人机的位置,生成所述无人机的参考轨迹;
10.根据预设的深度神经网络,利用所述无人机的参考轨迹和所述无人机的状态,得到所述无人机的控制输入,以实现所述无人机对所述待跟踪目标的环绕跟踪。
11.在本公开的一个实施例中,所述无人机为四旋翼无人机。
12.在本公开的一个实施例中,所述深度神经网路的输入为所述参考轨迹中初始参考位置后第一个参考位置及所述无人机的状态,其中所述初始参考位置为所述无人机的位
置。
13.在本公开的一个实施例中,所述利用所述待跟踪目标的位置和线速度以及无人机的位置,生成所述无人机的参考轨迹,包括:
14.1)记当前采样时刻为k时刻;在k时刻,所述无人机的位置为[x
q
(k),y
q
(k),z
q
(k)]
t

[0015]
令计数j=0,p
ref
(0|k)=[x
q
(k),y
q
(k),z
q
(k)]
t

[0016]
其中,p
ref
(j|k)=[x
ref
(j|k),y
ref
(j|k),z
ref
(j|k)]t表示k时刻的第j个参考位置,x
q
(k),y
q
(k),z
q
(k)分别表示无人机k时刻在x、y、z轴上的坐标,p(k)表示k时刻待跟踪目标的位置,表示对待跟踪目标位置的估计,分别表示对目标在x、y、z轴上坐标的估计;
[0017]
2)对j进行判定:如果j>n
p
,则执行步骤4);否则,执行如下操作:
[0018][0019][0020][0021][0022]
p
ref
(j 1|k)=p
ref
(j|k) τv
ref
(j 1|k)
[0023][0024]
其中,n
p
为预测时域,r
d
为期望半径,z
d
为期望高度;v(k)表示k时刻待跟踪目标的线速度;e
x
表示参考轨迹k时刻的第j个x轴上的坐标x
ref
(j|k)与目标在x轴上的坐标估计之间的误差,e
y
表示参考轨迹k时刻的第j个y轴上的坐标y
ref
(j|k)与目标在y轴上的坐标估计之间的误差,r表示向量[e
x
,e
y
]
t
的长度,tanh(
·
)表示标准双曲正切函数,τ表示采样时间间隔;z
ref
(j|k)表示z轴上k时刻的第j个参考坐标,v
ref
(j|k)表示k时刻的第j个参考速度,z
ref
(j|k)表示z轴上k时刻的第j个参考坐标,v
ref
(j|k)表示k时刻的第j个参考速度;
[0025]
3)令j=j 1,重新返回步骤2);
[0026]
4)输出参考轨迹x
ref
(j|k)=col(p
ref
(j|k),03×1,v
ref
(j|k),03×1),j=0,1,2,...,n
p
1。
[0027]
在本公开的一个实施例中,在所述根据预设的深度神经网络,利用所述无人机的参考轨迹和所述无人机的状态,得到所述无人机的控制输入,以实现所述无人机对所述待跟踪目标的环绕跟踪之前,还包括:
[0028]
训练所述深度神经网络;
[0029]
其中,所述训练所述深度神经网络包括:
[0030]
1)构建一个多层全连接的深度神经网络;
[0031]
2)生成训练样本数据集;
[0032]
其中所述训练样本数据集中每个训练数据样本为{x(k),p
ref
(j|k),v
ref
(j|k),u
(k)},x(k)为k时刻无人机的状态,u(k)表示k时刻的无人机控制输入;
[0033]
3)利用所述训练样本数据集对所述深度神经网络进行训练,训练时,所述深度神经网络的输入为s(k)=col(x(k),p
ref
(j|k),v
ref
(j|k)),输出为u(k);当达到预设的训练次数阈值时,所述深度神经网络训练完毕。
[0034]
在本公开的一个实施例中,所述训练样本数据集的生成方法如下:
[0035]
1)设定待跟踪目标初始位置的上界p
u
和下界p
l
,待跟踪目标初始速度的上界v
u
和下界v
l
,无人机初始状态的上界x
u
和下界x
l
;设定样本数量阈值s,初始化样本数量计数s=1;
[0036]
2)对样本数量计数s进行判定:
[0037]
如果s>s,则训练样本数据集构建完毕;否则,进入步骤3);
[0038]
3)在步骤1)设定的上界和下界的范围内随机生成一组x(k)、p(k)和v(k);利用该组x(k)、p(k)和v(k),生成参考轨迹x
ref
(j|k)=col(p
ref
(j|k),03×1,v
ref
(j|k),03×1),j=0,1,2,...,n
p
1;
[0039]
4)计算最优控制序列δu
*
,得到k时刻无人机的最优控制输入u(k)=u
ref
δu
*
(0|k),其中,u
ref
为无人机的参考控制输入,δu
*
=col(δu
*
(0|k),...,δu
*
(n
c

1|k));
[0040]
5)将{x(k),p
ref
(1|k),v
ref
(1|k),u(k)}作为一个训练数据样本存入训练样本数据集
[0041]
6)令s=s 1,重新返回步骤2)。
[0042]
在本公开的一个实施例中,所述计算最优控制序列δu
*
,包括:
[0043]
1)当无人机确定待跟踪目标后,构建目标运动学模型如下:
[0044]
p(k 1)=p(k) τv(k)
[0045]
2)建立无人机的连续时间动力学模型如下:
[0046][0047][0048]
其中,ξ=[x
q
,y
q
,z
q
]
t
表示无人机在惯性坐标系下的三维位置,x
q
,y
q
,z
q
分别表示无人机在x、y、z轴上的坐标,下标q表示无人机,上标t表示向量转置,η=[φ,θ,ψ]
t
表示无人机相对惯性坐标系的三轴姿态角,分别对应俯仰角、横滚角、航向角,ξ和η的一阶、二阶导数分别为和m表示无人机的质量,g表示无人机的重力加速度,r(η)表示无人机从本体坐标系到惯性坐标系的旋转矩阵,j(η)表示雅克比矩阵,j
‑1(η)表示j(η)的逆矩阵,表示科里奥利矩阵,t
b
表示无人机本体坐标系下的合力,τ
b
表示无人机在本体坐标系下的合力矩;t
b
和τ
b
由无人机的各旋翼转速ω
i
,i∈{1,2,3,4}决定:
[0049][0050]
[0051]
其中表示无人机第i个旋翼的控制输入,下标i表示无人机四个旋翼的编号,表示控制输入的上界,d
c
和l
c
分别表示无人机的阻力系数和升力系数,l表示无人机的质心到旋翼中心的距离;
[0052]
3)令表示无人机的状态,u=col(u1,u2,u3,u4)表示无人机的控制输入,col(
·
)表示列向量化函数,则将步骤2)中的连续时间动力模型写成如下的紧凑形式:
[0053][0054]
其中表示x的一阶导数;
[0055]
得到如下离散时间的线性时变系统状态方程:
[0056]
x(k 1)=a
k
x(k) b
k
u(k)
[0057]
其中表示该状态方程的状态转移矩阵,表示该状态方程的输入矩阵,i表示单位矩阵,x(k)表示k时刻的无人机的状态,u(k)表示k时刻的无人机控制输入;
[0058]
4)设定预测时域n
p
和控制时域n
c

[0059]
定义:
[0060]
δx(i|k)=x(i|k)

x
ref
(i 1|k)
[0061]
δu(i|k)=u(i|k)

u
ref
[0062]
δx=col(δx(1|k),...,δx(n
p
|k))
[0063]
δu=col(δu(0|k),...,δu(n
c

1|k))
[0064]
其中,δx(i|k)表示无人机在k时刻的第i个预测状态x(i|k)与参考轨迹在k时刻的第i 1个参考状态x
ref
(i 1|k)的状态误差,δu(i|k)表示无人机在k时刻的第i个控制输入u(i|k)与参考考控制输入u
ref
的输入误差,无人机的参考控制输入u
ref
=[u
ref
,u
ref
,u
ref
,u
ref
]
t
表示可以使得无人机悬停的控制输入,u
ref
为无人机各旋翼的参考控制输入;δx表示由δx(1|k),...,δx(n
p
|k)组成的状态误差向量,δu由δu(0|k),...,δu(n
c

1|k)组成的输入误差向量;
[0065]
将步骤3)中离散线性时间的时变系统状态方程转化为如下的误差方程:
[0066][0067]
其中,
[0068]
[0069][0070][0071]
r(i|k)=a
k
x
ref
(i|k) b
k
u
ref

x
ref
(i 1|k),i=1,2,...,n
p
[0072]
其中a
k
表示步骤3)中状态方程的状态转移矩阵,b
k
表示步骤3)中状态方程的输入矩阵,表示误差方程的状态转移矩阵,表示误差方程的输入矩阵,表示误差方程的偏置矩阵,r(i|k)表示k时刻的第i个偏置向量;
[0073]
5)设定状态权重矩阵q和控制权重矩阵r;
[0074]
用二次规划方法求解如下的模型预测控制问题,得到最优控制序列δu
*
=col(δu
*
(0|k),...,δu
*
(n
c

1|k)):
[0075][0076]
满足:
[0077]
其中,
[0078][0079][0080][0081][0082]
其中,表示向量δu中的每一个元素都属于区间h表示输入权值矩阵,g表示输入权值向量,表示q的增广矩阵,表示r的增广矩阵。
[0083]
本公开第二方面实施例提出一种无人机盘旋跟踪智能控制装置,包括:
[0084]
采样模块,用于在每个采样时刻,获取待跟踪目标的位置和线速度以及无人机的位置;
[0085]
参考轨迹生成模块,用于利用所述待跟踪目标的位置和线速度以及无人机的位置,生成所述无人机的参考轨迹;
[0086]
无人机控制输入生成模块,用于根据预设的深度神经网络,利用所述无人机的参考轨迹和所述无人机的状态,得到所述无人机的控制输入,以实现所述无人机对所述待跟踪目标的环绕跟踪。
[0087]
本公开第三方面实施例提出一种电子设备,包括:
[0088]
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;
[0089]
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行上述一种无人机盘旋跟踪智能控制方法。
[0090]
本公开第四方面实施例提出一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行上述一种无人机盘旋跟踪智能控制方法。
[0091]
本公开的特点及有益效果在于:
[0092]
(1)本公开不需要在线求解优化问题,工程实现简单;
[0093]
(2)本公开直接用深度神经网络控制四旋翼无人机实现对移动目标的盘旋跟踪,计算效率高,便于在可编程门阵列(fpga)上并行实现;
[0094]
(3)本公开用机理模型产生样本数据,控制效果好,稳定性高,非常适合实际工程应用。
附图说明
[0095]
图1为本公开实施例中一种无人机盘旋跟踪智能控制方法的流程示意图。
[0096]
图2为本公开一个具体实施例中深度神经网络框架的示意图。
[0097]
图3为本公开一个具体实施例中四旋翼无人机的闭环控制回路示意图。
[0098]
图4为本公开一个具体实施例中四旋翼无人机和移动目标的三维运动轨迹的示意图。
[0099]
图5为本公开一个具体实施例中以移动目标为坐标原点的四旋翼无人机运动轨迹示意图。
[0100]
图6为本公开一个具体实施例中四旋翼无人机跟踪误差的示意图。
具体实施方式
[0101]
本公开提出的一种无人机盘旋跟踪智能控制方法、装置、电子设备和存储介质,下面结合附图和具体实施例进一步详细说明。
[0102]
本公开第一方面实施例提出一种无人机盘旋跟踪智能控制方法,首先建立待跟踪目标的离散时间运动学模型和四旋翼无人机的离散时间动力学模型,然后根据待跟踪目标和无人机的当前状态生成无人机的参考轨迹,其次用二次规划的方法求解优化问题从而得到最优的控制输入,通过随机采样产生样本数据,用于深度神经网络的训练,最后用训练好的深度神经网络直接控制四旋翼无人机完成期望的目标盘旋跟踪任务。该方法整体流程如图1所示,包括以下步骤:
[0103]
(1)当无人机确定待跟踪的机动目标后,构建目标运动学模型如下:
[0104]
p(k 1)=p(k) τv(k)
[0105]
其中,p(k)表示待跟踪目标的在k时刻的位置,v(k)表示待跟踪目标在k时刻的线速度,τ表示采样时间间隔,本公开的一个具体实施例中τ=0.1秒;
[0106]
(2)建立四旋翼无人机的连续时间动力学模型如下:
[0107][0108][0109]
其中ξ=[x
q
,y
q
,z
q
]
t
表示四旋翼无人机在惯性坐标系下的三维位置,x
q
,y
q
,z
q
分别表示无人机在x、y、z轴上的坐标,下标q表示无人机,上标t表示向量转置,η=[φ,θ,ψ]
t
表示四旋翼无人机相对惯性坐标系的三轴姿态角,分别对应俯仰角、横滚角、航向角,ξ和η的一阶、二阶导数分别为和此外,m表示无人机的质量,g表示无人机的重力加速度,r(η)表示无人机从本体坐标系到惯性坐标系的旋转矩阵,j(η)表示雅克比矩阵,j
‑1(η)表示j(η)的逆矩阵,表示科里奥利矩阵,t
b
表示无人机本体坐标系下的合力,τ
b
表示无人机在本体坐标系下的合力矩。t
b
和τ
b
由无人机的各旋翼转速ω
i
,i∈{1,2,3,4}决定:
[0110][0111][0112]
其中表示无人机第i个旋翼的控制输入,下标i表示无人机四个旋翼的编号,表示控制输入的上界(该上界对各u
i
均一致),d
c
和l
c
分别表示无人机的阻力系数和升力系数,l表示无人机的质心到旋翼中心的距离。在本公开的一个具体实施中,d
c
=0.2,l
c
=1,l=0.25,m=2,g=[0,0,9.81]
t

[0113]
(3)令表示无人机的状态,u=col(u1,u2,u3,u4)表示无人机的控制输入,col(
·
)表示列向量化函数,则可将步骤(2)中的连续时间动力模型写成如下的紧凑形式:
[0114][0115]
其中表示x的一阶导数。令采样时间为τ,则可以得到如下离散时间的线性时变系统状态方程:
[0116]
x(k 1)=a
k
x(k) b
k
u(k)
[0117]
其中表示上述状态方程的状态转移矩阵,表示上述状态方程的输入矩阵,i表示单位矩阵,x(k)表示k时刻的无人机的状态,u(k)表示k时刻的无人机控制输入,本公开的一个具体实施例中τ=0.1秒。
[0118]
(4)给定无人机的期望速度v
d
,期望半径r
d
,期望高度z
d
和预测时域n
p
。无人机获得k时刻自身状态x(k)以及k时刻待跟踪目标的位置p(k)和线速度v(k),调用如下的制导方法(步骤(4

1)到(4

4)),产生长度为n
p
2的参考轨迹x
ref
(j|k)=col(p
ref
(j|k),03×1,v
ref
(j|k),03×1),j=0,1,2,...,n
p
1,其中x
ref
(j|k)表示k时刻的第j个参考状态,下标ref表示参考信号,03×1表示三维的零向量,p
ref
(j|k)=[x
ref
(j|k),y
ref
(j|k),z
ref
(j|k)]
t
表示k时刻的第j个参考位置,x
ref
(j|k)表示x轴lk时刻的第j个参考坐标,y
ref
(j|k)表示y轴上k时刻的第j个参考坐标,z
ref
(j|k)表示z轴上k时刻的第j个参考坐标,v
ref
(j|k)表示k时刻的第j个参
考速度,本公开的一个具体实施例中v
d
=1米/秒,r
d
=2米,z
d
=5米,n
p
=20:
[0119]
(4

1)令计数j=0,p
ref
(0|k)=[x
q
(k),y
q
(k),z
q
(k)]
t
,其中x
q
(k),y
q
(k),z
q
(k)分别表示无人机k时刻在x、y、z轴上的坐标,p(k)表示k时刻待跟踪目标的位置,表示对待跟踪目标位置的估计,分别表示对目标在x、y、z轴上坐标的估计;
[0120]
(4

2)对j进行判定:如果j>n
p
,则执行步骤(4

4);否则,执行如下操作:
[0121][0122][0123][0124][0125]
p
ref
(j 1|k)=p
ref
(j|k) τv
ref
(j 1|k)
[0126][0127]
其中e
x
表示参考轨迹k时刻的第j个x轴上的坐标x
ref
(j|k)与目标在x轴上的坐标估计之间的误差,e
y
表示参考轨迹k时刻的第j个y轴上的坐标y
ref
(j|k)与目标在y轴上的坐标估计之间的误差,r表示向量[e
x
,e
y
]
t
的长度,tanh(
·
)表示标准双曲正切函数,τ表示采样时间间隔,本公开的一个具体实施例中τ=0.1秒;
[0128]
(4

3)令j=j 1,重新返回步骤(4

2);
[0129]
(4

4)输出参考轨迹x
ref
(j|k)=col(p
ref
(j|k),03×1,v
ref
(j|k),03×1),j=0,1,2,...,n
p
1;
[0130]
(5)给定预测时域n
p
,控制时域n
c
。定义:
[0131]
δx(i|k)=x(i|k)

x
ref
(i 1|k)
[0132]
δu(i|k)=u(i|k)

u
ref
[0133]
δx=col(δx(1|k),...,δx(n
p
|k))
[0134]
δu=col(δu(0|k),...,δu(n
c

1|k))
[0135]
其中,δx(i|k)表示无人机在k时刻的第i个预测状态x(i|k)与参考轨迹在k时刻的第i 1个参考状态x
ref
(i 1|k)的状态误差,δu(i|k)表示无人机在k时刻的第i个控制输入u(i|k)与参考考控制输入u
ref
的输入误差,无人机的参考控制输入u
ref
=[u
ref
,u
uref
,u
ref
,u
ref
]
t
表示可以使得无人机悬停的控制输入,u
ref
为无人机各旋翼的参考控制输入,δx表示由δx(1|k),...,δx(n
p
|k)组成的状态误差向量,δu由δu(0|k),...,δu(n
c

1|k)组成的输入误差向量。
[0136]
将步骤(3)中的离散时间的线性时变系统状态方程转化为如下的误差方程:
[0137]
[0138]
其中,
[0139][0140][0141][0142]
r(i|k)=a
k
x
ref
(i|k) b
k
u
ref

x
ref
(i 1|k),i=1,2,

,n
p
[0143]
其中a
k
表示步骤(3)中状态方程的状态转移矩阵,b
k
表示步骤(3)中状态方程的输入矩阵,表示误差方程的状态转移矩阵,表示误差方程的输入矩阵,表示误差方程的偏置矩阵,r(i|k)表示k时刻的第i个偏置向量。本公开的一个具体实施例中n
p
=20,n
c
=10,u
ref
=4.9(弧度/秒)2;
[0144]
(6)给定状态权重矩阵q和控制权重矩阵r。用二次规划方法求解如下的模型预测控制问题,得到最优控制序列δu
*
=col(δu
*
(0|k),...,δu*(n
c

1|k));
[0145][0146]
满足:
[0147]
其中,
[0148][0149][0150][0151][0152]
这里的表示向量δu中的每一个元素都属于区间h表示输入权值矩阵,g表示输入权值向量,表示q的增广矩阵,表示r的增广矩阵,表示步骤(5)中误差方程的状态转移矩阵,表示步骤(5)中误差方程的输入矩阵,表示步骤(5)中误差方程的偏置矩阵。本公开的一个具体实施例中n
p
=20,n
c
=10,u
ref
=4.9,
q=diag(1,1,1,1,1,1,10,10,10,0.1,0.1,0.1),r=diag(0.1,0.1,0.1,0.1),其中diag(
·
)表示对角矩阵;
[0153]
(7)给定待跟踪目标初始位置的上界p
u
和下界p
l
,待跟踪目标初始速度的上界v
u
和下界v
l
,无人机初始状态的上界x
u
和下界x
l

[0154]
本公开的一个具体实施例中,p
u
=[20,20,0]
t
,p
l
=[

20,

20,0]
t
,v
u
=[1,1,0]
t
,v
l
=[

1,

1,0]
t
,x
u
=[30,30,10,π/24,π/24,2π/3,1,1,1,0.1,0.1,0.1]
t
,,
[0155]
(8)给定样本数量阈值s,初始化样本数量计数s=1,进行样本数据采集,本公开的一个实施例中s=106;具体步骤如下:
[0156]
(8

1)判断样本数量计数s:如果s>s,则训练样本数据集构建完毕,转入步骤(9);否则,准入步骤(8

2);
[0157]
(8

2)用步骤(7)给定的范围随机生成无人机状态x(k)以及待跟踪目标的位置p(k)和速度v(k),调用步骤(4)生成参考轨迹x
ref
(j|k)=col(p
ref
(j|k),03×1,v
ref
(j|k),03×1),j=0,1,2,...,n
p
1,调用步骤(6)得到最优控制δu
*
,从而得到k时刻无人机的最优控制输入u(k)=u
ref
δu
*
(0|k),将{x(k),p
ref
(j|k),v
ref
(j|k),u(k)}作为一个训练数据样本存入内存空间;
[0158]
(8

3)令s=s 1,重新返回步骤(8

1);
[0159]
(9)构建一个多层全连接的深度神经网络,本公开的一个具体实施例中深度神经网络结构如图2所示,令s(k)=col(x(k),p
ref
(1|k),v
ref
(1|k))作为深度神经网络的输入,u(k)作为深度神经网络的输出。本公开的一个实施例中,深度神经网络的输入为18维的向量,输出为4维向量,深度神经网络共4层,隐含层每层100个节点,隐含层用leakyrelu作为激活函数,当其输入为ε时对应的输出为:
[0160][0161]
输出层用标准的sigmoid函数作为激活函数。
[0162]
(10)给定训练次数阈值。采用adam优化方法,在步骤(8)产生的训练数据集上训练对步骤(9)构建的深度神经网络进行重复训练,当达到训练次数阈值时,得到训练完毕的深度神经网络。本公开的一个具体实施例中训练次数阈值为20。
[0163]
(11)实现无人机盘旋跟踪智能控制。
[0164]
图3为本公开一个具体示例中四旋翼无人机的闭环控制回路示意图。如图3所示,在每个采样时刻k,根据待跟踪目标在k时刻的位置p(k)、k时刻的线速度v(k)和无人机在k时刻的位置ξ(k)利用步骤(4)生成参考轨迹,将参考轨迹中的p
ref
(1|k)、v
ref
(1|k)和无人机在k时刻的状态x(k)输入到用步骤(10)训练后得到的深度神经网络中,产生k时刻的无人机控制输入u(k),从而控制四旋翼无人机实现对移动目标的环绕跟踪。
[0165]
本公开实施例的方法所采用的四旋翼无人机和待跟踪目标均为常规型号设备;本方法本领域技术人员通过编程即可实现。
[0166]
下面结合一个具体实施例对本公开进一步说明如下。
[0167]
仿真实验
[0168]
(1)仿真设置
[0169]
设定采样时间为τ=0.1秒,四旋翼无人机的最大控制输入为阻力系数d
c
=0.2,升力系数l
c
=1,质心到旋翼中心距离l=0.25,质量m=2,重力加速度g=[0,0,9.81]
t
,可以使无人机悬停的控制输入为u
ref
=[4.9,4.9,4.9,4.9]
t
。设定期望速度为v
d
=1米/秒,期望半径r
d
=2米,期望高度z
d
=5米。设定状态权值矩阵q=diag(1,1,1,1,1,1,10,10,10,0.1,0.1,0.1),输入权值矩阵为r=diag(0.1,0.1,0.1,0.1),预测时域n
p
=20,控制时域n
c
=10。设定目标初始位置的上界p
u
=[20,20,0]t和下界p
l
=[

20,

20,0]
t
,目标初始速度的上界v
u
=[1,1,0]
t
和下界v
l
=[

1,

1,0]
t
,无人机初始状态的上界x
u
=[30,30,10,π/24,π/24,2π/3,1,1,1,0.1,0.1,0.1]t和下界24,2π/3,1,1,1,0.1,0.1,0.1]t和下界设定样本数量阈值s=106,神经网络训练次数为20次。设定神经网络的输入为18维,输出为4维,网络层数为4层,每层100个节点,隐含层激活函数为leakyrelu函数,输出层激活函数为标准的sigmoid函数。
[0170]
(2)仿真结果
[0171]
将根据图1流程生成的深度神经网络配置到fpga上,实验中fpga的型号为xczu9eg

ffvb1156,其时钟频率为200mhz,执行本实验的深度神经网络只需要0.12毫秒。这证明我们的方法适合在嵌入式平台上运行。
[0172]
当待跟踪目标的初始位置为p(0)=[0,0,0]
t
,速度为v(0)=[0.3sin(0.001k π/6),0.3cos(0.004k),0]
t
,四旋翼无人机的初始状态为x(0)=[

5,5,0,0,0,0,0,0,0,0,0,0]
t
时,用本公开的方法得到的深度神经网络控制四旋翼无人机的跟踪效果如图4

6。图4展示了待跟踪目标和四旋翼无人机的三维运动轨迹,图中虚线表示目标的轨迹,小圆圈表示目标的起始位置,实线表示无人机的轨迹,小方块表示无人机的起始位置。图5展示了以目标为坐标原点时,无人机的运动轨迹,从图中可以看出无人机可以从较远的位置运行到以目标为圆心的圆形轨道上。从图6可以看出,用本实施例的方法得到的深度神经网络可以控制无人机到达期望的速度、半径、高度,从而完成对移动目标的盘旋跟踪任务。
[0173]
为实现上述实施例,本公开第二方面实施例提出一种无人机盘旋跟踪智能控制装置,包括:
[0174]
采样模块,用于在每个采样时刻,获取待跟踪目标的位置和线速度以及无人机的位置;参考轨迹生成模块,用于利用所述待跟踪目标的位置和线速度以及无人机的位置,生成所述无人机的参考轨迹;
[0175]
无人机控制输入生成模块,用于根据预设的深度神经网络,利用所述无人机的参考轨迹和所述无人机的状态,得到所述无人机的控制输入,以实现所述无人机对所述待跟踪目标的环绕跟踪。
[0176]
为实现上述实施例,本公开第三方面实施例提出一种电子设备,包括:
[0177]
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;
[0178]
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被设置为用于执行上述一种无人机盘旋跟踪智能控制方法。
[0179]
为实现上述实施例,本公开第四方面实施例提出一种计算机可读存储介质,所述计算机可读存储介质存储计算机指令,所述计算机指令用于使所述计算机执行上述一种无
人机盘旋跟踪智能控制方法。
[0180]
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd

rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、rf(射频)等等,或者上述的任意合适的组合。
[0181]
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例的一种无人机盘旋跟踪智能控制方法。
[0182]
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如java、smalltalk、c ,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0183]
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本技术的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
[0184]
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本技术的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
[0185]
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本技术的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本技术的实施例所属技术领域的技术人员所理解。
[0186]
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
[0187]
应当理解,本技术的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
[0188]
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
[0189]
此外,在本技术各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
[0190]
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本技术的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本技术的限制,本领域的普通技术人员在本技术的范围内可以对上述实施例进行变化、修改、替换和变型。
转载请注明原文地址:https://win.8miu.com/read-450359.html

最新回复(0)