簡介
我們所說的GPS協定一般指:NMEA-0183協定
NMEA協定有0180、0182和0183這3種,0183可以認為是前兩種的升級,也是目前使用最為廣泛的一種
。NMEA-0183協定是GPS接收機應當遵守的標準協定,大多數常見的GPS接收機、GPS數據處理軟體、導航軟體都遵守或者至少兼容這個協定。也有少數廠商或軟體不支持NMEA-0183,購買和使用的時候需要注意識別。
NMEA 0183 GPS協定
該協定為NAEA 0183 2.0版,此協定是為了在不同的GPS導航設備中建立統一的RTCM標準。NAEA 0183語句以ASCII格式輸出,傳輸速率可自定義。
參數
NMEA通訊協定所定義的標準通訊接口參數為:
波特率:4800bit/s(預設值 );
數據位:8位;
停止位:1位;
奇偶校驗:無;
傳輸長度表:傳輸長度=傳輸總字元數/每秒傳輸數
波特率 | 每秒傳輸數 | 語句 | 最大字元 |
1200 | 120 | GPGGA | 72 |
2400 | 240 | GPGSA | 65 |
4800 | 480 | GPGSV | 210 |
9600 | 960 | GPRMC | 70 |
NMEA通訊協定所規定的通訊語句都已是以ASCII碼為基礎的,NMEA-0183協定語句的數據格式如下:“$”為語句起始標誌;“,”為域分隔設定;“ *”為校驗和識別符,其後面的兩位數為校驗和,代表了“$”和“*”之間所有字元的按位異或值(不包括這兩個字元);“/”為終止符,所有的語句必須以回車換行來結束,也就是ASCII 字元的“回車”(十六進制的0D)和“換行”(十六進制的0A)
在讀取輸出語句時數據之間最好用“,”區分,不要按位讀取,以保證應用程式的兼容性。
1、GGA
$GPGGA、<1>、<2>、<3>、<4>、<5>、< 6>、<7>、<8>、<9>、M, <11>、<12>*hh
<0>$GPGG,語句ID,表明該語句為GlobalPositioning System Fix Data(GGA)GPS定位信息
<1>UTC時間,hh mm ss格式(定位它的衛星提供)
<2>緯度dd mm mmmm 格式(前導位數不足則補0)
<3>緯度方向 (北緯)或S(南緯)
<4>經度ddd mm mmmm 格式(前導位數不足則補0)
<5>經度方向E(東經)或W(西經)
<6>GPS狀態指示:0—未定位, 1—無差分定位信息, 2—帶差分定位信息 ,3-無效GPS,6-正在估算
<7>正在使用的衛星數量(00- 12)(前導位數不足則補0)
<8>HDOP水平精度因子(0.5- 99.9)
<9>海平面高度(-9999.9- 99999.9)
<10>地球橢球面相對大地水準面的高度
<11>差分GPS信息,即差分時間(從最近一次接收到差分信號開始的秒數,如果不是差分定位將為空)
<12>差分站ID號0000 - 1023(前導位數不足則補0,如果不是差分定位將為空)
2、GSA
$GPGSA、<1>、<2>、<3>、<3>、<3>、<3>、< 3>、<3>、<3>、<3>、<3>、<3>、<3>、< 3>、<4>、<5>、<6>、*hh
<0>$GPGSA,語句ID,表明該語句為GPSDOP and Active Satellites(GSA)當前衛星信息
<1>定位模式M—手動,A—自動
<2>當前狀態 1—無定位信息,2—2D 3—3D
<3>PRN號01~32(偽隨機噪聲碼),當前信道(共12個信道)正在使用的衛星PRN碼編號(00)(前導位數不足則補0)
<4>PDOP綜合位置精度因子(0.5- 99.9)
<5>HDOP水平精度因子(0.5- 99.9)
<6>VDOP垂直精度因子(0.5- 99.9)
3、GSV
$GPGSV、<1>、<2>、<3>、<4>、<5>、<6>、< 7><4>、<5>、<6>、<7>*hh
<0>$GPGSV,語句ID,表明該語句為GPSSatellites in View(GSV)可見衛星信息
<1>GSV語句的總數目(1 -3)
<2>當前GSV語句數目(1 -3)
<3>顯示衛星的總數目00~12(前導位數不足則補0)
<4>衛星的PRN號星號(01- 32)(前導位數不足則補0)
<5>衛星仰角(00- 90)度(前導位數不足則補0)
<6>衛星鏇角(00- 359)度(前導位數不足則補0)
<7>信噪比(00-99)dbHz
*語句共兩條,每條最多包括4顆星的處所。每個星有4個數據,即<4>—星號 <5>—仰角<6>—方位<7>—信噪比
4、RMC
$GPRMC、<1>、<2>、<3>、<4>、<5>、< 6>、<7>、<8>、<9>、<10>、<11>、*hh
<0>$GPRMC,語句ID,表明該語句為RecommendedMinimum Specific GPS/TRANSIT Data(RMC)推薦最小定位信息
<1>定位時UTC時間hhmmss.sss格式
<2>狀態A=定位V=導航
<3>緯度ddmm.mmm 格式(前導位數不足則補0)
<4>緯度方向N(北緯)或S(南緯)
<5>經度dddmm.mmmm (前導位數不足則補0)
<6>經度方向E(東經)或W(西經)
<7>速率,節,Knots
<8>方位角(二維方向指向,相當於二維羅盤)
<9>當前UTC日期ddmmyy 格式
<10>磁偏角,(000- 180)度(前導位數不足則補0)
<11>磁偏角方向,E=東經 W=西經
5
$GPVTG、<1>、T、<2>、M、<3>、N、<4>K*hh
<0>$GPVTG,語句ID,表明該語句為TrackMade Good and Ground Speed(VTG)地面速度信息
<1>真實方向(000 - 359),(前導位數不足則補0)
T-正北參照系
<2>相對方向
M-磁北參照系
<3>步長
N-節,Knots
<4>速率
K-公里/時,km/h
例:$GPGLL,<1>,S,<3>,E,<5>,<6>*<7>
<0>:$GPGLL,語句ID,表明該語句為Geographic Position(GLL)地理定位信息
<1>:緯度ddmm.mmmm,度分格式(前導位數不足則補0)
<2>:緯度N(北緯)或S(南緯)
<3>:經度dddmm.mmmm,度分格式(前導位數不足則補0)
<4>:經度E(東經)或W(西經)
<5>:UTC時間,hhmmss.sss格式
<6>:狀態,A=定位,V=未定位
<7>:校驗值
1、NMEA接收語句
*GPS 25輸入語句,主要為初始化,參數設定導通過RXP管腳
(1)ALM(曆書信息)格式:$ GPALM、<1>、<2>、<3>、<4>、<5>、<6>、< 7>、<8>、<9>、<10>、<11>、<12>、<13>、 <14>、<15>、*hh
如果板上的備用電池耗完,用此語句初始化信息
<1>在曆書下傳時能將曆書總數傳至GPS板上,當傳送曆書到GPS板上此欄位可空或任意數。
<2>當前曆書數20這個欄位可為空或任意值;
<3>衛星PRN數不清0到32
<4>GPS星曆數
<5>SV狀態,每個曆書的17-24位
<6>離心率
<7>星曆參考時間
<8>傾角
<9>上升速率
<10>半軸
<11>近地點的末端
<12>節經度
<13>近點離角
<14>Afo 時間參數
<15> Af1 時間參數
hh:語句末端的hh為該語句的校檢符,應由用戶計算送給GPS 25板,計算規則為:“S”後的所有位元組的8個計,每4個組成一個BCD碼(A、B、C等套用大寫)。GPS 25輸出,語句後均有校驗位,用戶可通過它,驗證結果。
(2)初始化信息命令(僅在GPS 25上用)
$PGRMI用來初始化板子設定衛星位置和時間
該語句一般在裙位置和當前實際位置的距離超過800公里時使用,以回憶定位速度
格式:$PGRMI$GPALM、<1>、<2>、<3>、<4>、<5>、<6>、*hh
<1>緯度ddmm.mmm格式(初始化必須被寫入板子)
<2>緯度方向N或S
<3>經度ddmm.mmm格式(初始化必須被寫入板子)
<4>經度方向E或N
<5>當前UTC日期,kkmm yy格式
<6>當前UTC時間hhmm ss格式
(3)板子配置信息命令(僅用於GPS 25)
$GPALM配置接收板上的參數,存儲在備用電池上。
$GPALM、 <1>、<2>、<3>、<4>、<5>、<6>、<7>、 <8>、<9>、<10>、<11>、<12>、*hh< LF>
<1>合適的工作模式A——自動,2——2D模式,3—3D模式
<2>海平面高度-1500.00~1800.00米
<3>地理坐標索引
<4>用戶在地坐標
<5>用戶大地坐標精度
<6>用戶大地坐標 x軸
<7>用戶大地坐標 y軸
<8>用戶大地坐標z軸
<9>差分模式A—自動(激活時自動輸出差分信息)D—差分模式
<10>NMEA波特率1=200 2=2400 3=4800 4=9600
<11>速度濾波器狀態0=不過濾 1—自動 2~255=濾波器時間常數
<12>PPS模式:1=無Z=1HZ
波特率和PPS的改變在重新加電或PIN6初始化後發揮作用。
(4)輸出語句的激活(僅適用於GPS 25)
$PGRMO決定是否進行語句輸出。
$PGRMO<1>、<2>*hh
(1)語句描述
(2)語句模式0—關閉特殊1 —開啟特 2—關閉所有 3—開啟所有(除GPALM)
注意:(1)如果為2或3時,不做檢驗。允許有空欄位
(2)如果為0或1時,描述欄位必須被定義
(3)如果如果都不作用時(指上語句中<1><2>),該語句無影響
(4)$PGRMO、GPALM、1將傳送所有昨歷
2、NMEA的傳送語句
通過TXD管腳(GPS 25板上)
(1)傳輸速率
用戶可自定義
傳輸長度表傳輸長度=傳輸總字元數/每秒傳輸數
波特率 每秒傳輸數 語句 最大字元
1200 120 GPGGA 72
2400 240 GPGSA 65
4800 480 GPGSV 210
9600 960 GPRMC 70
GPVTG 34
PGRME 36
PGRMT 47
PGRMV 26
PGRMF 79
LCGLL 36
LCDTG 34
預設波特率為48000。
(2)時間傳輸
輸出UTC時間和日期,通過計算板上時間得到當前日期時間。
(3)全球衛星的星曆(ALM)
$GPALM、 <1>、<2>、<3>、<4>、<5>、<6>、<7>、 <8>、<9>、<10>、<11>、<12>、<13>、< 14>、<15>、*hh
I 不能正常傳送,要通過$PGRMO、GPALM、1命令初始化後得到
*在讀取輸出語句時數據之間最好用“、”區分,不要按位讀取,以保證應用程式兼容性
(4)位置信息(GGA)
$GPGGA、 <1>、<2>、<3>、<4>、<5>、<6>、<7>、 <8>、<9>、M, <11>、<12>*hh
<1>UTC時間,hh mm ss格式(定位它的)
<2>經度dd mm mmmm 格式(非0)
<3>經度方向 N或S
<4>緯度ddd mm mmmm 格式(非0)
<5>緯度方向E或W
<6>GPS狀態批示0—未定位 1—無差分定位信息 2—帶差分定位信息
<7>使用衛星號(00~08)
<8>精度百分比
<9>海平面高度
<10>*大地隨球面相對海平面的高度
<11>差分GPS信息
<12>差分站ID號 0000-123
(5) GPS DOP 和活動衛星
$GPGSA、<1>、<2>、<3>、<3>、<3>、<3>、< 3>、<3>、<3>、<3>、<3>、<3>、<3>、< 3>、<4>、<5>、<6>、*hh
<1>模式M—手動,A—自動
<2>當前狀態 1—無定位信息,2—2D 3—3D
<3>PRN號01~32
<4>位置精度
<5>垂直精度
<6>水平精度
(6)當前GPS衛星狀態(GSV)
$GPGSV、<1>、<2>、<3>、<4>、<5>、<6>、< 7><4>、<5>、<6>、<7>*hh
<1>GSV語句的總數目
<2>當前GSV語句數目
<3>顯示衛星的總數目00~12
<4>衛星的PRV號星號
<5>衛星 仰角
<6>衛星 鏇角
<7>信操比
語句共兩條,第條最多包括4顆星的處所。每個星有4個數據,即<4>—星號 <5>—仰角<6>—方位<7>—信噪比
(7)最簡特性(RMC)
$GPRMC、 <1>、<2>、<3>、<4>、<5>、<6>、<7>、 <8>、<9>、<10>、<11>、*hh
<1>定位時UTC時間hhmmss 格式
<2>狀態A=定位V=導航
<3>經度ddmm.mmm 格式
<4>經度方向N 或S
<5>緯度dddmm.mmmm
<6>緯度方向E或W
<7>速率
<8>方位敬愛(二維方向指向,相當於二維羅盤)
<9>當前UTC日期ddmmyy 格式
<10>太陽方位
<11>太陽方向
(8)VTG速度相對正北的方向
$GPVTG、<1>、T、<2>、M、<3>、N、<4>K*hh
<1>真實方向<2>、相對方向<3>步長<4>速率
(9)帶有LORAN ID的地理信息命令
LCGLL 報告位置信息
$LCGLL、<1>、<2>、<3>、<4>,<5>
1、 經度,ddmm .mm格式
2、 經度方向 N或S
3、 緯度,dddmm .mm格式
4、 緯度方向 E或W
5、 UTC時間(定位點)hhmmss格式
(10)帶有LORAN ID的軌跡,速度信息
LCVTG報告軌跡和速度信息
$LCVTG、<1>、T、<2>、、<3>、N、<4>,K,
1、 真實方向(相對於正北)
2、 相對方向
3、 步長
4、 速率
(11)評估錯誤信息
$PGRME 報告評估錯誤信息
$PGRME、<1>、M、<2>、M、<3>、M、*hh
1、 GPS星號(0-1023)
2、 附加PGS(0-604799)
3、 UTC日期(當前點)hhmmss格式
4、 UTC時間(當前點)hhmmss格式
5、 GPS跳躍秒數
6、 經度,ddmm.mmmm格式
7、 經度方向,N或S
8、 緯度,dddmm.mmmm格式
9、 緯度方向,E或W
10、模式 M="手動" A="自動"
11、定位類型 0=沒定位 1=2D 2=3D
12、速率
13、方位角
(13)狀態信息
$PGRMT、<1>、<2>、<3>、<4>、<5>、<6>、<7>、<8>、<9>*hh
報告板子狀態語句
1、 產品名稱,模式和軟體版本
2、 自測 P-通過 F-失敗
3、 接收檢測 P-通過 F-失敗
4、 儲存數據狀態 R-保留 L-丟失
5、 時鐘數據狀態 R-保存 L-丟失
6、 晶振檢測 P-通過 F-測試有誤
7、 數據採集 C-收集 空時為不收集
8、 板子溫度 ℃
9、 板子配置數據 R-保留 L-丟失
(14) 3D定位信息
$PGRMV、<1>、<2>、<3>*hh
1、 向東真實速率 -999.9 to 9999.9
2、 向北真實速率 -999.9 to 9999.9
3、 垂直速率 -999.9 to 9999.9
數據實例
$GPGSA,A,1,,,,,,,,,,,,,99.9,99.9,99.9*09
$PSNY,0,00,05,500,06,06,06,06*14
$GPVTG,000.0,T,,M,000.0,N,000.0,K*60
$GPGGA,062320,3537.8333,N,13944.6667,E,0,00,99.9,0100,M,,M,000,0000*7D
$GPGLL,3537.8333,N,13944.6667,E,062320,V*3B
$GPRMC,062320,V,3537.8333,N,13944.6667,E,000.0,000.0,030222,,*0D
$GPZDA,062320,03,02,2022,,*4E
$GPGSV,1,1,00,,,,,,,,,,,,,,,,*79
$GPVTG,000.0,T,,M,000.0,N,000.0,K*60
$GPGGA,062321,3537.8333,N,13944.6667,E,0,00,99.9,0100,M,,M,000,0000*7C
$GPGLL,3537.8333,N,13944.6667,E,062321,V*3A
$GPRMC,062321,V,3537.8333,N,13944.6667,E,000.0,000.0,030222,,*0C
$GPZDA,062321,03,02,2022,,*4F
$GPGSA,A,1,,,,,,,,,,,,,99.9,99.9,99.9*09
$PSNY,0,00,05,500,06,06,06,06*14
$GPVTG,000.0,T,,M,000.0,N,000.0,K*60
$GPGGA,062322,3537.8333,N,13944.6667,E,0,00,99.9,0100,M,,M,000,0000*7F
$GPGLL,3537.8333,N,13944.6667,E,062322,V*39
$GPRMC,062322,V,3537.8333,N,13944.6667,E,000.0,000.0,030222,,*0F
$GPZDA,062322,03,02,2022,,*4C