Platform Overview
Every robot platform has unique structures such as versatile sensor mounting solutions, wireless charging receivers, and waterproofing enclosures; we refer to these as attachments.
Additionally, each robot also supports specific batteries and battery configurations that must be set accurately to ensure proper battery management.
Furthermore, the robot platform nodes can be modified by the user through the extras section. In particular, an extra URDF can be appended to the robot's URDF, a launch file can be added to the robot's launch file, and ROS parameters can be modified directly by setting the key, value pairs.
The platform section is divided into the following sections:
Sample
Sample A200 Platform Section
In this sample, we swapped the top plate from the default model to the pacs model. Notice all the links added by the pacs plate below, compared to the default plate above.
- name: top_plate
type: a200.top_plate
model: pacs # switched from 'default' to 'pacs'
parent: default_mount
xyz: [0.0, 0.0, 0.0]
rpy: [0.0, 0.0, 0.0]
enabled: true
Then, we added a sensor arch to add our sample sensors to. We can do this by adding the attachment, sensor_arch and setting the model to sensor_arch_300.
- name: sensor_arch
type: a200.sensor_arch
model: sensor_arch_300
parent: default_mount
xyz: [0.0, 0.0, 0.0]
rpy: [0.0, 0.0, 0.0]
enabled: true
In terms of the front_bumper and rear_bumper, we left these as defaults. And, since we are not including any customization URDF or launch parameters; the resulting platform section look like this:
platform:
battery:
model: ES20_12C
configuration: S2P1
controller: ps4
attachments:
- name: front_bumper
type: a200.bumper
model: default
parent: front_bumper_mount
xyz: [0.0, 0.0, 0.0]
rpy: [0.0, 0.0, 0.0]
enabled: true
extension: 0.0
- name: rear_bumper
type: a200.bumper
model: default
parent: rear_bumper_mount
xyz: [0.0, 0.0, 0.0]
rpy: [0.0, 0.0, 0.0]
enabled: true
extension: 0.0
- name: top_plate
type: a200.top_plate
model: pacs
parent: default_mount
xyz: [0.0, 0.0, 0.0]
rpy: [0.0, 0.0, 0.0]
enabled: true
- name: sensor_arch
type: a200.sensor_arch
model: sensor_arch_300
parent: default_mount
xyz: [0.0, 0.0, 0.0]
rpy: [0.0, 0.0, 0.0]
enabled: true
extras:
urdf: {}
ros_parameters: {}