sbgECom Library  5.1.708-stable
Interface SBG Systems IMU/AHRS/INS
sbgEComCmdMag.h
Go to the documentation of this file.
1 
33 #ifndef SBG_ECOM_CMD_MAG_H
34 #define SBG_ECOM_CMD_MAG_H
35 
36 // sbgCommonLib headers
37 #include <sbgCommon.h>
38 
39 // Project headers
40 #include <sbgECom.h>
41 
42 // Local headers
43 #include "sbgEComCmdCommon.h"
44 
45 #ifdef __cplusplus
46 extern "C" {
47 #endif
48 
49 //----------------------------------------------------------------------//
50 //- Magnetometer definitions -//
51 //----------------------------------------------------------------------//
52 
63 {
67 
75 {
80 
85 {
91 
96 {
103 
107 #define SBG_ECOM_MAG_CALIB_NOT_ENOUGH_POINTS (0x0001u << 0)
108 #define SBG_ECOM_MAG_CALIB_TOO_MUCH_DISTORTIONS (0x0001u << 1)
109 #define SBG_ECOM_MAG_CALIB_X_MOTION_ISSUE (0x0001u << 2)
110 #define SBG_ECOM_MAG_CALIB_Y_MOTION_ISSUE (0x0001u << 3)
111 #define SBG_ECOM_MAG_CALIB_Z_MOTION_ISSUE (0x0001u << 4)
112 #define SBG_ECOM_MAG_CALIB_ALIGNMENT_ISSUE (0x0001u << 5)
118 {
123 
124 //----------------------------------------------------------------------//
125 //- Magnetometer configuration -//
126 //----------------------------------------------------------------------//
127 
132 {
135 
140 {
143  uint16_t advancedStatus;
153  float meanAccuracy;
154  float stdAccuracy;
155  float maxAccuracy;
157  uint16_t numPoints;
158  uint16_t maxNumPoints;
159  float offset[3];
160  float matrix[9];
162 
163 //----------------------------------------------------------------------//
164 //- Magnetometer commands -//
165 //----------------------------------------------------------------------//
166 
175 
184 
193 
202 
214 SbgErrorCode sbgEComCmdMagSetCalibData(SbgEComHandle *pHandle, const float *pOffset, const float *pMatrix);
215 
230 SbgErrorCode sbgEComCmdMagSetCalibData2(SbgEComHandle *pHandle, const float *pOffset, const float *pMatrix, SbgEComMagCalibMode mode);
231 
232 //----------------------------------------------------------------------//
233 //- Magnetometer on-board calibration commands -//
234 //----------------------------------------------------------------------//
235 
248 
259 
260 //----------------------------------------------------------------------//
261 //- DEPRECATED - Used for backward compatibility -//
262 //----------------------------------------------------------------------//
263 
264 #ifdef SBG_ECOM_USE_DEPRECATED_MACROS
265  #define SBG_ECOM_MAG_MODEL_NORMAL (SBG_ECOM_MAG_MODEL_INTERNAL_NORMAL)
266  #define SBG_ECOM_MAG_MODEL_NOISY_MAG_TOLERANT (SBG_ECOM_MAG_MODEL_INTERNAL_RESERVED)
267 #endif
268 
269 
270 #ifdef __cplusplus
271 }
272 #endif
273 
274 #endif // SBG_ECOM_CMD_MAG_H
Main header for the SBG Systems common C library.
Contains main sbgECom methods.
Definitions and methods common to all commands.
enum _SbgEComRejectionMode SbgEComRejectionMode
SbgErrorCode sbgEComCmdMagSetCalibData(SbgEComHandle *pHandle, const float *pOffset, const float *pMatrix)
SbgErrorCode sbgEComCmdMagSetModelId(SbgEComHandle *pHandle, SbgEComMagModelsStdId modelId)
SbgErrorCode sbgEComCmdMagComputeCalib(SbgEComHandle *pHandle, SbgEComMagCalibResults *pCalibResults)
enum _SbgEComMagCalibBandwidth SbgEComMagCalibBandwidth
enum _SbgEComMagCalibMode SbgEComMagCalibMode
SbgErrorCode sbgEComCmdMagGetModelId(SbgEComHandle *pHandle, SbgEComMagModelsStdId *pModelId)
SbgErrorCode sbgEComCmdMagSetCalibData2(SbgEComHandle *pHandle, const float *pOffset, const float *pMatrix, SbgEComMagCalibMode mode)
_SbgEComMagCalibConfidence
Definition: sbgEComCmdMag.h:96
@ SBG_ECOM_MAG_CALIB_TRUST_MEDIUM
Definition: sbgEComCmdMag.h:98
@ SBG_ECOM_MAG_CALIB_TRUST_LOW
Definition: sbgEComCmdMag.h:99
@ SBG_ECOM_MAG_CALIB_TRUST_HIGH
Definition: sbgEComCmdMag.h:97
struct _SbgEComMagRejectionConf SbgEComMagRejectionConf
enum _SbgEComMagCalibQuality SbgEComMagCalibQuality
struct _SbgEComMagCalibResults SbgEComMagCalibResults
enum _SbgEComMagCalibConfidence SbgEComMagCalibConfidence
SbgErrorCode sbgEComCmdMagSetRejection(SbgEComHandle *pHandle, const SbgEComMagRejectionConf *pRejectConf)
_SbgEComMagCalibMode
Definition: sbgEComCmdMag.h:63
@ SBG_ECOM_MAG_CALIB_MODE_3D
Definition: sbgEComCmdMag.h:65
@ SBG_ECOM_MAG_CALIB_MODE_2D
Definition: sbgEComCmdMag.h:64
_SbgEComMagCalibQuality
Definition: sbgEComCmdMag.h:85
@ SBG_ECOM_MAG_CALIB_QUAL_OPTIMAL
Definition: sbgEComCmdMag.h:86
@ SBG_ECOM_MAG_CALIB_QUAL_INVALID
Definition: sbgEComCmdMag.h:89
@ SBG_ECOM_MAG_CALIB_QUAL_GOOD
Definition: sbgEComCmdMag.h:87
@ SBG_ECOM_MAG_CALIB_QUAL_POOR
Definition: sbgEComCmdMag.h:88
SbgErrorCode sbgEComCmdMagGetRejection(SbgEComHandle *pHandle, SbgEComMagRejectionConf *pRejectConf)
SbgErrorCode sbgEComCmdMagStartCalib(SbgEComHandle *pHandle, SbgEComMagCalibMode mode, SbgEComMagCalibBandwidth bandwidth)
_SbgEComMagModelsStdIds
Definition: sbgEComCmdMag.h:118
@ SBG_ECOM_MAG_MODEL_INTERNAL_RESERVED
Definition: sbgEComCmdMag.h:120
@ SBG_ECOM_MAG_MODEL_INTERNAL_NORMAL
Definition: sbgEComCmdMag.h:119
@ SBG_ECOM_MAG_MODEL_ECOM_NORMAL
Definition: sbgEComCmdMag.h:121
enum _SbgEComMagModelsStdIds SbgEComMagModelsStdId
_SbgEComMagCalibBandwidth
Definition: sbgEComCmdMag.h:75
@ SBG_ECOM_MAG_CALIB_LOW_BW
Definition: sbgEComCmdMag.h:76
@ SBG_ECOM_MAG_CALIB_MEDIUM_BW
Definition: sbgEComCmdMag.h:77
@ SBG_ECOM_MAG_CALIB_HIGH_BW
Definition: sbgEComCmdMag.h:78
enum _SbgErrorCode SbgErrorCode
Definition: sbgECom.h:88
Definition: sbgEComCmdMag.h:140
float beforeMeanError
Definition: sbgEComCmdMag.h:145
float afterMaxError
Definition: sbgEComCmdMag.h:151
uint16_t maxNumPoints
Definition: sbgEComCmdMag.h:158
float matrix[9]
Definition: sbgEComCmdMag.h:160
float beforeStdError
Definition: sbgEComCmdMag.h:146
float beforeMaxError
Definition: sbgEComCmdMag.h:147
float afterMeanError
Definition: sbgEComCmdMag.h:149
float afterStdError
Definition: sbgEComCmdMag.h:150
float maxAccuracy
Definition: sbgEComCmdMag.h:155
SbgEComMagCalibConfidence confidence
Definition: sbgEComCmdMag.h:142
uint16_t advancedStatus
Definition: sbgEComCmdMag.h:143
float meanAccuracy
Definition: sbgEComCmdMag.h:153
SbgEComMagCalibQuality quality
Definition: sbgEComCmdMag.h:141
uint16_t numPoints
Definition: sbgEComCmdMag.h:157
float offset[3]
Definition: sbgEComCmdMag.h:159
float stdAccuracy
Definition: sbgEComCmdMag.h:154
Definition: sbgEComCmdMag.h:132
SbgEComRejectionMode magneticField
Definition: sbgEComCmdMag.h:133