142 void correctPitot(
const float staticPressure,
const float dynamicPressure);
152 Eigen::Matrix<float, 13, 1>
getX()
const;
162 void setX(
const Eigen::Matrix<float, 13, 1>& x);
188 Eigen::Matrix<float, 13, 1> x;
191 Eigen::Matrix<float, 12, 12> P;
194 const Eigen::Vector3f gravityNed{0.0f, 0.0f, -Constants::g};
197 Eigen::Matrix<float, 4, 6> H_gps;
198 Eigen::Matrix<float, 6, 4> H_gps_tr;
199 Eigen::Matrix<float, 4, 4> R_gps;
202 Eigen::Matrix3f R_acc;
203 Eigen::Matrix3f R_mag;
204 Eigen::Matrix<float, 6, 6> Q_quat;
205 Eigen::Matrix<float, 6, 6> Q_lin;
206 Eigen::Matrix<float, 6, 6> F_lin;
207 Eigen::Matrix<float, 6, 6> F_lin_tr;
208 Eigen::Matrix<float, 6, 6> F_quat;
209 Eigen::Matrix<float, 6, 6> F_quat_tr;
210 Eigen::Matrix<float, 6, 6> G_quat;
211 Eigen::Matrix<float, 6, 6> G_quat_tr;
void predictGyro(const Eigen::Vector3f &angularSpeed)
Prediction with gyroscope data.
void correctPitot(const float staticPressure, const float dynamicPressure)
Correction with pitot pressures.
Eigen::Matrix< float, 13, 1 > getX() const
void resetCovariance()
Resets the covariance matrix to the initial state based on the configuration.
void predictAcc(const Eigen::Vector3f &acceleration)
Prediction with accelerometer data.
static constexpr uint16_t IDX_BIAS
NASState getState() const
void correctAcc(const Eigen::Vector3f &acc)
Correction with accelerometer data.
void correctMag(const Eigen::Vector3f &mag)
Correction with magnetometer data.
void setState(const NASState &state)
static constexpr uint16_t IDX_POS
< Index of position elements in the state.
void correctGPS(const Eigen::Vector4f &gps)
Correction with gps data.
void setReferenceValues(const ReferenceValues &reference)
Changes the reference values.
void correctBaro(const float pressure)
Correction with barometer data.
static constexpr uint16_t IDX_VEL
Index of quaternions elements in the state.
ReferenceValues getReferenceValues()
Returns the current reference values.
static constexpr uint16_t IDX_QUAT
Index of bias elements in the state.
void setX(const Eigen::Matrix< float, 13, 1 > &x)
Driver for the VN100S IMU.
Structure to handle accelerometer data.
Structure to handle GPS data.
Structure to handle gyroscope data.
Structure to handle magnetometer data.
Reference values for the Apogee Detection Algorithm.