Equipment Manufacturing Technology No.10,2020
基于麦克纳姆轮的智能小车SLAM导航研究
吴迪,杜峰,蔡一杰,史星彦,胡乐媛
(天津职业技术师范大学,天津300222)
摘要:针对普通自主运动方式冗杂、反复的问题,以四麦克纳姆轮全向移动智能小车为研究对象,通过搭载ROS机器人操作系统,融合激光雷、里程计、IMU等传感器,基于Cartographer算法的麦克纳姆轮智能小车建图、导航效果分析。结果表明,研究能够实现麦克纳姆轮智能小车在陌生环境下地图的实时构建,且拥有良好的全局导航及局部避障能力。
关键词:麦克纳姆轮;ROS;Cartographer
中图分类号:TP311文献标识码:A文章编号:1672-545X(2020)10-0020-06
0引言
同步定位与建图(Simultaneous Localization And Mapping,SLAM)技术作为智能化研究的重要一环,目前
已广泛应用于物流车、仓储机器人等领域,而麦克纳姆轮作为一种全向移动的运动方式,其转向范围较小,在一些特定的复杂环境下比普通的运动模式更为简单、便捷,如Airtrax开发的Sidewinder系列叉车、Vetex开发的RoboMate全向移动机器人平台、Kuka公司的YouBot等产品,可在狭窄、紧凑的区域内运动。当前对麦克纳姆轮的相关研究已逐渐成熟,Sarmento L等⑴设计的基于麦克纳姆轮的全向移动机器人实现了基于无线的远程遥控;Sang Won Yoon等囚针对麦克纳姆轮在运动过程中的滑移问题,提出多传感器数据进行卡尔曼滤波融合,消除了传感器和滑移的噪声影响,实现了麦克纳姆轮移动机器人的精确定位。本文以麦克纳姆轮智能小车为研究对象,在ROS(Robot Operating System)系统下研究关于SLAM自主导航与避障,并验证其可行性。
1系统框架
本文在基于麦克纳姆轮的智能小车上,搭载ROS操作系统,通过传感器探索未知区域收集环境信息,实现实时同步定位与建图(SLAM),并通过所建地图规划路径,实现自主导航避障。
1.1硬件架构
系统硬件包括麦克纳姆轮底盘小车,激光雷达、里程计等传感器,麦克纳姆轮底盘小车集成了ROS系统,激光雷达、IMU(Inertial Measurement Unit)、里程计等传感器搭载在小车上,其硬件架构如图1所示。
图1硬件架构
IMU・—驱动板(STM32)—►编码电机(里程计)
智能小车装载树莓派(内置ROS系统),通过WIFI与PC相连,借用ROS的分布式通信可将主机转移至PC端,实现远程操控。激光雷达收集点云信息,通过USB信号传输给树莓派,树莓派对信息进行相关算法处理后生成控制指令,传输给驱动板控制车轮转速,驱使小车运动,同样IMU、里程计的速度信号可反馈至树莓派。
1.2软件架构
智能小车装载树莓派,以ROS系统为软件平台,连接上层环境感知与下层运动控制叫ROS是一款机器人操作系统,集成了大量的库、工具、协议等,提供了一系列可供传感器数据传递、可视的通用类功能包,基于TCP/IP的通信方式,实现软硬件的实时通信。软件层架构如图2所示。
收稿日期:2020-07-23
基金项目:天津市人工智能科技重大专项(17ZXRGGX00070);天津市科技计划项目(19ZLZXZF00150)作者简介:吴迪(1994-),男,湖北孝感人,硕士研究生,研究方向:智能网联汽车。
《装备制造技术)2020年第10期
ROS 模块化的通信机制将整体程序分为三部 分,感知层、决策层与下层控制。感知层为各传感器
的数据输入,导入决策层后通过相关算法分析,生成
控制指令传输给下层控制,控制小车运动叫
2运动学模型
2.1麦克纳姆轮简介
麦克纳姆轮是一种可全向移动的控制方式,由
轮毂和辊子组成,轮毂轴与辊子转轴空间上呈45。
角,如图3所示,麦轮在运动过程中,辊子与地面摩 擦产生摩擦力,摩擦力的方向与辊子轴的方向相反。
轮毂轴
(a)效果图
45'轮毂轴
摩擦力
辊子轴
(b)平面图
(c)受力图
图3麦克纳姆轮
麦轮四个一组应用,两个左旋轮,两个右旋轮,
左右轮呈手性对称,但不同安装方式其受力不同,运
动效果也不同。本文安装方式如图4所示。
2.2运动学模型
刚体在平面的运动可分解为三个独立分量,将
麦轮整体运动视为刚体运动,建立如图3所示坐标
系,智能小车运动速度为将其分解为三个独立变
量,即沿X 轴方向速度s ,Y 轴方向速度终和自转 角速度棕,以X 轴,Y 轴正方向,逆时针方向为正方
向,如图5(a )所示。每个轮子线速度为4,角
速度为棕I,棕2,棕3,棕4,轮间距为D,轴间距为L,如图5 (b)所示。
忙=了+v?=v 「棕 £
1)
同理可得出各个轮子的
X  = 棕•琴
v  1y
V 『…与一棕号
v  心〜+棕号
V 汀…苓
—D
V
心〜+棕号
2)
Equipment  Manufacturing  Technology  No.10,2020
图5运动分析图
a)运动分解
V
X 轴
H
(b)轮 1
7
O
棕2 =棕3 =
棕4 =
智能汽车
可以得到麦克纳姆轮智能小车正运动学方程比
逆运动学方程叫
-V ” + ”" + (L  + D )棕
R  2R V x  + "” _ (L  + D )棕R  2R
/、( 4)
_V x  + ”" _ (L  + D)棕R  - 2R
V x  + "” + (L  + D )棕R  2R
因此,若给定小车一个速度状态,可通过式( 4)
控制小车轮子转速进而控制智能小车运动。
3 SLAM :同步定位与建图
SLAM 即同步定位与建图,是指通过对陌生区域 的探索,实时构建出此环境的完全地图。在陌生区域 内,要构建地图就需要自身准确的定位信息,而要掌握
自身位姿的信息也需要对比地图分布,因此,在SLAM  问题中,主要处理的是地图信息及本身的位姿信息,且 定位与建图同步进行。SLAM 模型如图6所示。
图6中,灰三角形与实线表示小车t  (t  =
1,2,)时刻的实际运动位姿,表示小车t 时刻的位姿
状态,白三角形与虚线表示对小车t 时刻估计的位 姿信息,方形代表路标信息。小车运动使得自身位姿
发生变化,里程计对位姿信息进行更新,但在实际运
行过程中,因为环境因素,运动模型误差,信息延迟
等因素,对小车的位姿估计往往与实际值产生较大
误差,并且误差伴随着系统不断运算而累积叠加,这
也就需要智能小车在运动过程中通过传感器的观测
信息(激光、IMU 等)不断矫正误差,利用激光、IMU
信息自定位[7]o 总的来说,SLAM 问题实质是针对位姿
信息“估计-观测-校正-估计”不断循环的过程。
3.1基于图优化的SLAM 理论
SLAM 算法大体分为两类:基于滤波的SLAM 算
法与基于图优化的SLAM 算法。基于滤波的SLAM  算法原理是根据传感数据信息去估计机器人当前时
刻的位姿信息,其问题在于,若位姿估计错误会使得
之后的计算无法修正,特别是大型复杂环境下此缺
点尤为突出。
与基于滤波的方法不同,基于图优化的SLAM  不仅仅是对小车当前位姿的估计,而是对整体运动
轨迹和地图的完整估计。将SLAM 问题描述成图结
构,图由节点与边组成,其节点(Node )表示小车位姿
信息,而位姿之间的空间约束则构成边(Edge)叫图
优化SLAM 可分解成两部分:(1)构建图,小车位姿
为节点,位姿约束关系为边,称为前端(Front-end); (2)优化图,即调整小车位姿节点以满足边的约束, 称为后端(Back-end )o 本文采用基于图优化的Car-
tographer-SLAM  算法。
《装备制造技术)2020年第10期
3.2 Cartographer  算法架构
Cartographer 算法凹是基于图优化理论的SLAM
框架,分为局部SLAM (也称前端)和全局SLAM (也称
后端),其建图步骤如图7所示,Cartographer 框架如 图8所示。
图7建图步骤
4实验
图8 Cartographer 算法框架
( 1)局部 SLAM
由IMU 和里程计通过互补滤波的方式预测初始 的位姿,建立匹配机制,即通过非线性最小二乘进行
优化求解得到最优匹配,算法中通过调用Ceres 库何 执行。激光扫描后,得出的位姿可看作一个节点,且 点云信息会经由体素滤波器去除冗余的点云信息, 然后与IMU 、里程计预测的位姿子图进行匹配Scan  to  map [10],优化位姿的同时不断插入数据帧使得子图 更新,当子图不再更新即认为子图创建完成。接着去
创建下一个子图,得出的最优位姿用作下一次的初 始位姿,循环过程。
(2) 回环检测
Cartographer 通过创建大量的子图来实现场景建 图,子图在短时间内的准确度是可靠的,但长时间会存
在累积误差,为了消除累积误差,需要通过回环检测来 构建回环,最终是为了优化所有子图的位姿,检测回环
的方法为分支定界法叫将检测的节点所携带的点云 与当时的子图进行匹配,可得到回环约束位姿。
(3) 全局 SLAM
根据局部SLAM 过程,节点与节点之间存在边的
约束,节点与子图之间可看作局部约束,但对于回环 约束,有可能节点与子图不一定在同一轨迹中,即同
一节点可能与多个子图存在匹配关系,这也就是全局
约束,针对全局的约束问题进行优化即为全局SLAM  的过程。
实验设备为PIBOT 智能小车,装载激光雷达思
岚A2,内置编码里程计、IMU ,环境为室内实验室,如 图9(a)所示。
(a)麦克纳姆轮智能小车
(b)实验室
(c )构建实验室地图
图9实验设备与环境
Equipment  Manufacturing  Technology  No.10,2020
通过PC 端与小车WIFI 相连,控制小车移动探
索区域建图,遍历实验室环境(图9(b)),通过Car ­tographer  算法构建出的地图效果如图9(c)所示,从
图9(b )和图9(c )中可以看出,所构建的地图能够反
映出实验室的环境特征,其中桌面下端是连通的,符
合环境特征。
智能小车导航,全局路径规划采用A*算法[11],
局部路径规划采用DWA 算法[12]。根据构建的地图给
定机器人目标点与起始点,如图10(a)所示,机器人 按照规划的路径自主导航。在全局的路径上放置障 碍物,如图10(b )所示,其路径随之改变图10(c ),机 器人成功避开障碍物到达目标终点。
(a)全局路径规划
(b)局部避障
5结束语
麦克纳姆轮全向移动智能小车搭载ROS 系统,
基于Cartographer 算法下能完成室内环境下的同步 定位与地图构建,且能实现自主导航与实时避障功
能,对全向移动的定位导航具有良好的应用价值。
参考文献:
[1] Sarmento  L , Nunes  F , Martins  R  S , et  al. Remote  control
system  for  a  mobile  platform  with  four  mecanum  wheels  [J].
International  Journal , 2017( 1): 274.
[2] Sang  W  Y ,Park  S  B , Kim  J  S. Kalman  filter  sensor  fusion  for  mecanum  wheeled  automated  guided  vehicle  localization  [J]. Journal  of  Sensors , 2015, 2015(8):1-7.
[3] 张军,韦鹏,王古超.基于ROS 的全向移动机器人定位导航 系统研究[J].组合机床与自动化加工技术,2020(6): 119- 122.
[4] 吴成鼎.基于Cartographer 的室内SLAM 系统研究与实现 [D].福州:福州大学,2018.
[5] 黄加俊,卿兆波,张珠耀,等.基于激光SLAM 的全方位移动
机器人控制系统设计[J].科技通报,2020,36(7):81-85.[6] 靳士超.基于麦克纳姆轮的全向智能移动机器人导航系统 研究[D].苏州:苏州大学,2018.
[7] 李旳泽.基于激光雷达的室内机器人SLAM 研究[D].广州: 华南理工大学,2016.
[8] 贾浩.基于Cartographer 算法的SLAM 与导航机器人设计 [D].济南:山东大学,2019.
[9] 刘智宇.基于扫地机器人的SLAM 算法研究与实现[D].西
安:西安电子科技大学,2019.
[10] Hess  W  , Kohler  D  , Rapp  H  , et  al. Real-time  loop  clo ­sure  in  2D  LIDAR  SLAM[C]// 2016 IEEE  International  Con ­
ference  on  Robotics  and  Automation ( ICRA ). IEEE , 2016.[11] 祁玄玄,黄家骏,曹建安.基于改进A~*算法的无人车路
径规划[J].计算机应用,2020,40(7): 2021-2027.
[12] 王洪斌,尹鹏衡,郑维,等.基于改进的A~*算法与动态窗
口法的移动机器人路径规划[J].机器人,2020,42(3):346-
353.
(c )局部路径规划
图10 SLAM 建图与导航图