vulp  2.2.2
observe_imu.cpp
Go to the documentation of this file.
1 // Copyright 2022 Stéphane Caron
2 // SPDX-License-Identifier: Apache-2.0
3 
5 
6 using palimpsest::Dictionary;
7 
8 namespace vulp::observation {
9 
10 void observe_imu(Dictionary& observation, const actuation::ImuData& imu_data) {
11  // Eigen quaternions are serialized as [w, x, y, z]
12  // See include/palimpsest/mpack/eigen.h in @palimpsest
13  observation("imu")("orientation") = imu_data.orientation_imu_in_ars;
14  observation("imu")("angular_velocity") = imu_data.angular_velocity_imu_in_imu;
15  observation("imu")("linear_acceleration") =
17 }
18 
19 } // namespace vulp::observation
State observation.
Definition: observe_imu.cpp:8
void observe_imu(Dictionary &observation, const actuation::ImuData &imu_data)
Definition: observe_imu.cpp:10
Data filtered from an onboard IMU such as the pi3hat's.
Definition: ImuData.h:12
Eigen::Quaterniond orientation_imu_in_ars
Orientation from the IMU frame to the attitude reference system (ARS) frame.
Definition: ImuData.h:20
Eigen::Vector3d linear_acceleration_imu_in_imu
Body linear acceleration of the IMU, in [m] / [s]².
Definition: ImuData.h:39
Eigen::Vector3d angular_velocity_imu_in_imu
Body angular velocity of the IMU frame in [rad] / [s].
Definition: ImuData.h:30