基于单舵轮AGV的 Gmapping SLAM导航算法研究

  • A+
所属分类:AGV资料
摘要

由于传统SLAM方法采用的是差速驱动AGV的运动模型,差分驱动AGV主要应用在3C、电商、快递等领域,而在其他更广泛的工业领域里,大量应用的还是单舵轮AGV,故进行了基于单舵轮AGV的Gmapping SLAM导航算法的研究,并在ROS平台上进行了算法的实验验证,结果表明该算法具备可行性及优越的建图能力。

0 引言

目前,传统的定位与环境地图获取仍需通过大量人力对周围的环境进行精确测量,过程耗时费力,同步定位与地图构建(SLAM)的方法为当前移动机器人的研究热点。传统SLAM方法采用的为差分驱动的运动学模型,但差分驱动AGV(自动导引车)的应用领域受限,主流的工业移动机器人领域里,大量应用的还是单舵轮AGV,单舵轮AGV在实际应用项目中的图片如图1所示,故本文针对单舵轮AGV的Gmapping SLAM导航算法进行了研究,主要内容如下。

基于单舵轮AGV的 Gmapping SLAM导航算法研究

图1 单舵轮AGV应用示例

1 Gmapping算法

Gmapping算法针对传统RBPF算法的需大量粒子拟合目标分布且频繁重采样操作导致粒子耗散的缺点,实现融合观测信息的改进提议分布与自适应重采样来限制重采样次数的改进。

1.1 常规RBPF SLAM算法

在常规RBPF SLAM算法中,粒子滤波用来近似描述机器人的位姿置信度分布信息,其每个粒子均包含单独的地图信息。其使用给定的该时间段机器人观测数据z1:t与该时间段里程计测量序列u1:t-1来估计机器人轨迹分布x1:t与地图m,并获取机器人的位姿x1:t和环境地图m联合后验的概率估计。该算法将地图状态估计与位姿状态估计分离,实现允许先估计机器人轨迹,再在给定轨迹的基础上计算轨迹地图,由下式表示实现原理。
基于单舵轮AGV的 Gmapping SLAM导航算法研究
由于机器人位姿x1:t和里程计测量数据z1:t已知,地图后验概率p(m│x1:t,z1:t)可根据观测数据与相应粒子位姿建立,同时为计算得到机器人位姿后验概率估计信息p(x1:t│z1:t,u1:t-1),采用粒子滤波算法,每个粒子代表移动机器人一个潜在轨迹信息,粒子滤波算法核心思想为运用随机采样样本加权和来近似描述后验的概率密度函数,然后通过求和操作近似积分操作。故在滤波算法中,用对变量采样来表示概率,用大量采样并求解其相应权值来近似描述其概率密度函数。粒子滤波算法流程步骤如下:
1 ) 采样阶段:粒子滤波首先从建议分布π(xt│z1:t,u0:t)中采样下一代粒子{xti },运用粒子加权和来逼近后验的概率密度;
2)粒子重要性采样:选取里程计运动模型作为提议分布的函数,求出当前粒子集合与每个粒子评价其相应的重要性权值wxti
3)粒子重采样阶段:依据权值比例重新分布采样粒子。丢弃部分权值过低粒子,复制同数量高权值的粒子,下一轮滤波中,在状态转移方程输入重采样的粒子集,即可获取新预测粒子;
4)增量式地图更新:针对每个样本粒子xxt(i) ,根据机器人当前轨迹x(i)1:t和传感器的观测数据z1:t,来计算相应地图信息估计mti

1.2 改进提议分布

传统粒子滤波器运动模型仅依靠里程计运动模型作为其重要性概率密度函数。同时其权值也仅依据里程计模型信息更新。但该模型精确度并不是很理想,AGV
装配的激光雷达(如倍加福的R2000)所获得的测量数据比里程计数据精准很多,故在生成下一次粒子时采用将最近观测数据zt考虑进去。通过将其整合到概率分布中,可以将抽样集中在观测似然有意义的区域。此改进建议分布为:
基于单舵轮AGV的 Gmapping SLAM导航算法研究
运用此建议分布计算权重时,其公式为:
基于单舵轮AGV的 Gmapping SLAM导航算法研究
上式在原来的仅依靠机器人里程计数据ut-1基础上融合最新观测数据zt,其能够更加精准获取采样粒子,极大减少所需粒子数量。

1.3 自适应重采样

针对对粒子滤波算法有重要影响的重采样步骤,其重采样步骤为运用低权值粒子采样替代高权值粒子采样,同时重采样步骤也存在将权值高的粒子滤去的可能性,由于为逼近目标分布所用的粒子数量有限,随着重采样步骤进行,粒子的多样性逐渐减少,最终粒子耗尽导致算法的失效。故需采用有效的粒子数量来评估粒子的权值退化程度,即:
基于单舵轮AGV的 Gmapping SLAM导航算法研究
其中, ~i W是粒子x_i归一化化权重,M是粒子数目,Neff为评估粒子权重分散程度参数,粒子集的多样性与其成正比,故在当Neff< N/2时才需要进行重采样操作。

2 单舵轮运动模型

