The Pose generator is mainly used in the context of relocalization, in order to provide a static pose for initialization: for example indoor, when there is no GNSS available.
This component features two mode
| Mode | Description |
|---|---|
| 0 (static) | Publish of a static pose from the input configuration |
| 1 and 2 (dynamic) | Publish of pose build from component inputs |
Below is the example pose_generator.yaml configuration file with all parameters open to the user. The comments are the main documentation of each parameters.
<aside> 💡
We provide multiple examples to show all the ways to provide the pose generated (4x4 matrix, euler angles only, quaternion etc). The main documentation of the various ways to provide the pose in our YAML files is 3D pose YAML node
</aside>
pose_generator_mode_0_translation_euler:
mode: 0
frequency: 1
pose:
# [optional, default=[0.0, 0.0, 0.0]] Translation in meters
translation: [1.0, 2.0, 3.0]
# [optional, default=[0.0, 0.0, 0.0]] Euler angles [Rx, Ry, Rz] (roll,
# pitch yaw)
euler: [0.0, 0.0, 90.0]
# [optional, default=false] Interprete the angles in degrees
angles_degrees: true
offset: [0.0, 0.0, 0.0]
ros:
namespace: /exwayz/pose_generator
output_odometry:
topic: /odometry
parent_frame_id: xyz_map
child_frame_id: pose_generator
invert: false
pose_generator_mode_0_translation_quaternion:
mode: 0
frequency: 1
pose:
translation: [1.0, 2.0, 3.0]
# [optional, default=[1.0, 0.0, 0.0, 0.0]] Orientation as quaternion
# interpreted in Hamiltonian convention (qw, qx, qy, qz)
quaternion: [1.0, 0.0, 0.0, 0.0]
offset: [0.0, 0.0, 0.0]
ros:
namespace: /exwayz/pose_generator
output_odometry:
topic: /odometry
parent_frame_id: xyz_map
child_frame_id: pose_generator
invert: false
pose_generator_mode_0_file:
mode: 0
frequency: 1
pose:
# [optional] path to 4x4 matrix file.
path: static_init.txt
offset: [0.0, 0.0, 0.0]
ros:
namespace: /exwayz/pose_generator
output_odometry:
topic: /odometry
parent_frame_id: xyz_map
child_frame_id: pose_generator
invert: false
# (rtmaps only) RTMaps parameters
pose_generator_mode_1:
mode: 1
# [optional, default=false] In mode 1 and 2, by default angles are expected
# in radians.
angles_degrees: false
modefrequency (rtmaps only)pose (mode 0 only)ros