利用神经网络算法补偿和修正的GPSINS组合导航方法及系统与流程

文档序号:11676424阅读:1292来源:国知局
利用神经网络算法补偿和修正的GPS INS组合导航方法及系统与流程

本发明涉及卫星导航和惯性导航领域,具体涉及一种利用神经网络算法对无人机gps信号丢失情况下的组合导航进行补偿校正的方法及系统。



背景技术:

在导航技术方面,目前应用得最多,最成熟的导航方式有惯性导航和卫星导航。gps卫星导航的优点是具有全球性、全天候、长时间定位精度高的特点,但缺点是信号易受干扰和遮挡,在强电磁环境下和有高楼遮挡时,信号质量变差,并且其输出频率有限,一般为1—10hz,输出不连续,在需要快速更新信息的场合,如机动性和实时性要求较高的无人机系统上,gps卫星导航的缺点便凸显出来。而ins惯性导航系统是一种全自主式的导航方式,因此具有很强的隐蔽性和抗干扰的能力,并且输出信息连续,短时间内定位精度高。但由于微机电惯性导航系统(memsinertialnavigationsystem,mems-ins)器件自身的特点,陀螺仪和加速度计有初始零偏、随机漂移等误差,随着时间的累计作用,其误差越来越大,长时间定位精度较差,最终无法准确反映无人机的姿态和位置信息。

通常的做法是将卫星导航与惯性导航信号经过kalman滤波将两者信号融合,利用各自的优点来弥补各自的缺点。但在一些环境特殊的条件下,如信号阻隔区,遮挡物较多的环境下,卫星信号可能会发生丢失现象,此时导航系统只能依靠单纯的惯性导航,随着时间的推移,导航数据的误差会越来越大。因此需要研究一种方法能在gps信号丢失情况下,代替gps的作用并且和惯性导航配合完成导航数据的输出。



技术实现要素:

本发明的目的在于针对上述现有技术中存在的问题,提出了一种利用神经网络算法补偿和修正的gpsins组合导航方法,实现导航系统在gps信号丢失的情况下,惯性导航系统能在神经网络算法的辅助下输出精确的导航数据。

为达到上述发明的目的,本发明通过以下技术方案实现:

本发明公开一种利用神经网络算法补偿和修正的gpsins组合导航方法,包括步骤如下:

步骤s1,构建基于gps与惯性导航模块的组合导航模型,设计kalman滤波器对所述组合导航模型的组合导航数据进行kalman滤波,输出惯性导航模块的导航误差数据;所述组合导航数据包括惯性导航模块输出的包括载体位置与速度的惯性导航数据、gps输出的包括载体位置与速度的卫星导航数据;

步骤s2,在gps信号正常状态下,惯性导航数据作为神经网络模型的训练样本的输入数据,kalman滤波器对导航数据滤波后的输出数据作为神经网络模块的训练样本的输出数据,对神经网络模型进行训练;

步骤s3,在gps信号丢失状态下,持续利用训练好的神经网络模型来预测惯性导航模块的输出误差,并用该预测的输出误差对惯性导航进行补偿和修正。

进一步,步骤s2所述神经网络模型包括输入层、隐含层、输出层和连接层,所述输入层向隐含层输入样本数据,所述隐含层向输出层传输样本数据的权值信息,所述连接层将隐含层输出权值信息传递到输入层,以更新隐含层收到的样本数据;所述对神经网络模块的训练是通过连接层的循环次数设置。

本发明还公开一种利用神经网络算法补偿和修正的gpsins组合导航系统,采用上述的利用神经网络算法补偿和修正的gpsins组合导航方法,包括有控制单元,与控制单元通信连接的陀螺仪、加速度计和磁力计,与控制单元无线通信连接的远程计算机,所述控制单元还连接有存储单元。

进一步,所述陀螺仪、加速度计和磁力计与控制单元的通信连接为内部整合电路通信连接,所述远程计算机与控制单元的无线通信为全双工通用同步/异步串行收发连接方式。

本发明的一种利用神经网络算法补偿和修正的gpsins组合导航方法,用来预测无人机导航系统在gps信号丢失的情况下惯性导航系统的输出误差,并用该误差数据对惯性导航系统的输出进行补偿和修正,从而实现导航系统在gps信号丢失的情况下,惯性导航系统能在神经网络算法的辅助下输出精确的导航数据。

附图说明

图1为本发明的利用神经网络算法补偿和修正的gpsins组合导航方法所采用的硬件结构框图。

图2为本发明的利用神经网络算法补偿和修正的gpsins组合导航方法的步骤图。

图3为gps与惯性导航模块的组合导航模型的算法流程框图。

图4为本发明的利用神经网络算法补偿和修正的gpsins组合导航方法的神经网络模块的训练数据流框图。

图5为图4神经网络模块的训练框图。

图6a和图6b为神经网络在1-560的两次训练过程效果图。

图7a和图7b为神经网络在561-700s预测阶段的两次训练过程效果。

图8为神经网络算法实地测试的效果图。

具体实施方式

下面结合附图和实施例对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。

