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.