Data payload format for data of type SENSOR_FORMAT_IMU
Synopsis:
#include <sensor/sensor_api.h>
typedef struct sensor_imu_format_t {
int32_t orientation[3];
uint32_t orientation_time_offset;
int32_t acceleration[3];
double rate_of_turn[3];
double magnetic_field[3];
uint32_t time_offset;
uint32_t time_accuracy;
uint16_t ndop;
uint16_t edop;
uint32_t heading_accuracy;
} sensor_imu_format_t;
Data:
- int32_t orientation[3]
- Orientation is the three Euler angles, in hundreds of degrees, about x (roll), y (pitch), and z (yaw) axes; the coordinate system is ENU.
MAX_INT32 indicates value is currently unavailable.
- uint32_t orientation_time_offset
- Offset from the timestamp in sensor_buffer_t to apply for the orientation field only.
Time is provided in microseconds and may be zero if orientation is in sync with IMU data.
- int32_t acceleration[3]
- Acceleration in the x, y, and z planes in mm/s^2.
- double rate_of_turn[3]
- Rate of turn about the x, y, and z axes in radians per second.
- double magnetic_field[3]
- Magnetic field data in arbitrary units.
- uint32_t time_offset
- Offset from the timestamp in sensor_buffer_t to apply for this data point.
- uint32_t time_accuracy
- Time accuracy estimate in ns.
- uint16_t ndop
- Northing Degree of Precision.
- uint16_t edop
- Easting Degree of Precision.
- uint32_t heading_accuracy
- Heading accuracy estimate, in degrees.
Library:
libsensor
Description:
The payload in data of sensor_buffer_t is an array of these data points.