fusemag

Correct states using magnetometer data for `insfilterAsync`

Syntax

``[res,resCov] = fusemag(FUSE,magReadings,magReadingsCovariance)``

Description

example

````[res,resCov] = fusemag(FUSE,magReadings,magReadingsCovariance)` fuses magnetometer data to correct the state estimate.```

Examples

collapse all

`Create` an `insfilterAsync` object and display its state.

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

```magReading = [132.7000 91.1000 60.5000]; magCovariance = eye(3); [res,resCovariance] = fusemag(filter,magReading,magCovariance)```
```res = 1×3 105.1450 93.5169 76.5849 ```
```resCovariance = 3×3 5.0974 0 0 0 5.0974 0 0 0 5.0974 ```

Display the filter state.

`disp(filter.State')`
``` 0.6297 -0.2083 0.6002 -0.4470 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 27.5756 -2.3986 -16.0699 0.0206 0.0183 0.0150 ```

Input Arguments

collapse all

`insfilterAsync`, specified as an object.

Magnetometer readings in µT, specified as a 3-element row vector of finite real numbers.

Data Types: `single` | `double`

Magnetometer readings error covariance in µT2, specified as a scalar, 3-element row vector, or 3-by-3 matrix.

Data Types: `single` | `double`

Output Arguments

collapse all

Residual, returned a 1-by-3 vector of real values in µT.

Data Types: `single` | `double`

Residual covariance, returned a 3-by-3 matrix of real values in (µT)2.

Version History

Introduced in R2019a