基于ROS的机器人即时定位及地图构建创新实验平台研制

2017-09-03 10:05李文生田丰溥
实验技术与管理 2017年8期
关键词:主控板移动机器人电机

杨 亮, 李文生, 傅 瑜, 田丰溥

(电子科技大学 中山学院, 广东 中山 528402)

基于ROS的机器人即时定位及地图构建创新实验平台研制

杨 亮, 李文生, 傅 瑜, 田丰溥

(电子科技大学 中山学院, 广东 中山 528402)

针对单一传感器在不确定复杂环境下即时定位及地图构建精度低、可靠性差的问题,研制了一种基于机器人操作系统的即时定位及地图构建创新实验平台。实验平台由移动机器人、上位机控制软件两部分组成。移动机器人配置有Xtion pro深度摄像头、激光测距仪、里程计等,通过采集环境的深度信息及距离信息实现即时定位及地图构建功能;采用ARM Cortex A17 RK3288作为主控芯片,将整个控制系统构建在基于ROS系统的嵌入式平台上,具有体积小、重量轻、可移植性强的优点,极大增强了机器人的续航能力。

机器人; 机器人操作系统; 即时定位; 地图构建; 深度摄像头

机器人种类很多,从功能上划分,包括工业机械人[8]、轮式移动机器人[9-11]、仿人型机器人[12-13]、旋翼无人机、水下机器人等。由于应用领域各不相同,在实现原理上也各不相同,各类机器人之间的差异给机器人方向的专业人才培养带来了更严峻的挑战。与此同时,机器人操作系统(robot operating system,ROS)[14-15]正日益受到国内外专家的关注,ROS是专用于机器人领域的开源元操作系统,集成了诸如底层硬件驱动、进程间消息传递等基础功能,并以提供ROS标准包的方式将机器人领域各种成熟的算法的整合在一起,经过简单定制即可对外提供一致性服务。

本创新实验平台选取即时定位及地图构建这一机器人领域的共性技术作为研究载体,设计了一种基于ROS的机器人即时定位及地图构建创新实验平台,该平台配置有Xtion pro深度摄像头、激光雷达、里程计等,通过采集环境的深度信息及距离信息有效改善即时定位及地图构建的精度;采用小型化技术,将整体系统运行在Cortex A-17 ARM RK3288嵌入式开发板上,具有体积小、重量轻、可移植性强的优点,极大增强了机器人的续航能力。

1 总体设计

基于ROS的机器人即时定位及地图构建创新实验平台由移动机器人、上位机控制软件组成。上位机控制软件主要负责机器人平台运行状态采集、远程控制、数据分析等功能;移动机器人是主要执行载体,包含机械结构、主控板、电机驱动板、Xtion pro深度摄像头、激光测距仪等。其整体系统框架图见图1。

图1 系统控制框图

针对传统ROS机器人使用单一传感器在不确定复杂环境中即时定位及地图构建精度低、可靠性差的问题,采用多传感器融合技术将Xtion pro深度摄像头、激光测距仪和里程计等检测到的深度信息、距离信息及左右轮运动速度整合在一起,改善即时定位及地图构建精度。采用主控板与电机控制板相结合的双层控制结构,将控制与驱动相分离,降低系统模块间的耦合程度。

在软件实现方面,借助机器人操作系统ROS已集成机器人领域多种成熟控制算法的优点,提出了一种基于ROS的即时定位及地图构建平台的软件设计方案,其软件架构框图见图2。

图2 软件架构框图

如图2所示,整体系统可分为硬件层、Linux内核驱动层、ROS软件层3个部分,ROS构建于Linux平台之上,通过Linux平台提供的OpenNI及串口驱动获取Xtion pro摄像头采集的深度信息以及电机驱动板采集到的电机转速数据。ROS本身包括有硬件接口层、通信层以及机器人应用框架层,机器人应用框架层提供了机器人领域的一些通用模块,例如tf模块主要用于各种坐标系的转换,robot_state_publisher模块则主要负责机器人状态的发布。

2 基于ROS的机器人即时定位及地图构建

2.1 移动机器人机械结构及硬件方案设计

移动机器人采用左右双轮差动的运动方式,并配置有支撑轮以保持平衡。机器人的机械结构部分基于开源HANDSFREE项目改造而成,采用3层结构设计:第一层用于安装电机及电机驱动板;第二层用于安放激光测距仪,负责探测距离信息;第三层设置有主控板,上面运行嵌入式Linux操作系统,主要完成传感数据采集、即时定位及地图构建任务。考虑到在实际应用环境中物体的形状及高度不规则的情况,将Xtion pro深度摄像头设置于机器人顶部,通过采集深度信息,用于辅助定位。机器人实物图见图3。

