STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
FlightMessages.hpp
Go to the documentation of this file.
1#ifndef DAQ_FLIGHT_MESSAGES_HPP
2#define DAQ_FLIGHT_MESSAGES_HPP
3
4#include <cstdint>
5
7
8namespace comms {
9namespace messages {
10namespace flight {
11
12/**
13 * @brief Navigation state message
14 *
15 * Contains position, velocity, attitude, and acceleration in NED frame.
16 * This will be populated by the navigation subsystem.
17 */
19 CommsMessage<uint64_t, // (0) timestamp_ns - monotonic timestamp
20 double, // (1) position_ned_x - North position (m)
21 double, // (2) position_ned_y - East position (m)
22 double, // (3) position_ned_z - Down position (m, altitude)
23 double, // (4) velocity_ned_x - North velocity (m/s)
24 double, // (5) velocity_ned_y - East velocity (m/s)
25 double, // (6) velocity_ned_z - Down velocity (m/s)
26 double, // (7) quaternion_w - Attitude quaternion (w component)
27 double, // (8) quaternion_x - Attitude quaternion (x component)
28 double, // (9) quaternion_y - Attitude quaternion (y component)
29 double, // (10) quaternion_z - Attitude quaternion (z component)
30 double, // (11) acceleration_ned_x - North acceleration (m/s²)
31 double, // (12) acceleration_ned_y - East acceleration (m/s²)
32 double // (13) acceleration_ned_z - Down acceleration (m/s²)
33 >;
34
35/**
36 * @brief Attitude message
37 *
38 * Contains orientation in quaternion and Euler angles.
39 */
40using AttitudeMessage = CommsMessage<uint64_t, // (0) timestamp_ns - monotonic timestamp
41 double, // (1) quaternion_w
42 double, // (2) quaternion_x
43 double, // (3) quaternion_y
44 double, // (4) quaternion_z
45 double, // (5) roll_rad - Roll angle (radians)
46 double, // (6) pitch_rad - Pitch angle (radians)
47 double // (7) yaw_rad - Yaw angle (radians)
48 >;
49
50} // namespace flight
51} // namespace messages
53} // namespace comms
54
55#endif // DAQ_FLIGHT_MESSAGES_HPP
CommsMessage< uint64_t, double, double, double, double, double, double, double > AttitudeMessage
Attitude message.
CommsMessage< uint64_t, double, double, double, double, double, double, double, double, double, double, double, double, double > NavigationMessage
Navigation state message.
Central message header for all communication messages.
CommsMessage - Template-based message serialization.