NMEA 0183 は、船舶用電子機器間の通信のための電気およびデータの複合仕様であり、音響測深機、ソナー、風向風速計、ジャイロコンパス、オートパイロット、GPS受信機(GNSS受信機)などの機器で使われている。GPS/GNSSについては、洋上でなく地上でも同じ仕様が使われている。

NMEA 0183は、米国海洋電子機器協会(National Marine Electronics Association, NMEA)によって定義・管理されている。

NMEA 0183は、NMEA 0180とNMEA 0182の後継である。レジャーマリンではゆっくりと新しいNMEA 2000規格に移行しつつあるが、商業船舶ではNMEA 0183が主流である。 詳細

電気的な規格は EIA-422 だが、NMEA-0183出力を持つほとんどのハードウェアは、EIA-232 (RS-232) ポートを駆動できる。標準仕様は絶縁された入出力を要求しているものの、この要件を満たさないハードウェアも多々存在する。

NMEA 0183は、単純なASCIIのシリアル通信プロトコルであり、データがどのように、1つの「トーカー (talker)」から複数の「リスナー (listener)」へと同時に「センテンス(sentence)」の形で送信されるかを定めている。

中間エクスパンダを使うことで、トーカーはほぼ無制限の数のリスナと一方向の通信を行うことができ、マルチプレクサを使うことで複数のセンサーが1つの計算機ポートに送信することができる。

この規格は、アプリケーション層において、各センテンス(メッセージ)タイプの内容も定義しており、これによりすべてのリスナーがメッセージを正確に解析することができる。

NMEA 0183は RS422 トランスポートのみを定義しているが、NMEA0183のセンテンスをUDPデータグラムに入れ(1パケットに1センテンス)、IPネットワークで送信する事実上の標準も存在する。

NMEA規格はプロプライエタリの規格であり、2020年9月現在、2000米ドル超で販売されている(NMEAの会員を除く)。しかし、そのほとんどは公開された情報からリバースエンジニアリング済みである。 シリアル通信 (データリンクレイヤ)

変調レート 4,800 データビット 8 パリティ なし ストップビット 1 ハンドシェーク なし

NMEA-0183HSという規格のバリエーションがあり、変調レートを38,400と規定している。これは、AIS装置(自動船舶識別装置)で一般的に使用されている。 メッセージ構造

送信データはすべて、0x20(スペース)から 0x7e (~) の間の印刷可能なASCII文字である。 データ文字は、予約文字(後述)を除く上記全ての文字である。 予約文字は、NMEA 0183 によって次の用途に使われる:

ASCII 16進数 10進数 用途 0x0d 13 キャリッジリターン 0x0a 10 ラインフィード ! 0x21 33 カブセル化センテンスの開始区切り $ 0x24 36 開始区切り * 0x2a 42 チェックサム区切り , 0x2c 44 フィールド区切り \ 0x5c 92 TAGブロック区切り ^ 0x5e 94 ASCII文字を16進表記するための区切り ~ 0x7e 126 予約済み

メッセージの長さは最長82文字。これには開始文字($または!)と、終了の <LF> を含む。 各メッセージの開始文字は、'$'(従来のフィールド区切りのメッセージの場合)または '!'(特別なカプセル化が施されたメッセージの場合)のどちらか。 次の5文字は、トーカー(2文字)とメッセージの種類(3文字)を識別する。 続くすべてのデータフィールドはカンマで区切られている。 データがない場合、対応するフィールドは空である(つまりカンマとカンマの間に文字を含まない)。 最後のデータフィールドの直後に現れる文字はアスタリスクであるが、これはチェックサムが提供された場合のみ含まれる。 アスタリスクの直後には、2桁の16進数で表されるチェックサムが続く。チェックサムは,$と*の間にあるすべての文字のASCIIコードの排他的論理和である。公式仕様によるとチェックサムはほとんどのデータセンテンスで任意だが、RMA、RMB、RMC では必須。 <CR><LF> でメッセージが終了する。

例として、軌跡到着アラームは以下の形式をもつ:

$GPAAM,A,A,0.10,N,WPTNME*32

これが表す内容は、

GP トーカID: GP はGPS AAM 到着アラーム A 到着円進入 A 垂線経過 0.10 円半径 N 海里 WPTNME 軌跡名 *32 チェックサム

また、AISメッセージの例としては:

!AIVDM,1,1,,A,14eG;o@034o8sd<L9i:a;WF>062D,0*7D

GPS, GNSS でのメッセージ種別の例

主要なトーカーID

BD, GB - 北斗衛星導航系統 (BeiDou) GA - Galileo GP - GPS GL - GLONASS

GQ - 準天頂衛星システム (QZSS) NMEAメッセージは主に以下のセンテンスを含んでいる: +種類説明$Talker ID+GGA位置、時刻、Fixに関するデータ$Talker ID+GLL地理的位置 - 緯度経度$Talker ID+GSADOP と 有効な衛星$Talker ID+GSV視界にある衛星$Talker ID+RMC最小限のナビゲーション情報$Talker ID+VTG地表における移動

ベンダー拡張

ほとんどのメーカーは、保守や診断の目的で、標準のNMEAセットに加えて、特別なメッセージを製品に含めている。拡張メッセージは、"$P" で始まります。これらの拡張メッセージは、標準化されていない。

NMEA 0183データを扱うソフトウェア

GPS、GNSSソフトウェア NetStumbler Rand McNally StreetFinder Magic e-Map NemaTalker NMEA instrument simulation Microsoft Streets & Trips Microsoft MapPoint Serotonin Mango M2Mhttp://mango.serotoninsoftware.com/ (suitable for NMEA compliant weather stations) MapKing gpsd - Unix GPS Daemon GPSy X for Mac OS Xhttp://www.gpsy.com/ Turbo GPS PC/PPChttp://www.turboirc.com/tgps/ GRLevelX Weather Suitehttp://www.grlevelx.com/ Google Maps Mobile Edition (Java ME Devices)https://www.google.com/mobile/default/maps.html JOSM - OpenStreetMap Map Editor PolarCOM - a set of digital and analog NMEA instrumentshttp://www.polarnavy.com/main/prod2 Avia Sail - PC instruments for both NMEA 0183 and NMEA 2000 http://www.aviasail.com ゼンリン電子地図帳ゼンリン電子地図帳Zi12 機能紹介 (株)ゼンリン スーパーマップル・デジタル 10(昭文社) カシミール3Dカシミール3D 初心者ガイド2.GPS機種の選定, DAN杉本

関連項目

NMEA 2000 ASCII グローバル・ポジショニング・システム シリアル通信 レイマリン

参照

外部リンク

National Marine Electronics Association NMEA's website about NMEA 0183 NMEA Protocol Conversion NMEA data information Sirf-Chipset NMEA data reference manual LGPL C library for parsing and generation of the NMEA protocol Open Source (New BSD License) C# library for parsing NMEA protocol NMEA Specifications at APRS Info MTK proprietary NMEA extensions