Monday, June 18, 2012

GPSBabelでGT-730FL/Sからデータをダウンロード

GPSロガーのGT-730FL/Sを買ってからウォーキングや海外を含める旅行と出張は格段に楽しくなりました。しかし、愛用のPCが突然死んで、OSを入れ替えてから、 GT-730FL/S が使えなくなりました。

というのは、GT-730FL/SはUSBメモリとしてのインターフェースがなくて、付属のCanmore Phototrackrを使わないと、その中身(つまりログ)は全く見えません!おまけに、その付属のCDはいつの間にか見つからなくなってしまいました!!!

GT-730FL/Sは精度や、バッテリーの持ち等について評判が良かったし、自分でも大変気に入っています。しあkし、使い始めてから、すぐ「i-gotU GT-120の方は良いのでは?」と思いました。というのは、後者もサイズが小さく、感度がほどほどよく、記録ファイルはUSBで直接アクセスでき、値段もやすめということで評判が上々です。結局のところ、付属のソフトなくしてしまうことで、そのいやな予感はズバリ的中してしまいました。

悔しさのあまり、あちこち対策を探し始めました。まず、肝心のCanmore Phototrackrは何故かデモ版しかありません!ソフトウエア位公開しでもいいような気がしますが、気のせいでしょうか。それでも少し希望を感じたのは、USBドライバーだけはダウンロードできることです。Canmore社のダウンローページから、以下のファイルをダウンロードすればOKです。
PL2303_Prolific_win2000_XP_Vista_Win7_server2008(32&64bit).zip

まず、それをダウンロードしてインストールします。それから、GT-730FL/SをUSBポートに挿入すると、ドライバーは自動的にインストールされて、デバイスマネージャでは以下のように、Port(COM&LPT)に「Prolific USB-to-Serial Comm Port (COM29)」として認識されます。但し、COMの番号はここの環境によって違います。

その次はGT-730FL/Sを吸い上げられるソフトウエアを探してみました。2,3試してから、GPSBabelというオープンソースのアプリケーションを見付けました。オープンソースの割に、Windows、MacとLinuxともサポートするし、メージャーのフォーマットとフィルタをサポートします。もっと重要なのは、GT-730FL/Sに使われているSkyTraqのチップをサポートすることです!

早速ダウンロードして試しましたが、"skytraq: Too many read errors on serial port"と言われたり、"Error running gpsbabel: Process exited unsucessfully with code 1"と言われたりします。

念のために、同Canmore社のダウンローページから、"GPS Viewer"をダウンロードして、Portをスキャンさせてたり、ボーレートをスキャンさせたりしました。いずれも失敗しました。「Sorry! Not find SkyTraq GPS Device」という悲しいエラーメッセージが表示されいます。文法的にはおかしいことはさておいて、なんで見つからないでしょうと嘆くしかありません。

そうこうしている内に、GT-730FL/Sの電源をまだ入れていないことに気がつきました。早速GT-730FL/Sの電源を入れて、Connectボタンを押してみたところ、GPS Viewerから文字化けのメッセージが続々と表示され始めました。でも、デバイスが認識された気配はまだありません。同じようにポートとボーレートをスキャンさせても、デバイスがないと言われます。

もう諦めたところで、最終手段を思い出しました。考えてみると、実験開始してから、まだPCをリブートしていません。デバイスドライバでよくある話で、リブートするまで効かないことが多いです。

コンピュータをリブートして、GPSBabelを立ち上げてみると、早速変化がありました。何とGT-730FL/SのCOMポートを認識してくれました!早速出力ファイル名(File Name)をしていし、「Apply」を押しました。しかし!前回までみたいに、すぐエラーメッセージは表示しなくなりましたが、プログレスバーが表示されっぱなしで、一向に終了する気配はありません。やはりだめかと、今度こそあきらめ始めました。でも、ここまで来たら、終わるまで待とうと決心しました。

大分(10分か20分?)時間がたってから、やっと"Translation successful"というメッセージが表示されて、GPBSBabelは無事に終了したようです!出力フォルダ「C:\Program Files\GPBSBabel\」の下を見ると、指定したファイル名でちゃんとファイルが生成されました。感動の瞬間です!システムの画面は以下の通りです。但し、使っているのは、Windows版のバージョン1.4.2です。

