tkhshrsのログ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

今後の予定

渓流釣りシーズン開幕と共にガクッと衰える私の開発ペース。
来月からは完全にそっち方面に時間が使われる予定です。
要望等ございましたらお早めに。
CastNetの開発はそろそろ一段落というところで、その後はGpsPanelのリファクタ+機能追加をぼちぼちやろうかと考えております。機能追加は、高度のグラフ表示とかStandars版とかを予定しています。
スポンサーサイト

夏休みの自由研究8

横浜駅周辺のシミュレート結果を、ルートとして描いてみました。

sim5.jpg

1~10のピンが実際のルート、赤線が1点測位、青線が多点測位を表します。
青線はだいぶ実際のルートに近くなっているような感じですね。効果ありそうなので、次のMimicGpsアップデートの際に、実験的にこいつを入れてみようかと考えています。

[完]

夏休みの自由研究7

基地局の密度がそれなりに大きい横浜駅周辺では、平均化手法がまずまず効果をあげることがわかりました。
では、基地局密度が小さい場所ではどうかというと、下図(クリックで拡大)のとおり、計算に用いる基地局数を増やすごとに逆に平均距離差を広げてしまう結果となりました。

sim2.jpg

基地局密度が小さい場所では必然、電界強度が弱い(距離に対する精度が低い)データを拾いやすくなります。基地局数増加が平均距離差を広げてしまう原因は、この精度の低いデータを使用することに因るものだと思われます。
そこで、計算に用いるデータに電界強度の下限条件を与えてみることとしました。
下図(クリックで拡大)は電界強度の下限を40に設定した場合のシミュレート結果です。

sim3.jpg

平均距離差は基地局数:1の場合より少し小さくなくなりました。
横浜駅周辺地域を同じ設定でシミュレートした結果が下図です。

sim4.jpg

平均距離差はちょっとだけ大きくなりましたが誤差の範囲でしょう。
いろいろやってみましたが、以下の条件で計算した場合が疎地域、密地域のバランスがちょうど良い感じとなりました。
・計算に用いる基地局データの電界強度下限を40とする。
・基地局データの数については上限を設けない。
・重み付け係数 1/(80-s) s:電界強度

[つづく]

夏休みの自由研究6

その場所から観測できる複数基地局の座標の平均化することで、現在位置の精度を向上できるんじゃないかという前回記事のつづき。
ちょっと、シュミレーションしてみようということで、横浜駅付近を歩いて収集した基地局データをもとに、GPSデータと比較して一番距離差が少ないパターンを探しました。

重み付けの係数は、この図の回帰曲線を参考にして、とりあえず下記としました。
 1/(80-s)2 s:電界強度

