Skip to content

Commit

Permalink
EasyFullControl integration with rmf_demos (#158)
Browse files Browse the repository at this point in the history
Signed-off-by: Xi Yu Oh <[email protected]>
Signed-off-by: Yadunund <[email protected]>
Signed-off-by: Michael X. Grey <[email protected]>
Signed-off-by: Aaron Chong <[email protected]>
Co-authored-by: Yadunund <[email protected]>
Co-authored-by: Grey <[email protected]>
Co-authored-by: Aaron Chong <[email protected]>
  • Loading branch information
4 people committed Sep 18, 2023
1 parent f1e3d60 commit 39a3432
Show file tree
Hide file tree
Showing 30 changed files with 996 additions and 1,800 deletions.
86 changes: 60 additions & 26 deletions rmf_demos/config/airport_terminal/cleanerBotA_config.yaml
Original file line number Diff line number Diff line change
@@ -1,13 +1,5 @@
# FLEET CONFIG =================================================================
# RMF Fleet parameters

rmf_fleet:
name: "cleanerBotA"
fleet_manager:
ip: "127.0.0.1"
port: 22013
user: "some_user"
password: "some_password"
limits:
linear: [0.7, 0.5] # velocity, acceleration
angular: [0.4, 1.0] # velocity, acceleration
Expand All @@ -30,28 +22,70 @@ rmf_fleet:
power: 0.0 # W
recharge_threshold: 0.20 # Battery level below which robots in this fleet will not operate
recharge_soc: 1.0 # Battery level to which robots in this fleet should be charged up to during recharging tasks
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
publish_fleet_state: 10.0 # Publish frequency for fleet state, ensure that it is same as robot_state_update_frequency
account_for_battery_drain: True
task_capabilities: # Specify the types of RMF Tasks that robots in this fleet are capable of performing
loop: False
delivery: False
clean: True
finishing_request: "park" # [park, charge, nothing]

# CleanerBotA CONFIG =================================================================
actions: ["clean"]
finishing_request: "park" # [park, charge, nothing]
robots:
# Here the user is expected to append the configuration for each robot in the fleet.
cleanerBotA_0:
charger: "charger_cleanerBotA_0"

robots:
# Here the user is expected to append the configuration for each robot in the
# fleet.
# Configuration for cleanerBotA_0
cleanerBotA_0:
robot_config:
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
rmf_config:
robot_state_update_frequency: 10.0
start:
fleet_manager:
# Here is data related to the fleet manager. RMF will not parse any of this.
ip: "127.0.0.1"
port: 22013
user: "some_user"
password: "some_password"
robot_state_update_frequency: 10.0
action_paths:
clean:
zone_1:
map_name: "L1"
path: [ [121.3, -26.76, 0.0],
[121.1, -17.44, 1.57],
[116.2, -17.44, 0.0],
[116.2, -26.60, 1.57],
[110.6, -26.60, 3.14],
[110.6, -17.44, 1.57],
[105.9, -17.44, 0.0],
[105.9, -32.1, 0.0],
[121.5, -30.35, -1.57],
[121.3, -28.3, 0.0] ]
finish_waypoint: "zone_1"
zone_2:
map_name: "L1"
path: [ [149.00, -29.22, 0.0],
[129.4, -29.67, -1.57],
[129.4, -24.76, -1.57],
[149.0, -24.76, 3.14],
[149.0, -27.11, 0.0] ]
finish_waypoint: "zone_2"
zone_3:
map_name: "L1"
path: [ [154.4, -29.51, -1.57],
[169.9, -29.79, -0.8],
[173.1, -26.41, 1.57],
[173.1, -23.26, 3.14],
[154.4, -23.26, -1.57],
[154.4, -25.00, -1.57],
[168.5, -25.00, 3.14],
[168.5, -27.60, 1.57],
[154.4, -27.60, 0.0]]
finish_waypoint: "zone_3"
zone_4:
map_name: "L1"
waypoint: "charger_cleanerBotA_0"
orientation: 0.0 # radians
charger:
waypoint: "charger_cleanerBotA_0"
path: [ [152.0, -55.6, 0.0],
[123.1, -55.6, 0.0],
[123.1, -57.14, 0.0],
[148.5, -57.14, 0.0],
[148.5, -59.34, 0.0],
[148.5, -59.34, 0.0],
[123.0, -59.06, 0.0],
[123.0, -60.8, 0.0],
[152.0, -60.3, 0.0] ]
finish_waypoint: "zone_4"
80 changes: 46 additions & 34 deletions rmf_demos/config/airport_terminal/cleanerBotE_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,6 @@

rmf_fleet:
name: "cleanerBotE"
fleet_manager:
ip: "127.0.0.1"
port: 22014
user: "some_user"
password: "some_password"
limits:
linear: [0.7, 0.5] # velocity, acceleration
angular: [0.4, 1.0] # velocity, acceleration
Expand All @@ -30,40 +25,57 @@ rmf_fleet:
power: 0.0 # W
recharge_threshold: 0.20 # Battery level below which robots in this fleet will not operate
recharge_soc: 1.0 # Battery level to which robots in this fleet should be charged up to during recharging tasks
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
publish_fleet_state: 10.0 # Publish frequency for fleet state, ensure that it is same as robot_state_update_frequency
account_for_battery_drain: True
task_capabilities: # Specify the types of RMF Tasks that robots in this fleet are capable of performing
loop: False
delivery: False
clean: True
finishing_request: "park" # [park, charge, nothing]
actions: ["clean"]
finishing_request: "park" # [park, charge, nothing]
robots:
cleanerBotE_0:
charger: "charger_cleanerBotE_0"
cleanerBotE_1:
charger: "charger_cleanerBotE_1"

# CleanerBotE CONFIG =================================================================

robots:
# Here the user is expected to append the configuration for each robot in the
# fleet.
# Configuration for cleanerBotE_0
cleanerBotE_0:
robot_config:
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
rmf_config:
robot_state_update_frequency: 10.0
start:
fleet_manager:
ip: "127.0.0.1"
port: 22014
user: "some_user"
password: "some_password"
robot_state_update_frequency: 10.0
action_paths:
clean:
zone_2:
map_name: "L1"
path: [ [149.00, -29.22, 0.0],
[129.4, -29.67, -1.57],
[129.4, -24.76, -1.57],
[149.0, -24.76, 3.14],
[149.0, -27.11, 0.0] ]
finish_waypoint: "zone_2"
zone_3:
map_name: "L1"
waypoint: "charger_cleanerBotE_0"
orientation: 0.0 # radians
charger:
waypoint: "charger_cleanerBotE_0"
# Configuration for cleanerBotE_1
cleanerBotE_1:
robot_config:
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
rmf_config:
robot_state_update_frequency: 10.0
start:
path: [ [154.4, -29.51, -1.57],
[169.9, -29.79, -0.8],
[173.1, -26.41, 1.57],
[173.1, -23.26, 3.14],
[154.4, -23.26, -1.57],
[154.4, -25.00, -1.57],
[168.5, -25.00, 3.14],
[168.5, -27.60, 1.57],
[154.4, -27.60, 0.0]]
finish_waypoint: "zone_3"
zone_4:
map_name: "L1"
waypoint: "charger_cleanerBotE_1"
orientation: 0.0 # radians
charger:
waypoint: "charger_cleanerBotE_1"
path: [ [152.0, -55.6, 0.0],
[123.1, -55.6, 0.0],
[123.1, -57.14, 0.0],
[148.5, -57.14, 0.0],
[148.5, -59.34, 0.0],
[148.5, -59.34, 0.0],
[123.0, -59.06, 0.0],
[123.0, -60.8, 0.0],
[152.0, -60.3, 0.0] ]
finish_waypoint: "zone_4"
63 changes: 15 additions & 48 deletions rmf_demos/config/airport_terminal/deliveryRobot_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,6 @@

rmf_fleet:
name: "deliveryRobot"
fleet_manager:
ip: "127.0.0.1"
port: 22012
user: "some_user"
password: "some_password"
limits:
linear: [0.7, 0.75] # velocity, acceleration
angular: [0.6, 2.0] # velocity, acceleration
Expand All @@ -30,52 +25,24 @@ rmf_fleet:
power: 0.0 # W
recharge_threshold: 0.10 # Battery level below which robots in this fleet will not operate
recharge_soc: 1.0 # Battery level to which robots in this fleet should be charged up to during recharging tasks
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
publish_fleet_state: 10.0 # Publish frequency for fleet state, ensure that it is same as robot_state_update_frequency
account_for_battery_drain: True
task_capabilities: # Specify the types of RMF Tasks that robots in this fleet are capable of performing
loop: True
delivery: True
clean: False
finishing_request: "park" # [park, charge, nothing]
finishing_request: "park" # [park, charge, nothing]
robots:
deliveryRobot_0:
charger: "s08"
deliveryRobot_1:
charger: "s11"
deliveryRobot_2:
charger: "charger_deliveryRobot_2"

# DeliveryRobot CONFIG =================================================================

robots:
# Here the user is expected to append the configuration for each robot in the
# fleet.
# Configuration for deliveryRobot_0
deliveryRobot_0:
robot_config:
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
rmf_config:
robot_state_update_frequency: 10.0
start:
map_name: "L1"
waypoint: "s08"
orientation: 0.0 # radians
charger:
waypoint: "s08"
# Configuration for deliveryRobot_1
deliveryRobot_1:
robot_config:
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
rmf_config:
robot_state_update_frequency: 10.0
start:
map_name: "L1"
waypoint: "s11"
orientation: 0.0 # radians
charger:
waypoint: "s11"
# Configuration for deliveryRobot_2
deliveryRobot_2:
robot_config:
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
rmf_config:
robot_state_update_frequency: 10.0
start:
map_name: "L1"
waypoint: "charger_deliveryRobot_2"
orientation: 0.0 # radians
charger:
waypoint: "charger_deliveryRobot_2"
fleet_manager:
ip: "127.0.0.1"
port: 22012
user: "some_user"
password: "some_password"
robot_state_update_frequency: 10.0
77 changes: 17 additions & 60 deletions rmf_demos/config/airport_terminal/tinyRobot_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,6 @@

rmf_fleet:
name: "tinyRobot"
fleet_manager:
ip: "127.0.0.1"
port: 22011
user: "some_user"
password: "some_password"
limits:
linear: [0.5, 0.75] # velocity, acceleration
angular: [0.6, 2.0] # velocity, acceleration
Expand All @@ -29,64 +24,26 @@ rmf_fleet:
power: 0.0 # W
recharge_threshold: 0.10 # Battery level below which robots in this fleet will not operate
recharge_soc: 1.0 # Battery level to which robots in this fleet should be charged up to during recharging tasks
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
publish_fleet_state: 10.0 # Publish frequency for fleet state, ensure that it is same as robot_state_update_frequency
account_for_battery_drain: True
task_capabilities: # Specify the types of RMF Tasks that robots in this fleet are capable of performing
loop: True
delivery: True
clean: False
finishing_request: "park" # [park, charge, nothing]
finishing_request: "park" # [park, charge, nothing]
robots:
tinyRobot_0:
charger: "s03"
tinyRobot_1:
charger: "s07"
tinyRobot_2:
charger: "n13"
tinyRobot_3:
charger: "n03"

# TinyRobot CONFIG =================================================================

robots:
# Here the user is expected to append the configuration for each robot in the
# fleet.
# Configuration for tinyRobot_0
tinyRobot_0:
robot_config:
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
rmf_config:
robot_state_update_frequency: 10.0
start:
map_name: "L1"
waypoint: "s03"
orientation: 0.0 # radians
charger:
waypoint: "s03"
# Configuration for tinyRobot_1
tinyRobot_1:
robot_config:
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
rmf_config:
robot_state_update_frequency: 10.0
start:
map_name: "L1"
waypoint: "s07"
orientation: 0.0 # radians
charger:
waypoint: "s07"
# Configuration for tinyRobot_2
tinyRobot_2:
robot_config:
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
rmf_config:
robot_state_update_frequency: 10.0
start:
map_name: "L1"
waypoint: "n13"
orientation: 0.0 # radians
charger:
waypoint: "n13"
# Configuration for tinyRobot_3
tinyRobot_3:
robot_config:
max_delay: 15.0 # allowed seconds of delay of the current itinerary before it gets interrupted and replanned
rmf_config:
robot_state_update_frequency: 10.0
start:
map_name: "L1"
waypoint: "n03"
orientation: 0.0 # radians
charger:
waypoint: "n03"
fleet_manager:
ip: "127.0.0.1"
port: 22011
user: "some_user"
password: "some_password"
robot_state_update_frequency: 10.0
Loading

0 comments on commit 39a3432

Please sign in to comment.