System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于智能导航定位领域,具体涉及一种在复杂环境连续运动中保持高精度定位方法。
技术介绍
1、随着技术的不断发展,自动驾驶,智能机器人开始逐步普及,各种各样的传感器被应用在其中以确保车辆或机器人自主导航定位。imu因为能够测量出其所固定平台的线性加速度和旋转角速度,且其测量结果不依赖外界信息而被广泛应用,但由于imu测量结果包含一定误差,并且采用积分算法原理,导致其导航定位误差会随着时间不断累积。为弥补imu的缺点,诸多传感器被用来与imu进行组合。其中gnss因为可以通过观测足够数量的gnss卫星获得绝对定位坐标,且具有精度高,无累积误差而与imu有天然互补的优势,但gnss信号往往会因为存在遮挡与干扰而丢失,传统使用imu与gnss信息融合导航定位系统往往会存在因为gnss信号长期丢失,导致在复杂环境下定位精度急剧下降。
2、cn117053782a,一种水陆两栖机器人组合导航方法。包括如下步骤:(1)导航静置初始化:使用设置在两栖机器人上的imu、dvl和gnss对系统的初始噪声和状态进行估计;(2)名义状态预测:使用imu的中值积分结果作为水陆两栖机器人航行过程名义状态;(3)误差状态预测:采用误差状态卡尔曼滤波,计算误差状态的离散运动学方程和预测协方差矩阵;(4)观测更新:使用dvl、压力深度计和gnss构建观测方程以及观测协方差矩阵,用于修正名义状态。本专利技术在两栖机器人航行时,响应速度更快,运行负担更小,得到的位姿估计更加准确。
3、该专利技术的两栖机器人安装了imu、gnss、dv
技术实现思路
1、本专利技术旨在解决以上现有技术的问题。提出了一种在复杂环境连续运动中保持高精度定位方法。本专利技术的技术方案如下:
2、一种在复杂环境连续运动中保持高精度定位方法,其包括以下步骤:
3、步骤1、采用卡尔曼滤波器对多传感器进行标定,然后,采集imu和gnss数据;
4、步骤2、构建一个gnss数据模拟神经网络,通过输出位置、姿态和速度预测值与真实值的差值构建损失函数数学模型,并将imu数据序列输入gnss数据模拟神经网络进行训练;
5、步骤3、使用高频imu数据的中值积分结果作为误差状态卡尔曼滤波器的名义状态;
6、步骤4、计算采样时刻的误差状态运动学方程与预测协方差矩阵;
7、步骤5、根据gnss信号的可用情况,结合使用网络输出结果构建观测方程与观测协方差;
8、步骤6、对名义状态进行修正后,即得到在复杂环境下的高精度定位。
9、进一步的,所述步骤1采用卡尔曼滤波器对多传感器进行标定,然后,采集imu和gnss数据,具体包括如下步骤:
10、步骤11,安装imu在车辆中轴线上,使用imu坐标系作为车辆坐标系,安装gnss天线到车辆顶部,收集imu和gnss数据使用卡尔曼滤波器进行外参标定,确定传感器间的安装角度;
11、步骤12,采集imu与gnss数据,并将每帧数据采集时间转换为标准时间戳格式进行保存;将采集到的gnss信息,即经度,维度,高度转换到地心地固坐标系下,最后再将地心地固坐标系下的坐标转换到东天北坐标系下进行保存;每次采集所在的东天北坐标系均以第一帧gnss数据所在位置为原点。
12、进一步的,所述步骤2构建一个gnss数据模拟神经网络,通过输出位置、姿态和速度预测值与真实值的差值构建损失函数数学模型,并将imu数据序列输入gnss数据模拟神经网络进行训练,具体包括:
13、步骤21,构建基于卷积神经网络与长短期记忆的gnss数据模拟网络,网络中时间分离一维扩展卷积神经网络以不同感受野从输入的imu序列数据中提取同一帧加速度与角速度间的关联特征,将输出的多个特征拼接后进行卷积,再将按照时间分离的特征卷积结果进行拼接再次输入到长短期记忆网络,以捕获imu序列在时间维度上的关联特征,输出特征经卷积后,由全连接层输出当前时刻相对于上一时刻的相对位置、相对姿态、相对速度;
14、步骤22,将gnss数据采集间隔时间内的多帧imu数据序列组合后输入到gnss模拟神经网络,使网络的输出频率与gnss采集频率一致,在gnss数据不可用时依旧保证误差状态卡尔曼滤波的后续优化;使用huber loss对网络输出位置、姿态、速度与真实值差值进行反向传播,使其与真值布局接近,训练gnss模拟神经网络。
15、进一步的,所述使用huber loss对网络输出位置、姿态、速度与真实值差值进行反向传播,使其与真值布局接近,训练gnss模拟神经网络,具体包括:公式如下:
16、
17、
18、
19、
20、其中log(·)是so3对数映射,ρ(·)为huber损失函数,分别为网络输出位置,速度,姿态,p,v,r分别为真实的位置,速度,姿态,wr,wv,wp分别表示对应的姿态、速度、位置权重,分别为姿态损失,位置损失,速度损失,总损失,最终的损失函数由位置损失,姿态损失与速度损失及对应权重构成。
21、进一步的,所述步骤3使用高频imu数据的中值积分结果作为误差状态卡尔曼滤波器的名义状态,具体包括:
22、步骤31,以向量形式表示imu测量到的三轴加速度与角速度,对低成本imu建立误差模型,具体公式如下:
23、
24、
25、其中ω,a分别为imu测量到的体坐标系下真实的角速度与加速度,分别为imu输出的角速度与加速度值,bg,ba分别为陀螺仪与加速度计的偏置,ng,na分别为采集角速度与加速度时的陀螺仪与加速度计的零均值高斯白噪声;
26、步骤32,将imu测量到的体坐标系下角速度与加速度转换到东天北坐标系下,设定误差状态卡尔曼滤波器的状态变量为:
27、x={p,v,r,ba,bg,g} (7)
28、其中,p表示沿东天北三轴的位移组成的向量,v表示沿三轴的角速度向量,r为车辆在东天北坐标系下的姿态矩阵,ba,bg分别为加速度计与陀螺仪的偏置,g为重力加速度;
29、步骤33,整理得到状态变量在连续时间下的运动学方程,忽略噪声项,将状态变量名义值进行离散化处理,使用中值积分得到状态变量名义值,具体公式如下:
30、
31、其中δt为两帧间采样时间间隔,分别为对本文档来自技高网...
【技术保护点】
1.一种在复杂环境连续运动中保持高精度定位方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种在复杂环境连续运动中保持高精度定位方法,其特征在于,所述步骤1采用采用卡尔曼滤波器对多传感器进行标定,然后,采集IMU和GNSS数据,具体包括如下步骤:
3.根据权利要求1所述的一种在复杂环境连续运动中保持高精度定位方法,其特征在于,所述步骤2构建一个GNSS数据模拟神经网络,通过输出位置、姿态和速度预测值与真实值的差值构建损失函数数学模型,并将IMU数据序列输入GNSS数据模拟神经网络进行训练,具体包括:
4.根据权利要求3所述的一种在复杂环境连续运动中保持高精度定位方法,其特征在于,所述使用Huber Loss对网络输出位置、姿态、速度与真实值差值进行反向传播,使其与真值布局接近,训练GNSS模拟神经网络,具体包括:公式如下:
5.根据权利要求4所述的一种在复杂环境连续运动中保持高精度定位方法,其特征在于,所述步骤3使用高频IMU数据的中值积分结果作为误差状态卡尔曼滤波器的名义状态,具体包括:
6.根据权利要求5所
7.根据权利要求5所述的一种在复杂环境连续运动中保持高精度定位方法,其特征在于,所述步骤5根据GNSS信号的可用情况,结合使用网络输出结果构建观测方程与观测协方差,具体包括:
8.根据权利要求1所述的一种在复杂环境连续运动中保持高精度定位方法,其特征在于,所述步骤6中具体包括:
9.一种电子设备,其特征在于,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述程序时实现如权利要求1至8任一项所述在复杂环境连续运动中保持高精度定位方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述在复杂环境连续运动中保持高精度定位方法。
...【技术特征摘要】
1.一种在复杂环境连续运动中保持高精度定位方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的一种在复杂环境连续运动中保持高精度定位方法,其特征在于,所述步骤1采用采用卡尔曼滤波器对多传感器进行标定,然后,采集imu和gnss数据,具体包括如下步骤:
3.根据权利要求1所述的一种在复杂环境连续运动中保持高精度定位方法,其特征在于,所述步骤2构建一个gnss数据模拟神经网络,通过输出位置、姿态和速度预测值与真实值的差值构建损失函数数学模型,并将imu数据序列输入gnss数据模拟神经网络进行训练,具体包括:
4.根据权利要求3所述的一种在复杂环境连续运动中保持高精度定位方法,其特征在于,所述使用huber loss对网络输出位置、姿态、速度与真实值差值进行反向传播,使其与真值布局接近,训练gnss模拟神经网络,具体包括:公式如下:
5.根据权利要求4所述的一种在复杂环境连续运动中保持高精度定位方法,其特征在于,所述步骤3使用高频imu数据的中值积分结...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。