本文主要是介绍ROS学习记录:SLAM软件包Hector_Mapping,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前言
了解和尝试使用Hector_Mapping软件包
一、搜索进入ROS Index
二、搜索hector_mapping
三、选择noetic的版本
四、进入Website
五、订阅的话题中,一个是scan话题,就是获取激光雷达数据的话题
六、另一个话题是syscommand话题,主要用来接收reset这类重新建图的指令
七、再看看它发布的话题,第一个是map_metadata,发布的是地图数据
1 、点进去看看是些什么数据,第一个是地图的加载时间
2 、第二个是地图分辨率
3 、地图的宽和高
4 、 地图的原点坐标
八、map话题发布的是地图栅格数据
九、这个话题的原始机器人定位信息
十、这个话题是校正后的机器人定位信息
十一、安装并使用Hector_Mapping
1、输入sudo apt install ros-noetic-hector-mapping进行安装
2、输入cd catkin_ws1,进入工作空间
3、输入source ./devel/setup.bash,设置ROS的环境变量,以便在当前的终端窗口中正确运行ROS软件包。
4、输入roslaunch wpr_simulation wpb_stage_slam.launch,运行机器人和仿真环境
5、对终端进行分屏,输入 rosrun hector_mapping hector_mapping运行SLAM节点,回车后SLAM的功能已经在运作了,我们用RViz窗口来查看输出的地图
6、对终端再进行分屏,输入rosrun rviz rviz,
7、在打开的RViz界面,进行添加机器人模型
8、再添加激光雷达的扫描测距点
9、选择话题/scan
10、将测距点改大一点,size改成0.03,方便看清
11、添加Map地图
12、设置地图的话题名称/map
13、机器人脚下出现的即为当前位置扫描的第一帧地图
14、把RViz和机器人仿真窗口并排显示,方便观察
15、对终端再进行分屏,输入rosrun rqt_robot_steering rqt_robot_steering打开机器人速度控制器
16、把这个往前拖动,机器人就会往前走,下面的条是控制机器人转弯,我们需要控制机器人移动,让它把地图给扫描完
17、达到这样,就成功把地图建出来了
这篇关于ROS学习记录:SLAM软件包Hector_Mapping的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!