基于UMBmark算法的移动机器人定位试验研究

2018-01-31 12:09张胜宾赵祚喜
现代电子技术 2018年3期
关键词:系统误差移动机器人定位

张胜宾+赵祚喜

摘 要: 测程法是使用最广泛的移动机器人自主定位方法,具有短时定位精度较高,成本低廉的特点,缺点是无界的误差累积。在光滑规则的地面上运动时,系统误差是测程法的主要来源。为了提高移动机器人自主定位的精度,国内外专家尝试了多种改进方法,其中,UMBmark 校核算法是使用最广泛的方法之一。概述了UMBmark 校核方法“双向正方形路径试验”及其简化模型,利用Pioneer3?AT差动轮式移动机器人完成了UMBmark校核试验。结果表明,UMBmark校核算法使得Pioneer3?AT机器人自主定位的精度和稳定性均有较大提高。

关键词: 移动机器人; 定位; 测程法; UMBmark算法; 系统误差; 校核试验

中图分类号: TN911.1?34; TP242.6 文献标识码: A 文章编号: 1004?373X(2018)03?0080?04

Abstract: The odometry as one of the most widely?used autonomous positioning methods of mobile robot has the characteristics of high short?time location accuracy and low cost, but has unbounded error accumulation. The system error is the foundation of the odometry method when the robot is moving on a smooth and regular ground. In order to improve the accuracy of mobile robot′s autonomous location, multiple improved methods have been tried by the experts in China and other countries, in which the UMBmark calibration algorithm is one of the most widely?used methods. The UMBmark calibration method for bidirectional square path test and its simplified model are summarized. The Pioneer3?AT differential wheeled mobile robot is used to complete the UMBmark check test. The test results show that the UMBmark calibration algorithm can improve the positioning accuracy and stability of Pioneer3?AT robot greatly.

Keywords: mobile robot; location; odometry; UMBmark algorithm; system error; calibration test

0 引 言

准确、可靠的位置信息是移动机器人导航的基本前提,是研究的关键问题之一[1]。定位是确定机器人在工作环境中相对于全局坐标的位姿[2]。现有的移动机器人自主定位方法有多种分类方法,最常见的一种是把定位分为相对定位和绝对定位[3]。

相对定位是通过测量机器人相对于初始位置的距离和方向来确定机器人的当前位置,包括惯性导航和测程法[4]。测程法不需要外部传感器信息,而是通过自身的传感器如光电编码器、陀螺仪等实现机器人自定位,具有短时间定位精度较高,成本低廉的特点,使用普遍。它的缺点在于无界的误差累积[3]。测程法的误差包括系统误差与非系统误差, 系统误差与机器人当前的外界环境无关,取决于机器人设计的合理性及制造精度等因素,因此其对机器人自主定位误差的影响是重要的误差来源[5?6]。

在光滑规则的室内地面上运动时,系统误差是机器人自主定位的主要来源。为了提高移动机器人自主定位的精度,国内外专家尝试了多种改进方法, 其中UMBmark校核算法是使用最广泛的方法之一[7]。

本文概述了UMBmark校核方法“双向正方形路径试验”及其简化模型,然后利用Pioneer3?AT差动轮式移动机器人完成UMBmark校核试验。通过与校核前位置误差相比,试验结果验证了UMBmark校核方法在提高移动机器人自主定位精度方面的有效性。

1 UMBmark校核算法

1.1 UMBmark校核算法简介

密歇根大学机器人试验室的Borenstein等人认为,“不相等的轮直径”和“轮距的不确定”是导致测程法系统误差的主要因素[5,8],其基本思想是通过建立测程法系统误差简化模型,通过“双向正方形路径试验”(即UMBmark试验)测量位置误差,得到“不相等的轮直径”和“轮距的不确定”两个因素导致的系统误差,然后通过调校车轮直径和轮距参数来消除其影响,从而提高里程计的定位精度。UMBmark校核算法不需要复杂的设备且容易实现。

1.2 UMBmark试验方法

UMBmark校核算法用表示由于左、右轮不相等的直径而导致的系统误差,定义为:

式中指机器人左、右驱动轮的实际直径。

用表示由于实际轮距和标称轮距不相等而导致的系统误差,定义为:

式中指机器人的实际轮距和标称轮距。

为了使和导致的系统误差不相互抵消,UMBmark校核算法引入了 “双向正方形路径试验”(即UMBmark试验),UMBmark试验要求差分移动机器人在顺时针和逆时针方向进行正方形路径试验[8],试验方法如下:endprint

步骤一:开始试验前,测量机器人在工作环境中的绝对位置信息,编程实现机器人走4 m×4 m的正方形路径;

