HMR File
The 256 byte header contains information that is vital to processing and must be filled in. The C/C++ structure definition of the HMR header is as follows:
|
Word |
Size |
Type |
Definition |
|---|---|---|---|
|
szTitleStr |
12 |
char[12] |
“$IMUHEADING\0” – NULL terminated ASCII string |
|
ucType |
1 |
uint8_t |
1 = values from external source 2 = values form dual antenna source |
|
dBoreSightRotationZ |
8 |
double |
Heading boresight between the forward direction of travel and the vector between antennas. Positive rotation is clockwise about Z |
|
dBoreSightRotationZStdDev |
8 |
double |
Accuracy of the boresight, 0.0 if not known |
|
Extra |
227 |
int8_t[227] |
Reserved for future use |
The single header is then followed by the 34-byte structure type below for each heading update record:
|
Word |
Size |
Type |
Definition |
|---|---|---|---|
|
dGpsTime |
8 |
double |
GPS seconds of week |
|
sGpsWeek |
2 |
int16_t |
GPS week |
|
dHeading |
8 |
double |
The heading update value in decimal degrees, positive rotation is clockwise from North |
|
fHeadingStdDev |
4 |
float |
Standard deviation of the update in decimal degrees., 0.0 if not known |
|
fBaselineLength |
4 |
float |
Distance between antennas in meters. Only use if ucType == 2 |
|
fPitch |
4 |
float |
Pitch between the two antennas in decimal degrees. Only use if ucType == 2 |
|
fPitchStdDev |
4 |
float |
Standard deviation of the pitch in decimal degrees, 0.0 if not known |