一种基于主副IMU和气压计的三维行人导航方法与流程

文档序号:18472975发布日期:2019-08-20 20:33阅读:203来源:国知局
一种基于主副IMU和气压计的三维行人导航方法与流程

本发明涉及行人导航技术领域,特别是指一种基于主副imu和气压计的三维行人导航方法。



背景技术:

随着科学技术和信息化的快速发展,信息技术逐渐应用到人们的日常生活中,为人们的日常活动提供了更多的便利。在出行过程中,人们对于位置的需求以及路径的导航规划要求越来越高,甚至在每个时刻都想知道“我在哪儿?”、“从哪儿来到哪儿去?”,这就需要借助一些软件或者设备来确定。以前,大多采用指南针、电子罗盘等设备来确定自己的位置和方位,而现在主要依靠全球定位系统(globalpositioningsystem,gps)或北斗卫星导航系统(beidounavigationsatellitesystem,bds)等无线导航定位系统来解决位置信息问题,以满足人们的位置需求。另外,计算机网络技术和智能控制技术的发展,极大地推动了物联网产业的兴起。以物联网及智能传感器为代表的新兴产业,获得了国家的政策扶持和大力推动。惯性器件与惯性导航定位技术作为物联网的重要组成部分,将在没有gps或bds等无线信号环境下的行人导航定位过程中发挥不可替代的作用。

行人导航(pedestriannavigation,pn),是一种基于位置服务(locationbasedservice,lbs)的技术,通过某种方法确定行人的位置。采用惯性导航技术的行人导航系统(pedestriannavigationsystem,pns),将imu固定于行人足部、胸部或肩部等身上不同部位,通过实时测量行走过程中的加速度、角速度等数据参数,进行行人位置和方向的导航解算,从而对行人位置和方位进行定位和跟踪。将该系统应用到大型商场超市、图书馆、地下停车场、船舱、井下、隧道、密林等无线信号覆盖不到的盲区,能够实现各种不同区域下的导航定位。惯性导航技术在特定环境下进行导航定位具有抗干扰性强、实时性强和屏蔽性强等特点,因此该研究具有重要的社会意义和经济意义。

由于室内环境下没有gps和bds等无线导航信号,不能准确定位自己的位置。为了解决这个问题,采用不依赖于外部信号的mems惯性传感器作为自主导航元件,进行位置跟踪和导航服务。但是,由于mems惯性传感器存在零点漂移误差、运动状态误差和导航解算误差,导致位置和导航信息产生很大的偏差。



技术实现要素:

针对现有的行人导航系统存在运动状态误差和导航解算误差,导致位置和导航信息产生较大误差的技术问题,本发明提出了一种基于主副imu和气压计的三维行人导航系统及方法,利用胸前的副imu和气压计测量得到的加速度、磁感应强度和气压数据,经方位解算和高度解算得到方位信息和高度信息,再将方位信息和高度信息作为足面的主imu的参考数据进行误差修正,实现行人的准确导航和跟踪。

本发明的技术方案是这样实现的:

一种基于主副imu和气压计的三维行人导航方法,其步骤如下:

s1、将主imu安装于行人的足面,将副imu和气压计分别安装于行人的胸前;

s2、主imu通过其自身携带的加速度计和陀螺仪测量加速度和角速度数据,经惯性导航姿态解算得到姿态、位置和速度;副imu通过其自身的加速度计和磁力计测量加速度和磁感应强度,经方位解算得到姿态信息;气压计测量的气压数据经高度解算得到高度信息;

s3、将行人的状态分为静止和运动两个状态;将步骤s2中主imu得到的行人的加速度和角速度输入svm决策方程,判断行人处于哪个状态;当行人处于静止状态时执行步骤s4,否则执行步骤s5;

s4、当行人处于静止状态时:初始化行人的角速度i、速度i和加速度i;主imu测量的加速度ii、角速度ii和磁感应强度i经惯性导航解算得到行人的姿态、速度ii和位置;副imu测量的角速度iii和磁感应强度ii经方位解算得到行人的姿态信息;气压计采集的气压数据经高度解算得到行人的高度信息;将姿态与姿态信息作对比得到姿态角误差,将加速度ii与加速度i作对比得到加速度误差,将角速度ii与角速度i作对比得到角速度误差,将速度ii与速度i作对比得到速度误差,将位置与高度信息作对比得到位置误差;再将姿态角误差、角速度误差、加速度误差、速度误差和位置误差输入扩展卡尔曼滤波器得到行人的航向误差、角速度误差、速度误差和高度误差;再将航向误差、角速度误差、速度误差和高度误差输入惯性导航解算中对行人的姿态、速度和位置进行实时反馈及修正,输出行人的姿态、速度和位置;

