#include <imu_filter_ros.h>
Public Member Functions | |
| ImuFilterRos (ros::NodeHandle nh, ros::NodeHandle nh_private) | |
| void | reset () |
| Reset the filter to the initial state. More... | |
| virtual | ~ImuFilterRos () |
Private Types | |
| typedef imu_filter_madgwick::ImuFilterMadgwickConfig | FilterConfig |
| typedef dynamic_reconfigure::Server< FilterConfig > | FilterConfigServer |
| typedef sensor_msgs::Imu | ImuMsg |
| typedef message_filters::Subscriber< ImuMsg > | ImuSubscriber |
| typedef sensor_msgs::MagneticField | MagMsg |
| typedef message_filters::Subscriber< MagMsg > | MagSubscriber |
| typedef message_filters::Synchronizer< SyncPolicy > | Synchronizer |
| typedef message_filters::sync_policies::ApproximateTime< ImuMsg, MagMsg > | SyncPolicy |
Private Member Functions | |
| void | applyYawOffset (double &q0, double &q1, double &q2, double &q3) |
| Applies yaw offset quaternion (yaw offset - declination) to the orientation quaternion. Alters the quaternion if there is a yaw offset. More... | |
| void | checkTimeJump () |
| Check whether ROS time has jumped back. If so, reset the filter. More... | |
| void | checkTopicsTimerCallback (const ros::TimerEvent &) |
| void | imuCallback (const ImuMsg::ConstPtr &imu_msg_raw) |
| void | imuMagCallback (const ImuMsg::ConstPtr &imu_msg_raw, const MagMsg::ConstPtr &mav_msg) |
| void | publishFilteredMsg (const ImuMsg::ConstPtr &imu_msg_raw) |
| void | publishRawMsg (const ros::Time &t, float roll, float pitch, float yaw) |
| void | publishTransform (const ImuMsg::ConstPtr &imu_msg_raw) |
| void | reconfigCallback (FilterConfig &config, uint32_t level) |
Private Attributes | |
| ros::Timer | check_topics_timer_ |
| boost::shared_ptr< FilterConfigServer > | config_server_ |
| double | constant_dt_ |
| ImuFilter | filter_ |
| std::string | fixed_frame_ |
| std::string | imu_frame_ |
| ros::Publisher | imu_publisher_ |
| boost::shared_ptr< ImuSubscriber > | imu_subscriber_ |
| bool | initialized_ |
| ros::Time | last_ros_time_ |
| ros::Time | last_time_ |
| geometry_msgs::Vector3 | mag_bias_ |
| boost::shared_ptr< MagSubscriber > | mag_subscriber_ |
| boost::mutex | mutex_ |
| ros::NodeHandle | nh_ |
| ros::NodeHandle | nh_private_ |
| double | orientation_variance_ |
| bool | publish_debug_topics_ |
| bool | publish_tf_ |
| bool | remove_gravity_vector_ |
| bool | reverse_tf_ |
| ros::Publisher | rpy_filtered_debug_publisher_ |
| ros::Publisher | rpy_raw_debug_publisher_ |
| bool | stateless_ |
| boost::shared_ptr< Synchronizer > | sync_ |
| tf2_ros::TransformBroadcaster | tf_broadcaster_ |
| ros::Duration | time_jump_threshold_ |
| bool | use_mag_ |
| WorldFrame::WorldFrame | world_frame_ |
| double | yaw_offset_total_ |
| tf2::Quaternion | yaw_offsets_ |
Definition at line 42 of file imu_filter_ros.h.
|
private |
Definition at line 53 of file imu_filter_ros.h.
|
private |
Definition at line 54 of file imu_filter_ros.h.
|
private |
Definition at line 44 of file imu_filter_ros.h.
|
private |
Definition at line 50 of file imu_filter_ros.h.
|
private |
Definition at line 45 of file imu_filter_ros.h.
|
private |
Definition at line 51 of file imu_filter_ros.h.
|
private |
Definition at line 49 of file imu_filter_ros.h.
|
private |
Definition at line 48 of file imu_filter_ros.h.
| ImuFilterRos::ImuFilterRos | ( | ros::NodeHandle | nh, |
| ros::NodeHandle | nh_private | ||
| ) |
Definition at line 31 of file imu_filter_ros.cpp.
|
virtual |
Definition at line 152 of file imu_filter_ros.cpp.
|
private |
Applies yaw offset quaternion (yaw offset - declination) to the orientation quaternion. Alters the quaternion if there is a yaw offset.
| q0 | quaternion x component |
| q1 | quaternion y component |
| q2 | quaternion z component |
| q3 | quaternion w component |
Definition at line 350 of file imu_filter_ros.cpp.
|
private |
Check whether ROS time has jumped back. If so, reset the filter.
Definition at line 466 of file imu_filter_ros.cpp.
|
private |
Definition at line 444 of file imu_filter_ros.cpp.
|
private |
Definition at line 160 of file imu_filter_ros.cpp.
|
private |
Definition at line 221 of file imu_filter_ros.cpp.
|
private |
Definition at line 365 of file imu_filter_ros.cpp.
|
private |
Definition at line 413 of file imu_filter_ros.cpp.
|
private |
Definition at line 316 of file imu_filter_ros.cpp.
|
private |
Definition at line 425 of file imu_filter_ros.cpp.
| void ImuFilterRos::reset | ( | ) |
Reset the filter to the initial state.
Definition at line 457 of file imu_filter_ros.cpp.
|
private |
Definition at line 81 of file imu_filter_ros.h.
|
private |
Definition at line 80 of file imu_filter_ros.h.
|
private |
Definition at line 91 of file imu_filter_ros.h.
|
private |
Definition at line 105 of file imu_filter_ros.h.
|
private |
Definition at line 89 of file imu_filter_ros.h.
|
private |
Definition at line 90 of file imu_filter_ros.h.
|
private |
Definition at line 77 of file imu_filter_ros.h.
|
private |
Definition at line 70 of file imu_filter_ros.h.
|
private |
Definition at line 100 of file imu_filter_ros.h.
|
private |
Definition at line 102 of file imu_filter_ros.h.
|
private |
Definition at line 101 of file imu_filter_ros.h.
|
private |
Definition at line 94 of file imu_filter_ros.h.
|
private |
Definition at line 71 of file imu_filter_ros.h.
|
private |
Definition at line 99 of file imu_filter_ros.h.
|
private |
Definition at line 66 of file imu_filter_ros.h.
|
private |
Definition at line 67 of file imu_filter_ros.h.
|
private |
Definition at line 95 of file imu_filter_ros.h.
|
private |
Definition at line 92 of file imu_filter_ros.h.
|
private |
Definition at line 87 of file imu_filter_ros.h.
|
private |
Definition at line 93 of file imu_filter_ros.h.
|
private |
Definition at line 88 of file imu_filter_ros.h.
|
private |
Definition at line 75 of file imu_filter_ros.h.
|
private |
Definition at line 76 of file imu_filter_ros.h.
|
private |
Definition at line 86 of file imu_filter_ros.h.
|
private |
Definition at line 72 of file imu_filter_ros.h.
|
private |
Definition at line 78 of file imu_filter_ros.h.
|
private |
Definition at line 96 of file imu_filter_ros.h.
|
private |
Definition at line 85 of file imu_filter_ros.h.
|
private |
Definition at line 84 of file imu_filter_ros.h.
|
private |
Definition at line 68 of file imu_filter_ros.h.
|
private |
Definition at line 73 of file imu_filter_ros.h.