Sensor Fusion Library 0.6.1
Orientation sensing for Espressif (ESP32, ESP8266) processors
Loading...
Searching...
No Matches
Public Attributes | List of all members
MagCalibration Struct Reference

Magnetic Calibration Structure. More...

#include <magnetic.h>

Public Attributes

float fV [3]
 current hard iron offset x, y, z, (uT)
 
float finvW [3][3]
 current inverse soft iron matrix
 
float fB
 current geomagnetic field magnitude (uT)
 
float fBSq
 square of fB (uT^2)
 
float fFitErrorpc
 current fit error %
 
int32_t iValidMagCal
 solver used: 0 (no calibration) or 4, 7, 10 element
 
float ftrV [3]
 trial value of hard iron offset z, y, z (uT)
 
float ftrinvW [3][3]
 trial inverse soft iron matrix size
 
float ftrB
 trial value of geomagnetic field magnitude in uT
 
float ftrFitErrorpc
 trial value of fit error %
 
float fA [3][3]
 ellipsoid matrix A
 
float finvA [3][3]
 inverse of ellipsoid matrix A
 
float fmatA [10][10]
 scratch 10x10 float matrix used by calibration algorithms
 
float fmatB [10][10]
 scratch 10x10 float matrix used by calibration algorithms
 
float fvecA [10]
 scratch 10x1 vector used by calibration algorithms
 
float fvecB [4]
 scratch 4x1 vector used by calibration algorithms
 
float fYTY
 Y^T.Y for 4 element calibration = (iB^2)^2.
 
int32_t iSumBs [3]
 sum of measurements in buffer (counts)
 
int32_t iMeanBs [3]
 average magnetic measurement (counts)
 
int32_t itimeslice
 counter for tine slicing magnetic calibration calculations
 
int8_t iCalInProgress
 flag denoting that a calibration is in progress
 
int8_t iNewCalibrationAvailable
 flag denoting that a new calibration has been computed
 
int8_t iInitiateMagCal
 flag to start a new magnetic calibration
 
int8_t iMagBufferReadOnly
 flag to denote that the magnetic measurement buffer is temporarily read only
 
int8_t i4ElementSolverTried
 flag to denote at least one attempt made with 4 element calibration
 
int8_t i7ElementSolverTried
 flag to denote at least one attempt made with 7 element calibration
 
int8_t i10ElementSolverTried
 flag to denote at least one attempt made with 10 element calibration
 

Detailed Description

Magnetic Calibration Structure.

Definition at line 60 of file magnetic.h.

Member Data Documentation

◆ fA

float MagCalibration::fA[3][3]

ellipsoid matrix A

Definition at line 75 of file magnetic.h.

◆ fB

float MagCalibration::fB

current geomagnetic field magnitude (uT)

Definition at line 65 of file magnetic.h.

◆ fBSq

float MagCalibration::fBSq

square of fB (uT^2)

Definition at line 66 of file magnetic.h.

◆ fFitErrorpc

float MagCalibration::fFitErrorpc

current fit error %

Definition at line 67 of file magnetic.h.

◆ finvA

float MagCalibration::finvA[3][3]

inverse of ellipsoid matrix A

Definition at line 76 of file magnetic.h.

◆ finvW

float MagCalibration::finvW[3][3]

current inverse soft iron matrix

Definition at line 64 of file magnetic.h.

◆ fmatA

float MagCalibration::fmatA[10][10]

scratch 10x10 float matrix used by calibration algorithms

Definition at line 77 of file magnetic.h.

◆ fmatB

float MagCalibration::fmatB[10][10]

scratch 10x10 float matrix used by calibration algorithms

Definition at line 78 of file magnetic.h.

◆ ftrB

float MagCalibration::ftrB

trial value of geomagnetic field magnitude in uT

Definition at line 73 of file magnetic.h.

◆ ftrFitErrorpc

float MagCalibration::ftrFitErrorpc

trial value of fit error %

Definition at line 74 of file magnetic.h.

◆ ftrinvW

float MagCalibration::ftrinvW[3][3]

trial inverse soft iron matrix size

Definition at line 72 of file magnetic.h.

◆ ftrV

float MagCalibration::ftrV[3]

trial value of hard iron offset z, y, z (uT)

Definition at line 71 of file magnetic.h.

◆ fV

float MagCalibration::fV[3]

current hard iron offset x, y, z, (uT)

Definition at line 63 of file magnetic.h.

◆ fvecA

float MagCalibration::fvecA[10]

scratch 10x1 vector used by calibration algorithms

Definition at line 79 of file magnetic.h.

◆ fvecB

float MagCalibration::fvecB[4]

scratch 4x1 vector used by calibration algorithms

Definition at line 80 of file magnetic.h.

◆ fYTY

float MagCalibration::fYTY

Y^T.Y for 4 element calibration = (iB^2)^2.

Definition at line 81 of file magnetic.h.

◆ i10ElementSolverTried

int8_t MagCalibration::i10ElementSolverTried

flag to denote at least one attempt made with 10 element calibration

Definition at line 91 of file magnetic.h.

◆ i4ElementSolverTried

int8_t MagCalibration::i4ElementSolverTried

flag to denote at least one attempt made with 4 element calibration

Definition at line 89 of file magnetic.h.

◆ i7ElementSolverTried

int8_t MagCalibration::i7ElementSolverTried

flag to denote at least one attempt made with 7 element calibration

Definition at line 90 of file magnetic.h.

◆ iCalInProgress

int8_t MagCalibration::iCalInProgress

flag denoting that a calibration is in progress

Definition at line 85 of file magnetic.h.

◆ iInitiateMagCal

int8_t MagCalibration::iInitiateMagCal

flag to start a new magnetic calibration

Definition at line 87 of file magnetic.h.

◆ iMagBufferReadOnly

int8_t MagCalibration::iMagBufferReadOnly

flag to denote that the magnetic measurement buffer is temporarily read only

Definition at line 88 of file magnetic.h.

◆ iMeanBs

int32_t MagCalibration::iMeanBs[3]

average magnetic measurement (counts)

Definition at line 83 of file magnetic.h.

◆ iNewCalibrationAvailable

int8_t MagCalibration::iNewCalibrationAvailable

flag denoting that a new calibration has been computed

Definition at line 86 of file magnetic.h.

◆ iSumBs

int32_t MagCalibration::iSumBs[3]

sum of measurements in buffer (counts)

Definition at line 82 of file magnetic.h.

◆ itimeslice

int32_t MagCalibration::itimeslice

counter for tine slicing magnetic calibration calculations

Definition at line 84 of file magnetic.h.

◆ iValidMagCal

int32_t MagCalibration::iValidMagCal

solver used: 0 (no calibration) or 4, 7, 10 element

Definition at line 68 of file magnetic.h.


The documentation for this struct was generated from the following file: