2012-05-10 65 views
0

我正在使用THIS文章和示例來測試我的GPS。 首先我必須說節目真的很棒,但我當然需要一些幫助。NMEA GPS沒有得到正確的座標格式

FIRST

所以我需要的是讓座標在十進制「正常」(正常的我所知)歐洲格式例如,作爲16,445554477東西... 在這裏我獲得學位這很好,但我需要它在十進制值。當我試圖把我在這個程序中得到的十進制值,我不知道如何使用它們,因爲我不熟悉這種格式。例如,我得到了5600,35568的東西......我不知道如何在谷歌地圖中表示它。

第二

我從GPS記錄數據到數據庫中。問題是我在一秒鐘內得到2-4條記錄。如何使其達到每秒一個數據?我試圖查看代碼,但沒有成功。

第三 - 最後

是如何實現這種數據從第一個問題到谷歌地圖API V3?

第一個問題是主要問題。其他兩個只有在有人知道該怎麼做的時候。

我相信很多人都有同樣的問題,因爲我。 當然有很多人解決了這個「問題」。 請給我一些例子。

有一個很好的編碼:)

乾杯!

+0

您有3個問題在這個問題上。請將其縮小爲一個問題(您可以在其他問題中提出其他問題)。 – user7116

+0

他們像小的子問題,第一個是主之一,另外兩個如果有人知道的東西 –

+0

[這不是StackOverflow的是如何工作的(http://meta.stackexchange.com/questions/39223/one-post-with-多問題 - 或 - 多職位)。 – user7116

回答

1

首先
您需要parse your NMEA string,你應該會喜歡串RMC

$GPRMC,092750.000,A,5321.6802,N,00630.3372,W,0.02,31.66,280511,,,A*43 

這對經度和緯度的信息。要將它們從度數轉換爲xy座標,請檢查此thread。一旦使用WGS84將它們轉換爲X Y座標,您就可以在Google地圖中使用它們。

通常GPS數據接收間隔爲1秒。我不確定你在一秒鐘內如何獲得2-4條記錄。但我建議你在每秒鐘後使用一個計時器並獲取記錄,並且只存儲你需要的記錄,就像你需要存儲GPRMC字符串中可用的基於位置的數據一樣。請檢查這個鏈接Writing Your Own GPS Applications: Part 2
第三
如果要顯示的位置基於谷歌地圖的第一個問題,你會發現很多幫助Google Maps API。我沒有使用這個API,但我曾與Android合作過。

+0

這是很好的答案,我必須說。你見過我已經鏈接的程序嗎?如果你有來源,他正在從度數到某些值做一些改變,但不是我需要的。所以我可以使用度並將它們轉換爲X Y座標系?你能看到這個例子嗎?也許我錯過了一些做類似事情的代碼。也許我可以做一些小的改變。 –

+0

@denonth,嗯是什麼樣的例子? – Habib

+0

第一句中的一個,點擊單詞本 –

0

某些代碼我發現在toptechboy.com

degWhole=float(int(GPS.longitude/100)); //gives me the whole degree part of Longitude 

degDec =(GPS。經度 - degWhole * 100)/ 60; //給我經度的小數部分 deg = degWhole + degDec; //給出經度度 完全正確的十進制形式如果(GPS.lon ==「W」){//如果你在西半球,經度度應該是否定的 度=( - 1)*度; }

希望它有幫助...