步骤二:使机器人在顺时针方向沿着4 m×4 m的正方形行走,并实现:

① 机器人每直线行走4 m后停止;

② 在正方形路径的拐弯处完成90°的定点旋转;

③ 为防止轮子打滑,要求机器人缓慢移动;

④ 机器人回到初始位置时测量其此时的绝对位置信息;

⑤ 计算机器人的位置误差;

步骤三:重复步骤二,获得另外4次顺时针运动的位置误差;

步骤四:在逆时针运动时重复步骤二,获得逆时针运动的5次位置误差。

1.3 UMBmark校核算法的简化模型

Borenstein等人给出了TypeA和TypeB两类方向误差,分别用和表示[8?9] 。其中TypeA误差指机器人沿着顺时针和逆时针方向完成正方形路径试验时减少(或增大)机器人旋转角度总量的方向误差;TypeB误差指机器人在一个方向运动时减少(或者增大)机器人旋转角度总量而在另一个方向运动时增大(或者减少)机器人旋转角度总量的方向误差。

基于TypeA误差和TypeB误差定义,UMBmark校核算法建立了测程法系统误差的简化模型。假定:

1) “不相等的轮直径”和“轮距的不确定”是测程法系统误差的主要来源;

2) “轮距的不确定”仅对机器人旋转运动造成误差,而对直线运动无影响;

3) “不相等的轮直径”仅对机器人的直线运动造成误差,而对旋转运动无影响;

4) “轮距的不确定”只造成TypeA误差,而不造成TypeB误差;

5) “不相等的轮直径”只造成TypeB误差,而不造成TypeA误差。

UMBmark校核算法给出了下面一系列的方程,利用下列方程可以求解得到差分移动机器人的系统参数()及对应的校核系数()。

式中:为TypeA的方向误差;为TypeB的方向误差;为UMBmark试验中顺时针方向移动时的位置误差重心;为UMBmark试验中逆时针方向移动时的位置误差重心;为UMBmark试验中正方形路径边长;为弧线的曲率半径;为机器人实际左轮直径;为机器人实际右轮直径;为由于不相等的轮直径而导致的系统误差;为由于轮距的不确定而导致的系统误差;为左编码器换算系数;为右编码器换算系数;为机器人轮距;为机器人实际轮距;为机器人标称轮距。

基于上述方程组可以求出和根据UMBmark校核算法建立的简化模型可知,通过对轮直径和轮距的补偿,就可以提高移动机器人测程法的定位精度。

2 试验设备与方法

2.1 试验设备

以美国Adept Mobile Robots公司的Pioneer 3?AT 移动机器人作为UMBmark校核算法的试验平台,如图1所示。Pioneer 3?AT为差动驱动式移动机器人,为客户端?服务器控制结构,自带的机载计算机或外接计算机可作为上位机控制下位机。采用四轮驱动,每个轮子都同一个驱动电机和光电编码器相连。电机用于驱动轮子,光电编码器随轮子同步旋转,左侧两轮和右侧两轮分别采用同步带相连[10]。Pioneer3?AT采用ADXRS300低成本的陀螺仪来测量机器人的航向角度,然后利用卡尔曼滤波将陀螺仪与编码器测得的機器人航向角进行滤波融合,来修正轮子打滑等导致的编码器测角误差,提高定位精度[10]。

2.2 UMBmark试验过程

按照UMBmark试验步骤,首先在试验室地面确定一个4 m×4 m的正方形,如图2所示,并确定机器人的起始位置。然后编程实现机器人沿正方形顺时针和逆时针行走,机器人停止后测量其与起始位置的轴向和纵向误差,得到一组误差数据。重复完成5次顺时针方向和5次逆时针方向4 m×4 m的正方形行走,得到10次机器人位置误差分布图,如图3所示。

机器人顺时针和逆时针的UMBmark试验,得到的10组里程计误差分布在一个特定的区域,为了更准确地表示系统误差,用该特定区域的重心来表示里程计在顺时针方向和逆时针方向的系统误差。

利用式(9)得到10组里程计位置和方向误差。

式中:表示得到的里程计位置和方向误差;表示机器人的实际位置和方向;表示里程计得到的机器人沿位置和方向。

利用式(10)得到机器人沿顺时针或逆时针的误差分布区域的重心坐标:

式中分别表示顺时针/逆时针误差分布区域的重心坐标。

利用式(11)得到机器人沿顺时针/逆时针误差分布区域的绝对误差:

式中分别表示顺时针或逆时针得到的误差分布区域的绝对误差。

利用式(12)得到机器人里程计的系统误差:

3 试验结果与分析

