如何构建基于ROS的自主建图和导航机器人
发布日期:2021-10-03 22:59:07 浏览次数:20 分类:技术文章

本文共 879 字,大约阅读时间需要 2 分钟。

ROS已经提供了建图,导航,定位等一系列功能包,如何基于ROS构建一个移动机器人呢? ROS的官方文档已经有非常详细的说明,可以参见 。 但是,对于刚入门的新人,还是有一些难懂。

本文将在这里做一个概要性的总结。

基于具体的机器人需求,假设我们只使用激光雷达和IMU传感器,的移动机器人,需要做的工作大致可以分成下面几个部分。

1 机器人建模

很显然,首先需要知道机器人长什么样子,这就需要有一个机器人模型,机器人本体与各传感器的相对位置和尺寸。很多建模工具可以做这个事情,然后转为ROS支持的数据格式。

2  TF 数据发布

有了机器人模型,就需要把机器人的样子发布出去,让ROS的其他节点知道这些信息。这需要实现TF node,发布机器人的/TF 数据,当然,ROS也已经提供了相应的工具

3 激光雷达 driver node 开发

将激光雷达的数据转为ROS能够认识的格式,这就需要一个驱动。 有一些雷达厂家已经为自己生产的激光雷达提供了ROS 驱动,这就简单了,省去了一大工作量。所以,选雷达时,尽量选提供ROS驱动的产品吧

4 IMU drive node开发

同样需要将IMU的数据转为ROS能够认识的格式,这也需要一个驱动。 有一些IMU厂家同样已经为自己生产的IMU提供了ROS 驱动,这就简单了,又省去了一大工作量。所以,选IMU时,尽量选提供ROS驱动的产品吧

5 SLAM算法选择和配置

有很多基于激光雷达的SLAM算法,选择一个适合自己应用场景的算法并根据实际硬件配置参数

6 导航算法选择和配置

ROS里的Move_base有多个组件可供选择, 根据需求选择合适的plugin并配置所需的参数

7 Base_controller node开发

这是控制机器人运动的节点,从move base接收导航结果,然后控制机器人电机运动

8 map server 配置

这是发布地图的节点

9 AMCL配置

 定位功能,根据需求配置AMCL node所需的参数

 

上面的工作做完,基本上一个ROS机器人就成型了。

说着简单,做起来难,动手试一下吧。

 

转载地址:https://blog.csdn.net/lclfans1983/article/details/105421756 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:海康威视视觉控制器 MV-VB2210-120G 如何进入BIOS
下一篇:基于systemback的ROS系统镜像备份和安装方案

发表评论

最新留言

能坚持,总会有不一样的收获!
[***.219.124.196]2024年03月27日 06时28分03秒