以下分成四個部份
- PL-2303 USB-to-Serial 驅動程式
- 資料擷取軟體
- GPS 資料與圖資顯
PL-2303 USB-to-Serial 驅動程式
GH-625B 附了一條 USB 的傳輸線,內建了 PL-2303 的晶片,骨子裡是採用 Serial 的傳方式在傳輸資料,因此才會那麼慢。我們如果只是把 USB 接頭插入 Mac ,因為沒有裝 PL-2303 USB to Serial 的驅動程式,所以無法和 GH-625B 連線。因此首要之務是先把驅動程式的部份解決。只要到 GlobalSat (環天) 的網站或是 Prolific (旺玖科技) 的網站下載並安裝即可完成。
- GlobalSat (環天) http://www.globalsat.com.tw/
- Prolific (旺玖科技) http://www.prolific.com.tw/
如果是由旺玖的網站居然要先以帳號 guest、密碼 guest 登入後才能點選「技術支援」來下載「PL2303 USB to Serial Drivers」。
安裝完 PL2303 USB to Serial Drivers 會要求重新開機,開完機後,當我們把 GH-625B 的傳輸線插入 USB 接孔,手錶上就會出現是否要和電腦連線的對話了。
資料擷取軟體
在網路中找了半天,目前找到幾個和 GH-625B 連線讀取資料的方案:- LoadMyTracks http://www.loadmytracks.com/
- pykmaze https://github.com/eblot/pykmaze (原始版本不支援有分段計時的記錄)
- gh615 Project http://code.google.com/p/gh615/
- tz_gh615 http://www.tranzoa.net/tzpython/
LoadMyTracks 是 Mac 的 Native App,在 AppStore 中也找得到,不過,目前原始網站的版本比較新。因為它是視窗界面,使用起來會較直覺。
使用前要先到前述的網站中去將 LoadMyTracks 下載回來,然後就可以準備讀取 GH-625B 中的資料了。
連線讀取資料的操作程序如下:
- 把 GH-625B 和 Mac 連接好,出現「CONNECT TO PC」選擇「YES」。或是直接由 GH-625B 的選單中選取「CONNECT TO PC」等待啟動軟體連線。
- 啟動 LoadMyTracks 。
- 並選擇 GPS 的種類「GH-615」。
- 連接埠則選取「usbserial」。
- 最後按「Aquire」鈕,指定要儲存的檔名及路徑,即可下載 GPS 上的資料。
因為如果選取「GH-625」就無法連線,選擇「GH-615」反而可以。「Lap」的功能只有 GH-625 才有,也因為如此,如果原始記錄是有分段計時的,下載回來的會全部合在一起,不含 LAP 的資訊。而不同次的記錄可能還要用別的工具來把它們分割成不同檔案,這個是它的一個缺點。
MacMaze 這個在 AppStore 中可以買到的軟體也滿好用的,不過要 11 塊美金。它比較人性化一點,會先顯示目前有哪些 Tracks 可以下載,這樣就不用花很多時間等待。在 usglobalsat 的這個討論串中也可以找到 MacMaze 舊版的程式來試用,不過,因為如果沒有註冊,無法輸出成 GPX 檔案。
文字介面擷取軟體
pykmaze、gh615 Project 和 tz_gh615 三個都是以 Python 開發的程式,由於是針對 GH-615 和 GH-625 而寫的,它們的功能較多。不過,這三支程式都必須在終端機中下以指令來操作,不論是安裝及使用,親和力較不足。因為它們都是 Python 的程式,我們要先準備好以下的基本環境
Mac OS X 己經內建 Python (我的 OS X 10.6.8 中的是 Python 2.6.1) ,我們只要先把 pySerial 和 pytz 兩個 Python 的 package 下載回來,解壓縮並安裝即可。
以下載回來的 pyserial-2.6.tar.gz 為例,它的安裝程序如下:
tar zxvf pyserial-2.6.tar.gz
cd pyserial-2.6
python setup.py install
pytz 也是類似的步驟即可安裝完成。
pykmaze 、gh615 和 tz_gh615 三個各有優缺點,底下就我測試過的做一下筆記。
pykmaze
pykmaze 其實是針對 Geonaute Keymaze 500/700 GPS watch 而設計的程式,據聞是相容於 GlobalSat GH-615 的,因此可以拿來讀取 GH-625B 中的資料。不過,原始的 GH-615 firmware 是沒有分段計時功能的,以致於有 Lap 過的 Tracks , pykmaze 會出現「Multi-lap entries not supported」的訊息而無法繼續,即使把警告拿掉,強制它讀取資料,讀到的會只有第一段的資料。我追了一下這部份的程式碼,並對照了 GH-625 的通訊協定文件,主要是原作者有部份的資料未正確的解碼造成無法處理分段計時的 tracks。現在只要下載我修改過的程式,相信就可以順利的讀出 GH-625B 中的資料。下載處如下:
- eblot-pykmaze.tgz (modified by gsyan , 2012.08.07 updated)
下載回來的檔案只要先解壓縮即可開始使用
tar zxvf eblot-pykmaze.tgz
照上面的指令解開以後,所有的程式都放在 eblot-pykmaze/pykmaze 中,切換到該目錄中後,即可執行 pykmaze.py 這個主程式:
查詢有哪些參數可用:
./pykmaze.py -h
查詢裝置的訊息:
./pykmaze.py -i
查詢目前有哪些 tracks
./pykmaze.py -c
下載第一個 track 並儲存為 GPX 格式
./pykmaze.py -t 01 -x test.gpx
下載第一個 track 並儲存為 KML 格式
./pykmaze.py -t 01 -k test.kml
pykmaze 由 GH-625B 中讀取完資料後,會將資料儲存在目前帳號下的資料庫中 ( ~/Library/Application\ Support/Pykmaze/pykmaze.sqlite ),下次就直接從快取中讀取資料,提昇了資料讀取的時間。如果想強制它重新由 GH-625B 中讀取資料,我們只要在參數中加入「-f」,反之,電腦沒有連接 GH-625B ,我們可以在參數中加入「-o」讓它以 offline 的方式,由快取中讀取之前儲存過的資料。
以速度及穏定度來說,pykmaze 算是目前文字介面中最好用的。
補記:
- 查詢有哪些 port :
python -m serial.tools.list_ports - pykmaze.py 指定使用哪一個 port (ex. COM18), 測試:
pykmaze.py -p COM18 -i
gh615 Project
gh615 是 code.google.com 中的一個 project ,它是特別針對 GH-615 和 GH-625 而設計,功能算是最齊全,在 unix like 的終端機下也設計了對話框的方式來選取所要的功能。不過,在我的 MBP 中不知是哪裡有問題,有時能用,有時不能用。底下簡單的介紹一下它的使用方法。修改設定檔 config.ini:
設定檔中的 「comport」 可以讓我們指定連結埠,Mac 設為 「/dev/tty.usbserial」,其它作業系統可以參考裡面的說明設為適當的代號。
comport: /dev/tty.usbserial其它選項則可以不用更改。
接下來,我們就可以準備啟動程式囉!在終端機裡切換到 gh615 的目錄下,執行底下的指令:
python gh600_console.py
出現文字的對話框以後,就可以依自己的需求選取功能。
gh615 有個名為「exportTemplates」的目錄,裡面的檔案是輸出資料時的樣版,這個方便我們自訂輸出的檔案格式。
補記
如果出現這樣的錯誤訊息
File "templates.py", line 133, in <module>
from compiler.consts import SC_LOCAL, SC_GLOBAL, SC_FREE, SC_CELL
ImportError: cannot import name SC_GLOBAL
修改一下 tamplates.py
from compiler.consts import SC_LOCAL, SC_GLOBAL, SC_FREE, SC_CELL
改為
from compiler.consts import SC_LOCAL, SC_GLOBAL_IMPLICIT, SC_GLOBAL_EXPLICIT, SC_FREE, SC_CELL
GPS 資料與圖資顯示
底下先列一下蒐集到的免費軟體。下面的可以幫我們記錄分析蒐集的 GPS 資料
- Trailrunner http://www.trailrunnerx.com/
- SportsTracker http://sourceforge.net/projects/sportstracker/
- GpsPrune http://activityworkshop.net/software/gpsprune/index.html
下面的則可以讀入 GPS 資料後,幫我們在相片中加入「位置」資訊。
- GPS Photo Linker http://www.earlyinnovations.com/gpsphotolinker/
- gpicsync http://code.google.com/p/gpicsync/
- Others http://www.digitalphotographywriter.com/2010/07/geotagging-photos-gps-receivers-and.html
沒有留言:
張貼留言