s5、当行人处于运动状态时:通过足面的主imu测量的加速度和角速度经惯性导航解算获得行人的姿态、速度和位置,再对姿态、速度和位置进行坐标变换获得行人的运动轨迹;根据主imu实时测量的数据对行人的姿态、速度和位置进行更新,进而对行人的运动轨迹进行更新。

优选地,所述步骤s3中的行人状态的判别方法为:

s31、选取一组已知运动状态的数据集作为样本训练集,样本训练集记为:

t={(xi,yi)}={(x1,y1),(x2,y2),…,(xn,yn)},

其中,i=1,2,…,n,xi∈rn,rn为有理数集合,xi为第i组主imu提取的加速度数据和角速度数据组建的向量组,yi∈{+1,-1}为第i组行人的运动状态,+1表示静止状态,-1表示运动状态;

s32、通过svm分类算法对样本训练集进行训练,在n维数据空间中找到一个最优的超平面wx+b=0,满足yi(wxi+b)≥1,使几何间隔最大,相应的分类决策函数为:

f(x)=sign(wtx+b),

其中,sign()为符号函数,f(x)等于y为行人的运动状态,b为截距,w为法向量。

优选地,所述步骤s4中行人处于静止状态时,采用的扩展卡尔曼滤波器的状态方程为:

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

其中,为导航坐标系下的姿态角误差,姿态角包括俯仰角、横滚角和航向角,δωk为载体坐标系下的x、y和z三个方向的角速度误差,δrk为导航坐标系下的e向、n向和u向三个方向的位置误差,δvk为导航坐标系下的e向、n向和u向三个方向的速度误差,δak为载体坐标系下的e向、n向和u向三个方向的加速度误差,为载体坐标系到导航坐标系的姿态转移矩阵,δt为采样时间,为加速度的反对称矩阵,矩阵为导航坐标系下的e向、n向和u向的加速度,i为单位矩阵,wk为状态白噪声矩阵,wk的均值为零、协方差矩阵为qk。

优选地,所述扩展卡尔曼滤波器的观测方程为:

zk=hkxk+vk,

其中,为主imu测量得到的航向角与副imu测量得到的航向角之差,δωk为载体坐标系下的x、y和z三个方向的角速度误差,δvk为导航坐标系下的e向、n向和u向三个方向的速度误差,δrk为载体坐标系下的高度误差,vk为观测白噪声矩阵,vk服从均值为零、协方差矩阵为rk的高斯分布。

一种基于主副imu和气压计的三维行人导航系统,包括方位高度参考系统和行人足部导航系统,所述方位高度参考系统包括固定于行人胸前的副imu和气压计;所述行人足部导航系统包括固定于行人足面的主imu和控制器;所述主imu、副imu和气压计均与控制器相连接;所述主imu包括加速度计i、陀螺仪i和磁力计i,所述副imu包括加速度计ii、陀螺仪ii和磁力计ii,加速度计i、陀螺仪i、磁力计i、加速度计ii、陀螺仪ii、磁力计ii和气压计均与控制器相连接。

本发明产生的有益效果如下:

1.利用足面的主imu获得行人的运动状态和航向信息,利用胸前的副imu和气压计得到行人的方位信息和高度信息,以此作为参考数据对航向信息进行误差修正,实现三维行人导航定位。

2.通过svm决策方程和零速检测方法判断行人的运动状态。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明的主imu、副imu和气压计的位置示意图。

图2为本发明的行人导航系统示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,一种基于主副imu和气压计的三维行人导航系统,包括方位高度参考系统和行人足部导航系统,所述方位高度参考系统包括固定于行人胸前的副imu和气压计;所述行人足部导航系统包括固定于行人足面的主imu和控制器;所述主imu、副imu和气压计分别与控制器相连接;所述主imu包括加速度计i、陀螺仪i和磁力计i,所述副imu包括加速度计ii、陀螺仪ii和磁力计ii,加速度计i、陀螺仪i、磁力计i、加速度计ii、陀螺仪ii、磁力计ii和气压计均与控制器相连接。

如图2所示,一种基于主副imu和气压计的三维行人导航方法,其步骤如下:

s1、将主imu安装于行人的足面,将副imu和气压计分别安装于行人的胸前。

