「NMEA」は、GPSやその他の航法システムで使われる標準的な通信プロトコルの一つで、「National Marine Electronics Association(全国海洋電子機器協会)」の略です。
NMEAプロトコルは、GPS受信機が生成するデータ(位置、速度、時間など)を、外部デバイスやソフトウェアに伝えるためのフォーマットを定義しています。このフォーマットは、特に海洋でのナビゲーションシステムに対応するために開発されましたが、現在ではさまざまな用途で広く使われています。
主な特徴
- テキスト形式でデータを送信します。
- 各メッセージは「センテンス」と呼ばれる文字列で構成されています。
- センテンスは「$」で始まり、カンマで区切られたデータフィールドを含みます。
よく使われるNMEAセンテンスの例
- $GPGGA
グローバル位置データ(緯度、経度、高度、衛星数など)。- 例:
$GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*47
- 例:
- $GPRMC
推奨最小データ(位置、速度、UTC時間など)。- 例:
$GPRMC,123519,A,4807.038,N,01131.000,E,022.4,084.4,230394,003.1,W*6A
- 例:
- $GPVTG
地上速度と進行方向。- 例:
$GPVTG,054.7,T,034.4,M,005.5,N,010.2,K*48
- 例:
- $GPGSV
衛星の情報(信号強度、衛星番号など)。
NMEAの用途
- 航海や船舶のGPSシステム。
- ドローンや航空機のナビゲーション。
- 車載GPSシステム。
- スマートフォンや地図アプリでのGPS信号解析。
このプロトコルは非常に広く利用されており、NMEAフォーマットに対応しているアプリやデバイスは多いです。
あなた:
数字の意味を教えて
NMEAセンテンスの数字には、それぞれ意味があります。以下は、典型的なNMEAセンテンス(例:$GPGGAや$GPRMCなど)で使われるフィールドとその数字の意味を解説します。
1. $GPGGA(Global Positioning System Fix Data)
例:$GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*47
フィールドの構成
- 123519
- UTC時間(hhmmss形式)
例では「12時35分19秒」を意味します。
- UTC時間(hhmmss形式)
- 4807.038,N
- 緯度(ddmm.mmm形式)
- 48度07.038分、北緯(N)。
- 度(°)と分(’)に分かれており、緯度を表します。
- 緯度(ddmm.mmm形式)
- 01131.000,E
- 経度(dddmm.mmm形式)
- 11度31.000分、東経(E)。
- 経度(dddmm.mmm形式)
- 1
- Fixステータス(位置特定の状態)
- 0: Fixなし
- 1: GPS Fix(位置特定中)
- 2: DGPS Fix(高精度位置特定中)
- Fixステータス(位置特定の状態)
- 08
- 使用中の衛星数(最大12)。
例では、8個の衛星を使用していることを示します。
- 使用中の衛星数(最大12)。
- 0.9
- HDOP(水平精度低下率)
精度の指標(小さいほど精度が高い)。
- HDOP(水平精度低下率)
- 545.4,M
- 高度(海抜、単位はメートル)。
例では545.4メートル。
- 高度(海抜、単位はメートル)。
- 46.9,M
- ジオイド高さ(楕円体と海抜との間の差)。
例では46.9メートル。
- ジオイド高さ(楕円体と海抜との間の差)。
- ,,
- DGPSの基準ステーションID(省略されている場合もある)。
- *47
- チェックサム(データエラー検出用の16進数)。
例では「47」。
2. $GPRMC(Recommended Minimum Specific GPS/Transit Data)
例:$GPRMC,123519,A,4807.038,N,01131.000,E,022.4,084.4,230394,003.1,W*6A
フィールドの構成
- 123519
- UTC時間(hhmmss形式)。
例では「12時35分19秒」。
- UTC時間(hhmmss形式)。
- A
- データ有効性(A = 有効、V = 無効)。
- 4807.038,N
- 緯度(ddmm.mmm形式)。
例では北緯48度07.038分。
- 緯度(ddmm.mmm形式)。
- 01131.000,E
- 経度(dddmm.mmm形式)。
例では東経11度31.000分。
- 経度(dddmm.mmm形式)。
- 022.4
- 地上速度(ノット単位)。
例では22.4ノット。
- 地上速度(ノット単位)。
- 084.4
- 進行方向(真北基準、単位は度)。
例では84.4度。
- 進行方向(真北基準、単位は度)。
- 230394
- 日付(ddmmyy形式)。
例では「23日03月94年」(1994年3月23日)。
- 日付(ddmmyy形式)。
- 003.1,W
- 地磁気変化量(角度と方向)。
例では3.1度、西方向。
- 地磁気変化量(角度と方向)。
- *6A
- チェックサム。
数字のポイントまとめ
- 緯度・経度:度と分に分かれています。
- 時刻:UTC基準の24時間制。
- 高度・速度:メートルまたはノット。
- 衛星数・精度:現在のGPS状況を反映。
NMEAフォーマットに慣れると、これらの数字を解釈することで詳細な位置や移動情報が理解できます!