< >
Home » ROS2与Open-RMF仿真教程 » ROS2与Open-RMF仿真教程-使用traffic-editor制作导航图

ROS2与Open-RMF仿真教程-使用traffic-editor制作导航图

ROS2与Open-RMF仿真教程-使用traffic-editor制作导航图

说明:

  • 介绍如何基于雷达建图保存的栅格图,再制作rmf使用的导航图
  • 环境:ubuntu22.04 + humble + rmf22.09

步骤:

cs -s install_rmf_burger_maps 
  • 先移走默认的制作的burger包burger.building.yaml, 后面作为对比用
mv ~/ros2_rmf_map_ws/src/rmf_burger_maps/maps/burger/burger.building.yaml  ~/ros2_rmf_map_ws/
  • 启动traffic-editor
traffic-editor
  • 新建地图文件
  • 界面Building->New
  • 选择目录~/ros2_rmf_map_ws/src/rmf_burger_maps/maps/burger/
  • 输入文件名burger.building.yaml
  • Map Name: burger
  • 这里我们使用建图后的地图作为平面图, 选择Referrenc-image coordinates
  • 效果如图

请输入图片描述

  • 新建楼层
  • 设为L1,并指定栅格图作为平面图
  • map.png位于~/ros2_rmf_map_ws/src/rmf_burger_maps/maps/burger/

请输入图片描述

  • 点OK后, 栅格图就已经加载,通过鼠标中键调整好位置

请输入图片描述

  • 设置地图尺寸
  • 选择Add Measurement工具
  • 从左边顶点拉到右边, 再使用Select工具,点画好的线条,设置右下线条属性Properties的distance为5.3

请输入图片描述

  • 设置墙体
  • 选择Add wall工具
  • 选择在地图的顶点之间拉线, 同时地图里面的柱体拉线. 点右键连线结束

请输入图片描述

  • 设置活动区
  • 选择Add floor polygon工具
  • 也是跟随刚才地图顶点之间拉线, 拉线后在用select工具点选就会显示

请输入图片描述

  • 设置航点和车道线
  • 选择Add lane工具, 可以自由拉线, 但是各点之后要连线

请输入图片描述

  • 配置小车1
  • 选择上面第一个点作为小车1的起始位置点
  • 名称name: tinyRobot1_charger
  • 点Add Property增加属性
is_charger: ture
is_parking_spot: ture
is_holding_spot: true
spawn_robot_name: tinyRobot1
spawn_robot_type: TinyRobot
  • 效果图:

请输入图片描述

  • 配置小车2
  • 选择下面第一个点作为小车2的起始位置点
  • 名称name: tinyRobot2_charger
  • 点Add Property增加属性
is_charger: ture
is_parking_spot: ture
is_holding_spot: true
spawn_robot_name: tinyRobot2
spawn_robot_type: TinyRobot
  • 效果图:

请输入图片描述

  • 配置航点
  • 选择任意其他航点,分别设置为name: spot_1

请输入图片描述

  • 设置更多spot_2.....spot_5

  • 配置crowds

  • enbale_crowd_sim要勾选上

请输入图片描述

  • 保存地图

  • 界面导航条Building->save

  • 生成导航图

cd ~/ros2_rmf_map_ws/
colcon build --symlink-install
  • 测试效果:
source ~/ros2_rmf_map_ws/install/local_setup.bash
ros2 launch rmf_burger_maps burger.launch.xml
  • gazebo效果

请输入图片描述

  • rviz效果:

请输入图片描述

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

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


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