在硬件电路设计方面,采用主控板与电机驱动板相结合的双层控制结构。主控板选取瑞芯微公司生产的RK3288作为处理器,该处理器采用四核ARM Cortex-A17架构,频率高达1.8 GHz,内置有GPU以及2/3D硬件加速,非常适合用于即时定位及地图构建。电机驱动板基于STM32F4单片机[16],采用电机编码器和激光测距仪采集电机转速及距离信息,并通过串口将采集到的数据发送给主控板。

2.1 各组大鼠的一般情况 非糖尿病ZT23亚组及非糖尿病ZT11亚组大鼠精神状态良好,反应敏捷,毛色白且光泽;糖尿病ZT23亚组及糖尿病ZT11亚组大鼠每周血糖≥16.7 mmol/L,同时出现多食、多尿、多饮、体重减轻等症状,精神萎靡,反应缓慢,毛发无光泽。

图3 移动机器人实物图

激光测距仪探测目标物体的位置、速度等数据。本实验平台采用XV-11激光测距仪采集环境距离信息,该测距仪支持360°旋转及5 Hz的扫描频率,通过USB转串口接口将采集到的距离信息发送给主控板。

为了降低外围电路复杂性,采用BTS7970作为电机驱动芯片,驱动直流电机转动。硬件电路框图见图4。

电机驱动板通过读取直流电机自带的编码器反馈的信息获取左右轮转速,并通过串口发送给主控板。考虑到在实际应用环境中物体的形状及高度不规则、单传感器存在数据盲点的问题,采用Xtion pro深度摄像头采集深度信息,并与激光测距仪部署在机器人的不同位置,以获取更完备的传感数据。

2.2 基于ROS的即时定位及地图构建

集成了全球顶级科研机构多年的研究成果,ROS一经问世便受到科研人员的广泛关注,自2010年发面1.0版本以来,ROS已成为机器人领域事实上的通用平台。ROS集成了大量开源硬件驱动,采用节点(node)、话题(topic)、服务(service)、消息(message)等方式实现分布式计算,并通过发布ROS标准包的方式将机器人领域多种成熟的算法整合在一起,大幅降低开发成本并实现软件复用。本实验平台基于ROS实现了即时定位及地图构建模块,其节点关系见图5。

图4 基于ROS的移动机器人硬件电路框图

在图5中,椭圆形表示节点,矩形代表话题,圆角矩形代表服务,其中,laser_node及camera_node节点分别通过激光测距仪及深度摄像头采集传感信息,并发布到/scan话题;odom_node节点负责采集左右轮转速信息,并发布到/odom及/tf话题;baselink_node节点负责收获机器人位置信息并发布到/tf话题,SLAM_mapping节点采用订阅/scan、/odom、/tf话题的方式采集传感数据,通过部署开源gmapping标准包完成地图构建任务,并将地图数据发布至/map话题。同时,map_server节点负责对外发表/map服务,完成对外地图服务功能。

图5 即时定位及地图构建模块节点关系

2.3 上位机软件设计

由于本系统基于Linux平台,因此可通过ssh或telnet协议远程登录并控制移动机器人。此外,为改善用户体验,同时提供了基于QT[17]框架的图形控制界面,完成指令下达、状态查询等功能,其操作界面见图6。通过该上位机软件可实现机器人的远程控制功能,在与机器人建立连接后,先完成机器人的初始化工作,再下发地图构建任务,完成空间探测,最后可使用地图回传功能,显示最终的建图结果。

图6 上位机软件操作界面

3 系统测试

为验证本文所提方案的有效性,分别针对简单密闭空间及复杂空间应用场景进行测试。

首先使用隔板围起长4 m、宽3 m的长方形密闭区域,内部设有规则障碍物,将机器人置于其中,通过上位机控制软件发送指令,开启即时定位及地图构建功能,其地图构建效果如图7所示。由实验结果不难看出,障碍物形状被准确勾勒,移动机器人能自动完成简单密封空间的自动探测及建图功能。

图7 简单密闭空间地图构建

未知空间探测能力是衡量机器人建地图质量的重要指标,为此将该移动机器人置于有各种桌、椅的复杂空间,如图8(a)所示,其建图结果见图8(b)。由图8可看出,采用本实验平台能够较好地完成复杂环境下的空间探测及建图功能,具有一定的抗干扰能力及鲁棒性。

4 结语

即时定位及地图构建功能是机器人的基础性功能。本文设计的基于ROS的机器人即时定位与地图构建创新实验平台,采用多传感器融合技术,根据采集到的深度信息及距离信息能够实现即时定位及地图构建功能,并采用小型化技术,将整个系统构建于嵌入式ARM Cortex A-17 RK3288平台之上,具有体积小、重量轻、续航能力强的优点。目前,该创新实验平台已应用于我校学科竞赛及广东省大学生创新创业培育项目中,并取得良好的效果。

图8 复杂空间地图构建

References)

[1] O’Kane J M. A gentle introduction to ROS[M].independently published, 2013:1-3.

