ROS的智能交互轮式移动机器人
2021-06-30桂林电子科技大学信息科技学院韩桂明刘苏芮欧为祥李宏辉
桂林电子科技大学信息科技学院 唐 力 韩桂明 刘苏芮 欧为祥 李宏辉
本文主要是对移动机器人的二维地图构建、自身定位与导航、运动物体跟随、多用户视频监控这几个方面进行研究。本设计是基于ROS_Kinetic的智能交互轮式移动机器人,可根据多传感器的数据融合处理未知复杂环境的信息,通过SLAM算法构建平面二维地图,并通过加载构建好的二维地图进行自身定位与目标点导航;机器人可通过自身传感器的数据,锁定与自身最近的运动物体,实现运动物体跟随;同一局域网下,可以通过其他若干个设备进行多点(多用户)视频监控。此设计主要是对移动机器人的“动态感知、环境建模、路径规划、行为控制、远程监控”展开研究,所以这个项目是一个集环境感知、动态决策、路径规划和行为控制等多功能于一体的综合系统。
1 整体方案设计
本文的总体方案分为三大模块,分别为基于树莓派的Linux嵌入式平台、基于PC端的Linux平台以及基于STM32的单片机开发平台。树莓派端作为整个系统的数据采集以及机器人动力控制的消息发布;PC端会接收树莓派端采集到的大量的数据进行处理并且发布机器人运动控制的相关命令;STM32平台一方面用来采集机器人此刻的里程计(机器人移动角速度、线速度)数据进行发布,另一方面是订阅相关的控制数据,并且为机器人执行相关的运动控制。整体设计框架如图1所示。
图1 整体设计框图
2 实现原理
2.1 室内SLAM二维建图实验原理
SLAM(simultaneous localization and mapping),即时定位与地图构建,或迸发建图与定位。在本设计中采用了SLAM中的Gampping算法,这种算法主要通过机器人在运动的过程中通过编码器结合陀螺仪计算到里程计信息,运用机器人的运动模型得到机器人的位姿初步估计。然后通过机器人装载的激光传感器获取的激光数据结合观测模型(激光的扫描匹配)对机器人位姿进行精确修正,得到机器人的精确定位,最后在精确定位的基础上,将激光数据添加到栅格地图中,机器人在环境中运动,通过机器人不断的数据检测并且完成局部建模,最终完成整个场景地图的构建。
SLAM的本质可以描述为机器人在未知环境中从一个未知位置移动,在移动的过程中,进行位置估计进行二维建模。二维建图主要分初始化阶段、转移阶段、决策阶段、重采样阶段、滤波和地图生成六个阶段。通过个六个阶段对SLAM算法进行描述;如图2所示是通过SLAM-Gampping算法构建二维地图的基本模型。
图2 SLAM构建二维地图基本模型
2.2 运动物体跟随的实验原理
运动物体跟随的最核心的传感器是激光雷达,为机器人开启运动物体节点时激光雷达的相关数据,设定d1、d2、d3......dn为机器人到障碍物之间的距离,D为机器人与运动物体之间保持的安全距离。当打开运动物体跟随的节点时,激光雷达360°旋转,计算出机器人自身到障碍物之间的距离d1、d2、d3....dn,并且通过算法滤出自身到障碍之间最短的一条距离d。此时,机器人会把此时最短距离对应的障碍作为自动跟随的锁定对象。当此时的障碍物发生左边的变化时,机器人会检测到锁定目标的距离D以及目标和机器人自身的相对方向发生变化时,这是时候,机器人会自动缩短距离d和当前自身的姿态,保证d=D。机器人不断的调节姿态以及距离d,达到物体跟随的效果。
2.3 同一局域网的多用户视频监控的实现原理
多用户视频监控的要是服务端与客户端的一个数据通讯,如图3是同一局域网服务器与可客户端的一个数据通信结构模型。首先,服务端和需要访问服务器的客户端的设备必须都要在同一个局域网环境下。硬件平台获取到摄像头的图像数据之后,然后对获取到的图像数据进行压缩处理,然后,需要把视频流数据共享到搭建好的流媒体服务器中此时客户端就可以对共享完成的数据进行访问,客户端可以是PC端。也可以是移动端,只需要在客户端的设备上打开浏览器,在浏览器地址栏输入服务器的IP地址以及端口号,就可以访问机器人的摄像头画面,多个客户端设备只需在同一个局域网的环境下,就可以同时访问机器人摄像头的画面,最终实现多用户视频监控的效果。多用户视频监控的功能是建立在通信流畅的服务器中,随着本地客户端的访问数量增加,视频流数据通信的压力也就会增大,那么回传到客户端的视频流数据就会掉帧,出现卡顿的现象。为了保证此功能的运行流畅,必须使客户端访问的数量控制在在合理的范围之内。
图3 同一局域网的多用户视频监控示意图
结论:随着智能移动机器人的应用领域的扩大,人们期望智能移动机器人在更多领域为人类服务,代替人类完成更复杂的工作,不断的取代传统的劳动力,更为高效的去完成各项工作。此设计主要研究其三大功能,激光雷达的同步二维地图构建及定位与导航、运动物体的智能跟随、多用户摄像头监控。此设计的研发给当今科技时代的各类机器人(扫地机器人、服务型机器人、快递机器人、军事机器人)的研发奠定了良好的基础和提供了良好的平台。此设计不仅具有特色和创新点,也有着广泛的应用前景,也是当代大学生在嵌入式、人工智能、移动机器人研究方面的体现。