NovAtel SPAN (INSPVA Format) (Roll-Pitch) - 03
Description
Interface Type
Driver supports both serial as well as network (UDP and TCP) communication.
For the network driver please select the driver name that starts with "Network (UDP)- NovAtel..." or "Network (TCP)- NovAtel..."
Configuring the device
In order to enable the correct messages, create a connection to the device on the used interface (f.i. with I/O tester). Each message type needs to be individually activated. The following example enables #INSPVA, #INSCOV and #TIME messages and saves the configuration. (Unwanted message types may be omitted):
unlogall
log inspvaa ontime 0.04
log inscova ontime 0.04
log timea ontime 1
saveconfig
Driver to decode a position (latitude, longitude and height), heading and attitude (roll and pitch, no heave) from a NovAtel SPAN-CPT GPS/INS receiver, outputting the so-called INSPVA log format.
Further, the INS status, three velocity direction fields and the SD values for position, heading and attiitude (roll and pitch, no heave) can be decoded as generic observations.
Driver Information
Decoding Notes
The GPS time fields from the header are decoded, converted to UTC, and used for time-stamping in case your template setup supports Time Synchronization. Therefore it is important to set the correct UTC to GPS correction in your template setup (16 sec. as of July 2012).
The CRC32-bit checksum is by default decoded and used to check the data integrity. If the checksum fails, no data will be decoded, unless you use command-line parameter 'NOCS' (advanced user only!).
The INS Status text (data field # 12) is decoded as number as defined in the Inertial Solution Status Table of the NovAtel manual:
Inertial Solution Status
Text | Value | Description |
---|---|---|
INS_INACTIVE | 0 | IMU logs are present, but the alignment routine has not started; INS is inactive. |
INS_ALIGNING | 1 | INS is in alignment mode. When in this status, the user can move to initiate the kinematic alignment or send a SETINITAZIMUTH command. This status also shows if the IMU status is not valid. The IMU status is given in the RAWIMU and RAWIMUS logs. |
INS_SOLUTION_NOT_GOOD | 2 | The INS solution is still being computed but the azimuth solution uncertainty has exceed 2 degrees. The solution is still valid but you should monitor the solution uncertainty in the INSCOV log. You may encounter this state during times when the GPS, used to aid the INS, is absent. |
INS_SOLUTION_GOOD | 3 | The INS filter is in navigation mode and the INS solution is good. |
INS_BAD_GPS_AGREEMENT | 6 | The INS filter is in navigation mode, and the GPS solution is suspected to be in error. This may be due to multipath or limited satellite visibility. The inertial filter has rejected the GPS position and is waiting for the solution quality to improve. |
INS_ALIGNMENT_COMPLETE | 7 | The INS filter is in navigation mode, but not enough vehicle dynamics have been experienced for the system to be within specifications. |
Text | Value | Description |
---|---|---|
INS_INACTIVE | 0 | IMU logs are present, but the alignment routine has not started; INS is inactive. |
INS_ALIGNING | 1 | INS is in alignment mode. When in this status, the user can move to initiate the kinematic alignment or send a SETINITAZIMUTH command. This status also shows if the IMU status is not valid. The IMU status is given in the RAWIMU and RAWIMUS logs. |
INS_SOLUTION_NOT_GOOD | 2 | The INS solution is still being computed but the azimuth solution uncertainty has exceed 2 degrees. The solution is still valid but you should monitor the solution uncertainty in the INSCOV log. You may encounter this state during times when the GPS, used to aid the INS, is absent. |
INS_SOLUTION_GOOD | 3 | The INS filter is in navigation mode and the INS solution is good. |
INS_BAD_GPS_AGREEMENT | 6 | The INS filter is in navigation mode, and the GPS solution is suspected to be in error. This may be due to multipath or limited satellite visibility. The inertial filter has rejected the GPS position and is waiting for the solution quality to improve. |
INS_ALIGNMENT_COMPLETE | 7 | The INS filter is in navigation mode, but not enough vehicle dynamics have been experienced for the system to be within specifications. |
#INSCOVA
Format Description
#INSCOVA , 9 HEADER FIELDS ; 5 DATA FIELDS * CHECKSUM [CR][LF]
A message always starts with prefix #INSCOVA
All fields are comma-separated. The header is separated from the data by semi-colon ';'.
The checksum field is separated by asterix '*'.
The message is terminated by carriage return and linefeed character.
Format Description
# | Field Type | Description | Format | Comment |
---|---|---|---|---|
1-10 | Log Header | Prefix + 9 header fields, terminated by ';' | The time-stamp of the message is decoded from this header | |
1 | Week | GPS Week | Ulong | Not used. |
2 | Seconds | Seconds from week start | Double | Not used. |
3 | Position Covariance | Position covariance matrix in local level frame (meters squared) | list of 9 Doubles | Decoded as position SD |
4 | Attitude Covariance | Attitude covariance matrix in local level frame. (degrees squared - rotation around the given axis) | list of 9 Doubles | Decoded as attitude SD |
5 | Velocity Covariance | Velocity covariance matrix in local level frame. (meters per second squared) | list of 9 Doubles | Not used. |
*xxxxxxxx | 32-bit CRC | Hex | Decoded | |
[CR][LF] | Terminator (Carriage return, Linefeed) |
Format Example
#INSCOVA,ICOM2,0,93.0,FINESTEERING,1759,303333.000,00000000,0000,470;1759,303332.000000000,0.9514159217384957,0.2426566051783968,0.0559788157811317,0.2426566051783968,1.7519979249112287,-0.3027535437644834,0.0559788157811317,-0.3027535437644834,
2.1841668365196694,0.0003209537759111,-0.0000629073819189,0.0000078413800201,-0.0000629073819189,0.0004156955044751,0.0000354000390746,0.0000078413800201,0.0000354000390746,0.0186711641695660,0.0001351592316136,0.0000003978889804,-0.0000047708173766,
0.0000003978889804,0.0001347477947649,-0.0000013139503898,-0.0000047708173766,-0.0000013139503898,0.0001627579675195*8db48187
#INSCOVA,ICOM2,0,93.0,FINESTEERING,1759,303334.000,00000000,0000,470;1759,303333.000000000,0.9523158818717720,0.2426566545111556,0.0559788218339834,0.2426566545111556,1.7528979873742808,-0.3027535486724926,0.0559788218339834,-0.3027535486724928,
2.1850669966666603,0.0003209375449550,-0.0000628990788237,0.0000078208946540,-0.0000628990788237,0.0004156741777818,0.0000354156379851,0.0000078208946540,0.0000354156379851,0.0186738380748709,0.0001351637891301,0.0000003978728817,-0.0000047705355639,
0.0000003978728817,0.0001347525095535,-0.0000013136154832,-0.0000047705355639,-0.0000013136154832,0.0001627574112599*4deb78f6
#INSCOVA,ICOM2,0,93.0,FINESTEERING,1759,303335.000,00000000,0000,470;1759,303334.000000000,0.9532158600620278,0.2426567081066481,0.0559788290311303,0.2426567081066481,1.7537980748581987,-0.3027535535892016,0.0559788290311303,-0.3027535535892019,
2.1859671731372829,0.0003209209170908,-0.0000628920898767,0.0000078006934660,-0.0000628920898767,0.0004156541032268,0.0000354408924664,0.0000078006934660,0.0000354408924664,0.0186765115475763,0.0001351699040608,0.0000003972635740,-0.0000047697720194,
0.0000003972635740,0.0001347577768813,-0.0000013137018257,-0.0000047697720194,-0.0000013137018257,0.0001627593090991*c0fd1a67
#INSCOVA,ICOM2,0,92.5,FINESTEERING,1759,303336.000,00000000,0000,470;1759,303335.000000000,0.9541158574875908,0.2426567665031987,0.0559788371336304,0.2426567665031987,1.7546981883748964,-0.3027535581050536,0.0559788371336304,-0.3027535581050538,
2.1868673624049499,0.0003209022815362,-0.0000628861486751,0.0000077704560495,-0.0000628861486751,0.0004156332133313,0.0000354834988206,0.0000077704560495,0.0000354834988206,0.0186791900390688,0.0001351717775653,0.0000003965627550,-0.0000047711281266,
0.0000003965627550,0.0001347596326658,-0.0000013124698458,-0.0000047711281266,-0.0000013124698458,0.0001627536876356*07cdccf5
#INSCOVA,ICOM2,0,92.5,FINESTEERING,1759,303337.000,00000000,0000,470;1759,303336.000000000,0.9550158668455431,0.2426568271326385,0.0559788463135037,0.2426568271326385,1.7555983186337727,-0.3027535626118562,0.0559788463135037,-0.3027535626118562,
2.1877675603640103,0.0003208864964954,-0.0000628839316208,0.0000077781907325,-0.0000628839316208,0.0004156203995709,0.0000355286030565,0.0000077781907325,0.0000355286030565,0.0186818468559776,0.0001351685482890,0.0000003954744060,-0.0000047707267884,
0.0000003954744060,0.0001347552222299,-0.0000013106049948,-0.0000047707267884,-0.0000013106049948,0.0001627420866226*12829557
#INSCOVA,ICOM2,0,93.5,FINESTEERING,1759,303338.000,00000000,0000,470;1759,303337.000000000,0.9559158879558113,0.2426568890071794,0.0559788564067072,0.2426568890071794,1.7564984622615237,-0.3027535671087690,0.0559788564067072,-0.3027535671087688,
2.1886677625536448,0.0003208727600363,-0.0000628821525708,0.0000077787976698,-0.0000628821525708,0.0004156098913810,0.0000355705918618,0.0000077787976698,0.0000355705918618,0.0186777249914527,0.0001351707753560,0.0000003937494131,-0.0000047691543079,
0.0000003937494131,0.0001347547670588,-0.0000013102596548,-0.0000047691543079,-0.0000013102596548,0.0001627404046726*72b217de
#INSCOVA,ICOM2,0,93.5,FINESTEERING,1759,303339.000,00000000,0000,470;1759,303338.000000000,0.9568159227618214,0.2426569530504998,0.0559788672771508,0.2426569530504998,1.7573986216770736,-0.3027535711573023,0.0559788672771508,-0.3027535711573020,
2.1895679669774939,0.0003208566410070,-0.0000628798102942,0.0000077766628923,-0.0000628798102942,0.0004155956225476,0.0000356160713554,0.0000077766628923,0.0000356160713554,0.0186803872684065,0.0001351706605939,0.0000003920928584,-0.0000047695203951,
0.0000003920928584,0.0001347526991486,-0.0000013092582737,-0.0000047695203951,-0.0000013092582737,0.0001627347299750*e6a24822#INSPVAA,COM2,0,48.0,FINESTEERING,1519,581349.006,00000000,5615,3632;1519,581349.006454953,29.813590308,-95.668534708,6.143695218,0.005053866,0.006789975,-0.003175977,-2.128522012,5.056931581,346.864745761,INS_SOLUTION_NOT_GOOD*cd125649
#TIMEA
Format Description
#TIMEA , 9 HEADER FIELDS ; 11 DATA FIELDS * CHECKSUM [CR][LF]
A message always starts with prefix #TIMEA
All fields are comma-separated. The header is separated from the data by semi-colon ';'.
The checksum field is separated by asterix '*'.
The message is terminated by carriage return and linefeed character.
Format Description
# | Field Type | Description | Format | Comment |
---|---|---|---|---|
1-10 | Log Header | Prefix + 9 header fields, terminated by ';' | The time-stamp of the message is decoded from this header | |
1 | Clock status | Clock model status | Ulong | Not used. |
2 | Offset | Receiver clock offset in sec from GPS time | Double | Not used. |
3 | Offset std | Receiver clock offset standard deviation | Double | Not used. |
4 | UTC offset | Offset of GPS time from UTC time | Double | Not used. |
5 | UTC year | Ulong | ||
UTC month | Ulong | |||
UTC day | Uchar | |||
UTC hour | Uchar | |||
UTC minute | Uchar | |||
UTC millisecond | Ulong | |||
UTC status | Enum | Decoded and used to verify if the clock values are valid | ||
*xxxxxxxx | 32-bit CRC | Hex | Decoded | |
[CR][LF] | Terminator (Carriage return, Linefeed) |
Format Example
#TIMEA,ICOM2,0,92.4,FINESTEERING,1759,475248.100,00000000,0,470;VALID,-1.209978866e-08,0.000000155,-16.00000000000,2013,9,27,12,0,32100,VALID*49984f85
#TIMEA,ICOM2,0,92.4,FINESTEERING,1759,475248.200,00000000,0,470;VALID,-1.208147799e-08,0.000000155,-16.00000000000,2013,9,27,12,0,32200,VALID*9a8f0726
#TIMEA,ICOM2,0,92.4,FINESTEERING,1759,475248.300,00000000,0,470;VALID,-1.205369831e-08,0.000000155,-16.00000000000,2013,9,27,12,0,32299,VALID*d0c05ae5
#TIMEA,ICOM2,0,90.5,FINESTEERING,1759,475248.400,00000000,0,470;VALID,-1.202186887e-08,0.000000155,-16.00000000000,2013,9,27,12,0,32400,VALID*72abb255
#TIMEA,ICOM2,0,90.5,FINESTEERING,1759,475248.500,00000000,0,470;VALID,-1.199880891e-08,0.000000155,-16.00000000000,2013,9,27,12,0,32500,VALID*1bef0db1
#TIMEA,ICOM2,0,90.5,FINESTEERING,1759,475248.600,00000000,0,470;VALID,-1.197474162e-08,0.000000155,-16.00000000000,2013,9,27,12,0,32600,VALID*37db15b1
Database Setup
In order to decode Time Synchronization from the TIMEA message, add a Time Synchronization system to your template and select the driver NovAtel SPAN-CPT (#INSPVA Telegram)
In order to decode the position from the INSPVA message, add a Position Navigation System to your template and select the driver "NovAtel SPAN-CPT (#INSPVA Telegram) (With UTC)".
It is important to select for the Horizontal and Vertical datum on the second wizard page 'WGS84' datum.
In order to decode a heading from the INSPVA message (Azimuth field), add a Gyro and Compass System to your template and select the driver "NovAtel SPAN-CPT (INSPVA Telegram) (Heading)".
Select the same I/O parameters as for the defined Position Navigation System above.
In order to decode the attitude from the INSPVA message (no heave!), add a Pitch, Roll and Heave Sensor System to your template and select the driver "NovAtel SPAN-CPT (INSPVA Telegram) (Roll-Pitch)".
Select the same I/O parameters as for the defined Position Navigation System above.
In order to decode separately the INS Status, Velocity and/or SD fields for monitoring these values, add a Miscellaneous System to your template, and select the driver "NovAtel SPAN-CPT (#INSPVA Telegram) (Status Velocity & SD)".
Select the same I/O parameters as for the defined Position Navigation System above.
On the 2nd wizard page, the observations can be added:
INSSTATUS
Add a generic observation. Name it e.g. 'Ins Status', and enter for Slot 1: ' INSSTATUS '.
Velocity
For the Velocity fields, add three more Generic Observations and name these e.g. 'Velocity North', 'Velocity East' and 'Velocity Up'. Enter for the Slot 1 Id's: ' VELO_NORTH ', ' VELO_EAST ' and ' VELO_UP '.
SD
For the SD fields, add six more Generic Observations and name these e.g. 'SD position X', 'SD position Y', 'SD position Z', 'SD roll', 'SD pitch', and 'SD heading'. For the slot ID's use respectively SD_POS_X, SD_POS_Y, SD_POS_Z, SD_ROLL, SD_PITCH and SD_HEADING
It is important that all Slot Id's are entered in capitals.
Online
For a Position Navigation System you can monitor the INS Status as Solution mode in a Position System Display, as RAW DATA Positioning item Solution Mode in a Generic Display, or as Raw Alert 'Solution Mode outside limit' in the Alert Display.
For a heading and/or roll and pitch observation you can monitor this value as Quality indicator in an Observation Physics Display, or as Raw Alert 'Quality indicator outside limit' in the Alert Display.