移动机器人单舵轮里程计数据信息为:
1)位姿(位置坐标(X,Y)与转角Z)。
2)速度(移动机器人前进速度的线速度V与移动机器人转向速度的角速度ω)。
单舵轮AGV由一个舵轮与两个固定从动轮组成,舵轮同时具备行走与转向两个功能,因此,单舵轮AGV运动学自由度有2个,即舵轮的线速度Vf与舵轮的转角α,其轮系布局图如图2所示。

基于单舵轮AGV的 Gmapping SLAM导航算法研究

图2 单舵轮AGV轮系布局图

基于单舵轮AGV的 Gmapping SLAM导航算法研究
b为轴距;
d为轮距。
则由几何运算可知O1点的里程计数据的速度为:
基于单舵轮AGV的 Gmapping SLAM导航算法研究
设定移动机器人在坐标系上初始位姿为Q(X0
Y0,Z0),如图3所示,则可计算出其下一时刻位姿W
(X1,Y1,Z1)的里程计位姿数据:
基于单舵轮AGV的 Gmapping SLAM导航算法研究
其中,舵轮Vf与α可通过行走编码器与转向编码器求解,b、d是单舵轮AGV车模型参数,dt是程序运行周期。

基于单舵轮AGV的 Gmapping SLAM导航算法研究

图3 AGV移动图

3 基于ROS的单舵轮SLAM

3.1 单舵轮机器人模型构建

URDF是为描述机器人仿真模型而生成的XML语言。Xacro为URDF进化的版本,Xacro能够精简URDF仿真模型的代码并可提供可编程接口来进行参数的修改和计算功能。其主要定义joint与link,其中link包含刚体外观、惯性参数、碰撞属性等信息,joint中包含描述机器人关节运动学和动力学属性信息。研究所构建的单舵轮机器人模型如图4所示。

基于单舵轮AGV的 Gmapping SLAM导航算法研究

图4 单舵轮机器人模型图

3.2 搭建物理仿真环境

Gazebo物理仿真的搭建需要基于ros_control的软件框架,它是机器人控制中间件,使上层与底层硬件可以很好连接,弥补算法与底层硬件间缺失的控制部分内容。Gazebo独立于ROS,它与ROS间有一个接口来完成连接,它可以在三维的环境中对传感器、控制器、机器人及物体进行仿真,可以产生实际的传感器反馈与物体间的物理响应。本研究在Gazebo中创建仿真环境如图5所示,并将所搭建的单舵轮模型放入其中。

基于单舵轮AGV的 Gmapping SLAM导航算法研究

图5 仿真环境图

3.3 基于单舵轮AGV的Gmapping SLAM导航算法

算法所需输入为AGV里程计信息、激光观测数据信息、激光雷达坐标系与AGV基坐标系tf变换、里程计坐标系与AGV基坐标系tf变换,前一个tf由robot_state_publisher发布,后一个tf及里程计信息由编写的里程计节点发布。单舵轮车实现Gmapping的过程在RVIZ中显示如图6所示。

基于单舵轮AGV的 Gmapping SLAM导航算法研究

图6 建图过程图

4 算法仿真与分析

实验运行平台是Ubuntu的操作系统, 软件配置平台采用kinetic版本的ROS,应用ROS的三维可视化工具RVIZ可视化实验结果。移动机器人运行过程中尽量减少快速转弯,同时要让移动机器人行进过程中完成一个闭环,调用map_server功能包的map_saver命令保存建图结果,实验结果如图7所示,在图中白色表示已扫描的无障碍物区域,黑色区域表示扫描到的地图中障碍物,算法采样了50个粒子,将所创建的地图图7与Gazebo中创建的仿真环境图图5对比,精度满足应用要求。

基于单舵轮AGV的 Gmapping SLAM导航算法研究

图7 创建的地图

5 结语

传统SLAM实现运用的为差分驱动机器人模型,但其应用环境受限,其主要应用在3C、电商、快递等领域,而在其他更广泛的工业领域里,大量应用的还是单舵轮AGV,差分驱动机器人并不适用。本文为解决室内移动机器人的SLAM问题,以ROS为平台,Gmapping算法为基础,研究基于单舵轮AGV的Gmapping SLAM导航算法,其精度满足工业环境要求。

参考文献:
[1] 张琦.移动机器人的路径规划与定位技术研究[D].哈尔滨工业大学,2014.
[2] JiaDanping. Simultaneous Localization and Mapping based onLidar[A].东北大学、中国自动化学会信息物理系统控制与决策专业委员会.第31届中国控制与决策会议论文集(5)[C].东北大学、中国自动化学会信息物理系统控制与决策专业委员会:《控制与决策》编辑部,2019:5.
[3] 高文研,平雪良,贝旭颖,陈威.两种基于激光雷达的SLAM算法最优参数分析[J].传感器与微系统,2018,37(4):28-30,33.
[4] 耿牛牛.单舵轮AGV路径跟踪方法的研究[J].制造业自动化,2011,33(7):81-82.
[5] 栾春雨.移动式家居服务机器人的自主导航研究及实现[D].哈尔滨工业大学,2017.
[6] 赵新洋.基于激光雷达的同时定位与室内地图构建算法研究
[D].哈尔滨工业大学,2017.
[7] 李安旭.移动机器人即时定位与地图构建技术研究[D].电子科技大学,2019.

发表评论

您必须才能发表评论!