基于Scout mini底盘搭载多传感器可运行项目
一、基本信息
硬件:Jeston AGX Orin 、镭神N301-P 激光雷达 、ZED 2i 、松灵Scout Mini 、AIgo T1双天线GNSS
图片:

SCOUT MiNi搭载镭神智能N301使用gmapping实现建图
二、启动各个传感器结点
2.1一键启动所有结点
-
启动底盘、雷达、相机、相机结点
roslaunch scout_bringup souct_base.launch -
因为发布imu的结点在其他工作空间需要单独启动
cd ~/AIgoT1 source ./devel/setup.bash roslaunch algot1_base algo-algot1.launch
2.2单独启动所有结点
-
启动小车底盘结点
roslaunch scout_bringup souct_mini.launch打开rviz可看到小车的底盘模型

-
启动键盘控制小车运动
roslaunch scout_bringup scout_teleop_keyboard.launch-
u, i, o:控制机器人的左选、前进和右旋(u向左旋转,i 向前,o 向右旋转)。
-
j, k, l:控制机器人向左移动、停止、向右移动。
-
q/z:增加/减少最大速度(10%)。
-
w/x:增加/减少仅线性速度(10%)。
-
e/c:增加/减少仅角速度(10%)。
-
任何其他键:停止机器人的所有运动。
-
使用 CTRL-C 可以退出控制
-
-
启动雷达SDK
roslaunch lslidar_driver lslidar_N301.launchrviz中可以看到雷达周围的点云

-
启动相机
roslaunch zed_wrapper zed2i.launch
-
启动AIgoT1 (IMU+GNSS)
cd ~/AIgoT1 source ./devel/setup.bash roslaunch algot1_base algo-algot1.launch
三、使用gmapping建图导航
3.1 先建图再导航
-
启动各个结点
roslaunch scout_bringup souct_base.launch
-
启动gmapping
roslaunch nav_demo gmapping_slam.launch -
保存地图
roslaunch nav_demo gmapping_save.launch地图保存在
~/scout_nav/src/nav/src/nav_demo/maps目录中,命名为new_map.pgm和new_map.yaml -
启动AMCL(定位算法)
roslaunch nav_demo test_amcl.launch -
启动导航算法
roslaunch nav_demo nav_test.launch
3.2 边建图边导航(精度更高)
-
启动各个结点
roslaunch scout_bringup souct_base.launch -
启动建图 + 导航结点
roslaunch nav_demo auto_slam.launch
使用菜单栏的
2D Nav Goal在地图上点击目标点进行导航
四、使用cartographer进行建图
4.1基本信息
项目位置 :~/2D-SLAM
cartographer使用手册 :~/2D-SLAM/使用手册.md
源码位置:
cd ~/2D-SLAM/src/cartographer_detailed_comments_ws/src/cartographer_ros/cartographer_ros
code .

4.2建图流程
-
启动除IMU外的传感器结点
roslaunch scout_bringup souct_base.launch -
启动传感器结点
cd ~/AIgoT1 source ./devel/setup.bash roslaunch algot1_base algo-algot1.launch -
启动cartographer
cd ~/2D-SLAM source ./devel_isolated/setup.bash roslaunch cartographer_ros cartographer_baitai.launch
五、自适应多传感器融合
简介:自适应多传感器融合使用EKF为主体框架,EKF为松耦合,各个传感器先算出各自的位姿及对应的观测协方差R(代表对本次观测的置信程度)。当某传感器失效时,R会显著增加,使其在EKF融合时所分配的权重降低,从而避免失效的传感器影响融合的效果。
输出 :/odom_ekf_dynamic1
步骤
-
启动除IMU外的传感器结点
roslaunch scout_bringup scout_dynamic_ekf.launch -
启动IMU结点
#终端1 cd ~/AIgoT1 source ./devel/setup.bash roslaunch algot1_base algo-algot1.launch #终端2 roslaunch algot1_base navsat_transform.launch
unch
2. 启动IMU结点
#终端1
cd ~/AIgoT1
source ./devel/setup.bash
roslaunch algot1_base algo-algot1.launch
#终端2
roslaunch algot1_base navsat_transform.launch