基于激光雷达的Cartographer在ROS-kinetic下的实际测试教程
本文基于ROS -Kinetic版本下安装Cartographer并通过实际的激光雷达测试Cartographer的实际建图效果。基于测试过程中遇到的一些问题进行了记录。Cartographer的安装方法可以参考创客智造官方的教程:http://www.ncnynl.com/archives/201702/1369.html以及太乙吾水鱼的博客:http://www.cnblogs.com/yhlx125/p/80252093.html.参考上述安装方法大多数情况下可以正常安装。
本文主要记录在实际测试Hokuyo雷达建图的过程中遇到的一些问题。
成功安装了Cartographer之后,通过安装激光雷达的驱动以及编写了启动激光雷达的启动文件,启动RVIZ后出现的不能建图的问题。通过在请教度娘以及网络上的同道中人,最终解决了此TF树不能完整建立的问题。具体的解决方法是:修改/turtlebot/turtlebot_bringup/launch/includes/robot.launch.xml文件,主要是增加增加use_tf_static的定义,修改后的文件如下:
<node pkg="robot_state_publisher" type="robot_state_publisher" name="robot_state_publisher">
<param name="publish_frequency" type="double" value="5.0"/>
<param name="use_tf_static" value="false"/>
</node>
这样在kinetic即可完整显示tf tree。
其次,在修改此文件的基础上,再次修改/carto_ws/install_isolated/share/cartographer_turtlebot/launch下的文件turtlebot_lidar.launch,将这一行语句<include file="$(find turtlebot_bringup)/launch/minimal.launch" />删除掉,单独启动turtlebot。本人通过实际的测试,利用此方法解决了RVIZ下无法实现建图的问题,实质上就是无法完整建立tf tree的文件。
在此,再次感谢佛山-夜猫-客智造提供的帮助。