在思岚A1上复现gmapping

文章目录

软硬件条件

软件:Ubuntu 20.04,ROS noetic

硬件:RPLidar A1.

laser_scan_matcher通过源码安装

bash 复制代码
mkdir -p ~/catkin_ws/src
cd  ~/catkin_ws/src
git clone https://github.com/ccny-ros-pkg/scan_tools.git
cd ..
catkin_make 

PS:遇到报错"No package ''csm" found,使用sudo apt-get install ros-noetic-csm

rplidar_ros通过源码安装

bash 复制代码
mkdir -p ~/catkin_ws/src
cd  ~/catkin_ws/src
git clone https://github.com/Slamtec/rplidar_ros.git
cd ..
catkin_make 
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc

设置参数

在./rplidar_ros/launch文件夹中设置a1_gmapping.launch

bash 复制代码
<!-- 
Example launch file: uses laser_scan_matcher together with
slam_gmapping 
-->

<launch>
  <include file="$(find rplidar_ros)/launch/rplidar.launch"/>
  <node pkg="tf" type="static_transform_publisher" name="base_link_to_laser" 
    args="0.0 0.0 0.0 0.0 0.0 0.0 /base_link /laser 40" />


  <node pkg="laser_scan_matcher" type="laser_scan_matcher_node" 
    name="laser_scan_matcher_node" output="screen">

    <param name="fixed_frame" value = "odom"/>
    <param name="max_iterations" value="10"/>

  </node>


  <node pkg="gmapping" type="slam_gmapping" name="slam_gmapping" output="screen">
    <param name="map_udpate_interval" value="1.0"/>
    <param name="maxUrange" value="12.0"/>
    <param name="sigma" value="0.1"/>
    <param name="kernelSize" value="1"/>
    <param name="lstep" value="0.15"/>
    <param name="astep" value="0.15"/>
    <param name="iterations" value="1"/>
    <param name="lsigma" value="0.1"/>
    <param name="ogain" value="3.0"/>
    <param name="lskip" value="1"/>
    <param name="srr" value="0.1"/>
    <param name="srt" value="0.2"/>
    <param name="str" value="0.1"/>
    <param name="stt" value="0.2"/>
    <param name="linearUpdate" value="1.0"/>
    <param name="angularUpdate" value="0.5"/>
    <param name="temporalUpdate" value="0.4"/>
    <param name="resampleThreshold" value="0.5"/>
    <param name="particles" value="10"/>
    <param name="xmin" value="-10.0"/>
    <param name="ymin" value="-10.0"/>
    <param name="xmax" value="10.0"/>
    <param name="ymax" value="10.0"/>
    <param name="delta" value="0.02"/>
    <param name="llsamplerange" value="0.01"/>
    <param name="llsamplestep" value="0.05"/>
    <param name="lasamplerange" value="0.05"/>
    <param name="lasamplestep" value="0.05"/>
  </node>

</launch>

启动

检查端口权限

bash 复制代码
 ls -l /dev |grep ttyUSB

设置端口权限

bash 复制代码
sudo chmod 666 /dev/ttyUSB0

启动a1_gmapping.launch

bash 复制代码
roslaunch rplidar_ros a1_gmapping.launch

效果预览

相关推荐
自然数e18 小时前
视觉Slam14讲笔记第6讲非线性优化
slam·g2o
WWZZ20253 天前
快速上手大模型:机器学习1
人工智能·深度学习·机器学习·计算机视觉·机器人·slam
放羊郎4 天前
VI-SLAM定位方案对比
slam·vi·定位·vo
WWZZ202512 天前
ORB_SLAM2原理及代码解析:单应矩阵H、基础矩阵F求解
线性代数·算法·计算机视觉·机器人·slam·基础矩阵·单应矩阵
元让_vincent12 天前
论文Review SLAM R3LIVE | ICRA2022 港大MARS | 可以生成Mesh的激光视觉惯性SLAM
3d·机器人·图形渲染·slam·建图
WWZZ202513 天前
ORB_SLAM2原理及代码解析:Tracking::CreateInitialMapMonocular() 函数
人工智能·opencv·算法·计算机视觉·机器人·slam·感知
放羊郎16 天前
SLAM算法分类对比
人工智能·算法·分类·数据挖掘·slam·视觉·激光
极客代码18 天前
第五篇:后端优化——位姿图的灵魂--从图优化到滑动窗口的联合状态估计
python·深度学习·计算机视觉·视觉里程计·slam·回环检测·地图构建
点云SLAM22 天前
GTSAM 中自定义因子(Custom Factor)的详解和实战示例
算法·机器人·slam·后端优化·gtsam·gtsam自定义因子·因子图
杀生丸学AI22 天前
【无标题】SceneSplat:基于视觉-语言预训练的3DGS场景理解
3d·aigc·slam·语义分割·三维重建·视觉大模型·空间智能