RoboDesignerを用いたオープンキャンパスプロジェクト2008 Bチーム
Bチーム(高丸・宮田)の部屋
目次
はじめに
オープンキャンパスにおいて私達(高丸・宮田)のチーム(Bチーム)はRoboDesignerを用いてサッカーロボットを製作しました.
このページではBチームのロボットを紹介します.
ロボットの構造
コントローラ (RDC-101)
コントローラボードとしては「RDC-101」を使用しました. ここで,コントローラボードには入出力コネクタが付いています. 入出力コネクタとはコントローラが信号をセンサから入力し,モータ,第3モータへ出力するために使用します. 今回のコントローラではこの入手力コネクタはモーター用に5つ分の使用するスペースが設けられていてアナログ入出力が2つにデジタル入出力が4つ使えるようになっていました. 今回のロボットではセンサとして以下に記述する「タッチセンサ」,「IRセンサ」,「コンパスセンサ」を使用しましたが, 入出力コネクタとセンサの入力をうまく考えた上でロボットを製作しました.
センサ
ロボットには以下の3つのセンサを使用しました.
- タッチセンサ×2
説明
先端がバネによってできているセンサです.バネが何かに触れるとコントローラにデジタルの値を出力します. 今回は二つのセンサを使用していますが,これは直列でつないでいます. そうすることで,二つのうちどちらかが反応すればもう一つのセンサも反応するようにしています. また,そうすることでコントローラの使用コネクタ数を節約しています. - IRセンサ×3
説明
センサが検出した赤外線の量をコントローラにアナログまたはデジタルの値で出力します. 今回はサッカーロボットを製作していますが,サッカーロボットがサッカーをするためのボールが強い赤外線を発光するものを使用するため, この「IRセンサ」でボールの位置を検出しています. また,サッカーフィールドも各タイルごとに色が異なるため同様に「IRセンサ」によって自分の位置を検出します.
IRセンサは赤外線発光ボールを感知するための物としてデジタルとアナログを1つずつ使用し,床の色を検出する物としてアナログを一つ使用しています. - コンパスセンサ×1
説明
センサが向いている方角を検出し,コントローラにアナログまたは,デジタルの値で出力します. アナログで使用すると8段階の電圧,デジタルで使用するとジャンパーで選択した1方位の信号が出力されます.
今回のオープンキャンパスではアナログとして使用しました.
モータ
ロボがタイヤを回転させるための機構としてモータを使用しました. モータは一つのタイヤに一つ対応されていて,タイヤは2つ使用したため,モータは2つ使用しました. 入出力コネクタの接続によりモータはそれぞれのタイヤを,同様の速度で独立に正転,反転させることができます.
第3モータ
第3モータとは,ロボが赤外線ボールをドリブルするためのドリブル機構として使用したモータです. 使用の際には,回転力を高めるために第3モータの電源はコントローラに使用する電池とは別のものを用意し,直接つなげました. 第3モータは常時回転するようにしました.
動作説明
フローチャート
Bチームのフローチャートは左の図のようになります. ロボットの動きとしては,主に, ・ボールを探す ・ドリブルする となっており,詳しくは以下で説明します. |
ボールを探す
ロボットがボールを持っていないときの動作です.
IRセンサを2つ使って,ボールから出る赤外線を感知して,ボールを見つけます. (1)にボールがある場合----左に曲がる (2)にボールがある場合----まっすぐ進む ※IRセンサの感知した値が210以上だとドリブルモードに入る (3)にボールがある場合----右に進む (4)にボールがある場合----旋回など |
ロボット自体の動きとしては,各タイルごとに与えられているプログラムが違うので,不規則な動きを見せます. |
ボールを探す
ドリブルモードは,「ボールを探す」で,(2)の状態の※のときに発動します. 今回は,第3モータを常に回し,ボールにバックスピンをかけることで,ボールを確保しました. (第3モータも本来は,ボールがあるときだけONにしたかったが,端子の関係上できなくなりました.) 第3モータは図の通りに,ロボの先端に取り付けました. ドリブルモードのときにもタイルごとにプログラムが与えられていて,ゴールに目指して向かって行きます. タイル2に入って,ゴールにまっすぐに向いているとき(上のタイル図ではロボが北向き),ロボはシュートをするようになっています. (シュートは本来,第3モータをドリブルとは違う,逆回転をかけてシュートを行いたかったが, 第3モータを制御することは今回できなかったので,ロボの速度をシュートするときだけ早くして,押し出す形にしました.) |