@@ -9,97 +9,98 @@ package osi3;
99
1010//
1111// \brief This message is intended as an interface between a HAD (highly automated driving) function and the actuator management.
12+ //
1213// The HAD function can send either a desired future trajectory ore a desired future state.
1314// The message can be defined by a additional variable.
1415//
16+ // \note The coordinate system is defined as right-handed.
1517// All coordinates and orientations are relative to the global coordinate system.
1618// The reference point of the vehicle is the center of the 3D bounding box of the vehicle.
19+ // Units are m for positions, m/s for velocities, and m/s^2 for accelerations.
1720//
1821message MotionRequest
1922{
2023 // The interface version used by the sender (simulation environment).
2124 //
2225 optional InterfaceVersion version = 1 ;
2326
24- // The data timestamp of the simulation environment. Zero time is arbitrary
25- // but must be identical for all messages. Zero time does not need to
26- // coincide with the UNIX epoch. Recommended is the starting time point of
27- // the simulation.
28- //
29- // \note For sensor view data this timestamp coincides both with the
30- // notional simulation time the data applies to and the time it was sent
31- // (there is no inherent latency for sensor view data, as opposed to
32- // sensor data).
27+ // The data timestamp of the simulation environment. A reference to \c Timestamp message.
3328 //
3429 optional Timestamp timestamp = 2 ;
3530
36- //
37- // Define the option that is used to specify the motion request.
38- // This must be set. Additionally, the field corresponding to the specified option must be set.
39- //
40- optional OutputOptions output_option = 3 ;
41-
42- //
43- // Defines a desired state.
44- // If the output option is set to DESIRED_STATE, this must be provided.
45- //
46- optional DesiredState desired_state = 4 ;
47-
48- //
49- // Defines a desired trajectory.
50- // If the output option is set to DESIRED_TRAJECTORY, this must be set.
51- //
52- optional Trajectory desired_trajectory = 5 ;
53-
54- //
55- // Define different options for HAD function ouput.
56- // Each option is corresponds to a field in the message.
57- //
58- enum OutputOptions
59- {
60- DESIRED_STATE = 0 ;
61- TRAJECTORY = 1 ;
62- }
63-
64- //
65- // \brief The desired state is calculated by the HAD function as a result of the motion planning stack.
66- // The actuator management is supposed to reach the desired state at the specified time.
67- //
68- message DesiredState
69- {
70- //
71- // The timestamp indicates the point in time the state needs to be reached,
72- // given in global simulation time.
73- //
74- optional Timestamp timestamp = 1 ;
75-
76- // intended position to be reached in x, y, and z direction.
77- //
78- optional Vector3d position = 2 ;
79-
80- // intended orientation to be reached containing yaw, pitch and roll angle
81- //
82- optional Orientation3d orientation = 3 ;
83-
84- // intended velocity to be reached in x, y, and z direction
85- //
86- optional Vector3d velocity = 4 ;
87-
88- // intended acceleration to be reached in x, y, and z direction
89- //
90- optional Vector3d acceleration = 5 ;
91- }
92-
93- //
94- // \brief Defined trajectory desired by the HAD function. This trajectory is the result of the trajectory planning step
95- // in the HAD function. The task of the acutator management is to follow this trajectory as closely as possible.
96- // The timestamps inside the trajecotry must be defined in global simulation time.
97- // \note Trajectory is kept as a separate message for future extensions
98- //
99- message Trajectory
100- {
101- // consists of intended position (x, y, and z) and orientation (yaw, pitch and roll) of intended state to be reached
102- //
103- repeated StatePoint trajectory_point = 1 ;
104- }
31+ // Define the option that is used to specify the motion request.
32+ // This must be set. Additionally, the field corresponding to the specified option must be set.
33+ //
34+ optional OutputOptions output_option = 3 ;
35+
36+ // Defines a desired state.
37+ // If the output option is set to DESIRED_STATE, this field must be set.
38+ //
39+ optional DesiredState desired_state = 4 ;
40+
41+ // Defines a desired trajectory.
42+ // If the output option is set to DESIRED_TRAJECTORY, this field must be set.
43+ //
44+ optional Trajectory desired_trajectory = 5 ;
45+
46+ // Define different options for HAD function ouput.
47+ // Each option is corresponds to a field in the message.
48+ //
49+ enum OutputOptions
50+ {
51+ // Desired state calculated by the HAD function.
52+ //
53+ OUTPUT_OPTIONS_DESIRED_STATE = 0 ;
54+
55+ // Desired trajectory calculated by the HAD function.
56+ //
57+ OUTPUT_OPTIONS_TRAJECTORY = 1 ;
58+ }
59+
60+ // \brief The desired state is calculated by the HAD function as a result of the motion planning stack.
61+ //
62+ // The actuator management is supposed to reach the desired state at the specified time.
63+ //
64+ message DesiredState
65+ {
66+ // A reference to \c Timestamp message.
67+ //
68+ optional Timestamp timestamp = 1 ;
69+
70+ // intended position to be reached in x, y, and z direction.
71+ //
72+ optional Vector3d position = 2 ;
73+
74+ // intended orientation to be reached containing yaw, pitch and roll angle.
75+ //
76+ optional Orientation3d orientation = 3 ;
77+
78+ // intended velocity to be reached in x, y, and z direction.
79+ //
80+ // Unit: m/s
81+ //
82+ optional Vector3d velocity = 4 ;
83+
84+ // intended acceleration to be reached in x, y, and z direction.
85+ //
86+ // Unit: m/s^2
87+ //
88+ optional Vector3d acceleration = 5 ;
89+ }
90+
91+ // \brief Defined trajectory desired by the HAD function.
92+ //
93+ // This trajectory is the result of the trajectory planning step in the HAD function.
94+ // The task of the acutator management is to follow this trajectory as closely as possible.
95+ // The timestamps inside the trajecotry must be defined in global simulation time.
96+ //
97+ // \note Trajectory is kept as a separate message for future extensions.
98+ //
99+ message Trajectory
100+ {
101+ // consists of intended position (x, y, and z) and orientation (yaw, pitch and roll) of intended state to be reached.
102+ // A reference to \c StatePoint message.
103+ //
104+ repeated StatePoint trajectory_point = 1 ;
105+ }
105106}
0 commit comments