ROS基础学习(Gmapping和hector_mapping对比)(十一)

Gmapping的核心算法:

里程计推算机器人的位移,再通过雷达点云贴合障碍物的轮廓,修正里程计误差。

Gmapping和hector_mapping对比

在这里插入图片描述

Gmapping用odom的引入来修正激光雷达点云贴合障碍物轮廓产生的误差

里程计输出的TF是odom到base_footprint的TF
在这里插入图片描述
将多出来的TF移动到odom之前
红色线是里程计推算的机器人位移
绿色线是通过激光雷达点云贴合障碍物的轮廓修正里程计得到的误差。

在这里插入图片描述

ROS 2 (Robot Operating System version 2) 是一个开源机器人操作系统,它提供了一套完整的工具和服务用于构建、部署和管理复杂的机器人系统。Hector Mapping 是一个基于 ROS 的SLAM (Simultaneous Localization And Mapping) 算法库,主要用于创建机器人环境的地图。 要在 ROS 2 中运行 Hector Mapping,你需要按照以下步骤操作: 1. **安装依赖**: - 首先确保你已经安装了 ROS 2 及其基础软件包,如 `ros2` 和 `nav2_core`(导航2的基本框架)。 - 安装 Hector SLAM 组件,通常需要从 `ros2 galactic` 或更高版本的 `rosdistro` 分支安装。你可以使用 `ros2 package update` 和 `ros2 install hector_mapping` 进行安装。 2. **启动必要的服务**: - 启动 Hector Mapping 的节点,例如 `hector_slam_nodelet_manager` 和 `base_localization_nodelet`。在某些情况下,你还需要其他定位(如GPS)和避障服务。 ```bash ros2 launch hector_slam_launch hector_mapping.launch.py ``` 3. **配置和设置**: - 根据你的机器人硬件配置传感器数据,如激光雷达、摄像头等,并调整 Hector Mapping 的相关参数。可以在 `params.yaml` 文件中进行修改。 4. **监控状态**: - 使用 `ros2 run rqt_graph rqt_graph` 来查看系统图并确认节点是否正常运行。同时,可以使用 `rqt_reconfigure` 工具来实时调整节点参数。 5. **地图生成**: - 当节点开始运行并接收传感器数据后,Hector Mapping 将逐步生成地图,你可以在 `/map` topic 上查看生成的静态地图。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值