提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
- hector mapping部分参数介绍
- 调整hector_mapping中的参数
- ros常见问题
- 总结
hector mapping部分参数介绍
在wiki.ros.org/hector_mapping界面找到3.1.4 Parameters章节;
具体参数信息如下:
map_update_distance_thresh(double,default:0.4)
地图更新的距离长度阈值,单位:米m
每次地图更新后,机器人必须移动超过这个阈值,或者满足map_update_angle_thresh参数描述的位移角度变化,才会再次更新地图;
map_update_angle_thresh(double,default:0.9)
地图更新的旋转角度阈值,单位:弧度rad
每次地图更新后,机器人必须转动超过这个阈值,并产生超过map_update_distance_thresh阈值的位移;
map_pub_period(double,default:2.0)
地图发布周期,单位:秒
无论地图更新是快还是慢,地图发布的周期都是固定的2秒一次;
如果想及时观察到地图的情况,需要将此数值调小;
调整hector_mapping中的参数
打开vscode,找到上一节新建的slam_pkg,修改.launch文件;
<launch>
<include file="$(find wpr_simulation)/launch/wpb_stage_slam.launch"/>
<node pkg="hector_mapping" type="hector_mapping" name="hector_mapping" output="screen"/>
<param name="map_update_distance_thresh" value="0.1"/>
<param name="map_update_angle_thresh" value="0.1"/>
<param name="map_pub_period" value="0.1"/>
</node>
<node pkg="rviz" type="rviz" name="rviz" args="-d $(find slam_pkg)/rviz/slam.rviz"/>
<node pkg="rqt_robot_steering" type="rqt_robot_steering" name="rqt_robot_steering"/>
</launch>
CTRL+SHIF+T
roscore
CTRL+SHIF+O
roslaunch slam_pkg hector.launch
ros常见问题
WARNING: disk usage in log directory [/home/用户名/.ros/log] is over 1GB. It’s recommended that you use the ‘rosclean’ command.
rosclean是ROS提供的系统清理命令,可以清除ROS系统中的一些缓存、日志、旧版本包等无用的数据。其常用的参数包括:
all:清除所有的缓存、日志、旧版本包等无用的数据。
logs:清除ROS系统中的日志文件。
packages:清除ROS系统中未使用的旧版本包。
check:检查并显示将要被清除的数据信息。
使用方法,例如rosclean all、rosclean logs
RLException: Invalid roslaunch XML syntax: mismatched tag: line 9, column 6 The traceback for the exception was written to the log file
检查.lanch中的指令是否正确
错误位置:(node嵌套语句多写了一个/)
<node pkg="hector_mapping" type="hector_mapping" name="hector_mapping" output="screen"/>
<param name="map_update_distance_thresh" value="0.1"/>
<param name="map_update_angle_thresh" value="0.1"/>
<param name="map_pub_period" value="0.1"/>
</node>
修改后:
<node pkg="hector_mapping" type="hector_mapping" name="hector_mapping" output="screen">
<param name="map_update_distance_thresh" value="0.1"/>
<param name="map_update_angle_thresh" value="0.1"/>
<param name="map_pub_period" value="0.1"/>
</node>
总结
简单体验了hector mapping的参数设置对建图的影响。