表1所示为校准前机器人的里程计定位误差,表2所示为UMBmark校准后机器人里程计定位误差。图4显示了未校核机器人的试验结果及利用UMBmark校核后所获得的试验结果。

从图4可以看出,校核前,Pioneer3?AT顺时针行走时,里程计误差分布区域的绝对误差为176 mm,校核后为116 mm,UMBmark校核算法使得机器人里程计定位误差精度提高了34%;校核前,Pioneer3?AT逆时针行走时,里程计误差分布区域的绝对误差为336 mm,校核后为291 mm,UMBmark校核算法使得机器人里程计定位误差精度提高了14%;UMBmark校核算法利用表示里程计的系统误差的大小,从图4可以看出,Pioneer3?AT校核前为336 mm,经过UMBmark算法校核后为291 mm,试验结果表明 UMBmark校核算法使得机器人里程计总体定位误差精度提高了14%。endprint

从图4还可以看出,校核前,Pioneer3?AT机器人顺时针和逆时针行走时的误差分布均较分散,里程计定位精度稳定性较差;经过UMBmark算法校核后,误差分布相比校核前均较集中,定位精度稳定性有了较大提高。

4 结 论

本文概述了UMBmark校核方法“双向正方形路径试验”及其简化模型,然后利用Pioneer3?AT差动轮式移动机器人完成了UMBmark校核试验。试验结果表明,UMBmark校核算法使得Pioneer3?AT机器人里程计顺时针行走时定位误差精度提高了34%,逆时针行走时定位误差精度提高了14%。顺时针和逆时针行走时多次试验的误差分布相比校核前均较集中,定位精度稳定性有了较大提高。

参考文献

[1] SIEGWART R, NOURBAKHSH I R. Introduction to autonomous mobile robots [M]. London: The MIT Press, 2004: 83?87.

[2] LU F, MILIOS E. Robot pose estimation in unknown environments by Mathing 2D rang scans [J]. Intelligent robot systems, 1997(18): 249?275.

[3] 宗光华,邓鲁华,王巍.一种鲁棒的室外移动机器人定位方法[J].北京航空航天大学学报,2007,33(4):454?458.

ZONG Guanghua, DENG Luhua, WANG Wei. Robust localization algorithms for outdoor mobile robot [J]. Journal of Beijing University of Aeronautics and Astronautics, 2007, 33(4): 454?458.

[4] 李群明,熊蓉,褚健.室内自主移动机器人定位方法研究综述[J].机器人,2003,25(6):560?567.

LI Qunming, XIONG Rong, CHU Jian. Localization approaches for indoor autonomous mobile robots: a review [J]. Robot, 2003, 25(6): 560?567.

[5] 王卫华.移动机器人定位技术研究[D].武汉:华中科技大学,2005.

WANG Weihua. Research on localization technology for mobile robots [D]. Wuhan: Huazhong University of Science & Techno?logy, 2005.

[6] 陶敏,陈新,孙振平.移动机器人定位技术[J].火力与指挥控制,2010,35(7):169?172.

TAO Min, CHEN Xin, SUN Zhenping. Positioning techniques of mobile robot [J]. Fire control & command control, 2010, 35(7): 169?172.

[7] CHONG K S, KLEEMAN L. Accurate odometry and error mo?deling for a mobile robot [C]// Proceedings of 1997 IEEE International Conference on Robotics and Automation. Albuquerque: IEEE, 1997: 2783?2788.

[8] BORENSTEIN J, FENG L. Measurement and correction of systematic odometry errors in mobile robots [J]. IEEE transactions on robotics and automation, 1996, 12(6): 869?880.

[9] 王卫华,熊有伦,孙容磊.测程法系统误差的测量与校核[J].机器人,2004,26(5):444?460.

WANG Weihua, XIONG Youlun, SUN Ronglei. Measurement and calibration of systematic errors of odometry [J]. Robot, 2004, 26(5): 444?460.

[10] 张胜宾,赵祚喜.基于卡尔曼滤波的轮式移动机器人定位实验研究[J].机电工程技术,2010,39(2):44?45.

ZHANG Shengbin, ZHAO Zuoxi. Kalman filter?based research on mobile robot localization experiment [J]. Mechanical & electrical engineering technology, 2010, 39(2): 44?45.endprint

猜你喜欢
系统误差移动机器人定位
移动机器人自主动态避障方法
《导航定位与授时》征稿简则
Smartrail4.0定位和控制
找准定位 砥砺前行
基于ADS-B的航空器测高系统误差评估方法
基于Twincat的移动机器人制孔系统
基于Bagging模型的惯导系统误差抑制方法
存在系统误差下交叉定位系统最优交会角研究
青年择业要有准确定位
基于奇异谱的精密离心机空气轴承主轴回转系统误差分析