System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法技术_技高网

一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法技术

技术编号:39935427 阅读:9 留言:0更新日期:2024-01-08 22:08
本发明专利技术提供了一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法,包括:S1,根据先验分布初始化采样粒子;S2,判断迭代次数t是否小于T;S3,若迭代次数t小于T,则进行重要性采样;若迭代次数t大于等于T,则结束;S4,输入测量值,并归一化权重;S5,利用重要性采样和重采样得到滤波结果;S6,优先级别粒子获取物体全局坐标信息,用优先级别粒子坐标信息刷新所有粒子信息;S7,根据所得粒子集估计状态统计信息,迭代次数t=t+1,返回步骤S2;S8,通过机器人识别具体的全局参考物,获取机器人室内定位的全局坐标信息;S9,更新自身全局坐标,清理轮式里程计和IMU的积累误差,将各种传感器数据嵌入算法,完成机器人的室内定位。

【技术实现步骤摘要】

本专利技术涉及机器人定位方法领域,更具体的说是,涉及一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法


技术介绍

1、惯性测量单元简称imu,imu测量物体三轴姿态角(或角速率)以及加速度的装置。一般的,一个imu包含了三个单轴的加速度计和三个单轴的陀螺,加速度计检测物体在载体坐标系统独立三轴的加速度信号,而陀螺检测载体相对于导航坐标系的角速度信号,通过imu测量物体在三维空间中的角速度和加速度,并以此解算出物体的姿态。在导航中有着很重要的应用价值。

2、在室内机器人定位中,机器人通过配置的各种传感器获取的数据通过合适的算法为机器人在室内提供位置定位信息。其中航位推算定位是利用轮式里程计或imu等采集的数据信息。在导航算法中常常依据上一状态来推测当前时刻的位置信息。最广泛的方法是基于贝叶斯估计的概率分布方法,包括多假设定位、马尔科夫定位、蒙特卡洛定位、卡尔曼滤波(kalman filter,kf)定位、扩展卡尔曼滤波(extended kalman filter,ekf)定位、无损卡尔曼滤波(unscented kalman filter,ukf)定位和粒子滤波(particle filter,pf)定位等方法。由于航位推算方法利用递归思想,会产生累计误差,如果不能消除累计误差,则不适合长时间、长距离的定位。且imu和轮式里程计都属于机器人的主观定位传感器,未和客观参考物关联、校准。长时间使用会产生的积累误差,使得机器人全局定位坐标的偏离实际位置越来越大,影响定位效果,从而影响机器人其他功能的实现。所以需要融合其他传感器得到的信息校验机器人的全局坐标位置。比如基于深度相机和imu融合的定位,其中深度相机的数据采用的是orb-slam(slam是同步定位与建图的缩写)中的特征点。但是orb-slam算法中特征点多导致计算量较大。其当环境中有重复特征点的时候,orb-slam容易失效,且orb-slam定位中的特征点人类无法识别具体语义。

3、ros系统中有一个经典的机器人定位算法包(robot_pose_ekf)通过扩展卡尔曼滤波算法的松耦合方式融合机器人携带的imu和轮式里程计、相机等传感器的信息,最终为机器人提供定位信息。

4、现有技术“ros系统中有一个经典的机器人定位算法包(robot_pose_ekf)”中相机传感器的数据的运用主要是利用其识别的环境中的特征点,而这种特征点有时候数量庞大,带来不必要的计算量,且人类无法识别具体语义。


技术实现思路

1、本专利技术的目的是提供一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法。

2、本专利技术要解决的是现有技术针对机器人室内定位中利用轮式里程计和imu传感器航迹推算中出现的积累误差越来越大的问题,而传统添加相机传感器的得到的特征点数量庞大,导致计算量过大,并且在某些情况下还失效的问题。

3、与现有技术相比,本专利技术技术方案及其有益效果如下:

4、一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法,包括:

5、s1,根据先验分布初始化采样粒子;

6、s2,判断迭代次数t是否小于t;

7、s3,若迭代次数t小于t,则进行重要性采样;若迭代次数t大于等于t,则结束;

8、s4,输入测量值,并归一化权重;

9、s5,利用重采样得到滤波结果;其中轮式里程计和imu数据通过扩展卡尔曼滤波算法融合得到粒子的建议密度分布函数;

10、s6,优先级别粒子获取物体全局坐标信息,用优先级别粒子坐标信息刷新所有粒子信息;

11、s7,根据所得粒子集估计状态统计信息,迭代次数t=t+1,返回步骤s2;

12、s8,通过机器人识别具体的全局参考物,获取机器人室内定位的全局坐标信息;

13、s9,更新自身全局坐标,清理轮式里程计和imu的积累误差,将各种传感器数据嵌入算法,完成机器人的室内定位。

14、本专利技术的有益效果为:

15、通过机器人识别具体的全局参考物,而不是一堆对人类没有具体语义的特征点,获取机器人室内定位的全局坐标信息。更新自身全局坐标,清理轮式里程计和imu的积累误差。

16、添加优先权粒子的扩展卡尔曼粒子滤波算法,有效将各种传感器数据嵌入算法,完成机器人的室内定位。

17、通过添加优先级别粒子携带的深度相机获取的物体全局坐标信息更新物体目前的定位数据。imu和轮式里程计传感器的航迹推算都属于机器人的主观定位,未和客观参考物关联、校准。长时间使用会产生积累误差。深度相机可获得误差为几个厘米的定位数据,相比其他传感器,精确度较高。且深度相机通过识别全局参考物的获得全局坐标信息是从客观物体采集的,具有全局定位的功能,且精度相对较高。本专利技术采用由深度相机通过yolov5目标检测算法识别参考物体,通过参考物体的全局坐标和与相机的相对位姿深度信息来矫正机器人全局定位。将深度相机获取的全局定位信息作为具有优先级别的定位信息赋值给优先级的粒子,每次定位后刷新机器人全局坐标。

18、能够较好的阶段性消除imu和轮式里程计的累计定位误差,使得机器人在室内的定位误差保持在一定误差范围之内;还能应对机器人被绑架后的重新定位。特别当遇到机器人被绑架的情形,系统辨识到机器人被绑架后(imu数据出现异常突然变动),轮式里程计和imu的融合定位数据失效后,利用添加优先权粒子的粒子滤波算法可以在较短时间内计算出被绑架后机器人的新的全局坐标。且通过增加了获取图像识别得到的全局坐标的定位,便于机器人在行进中进行人机交互中形象地汇报机器人所在地理位置。

本文档来自技高网...

【技术保护点】

1.一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法,其特征在于,包括:

2.根据权利要求1所述的一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法,其特征在于,所述步骤S1包括:

3.根据权利要求1所述的一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法,其特征在于,所述步骤S3中,若迭代次数t小于T,则进行重要性采样,包括:

4.根据权利要求3所述的一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法,其特征在于,所述根据状态转移矩阵、噪声驱动矩阵、观测矩阵和观测噪声驱动矩阵的计算结果使用EKF算法更新粒子集合,包括:

5.根据权利要求1所述的一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法,其特征在于,所述步骤S5包括:

【技术特征摘要】

1.一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法,其特征在于,包括:

2.根据权利要求1所述的一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法,其特征在于,所述步骤s1包括:

3.根据权利要求1所述的一种基于扩展卡尔曼粒子滤波算法的室内机器人定位方法,其特征在于,所述步骤s3中,若迭代次数t小于t,则进行重要...

【专利技术属性】
技术研发人员:郑运鸿周薇李平凡林倩闽朱兰
申请(专利权)人:厦门理工学院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1