-
 

pmb2_multi package from pmb2_simulation repo

pmb2_gazebo pmb2_multi pmb2_simulation

Package Summary

Tags No category tags.
Version 2.0.24
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/pal-robotics/pmb2_simulation.git
VCS Type git
VCS Version humble-devel
Last Updated 2024-10-17
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

The pmb2_multi package

Additional Links

Maintainers

  • Adrià Roig

Authors

No additional authors.

Multiple PMB2 simulation

This project contains several launch files to simulate multiple PMB2 robots in a single Gazebo environment.

The environment

In order to have multiple PMB2 robots coexisting in the same environment some modifications need to be done. All the nodes belonging to a specific robot are pushed into its own namespace. In addition its tf tree is prepended with the same name as a tf_prefix.

This generates a single tf tree that has a map root, and then, for each robot, a classic robot/map -> robot/odom -> robot/base_footprint tree, were robot is this robot’s tf_prefix.

Launchfiles

The launch files in this package allow you to: launch a PMB2 in a specific namespace (with or without navigation), with its tf tree prefixed with the provided namespace; launch a key_teleop node on a specific namespace; and finally an example with two PMB2 robots in the pal office environment (with or without navigation).

teleop_PMB2.launch

Utility launch that runs a key_teleop node in the namespace provided in the robot parameter.

launch_PMB2.launch & launch_PMB2_navigation.launch

Those are the main launch files of this package. The launch files contain all the required arguments to launch a new PMB2 in its own namespace, adding the model to gazebo, launching its controllers and, in case, launch its navigation stack. The launch file has three mandatory parameters:

  • robot_name Namespace to which this robot’s nodes will be pushed (its tf tree will use the same name as the tf_prefix).
  • x_pose X coordinate of the initial pose of the robot on the map.
  • y_pose Y coordinate of the initial pose of the robot on the map. It is important to make sure that the different robots start at different coordinates of the map to avoid overlapping.

In addition the following parameters may be modified:

  • robot Model of robot to be instantiated (either steel or titanium, for gripper or hand respectively). Default: steel.
  • world Gazebo world that will be used. Default: small_office.
  • map Map file for amcl. Default: ~/.pal/PMB2_maps/configurations/small_office
  • public_sim Set to true when using the public version of the PMB2 simulation. This parameter should not be changed.

For the navigation launch, in addition, the following parameters may be modified:

  • planner Planner for the navigation. Default: base (move_base planner).
  • global_planner Global navigation planner. Default: global_planner.
  • local_planner Local navigation planner. Default: eband (eband_planner).
  • localization Localizacion stack. Default: amcl.

multiPMB2_gazebo.launch & multiPMB2_gazebo.launch

Those launch files launches two default PMB2 robots in a pal_office environment. They may be used as an example on how to build your specific multi-robot launch.

CHANGELOG

Changelog for package pmb2_multi

2.0.24 (2021-01-13)

2.0.23 (2020-07-30)

  • Merge branch 'rename_tf_prefix' into 'erbium-devel' Rename tf_prefix to robot_namespace See merge request robots/pmb2_simulation!30
  • Rename tf_prefix to robot_namespace
  • Contributors: davidfernandez, victor

2.0.22 (2020-04-14)

2.0.21 (2020-04-03)

2.0.20 (2020-03-19)

  • Merge branch 'use-tf2-static-pub' into 'erbium-devel' Use tf2 static pub, which publishes to /tf_static See merge request robots/pmb2_simulation!26
  • Use tf2 static pub, which publishes to /tf_static
  • Contributors: Victor Lopez, victor

2.0.19 (2019-10-22)

  • Merge branch 'removed-relay' into 'erbium-devel' removed map relay See merge request robots/pmb2_simulation!24
  • removed map relay
  • Contributors: Procópio Stein, Victor Lopez

2.0.18 (2019-10-14)

  • Merge branch 'refactoring' into 'erbium-devel' removed public launches in favor of using public_sim flag See merge request robots/pmb2_simulation!23
  • removed public launches in favor of using public_sim flag
  • Contributors: Procópio Stein, Victor Lopez

2.0.17 (2019-10-10)

2.0.16 (2019-10-10)

2.0.15 (2019-10-10)

2.0.14 (2019-09-25)

2.0.13 (2019-09-23)

2.0.12 (2019-08-14)

  • Merge branch 'add-robot-pose' into 'erbium-devel' Add robot pose to navigation.launch See merge request robots/pmb2_simulation!18
  • Add robot pose to navigation.launch
  • Contributors: Victor Lopez

2.0.11 (2019-08-01)

  • Merge branch 'multi_pmb2' into 'erbium-devel' Changes for multi pmb2 simulation See merge request robots/pmb2_simulation!17
  • Select local planner according public sim
  • Fix parameters in multi pmb2 simulation
  • Modify default parameters
  • Changes for multi pmb2 simulation
  • Contributors: Adria Roig, Victor Lopez

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

No known dependants.

Launch files

  • launch/launch_pmb2.launch
      • robot_name
      • x_pose
      • y_pose
      • laser_model [default: sick-571]
      • rgbd_sensors [default: false]
      • world [default: small_office]
      • map [default: $(env HOME)/.pal/pmb2_maps/configurations/$(arg world)]
      • public_sim [default: false]
      • simple_sim_model [default: false]
      • gzpose [default: -x $(arg x_pose) -y $(arg y_pose) -z 0.0 -R 0.0 -P 0.0 -Y 0.0]
      • simple_sim_model [default: $(arg simple_sim_model)]
  • launch/launch_pmb2_navigation.launch
      • robot_name
      • x_pose
      • y_pose
      • laser_model [default: sick-571]
      • rgbd_sensors [default: false]
      • world [default: small_office]
      • planner [default: base]
      • global_planner [default: global_planner]
      • localization [default: amcl]
      • map [default: $(env HOME)/.pal/pmb2_maps/configurations/$(arg world)]
      • octomap [default: false]
      • public_sim [default: false]
      • simple_sim_model [default: false]
      • local_planner [default: $(eval 'teb' if arg('public_sim') else 'pal')]
      • gzpose [default: -x $(arg x_pose) -y $(arg y_pose) -z 0.0 -R 0.0 -P 0.0 -Y 0.0]
      • simple_sim_model [default: $(arg simple_sim_model)]
  • launch/multipmb2_gazebo_navigation.launch
      • world [default: pal_office]
      • laser_model [default: sick-571]
      • rgbd_sensors [default: false]
      • gui [default: true]
      • debug [default: false]
      • public_sim [default: false]
      • map [default: $(find pmb2_multi)/config/map]
      • simple_sim_model [default: false]
  • launch/multipmb2_gazebo.launch
      • world [default: pal_office]
      • laser_model [default: sick-571]
      • rgbd_sensors [default: false]
      • gui [default: true]
      • debug [default: false]
      • public_sim [default: false]
      • map [default: $(find pmb2_multi)/config/map]
      • recording [default: false]
      • extra_gazebo_args [default: ]
      • simple_sim_model [default: false]
  • launch/teleop_pmb2.launch
      • robot [default: ]

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged pmb2_multi at Robotics Stack Exchange

No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.
No version for distro noetic. Known supported distros are highlighted in the buttons above.
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.