sbgECom Library  4.0.1987-stable
C library to 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 
57 {
64 
65 
70 {
75 
80 {
86 
91 {
98 
102 #define SBG_ECOM_MAG_CALIB_NOT_ENOUGH_POINTS (0x0001u)
103 #define SBG_ECOM_MAG_CALIB_TOO_MUCH_DISTORTIONS (0x0002u)
104 #define SBG_ECOM_MAG_CALIB_X_MOTION_ISSUE (0x0004u)
105 #define SBG_ECOM_MAG_CALIB_Y_MOTION_ISSUE (0x0008u)
106 #define SBG_ECOM_MAG_CALIB_Z_MOTION_ISSUE (0x0010u)
107 #define SBG_ECOM_MAG_CALIB_ALIGNMENT_ISSUE (0x0020u)
113 {
117 
118 //----------------------------------------------------------------------//
119 //- Magnetometer configuration -//
120 //----------------------------------------------------------------------//
121 
126 {
129 
134 {
137  uint16_t advancedStatus;
147  float meanAccuracy;
148  float stdAccuracy;
149  float maxAccuracy;
151  uint16_t numPoints;
152  uint16_t maxNumPoints;
153  float offset[3];
154  float matrix[9];
156 
157 //----------------------------------------------------------------------//
158 //- Magnetometer commands -//
159 //----------------------------------------------------------------------//
160 
169 
178 
187 
196 
205 SbgErrorCode sbgEComCmdMagSetCalibData(SbgEComHandle *pHandle, const float *pOffset, const float *pMatrix);
206 
207 //----------------------------------------------------------------------//
208 //- Magnetometer on-board calibration commands -//
209 //----------------------------------------------------------------------//
210 
223 
234 
235 #ifdef __cplusplus
236 }
237 #endif
238 
239 #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)
_SbgEComMagCalibConfidence
Definition: sbgEComCmdMag.h:91
@ SBG_ECOM_MAG_CALIB_TRUST_MEDIUM
Definition: sbgEComCmdMag.h:93
@ SBG_ECOM_MAG_CALIB_TRUST_LOW
Definition: sbgEComCmdMag.h:94
@ SBG_ECOM_MAG_CALIB_TRUST_HIGH
Definition: sbgEComCmdMag.h:92
struct _SbgEComMagRejectionConf SbgEComMagRejectionConf
enum _SbgEComMagCalibQuality SbgEComMagCalibQuality
struct _SbgEComMagCalibResults SbgEComMagCalibResults
enum _SbgEComMagCalibConfidence SbgEComMagCalibConfidence
SbgErrorCode sbgEComCmdMagSetRejection(SbgEComHandle *pHandle, const SbgEComMagRejectionConf *pRejectConf)
_SbgEComMagCalibMode
Definition: sbgEComCmdMag.h:57
@ SBG_ECOM_MAG_CALIB_MODE_3D
Definition: sbgEComCmdMag.h:61
@ SBG_ECOM_MAG_CALIB_MODE_2D
Definition: sbgEComCmdMag.h:58
_SbgEComMagCalibQuality
Definition: sbgEComCmdMag.h:80
@ SBG_ECOM_MAG_CALIB_QUAL_OPTIMAL
Definition: sbgEComCmdMag.h:81
@ SBG_ECOM_MAG_CALIB_QUAL_INVALID
Definition: sbgEComCmdMag.h:84
@ SBG_ECOM_MAG_CALIB_QUAL_GOOD
Definition: sbgEComCmdMag.h:82
@ SBG_ECOM_MAG_CALIB_QUAL_POOR
Definition: sbgEComCmdMag.h:83
SbgErrorCode sbgEComCmdMagGetRejection(SbgEComHandle *pHandle, SbgEComMagRejectionConf *pRejectConf)
SbgErrorCode sbgEComCmdMagStartCalib(SbgEComHandle *pHandle, SbgEComMagCalibMode mode, SbgEComMagCalibBandwidth bandwidth)
_SbgEComMagModelsStdIds
Definition: sbgEComCmdMag.h:113
@ SBG_ECOM_MAG_MODEL_NORMAL
Definition: sbgEComCmdMag.h:114
@ SBG_ECOM_MAG_MODEL_NOISY_MAG_TOLERANT
Definition: sbgEComCmdMag.h:115
enum _SbgEComMagModelsStdIds SbgEComMagModelsStdId
_SbgEComMagCalibBandwidth
Definition: sbgEComCmdMag.h:70
@ SBG_ECOM_MAG_CALIB_LOW_BW
Definition: sbgEComCmdMag.h:71
@ SBG_ECOM_MAG_CALIB_MEDIUM_BW
Definition: sbgEComCmdMag.h:72
@ SBG_ECOM_MAG_CALIB_HIGH_BW
Definition: sbgEComCmdMag.h:73
enum _SbgErrorCode SbgErrorCode
Definition: sbgECom.h:88
Definition: sbgEComCmdMag.h:134
float beforeMeanError
Definition: sbgEComCmdMag.h:139
float afterMaxError
Definition: sbgEComCmdMag.h:145
uint16_t maxNumPoints
Definition: sbgEComCmdMag.h:152
float matrix[9]
Definition: sbgEComCmdMag.h:154
float beforeStdError
Definition: sbgEComCmdMag.h:140
float beforeMaxError
Definition: sbgEComCmdMag.h:141
float afterMeanError
Definition: sbgEComCmdMag.h:143
float afterStdError
Definition: sbgEComCmdMag.h:144
float maxAccuracy
Definition: sbgEComCmdMag.h:149
SbgEComMagCalibConfidence confidence
Definition: sbgEComCmdMag.h:136
uint16_t advancedStatus
Definition: sbgEComCmdMag.h:137
float meanAccuracy
Definition: sbgEComCmdMag.h:147
SbgEComMagCalibQuality quality
Definition: sbgEComCmdMag.h:135
uint16_t numPoints
Definition: sbgEComCmdMag.h:151
float offset[3]
Definition: sbgEComCmdMag.h:153
float stdAccuracy
Definition: sbgEComCmdMag.h:148
Definition: sbgEComCmdMag.h:126
SbgEComRejectionMode magneticField
Definition: sbgEComCmdMag.h:127