#include <odom_estimation.h>
|
void | angleOverflowCorrect (double &a, double ref) |
| correct for angle overflow More...
|
|
void | decomposeTransform (const tf::StampedTransform &trans, double &x, double &y, double &z, double &Rx, double &Ry, double &Rz) |
|
void | decomposeTransform (const tf::Transform &trans, double &x, double &y, double &z, double &Rx, double &Ry, double &Rz) |
|
Definition at line 60 of file odom_estimation.h.
◆ OdomEstimation()
estimation::OdomEstimation::OdomEstimation |
( |
| ) |
|
◆ ~OdomEstimation()
estimation::OdomEstimation::~OdomEstimation |
( |
| ) |
|
|
virtual |
◆ addMeasurement() [1/2]
Add a sensor measurement to the measurement buffer
- Parameters
-
meas | the measurement to add |
Definition at line 322 of file odom_estimation.cpp.
◆ addMeasurement() [2/2]
void estimation::OdomEstimation::addMeasurement |
( |
const tf::StampedTransform & |
meas, |
|
|
const MatrixWrapper::SymmetricMatrix & |
covar |
|
) |
| |
Add a sensor measurement to the measurement buffer
- Parameters
-
meas | the measurement to add |
covar | the 6x6 covariance matrix of this measurement, as defined in the PoseWithCovariance message |
Definition at line 332 of file odom_estimation.cpp.
◆ angleOverflowCorrect()
void estimation::OdomEstimation::angleOverflowCorrect |
( |
double & |
a, |
|
|
double |
ref |
|
) |
| |
|
private |
◆ decomposeTransform() [1/2]
void estimation::OdomEstimation::decomposeTransform |
( |
const tf::StampedTransform & |
trans, |
|
|
double & |
x, |
|
|
double & |
y, |
|
|
double & |
z, |
|
|
double & |
Rx, |
|
|
double & |
Ry, |
|
|
double & |
Rz |
|
) |
| |
|
private |
◆ decomposeTransform() [2/2]
void estimation::OdomEstimation::decomposeTransform |
( |
const tf::Transform & |
trans, |
|
|
double & |
x, |
|
|
double & |
y, |
|
|
double & |
z, |
|
|
double & |
Rx, |
|
|
double & |
Ry, |
|
|
double & |
Rz |
|
) |
| |
|
private |
◆ getEstimate() [1/4]
void estimation::OdomEstimation::getEstimate |
( |
MatrixWrapper::ColumnVector & |
estimate | ) |
|
get the filter posterior
- Parameters
-
estimate | the filter posterior as a columnvector |
Definition at line 352 of file odom_estimation.cpp.
◆ getEstimate() [2/4]
get the filter posterior
- Parameters
-
time | the time of the filter posterior |
estimate | the filter posterior as a tf transform |
Definition at line 358 of file odom_estimation.cpp.
◆ getEstimate() [3/4]
get the filter posterior
- Parameters
-
time | the time of the filter posterior |
estimate | the filter posterior as a stamped tf transform |
Definition at line 370 of file odom_estimation.cpp.
◆ getEstimate() [4/4]
void estimation::OdomEstimation::getEstimate |
( |
geometry_msgs::PoseWithCovarianceStamped & |
estimate | ) |
|
get the filter posterior
- Parameters
-
estimate | the filter posterior as a pose with covariance |
Definition at line 380 of file odom_estimation.cpp.
◆ initialize()
initialize the extended Kalman filter
- Parameters
-
prior | the prior robot pose |
time | the initial time of the ekf |
Definition at line 129 of file odom_estimation.cpp.
◆ isInitialized()
bool estimation::OdomEstimation::isInitialized |
( |
| ) |
|
|
inline |
check if the filter is initialized returns true if the ekf has been initialized already
Definition at line 89 of file odom_estimation.h.
◆ setBaseFootprintFrame()
void estimation::OdomEstimation::setBaseFootprintFrame |
( |
const std::string & |
base_frame | ) |
|
set the base_footprint frame of the robot used by tf
- Parameters
-
base_frame | the desired base frame from which to transform when publishing the combined odometry frame (e.g., base_footprint) |
Definition at line 431 of file odom_estimation.cpp.
◆ setOutputFrame()
void estimation::OdomEstimation::setOutputFrame |
( |
const std::string & |
output_frame | ) |
|
set the output frame used by tf
- Parameters
-
output_frame | the desired output frame published on /tf (e.g., odom_combined) |
Definition at line 427 of file odom_estimation.cpp.
◆ update()
bool estimation::OdomEstimation::update |
( |
bool |
odom_active, |
|
|
bool |
imu_active, |
|
|
bool |
gps_active, |
|
|
bool |
vo_active, |
|
|
const ros::Time & |
filter_time, |
|
|
bool & |
diagnostics_res |
|
) |
| |
update the extended Kalman filter
- Parameters
-
odom_active | specifies if the odometry sensor is active or not |
imu_active | specifies if the imu sensor is active or not |
gps_active | specifies if the gps sensor is active or not |
vo_active | specifies if the vo sensor is active or not |
filter_time | update the ekf up to this time |
diagnostics_res | returns false if the diagnostics found that the sensor measurements are inconsistent returns true on successfull update |
Definition at line 159 of file odom_estimation.cpp.
◆ base_footprint_frame_
std::string estimation::OdomEstimation::base_footprint_frame_ |
|
private |
◆ diagnostics_imu_rot_rel_
double estimation::OdomEstimation::diagnostics_imu_rot_rel_ |
|
private |
◆ diagnostics_odom_rot_rel_
double estimation::OdomEstimation::diagnostics_odom_rot_rel_ |
|
private |
◆ filter_
◆ filter_estimate_old_
◆ filter_estimate_old_vec_
MatrixWrapper::ColumnVector estimation::OdomEstimation::filter_estimate_old_vec_ |
|
private |
◆ filter_initialized_
bool estimation::OdomEstimation::filter_initialized_ |
|
private |
◆ filter_time_old_
ros::Time estimation::OdomEstimation::filter_time_old_ |
|
private |
◆ gps_covariance_
MatrixWrapper::SymmetricMatrix estimation::OdomEstimation::gps_covariance_ |
|
private |
◆ gps_initialized_
bool estimation::OdomEstimation::gps_initialized_ |
|
private |
◆ gps_meas_
◆ gps_meas_model_
◆ gps_meas_old_
◆ gps_meas_pdf_
◆ imu_covariance_
MatrixWrapper::SymmetricMatrix estimation::OdomEstimation::imu_covariance_ |
|
private |
◆ imu_initialized_
bool estimation::OdomEstimation::imu_initialized_ |
|
private |
◆ imu_meas_
◆ imu_meas_model_
◆ imu_meas_old_
◆ imu_meas_pdf_
◆ odom_covariance_
MatrixWrapper::SymmetricMatrix estimation::OdomEstimation::odom_covariance_ |
|
private |
◆ odom_initialized_
bool estimation::OdomEstimation::odom_initialized_ |
|
private |
◆ odom_meas_
◆ odom_meas_model_
◆ odom_meas_old_
◆ odom_meas_pdf_
◆ output_frame_
std::string estimation::OdomEstimation::output_frame_ |
|
private |
◆ prior_
◆ sys_model_
◆ sys_pdf_
◆ transformer_
◆ vel_desi_
MatrixWrapper::ColumnVector estimation::OdomEstimation::vel_desi_ |
|
private |
◆ vo_covariance_
MatrixWrapper::SymmetricMatrix estimation::OdomEstimation::vo_covariance_ |
|
private |
◆ vo_initialized_
bool estimation::OdomEstimation::vo_initialized_ |
|
private |
◆ vo_meas_
◆ vo_meas_model_
◆ vo_meas_old_
◆ vo_meas_pdf_
The documentation for this class was generated from the following files: