NMEA 0183

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

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

NMEA 0183は、NMEA 0180とNMEA 0182の後継である。レジャーマリンではゆっくりと新しいNMEA 2000規格に移行しつつあるが[1][2]、商業船舶では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の会員を除く)[3][4]。しかし、そのほとんどは公開された情報からリバースエンジニアリング済みである[5][6]

シリアル通信 (データリンクレイヤ)

変調レート 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: GPGPS
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

NMEAメッセージは主に以下のセンテンスを含んでいる:

種類 説明
$Talker ID+GGA 位置、時刻、Fixに関するデータ
$Talker ID+GLL 地理的位置 - 緯度経度
$Talker ID+GSA DOP と 有効な衛星
$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 M2M[7] (suitable for NMEA compliant weather stations)
  • MapKing
  • gpsd - Unix GPS Daemon
  • GPSy X for Mac OS X[8]
  • Turbo GPS PC/PPC[9]
  • GRLevelX Weather Suite[10]
  • Google Maps Mobile Edition (Java ME Devices)[11]
  • JOSM - OpenStreetMap Map Editor
  • PolarCOM - a set of digital and analog NMEA instruments[12]
  • Avia Sail - PC instruments for both NMEA 0183 and NMEA 2000 [13]
  • ゼンリン電子地図帳[14]
  • スーパーマップル・デジタル 10(昭文社
  • カシミール3D[15]

関連項目

参照

  1. ^ “NMEA 0183 vs NMEA 2000” (2018年11月). 2020年10月20日閲覧。
  2. ^ Spitzer, Steve. (2009年5月). “NMEA 2000 white paper”. 2020年10月20日閲覧。
  3. ^ “Publications and Standards from the National Marine Electronics Association (NMEA) / NMEA 0183”. NMEA (2008年11月). 2013年10月21日時点のオリジナルよりアーカイブ。2013年10月21日閲覧。
  4. ^ “National Marine Electronics Association - NMEA”. www.nmea.org. 2020年9月24日閲覧。
  5. ^ Raymond, Eric S.. “NMEA Revealed”. 2022年12月30日閲覧。
  6. ^ Dale DePriest. “NMEA data”. 2020年10月20日時点のオリジナルよりアーカイブ。2020年10月20日閲覧。
  7. ^ http://mango.serotoninsoftware.com/
  8. ^ http://www.gpsy.com/
  9. ^ http://www.turboirc.com/tgps/
  10. ^ http://www.grlevelx.com/
  11. ^ https://www.google.com/mobile/default/maps.html
  12. ^ http://www.polarnavy.com/main/prod2
  13. ^ http://www.aviasail.com
  14. ^ ゼンリン電子地図帳Zi12 機能紹介 (株)ゼンリン
  15. ^ カシミール3D 初心者ガイド2.GPS機種の選定, DAN杉本

外部リンク

  • 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
GNSS
グローバル・コンステレーション
地域コンステレーション
終了
衛星航法補強
システム
衛星型 (SBAS)
  • アメリカ合衆国の旗 WAAS
  • 欧州連合の旗 EGNOS
  • ロシアの旗SDCM(英語版)
  • インドの旗 GAGAN
  • StarFire(英語版)
  • OmniSTAR(英語版)
  • 中華人民共和国の旗 SNAS(英語版)
地上型 (GBAS)
終了
  • GPS·C(英語版)
フランスの旗DORIS
DGXX
DGXX-S
  • アメリカ合衆国の旗フランスの旗欧州連合の旗Jason-3(英語版)
  • 欧州連合の旗Sentinel-3A(英語版)
  • 欧州連合の旗Sentinel-3B(英語版)
  • 欧州連合の旗アメリカ合衆国の旗Sentinel-6A(英語版)
  • アメリカ合衆国の旗フランスの旗SWOT(英語版)
終了
技術
チップセット
通信プロトコル
デバイス
地理情報サービス
共同プロジェクト
関連項目