山歩き用のGPSナビを作ってみた。これが以外に役に立つ。 ![]()
1)システム構成
A.
ハードウェア
a)PDA本体:Hp iPAQ hx2490b (I/O:Bluetooth)
今回システムを構成するに当たり、「GPSレシーバーとPDAの接続は無線で行う」事をシステム要件とした。
山歩きで「GPSレシーバー」と「PDA」が有線で接続されていると障害物に引っかかり、接続が切断される危険があるからである。無線接続は、「山用ナビ」として必須の機能と考える。
b)無線接続にはブルートゥース(Bluetooth)を用いる事にした。
レシーバーとPDAを無線接続するに当たりGPSレシーバーにブルートゥース(Bluetooth)を搭載しているものが多く、PDA側もブルートゥースを内蔵するか、少し古いタイプでもコンパクト フラッシュ カード(CFカード)の口を持っている事がわかった。「CFタイプ」のBluetoothユニットも使えるようだ。
ネットオークションを見ていたら、1万円で 「iPAQ-hx2490b」が出品されていた、しかもこれはブルートゥース内臓タイプ。なのですかさずGET!
c)GPSレシーバーには「HAICOM社」の「408-BT(I/O:Bluetooth)」を選んだ。
理由は
① 出力フォーマットが NMEA-0183である事。
② Full充電で 8時間連続稼動のスペックである事。
③ 廉価
な点である。
「NMEA-0183」フォーマット仕様で出力してくれれば、Fukuroさん作成の「GarmapCE Ver_1.78」で追加された機能により、GPSデータをPDA側で処理できると考える。参考までに過去のWindowsCE利用のGPSナビ開発記録を検索したら次のような事例が見つかった。
ⅰ.WindowsMobile (PocketPC)でGPSを使う
ⅱ.ハンディGPSでポケットナビ
「GarmapCE」は「OS: Windows CE」が稼動要件である。幸い、「iPAQ-hx2490b」の「OS:Windows Mobile Ver_5.0」。
以上により、上記ハードウェア仕様に決定。下記ソフトウェア(何れも、Free ないし サービスソフト)を組み込む事にした。
B.)ソフトウェア
#OS:Windows Mobile 5.0(PDA_OS)
#PDA側ソフト
※Garmap CE(Free)
※HaiTest 3.0(製品付属品:408-BT付属 GPSモニター)
#パソコン側ソフト
※カシミール3D(Free)
※MapGrabber(Free)
※PotToKml(Free)
2)注意点と使用上の制約
このGPSは、専用機ではない。フリーのGPSアプリをPDA上にインストールして稼動させているので、信頼性は使用者自身がマッシュアップしていく事が前提となっている。使いこなすには習熟が必要である。又、携帯端末である事から電源は電池のみであり、電池の残量に注意を払う必要がある。
電池の残量、習熟の問題があるので自作したシステムの性能把握が出来るまでは、耐久性や信頼性が必要な山行きには使わない方が良い。当初は良く知っているコース等で十分に練習し、使い方を工夫していく必要があろう。電池は1個~2個の予備電池を準備する事をお勧めする。 3)ソフトウェアのダウンロード 上記ハードウェアで稼動するソフトウェアとして「PDA側」のメインウェアに「GarmapCE」を選んだ。PDAの処理能力上、GPSデータの処理や加工は、パソコン側で行うことにする。パソコン側のメインウェアに「カシミール3D」を選んだ。「カシミール3D」は、ダン・杉本氏開発による多機能で安定した素晴らしいフリーソフトである。 このシステムで利用するソフトウェアは、全てフリーウェアである。「このように便利なソフトをボランティアでよくぞ開発頂いた」といつも頭が下がる。開発者の皆様へこの場を借りて一言お礼申し上げます。 ソフトウェアは、以下のホームページからダウンロードすると良い。 A. マップ切り出しとキャリブレーションソフト a) 「グーグルマップ」を利用する場合 地図の切り出しに「MapGrabber」を利用します。 切り出した地図の分割と緯度経度キャリブレーションには「bmpdiv」を利用します。 ① 「MapGrabber」 #.開発者:YuriandViki : 閉鎖されました。 ② 「bmpdiv」(Bitmap分割プログラム) #.開発者:Fukuroさん : http://harukaze.sakura.ne.jp/garmap/download.html b) 「電子国土 ウォッ地図」を利用する場合(:「カシミール3D」の中で利用する場合) 地図の切り出し、分割とキャリブレーションには、プラグインの「マップカッター」を利用します。 ① 「カシミール3D」 #.開発者:Dan杉本さん : https://www.kashmir3d.com/ B. GPSレシーバー動作確認ツール(PDA側)のHAICOM HaiTest 3.0 #.開発者:Haicom社 : https://www.haicom.com.tw/index.aspx C. PDAへGPSデータを取り込むソフト「Garmap CE」 #.開発者:Fukuroさん : http://harukaze.sakura.ne.jp/garmap/garmap.html Garmap CEは「GARMIN GPS」と「Windows CEマシン」を接続して、GPSのデータ管理と、パソコン(?) ナビを行うソフトウェアです。 今回は、PDA端末へインストールする事によりPDAをガルミンGPSもどきとして利用します。 D. GPSデータ(NMEA-0183)処理 と パソコンNAVIソフトとして「カシミール3D」を利用します。 #.開発者:ダン 杉本さん : https://www.kashmir3d.com/ E. 取得データをGoogleに取り込めるようにデータ変換するソフト (2011/06/27 カシミール3D Ver 8.92 のリリースにより必須ではありませんがあれば便利です。) a) GPSデータ視覚化ツール t2g #.開発者:ETOH Hirokiさん : 閉鎖されました。 b) GarminデータからGoogleデータ作成ツール POT2KML #.開発者:にくだんごさん : https://www.geocities.jp/zymmt/ 4)ソフトウェアの機能(GarmapCE、GPSMonitor、カシミール3D、MapGrbber、その他) 今回のPDSを利用した「GPSナビシステム」では、上記のような仕掛けを用いて「自分の位置とその通ってきた軌跡」を明らかにします。そこで、このシステムの理解の為、誤解を恐れずに各ソフトの機能を独断と偏見で補足すると A.ビットマップ画像の切り出しとキャリブレーション、PDAへのMAPのアップロード カシミール3Dでは、Fukuroさんのマップカッタープラグインがインストールされるので「カシミール3D」で表示できる地図はビットマップ画像として切り出す事が出来ます。しかし「カシミール3D」ではグーグル地図を表示できないのでグーグル地図の切り出しには「MapGrabber」を用います。「MapGrabber」は、GoogleMapから目的の場所を切り出します。切り出されたビットマップ地図(形式:.jpg,.png,.tiff)は、適当な変換ツールを用い、「.bmp」形式へ変換後、GarmapCEで使えるよう「bmpdiv」で分割し、同時に緯度経度を割り振ります。(キャリブレーション)。 このようにして切り出され、何枚かに分割されたMapは、PDAにアップロードされて地図として表示され、その地図上へ、「GPS」から送られてきた現在位置が緯度経度座標に表示され、その軌跡が「Track」として表示されます。 B.GPSデータの受信とPDAでのナビ表示 GPSレシーバー「HAICOM HI-408BT」は、上空にある複数個のGPS衛星からの電波を受信しその電波から現在位置を割り出し内臓する発信機から「BlueTooth」電波へ乗せてデータを発信します。発信された電波は、PDAの「BlueToothレシーバー」で受信され、そのデータを指定されたCOMポートを通じて「GarMapCE」へ渡します。 「GarMapCE」は、GPSデータを「NMEA-0183」プロトコルとして理解し、データ処理を行います。 本ソフトは、「NMEAデータ」を指定フォルダへ収納すると同時にPDA画面へ表示します。また収納されたデータは、「NMEAlog」あるいは「POT形式」のデータファイルとしてパソコンへ出力出来ます。 パソコン上では、カシミール3D等ユーティリティソフトが利用出来ます。 C.パソコンにおけるGPSデータの加工処理 ・「カシミール3D」は、パソコンへ収納されたGPSデータを加工し、地図上に表現します。 ・パソコンへ取り込まれた「POT」データは、「PotToKML」ソフトにより「KML」データに変換出来ます。 D.GoogleMap上へのGPSデータの表示 ・「GoogleMap」は、「KMLデータ」をインポートして、Google地図の「MyMap」へ表示します。 以上が、このシステムのデータ処理の大筋と大まかな機能です。 5)インストールと操作 前提:PDAとパソコンは、既に接続され両者同期状態にあるものとします。 PDAにはBluetoothが組み込まれているものとします。 ※本説明はHP iPAQ hx2490b を例にBluetoothウイザードによるBluetooth接続設定から始めます。 A.GPSレシーバーとPDA間のBuluetooth接続 a) 屋外へ出て上空の見通しの良い所でGPSレシーバー「HAICOM HI-408BT」の電源スイッチを「ON」にすると、レシーバー表面の2個のLEDインジケーターが点燈・点滅します。 ① GPSインジケーター(上側):緑色点燈 ② ブルートゥースインジケーター(下側):青色点滅 しばらくして、GPSインジケーターが緑色点滅に変われば、GPSとレシーバー間が接続された事を示します。 b) PDAの電源スイッチを入れブルートゥースをアクティブにします。(以後、ブルートゥースのプロファイルを作成する手順はPDAにより異なります。詳細はPDAのマニュアル等を閲覧下さい。 ここでは、iPAQ:hx2490bをベースにインストール方法を紹介します。)
C.GarmapCEのインストールと接続設定
a)インストールの手順
GarmapCEは、WindowsCE以後のOSが装備されたPDAモバイル端末上で稼動し、NMEA-183プロトコルデータを処理・ファイル化すると同時に、緯度・経度整合されたビットマップ地図で、現在地を表示するフリーウェアソフトです。今回はこのソフトをPDA側のメインウェアとして利用します。
GarmapCEは、メモリー的に制限された端末上で稼動させる為、手動でインストールします。PCアプリの自動インストールとは少し勝手が違いますが難しいものではありません。
インストールを実行するためには、GarmapCEを搭載するPDA端末が、母艦となるPC親機と接続・同期されている必要があります。
①
GarmapCEは、フリーウェアなので予め、FukuroさんのWEBサイトから
gmce178_pocketpc_arm.zip
mfc_pocketpc300_arm.zip
ファイルをダウンロードし、両圧縮ファイルを解凍しておきます。(ダウンロードの項参照)
②
PDAを起動し、パソコンと接続・同期します。
③
eXplorer等ファイル編集ソフトを使い、下記のファイルをPDA上の指定されたフォルダへコピーします。
④GarmapCE.exe ----> 適当なフォルダ
mfce300.dll ----> ¥windowsフォルダ
zlibce.dll ----> ¥windowsフォルダ
gsgetfile.dll ----> ¥windowsフォルダ
⑤
一度PDAをシャットダウンして、再起動します。スタートメニューをタップし、GarmapCEのアイコンがメニューの中に表示されているか確認します。
⑥
表示されていなければ、それぞれのPDAの操作マニュアルに従ってGarmapCE.exeをスタートメニューへ登録し、表示されるようにします。
⑦
表示されたら、PDAを再起動後、アイコンをタップし、GarmapCEの起動を確認します。
![]() ![]() ![]()
D.カシミール3Dのインストール
「カシミール3D」のダウンロードでは最新版スタータキット(現在のVer.:8.9.2) をダウンロードします。ダウンロードしたらファイルを解凍します。
OSがwindowsVista/7の方はこちらも参考にしてください。windous Vista/7 のインストール
解凍後 「setup.exe」ファイルをクリックすると「カシミール3D」のインストールが始まります。インストーラーの案内に従ってインストールを進めます。
「発行先を確認できませんでした。」と警告が出ますが、かまわずインストールを継続してください。標準でインストールします。プラグインも、取り敢えず全部インストールします。このソフトへ習熟してから不要なものを外せば良いでしょう。
インストールが終了したら、マニュアルをダウンロードし、初期設定・操作方法等を確認します。マニュアルはこちら。
E.POT2KMLのインストール
2011年6月27日(月) カシミール3D Ver. 8_9_2がリリースされた。
このニューバージョンではGPSデータ(~.nmea や ~gdb ~.pot)を 「kml ファイルへ変換」し、「kml ファイル」で書き出しできる機能が追加された。これにより、「POTtoKML 変換ツール」は必須機能ではなくなった。
しかし、「KMLファイル」を「POTファイルへ変換」したい場合には相互変換機能を持っているのでインストールしておくと便利に使えるソフトである。インストールはファイルを解凍し適当なフォルダへコピーするだけであるし、ファイルサイズも小さいので、このツールのインストールもお勧め。アンインストールは 実行ファイル(~.exe)を削除するだけなので不要ならば何時でも削除できる。 その他の使い方については、ファイル解凍時のread.meを参照して下さい。
F.MapGrabberのインストール
MapGrabberは、画像ファイルを切り取り、ビットマップファイルとして保存するフリーソフトです。
a)機能
MapGrabberで切り取る事が可能な画像ファイルは、ディスプレイに表示されている範囲だけでなく、表示できなくて隠れている部分も切り出すことが出来ます。つまり表示サイズにかかわりなく、いわば仮想ディスプレイに表示されている部分の画像から、一部または、全体を一枚または、複数枚の画面に分割して切り出し、ビットマップファイルとして保存します。
また、オリジナル画像が地図画像であって、緯度・経度情報を持っているときは、切り取った地図画像へ緯度・経度情報を付加する「キャリブレーション機能」もあります。しかしMapGrabberのこの機能はGarmapCEと仕様が異なるためMapgrabberの .gmiファイルから、切り出し範囲の座標を導くにはテクニックが必要です。 そこで、MapGrabberは、グーグルマップの切り出しのみに利用し、分割とキャリブレーションは「bmpdiv」を利用する事にしました。この機能により「MapGrabber」で切り取られた画像は、PDA上で「GarmapCE」を用いて表示出来る為、位置情報を併せて表示する事が可能になり、ナビゲーション機能を持つ事が出来ます。
b)インストール
①
MapGrabber1.2.3Installer.zipを適当なフォルダへダウンロードします。
②
MapGrabber1.2.3Installer.zipをダブルクリックにより解凍し、setup.exeをクリックします。
③
ショートカットアイコンを作成しデスクトップへコピーしておきます。
c)
画像(地図)の切り出し
地図の切り出し方については、こちらの説明を参照してください。但し地図画像として利用するためには、以下の点に注意してください。
①
Capture Settingsの、Delays(sec)は、パソコンのスピードと深く関係します。時間は、少し余裕を持ってセットする必要があります。余裕を持たないと、画像が跳んでしまったり、画像再生時に接合部が不整合を生ずることが在るようです。
②
CaptureX/Y Screensは、MapSetting で指定した「Mark Left( Top )」 と「MarkRight( Botom )」で出来る矩形(要素矩形(x・y))を単位スクリーンとして、X方向・Y方向のサイズを指定するものです。設定が(X=4,Y=4)であれば、横方向:4x、縦方向:4yの矩形範囲を切り出します。
③
Output Image Setting (x/y) は、Capture X/Y で切り取った画像を、要素矩形サイズを基準として指定したサイズの矩形に分割して出力します。つまり Capture Size と Output Image Setting Size が同じ設定の場合は「Capture Size と同じサイズの出力を指定した事になる」のでファイルは、1個作成されます。つまり統合された一枚の画像で切り出される事になります。
式で表現すると
a=X/x , b=Y/y
(但し、 a, bは 3以上の整数である事。)と置いた時
作成されるMap枚数を C とすると
C =a x b
④切り出しの手順
![]()
| トップ
ホーム
|
|