GPX Logger For Mio
解説
GPX Loggerとは、Mitac Mio P350において、GPSの軌跡(トラック)データをGPX形式で保存するプログラムです。
GPX形式のトラックデータは、カシミール3DやGoogle Earthで読み込む事が出来。地図や衛星写真に軌跡を表示することができます。
Google Earthでの表示例
GPX Loggerを作るに至った経緯もお読みください。
注意
使用する前にお読みください。
- ここで配布しているプログラムは無償です。いわゆるフリーソフトです。
- 二次配布は止めてください。
- 販売しないでください。
- これらのプログラムを利用して何らかの不利益や損害が発生しても作者は保証責任を負わないものとします。いわゆる"自己責任"でご使用ください。
- 作者はプログラムのサポートに注力できなかったり、また技量の問題で要望や質問等を頂いても対応出来ない場合があります。
- 使用する前にこのページを全て読み、納得できた場合のみ、ご使用ください。
Mio活用日誌でもGPX Loggerに関する記事を投稿しておりますのでお読みください。
プログラムのダウンロードとインストール
※PDAに.Net Compact Framework 2.0を導入している必要があります。
.Net Compact Framework 2.0の導入は、
ここから"ダウンロードしてインストールしてください。
インストール方法:
以下からGPXLogger_Setup.msiもしくは
GPXLogger.CABのいずれかをダウンロードします。
それぞれインストール方法が異なります。
GPXLogger_Setup.msiのインストール方法
- ActiveSyncで母艦PCとMio P350を接続します。
- 母艦PCにてGPXLogger_Setup.msiをダブルクリックして実行します。
〜インストールウィザードが起動してインストールが始まります〜
- Mio P350にSDカードが挿入されている場合、デバイス(本体)にインストールするかStorage card(SDカード)にインストールするか問われるので、適宜選択してください。
GPXLogger.CABのインストール方法
- ActiveSyncで母艦PCとMio P350を接続します。
- ダウンロードしたGPXLogger.CABをActiveSyncのエクスプローラを使用してMio P350の内部に転送します。
(ActiveSyncを使用せずに、SDカードを使用してMio P350にコピーしても構いません。)
- Mio P350の[エクスプローラ]で、転送したGPXLogger.CABを見つけ、タップします。
〜インストールが始まります〜
- Mio P350にSDカードが挿入されている場合、デバイス(本体)にインストールするかStorage card(SDカード)にインストールするか問われるので、適宜選択してください。
正常にインストールされると、Mio P350内に以下の様にファイルが配置されます。(本体にインストールした場合)
| \Program Files\GPX Logger | フォルダ |
| \Program Files\GPX Logger\GPXLogger.exe | GPX Logger実行ファイル |
| \Program Files\GPX Logger\SettingsEditor.exe | SettingsEditor実行ファイル |
| \Program Files\GPX Logger\settings.xml | 設定保存ファイル |
| \Windows\スタート メニュー\GPX Logger | GPXLogger.exeへのショートカット |
| \Windows\スタート メニュー\プログラム\GPX Logger | GPXLogger.exeへのショートカット |
| \Windows\スタート メニュー\プログラム\GPX Logger SE | SettingsEditor.exeへのショートカット |
最新版の使用方法

