PX4 Firmware
PX4 Autopilot Software http://px4.io
|
#include <common.h>
Public Attributes | |
struct { | |
uint32_t tilt_align: 1 | |
0 - true if the filter tilt alignment is complete More... | |
uint32_t yaw_align: 1 | |
1 - true if the filter yaw alignment is complete More... | |
uint32_t gps: 1 | |
2 - true if GPS measurements are being fused More... | |
uint32_t opt_flow: 1 | |
3 - true if optical flow measurements are being fused More... | |
uint32_t mag_hdg: 1 | |
4 - true if a simple magnetic yaw heading is being fused More... | |
uint32_t mag_3D: 1 | |
5 - true if 3-axis magnetometer measurement are being fused More... | |
uint32_t mag_dec: 1 | |
6 - true if synthetic magnetic declination measurements are being fused More... | |
uint32_t in_air: 1 | |
7 - true when the vehicle is airborne More... | |
uint32_t wind: 1 | |
8 - true when wind velocity is being estimated More... | |
uint32_t baro_hgt: 1 | |
9 - true when baro height is being fused as a primary height reference More... | |
uint32_t rng_hgt: 1 | |
10 - true when range finder height is being fused as a primary height reference More... | |
uint32_t gps_hgt: 1 | |
11 - true when GPS height is being fused as a primary height reference More... | |
uint32_t ev_pos: 1 | |
12 - true when local position data from external vision is being fused More... | |
uint32_t ev_yaw: 1 | |
13 - true when yaw data from external vision measurements is being fused More... | |
uint32_t ev_hgt: 1 | |
14 - true when height data from external vision measurements is being fused More... | |
uint32_t fuse_beta: 1 | |
15 - true when synthetic sideslip measurements are being fused More... | |
uint32_t mag_field_disturbed: 1 | |
16 - true when the mag field does not match the expected strength More... | |
uint32_t fixed_wing: 1 | |
17 - true when the vehicle is operating as a fixed wing vehicle More... | |
uint32_t mag_fault: 1 | |
18 - true when the magnetometer has been declared faulty and is no longer being used More... | |
uint32_t fuse_aspd: 1 | |
19 - true when airspeed measurements are being fused More... | |
uint32_t gnd_effect: 1 | |
20 - true when protection from ground effect induced static pressure rise is active More... | |
uint32_t rng_stuck: 1 | |
21 - true when rng data wasn't ready for more than 10s and new rng values haven't changed enough More... | |
uint32_t gps_yaw: 1 | |
22 - true when yaw (not ground course) data from a GPS receiver is being fused More... | |
uint32_t mag_aligned_in_flight: 1 | |
23 - true when the in-flight mag field alignment has been completed More... | |
uint32_t ev_vel: 1 | |
24 - true when local earth frame velocity data from external vision measurements are being fused More... | |
uint32_t synthetic_mag_z: 1 | |
25 - true when we are using a synthesized measurement for the magnetometer Z component More... | |
} | flags |
uint32_t | value |
uint32_t estimator::filter_control_status_u::baro_hgt |
9 - true when baro height is being fused as a primary height reference
Definition at line 450 of file common.h.
Referenced by Ekf::collect_gps(), Ekf::controlFusionModes(), Ekf::controlHeightFusion(), Ekf::controlHeightSensorTimeouts(), Ekf::fuseVelPosHeight(), Ekf::get_ekf_soln_status(), Ekf::initialiseFilter(), Ekf::resetHeight(), Ekf::setControlBaroHeight(), Ekf::setControlEVHeight(), Ekf::setControlGPSHeight(), Ekf::setControlRangeHeight(), and TEST_F().
uint32_t estimator::filter_control_status_u::ev_hgt |
14 - true when height data from external vision measurements is being fused
Definition at line 455 of file common.h.
Referenced by Ekf::controlExternalVisionFusion(), Ekf::controlFusionModes(), Ekf::controlHeightSensorTimeouts(), Ekf::fuseVelPosHeight(), Ekf::get_ekf_soln_status(), Ekf::initialiseFilter(), Ekf::resetHeight(), Ekf::setControlBaroHeight(), Ekf::setControlEVHeight(), Ekf::setControlGPSHeight(), Ekf::setControlRangeHeight(), and TEST_F().
uint32_t estimator::filter_control_status_u::ev_pos |
12 - true when local position data from external vision is being fused
Definition at line 453 of file common.h.
Referenced by Ekf::checkRangeAidSuitability(), Ekf::checkYawAngleObservability(), Ekf::collect_gps(), Ekf::controlAuxVelFusion(), Ekf::controlExternalVisionFusion(), Ekf::controlGpsFusion(), Ekf::controlOpticalFlowFusion(), Ekf::controlVelPosFusion(), Ekf::get_ekf_ctrl_limits(), Ekf::get_ekf_gpos_accuracy(), Ekf::get_ekf_lpos_accuracy(), Ekf::get_ekf_soln_status(), Ekf::get_ekf_vel_accuracy(), Ekf::resetPosition(), Ekf::resetVelocity(), Ekf2::runPreFlightChecks(), EstimatorInterface::setOpticalFlowData(), Ekf::shouldInhibitMag(), TEST_F(), and Ekf::update_deadreckoning_status().
uint32_t estimator::filter_control_status_u::ev_vel |
24 - true when local earth frame velocity data from external vision measurements are being fused
Definition at line 465 of file common.h.
Referenced by Ekf::checkRangeAidSuitability(), Ekf::collect_gps(), Ekf::controlAuxVelFusion(), Ekf::controlExternalVisionFusion(), Ekf::controlGpsFusion(), Ekf::controlOpticalFlowFusion(), Ekf::controlVelPosFusion(), Ekf::get_ekf_ctrl_limits(), Ekf::get_ekf_soln_status(), Ekf::get_ekf_vel_accuracy(), Ekf::resetVelocity(), EstimatorInterface::setOpticalFlowData(), Ekf::shouldInhibitMag(), TEST_F(), and Ekf::update_deadreckoning_status().
uint32_t estimator::filter_control_status_u::ev_yaw |
13 - true when yaw data from external vision measurements is being fused
Definition at line 454 of file common.h.
Referenced by Ekf::canRunMagFusion(), Ekf::controlExternalVisionFusion(), Ekf::controlGpsFusion(), Ekf::fuseHeading(), Ekf::initialiseFilter(), Ekf::resetMagHeading(), and TEST_F().
uint32_t estimator::filter_control_status_u::fixed_wing |
17 - true when the vehicle is operating as a fixed wing vehicle
Definition at line 458 of file common.h.
Referenced by Ekf::canRealignYawUsingGps(), Ekf::controlGpsFusion(), and TEST_F().
struct { ... } estimator::filter_control_status_u::flags |
Referenced by Ekf::canRealignYawUsingGps(), Ekf::canRunMagFusion(), Ekf::canUse3DMagFusion(), Ekf::checkHaglYawResetReq(), Ekf::checkMagDeclRequired(), Ekf::checkMagFieldStrength(), Ekf::checkRangeAidSuitability(), Ekf::checkYawAngleObservability(), Ekf::collect_gps(), Ekf::controlAirDataFusion(), Ekf::controlAuxVelFusion(), Ekf::controlBetaFusion(), Ekf::controlDragFusion(), Ekf::controlExternalVisionFusion(), Ekf::controlFusionModes(), Ekf::controlGpsFusion(), Ekf::controlHeightFusion(), Ekf::controlHeightSensorTimeouts(), Ekf::controlMagFusion(), Ekf::controlOpticalFlowFusion(), Ekf::controlVelPosFusion(), Ekf::fixCovarianceErrors(), Ekf::fuseGpsAntYaw(), Ekf::fuseHeading(), Ekf::fuseMag(), Ekf::fuseSideslip(), Ekf::fuseVelPosHeight(), Ekf::get_ekf_ctrl_limits(), Ekf::get_ekf_gpos_accuracy(), Ekf::get_ekf_lpos_accuracy(), Ekf::get_ekf_soln_status(), Ekf::get_ekf_vel_accuracy(), Ekf::getMagDeclination(), Ekf::gps_is_good(), Ekf::initHagl(), Ekf::initialiseCovariance(), Ekf::initialiseFilter(), Ekf::isStrongMagneticDisturbance(), Ekf::predictCovariance(), Ekf::realignYawGPS(), Ekf::resetGpsAntYaw(), Ekf::resetHeight(), Ekf::resetMagHeading(), Ekf::resetPosition(), Ekf::resetVelocity(), Ekf2::Run(), Ekf::run3DMagAndDeclFusions(), Ekf::runInAirYawReset(), Ekf::runMagAndMagDeclFusions(), Ekf2::runPreFlightChecks(), Ekf::runTerrainEstimator(), Ekf::setControlBaroHeight(), Ekf::setControlEVHeight(), Ekf::setControlGPSHeight(), Ekf::setControlRangeHeight(), EstimatorInterface::setIMUData(), EstimatorInterface::setOpticalFlowData(), Ekf::shouldInhibitMag(), Ekf::startMag3DFusion(), Ekf::startMagHdgFusion(), Ekf::stopMag3DFusion(), Ekf::stopMagHdgFusion(), TEST_F(), Ekf::update_deadreckoning_status(), Ekf::updateRangeDataStuck(), Ekf::updateRangeDataValidity(), and Ekf::updateTerrainValidity().
uint32_t estimator::filter_control_status_u::fuse_aspd |
19 - true when airspeed measurements are being fused
Definition at line 460 of file common.h.
Referenced by Ekf::controlAirDataFusion(), Ekf::controlVelPosFusion(), and Ekf::get_ekf_soln_status().
uint32_t estimator::filter_control_status_u::fuse_beta |
15 - true when synthetic sideslip measurements are being fused
Definition at line 456 of file common.h.
Referenced by Ekf::controlBetaFusion(), Ekf::controlVelPosFusion(), Ekf::get_ekf_soln_status(), and TEST_F().
uint32_t estimator::filter_control_status_u::gnd_effect |
20 - true when protection from ground effect induced static pressure rise is active
Definition at line 461 of file common.h.
Referenced by Ekf::controlHeightFusion(), Ekf::fuseVelPosHeight(), and TEST_F().
uint32_t estimator::filter_control_status_u::gps |
2 - true if GPS measurements are being fused
Definition at line 443 of file common.h.
Referenced by Ekf::checkMagDeclRequired(), Ekf::checkRangeAidSuitability(), Ekf::checkYawAngleObservability(), Ekf::collect_gps(), Ekf::controlAuxVelFusion(), Ekf::controlExternalVisionFusion(), Ekf::controlFusionModes(), Ekf::controlGpsFusion(), Ekf::controlOpticalFlowFusion(), Ekf::controlVelPosFusion(), Ekf::get_ekf_ctrl_limits(), Ekf::get_ekf_gpos_accuracy(), Ekf::get_ekf_lpos_accuracy(), Ekf::get_ekf_soln_status(), Ekf::get_ekf_vel_accuracy(), Ekf::realignYawGPS(), Ekf::resetHeight(), Ekf::resetPosition(), Ekf::resetVelocity(), Ekf2::runPreFlightChecks(), EstimatorInterface::setOpticalFlowData(), Ekf::shouldInhibitMag(), TEST_F(), and Ekf::update_deadreckoning_status().
uint32_t estimator::filter_control_status_u::gps_hgt |
11 - true when GPS height is being fused as a primary height reference
Definition at line 452 of file common.h.
Referenced by Ekf::collect_gps(), Ekf::controlFusionModes(), Ekf::controlHeightFusion(), Ekf::controlHeightSensorTimeouts(), Ekf::fuseVelPosHeight(), Ekf::get_ekf_soln_status(), Ekf::initialiseCovariance(), Ekf::initialiseFilter(), Ekf::resetHeight(), Ekf::setControlBaroHeight(), Ekf::setControlEVHeight(), Ekf::setControlGPSHeight(), Ekf::setControlRangeHeight(), and TEST_F().
uint32_t estimator::filter_control_status_u::gps_yaw |
22 - true when yaw (not ground course) data from a GPS receiver is being fused
Definition at line 463 of file common.h.
Referenced by Ekf::canRunMagFusion(), Ekf::controlGpsFusion(), and TEST_F().
uint32_t estimator::filter_control_status_u::in_air |
7 - true when the vehicle is airborne
Definition at line 448 of file common.h.
Referenced by Ekf::checkRangeAidSuitability(), Ekf::controlAirDataFusion(), Ekf::controlBetaFusion(), Ekf::controlDragFusion(), Ekf::controlFusionModes(), Ekf::controlGpsFusion(), Ekf::controlHeightFusion(), Ekf::controlMagFusion(), Ekf::controlOpticalFlowFusion(), Ekf::controlVelPosFusion(), Ekf::fuseGpsAntYaw(), Ekf::fuseHeading(), Ekf::fuseSideslip(), Ekf::gps_is_good(), Ekf::initHagl(), Ekf::resetPosition(), Ekf::runTerrainEstimator(), EstimatorInterface::setIMUData(), EstimatorInterface::setOpticalFlowData(), TEST_F(), Ekf::updateRangeDataStuck(), and Ekf::updateRangeDataValidity().
uint32_t estimator::filter_control_status_u::mag_3D |
5 - true if 3-axis magnetometer measurement are being fused
Definition at line 446 of file common.h.
Referenced by Ekf::checkMagDeclRequired(), Ekf::fixCovarianceErrors(), Ekf::fuseHeading(), Ekf::fuseSideslip(), Ekf::predictCovariance(), Ekf::realignYawGPS(), Ekf::resetMagHeading(), Ekf2::Run(), Ekf::runMagAndMagDeclFusions(), Ekf::startMag3DFusion(), Ekf::stopMag3DFusion(), and TEST_F().
uint32_t estimator::filter_control_status_u::mag_aligned_in_flight |
23 - true when the in-flight mag field alignment has been completed
Definition at line 464 of file common.h.
Referenced by Ekf::canUse3DMagFusion(), Ekf::checkHaglYawResetReq(), Ekf::controlGpsFusion(), Ekf::controlMagFusion(), Ekf::getMagDeclination(), Ekf::realignYawGPS(), Ekf::runInAirYawReset(), and TEST_F().
uint32_t estimator::filter_control_status_u::mag_dec |
6 - true if synthetic magnetic declination measurements are being fused
Definition at line 447 of file common.h.
Referenced by Ekf::checkMagDeclRequired(), Ekf::controlExternalVisionFusion(), Ekf::controlGpsFusion(), Ekf::run3DMagAndDeclFusions(), and TEST_F().
uint32_t estimator::filter_control_status_u::mag_fault |
18 - true when the magnetometer has been declared faulty and is no longer being used
Definition at line 459 of file common.h.
Referenced by Ekf::controlMagFusion(), Ekf::realignYawGPS(), and TEST_F().
uint32_t estimator::filter_control_status_u::mag_field_disturbed |
16 - true when the mag field does not match the expected strength
Definition at line 457 of file common.h.
Referenced by Ekf::checkMagFieldStrength(), Ekf::isStrongMagneticDisturbance(), Ekf2::Run(), and TEST_F().
uint32_t estimator::filter_control_status_u::mag_hdg |
4 - true if a simple magnetic yaw heading is being fused
Definition at line 445 of file common.h.
Referenced by Ekf::fuseHeading(), Ekf::runMagAndMagDeclFusions(), Ekf::startMagHdgFusion(), Ekf::stopMagHdgFusion(), and TEST_F().
uint32_t estimator::filter_control_status_u::opt_flow |
3 - true if optical flow measurements are being fused
Definition at line 444 of file common.h.
Referenced by Ekf::checkRangeAidSuitability(), Ekf::collect_gps(), Ekf::controlAuxVelFusion(), Ekf::controlFusionModes(), Ekf::controlGpsFusion(), Ekf::controlOpticalFlowFusion(), Ekf::controlVelPosFusion(), Ekf::get_ekf_ctrl_limits(), Ekf::get_ekf_soln_status(), Ekf::get_ekf_vel_accuracy(), Ekf::resetPosition(), Ekf::resetVelocity(), Ekf2::runPreFlightChecks(), TEST_F(), Ekf::update_deadreckoning_status(), and Ekf::updateTerrainValidity().
uint32_t estimator::filter_control_status_u::rng_hgt |
10 - true when range finder height is being fused as a primary height reference
Definition at line 451 of file common.h.
Referenced by Ekf::collect_gps(), Ekf::controlFusionModes(), Ekf::controlHeightFusion(), Ekf::controlHeightSensorTimeouts(), Ekf::fuseVelPosHeight(), Ekf::get_ekf_ctrl_limits(), Ekf::get_ekf_soln_status(), Ekf::initialiseCovariance(), Ekf::initialiseFilter(), Ekf::resetHeight(), Ekf::setControlBaroHeight(), Ekf::setControlEVHeight(), Ekf::setControlGPSHeight(), Ekf::setControlRangeHeight(), and TEST_F().
uint32_t estimator::filter_control_status_u::rng_stuck |
21 - true when rng data wasn't ready for more than 10s and new rng values haven't changed enough
Definition at line 462 of file common.h.
Referenced by TEST_F(), Ekf::updateRangeDataStuck(), and Ekf::updateRangeDataValidity().
uint32_t estimator::filter_control_status_u::synthetic_mag_z |
25 - true when we are using a synthesized measurement for the magnetometer Z component
Definition at line 466 of file common.h.
Referenced by Ekf::controlFusionModes(), Ekf::fuseMag(), and TEST_F().
uint32_t estimator::filter_control_status_u::tilt_align |
0 - true if the filter tilt alignment is complete
Definition at line 441 of file common.h.
Referenced by Ekf::controlExternalVisionFusion(), Ekf::controlFusionModes(), Ekf::controlGpsFusion(), Ekf::controlOpticalFlowFusion(), Ekf::controlVelPosFusion(), Ekf::fuseVelPosHeight(), Ekf::get_ekf_soln_status(), Ekf2::Run(), and TEST_F().
uint32_t estimator::filter_control_status_u::value |
Definition at line 468 of file common.h.
Referenced by Ekf::controlFusionModes(), Ekf::reset(), Ekf2::Run(), and TEST_F().
uint32_t estimator::filter_control_status_u::wind |
8 - true when wind velocity is being estimated
Definition at line 449 of file common.h.
Referenced by Ekf::controlAirDataFusion(), Ekf::controlBetaFusion(), Ekf::controlDragFusion(), Ekf::fixCovarianceErrors(), Ekf::fuseGpsAntYaw(), Ekf::fuseHeading(), Ekf::predictCovariance(), Ekf::realignYawGPS(), TEST_F(), and Ekf::update_deadreckoning_status().
uint32_t estimator::filter_control_status_u::yaw_align |
1 - true if the filter yaw alignment is complete
Definition at line 442 of file common.h.
Referenced by Ekf::controlExternalVisionFusion(), Ekf::controlFusionModes(), Ekf::controlGpsFusion(), Ekf::controlMagFusion(), Ekf::controlOpticalFlowFusion(), Ekf::get_ekf_soln_status(), Ekf::initialiseFilter(), Ekf::realignYawGPS(), Ekf::resetGpsAntYaw(), and TEST_F().