かみやんの技術者ブログ

主にプログラムの話です

2009-01-01から1年間の記事一覧

計測自動学会 SI2009発表

今年も計測自動学会 SI2009でつくばチャレンジのレポートを発表してきました。 カルマンフィルタを勉強していなかったため、自分のアルゴリズムはカルマンフィルタと同じ結果とビッグボスに指摘されました。はずかしや。まぁ、自分はアカデミック側の人間で…

Robot Watchに掲載〜

ロボット暦2年目。ついにRobot Watchに自分のロボットが紹介されました〜(動画) http://robot.watch.impress.co.jp/docs/news/20091211_335295.html やー、予選落ちなのに動画で紹介してくれるとはありがたや。しかし、自分のロボット蛇行しすぎ。来年はも…

つくばチャレンジ2009 シンポジウム原稿

つくばチャレンジは、技術共有のためレポートの提出が(ほぼ)義務付けられている。私も他の人のレポートを毎年楽しみに読んでいる。 という訳で、休みの日に書いて提出しておいた。あとは、計測自動学会用のPPT書きか。どこで時間が取れるかな。 シンポジウ…

つくばチャレンジ2009 走行ログ分析その2

前回のエントリに引き続き、ログの分析。 上図、速度グラフ。秒速950mmということで、時速4km以下で走っているようだ。 上図、GPS。おおむね衛星数6〜7で良好。HDOPは2以下。 上図、バッテリー。上記3つは、AibiUIに可視化機能がないので(GPS衛星数、HDOP、…

つくばチャレンジ2009 走行ログ分析

ログ分析というか、まだログファイルを開いただけだが、 上図、トライアル1の走行ログ まず、AibiUIでは、走行軌跡として、 オドメトリのみ(オレンジ) オドメトリ+地磁気センサ(緑) GPSのみ(水色) 統合デッドレコニング(オドメトリ+地磁気センサ+…

つくばチャレンジ2009終了〜

11月20日、つくばチャレンジ2009のトライアル(予選)に行ってきました。結果は、第1走が、80m。第2走が、9m。結果、落選でした。残念。大会の方は、70チームほどが走って、5台が1kmを走破。 第1走のリタイヤの理由は、 長距離の壁沿い試験が不足で、わず…

残り12時間!

うーん、今日は雨。最悪です。寒い中、雨の中試走しましたが死にそうでした。LetsNote雨に濡れたが思ったよりも元気だ。明日は晴れることを祈る。 しかし、「あるがままの現実世界を走る」とボスがよく言っていますが、雨天決行とはシビアな競技大会だ。 さ…

つくばチャレンジ2009まであと1日!!

自律走行の調整をちょっとしました。前回「自律走行その2」で、ジグザグ走行かっこ悪い。と書きましたが、そのとき制御周期が遅いからだろうと書きましたが、ハンドルをゆっくり切ることでうまくいきました。そのために、PD制御だったのをPID制御に変えまし…

つくばチャレンジ2009まであと2日!

つくばチャレンジ2009まであと2日に迫りました。今日は、試走でモータホルダが破損。いまさら、MODELAを起動して補強パーツを削って補強した。あと、車検で安全のために車輪が見えていないほうがよいと指摘されたので、上をカバーした。 上図、車輪が見えて…

地磁気センサON/OFF

少しだけ改良。AibiUIの大域経路エディタで、右クリックでウェイポイントの削除だったところを、右クリックでコンテキストメニューを出して、削除とプロパティの2択にした。で、プロパティで、地磁気センサのON/OFFを設定できるようにした。これで、「この辺…

自律走行少し前進

屋内で、ロータリーエンコーダとLRFのみだと自律で走るが、外でGPSと地磁気センサを追加すると、マイコンに指令が行かなくて動かなかった問題ですが、GPSをONにしたときに地図を背景に描画する処理が重かったことが分かり、コメントアウトしたら動いた。 今…

自律走行進まず

うーん。週に1日しか開発の時間が取れないのは辛い。今日は、100m自律走行を目指して、朝から調整をしたが走らず。屋内での自律走行では、LRF+ロータリーエンコーダのみで走らせた訳だが、屋外では、それに加えてGPSと地磁気センサ(TDS-01V)が追加される…

自律走行その2

はじめての自律走行で壁に激突でしたが、激突した状態でステップ実行しまくってデバッグしました。やはりバグでした。 こんどは、USBコネクタが机の脚にぶつかって止まりましたが、手で押しました。自律じゃないです(汗)。 上の動画のパラメータは、通過可…

はじめての自律走行〜

自律走行1mぐらだったのですが、少しずつ調整してちょっと走るかもということで、撮影してみました。 まだジグザグ走行だったり、壁にぶつかったりですが、ちょっとうれし。この後も調整を続けて、ぶつからない、できれば滑らかな走り、どっかにはまったとき…

地磁気センサーTDS-01Vのカバー

今日は、自律走行のプログラムを書こうと思っていたがその前に少しだけ加工。地磁気センサーTDS-01Vが基板むき出しではちょっと雨でも走れないのでカバーをつけた。100円ショップで小さめのタッパーを買ってきた。 上図、2mmのアクリル板の上にタッパーのフ…

ウェイポイント選択追加

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アプリのためかポリラインの頂点がはしょられて…