ソースコード公開のスタンス
よくロボットを見ていて「このロボットはどんなソフトで動いている
のだろう?」と興味を持つ事が多いので、自分のロボットの制御ソフト
のソースコードを公開します。前作からの流用部分も多いため、
コメントが嘘になっている部分や、実験の途中で使った後
使われなくなっている部分等ありますが、適当にご覧ください。
これらソースコード
の中に利用可能な部分を見つけられた方は、ご自分の責任の下に、自由に
使っていただいて結構です。
総合動作テストとカメラの操作をするための画面です。起動するとこの画面が初めに表示されます。
露出調整操作や、頭についている2台のカメラでステレオ撮影した画像の確認などが出来ます。
関節テスト画面イメージ(2008/6/15版)
各関節を個別に操作するための画面です。以前のバージョンに合ったモーションのテストに関する
機能はとりあえず必要ないので、まだ移植していません。Pen4号から流用したソースとフォーム
なので、他の部分とプログラミングスタイルが違いますが、細かいことは気にせず使っています。
関節の番号と実際の場所の対応が分かりやすいように、CADのイメージを背景に張っています
移動テスト画面イメージ(2008/6/15版)
一定距離の移動や、左右の移動用モーターの同期に関する機能のテストをしたり、テストの途中で
操縦してロボットをスタートポイントへ戻したりといった用途の画面です。
GPSテスト画面イメージ(2008/6/15版)
garminのハンディGPSであるeTraxHを積んで、野外での移動テストに使った画面です。目標の
緯度経度の場所へW6を誘導したり、eTraxHのシリアルポートから出力される座標情報を表示したり
するための画面です。eHrexHが移動用マイコンが出す電波の影響で衛星を捕捉出来ないことに気がついた
ところで、一時中断しています。
ソースコードのダウンロード:
W6v5用
w6v5d(2008/06/15、VBのプロジェクトとフォーム)
機能概要:(メインCPU)
カメラから取り込んだ画像の認識(ごく簡単な図形を見分ける程度)や、その結果を
行動に反映する機能などPCとの接続を切って自律的に動くためのルーチンも
多少ありますが、基本的にPCの上位プログラムからから言われるとおりに
カメラを制御するプログラムです。
メインCPUとサブCPUの関係を簡単なたとえ話で言うと、PCの本体とその 周辺機器(プリンタとか)のような感じになっています。
機能概要:(No.1サブCPU)
移動距離の監視や、走行用DCモーターの制御など、走行に関する制御を行う機能があります。
機能概要:(No.2サブCPU)
RCサーボ(腕、首、腰)、加速度センサーおよびタッチセンサーとの
インターフェイスを担当します。2足歩行ロボット2L1/2L2のプログラムをベース
としています。メインCPUから各関節の目標角度データを受け取り、そのデータのとおりに
各関節を動かす等の機能があります。