基于ROS 的履带式机器人室内定位及地图构建研究

2022-12-23 12:03贝太学黄俊珲陈继文刘洪磊
电子设计工程 2022年24期
关键词:框图驱动传感器

贝太学,黄俊珲,陈继文,卢 博,裴 翦,刘洪磊

(1.山东建筑大学 机电工程学院,山东济南 250100;2.宁波大学信息科学与工程学院,浙江宁波 315000)

近年来,伴随着人工智能的发展热潮,机器人技术蓬勃发展,各式各样的机器人已经逐步渗透到农业、工业、生产制造业等[1-3]。

ROS(Robot Operating System)[4-7]是一个开放式的系统框架,其中具有很多开源软件包,最初在2007 年应用于斯坦福大学的机器人研究中。同步定位与地图构建SLAM(Simultaneous Localization and Mapping)[8-10],是机器人环境感知的重要技术之一,比较常见的分类有基于滤波的SLAM 和基于图优化的SLAM[11-12]。

该文针对SLAM 算法中的两种算法,搭建履带式机器人物理样机,研究算法的建图性能。

1 移动平台系统的总体设计

移动平台系统主要由本地层与服务器层组成,两层通过无线网络完成通信。本地层由操作系统层、驱动层组成,驱动层以两轮差速履带式模型为底层设计[13]。整个系统的组成框图如图1 所示。

图1 移动平台系统框图

1.1 驱动层

驱动控制器与传感器构成移动平台的驱动层[14],传感器感知外界环境并将环境信息以电信号形式发送给操作系统层,驱动层一方面将环境信息数据预处理并将数据传递给操作系统层,另一方面接收操作系统层发送的指令,控制移动平台进行运动。

1.2 操作系统层

操作系统层主要由ROS 系统与软件驱动部分组成。ROS 系统主要完成移动平台的实时定位、运动规划与地图构建;软件驱动部分主要提供通信接口,为底层与上层通信提供通道[15]。

2 系统硬件设计

2.1 硬件系统的组成

操作系统层与驱动层主要由传感、控制、驱动、执行四部分组成。传感系统可完成对履带式机器人自身状态数据和环境信息的感知。控制系统主要完成运动控制和路径规划的功能。驱动系统具有处理信息和传输信息的功能,接收控制系统的指令完成对执行机构的控制。执行机构可完成履带式机器人的移动功能。履带式机器人整体结构框图如图2 所示。

图2 履带式机器人整体硬件结构框图

2.2 硬件选型

控制系统硬件选用树莓派对雷达点云数据进行处理,同时满足实时定位、自主建图、路径规划算法的运算。选用GY-85 九轴传感器与霍尔型编码器作为内部传感器。外部传感器选用激光雷达与红外线传感器FC-51。FC-51 可以充分弥补2D 激光雷达的缺陷,能够实现对平台周围物体的扫描监测,准确感应障碍物信息,保持安全距离。激光雷达则选用基于三角测距法的RPLIDAR A1,既能实现周围环境的360 度扫描,又能优化点云数据位置信息匹配,完成环境信息融合。驱动板电路组成框图如图3 所示。

图3 驱动板电路组成框图

3 系统软件设计

3.1 软件数据传输流程

系统软件部分分为驱动、操作系统、服务器三层结构。其中,驱动层收集内外传感器的信息,将信息预处理后发送到操作系统层;操作系统层接收传感器数据、激光雷达数据,借助SLAM 完成系统定位、地图构建;服务器层借助ROS 平台,显示地图以及移动平台的位置信息,同时实现路径规划目标节点发布功能,进一步由操作系统层按照相应算法实现最优路径规划[16]。系统数据流图如图4 所示。

如图4 所示,传感器数据的采集主要包括激光雷达的点云数据、红外线的距离信息、加速度计的线速度、陀螺仪的角速度、里程计的线速度,这些数据信息一部分以点云数据形式在服务器层软件部分进行可视化,一部分以距离信息的形式传递给操作系统层,借助SLAM 框架实现地图构建与定位导航,最后以速度指令传递给执行机构,控制移动平台完成运动。

图4 系统数据流图

3.2 驱动层程序设计

驱动层主要负责以下四项任务:电池电量检测、IMU 数据读取、红外线障碍检测、MOVE-BASE[17]。软件工作流程如图5 所示。

图5 驱动层软件流程图

3.3 PID控制方法实现

两轮差速履带式模型运动时,操作系统层不断地向物理样机发送事先规划好路线的速度指令,并根据物理样机的自身位置信息做出进一步的速度修正。电机的控制则通过增量型的速度环PID 完成。通过物理样机的稳定运行以及快速响应可以有效避免误差产生。

3.4 系统本地层通信设计

Rosserial[18]作为ROS 框架下的一种通信协议标准,为驱动层发布、话题订阅提供了可能,有效实现树莓派与驱动层的数据传输。系统通信示意图如图6所示。

图6 系统通信示意图

4 实验结果分析

该实验选取两种实验环境,分别用Gmapping 算法和Cartographer 算法测试,实验环境1 为教学楼走廊,环境2 为工作室。

环境1 的测试结果如图7 所示,对比两种算法的建图效果,Gmapping 算法建图与真实环境误差较小,在教学楼走廊建图效果优于Cartographer 算法。

图7 环境1实际环境建图

环境2 的实验结果如图8 所示。Gmapping 算法构建的地图在最左侧出现障碍物的混叠现象;Cartographer 算法在障碍物数量较多的工作室环境下,建图效果更优,障碍物与整体地图的轮廓也更加清晰。

图8 环境2实际环境建图

5 结论

该文对基于ROS 的履带式机器人室内定位及地图构建进行了研究,主要的研究内容与结论如下:

对移动平台系统进行设计,选用教学楼走廊环境与工作室环境,选取SLAM 算法中主流的Gmapping算法与Cartographer 算法进行地图构建实验。

通过实验发现,Gmapping 算法在相对简单的环境中建图效果较优;在障碍物数量较多的情况下,Cartographer 算法因其帧间匹配算法位姿优化效果的优势,会使其产生更小的误差,得到更优的建图效果。

猜你喜欢
框图驱动传感器
基于模糊PI控制的驱动防滑仿真系统分析
康奈尔大学制造出可拉伸传感器
屈宏斌:未来五年,双轮驱动,砥砺前行
捷豹I-PACE纯电动汽车高压蓄电池充电系统(三)
简述传感器在物联网中的应用
轨旁ATC系统门控柜接收/驱动板改造
“传感器新闻”会带来什么
在808DA上使用WIFI进行驱动数据同步
跟踪导练(三)2
电路图2017年凯迪拉克XT5