参看图1,为本发明的一种利用神经网络算法补偿和修正的gpsins组合导航系统,该导航系统包括有控制单元,在本实施例中,控制单元采用armcortex-m3内核,基于该内核的stm32开发板以i2c方式(内部整合电路通信连接)连接有陀螺仪、加速度计和磁力计,在本实施例中,所述陀螺仪采用mpu9250九轴惯性传感器模块,所述磁力计采用ak8963磁力计,所述陀螺仪和磁力计产生惯性导航数据,并通过i2c总线向控制单元传送;控制单元还连接有gps模块,在本实施例中,采用ublox公司的ubloxgps-m6n系列的gps产生卫星导航数据,控制单元将惯性导航数据和卫星导航数据通过usart串口向远处计算机发送。

参看图2,为本发明的利用神经网络算法补偿和修正的gpsins组合导航方法的步骤图。

步骤s1,构建基于gps与惯性导航模块的组合导航模型,设计kalman滤波器对所述组合导航模型的组合导航数据进行kalman滤波,输出惯性导航模块的导航误差数据;所述组合导航数据包括惯性导航模块输出的包括载体位置与速度的惯性导航数据、gps输出的包括载体位置与速度的卫星导航数据;

步骤s2,在gps信号正常状态下,惯性导航数据作为神经网络模型的训练样本的输入数据,kalman滤波器对导航数据滤波后的输出数据作为神经网络模块的训练样本的输出数据,对神经网络模型进行训练;

步骤s3,在gps信号丢失状态下,持续利用训练好的神经网络模型来预测惯性导航模块的输出误差,并用该预测的输出误差对惯性导航进行补偿和修正。

参看图3的gps与惯性导航模块的组合导航模型的算法流程框图,该算法流程包括如下步骤:

步骤a1.获取惯性导航模块的参数,即通过加速度计、陀螺仪和磁力计分别获取角加速度信息加速度矢量fb和磁力计信息,所述磁力计信息包括偏航角;

步骤a2.通过求解如下四元数微分方程得到实时的四元数q0,q1,q2,q3

其中为陀螺仪在载体坐标系下的测得的三个轴的角速度信息;

步骤a3.将步骤a2中求解的q0,q1,q2,q3带入下式得到姿态矩阵

根据与方向余弦的关系可改写为下式:

因此可求得载体的姿态角θ、γ、用磁力计测得的偏航角来修正角,以获得稳定准确的偏航角;

步骤a4.根据步骤a1获得的载体加速度信息fb和步骤a3求解的姿态矩阵求解该微分方程:可得到载体在导航坐标系下的三个方向上的速度信息;上述微分方程中,v=[vnvevu]t的n、e、u分别为地理坐标系中的东、北、天方向,相应vn、ve、vu分别为上述方向的速度,ωine为地球自转角速度,gn为重力加速度;

步骤a5,求出惯性导航输出的位置参数,所述位置参数包括经度λ、纬度l和高度h,求解公式如下:

h=h(0)+∫vudt

根据上述求得惯性导航模块输出的位置参数。

通过步骤a1至步骤a5获得的惯性导航模块输出的位置参数和速度信息,然后和gps模块输出的位置参数及速度信息共同传入kalman滤波模块,进行kalman滤波。

所述gps模块与惯性导航模块构成的组合导航模型,由状态方程和观测方程描述该模型,分别为:

其中xi表示导航系统的误差状态,它是一个15维的向量,如下所示:

其中δvx,δvy,δvz为系统沿东、北、天三个方向上的速度误差;φx,φy,φz为载体平台的姿态角误差;δl,δλ,δh分别代表纬度、经度和高度误差;εx,εy,εz分别代表陀螺仪沿东、北、天三个方向上的随机漂移;分别为沿东、北、天三个方向上的加速度的随机漂移;

是一个15×15的矩阵,其中fn(t)对应于9个基本导航参数的系统矩阵;fs(t)为9个基本导航参数与陀螺仪及加速度计漂移之间的变换矩阵,其维数是9×6,对于捷联式系统,fm(t)为与陀螺仪及加速度计漂移对应的系统矩阵,是一个维数为6×6的对角线矩阵,表示为fm(t)=diag[-1/tgx-1/tgy-1/tgz-1/tax-1/tay-1/taz];z(t)为ins输出的位置速度与gps输出的位置速度信息的差值,是一个6维向量,具体表达式为:,

其中

z(t)=[δvx+nvxδvy+nvyδvz+nvz(rm+h)δl+ny(rm+h)coslδλ+nxδh+nh]t

vv(t)=[nvxnvynvz]t

vp(t)=[nxnynz]t

作为具体实施例,所述系统矩阵fn(t)的非零元素如下:

f(1,5)=-fz

f(1,6)=fy

f(2,4)=fz

f(2,6)=-fx

f(3,4)=-fy

f(3,5)=fx

f(3,7)=-2ωievxsinl

f(5,7)=-ωiesinl

f(9,3)=1

本发明的利用神经网络算法补偿和修正的gpsins组合导航方法,在本实施例中,根据惯性导航的误差模型建立kalman滤波模块,其建立步骤如下:

