Publisher Website! GPS Information, GPS & Navigation Technology and GPS Product review: Orion NMEA-0183 message

Monday, March 2, 2009

Orion NMEA-0183 message

1 Overview
This document describes the format and usage of NMEA messages for Orion GPS navigation software. It also details the implementation specifics of NMEA input commands and output sentences supported by Orion.

2 Message Format
Orion NMEA messages conform to the NMEA-0183 Ver. 3.01 (January 1, 2002) standard with implementation specifics as noted below. Commands start with a dollar-sign (“$”), followed by “PUNV”, and a comma (“,”). The command text comes next, followed by an asterisk (“*”), two-digit hexadecimal checksum, and the characters.

Example:
$PUNV,*cc
2.1 Checksum Calculation
In accordance with NMEA-0183, the checksum is calculated by taking the 8 bit exclusive OR of all characters between (but not including) the “$” and the “*”. The checksum is then appended after the “*” as a 2 character hexadecimal number.
If a command’s checksum is omitted or illegal the command will be rejected and an error message issued.
A command with the checksum value “cc” (two lower case “c” characters) will be accepted as valid (this is primarily used for testing purposes).
2.2 Sentence Termination Delimiter
All sentences end with the sentence termination delimiter . This combination is “\r\n” in C-language format and hexadecimal ASCII values are 0Dh 0Ah. Both characters are required for a command to be recognized.
2.3 NMEA Message Sizes
In accordance with NMEA-0183, the maximum number of characters between the starting delimiter
“$” and the terminating should be 79. That is, the maximum needed buffer size should be 82 for one output sentence. For input NMEA commands, the maximum size accepted is 128 characters.

3 Standard NMEA Output Sentences
The following format conventions have been used in accordance with the NMEA standard with implementation specifics noted:
. When a data field is null, the unit of measure field will also be null.
. Three digits are used for decimal fraction of seconds in UTC time.
. Four digits are used for decimal fraction of minutes in latitude and longitude.
. Two digits are used for Satellite IDs, with a leading zero if necessary.
. DTM: Six digits are used for decimal fraction of latitude and longitude offsets. Two digits are used for decimal fraction of altitude offset. Datum Subdivision Code is null.
. GGA: UTC starts from zero time and changes to measured time when the fix becomes valid.
Altitude is reported referenced to the ellipsoid, and the Geoidal Separation is null.
. GLL: UTC time field as in GGA.
. GSA: Satellite ID numbers are in the range 00 to 99.
. GSV: No implementation-specific notes.
. RMC: UTC time field as in GGA. Course and Speed over ground as in VTG. Magnetic
Variation is null.
. VTG: Course over ground is reported with 0.1 degree precision, Speed over ground is reported with 0.1 unit precision for both knots and km/h fields. Magnetic Course is null.
. ZDA: Local zone hours are presented as user has configured. Default is null. The hour zone is reported with two digits (with leading zero when necessary), and with leading minus sign when necessary. Local zone minutes are presented as two digits (with leading zero when necessary) and is always zero or positive. UTC time field as in GGA.

Message ID Description Default
DTM Datum reference N
GGA GPS fix data Y
GLL GPS latitude & longitude N
GSA DOP and active satellites Y
GSV Satellites in view Y
RMC Recommended Minimum GNSS Data Y
VTG Course over ground and ground speed N
ZDA Time, date, & local time zone N
Table 1 – Standard NMEA Output Sentences

3.1 DTM – Datum reference
This sentence contains the ID of the datum selected, along with configured offsets.
$GPDTM,W84,,0.000000,S,0.000000,W,0.00,W84*50
Name Description Type Example
MsgID DTM Header $GPDTM
DatumID Local Datum ID W84
DatumSubD Datum Subdivision Code
LatOfs Latitude Offset (in minutes) 0.000000
LatDirection
N = North
S = South
S
LonOfs Longitude Offset (in minutes) 0.000000
LonDirection
E = East
W = West
W
AltOfs Altitude Offset (in meters) 0.00
RefDatum Reference Datum ID W84
ChkSum Checksum *50
EOL NMEA end of line

3.2 GGA – GPS Fix Data
This sentence contains the position, time and quality of the navigation fix.
See RMC for Fix Status, Fix Mode, Fix Date, Speed, and True Course.
See GSA for Fix Type, PDOP, and VDOP.
$GPGGA,042626.001,3345.7471,N,11750.8451,W,1,04,8.7,32.28,M,,,,*16
Name Description Type Example
MsgID GGA Header $GPGGA
FixTime Fix Time (UTC) hh.mmss.sss 042626.001
Lat Latitude ddmm.mmmm 3345.7471
LatDirection
N = North
S = South
Lon Longitude dddmm.mmmm 11750.8451
LonDirection
E = East
W = West
FixQuality
0 = No fix
1 = Valid Fix

