![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.4.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | jazzy |
Last Updated | 2025-05-26 |
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
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.6.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | kilted |
Last Updated | 2025-05-10 |
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
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-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
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_dashboard_resources rmf_demos_gz rmf_demos_ign rmf_demos_maps rmf_demos_panel rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 1.3.2 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | galactic |
Last Updated | 2021-12-01 |
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
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Quality Declaration
This package claims to be in the Quality Level 4 category, see the Quality Declaration for more details.
Changelog for package rmf_demos_tasks
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix #1
- Add priority selection in dispatch scripts and react ui #5
- Cleaning task demo in Airport terminal #8
1.1.0 (2020-09-24)
- Remove ament_python dependency. #92
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending
Loop
andDelivery
task requests tormf_fleet_adapters
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_dashboard_resources rmf_demos_gz rmf_demos_ign rmf_demos_maps rmf_demos_panel rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 1.3.2 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | foxy |
Last Updated | 2021-12-01 |
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
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Quality Declaration
This package claims to be in the Quality Level 4 category, see the Quality Declaration for more details.
Changelog for package rmf_demos_tasks
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix #1
- Add priority selection in dispatch scripts and react ui #5
- Cleaning task demo in Airport terminal #8
1.1.0 (2020-09-24)
- Remove ament_python dependency. #92
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending
Loop
andDelivery
task requests tormf_fleet_adapters
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |
Launch files
Messages
Services
Plugins
Recent questions tagged rmf_demos_tasks at Robotics Stack Exchange
![]() |
rmf_demos_tasks package from rmf_demos repormf_demos rmf_demos_assets rmf_demos_bridges rmf_demos_fleet_adapter rmf_demos_gz rmf_demos_maps rmf_demos_tasks |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.7.0 |
License | Apache Licence 2.0 |
Build type | AMENT_PYTHON |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/open-rmf/rmf_demos.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-06-17 |
Dev Status | DEVELOPED |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Yadunund
- Marco A. Gutiérrez
Authors
- Grey
rmf_demo_tasks
This package provides scripts used in the RMF demos to demonstrate the tasks that may be requested of a robot.
Flexible Tasks
The new task system allows users to construct and submit their own tasks in a more flexible manner, such as having multiple stops in a loop or specifying a robot for a cleaning task. This package contains some helpful scripts that demonstrate how to compose such tasks:
-
dispatch_patrol
This task allows users to dispatch a robot to perform the patrol task. On top of the start and finish waypoints, you can provide a fleet name
-F
and robot name-R
.Example for Office world, dispatch the task to a specific robot.
ros2 run rmf_demos_tasks dispatch_patrol -F tinyRobot -R tinyRobot1 -p lounge -n 2 --use_sim_time
or multiple places for the robot to travel to:
ros2 run rmf_demos_tasks dispatch_patrol -p supplies pantry coe --use_sim_time
-
dispatch_clean
This script submits a cleaning task. The
-cs
flag takes in the desired cleaning zone as an argument. You may also choose to specify a robot to perform the cleaning task by providing a fleet name-F
and robot name-R
.Example for Hotel world:
ros2 run rmf_demos_tasks dispatch_clean -cs clean_lobby -F cleanerBotA -R cleanerBotA_1 --use_sim_time
-
dispatch_action
This script demonstrates how to compose a task with the
PerformAction
teleop feature. You can ask a robot to go to a starting point-s
to execute an action,-a
indicates the name of the action.Example for Office world. The example below shows an action name of “teleop”.
ros2 run rmf_demos_tasks dispatch_action -F tinyRobot -R tinyRobot1 -a teleop -s coe --use_sim_time
After completing your teleop action, you will need to publish the following message to return control to RMF:
ros2 topic pub /action_execution_notice rmf_fleet_msgs/msg/ModeRequest '{fleet_name: tinyRobot, robot_name: tinyRobot1, mode: {mode: 0}}' --once
This script also takes a series of starting points -s
as arguments and commands a robot to perform the same specified action at the given points.
Example for Office world. Run a total of 3 “teleop” actions at coe, supplies and pantry waypoints:
ros2 run rmf_demos_tasks dispatch_action -a teleop -s coe supplies pantry --use_sim_time
The robot will move to each of these places and RMF will relinquish control. Similar to dispatch_action
earlier, you may perform your desired action (e.g. using the provided teleop_robot
script) and end the action by publishing a ModeRequest
to /action_execution_notice
. The robot will then move to the next point to perform the next action.
-
dispatch_delivery
This script allows users to perform deliveries with one or more pickup and drop-off locations. It takes in information about the pickup
-p
and dropoff-d
activities in the order you submit them. For each activity, you will need to provide the place, handler, payload SKU and quantity separated by a comma.Example for Office world:
ros2 run rmf_demos_tasks dispatch_delivery \
-p pantry pantry \
-ph coke_dispenser coke_dispenser_2 \
-d hardware_2 coe \
-dh coke_ingestor coke_ingestor_2 \
-pp coke,1 coke,1 \
-dp coke,1 coke,1 \
--use_sim_time
-
cancel_task Cancel a task by specifying its task ID:
Example: Run dispatch a
patrol
task to the newly launchedoffice_world
.
ros2 run rmf_demos_tasks dispatch_patrol -p coe lounge --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_task -id patrol.dispatch-0
cancel_robot_task Cancel a task that is currently being executed on a specific robot
Example: Run dispatch a patrol
task to the newly launched office_world
.
ros2 run rmf_demos_tasks dispatch_go_to_place -p pantry -F tinyRobot -R tinyRobot2 --use_sim_time
Then try cancel the submitted task with the id.
ros2 run rmf_demos_tasks cancel_robot_task -F tinyRobot -R tinyRobot2
Additional Scripts
-
office_teleop_robot
This script demonstrates the capability of
teleop
perform action task. Imagine when the robot executes a teleop action, the user would like to move the robot around. To simulate this behaviour, we will show this scenario in office world.
File truncated at 100 lines see the full file
Changelog for package rmf_demos_tasks
2.7.0 (2025-06-09)
2.6.0 (2025-05-09)
- Dynamic events CLI scripts (#296)
- Adds a script to cancel the currently executing task on a specific robot. (#286)
- Introduce --estimate option to some task dispatch scripts (#287)
- Emergency signal script (#288)
- created .gitignore in rmf_demos_task for ignoring pycache files. (#281)
- Contributors: Arjo Chakravarty, Francesco Fallica, Grey, Jun
2.5.0 (2024-11-27)
- Add proto-reservation node as core part of RMF (#212)
- Fix existing style issues (#252)
- Add attach cart action (#225)
- Adding requester and request time for dispatch scripts (#240)
- Contributors: Aaron Chong, Arjo Chakravarty, Luca Della Vedova, Xiyu
2.4.0 (2024-06-12)
2.3.0 (2024-06-12)
- Port to harmonic (#206)
- Add script for sending any API request, read from a .json file (#222)
- Add a script for dispatching tasks from a json description (#215)
- Add all exec deps for rmf_demos_fleet_adapter (#211)
- Support one_of for go_to_place (#200)
- Update CI to rolling on main (#208)
- Support fleet-level task (#201)
- Contributors: Grey, Luca Della Vedova, Yadunund, cwrx777
2.2.3 (2023-12-20)
2.2.2 (2023-08-28)
- EasyFullControl integration with rmf_demos (#158)
- Contributors: Aaron Chong, Grey, Xiyu, Yadunund
2.2.1 (2023-08-10)
2.2.0 (2023-06-08)
2.1.0 (2023-06-06)
- Switch to rst changelogs (#182)
- Version updates from latest release synced to main (#167)
- Contributors: Esteban Martinena Guerrero, Yadunund
2.0.2 (2022-10-10)
2.0.1 (2022-09-29)
1.2.0 (2021-07-21)
- update all namings with rmf_demos as prefix (#1)
- Add priority selection in dispatch scripts and react ui (#5)
- Cleaning task demo in Airport terminal (#8)
1.1.0 (2020-09-24)
- Remove ament_python dependency. (#92)
- Contributors: Aaron Chong, Kevin_Skywalker, Michael X. Grey, Yadu, kevinskwk, mrushyendra
1.0.0 (2020-06-24)
- Provides scripts for sending [Loop]{.title-ref} and [Delivery]{.title-ref} task requests to [rmf_fleet_adapters]{.title-ref}
- Contributors: Aaron, Aaron Chong, Charayaphan Nakorn Boon Han, Geoffrey Biggs, Yadu, Yadunund
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
rmf_fleet_msgs | |
rmf_task_msgs | |
rmf_dispenser_msgs | |
rmf_lift_msgs | |
ament_copyright | |
ament_flake8 | |
ament_pep257 |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
rmf_demos |