Quantcast
Channel: Eric Gakstatter - GPS World
Viewing all articles
Browse latest Browse all 23

What Exactly Is GPS NMEA Data?

$
0
0

You may have heard about “NMEA data” with respect to GPS.

NMEA is an acronym for the National Marine Electronics Association. NMEA existed well before GPS was invented. According to the NMEA website, the association was formed in 1957 by a group of electronic dealers to create better communications with manufacturers. Today in the world of GPS, NMEA is a standard data format supported by all GPS manufacturers, much like ASCII is the standard for digital computer characters in the computer world.

The purpose of NMEA is to give equipment users the ability to mix and match hardware and software. NMEA-formatted GPS data also makes life easier for software developers to write software for a wide variety of GPS receivers instead of having to write a custom interface for each GPS receiver. For example, VisualGPS software (free), accepts NMEA-formatted data from any GPS receiver and graphically displays it. Without a standard such as NMEA, it would be time-consuming and expensive to write and maintain such software.

What makes NMEA a bit confusing is that there are quite a few “NMEA” messages, not just one. So, just like there are all kinds of GPS receivers with different capabilities, there are many different types of NMEA messages with different capabilities. Furthermore, NMEA data can be transmitted via different types of communications interfaces such as RS-232, USB, Bluetooth, Wi-Fi, UHF, and many others.

NMEA Message Structure

To understand the NMEA message structure, let’s examine the popular $GPGGA message. This particular message was output from an RTK GPS receiver:

$GPGGA,181908.00,3404.7041778,N,07044.3966270,
W,4,13,1.00,495.144,M,29.200,M,0.10,0000*40

All NMEA messages start with the $ character, and each data field is separated by a comma.

GP represent that it is a GPS position (GL would denote GLONASS).

181908.00 is the time stamp: UTC time in hours, minutes and seconds.

3404.7041778 is the latitude in the DDMM.MMMMM format. Decimal places are variable.

N denotes north latitude.

07044.3966270 is the longitude in the DDDMM.MMMMM format. Decimal places are variable.

W denotes west longitude.

4 denotes the Quality Indicator:

1 = Uncorrected coordinate

2 = Differentially correct coordinate (e.g., WAAS, DGPS)

4 = RTK Fix coordinate (centimeter precision)

5 = RTK Float (decimeter precision.

13 denotes number of satellites used in the coordinate.

1.0 denotes the HDOP (horizontal dilution of precision).

495.144 denotes altitude of the antenna.

M denotes units of altitude (eg. Meters or Feet)

29.200 denotes the geoidal separation (subtract this from the altitude of the antenna to arrive at the Height Above Ellipsoid (HAE).

M denotes the units used by the geoidal separation.

1.0 denotes the age of the correction (if any).

0000 denotes the correction station ID (if any).

*40 denotes the checksum.

The $GPGGA is a basic GPS NMEA message. There are alternative and companion NMEA messages that provide similar or additional information.

Here are a couple of popular NMEA messages similar to the $GPGGA message with GPS coordinates in them (these can possibly be used as an alternative to the $GPGGA message):

$GPGLL, $GPRMC

In addition to NMEA messages that contain a GPS coordinate, several companion NMEA messages offer additional information besides the GPS coordinate. Following are some of the common ones:

$GPGSA – Detailed GPS DOP and detailed satellite tracking information (eg. individual satellite numbers). $GNGSA for GNSS receivers.

$GPGSV – Detailed GPS satellite information such as azimuth and elevation of each satellite being tracked. $GNGSV for GNSS receivers.

$GPVTG – Speed over ground and tracking offset.

$GPGST – Estimated horizontal and vertical precision. $GNGST for GNSS receivers.

Rarely does the $GPGGA message have enough information by itself. For example, the following screen requires: $GPGGA, $GPGSA, $GPGSV.

VisualGPSView screenshot from VisualGPC LLC.

VisualGPSView screenshot from VisualGPC LLC.

The following screen, focused on the time capabilities of GPS, requires a slightly different set of NMEA messages: $GPGGA or $GPRMC or $GPZDA, $GPGSA, $GPGSV.

NMEATime screen shot by VisualGPC LLC

NMEATime screen shot by VisualGPC LLC.

The above screenshot examples are useful for the general GPS user. For high-precision GPS mapping and surveying, the $GPGST message is particularly useful. In fact, I would say it’s a requirement for high-precision users. The reason is that GPS metadata is very important for the high-precision user as a method of assisting in determining the quality of a particular GPS coordinate. Typical GPS real-time metadata used in understanding the quality of the GPS coordinate include: PDOP, # of satellites tracked, correction method, and horizontal/vertical standard deviation values. If a GPS receiver user has the ability to see this information in the field during data collection, they have a level of confidence in the precision of the GPS data they are collecting. If you’ve used RTK before, you probably recall the familiar HRMS (horizontal RMS) and VRMS (vertical RMS) values displayed on your data collection device. The $GPGST message generates those values.

DD.MMMMMMM, DDMM.MMMMM, or DDMMSS.SSSSS

One of the challenges in dealing with raw NMEA data (data not using a software like VisualGPS to decode it for you) is the format of the GPS coordinate. It’s not user-friendly. It’s expressed in DDMM.MMMMM; degrees, minutes and decimal minutes. To display the coordinate in a different format, there’s a useful Excel spreadsheet published by the UK Ordnance Survey.

UK Ordnance Survey Coordinate Calculator

UK Ordnance Survey Coordinate Calculator

To use the spreadsheet, simply enter the GPS coordinate in the format you have, and the spreadsheet will calculate and display the GPS coordinate in the other two formats.

Download the spreadsheet by clicking here: UK Ordnance Survey Excel spreadsheet coordinate calculator.

Thanks, and see you next time.

Follow me on Twitter at https://twitter.com/GPSGIS_Eric


Viewing all articles
Browse latest Browse all 23

Latest Images

Trending Articles





Latest Images