あらかじめ、Windows Mobileの設定にて、左図の設定項目がチェックされているか確認してください。
[スタート]メニュー->[設定]->[システム]->[GPS]->[アクセス]
また、MioMapと併用する場合は
こちらの設定例を参照してください。
[スタート]メニュー -> [GPX Logger] をタップ。もしくは、[スタート]メニュー -> [プログラム]を開いて、[GPX Logger] をタップします。
起動すると、\Storage Card以下にGPXLoggerというフォルダを生成します。(既に存在する場合は作成しません)
もし、Storage Cardが無い場合は、ルート直下にGPXLoggerフォルダを生成します。
このGPXLoggerフォルダ内に、GPXファイルが生成されることになります。空き容量に注意してください。
※保存先ボリュームは設定ファイルsettings.xmlで変更することができます。settings.xmlはテキストエディタで編集する事も出来ますが、同梱のSettingsEditorを使用すれば、GUIで編集できます。
[Start]ボタンをタップすると、GPSデータの取得を開始します。
※settings.xmlで自動スタートが有効になっている場合は、GPX Loggerの起動と同時に[Start]ボタンが自動的に押されます。
開始後に最初の測位データを取得すると、タイムスタンプをファイル名としたGPXファイルを生成し、そのファイルにデータを記録します。
測位状態が続く限り、同じファイルに記録し続けます。
測位データを取得出来ない場合は、取得できるまで待機中になります。
測位中に信号劣化などにより、測位データを取得できなくなった場合は、SettingsEditorの<ファイル分割>の設定に応じて振る舞いが異なります。
ファイル分割が有効になっている場合は、現在開いているファイルを閉じ、次の測位まで待機状態になります。
ファイル分割が無効になっている場合は、ファイルを閉じず、[Start]〜[Stop]の間で1ファイルとなります。
ファイル分割の有効/無効の概念図
ファイルを閉じる際、書き込まれたポイント数が2個以下の場合はファイルを削除します。
よって、3ポイント以上のトラックファイルしか残りません。
ファイル分割が有効になっている場合、再び測位できると新たにファイルを生成し、記録を始めます。
[Stop]ボタンをダブルタップ(2回連続でタップ)すると、記録を停止しGPSデータの取得も終了します。
ファイル分割が無効になっている場合、開いているファイルを閉じます。
プログラムの終了は、メニューの[Exit]をタップします。
ログ取得中に[Exit]がされた場合は、自動的にファイルを閉じるので、ファイルが壊れる事はありません。
フォームの[X]をタップしても、バックグラウンドで実行し続けるので注意してください。
記録されたGPXファイルは、カシミール3D(Ver8.6.9以上)やGoogle Earthで直接読むことが出来ます。
注意
- このプログラムの実行中に、絶対にSDカードを抜挿ししないでください。
- 測位情報のファイルへの書き込みは、メモリにバッファしてから書き込む、といったことは行っておらず、逐次書き込んでいます。よって、SDカードに多くの書込みが発生します。SDカードの書込み回数による寿命などには一切配慮しておりません。この辺が気になる場合は使用しないでください。
SettingsEditor
GPX Loggerの設定情報ファイルである
settings.xmlをGUIで変更するフロントエンドプログラムです。
使用方法
- SettingsEditor.exeをGPXLogger.exeと同じ場所に置く。
- GPX Loggerが起動している場合は終了させる。
※GPX Logger起動中でも更新はできますが、GPX Loggerは起動時にsettings.xmlを読むので、次回GPX Logger起動まで設定は反映されません。
- SettingsEditor.exeをタップして起動。
- 各種設定を行う。
※"プログラム起動"の項目で、[参照]ボタンをタップして、連鎖起動させたいプログラムファイル(*.exeもしくは*.lnk)を指定するわけですが、WindowsMobileの標準のファイル選択ダイアログは、My Documents以下のファイルしか選択できません。よって、このままではMioMap.exeやPocketMappleD7.exeを選択する事が出来ません。
しかし、
WindowsCE FreeWare (ホーミン様)にて配布されている、gsGetFile.dllとFile Dialog Changerを別途インストールすることにより、My Documents以下のフォルダ以外のファイルを選択できるようになります。
- メニューの[保存して終了]をタップ。
- settings.xmlはSettingsEditor.exeと同じ場所に生成されます。
SettingsEditor.exeをGPXLogger.exeと異なるフォルダに置いてあっても実行は出来ますが、生成されたsettings.xmlをGPXLogger.exeと同じ場所に移動しない限り設定は反映されません。
- SettingsEditor.exeと同じ場所に既にsettings.xmlが存在する場合は、その設定値がSettingsEditorで読み込まれます。
設定ファイル(settings.xml)
GPXLogger.exeと同じ場所にsettings.xmlを置くことによって、GPX Loggerの振る舞いを変更することができます。
settings.xmlはXMLで記述します。
settings.xmlは
UTF-8エンコーディングに対応したテキストエディタ(Windows XPのメモ帳でも可能)で編集するか、同梱の
Settings Editorで変更してください。
settings.xmlはGPX Logger起動時に読み込みます。GPX Loggerが終了している状態で更新してください。
現時点で設定できる項目
| 保存先パス | ここで指定したパス以下に"GPXLogger"フォルダが生成されます。 |
| 最少ポイント数 | 1ファイルのトラックポイント数がn未満のファイルは残さない設定 |
| ファイル分割 | 測位〜ロスト毎にファイルを分割するか否かの設定 |
| 自動スタート | GPX Logger起動時に自動的に記録開始([Start]ボタンタップ相当)する機能の有効・無効の切り替え |
| 時刻補正 | GPX Loggerを起動し、記録を開始して最初の測位データで、本体の時刻を補正する機能の有効・無効の切り替え |
| サスペンドを無視 | ログ記録中はサスペンドを無効にする切り替え |
| プログラム連鎖起動 | GPX Loggerを起動時に他のプログラムを起動する機能
この機能は、GPX Loggerを常に他のプログラム(MioMapやPocketMappleDigitalなど)と併用して使用している場合に便利です。
settings.xmlに自動連鎖起動させたいプログラムのパスを登録しておけば、GPX Loggerが起動して5秒後に登録したプログラムが自動的に起動します。
|
設定例
| 1 : volume : 保存先パス |
"\"とすると本体に"GPXLogger"フォルダが作られ、その中にGPXファイルを生成します。
Mio P350の場合、"\Storage Card"とすると、SDカードに記録します。ただし、GPX Logger起動時にSDカードが認識できないとときは、アラートを表示して、本体に記録します。
本体に記録する例) <volume>\</volume>
SDカードに記録する例) <volume>\Storage Card</volume>
|
| 2 : minimumPointNumber : 最少ポイント数 |
1ファイルのトラックポイント数がn未満のファイルは残さない。
有効値 : 0〜255
空もしくはそれ以外の値は無効になります。
※ 0および1も実質的には無効と同等
例えば3と設定すると、1ファイルのポイント数が2以下のファイルは残しません。
残るファイルは3ポイント以上のトラックになります。
|
| 3 : filedivision : ファイル分割 |
測位〜ロスト毎にファイルを分割する。
次のいずれかの値で有効になる -> "enable", "on", "1"
それ以外か空の場合は、ロストしてもファイルを閉じない。
[Start]〜[Stop]の間で1ファイルとなる。
ファイル分割の有効/無効の概念図
|
| 4 : autostart : 自動スタート |
"enable", "on", "1"これらのいずれかの値にすると、GPX Logger起動時に自動的に記録開始します。([Start]ボタンタップ相当)
それ以外の値もしくは空で無効になる。
有効にする例) <autostart>enable</autostart>
|
| 5 : timeadjust : 時刻補正 |
"enable", "on", "1"これらのいずれかの値にすると有効になる。
それ以外の値もしくは空で無効になる。
有効にする例) <timeadjust>enable</timeadjust>
|
| 6 : launchapp : プログラム起動 |
ここに他のプログラムのパスを記述すると、GPX Logger起動時に他のプログラムも起動する。
例
| MioMapを同時起動させたい場合 | \MioMap\MioMapJPN\MioMap.exe |
| Pocket Mapple Digitalを同時起動させたい場合 | \Program Files\Shobunsha\PocketMappleD7.exe |
※あくまでも例です。実際のパスはユーザー自身でお確かめください。
|
setting.xmlは必須ファイルではありません。setting.xmlがGPXLogger.exeと同位置に存在しない場合、もしくは壊れている場合は、デフォルト設定として、以下の設定で動作します。
| 保存先パス |
\Storage Card |
| 最少ポイント数設定 |
0(無効) |
| ファイル分割 |
無効 |
| 自動スタート |
無効 |
| 時刻補正 |
無効 |
| プログラム起動 |
無効 |
settings.xmlはUTF-8エンコーディングで保存してください。
参考
MioMap(+裏技)とGPX Logger(060707版)で同時に取得したログの比較
距離 : 15.258km
所要時間 : 42分30秒
ログファイルサイズ
060710_070951.gpxがGPX Loggerで取得したGPXファイル 41KB
NMEALOG.TXTがMioMapの裏技で取得したNMEAログ 599KB
ポイント数(カシミール3DのGPSデータ編集画面)
上がGPX Loggerのログで366ポイント。
下がMioMapのNMEAログ(間引き無し)で2424ポイント
カシミール3D上でのイメージ
カシミール3Dの表示設定 : [速度による色分け], [色分け範囲]:0km/h 〜 100km/h, [色分けパターン]:レインボーカラー
※NMEAは間引き無し
| GPX Logger |
NMEA |
 |
 |
壊れたGPXファイルの復元TIPS
GPX Loggerは、1ポイント毎にファイルに書き込んでいます。なんらかのトラブルでGPX Loggerが異常終了した場合でも、その直前ポイントまでは記録しているはずです。
ただ、GPX(XML)の閉じタグが抜け落ちる可能性はあります。そうした場合、そのファイルをテキストエディタで開き、閉じタグ(</trkseg></trk></gpx>もしくは</trk></gpx>)を補って保存しなおせば、なんとか復元できると思います。
もしポイントデータの途中で途切れていたりする場合は、そのポイントデータを削除するか適当に補完し、</trkseg></trk></gpx>を追加して修復します。