目录:

  • Turbot3-Multi多机协同教程-目录
  • Turbot3-Multi多机协同教程-硬件
  • Turbot3-Multi多机协同教程-软件
  • Turbot3-Multi多机协同教程-设备测试
  • Turbot3-Multi多机协同教程-单机遥控建图
  • Turbot3-Multi多机协同教程-单机定点导航
  • Turbot3-Multi多机协同教程-多机遥控建图
  • Turbot3-Multi多机协同教程-多机定点导航
  • Turbot3-Multi多机协同教程-多机行为树导航
  • Turbot3-Multi多机协同教程-多机Frontier自主探索建图
  • Turbot3-Multi多机协同教程-多机RRT自主探索建图

说明:

  • 介绍如何实现多机建图

相关设备:

  • Turbot3-Multi套件,采购地址

操作步骤:

  • 关闭此前打开的ros程序,以免造成冲突
./multi_scripts/multi_kill.sh
  • 新开终端,启动多机
// 根据你当前机器人的数量选择对应的命令

// 默认是启动三台机器人 
./multi_scripts/multi_robot.sh

// 启动六台机器人 
./multi_scripts/multi_robot6.sh

// 启动十台机器人 
./multi_scripts/multi_robot10.sh
  • 启动之后的TF图如下:

Turbot3-Multi多机协同教程-多机遥控建图_ROS2

// 根据你当前机器人的数量选择对应的命令

// 启动三台机器人的初始化位姿程序
./multi_scripts/multi_init_pose.sh

// 启动六台机器人的初始化位姿程序
./multi_scripts/multi_init_pose6.sh

// 启动十台机器人的初始化位姿程序
./multi_scripts/multi_init_pose10.sh
  • 新开终端, 启动建图
// 根据你当前机器人的数量选择对应的命令

// 启动三台机器人的建图程序 
./multi_scripts/multi_slam.sh

// 启动六台机器人的建图程序 
./multi_scripts/multi_slam6.sh

// 启动十台机器人的建图程序 
./multi_scripts/multi_slam10.sh
  • 启动之后的TF图如下:

Turbot3-Multi多机协同教程-多机遥控建图_javascript_02

  • 新开终端,启动合并地图和rviz
// 根据你当前机器人的数量选择对应的命令

// 启动三台机器人的地图合并程序
./multi_scripts/multi_map_merge.sh

// 启动六台机器人的地图合并程序
./multi_scripts/multi_map_merge6.sh

// 启动六台机器人的地图合并程序
./multi_scripts/multi_map_merge10.sh
  • 根据机器人数量打开对应数量的终端,启动键盘控制
// 启动三台机器人的键盘控制程序
./multi_scripts/multi_key.sh 0
./multi_scripts/multi_key.sh 1
./multi_scripts/multi_key.sh 2

// 如果是六台机器人,请继续执行下面程序 
./multi_scripts/multi_key.sh 3
./multi_scripts/multi_key.sh 4
./multi_scripts/multi_key.sh 5

// 如果是十台机器人,请继续执行下面程序 
./multi_scripts/multi_key.sh 6
./multi_scripts/multi_key.sh 7
./multi_scripts/multi_key.sh 8
./multi_scripts/multi_key.sh 9
  • 控制每台小车进行建图,同时查看合并后地图,建图完成
  • 效果如下:

Turbot3-Multi多机协同教程-多机遥控建图_算法_03

  • 新开终端,保存地图
./multi_scripts/multi_save_map.sh
  • 地图保存在~/map目录下,命名为multi.yaml和multi.pgm

FAQ

  • 问题一:有时候会遇到某台机器人不能正常启动的情况,这时候可以单独关闭和重新启动此台机器人的ros进程
## 命令后面的数字 `0` 表示机器人的编号
./multi_scripts/single_kill.sh 0
./multi_scripts/single_robot.sh 0