配置思岚s2e激光雷达使用环境,最终成功launch调出rviz界面并看到点云,并使用Cartographer根据雷达点云进行建图。
准备阶段
配置好ros环境,博主的配置为Ubuntu20.04,ros版本为noetic,这里推荐小鱼的一键安装:
wget http://fishros.com/install -O fishros && . fishros
调出可视化点云界面
首先访问思岚科技(SLAMTEC)资源下载中心及技术支持联系方式并下载应用手册:
查看位于第5页的“Linux/MacOs 网络配置”并按照提示操作连接激光雷达,在此之前需要将激光雷达通过数据线连接电脑并插上电源。
注意,这里的接口名称需要根据实际情况进行调整,可以在终端使用 ifconfig 查看。
然后在你自己的工作环境下创建ros_ws文件夹,在目录下创建src文件夹并从链接网址GitHub - Slamtec/rplidar_ros中获取rplidar安装包。
mkdir ros_ws
cd ros_ws
mkdir src
cd src
git clone https://github.com/Slamtec/rplidar_ros.git
下载后在/ros_ws路径下执行以下代码即可调出可视化界面看到雷达点云。
colcon build
source ./install/setup.bash
roslaunch rplidar_ros rplidar_s2e.launch
点云示例如下:
使用Cartographer进行建图
可以自行上网检索Cartographer安装方法,这里还是推荐小鱼的一键安装
wget http://fishros.com/install -O fishros && . fishros
这个代码还可以安装很多其他工具,大家可以自行探索。
根据提示选择 9 安装Cartographer,完成后进入/cartographer_ws文件夹(博主的是在主目录里,这个可能与安装时执行代码的终端路径有关)下运行以下代码进行编译:
colcon build
等待几分钟编译完成即可。
接着找到
/catographer_ws/src/cartographer_ros/cartographer_ros/configuration_files/revo_lds.lua
文件进行修改,修改如下,一共修改了三处:
tracking_frame = "laser", --horizontal_laser_link改为laser
published_frame = "laser", --horizontal_laser_link改为laser
odom_frame = "odom",
provide_odom_frame = true,
publish_frame_projected_to_2d = false,
use_pose_extrapolator = on, --此处将true改为on
再找到
/catographer_ws/src/cartographer_ros/cartographer_ros/launch/demo_revo_lds.launch
对launch文件进行修改,修改后的代码如下:
<launch>
<param name="/use_sim_time" value="true" />
<node name="cartographer_node" pkg="cartographer_ros"
type="cartographer_node" args="
-configuration_directory $(find cartographer_ros)/configuration_files
-configuration_basename revo_lds.lua"
output="screen">
<remap from="scan" to="scan" />
<!--horizontal_laser_2d改为scan,这里我的激光雷达发出的时scan单线话题-->
</node>
<node name="cartographer_occupancy_grid_node" pkg="cartographer_ros"
type="cartographer_occupancy_grid_node" args="-resolution 0.05" />
<node name="rviz" pkg="rviz" type="rviz" required="true"
args="-d $(find cartographer_ros)/configuration_files/demo_2d.rviz" />
<!--删除了一个rosbag play节点-->
</launch>
修改好后需要重新编译
catkin_make_isolated --install --use-ninja
这样准备工作就完成了,回到cartographer_ws目录下,运行代码打开可视化界面:
cd catographer_ws
source install_isolated/setup.bash
roslaunch cartographer_ros demo_revo_lds.launch
运行结果如下: