杜鑫 朱文亮* 文西芹 朱加豪
(1、江苏海洋大学机械工程学院,江苏 连云港 222005 2、盐城工学院机械工程学院优集学院,江苏 盐城 224007)
同步定位建图(Simultaneous Localization and Mapping,SLAM)作为机器人自主移动的关键技术,已成为众多移动机器人研究者的关注焦点,该技术可以让机器人感知周围环境,并获取其自身位置。定位精度的高低直接关乎到移动机器人能否准确行进到目的地,因此如何提高定位精度是移动机器人领域的重要研究内容。
国内外研究者提出了许多定位与建图方法,包括早期的声纳、超声波定位和后来的射频识别定位技术,以及目前主流的基于视觉传感器与激光雷达的定位与建图方法[1]。基于视觉传感器的方法在较为复杂的场景表现较好,传感器从起初的单目视觉、双目视觉,到RGB-D(深度图像),有较大进步,但视觉传感器存在场景光线依赖程度高和计算资源占用大等缺点[2-3]。激光雷达传感器有2D 和3D 之分,3D 激光雷达成本高,不适用于室内移动机器人的开发与推广。2D 激光雷达通过二维平面点的方式来采集机器人周围环境信息,其精度较高,但因为有效测量距离有限和采集信息量过少,在重定位和闭环检测方面表现欠佳[4]。
超宽带[5](Utral Wideband, UWB)是近年来新兴的一种无载波通信技术,以占空比很低(几十分之一)的超短电磁能量窄脉冲作为信息载体,因此又被称为脉冲无线电,其具有高速数据传输、低功耗、保密性强、高处理增益、抗多径能力强和定位精准等特点,单个标签定位精度可达10cm[6]。但超宽带定位具有漂移误差,在标签与基站之间有遮挡时尤其明显。
针对以上情况,本文提出一种四类传感器融合的室内移动机器人定位方法,该方法是在麦克纳姆轮式移动机器人上,使用超宽带定位为机器人提供初始位姿和绝对坐标,使用加速度计来消除超宽带的漂移误差,使用惯性测量单元(Inertial Measurement Unit, IMU)为机器人提供偏转角度,并使用激光雷达和里程计组合在提前建好的地图中进行自适应蒙特卡洛定位(Adaptive Monte Carlo Localization,AMCL),以此提高移动机器人室内定位精度。
本文的激光雷达定位算法,采用自适应蒙特卡洛定位算法,该算法基于蒙特卡洛统计思想,可理解为将粒子均匀地撒在已知地图中,机器人在移动过程中统计堆积粒子,并用通过多次迭代,估计出机器人自身所处的位置,同时在该过程中融入(Kullback-LeiblerDivergence, KLD)自适应方法,解决了机器人绑架等问题。
本文的超宽带定位方法[7],采用到达时间定位算法,又称TOA(Time of Arrival)定位算法,该算法依据信号传播时间来直接计算出被测点(标签)与参考点(基站)之间的距离。此算法中,标签发送信号到至少3 个以上的基站上,系统通过测量信号到达各个基站的时间,从而获取标签与基站之间的距离,然后再以各个基站为圆心所得距离为半径作圆,各圆的交点便是目的节点的参考位置。TOA 定位算法原理如图1所示。
图1 TOA 模式
已知三个基站坐标为A0(x0,y0)、A1(x1,y1)和A2(x2,y2),激光雷达的红外线信号传播速度V 为光速,t0、t1和t2为信号从标签TAG 到各个基站的飞行时间。标签的坐标设为T0(X,Y),可由以下式(1)求得。
里程计定位算法选用惯性测量单元与轮式里程计组合定位,惯性测量单元采用三轴惯性测量单元来获取机器人的姿态角和位移量,轮式里程计数据由编码器从直流电机上采集。由麦克纳姆轮运动方程与轮子半径,可估计当前位置与偏转角大小:
式(2)中,V1、V2、V3和V4是麦克纳姆轮的线速度,Vx和Vy代表移动机器人在自身X 和Y 方向上的分速度,ω 代表移动机器人绕竖直方向的旋转角速度,L 和W 代表麦克纳姆轮与地面的四个触点构成的矩形长和宽,由此可求得Vx、Vy和ω,继而求出一定时间内移动机器人的位姿变化量。
该方法首先对超宽带定位数据进行扩展卡尔曼滤波处理,将滤波后的超宽带定位数据用作移动机器人的初始绝对坐标,此举可以提高移动机器人初始定位速度。然后在机器人移动过程中,每隔0.5s 将AMCL 定位输出坐标与超宽带定位坐标进行对比,在逻辑判断中,如果二者间出现5%以上的差值,则用超宽带定位坐标对AMCL 定位进行修正,以此来降低里程计组合定位造成的累积误差,该方法通过程序在移动机器人上实现。融合算法流程图如图2 所示。
图2 融合定位流程图
本实验采用对比方式,令移动机器人在室内边长3 米的正方形路线进行顺时针闭环移动。随机截取端点实验数据如表1 所示。
表1 三种定位方法的定位实验数据
超宽带定位效果如图3 所示,其定位轨迹存在明显的漂移误差。
图3 单一超宽带定位轨迹图
单一里程计的定位轨迹如图4 所示,其定位轨迹存在较大的累积误差。
图4 单一里程计定位轨迹图
激光雷达、里程计与UWB 融合的定位轨迹如图5 所示,累积误差较里程计定位有所减少,且能基本实现轨迹闭环。
图5 激光雷达、里程计与超宽带融合轨迹图
5.1 传统AMCL 定位方法是在移动机器人行进过程中,不断迭代处理粒子来实现定位,而利用机器人自主初始化位姿的方法,时间更是长达90s 左右。本研究中引入了超宽带定位方法,在10s 内即可完成初始定位,显著提高了室内移动机器人初始定位速度。
5.2 在融合定位方法中,超宽带定位为移动机器人提供了绝对坐标,消除了里程计与惯性测量单元在定位上的累积误差,融合后的定位轨迹能基本实现闭合,较里程计与惯性测量单元的组合定位,闭环效果更好。
通过实验数据分析,该定位算法较AMCL 定位方法加快了位姿初始化的速度,时间节省了80s 左右;其全局定位精度较单一超宽带定位方法或激光雷达、里程计组合定位方法,都有不同程度的提高,尤其相于AMCL 定位方法,定位精度可提高8%。该方法对室内移动机器人定位精度的提高具有一定的参考价值。