因みに、以下の設定では問題なくできるはずです。
Input: device, Format=SkyTraq Venus based loggers(download)
Output: Format=GPX XML(カシミール3Dなら、GPX)
もっと詳しい画面については、英語ですが、Using GPSBabel to extract Canmore GT-730FL-S dataというページはとても参考になります。
最後ですが、時間がかかったのは、データ量が多いからです。できたXMLファイルは4MB強です。今時のPCにとっては、たかが4MBを読み込み・処理するのに、10分も20分も要らない様が気がします。でも、できればまず「万歳!」と言いたくなる状況ですので、とりあえず気にしないことにしました。

最後ですが、残念ながらいいことばかりではなかったようです。長いこと溜めっぱなしでしたので、すでにデータは満杯になったことを判明しました。仕様の256K点までというのは、思ったより少ないことを痛感させられました。これで、最近車で豪快に爆走した記録は幻の存在になってしまいました。早速optionsにあるeraseをチェックして、メモリをクリアしました。もっと早くトライすればよかった!

「おまけ」
実はGPSBabelはただの読み出しツールではなく、変換機能なども色々持っています。例えば、GPXフォーマットをどこでも使えるCVSフォーマットに変換するには、以下のコマンドを打てばよいです。
gpsbabel -i gpx -f input.gpx -o csv -F output.csv
自分のスタイルで変換したい場合、styleファイルを定義する必要があります。こうなると、ユーザマニュアルを研究しなければいけません。

そのマニュアルにある例では、経緯度と名前だけを出力します。例えば、GMT時間と現地(PCに設定されているタイムゾーン)の時間をも出力する場合、以下の内容でmy.style(名前は例であり、自由です)を作成しておく必要があります。
DESCRIPTION My CSV File for POI Loader
EXTENSION csv
FIELD_DELIMITER COMMA
RECORD_DELIMITER NEWLINE
BADCHARS COMMA
SHORTLEN 24
IFIELD LON_HUMAN_READABLE, "", "%08.5f"
IFIELD LAT_HUMAN_READABLE, "", "%08.5f"
IFIELD ALT_FEET,"","%.0f"
IFIELD GMT_TIME,"","%m/%d/%Y %I:%M:%D %p"
IFIELD LOCAL_TIME,"","%m/%d/%Y %I:%M:%D %p"
IFIELD SHORTNAME, "", "%s"
IFIELD DESCRIPTION, "", "%s"
OFIELD LON_DECIMAL, "", "%08.5f"
OFIELD LAT_DECIMAL, "", "%08.5f"
OFIELD ALT_METER,"",".0f"
OFIELD GMT_TIME,"","%m/%d/%Y %I:%M:%D %p"
OFIELD LOCAL_TIME,"","%m/%d/%Y %I:%M:%D %p"
OFIELD SHORTNAME, "", "%-.24s"
OFIELD DESCRIPTION, "", "%-.50s"
それから、以下のコマンドをすればよいです。
gpsbabel -i gpx -f 入力ファイル名 -o xcsv,style=MY.STYLE -F 出力ファイル名

ということで、散々手間暇をかけたお陰で、余計な(それから何より無駄な)出費を回避することができました!また、同じ方法は、同社のGT-760、GT-740FL、GT-730F、GT-730F(L)等にも適用できろと推測しています。勿論、他の会社の製品もサポートするように設計されているので、持っている方がいらっしゃれば、是非試していただきたい次第です。

【後書】別のPCで同じ手順を試してみましたが、Windows XPで、あまりソフトをインストールしていないせいか、GT-730FL/Sを接続してから、ser2pl.sysというファイルがないと言われました。探してみると、ser2pl.sysにありました。ダウンロードして、ドライバーのインストールを続けさせると、最後まで完成しました。さらにPCをリブートをすると、 見事にCOM3に接続されました!

【さらにおまけ】GPSを楽しむ方法は色々あるが、「SONY GPS-CS1K to Google Earth & Maps converter」を使って、取得したGPSのログをGoogle MapやGoogle Earthに重畳表示したり、一緒に撮影した写真に位置情報(ジオタグ)を付けたりすることも可能です。走行したロートを指定した速度で再生したりすることもできます。Google Mapに重畳表示するための出力は、独立HTMLファイルですので、自分のサーバーで公開することも可能です。
    最も魅力的なのは、このツールは、無料である上に、「ポータブル」(つまりインストールしなくて済み、どのPC上でも自由に実行できる)であることです。作者に感謝です!他のメーカーさんのものと一線を画しています。

No comments:

Post a Comment