2011-10-11 84 views
2

我開發了一個使用PHP的GPS服務器。我能夠根據下面的字符串獲取來自Redview設備的數據。GPS跟蹤設備數據解釋

$$10737020005???&A9955&B085439.000,A,0116.8607,S,03645.5800,E,0.00,271.45,270911,,,A*7B|1.1|&C0000011111&D00269<21&E00000001&Y00000000## 

我設法將字符串拆分爲不同的部分,併成功地將數據存儲在MySql數據庫表中。

問題:

下面的字符串是什麼意思?

A*7B|1.1|&C0000011111&D00269<21&E00000001&Y00000000## 
+0

我已經測試了另一個設備,但不是根據我的配置給出單元ID,而是給出了完全不同的格式,如下所示:$$ h?sp _ÖU163240.298,A,0118.3741,S,03645.3077 ,E,001。 5,010.2,011011 ,,,其中$$ h?sp _ÖU應該表示單位ID。我配置的單位ID是10737020005.我該如何解釋這些數據。 –

回答

4

* 7B =校驗和,但其餘的可能是Redview在最後加入的專有數據。通常,公司將這些數據保密(儘管很多廠商已經對其進行了反向設計)並將其出售給開發人員。

查看維基百科對NMEA的條目以瞭解更多鏈接和信息。

+0

感謝您的反饋 –

+0

我已經測試了另一個設備,但不是根據我的配置給出單元ID,而是給出了完全不同的格式,如下所示:$$ h?sp _ÖU163240.298,A,0118.3741, S,03645.3077,E,001。 5,010.2,011011 ,,,其中$$ h?sp _ÖU應該表示單位ID。我配置的單位ID是10737020005.我該如何解釋這些數據。 –

+0

'$$ h?sp _ÖU'的十六進制代碼是什麼?當該十六進制轉換爲十進制時,它是否接近10737020005? – Crontab

0

這些字符串與Meilago,Bofan,Access Tech等消息非常相似,這是我以前見過的。檢查Redview網站我認爲他們出售的設備與我之前使用的設備完全相同;據我所知基本上相同的設備與幾個不同的品牌出售。我建議要求Redview提供協議文檔,或者檢查其他供應商:我找到了一個here,但還有其他幾個規格out there。其實我也發現了一個redview規格。

很難判斷你的字符串覆蓋哪個命令(客戶端設備消息類型),因爲相應的2個字節是??,並且沒有爲3F3F定義任何內容(假設ASCII編碼)。上面引用的子字符串是給定命令的具體數據。您可以檢查服務器端,可能是否有一切正常接收和記錄消息:我建議從套接字讀取整數(字節),並仔細記錄(例如編碼)。