Class KalmanDriftEstimator
java.lang.Object
com.irurueta.navigation.inertial.calibration.DriftEstimator
com.irurueta.navigation.inertial.calibration.KalmanDriftEstimator
Estimates accumulated drift in body orientation, position and velocity per
unit of time using an INS Kalman filtered solution.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig
Configuration parameters determining initial system noise covariance matrix.private com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig
Configuration parameters for INS Loosely Coupled Kalman filter obtained through calibration.private com.irurueta.navigation.inertial.INSLooselyCoupledKalmanFilteredEstimator
Internal INS loosely coupled Kalman filtered estimator to estimate accumulated body position, velocity and orientation.private com.irurueta.navigation.inertial.INSLooselyCoupledKalmanState
Current Kalman filter state.Fields inherited from class com.irurueta.navigation.inertial.calibration.DriftEstimator
currentC, currentOrientationDriftRadians, currentPositionDrift, currentPositionDriftMeters, currentVelocityDrift, currentVelocityDriftMetersPerSecond, DEFAULT_TIME_INTERVAL_SECONDS, fixedKinematics, fixer, fixKinematics, frame, invRefQ, listener, numberOfProcessedSamples, q, referenceFrame, refQ, running, timeInterval
-
Constructor Summary
ConstructorsConstructorDescriptionConstructor.KalmanDriftEstimator
(com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, com.irurueta.algebra.Matrix bg, com.irurueta.algebra.Matrix mg, com.irurueta.algebra.Matrix gg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, com.irurueta.algebra.Matrix bg, com.irurueta.algebra.Matrix mg, com.irurueta.algebra.Matrix gg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, com.irurueta.algebra.Matrix bg, com.irurueta.algebra.Matrix mg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, com.irurueta.algebra.Matrix bg, com.irurueta.algebra.Matrix mg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.ECEFFrame referenceFrame, com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, com.irurueta.algebra.Matrix bg, com.irurueta.algebra.Matrix mg, com.irurueta.algebra.Matrix gg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.ECEFFrame referenceFrame, com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, com.irurueta.algebra.Matrix bg, com.irurueta.algebra.Matrix mg, com.irurueta.algebra.Matrix gg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.ECEFFrame referenceFrame, com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, com.irurueta.algebra.Matrix bg, com.irurueta.algebra.Matrix mg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.ECEFFrame referenceFrame, com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, com.irurueta.algebra.Matrix bg, com.irurueta.algebra.Matrix mg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.ECEFFrame referenceFrame, com.irurueta.navigation.inertial.calibration.AccelerationTriad ba, com.irurueta.algebra.Matrix ma, com.irurueta.navigation.inertial.calibration.AngularSpeedTriad bg, com.irurueta.algebra.Matrix mg, com.irurueta.algebra.Matrix gg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.ECEFFrame referenceFrame, com.irurueta.navigation.inertial.calibration.AccelerationTriad ba, com.irurueta.algebra.Matrix ma, com.irurueta.navigation.inertial.calibration.AngularSpeedTriad bg, com.irurueta.algebra.Matrix mg, com.irurueta.algebra.Matrix gg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.ECEFFrame referenceFrame, com.irurueta.navigation.inertial.calibration.AccelerationTriad ba, com.irurueta.algebra.Matrix ma, com.irurueta.navigation.inertial.calibration.AngularSpeedTriad bg, com.irurueta.algebra.Matrix mg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.ECEFFrame referenceFrame, com.irurueta.navigation.inertial.calibration.AccelerationTriad ba, com.irurueta.algebra.Matrix ma, com.irurueta.navigation.inertial.calibration.AngularSpeedTriad bg, com.irurueta.algebra.Matrix mg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.ECEFFrame referenceFrame, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.ECEFFrame referenceFrame, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.NEDFrame referenceFrame, com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, com.irurueta.algebra.Matrix bg, com.irurueta.algebra.Matrix mg, com.irurueta.algebra.Matrix gg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.NEDFrame referenceFrame, com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, com.irurueta.algebra.Matrix bg, com.irurueta.algebra.Matrix mg, com.irurueta.algebra.Matrix gg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.NEDFrame referenceFrame, com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, com.irurueta.algebra.Matrix bg, com.irurueta.algebra.Matrix mg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.NEDFrame referenceFrame, com.irurueta.algebra.Matrix ba, com.irurueta.algebra.Matrix ma, com.irurueta.algebra.Matrix bg, com.irurueta.algebra.Matrix mg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.NEDFrame referenceFrame, com.irurueta.navigation.inertial.calibration.AccelerationTriad ba, com.irurueta.algebra.Matrix ma, com.irurueta.navigation.inertial.calibration.AngularSpeedTriad bg, com.irurueta.algebra.Matrix mg, com.irurueta.algebra.Matrix gg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.NEDFrame referenceFrame, com.irurueta.navigation.inertial.calibration.AccelerationTriad ba, com.irurueta.algebra.Matrix ma, com.irurueta.navigation.inertial.calibration.AngularSpeedTriad bg, com.irurueta.algebra.Matrix mg, com.irurueta.algebra.Matrix gg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.NEDFrame referenceFrame, com.irurueta.navigation.inertial.calibration.AccelerationTriad ba, com.irurueta.algebra.Matrix ma, com.irurueta.navigation.inertial.calibration.AngularSpeedTriad bg, com.irurueta.algebra.Matrix mg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.NEDFrame referenceFrame, com.irurueta.navigation.inertial.calibration.AccelerationTriad ba, com.irurueta.algebra.Matrix ma, com.irurueta.navigation.inertial.calibration.AngularSpeedTriad bg, com.irurueta.algebra.Matrix mg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.NEDFrame referenceFrame, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.frames.NEDFrame referenceFrame, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.inertial.calibration.AccelerationTriad ba, com.irurueta.algebra.Matrix ma, com.irurueta.navigation.inertial.calibration.AngularSpeedTriad bg, com.irurueta.algebra.Matrix mg, com.irurueta.algebra.Matrix gg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.inertial.calibration.AccelerationTriad ba, com.irurueta.algebra.Matrix ma, com.irurueta.navigation.inertial.calibration.AngularSpeedTriad bg, com.irurueta.algebra.Matrix mg, com.irurueta.algebra.Matrix gg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.inertial.calibration.AccelerationTriad ba, com.irurueta.algebra.Matrix ma, com.irurueta.navigation.inertial.calibration.AngularSpeedTriad bg, com.irurueta.algebra.Matrix mg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.inertial.calibration.AccelerationTriad ba, com.irurueta.algebra.Matrix ma, com.irurueta.navigation.inertial.calibration.AngularSpeedTriad bg, com.irurueta.algebra.Matrix mg, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(DriftEstimatorListener listener) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Constructor.KalmanDriftEstimator
(com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig, com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig, DriftEstimatorListener listener) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addBodyKinematics
(com.irurueta.navigation.inertial.BodyKinematics kinematics) Adds a sample of measured body kinematics (accelerometer and gyroscope readings) obtained from an IMU, fixes their values and uses fixed values to estimate current drift and their average values.protected void
Computes current orientation drift.protected void
Computes current position drift.protected void
Computes current velocity drift.com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig
Gets configuration parameters determining initial system noise covariance matrix.com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig
Gets configuration parameters for INS Loosely Coupled Kalman filter obtained through calibration.com.irurueta.navigation.inertial.INSLooselyCoupledKalmanState
getState()
Gets state of internal Kalman filter containing current body position, orientation and velocity after last provided body kinematics measurement.boolean
getState
(com.irurueta.navigation.inertial.INSLooselyCoupledKalmanState result) Gets state of internal Kalman filter containing current body position, orientation and velocity after last provided body kinematics measurement.private void
Initializes internal frame and Kalman estimator when the first body kinematics measurement is provided.boolean
isReady()
Indicates if estimator is ready to start processing additional kinematics measurements.void
reset()
Resets this estimator to its initial state.void
setInitConfig
(com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfig) Sets configuration parameters determining initial system noise covariance matrix.void
setKalmanConfig
(com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfig) Sets configuration parameters for INS Loosely Coupled Kalman filter obtained through calibration.Methods inherited from class com.irurueta.navigation.inertial.calibration.DriftEstimator
getAccelerationBias, getAccelerationBias, getAccelerationBiasArray, getAccelerationBiasArray, getAccelerationBiasAsTriad, getAccelerationBiasAsTriad, getAccelerationBiasX, getAccelerationBiasXAsAcceleration, getAccelerationBiasXAsAcceleration, getAccelerationBiasY, getAccelerationBiasYAsAcceleration, getAccelerationBiasYAsAcceleration, getAccelerationBiasZ, getAccelerationBiasZAsAcceleration, getAccelerationBiasZAsAcceleration, getAccelerationCrossCouplingErrors, getAccelerationCrossCouplingErrors, getAccelerationMxy, getAccelerationMxz, getAccelerationMyx, getAccelerationMyz, getAccelerationMzx, getAccelerationMzy, getAccelerationSx, getAccelerationSy, getAccelerationSz, getAngularSpeedBias, getAngularSpeedBias, getAngularSpeedBiasArray, getAngularSpeedBiasArray, getAngularSpeedBiasAsTriad, getAngularSpeedBiasAsTriad, getAngularSpeedBiasX, getAngularSpeedBiasXAsAngularSpeed, getAngularSpeedBiasXAsAngularSpeed, getAngularSpeedBiasY, getAngularSpeedBiasYAsAngularSpeed, getAngularSpeedBiasYAsAngularSpeed, getAngularSpeedBiasZ, getAngularSpeedBiasZAsAngularSpeed, getAngularSpeedBiasZAsAngularSpeed, getAngularSpeedCrossCouplingErrors, getAngularSpeedCrossCouplingErrors, getAngularSpeedGDependantCrossBias, getAngularSpeedGDependantCrossBias, getAngularSpeedMxy, getAngularSpeedMxz, getAngularSpeedMyx, getAngularSpeedMyz, getAngularSpeedMzx, getAngularSpeedMzy, getAngularSpeedSx, getAngularSpeedSy, getAngularSpeedSz, getCurrentOrientationDrift, getCurrentOrientationDrift, getCurrentOrientationDriftAngle, getCurrentOrientationDriftAngle, getCurrentOrientationDriftPerTimeUnit, getCurrentOrientationDriftPerTimeUnitAsAngularSpeed, getCurrentOrientationDriftPerTimeUnitAsAngularSpeed, getCurrentOrientationDriftRadians, getCurrentPositionDrift, getCurrentPositionDrift, getCurrentPositionDriftNorm, getCurrentPositionDriftNorm, getCurrentPositionDriftNormMeters, getCurrentPositionDriftPerTimeUnit, getCurrentPositionDriftPerTimeUnitAsSpeed, getCurrentPositionDriftPerTimeUnitAsSpeed, getCurrentVelocityDrift, getCurrentVelocityDrift, getCurrentVelocityDriftNorm, getCurrentVelocityDriftNorm, getCurrentVelocityDriftNormMetersPerSecond, getCurrentVelocityDriftPerTimeUnit, getCurrentVelocityDriftPerTimeUnitAsAcceleration, getCurrentVelocityDriftPerTimeUnitAsAcceleration, getElapsedTime, getElapsedTime, getElapsedTimeSeconds, getListener, getNumberOfProcessedSamples, getReferenceEcefCoordinateTransformation, getReferenceEcefCoordinateTransformation, getReferenceEcefPosition, getReferenceEcefPosition, getReferenceEcefVelocity, getReferenceEcefVelocity, getReferenceFrame, getReferenceNedCoordinateTransformation, getReferenceNedCoordinateTransformation, getReferenceNedFrame, getReferenceNedFrame, getReferenceNedPosition, getReferenceNedPosition, getReferenceNedVelocity, getReferenceNedVelocity, getTimeInterval, getTimeIntervalAsTime, getTimeIntervalAsTime, isFixKinematicsEnabled, isRunning, setAccelerationBias, setAccelerationBias, setAccelerationBias, setAccelerationBias, setAccelerationBias, setAccelerationBiasX, setAccelerationBiasX, setAccelerationBiasY, setAccelerationBiasY, setAccelerationBiasZ, setAccelerationBiasZ, setAccelerationCrossCouplingErrors, setAccelerationCrossCouplingErrors, setAccelerationMxy, setAccelerationMxz, setAccelerationMyx, setAccelerationMyz, setAccelerationMzx, setAccelerationMzy, setAccelerationScalingFactors, setAccelerationScalingFactorsAndCrossCouplingErrors, setAccelerationSx, setAccelerationSy, setAccelerationSz, setAngularSpeedBias, setAngularSpeedBias, setAngularSpeedBias, setAngularSpeedBias, setAngularSpeedBias, setAngularSpeedBiasX, setAngularSpeedBiasX, setAngularSpeedBiasY, setAngularSpeedBiasY, setAngularSpeedBiasZ, setAngularSpeedBiasZ, setAngularSpeedCrossCouplingErrors, setAngularSpeedCrossCouplingErrors, setAngularSpeedGDependantCrossBias, setAngularSpeedMxy, setAngularSpeedMxz, setAngularSpeedMyx, setAngularSpeedMyz, setAngularSpeedMzx, setAngularSpeedMzy, setAngularSpeedScalingFactors, setAngularSpeedScalingFactorsAndCrossCouplingErrors, setAngularSpeedSx, setAngularSpeedSy, setAngularSpeedSz, setFixKinematicsEnabled, setListener, setReferenceEcefCoordinateTransformation, setReferenceEcefPosition, setReferenceEcefVelocity, setReferenceFrame, setReferenceNedCoordinateTransformation, setReferenceNedFrame, setReferenceNedPosition, setReferenceNedVelocity, setTimeInterval, setTimeInterval
-
Field Details
-
kalmanConfig
private com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig kalmanConfigConfiguration parameters for INS Loosely Coupled Kalman filter obtained through calibration. -
initConfig
private com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig initConfigConfiguration parameters determining initial system noise covariance matrix. -
kalmanEstimator
private com.irurueta.navigation.inertial.INSLooselyCoupledKalmanFilteredEstimator kalmanEstimatorInternal INS loosely coupled Kalman filtered estimator to estimate accumulated body position, velocity and orientation. -
state
private com.irurueta.navigation.inertial.INSLooselyCoupledKalmanState stateCurrent Kalman filter state.
-
-
Constructor Details
-
KalmanDriftEstimator
public KalmanDriftEstimator()Constructor.
-
-
Method Details
-
getKalmanConfig
public com.irurueta.navigation.inertial.INSLooselyCoupledKalmanConfig getKalmanConfig()Gets configuration parameters for INS Loosely Coupled Kalman filter obtained through calibration.- Returns:
- configuration parameters for Kalman filter or null.
-
getInitConfig
public com.irurueta.navigation.inertial.INSLooselyCoupledKalmanInitializerConfig getInitConfig()Gets configuration parameters determining initial system noise covariance matrix.- Returns:
- configuration parameters determining initial system noise covariance matrix or null.
-
isReady
public boolean isReady()Indicates if estimator is ready to start processing additional kinematics measurements.- Overrides:
isReady
in classDriftEstimator
- Returns:
- true if ready, false otherwise.
-
reset
public void reset() throws com.irurueta.navigation.LockedExceptionResets this estimator to its initial state.- Overrides:
reset
in classDriftEstimator
- Throws:
com.irurueta.navigation.LockedException
- if estimator is currently running.
-
getState
public com.irurueta.navigation.inertial.INSLooselyCoupledKalmanState getState()Gets state of internal Kalman filter containing current body position, orientation and velocity after last provided body kinematics measurement.- Returns:
- state of internal Kalman filter.
-
initialize
private void initialize() throws com.irurueta.geometry.InvalidRotationMatrixExceptionInitializes internal frame and Kalman estimator when the first body kinematics measurement is provided.- Throws:
com.irurueta.geometry.InvalidRotationMatrixException
- if orientation cannot be determined for numerical reasons.
-
computeCurrentPositionDrift
protected void computeCurrentPositionDrift()Computes current position drift.- Overrides:
computeCurrentPositionDrift
in classDriftEstimator
-
computeCurrentVelocityDrift
protected void computeCurrentVelocityDrift()Computes current velocity drift.- Overrides:
computeCurrentVelocityDrift
in classDriftEstimator
-
computeCurrentOrientationDrift
protected void computeCurrentOrientationDrift() throws com.irurueta.geometry.InvalidRotationMatrixExceptionComputes current orientation drift.- Overrides:
computeCurrentOrientationDrift
in classDriftEstimator
- Throws:
com.irurueta.geometry.InvalidRotationMatrixException
- if rotation cannot be accurately estimated.
-