步骤s11,将连续系统的基于gps与惯性导航模块的组合导航模型的状态方程和观测方程离散化得到:

xk=φk,k-1xk-1+wk-1

zk=hkxk+vk

其中,

步骤s12,分别获取惯性导航模块和gps输出的位置、速度观测信息,并作差得到z(t)的观测信息z;

步骤s13,计算k时刻状态方程的状态一步预测,即:其中为在k-1时刻,组合导航模型15个状态的最优估计值,φk,k-1为组合导航模型离散化后的状态转移矩阵;

步骤s14,更新组合导航模型的滤波增益方程其中pk|k-1是组合导航模型在k-1时刻对下一时刻k的一步预测均方误差,hk是组合导航模型的观测方程的观测矩阵;

步骤s15,更新组合导航模型的一步预测均方误差方程其中φk,k-1是组合导航模型状态方程的状态转移矩阵;

步骤s16,估计均方根误差方程kk是k时刻组合导航模型的增益矩阵,rk是k时刻组合导航模型的噪声矩阵;

步骤s17,组合导航模型k时刻状态最优方程为:其中是在k时刻组合导航模型状态方程的最优估计值;是在k-1时刻对k时刻组合导航模型状态方程的估计值;

步骤s18,通过步骤s12至s17,得到组合导航模型状态方程的最优估计值将该值与惯性导航模块输出的速度位置信息做差,得到最优的导航参数;

步骤s18,循环执行步骤s12至s18,不断获得惯性导航模块最优的导航误差输出信息。

参看图4和图5,本发明的利用神经网络算法补偿和修正的gpsins组合导航方法,所利用神经网络模块的训练来实现图3在kalmanl滤波器与导航解算之间的反馈修正。参看图4,所述神经网络模型包括输入层(inputlayer)、隐含层(hiddnelayer)、输出层(outputlayer)和连接层(connectlayer),所述输入层向隐含层输入样本数据,所述隐含层向输出层传输样本数据的权值信息,所述连接层将隐含层输出权值信息传递到输入层,以更新隐含层收到的样本数据;所述对神经网络模块的训练是通过连接层的循环次数设置。

所述神经网络模块的训练步骤如下:

步骤s21,随机初始化权值矩阵w1,w2,w3;所述权值矩阵w1存储了输入层到隐含层的权值信息;所述权值矩阵w2存储了隐含层到输出层的权值信息,其为m×n的矩阵;所述权值矩阵w3存储了连接层到隐含层的权值信息,其为n×n的矩阵;

步骤s22,向神经网络模块的输入层输入样本数据为3×1向量p,根据样本数据更新输入层的输出向量neti(k)=p(k),其中p(k)是第k时刻连接层传递的输入层输入样本数据的向量p;

步骤s23,更新隐含层的输出向量:neth(k)=tansig(w1(k)*neti(k)+w3(k)*netc(k-1)),其中neth(k)是第k时刻连接层传递的隐含层的输出向量,neti(k)是输入层更新后的输出向量,netc(k-1)是连接层在第k-1时刻连接层传递的输出向量;

步骤s24,根据公式:netc(k)=tansig(neth(k)+α*netc(k-1))更新连接层的输出向量netc(k),其中α为用来对上一时刻的连接层的输出数据进行记忆的记忆系数;

步骤s25,根据公式:neto(k)=purelin(w2*neth(k))更新输出层的输出向量neto(k);

步骤s26,计算输出层的误差方程:e=∑[neto(k)-d(k)]2,其中d(k)是训练样本中的期望值,用来在训练阶段对权值进行修正;

步骤s27,更新权值向量:其中i为1、2或3,η是学习率,一般为0至1之间的数值。

根据以上步骤s21至步骤s27的算法完成对神经的网络的训练过程,在gps信号丢失时,按照如图5所示的连接方式,将经过训练的神经网络接入到图3所示组合导航模型中的导航解算与kalman滤波器之间,实现预测惯性导航的输出误差并补偿和修正惯性导航的输出,从而获得满意的定位数据。

参看图6a至图8,图6a和图6b为神经网络模块在1-560s的训练过程,图6a与图6b分别为两种历史数据的学习效果,图7a与图7b同理,图7a和图7b为神经网络模块在561-700s预测阶段的效果图,其中,实线代表期望的经纬度误差曲线,浅色点划线代表利用bp神经网络训练时的效果图,深色点划线代表利用elman神经网络训练的效果图。

图7a对比图6a,图7b对比图6b,可知a图和b图说明本专利提出的神经网络方法在训练阶段均能有效地对历史数据进行学习,并可以用此模型在gps信号缺失情况下,对载体的位置进行预测。

上述实施例仅用以说明本发明而并非限制本发明所描述的技术方案;因此,尽管本说明书参照上述的各个实施例对本发明已进行了详细的说明,但是,本领域的普通技术人员应当理解,仍然可以对本发明进行修改或者等同替换;而一切不脱离本发明的精神和范围的技术方案及其改进,其均应涵盖在本发明的权利要求范围当中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1