かみやんの技術者ブログ

主にプログラムの話です

2009-10-01から1ヶ月間の記事一覧

ウェイポイント選択追加

demruraさんのGUIをみて俺も自律走行の再開用に途中のウェイポイントから自律再開する機能を付けた。 上図、再開する場所を選択するプルダウンリスト本番では使用しないが、試験走行では必須の機能だ。(実装は3分で完了)その他、軽く30分ほど自律の試験を…

C#、EditBox高速化(ソース付き)

自律走行の試験を少しだけしてみたところ、LRF(Top-URG)の受信に遅延が起きたり、マイコン(SH7125)からの受信に遅延が起きたりした。いろいろなところの処理が重いからのようだ。 という訳で、コンソールログ用に.net framework標準のEditBoxが重いだろうと…

グローバルビューとローカルビュー

いままで、ログの再生で北を上とした地図表示で、ロボットはその推定された自己姿勢の方向を向いていた(グローバルビュー)が、今日は、ローカルビュー機能を追加した。 上図、今回追加したローカルビュー自律移動のアルゴリズムを考えたり、検証するのにグ…

Windows7インストール

PC

Windows7をインストールした。WindowsXPからのインストールだったので、新規インストール。 アプリの起動速い!!と喜んでいたが、ウィルスバスターを入れたらちょっと重くなったり。 でも全体的によいOSだ。タスクバーはMacのDockのようにランチャー兼用に…

大域経路ファイルとウェイポイント番号の描画

もうちょっとGPSとオドメトリと地磁気センサのセンサフュージョンをもうちょっと研究したいところだが、自己位置推定ばかりに時間を取られている訳にはいかないので、自律移動の準備に取り掛かる。 自己位置推定が強力(誤差±50cmぐらい)で、ナビゲーション…

コンパス角度オフセットと磁気ベクトルスケールのGUI化

先日のエントリ「地磁気センサ+ロータリーエンコーダ の可視化その2」で、TDS01Vの磁気ベクトルのY成分に0.55を掛けたらひし形問題がなおって長方形になったが、ハードコーディングで、GUI化しないとな。と書いたが、それを実装。あと、TDS01Vの設置向きが…

地磁気センサ+ロータリーエンコーダ の可視化その3

「地磁気センサ+ロータリーエンコーダ の可視化その2」のエントリの最後に、TDS01VのAzimuthモードでの可視化で、「激しく方位がぶれる、やはり磁気ベクトルで自分でスケールやオフセットしたほうがよいかも」と書いたが、地磁気ベクトル+ロータリーエンコ…

試走会その2のログ分析その2

このエントリ(「試走会その2のログ分析」)はGPSの軌跡だけを分析したが、GPSの衛星数をみてなかったので分析。 試走会その1では、GPSアンテナの位置が低かったので改良して、高さ1mほどの位置に上げた。 上図、試走会その1のときのGPS衛星数とHDOP(この…

地磁気センサ+ロータリーエンコーダ の可視化その2

昨日のエントリ「地磁気センサ+ロータリーエンコーダ の可視化その1」では、TDS01Vの磁気ベクトルの軌跡では、ひし形になってしまうという報告だったが、HMC6352のデータシートに「キャリブレーションでは、オフセットやスケールを調整します」というよう…

地磁気センサ+ロータリーエンコーダ の可視化その1

さっそく昨日のエントリ「TDS01Vのプログラム」で実装したプログラムで、試走したログ(地磁気センサ+ロータリーエンコーダ)を、統合して可視化してみた。 上図、緑が地磁気センサ+ロータリーエンコーダ、オレンジがロータリーエンコーダのみ。長方形に走…

TDS01Vのプログラム(C#、ソース付き)

今日は、昨日届いた3Dセンサー TDS01VをPC側制御ソフトのAibiUIに接続するプログラムを書いた。 GPS(アンタレス48)やLRF(Top-URG)では、シリアル接続して、要求を出したらデバイス側からデータが一方的にずっと流れてくるので、SerialPortの受信イベント…

TDS01V買ってみた

HMC1052Lでは、自分の回路のGNDが弱いせいか、三端子レギュレータの5V電源のみだと安定するが、12VのDC-DCの電源もONにすると誤差が大きくなって使えない。HMC6352は、I2Cなのだが、I2Cの経験がなく下回りのライブラリから作らないといけないので時間が足り…

磁気センサ HMC1052L 難しい

磁気センサのHMC1052Lだが、試走会でセンサの設置位置が悪くて、LRFの電源を入れたら全然動作しなくなったと書いたが、延長ケーブルを作って色々な位置に動かしてみたがうまくいかず。というか、どうもセンサの位置に関係なくLRFの電源を入れると安定しない…

C#でGoogle Static Maps APIの使い方(ソースコードあり)

C#でGoogle Static Maps APIで地図画像をダウンロードする方法を紹介します。 まず、 Google Static Maps APIの公式サイトを斜め読みする http://code.google.com/intl/ja/apis/maps/documentation/staticmaps/ APIキーを取得する http://code.google.com/in…

試走会その2のログ分析

試走会その2のログ分析。 上図、GPSのログをGoogle Earthで表示したところ。右上の池の中を走ったことになってしまっている。 上図、GPSのログをGoogle Mapsで表示したところ。同じく池の中を走っている。Webアプリのためかポリラインの頂点がはしょられて…

つくばチャレンジ2009 試走会その2

前日のTODO報告 昨日のエントリ(これ)で、TODOを並べたがまずは、その報告。 1.新ロータリーエンコーダのキャリブレーション、精度計測 上図、直進試験と旋回試験の記録。クリックで拡大できます。以前の自家製ロータリーエンコーダのときの試験結果はこち…

試走会その2、前日

明日は、試走会その2(自分が参加する試走会の2回目)。今日は、必死に改良予定。 前回の試走会から改良したことは、 車輪幅を9mmから21mmへ増強。U字溝のフタが乗り越えられなそうだったため。 ロータリーエンコーダを自家製から既製品に。前回の試走会で…