まず、今までのやりかた、つまり一つの基地局座標を求めてそれを現在地とする方法の場合、平均距離差は142.9mと求まりました。
では、計算に用いる基地局数を増やしてみます。
下図(クリックで拡大)のとおり、3個、5個と増やしていくとだんだん距離差が小さくなっていくのがわかります。(お
sim1.jpg
基地局数:9の場合に平均距離差が72.6mと最小となりました。どうやら基地局数を増やすと結果が良いようです。

[つづく]

夏休みの自由研究5

前回示した確率的手法はGPSのやり方に近いもので、これが最善の方法の様な気がしますが、如何せん、これは計算が難しい。というか、俺のあたまでは解けん。(爆
まあ、解けたとしても、CPUリソースをたくさん消費するような計算になりそうなので、現実解じゃ無いような気がします。

なわけで、別のやつを考えました。
単純です、観測した複数の基地局の座標を平均化するというやり方。もちろん電界強度に応じてそれぞれの重みを変えてあげる必要があります。
これは、下記前提の上で有効です。
・PHS基地局は東西南北一定の幅をもって等間隔で配置されている。
・出力は全基地局とも、360°の範囲で一定。
・減衰要因は距離だけ。
ムシが良すぎる前提です。測定結果を否定してますし。
が、基地局の配置密度が大きい場所ではそれなりにハマるんじゃないかと想像します。

[つづく]

夏休みの自由研究4

電界強度と距離について、異なる場所で2回測定・分析したわけですが、その結果より、
電界強度からは、正確な距離を得ることはできそうもない
ことが確認できました。
距離が減衰要因の一つであることは間違いないのですが、障害物の有無だったり、設置位置(高さ)だったり、電波の指向性だったり、まあいろいろあるんでしょう。基地局の出力の強弱というそもそもの違いがあるのかもしれません。

もし正確な距離がわかると、最寄の基地局3箇所の距離を測定して測量的な手法で現在地をビシッと1点に確定する、なんていうことができるのですが、まあこれは無理だと。
しかし、電界強度がわかると、基地局までの距離のとりうる範囲はだいたいわかります。たとえば強度50dBであれば、だいたい300m以内にありそうだ、とか。
範囲がわかると、確率的な手法がとれますね。
measure.jpg
この図の様に、複数の基地局を観測し、各基地局への距離の範囲を重ねていくと、色が濃くなる部分があるので、そこが現在位置だろう。図では表されていませんが、一つの円のなかでも確率分布により色の濃淡ができますので、重なって一番濃くなる場所はきっと点になるでしょう。

[つづく]

夏休みの自由研究3

昨日、都会に行ったついでに基地局密度が大きい地域のデータを取ってきたので、前回と同じ様なグラフにしてみました。
cs_chart2.jpg
ビルの谷間を歩いたので、GPSの精度が出ておらず、したがってグラフの縦軸の信頼度は小さいです。サンプルも少ないのでスカスカの感じですが、なんとなく傾向はわかるかと。

[つづく]

夏休みの自由研究2

位置情報の精度UPに関する研究。
まずは、電界強度と距離の関係を調べました。

1.データの収集
・Ad/esで、30秒置きにAT@K10の結果(CSログ)をファイルへ収集。(自作ソフト使用)
・iPAQ rx5965で、GPSログを3秒置きに収集。(GPX Logger使用)
・収集場所は神奈川県郊外。基地局の密度はかなり疎な地域です。
・頻繁に移動。徒歩、自転車、バイク。遊びついで、です。
・暑かった。
2.データ加工(自作ソフト使用)
こちらのサイトで公開している全国の基地局を集めたpotファイルのデータを使用して、CSログに含まれるCSIDを座標に変換。(ここで測地系もWGS84へ変換)
・同じ時刻に収集したGPSログの座標を現在位置として、上で座標を得た基地局との間の距離を計算。(ヒュベニの距離計算式を使用)
・距離,電界強度を行としたcsvファイルを作成。
3.解析(Oooの表計算ソフト使用)
・2で作成したcsvファイルをOoo Calcに読み込ませる。
・グラフ作成で「散布図」を選択。回帰曲線として「指数」を選択。
 その結果できたグラフが下の図です。

cs_chart.jpg
[つづく]

夏休みの自由研究1

MimicGpsリリース記事のコメントで、複数のPHS基地局を観測して位置情報の精度を上げる方法があるっぽい、と教えていただきググらせてもらったところ、いくつかそれらしいことをやってらっしゃるアプリが見つかりました。

 locpost
 WSIMTracker

両者ともAT@Knコマンドを使用して、複数の基地局のCSIDと電界強度を得ているところまでは同じの様です。
locpostの方はその結果をCLUB AIR-EDGEに問い合わせて位置を解決している。
もう一方のWSIMTrackerは、デバイスローカルに配置したCSID→座標変換DBを使用して、独自のアルゴリズムにより現在位置を解決している。
いろんなやりようがあるもんですなあ。先達の知恵に脱帽。
わたくしとしては、後者のアプローチに興味深深。MimicGpsの精度UPのために似たようなことができるんじゃないかと。。。

今後の活動

MimicGpsをPocket Mapple Digitalの検索エンジンに使える、とコメントで教えていただき、私も実践してみたところ、確かに使えて、かつPMD本体の(住所|駅)検索よりも快適に場所の移動ができるように思いました。
この部分、もう少し拡張の甲斐がありそうです。次のアップデートはこっち関係の改造になるでしょう。
一方、できたらいいなあ、と考えているPlaceEngineとの連携は、作りこみは終わっているものの、その後の開発は頓挫しています。私のAd/esだけの現象かもしれませんが、無線LAN-ONの状態だと、クライアントが起動されないという問題があり、実機評価が進まないというのが原因です。次のPlaceEngineバージョンアップ以降に期待しています。

活動再開

いろいろあって休んでましたが、またはじめます。
GpsPanel関係の開発はとりあえず一段落したので、ブログタイトルを変更して出直しです。
新しく手に入れたAdvanced/W-ZERO[es]用のアプリなんかも、ぼちぼちリリースしていきたいと考えています。

WM6 SDKのFakeGPS

先に発表されたWindows Mobile 6 SDKsは、一種のリーク版だとWindows Mobile Team Blogに書いている雰囲気。正式版は3/1発表で、それには新しいドキュメントやその他諸々が付け加わるのだそうです。面倒ですが、入れなおさなければなりません。

その「先走り版」のWM6 SDKに、エミュレータ用の「FakeGPS」なるツールが新規に追加されております。
これは、字面どおりGPSを擬似するツールでして、別に用意したNMEAセンテンスが書き込まれたファイルを食わせて、その内容をそのままGPS APIから吐き出させるものです。
とても単純なツールですが、GPSアプリの開発者にとってはたいそうありがたいブツでございます、はい。ActiveSyncはぶちぶち切れまくるんで、実機デバッグはストレスが溜まるんですよね。

さて、このFakeGPSですが、日本版のWM5エミュレータでもインストールして難なく使えました。
設定画面は↓こんな感じです。

FakeGPS.jpg

次のページ

FC2Ad

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。