April 18, 2006室内飛行機 航法系の検討訳あって、体育館などの室内で飛ばせる模型飛行機の自律飛行を検討しています。室内で飛ばせる、というのが非常に制約になっていて、まず機体が小さくなければいけません。重さでいうと、全体の重量では150g以下、制御用のハードウェアに割り当てられる重量は最大でも50g程度、と軽いものでなければいけません。そしてGPSといった便利なものを使うこともできません(予算の関係で、室内用のLocal Positioning SystemはNG)。 目標としては、室内で旋回飛行等の簡単な自律飛行ができればよいとのことで、また模型飛行機の制御用の数値モデルはある程度推算することができる予定なので、問題となるのは制御系ではなく、現在の位置や姿勢を求める航法系の部分になります。ということで、航法系を検討することになりました。 まず1つは機体に超音波センサと加速度計を搭載するプランです。超音波センサによって壁までの距離、つまり旋回のタイミングを計測し、かつ加速度計で重力方向をみることによって機体の姿勢を推定しようという作戦です。 もう1つはビデオカメラを使用して、機体の外部から位置や姿勢を推定してあげようというプランです。まず、機体にマーカーをいくつかつけておき、それを左右に配置した2台のビデオカメラから撮影して三角測量を行うことにより位置や姿勢が推定できるのではないか、と考えています。ビデオカメラ自体は幸い近くに何台かDVカメラがあり、また動画の処理についてもFirewireでパソコンと接続し、DirectShowのAPIを叩けばできそうな感じがしています。DirectShowの参考ページとしては、DirectShowのビデオキャプチャプログラミングやDirectShowプログラミング [VC++]がありました。 もしこれらの方法についてご感想・ご意見あれば是非コメント戴きたく思います。また、これら以外の方法も大募集中です、是非お教えください。 ※その後、プロポとPCを接続して飛行機を制御する方法を検討しています。 コメント
カメラを用いた空間中の位置取得を行う場合、問題となるのがビデオカメラの解像度の低さです。普通のDVだと720*480程度だったでしょうか。これだと縦に10bit、横に9bitよりも低い量子化を行うということになってしまいます。すると、部屋の大きさによるのですが、三角測量をカメラで行う場合、奥行き方向への解像度が著しく下がることになります。20cm前進しているのにX-Yピクセルが(1,1)しか移動していない、なんてことになりがちかと。同様に、機体の姿勢の検出は困難になります。 odawaraさん、コメントどうもです。 室内飛行機ですか?軽量化は空を飛ぶものの究極の課題ですね. 月並みな考え方ですけど,加速度,角速度を測定し,姿勢推定を行い,積分誤差,測定誤差,ドリフトなどが無視できなくなったら,画像センサなどで補正する方法が無難でしょうね. アクロバティックな飛行でなかったら,結構大胆な仮定を立てて,モデル化の後に実際に飛行させ,ギャップを埋める工夫を行えばそこそこうまくいくのではないでしょうか? ただ,体育館の中だったら,磁方位センサの較正を工夫しなければ使い物にならないのが欠点ですね. 室内の6面を全て異なる色使いにして,機首にカメラを取りつけたら,少なくともどの面に向いているぐらいかは分かるのではないでしょうか? 室内飛行機の自律飛行の実現を楽しみにしております.それでは. Posted by: Q太郎 : April 20, 2006 08:54 AMQ太郎さん、ご意見、ありがとうございます。 超音波を使って地上の基準点との距離を得て、それから3次元座標を得るのはどうでしょうか? GPSと原理は同じですので、Open source GPSと絡めることもできるでしょう。 GPSとは逆に機体に超音波送信機を積んで地上に受信機をおいたほうが超音波の混信がなくて楽でしょう。
爆竹銃さん、情報ありがとうございます。 コメントする
|
スポンサード リンク
|