IMU data publication plugin. More...

Public Member Functions | |
| const message_map | get_rx_handlers () |
| Return map with message rx handlers. | |
| IMUPubPlugin () | |
| void | initialize (UAS &uas_) |
| Plugin initializer. | |
Private Member Functions | |
| void | connection_cb (bool connected) |
| void | handle_attitude (const mavlink_message_t *msg, uint8_t sysid, uint8_t compid) |
| void | handle_attitude_quaternion (const mavlink_message_t *msg, uint8_t sysid, uint8_t compid) |
| void | handle_highres_imu (const mavlink_message_t *msg, uint8_t sysid, uint8_t compid) |
| void | handle_raw_imu (const mavlink_message_t *msg, uint8_t sysid, uint8_t compid) |
| void | handle_scaled_imu (const mavlink_message_t *msg, uint8_t sysid, uint8_t compid) |
| void | handle_scaled_pressure (const mavlink_message_t *msg, uint8_t sysid, uint8_t compid) |
| void | publish_imu_data (uint32_t time_boot_ms, Eigen::Quaterniond &orientation, Eigen::Vector3d &gyro) |
| fill and publish imu/data message | |
| void | publish_imu_data_raw (std_msgs::Header &header, Eigen::Vector3d &gyro, Eigen::Vector3d &accel) |
| fill and publish imu/data_raw message, store linear acceleration for imu/data | |
| void | publish_mag (std_msgs::Header &header, Eigen::Vector3d &mag_field) |
| void | setup_covariance (UAS::Covariance3d &cov, double stdev) |
Private Attributes | |
| UAS::Covariance3d | angular_velocity_cov |
| std::string | frame_id |
| bool | has_att_quat |
| bool | has_hr_imu |
| bool | has_scaled_imu |
| ros::NodeHandle | imu_nh |
| ros::Publisher | imu_pub |
| ros::Publisher | imu_raw_pub |
| Eigen::Vector3d | linear_accel_vec |
| UAS::Covariance3d | linear_acceleration_cov |
| ros::Publisher | magn_pub |
| UAS::Covariance3d | magnetic_cov |
| UAS::Covariance3d | orientation_cov |
| ros::Publisher | press_pub |
| ros::Publisher | temp_pub |
| UAS * | uas |
| UAS::Covariance3d | unk_orientation_cov |
IMU data publication plugin.
Definition at line 54 of file imu_pub.cpp.