NMEA 0183 (krótko nazywany również NMEA) – opublikowany przez National Marine Electronics Association protokół komunikacji między morskimi urządzeniami elektronicznymi. Ma on powszechne zastosowanie w morskiej elektronice nawigacyjnej oraz urządzeniach nawigacji satelitarnej (GNSS). Jest następcą standardów NMEA 0180 oraz NMEA 0182, a jego następcą jest standard NMEA 2000.
Dane są transmitowane w postaci sekwencji zapisanych kodem ASCII. Pojedyncza sekwencja zawiera do 82 znaków. Sekwencje zawierają znaki ASCII o specjalnym znaczeniu:
| ASCII | Hex | Dec | Use | Znaczenie |
|---|---|---|---|---|
| $ | 0x24 | 36 | Start delimiter | Znacznik początku sekwencji |
| ! | 0x21 | 33 | Start of encapsulation sentence delimiter | Początek sekwencji z enkapsulacją (np. AIS) |
| , | 0x2c | 44 | Field delimiter | Separator pól danych |
| * | 0x2a | 42 | Checksum delimiter | Znacznik sumy kontrolnej |
| \ | 0x5c | 92 | TAG block delimiter | |
| ^ | 0x5e | 94 | Code delimiter for HEX representation of ISO/IEC 8859-1 (ASCII) characters | |
| ~ | 0x7e | 126 | Reserved | zastrzeżony |
| <CR> | 0x0d | 13 | Carriage return | Powrót karetki |
| <LF> | 0x0a | 10 | Line feed, end delimiter | Koniec linii, koniec sekwencji |
Przykładowa sekwencja NMEA0183 opisująca położenie w przestrzeni i dokładność odczytu:
$GPGGA,170834,N,4124.55000,08150.8500,W,1,05,1.5,280.2,M,-34.0,M,,,*75
| nazwa | przykładowa wartość | opis |
|---|---|---|
| $ | początek sekwencji | |
| identyfikator nadawcy | GP | GPS |
| rodzaj sekwencji | GGA | Global Positioning System Fix Data |
| czas informacji | 170834 | 17:08:34 UTC |
| szerokość geograficzna | 4124.5500, N | 41° 24,5500' N (41° 24' 33" N) |
| długość geograficzna | 08150.8500, W | 81° 50,8500' W (81° 50' 51" W) |
| jakość pozycji: | 1 | jakość ustalonej pozycji (0 - nieważna, 1 - GPS, 2- DGPS...) |
| liczba satelitów | 05 | 5 widocznych satelitów |
| Horizontal Dilution of Precision (HDOP) | 1.5 | dokładność pozycji (horyzontalna) = 1,5 |
| wysokość | 280.2, M | 280,2 ponad średni poziom morza |
| wysokość geoidy ponad elipsoidę WGS84 | -34.0, M | -34,0 metry |
| czas od aktualizacji danych DGPS | pusta | brak |
| identyfikator stacji nadającej poprawki różnicowe DGPS | pusta | brak |
| suma kontrolna | *75 | używana do kontroli poprawności sentencji |
Norma interfejsu NMEA 0183 definiuje wymagania dotyczące właściwości sygnału elektrycznego, protokołu transmisji danych oraz czasu oraz określone formaty zdaniowe dla 48-bitowej magistrali danych szeregowych. Każda szyna danych może mieć jednocześnie tylko jednego nadawcę lecz wielu odbiorców. Zadaniem tego standardu jest wspieranie jednokierunkowej transmisji szeregowej danych od jednego nadawcy do jednego lub większej liczby odbiorców.
Protokół NMEA może być wykorzystywany przez różne urządzenia. Rodzaj urządzenia można zidentyfikować za pomocą tak zwanego identyfikatora nadawcy.
Poniżej wyróżnione są główne identyfikatory urządzeń mogących wykorzystywać protokół NMEA 0183
| sekwencja | opis (ang.) | opis |
|---|---|---|
| AAM | Waypoint Arrival Alarm | |
| ABM | AIS Addressed binary and safety related message | |
| ACK | Alarm Acknowledgement | |
| ADS | Automatic Device Status | |
| AKD | Acknowledge Detail Alarm Condition | |
| ALA | Set Detail Alarm Condition | |
| ALM | GPS Almanac Data | |
| APA | Autopilot Sentence "A" | |
| APB | Autopilot Sentence "B" | |
| ASD | Autopilot System Data | |
| BBM | AIS Broadcast Binary Message | |
| BEC | Bearing & Distance to Waypoint - Dead Reckoning | |
| BOD | Bearing - Waypoint to Waypoint | |
| BWC | Bearing & Distance to Waypoint - Great Circle | |
| BWR | Bearing and Distance to Waypoint - Rhumb Line | |
| BWW | Bearing - Waypoint to Waypoint | |
| CEK | Configure Encryption Key Command | |
| COP | Configure the Operational Period, Command | |
| CUR | Water Current Layer | |
| DBK | Depth Below Keel | |
| DBS | Depth Below Surface | |
| DBT | Depth below transducer | |
| DCN | Decca Position | |
| DCR | Device Capability Report | |
| DDC | Display Dimming Control | |
| DOR | Door Status Detection | |
| DPT | Depth of Water | |
| DSC | Digital Selective Calling Information | |
| DSE | Expanded Digital Selective Calling | |
| DSI | DSC Transponder Initiate | |
| DSR | DSC Transponder Response | |
| DTM | Datum Reference | |
| ETL | Engine Telegraph Operation Status | |
| EVE | General Event Message | |
| FIR | Fire Detection | |
| FSI | Frequency Set Information | |
| GBS | GPS Satellite Fault Detection | |
| GGA | Global Positioning System Fix Data | |
| GLC | Geographic Position, Loran-C | |
| GLL | Geographic Position - Latitude/Longitude | |
| GNS | GNSS Fix data | |
| GRS | GNSS Range Residuals | |
| GSA | GNSS DOP and Active Satellites | |
| GST | GNSS Pseudorange Error Statistics | |
| GSV | GNSS Satellites in View | |
| GTD | Geographic Location in Time Differences | |
| GXA | TRANSIT Position - Latitude/Longitude | |
| HDG | Heading - Deviation & Variation | |
| HDM | Heading - Magnetic | |
| HDT | Heading - True | |
| HFB | Trawl Headrope to Footrope and Bottom | |
| HSC | Heading Steering Command | |
| ITS | Trawl Door Spread 2 Distance | |
| LCD | Loran-C Signal Data | |
| MDA | Meteorological Composite | |
| MSK | Control for a Beacon Receiver | |
| MSS | Beacon Receiver Status | |
| MTW | Mean Temperature of Water | |
| MWD | Wind Direction & Speed | |
| MWV | Wind Speed and Angle | |
| OLN | Omega Lane Numbers | |
| OSD | Own Ship Data | |
| R00 | Waypoints in active route | |
| RLM | Return Link Message | |
| RMA | Recommended Minimum Navigation Information | |
| RMB | Recommended Minimum Navigation Information | |
| RMC | Recommended Minimum Navigation Information | |
| ROT | Rate Of Turn | |
| RPM | Revolutions | |
| RSA | Rudder Sensor Angle | |
| RSD | RADAR System Data | |
| RTE | Routes | |
| SFI | Scanning Frequency Information | |
| STN | Multiple Data ID | |
| TDS | Trawl Door Spread Distance | |
| TFI | Trawl Filling Indicator | |
| THS | True Heading and Status | |
| TLB | Target Label | |
| TLL | Target Latitude and Longitude | |
| TPC | Trawl Position Cartesian Coordinates | |
| TPR | Trawl Position Relative Vessel | |
| TPT | Trawl Position True | |
| TRF | TRANSIT Fix Data | |
| TTM | Tracked Target Message | |
| VBW | Dual Ground/Water Speed | |
| VDM | AIS VHF Datalink Message: 1, 2, 3, 4, 5, 6, 8, 9, 12, 14, 18, 19, 21, 24, 25, 26 | |
| VDO | AIS VHF Datalink Own vessel report: 1, 2, 3, 4, 5, 6, 8, 9, 12, 14, 18, 19, 21, 24, 25, 26 | |
| VDR | Set and Drift | |
| VHW | Water speed and heading | |
| VLW | Distance Traveled through Water | |
| VPW | Speed - Measured Parallel to Wind | |
| VTG | Track made good and Ground speed | |
| VWR | Relative (Apparent) Wind Speed and Angle | |
| WCV | Waypoint Closure Velocity | |
| WDC | Distance to Waypoint - Great Circle | |
| WDR | Distance to Waypoint - Rhumb Line | |
| WNC | Distance - Waypoint to Waypoint | |
| WPL | Waypoint Location | |
| XDR | Transducer Measurement | |
| XTE | Cross-Track Error, Measured | |
| XTR | Cross Track Error - Dead Reckoning | |
| ZDA | Time & Date - UTC, day, month, year and local time zone | |
| ZDL | Time and Distance to Variable Point | |
| ZFO | UTC & Time from origin Waypoint | |
| ZTG | UTC & Time to Destination Waypoint |