s2、主imu通过其自身携带的加速度计和陀螺仪测量得到的数据经惯性导航姿态解算得到姿态、位置和速度;副imu通过其自身的加速度计和磁强计测量得到加速度和磁感应强度经方位解算得到姿态信息,气压计测量的气压数据经高度解算得到高度信息。

s3、将行人的状态分为静止和运动两个状态;将步骤s2中主imu得到的行人的加速度和角速度输入svm决策方程,判断行人处于哪个状态。当行人处于静止状态时执行步骤s4,否则执行步骤s5。

所述svm决策方程的训练过程为:

s31、选取一组已知运动状态的数据集作为样本训练集,样本训练集记为:

t={(xi,yi)}={(x1,y1),(x2,y2),…,(xn,yn)},

其中,i=1,2,…,n,xi∈rn,rn为有理数集合,xi为第i组主imu提取的加速度数据和角速度数据组建的向量组,yi∈{+1,-1},为第i组行人的运动状态,+1表示静止状态,-1表示运动状态。

s32、通过svm分类算法对样本训练集的学习和训练,在n维数据空间中找到一个最优的超平面wx+b=0,满足yi(wxi+b)≥1,使几何间隔最大,相应的分类决策函数为:

f(x)=sign(wtx+b),

其中,sign()为符号函数,f(x)等于y为行人的运动状态,b为截距,w为法向量。

s4、当行人处于静止状态时:初始化行人的角速度i、速度i和加速度i,角速度i和速度i的初值为零;主imu测量的加速度ii、角速度ii和磁感应强度i经惯性导航解算得到行人的姿态、速度ii和位置;副imu测量的角速度iii和磁感应强度ii经方位解算得到行人的姿态信息;气压计采集的气压数据经高度解算得到行人的高度信息;将姿态与姿态信息作对比得到姿态角误差,将加速度ii与加速度i作对比得到加速度误差,将角速度ii与角速度i作对比得到角速度误差,将速度ii与速度i作对比得到速度误差,将位置与高度信息作对比得到位置误差;再将姿态角误差、角速度误差、加速度误差、速度误差和位置误差输入扩展卡尔曼滤波器得到行人的航向误差、角速度误差、速度误差和高度误差;再将航向误差、角速度误差、速度误差和高度误差输入惯性导航解算中对行人的姿态、速度和位置进行实时反馈及修正,输出行人的姿态、速度和位置。

s41、所述惯性导航解算的输入为主imu测量的角速度ii和加速度ii,经过坐标变换输出为姿态、速度和位置。

s42、所述方位解算的输入为副imu测量的角速度iii和磁感应强度ii,经过坐标变换输出为姿态信息。

s43、所述高度解算的输入为气压计测量的气压值,利用如下公式输出为高度信息:

h(k)=44330*(1-(p(k)/p0)1/5.255),

其中,p0为标准气压值,p0=101.325kpa;p(k)为k时刻气压计测量的气压值,h(k)为k时刻的高度。

所述扩展卡尔曼滤波器的状态方程为:

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

其中,为导航坐标系下的姿态角误差,姿态角包括俯仰角、横滚角和航向角,δωk为载体坐标系下的x、y和z三个方向的角速度误差,δrk为导航坐标系下的e向、n向和u向三个方向的位置误差,δvk为导航坐标系下的e向、n向和u向三个方向的速度误差,δak为载体坐标系下的e向、n向和u向三个方向的加速度误差,为载体坐标系到导航坐标系的姿态转移矩阵,δt为采样时间,为加速度的反对称矩阵,为导航坐标系下的e向、n向和u向的加速度,i为单位矩阵,wk为状态白噪声矩阵,wk的均值为零、协方差矩阵为qk。

所述扩展卡尔曼滤波器的观测方程为:

zk=hkxk+vk,

其中,为主imu测量得到的航向与副imu测量得到的航向之差,δωk为载体坐标系下的x、y和z三个方向的角速度误差,δvk为导航坐标系下的e向、n向和u向三个方向的速度误差,δrk为载体坐标系下的高度误差,vk为观测白噪声矩阵,vk服从均值为零、协方差矩阵为rk的高斯分布。

s5、当行人处于运动状态时:通过足面的主imu测量的加速度和角速度经惯性导航解算获得行人的姿态、速度和位置,再对姿态、速度和位置进行坐标变换获得行人的运动轨迹;根据主imu实时测量的数据对行人的姿态、速度和位置进行更新,进而对行人的运动轨迹进行更新。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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