[2] 付根平. 仿人机器人的步态规划和步行控制研究[D]. 广州: 广东工业大学, 2013.

[3] 谭民, 王硕. 机器人技术研究进展[J]. 自动化学报, 2013, 39(7):963-972.

[4] 胡进, 侯增广, 陈翼雄, 等. 下肢康复机器人及其交互控制方法[J]. 自动化学报, 2014, 40(11):2377-2390.

[5] 杨亮, 傅瑜, 何怀文. 基于腿部关节控制的仿人机器人偏摆力矩控制方法[J]. 控制与决策, 2015, 31(1):79-83.

[6] 杨雪莉. ABB 机器人业务差异化战略研究[D].广州:华东理工大学, 2016.

[7] Khokar K, Beeson P, Burridge R. Implementation of KDL Inverse Kinematics Routine on the Atlas Humanoid Robot[J]. Procedia Computer Science, 2015, 46:1441-1448.

[8] 祁若龙, 周维佳, 王铁军. 一种基于遗传算法的空间机械臂避障轨迹规划方法[J]. 机器人, 2014, 36(3):263-270.

[9] 刘国荣, 张扬名. 移动机器人轨迹跟踪的模糊 PID-P 型迭代学习控制[J]. 电子学报, 2013, 41(8):1536-1541.

[10] 杨亮,李文生,邓春健,等. 基于物联网的移动机器人综合实训平台设计[J]. 实验室研究与探索, 2015, 34(3):233-236.

[11] 余炽业, 宋跃, 雷瑞庭. 基于 STC12C5A60S2 的智能循迹小车[J]. 实验室研究与探索, 2014, 33(11):46-49.

[12] Yang L, Liu Z, Zhang Y.Online walking control system for biped robot with optimized learning mechanism: an experimental study[J]. Nonlinear Dynamics, 2016, 86(3):2035-2047.

[13] 杨亮, 韩清涛, 李文生, 等. 基于3D打印技术的双足机器人创新实验平台[J]. 实验技术与管理, 2016, 33(9):130-133.

[14] 夏汉均. 基于 ROS 的机器人即时定位与地图构建技术的研究[D].沈阳:东北大学, 2013.

[15] 祝甜一. 基于 ROS 的自主式救援机器人 SLAM 和导航系统研究[D]. 南京:东南大学, 2015.

[16] 海涛, 陈明媛, 骆武宁, 等. 一种单片机实验装置升级改造的实现方案[J]. 实验室研究与探索, 2010, 29(3):76-79.

[17] 杨亮, 邓春健, 宋喜佳. 一种基于嵌入式平台屏幕内容分享系统的设计与实现[J]. 液晶与显示, 2014, 29(6):933-938.

Development of innovative experimental platform for robot real-time positioning and mapping based on ROS

Yang Liang, Li Wensheng, Fu Yu, Tian Fengpu

(Zhongshan Institute, University of Electronic Science and Technology of China, Zhongshan 528402, China)

In view of the problem that the single sensor has low precision and poor reliability for the real-time positioning and mapping in the uncertain complex environment, a design scheme of an innovative experimental platform for the real-time positioning and mapping based on the robot operating system is proposed. This system consists of the following two parts: a mobile robot and the host computer control software. The mobile robot is equipped with the Xtion pro depth camera, the laser range finder, the odometer, etc. Through collecting the depth information and distance information, the functions of the real-time positioning and mapping can be realized. By adopting ARM Cortex A17 RK3288 as the master chip, the whole control system is built on the embedded platform based on ROS system, which has the advantages of small volume, light weight and good portability. The robot’s endurance is greatly enhanced.

robot; robot operation; real-time positioning; mapping; depth camera

10.16791/j.cnki.sjg.2017.08.024

2017-02-14 修改日期:2017-04-10

广东省教育科学研究项目(2015GXJK178);广东省创新强校工程项目“计算机科学与技术(嵌入式技术及物联网方向)应用型人才培养示范专业”;广东省教学质量与教学改革项目“嵌入式系统及物联网技术课程教学团队”;广东省创新创业教育课程建设项目“嵌入式Linux应用开发”;电子科技大学质量工程项目(ZYGX201601);广东大学生科技创新培育专项(pdjh2017b0911)

杨亮(1980— ),男,江西婺源,博士,副教授,研究方向为智能机器人系统与技术.E-mail:alex_yangliang@foxmail.com

TP242; G484

A

1002-4956(2017)08-0099-05

猜你喜欢
主控板移动机器人电机
一种快速可靠的主控冗余及切换机制的设计与实现
移动机器人自主动态避障方法
关于电机滚动轴承的选择与计算
瞻望电机的更新换代
欢迎订阅2022年《电机与控制应用》
升级双主控板交换机ISO
基于Twincat的移动机器人制孔系统
电机隐忧
变频器检测台的设计、制作及主控板的维修
极坐标系下移动机器人的点镇定