3.3 GLL – Geographic Position – Latitude/Longitude
This sentence contains the fix latitude and longitude.
$GPGLL,3345.7471,N,11750.8451,W,042628.001,A,A*4E
Name Description Type Example
MsgID GLL Header $GPGLL
Lat Latitude ddmm.mmmm 3345.7471
LatDirection
N = North
S = South
N
Lon Longitude dddmm.mmmm 11750.8451
LonDirection
E = East
W = West
W
FixTime Fix Time (UTC) hhmmss.sss 042628.001
FixStatus
V = No fix
A = Valid Fix
A
FixMode
N = No Fix
A = Autonomous Mode
A
ChkSum Checksum *4E


3.4 GSA – GNSS DOP and Active Satellites
This sentence contains the mode of operation, type of fix, PRNs of the satellites used in the solution
as well as PDOP, HDOP and VDOP.
$GPGSA,A,3,15,22,18,21,03,14,09,19,16,26,,,1.5,1.0,1.2*3E
Name Description Type Example
MsgID GSA Header $GPGSA
OpMode
A = Automatic
M = Manual (not used by Orion)
A
FixType
1 = No fix
2 = 2D fix
3 = 3D fix
3
SatID01 SV on channel 01 15
… … …
SatID12 SV on channel 12
PDOP Position Dilution of Precision 1.5
HDOP Horizontal Dilution of Precision 1.0
VDOP Vertical Dilution of Precision 1.2
ChkSum Checksum *3E


3.5 GSV – GNSS Satellites in View
This sentence contains the PRNs, azimuth, elevation, and signal strength of all satellites in view.
$GPGSV,3,1,10,03,37,299,47,09,15,094,41,14,34,193,49,15,68,031,52*72
$GPGSV,3,2,10,16,07,242,42,18,58,025,50,19,08,322,40,21,53,086,52*76
$GPGSV,3,3,10,22,62,292,50,26,06,035,37*70
Name Description Type Example
MsgID GSV Header $GPGSV
NumMsgs Total number of GSV sentences 3
MsgNum Sentence number (of the total) 1
NumSatView Number of satellites in view 10
SatID1 SV on channel 1, 5 or 9 03
Elevation1 Elevation (in degrees) 37
Azimuth1 Azimuth (in degrees True) 299
C/No1 C/No of satellite (in dB-Hz) 47
SatID2 SV on channel 2, 6 or 10 09
Elevation2 Elevation 15
Azimuth2 Azimuth 094
C/No2 C/No of satellite 41
SatID3 SV on channel 3, 7 or 11 14
Elevation3 Elevation 34
Azimuth3 Azimuth 193
C/No3 C/No of satellite 49
SatID4 SV on channel 4, 8 or 12 15
Elevation4 Elevation 68
Azimuth4 Azimuth 031
C/No4 C/No of satellite 52
ChkSum Checksum *72

3.6 RMC – Recommended Minimum Specific GNSS Data
This sentence contains the recommended minimum fix information.
See GGA for Fix Quality, Sats Used, HDOP, Altitude, Geoidal Separation, and DGPS data.
See GSA for Fix Type, PDOP and VDOP.
$GPRMC,042626.001,A,3345.7471,N,11750.8451,W,0.0,270.0,140707,,,A*77
Name Description Type Example
MsgID RMC Header $GPRMC
FixTime Fix Time (UTC) hhmmss.sss 042626.001
FixStatus
V = No fix
A = Valid Fix
A
Lat Latitude ddmm.mmmm 3345.7471
LatDirection
N = North
S = South
N
Lon Longitude dddmm.mmmm 11750.8451
LonDirection
E = East
W = West
W
Speed Speed (in knots) 0.0
Tcourse True Course (in degrees) 270.0
FixDate Fix Date (UTC) ddmmyy 140707
MagVar Magnetic Variation (in degrees)
MVdirection Magnetic Variation Direction (E/W)
Fix Mode
N = No fix
A = Autonomous
A
ChkSum Checksum *77


3.7 VTG – Course Over Ground and Ground Speed
This sentence contains the course and speed of the navigation solution.
$GPVTG,270.0,T,,,0.0,N,0.0,K,A*45
Name Description Type Example
MsgID VTG Header $GPVTG
Tcourse True Course (in degrees) 270.0
ReferenceT T = True T
Mcourse Magnetic Course (in degrees)
ReferenceM M = Magnetic
Speed Speed (in knots) 0.0
UnitN N = Knots (Nautical Miles per Hour) N
SpeedKPH Speed (in Kilometers per Hour) 0.0
UnitK K = KPH K
Mode
N = No fix
A = Autonomous
A
ChkSum Checksum *45

3.8 ZDA – Time and Date
This sentence contains UTC date & time, and local time zone offset information.
$GPZDA,042626.001,14,07,2007,,*54
Name Description Type Example
MsgID ZDA Header $GPZDA
Time hhmmss.sss 042626.001
Day Day (UTC) dd 14
Month Month (UTC) mm 07
Year Year (UTC) yyyy 2007
TZH Local Time Zone Offset Hours
TZM Local Time Zone Offset Minutes
ChkSum Checksum *54

credit:
http://www.micro-modular.com/

No comments:

Post a Comment