< >
Home » ROS2与Open-RMF仿真教程 » ROS2与Open-RMF仿真教程-turtlebot3使用free_fleet

ROS2与Open-RMF仿真教程-turtlebot3使用free_fleet

ROS2与Open-RMF仿真教程-turtlebot3使用free_fleet

说明:

  • 介绍如何结合turtlebot3使用free_fleet

步骤:

cs -s install_tb3_humble_source

测试:

  • 启动Turtlebot3 Fleet Server
source ~/ros2_free_fleet_ws/install/setup.bash
ros2 launch ff_examples_ros2 turtlebot3_world_ff_server.launch.xml
  • 效果图:

请输入图片描述

  • 启动Turtlebot3仿真
source ~/ros2_free_fleet_ws/install/setup.bash
export TURTLEBOT3_MODEL=burger; ros2 launch ff_examples_ros2 turtlebot3_world_ff.launch.xml
  • 此启动文件启动 gazebo 中的模拟、rviz2 中的可视化以及单个 turtlebot3 的模拟导航堆栈。
  • 一旦模拟和可视化显示出来,就可以通过 rviz2 上的按钮2D Nav Goal 的 正常命令机器人。
  • gazebo效果图:

请输入图片描述

  • rviz效果图:

请输入图片描述

  • 查看fleet_states 话题
source ~/ros2_free_fleet_ws/install/setup.bash
ros2 topic echo /fleet_states
  • 目的地请求,允许对机器人发出单一目的地命令
source ~/ros2_free_fleet_ws/install/setup.bash
ros2 run ff_examples_ros2 send_destination_request.py -f turtlebot3 -r ros2_tb3_0 -x 1.725 -y -0.39 --yaw 0.0 -i unique_task_id_1
  • 效果如下:
fleet_name: fake_fleet
robot_name: fake_ros2_robot
x: 1.725
y: -0.39
yaw: 0.0
level_name: B1
task_id: unique_task_id_1
topic_name: robot_destination_requests
all done!
  • 路径请求,请求机器人执行一串目标命令
source ~/ros2_free_fleet_ws/install/setup.bash
ros2 run ff_examples_ros2 send_path_request.py -f turtlebot3 -r ros2_tb3_0 -i unique_task_id_2 -p '[{"x": 1.725, "y": -0.39, "yaw": 0.0, "level_name": "B1"}, {"x": 1.737, "y": 0.951, "yaw": 1.57, "level_name": "B1"}, {"x": -0.616, "y": 1.852, "yaw": 3.14, "level_name": "B1"}, {"x": -0.626, "y": -1.972, "yaw": 4.71, "level_name": "B1"}]'
  • 模式请求,目前只支持暂停和恢复的
ros2 run ff_examples_ros2 send_mode_request.py -f turtlebot3 -r ros2_tb3_0 -m pause -i unique_task_id_3
ros2 run ff_examples_ros2 send_mode_request.py -f turtlebot3 -r ros2_tb3_0 -m resume -i unique_task_id_4
  • 请注意,任务 ID 需要是唯一的,如果使用以前使用过的任务 ID 发送请求,则免费队列客户端将忽略该请求

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: ros2与open-rmf仿真教程