[Documentation] [TitleIndex] [WordIndex

tuw_multi_robot: tuw_multi_robot_ctrl | tuw_multi_robot_demo | tuw_multi_robot_goal_generator | tuw_multi_robot_local_behavior_controller | tuw_multi_robot_msgs | tuw_multi_robot_router | tuw_multi_robot_rviz | tuw_voronoi_graph

Package Summary

This package contains a MultiRobotRouter using Prioritized Planning in Combination with a collision resolution algorithm to find a routing tabel for a large number of robots.

  • Maintainer status: maintained
  • Maintainer: Benjamin Binder <benjamin.binder AT tuwien.ac DOT at>, Markus Bader <markus.bader AT tuwien.ac DOT at>, Florian Beck <florian.beck AT tuwien.ac DOT at>
  • Author: Benjamin Binder <benjamin.binder AT tuwien.ac DOT at>
  • License: BSD
  • Source: git https://github.com/tuw-robotics/tuw_multi_robot.git (branch: kinetic)
tuw_multi_robot: tuw_multi_robot_ctrl | tuw_multi_robot_demo | tuw_multi_robot_goal_generator | tuw_multi_robot_local_behavior_controller | tuw_multi_robot_msgs | tuw_multi_robot_router | tuw_multi_robot_rviz | tuw_voronoi_graph

Package Summary

This package contains a MultiRobotRouter using Prioritized Planning in Combination with a collision resolution algorithm to find a routing tabel for a large number of robots.

  • Maintainer status: maintained
  • Maintainer: Benjamin Binder <benjamin.binder AT tuwien.ac DOT at>, Markus Bader <markus.bader AT tuwien.ac DOT at>, Florian Beck <florian.beck AT tuwien.ac DOT at>
  • Author: Benjamin Binder <benjamin.binder AT tuwien.ac DOT at>
  • License: BSD
  • Source: git https://github.com/tuw-robotics/tuw_multi_robot.git (branch: master)

Documentation

The MRRP uses a prioritized planning approach to find the robots routes. Additionally, there are a Priority and a Speed Rescheduler as well as a Collision resolver integrated to solve special scenarios not solvable by standard prioritized planning approaches as shown in the figure below.

SampleScenario_1_Wait.png SampleScenario_2_Avoid.png SampleScenario_3_Avoid.png SampleScenario_4_Push.png SampleScenario_5_Prio.png SampleScenario_6_Speed.png

Figure Sample Scenarios

The route can be used for multiple vehicles or for just one to plan paths on a given or generated graph.

Multi Robot Mode

The Multi Robot Mode is the default mode. The planner listens to /robot_info see how many robots are online and available for planning. A list of goals can be send to goal Since the results generated for these scenarios are interdependent, the given routes have to be executed in a synchronized fashion. Therefore, the Router publishes a tuw_multi_robot_msgs/Route containing preconditions, when a robot is allowed to enter a segment. Additionally a unsynchronized version via nav_msgs/Path is published for every robot.

Single Robot Mode

In this mode the planner just plans a path for one robot but on a graph which is faster and depending how the graph was generated saver to drive e.g. on a voronoi graph the path would always be center in the hallway and not cut corners such as A-star. In order to activae this mode have a look on the paramter path_endpoint_optimization and robot_name.

Example

For an example see the tuw_multi_robot_demo package.

Subscribed Topics

/robot_info (tuw_multi_robot_msgs/RobotInfo)

map (nav_msgs/OccupancyGrid)

segments (tuw_multi_robot_msgs/Graph)

goals (tuw_multi_robot_msgs/RobotGoalArray)

/goal (geometry_msgs/PoseStamped)

Published Topics

planner_status (tuw_multi_robot_msgs/PlannerStatus)

[robot_name]/path (nav_msgs/Path)

[robot_name]/route (tuw_multi_robot_msgs/Route)

Parameters

robot_name (string default: "")

RQT Reconfigure Parameters

voronoi_graph (bool default: "true")

priority_rescheduling (bool default: "true")

speed_rescheduling (bool default: "true")

router_time_limit_s (float default: "10.0")

topic_timeout_s (float default: "10.0")

path_endpoint_optimization (bool default: "false")

collision_resolver (enum default: "Avoidance")

goal_mode (enum default: "use_voronoi_goal")

router_type (enum default: "standard_router")

nr_threads (int default: "1")

Report a Bug

Use GitHub to report bugs or submit feature requests. [View active issues]


2019-07-13 13:18