Main Content

correct

Correct states using direct state measurements for ahrs10filter

Description

example

correct(FUSE,idx,measurement,measurementCovariance) corrects the state and state estimation error covariance based on the measurement and measurement covariance. The measurement maps directly to the state specified by the indices idx.

Examples

collapse all

Create an ahrs10filter object and display its state.

filter = ahrs10filter;
disp(filter.State')
    1.0000         0         0         0         0         0         0         0         0         0         0         0   27.5550   -2.4169  -16.0849         0         0         0

Fuse altimeter data with a reading and a covariance using the correct object function.

idx = [5 6];
measure = [500 10];
measureCov = diag([5 1])*1e-6;
correct(filter,idx,measure,measureCov)

Display the state after the fusing.

disp(filter.State')
    1.0000         0         0         0   83.3333    5.0000         0         0         0         0         0         0   27.5550   -2.4169  -16.0849         0         0         0

Input Arguments

collapse all

Object of ahrs10filter.

State vector index of measurement to correct, specified as an N-element vector of increasing integers in the range [1,18].

The state values represent:

StateUnitsIndex
Orientation (quaternion parts)N/A1:4
Altitude (NED)m5
Vertical Velocity (NED)m/s6
Delta Angle Bias (XYZ)rad/s7:9
Delta Velocity Bias (XYZ)m/s10:12
Geomagnetic Field Vector (NED)μT13:15
Magnetometer Bias (XYZ)μT16:18

Data Types: single | double

Direct measurement of state, specified as a N-element vector. N is the number of elements of the index argument, idx.

Data Types: single | double

Covariance of measurement, specified as a scalar, N-element vector, or N-by-N matrix. N is the number of elements of the index argument, idx.

Data Types: single | double

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Version History

Introduced in R2019a