光センサーロボット 「ICHIURA 2」

itiura2 今回は光センサーを装備したロボットを制作し自分たちでマジックを用いて作ったコースを走らせました。

ICHIURA 2について

itiura2 これが今回のロボット、ICHIURA 2です。

itiura2 そしてこれが光センサー&タッチセンサーです。これを装備することでICHIURA 2は完成します。

     

最初に述べたように今回のICHIURA 2には光センサーが2個、さらにタッチセンサーが1個装備されています。

  

itiura2     itiura2

 

この両方を取り付けるのには苦労しました。しかし無駄なものを取り付けずに元々のロボットの形を残しつつシンプルなデザインに仕上げることができました。

特に光りセンサーの位置、角度に気をつけて制作しました。

コース

itiura2今回ICHIURA 2が走ったコースです。

わかっていただけるとは思いますが、モデルは魚です。

尻尾部分の角度が急であること、目の部分を書くのに失敗したことなどからなかなか難易度の高いコースになってしまいました(苦笑)

プログラム

#define THRESHOLD 40                    // 黒と白の閾値を設定
task main ()                      
{
    SetSensor(SENSOR_1,SENSOR_LIGHT);  // センサ1(左は光センサ)
    SetSensor(SENSOR_3,SENSOR_LIGHT);  // センサ2(右)も光センサ
    while(true) {            // 無限ループ
        if (SENSOR_1<THRESHOLD){    // 
            if (SENSOR_3<THRESHOLD){  // 光センサが2個とも黒線上のとき
                OnFwd(OUT_A);       は直進
                OnFwd(OUT_C);
            } else {          // 左だけ黒線上にないときは左にターン
                Off(OUT_A);
                OnFwd(OUT_C);
            }
        } else {
            if (SENSOR_3<THRESHOLD){  // 右だけ黒線上にないときは右にターン
                OnFwd(OUT_A);
                Off(OUT_C);
            } else {          // 2個とも黒線上にない場合は停止
                Off(OUT_A);
                Off(OUT_C);
            }
        }
    }
}

しかし・・・

ICHIURA 2では魚の尻尾部分の急カーブ、失敗した目の部分に対応することが出来ませんでした。何か対策を練らねばなりません。

そこで、先生にアドバイスをいただきICHIURA 2の改良を試みることになりました。

改良版ICHIURA 2の誕生

itiura2 ICHIURA 2を少し改良しました。改良版ICHIURA 2の誕生です!

改良版ICHIURA 2の特徴・改善点

ICHIURA 2は2個の光センサー2個を用いて光が黒い部分を感知すると走り出すような設定にしていたのですが

それでは急なカーブを曲がりきれない等の問題が生じてしまったので2個の光センサーを離し、黒い線の間をま

たいで進むように変更しました。さらにタッチセンサーの部分も形を変えました。

itiura2      itiura2     itiura2

新プログラム

#define THRESHOLD 40          // 黒と白の閾値を設定

task main () 
{
    SetSensor(SENSOR_1,SENSOR_LIGHT); // センサ1(左)は光センサ
    SetSensor(SENSOR_3,SENSOR_LIGHT); // センサ2(右)は光センサ
    while(true){           // 無限ループ
        if (SENSOR_1>THRESHOLD){ 
            if (SENSOR_3>THRESHOLD){ // 光センサ2個とも黒線上にないときは
                OnFwd(OUT_A);       直進
                OnFwd(OUT_C);
            } else {         // 左だけ黒線上にないときは右にターン
                Off(OUT_A); 
                OnFwd(OUT_C);
            }
        } else {          // 右だけ黒線上にないときは左にターン
            if (SENSOR_3>THRESHOLD){
                OnFwd(OUT_A);
                Off(OUT_C);
            } else {         //二個とも黒線上にないときは停止
                Off(OUT_A);
                Off(OUT_C);
            }
        }
    }
}       

制作してみての感想

今回は2つ目の課題ということもあり前回苦労した分、かなりスムーズにできました。

さらに今回のロボット、ICHIURA 2は前回より使うブロックも少なくすることができ、シンプルな出来になっていると思います。

実際にコースを走らせると最初は魚の尻尾と目の部分でロボが止まってしまい大変でした。

カーブ(魚の目)の部分での失敗について

今回の課題の一番の失敗点はまずコース作りにありました。魚の目の部分がしっかりとカーブになっていませんでした。

先生からアドバイスをいただき改良することで、今まで難しかった魚の尻尾の部分ではなんとか走るようになリましたが結局の所目の部分の克服には至りませんでした。

今回は手際よくスムーズに準備を行うことが出来ましたが、コース作りの失敗のためにうまくいきませんでした。カーブと線が交差する部分の対策を練ってしっかり検討して考えてからコース作りに取り組まなければならなかったと思います。

今回の反省を活かしてロボコンではチーム内でしっかりと話し合って検討した上でしっかりと課題をこなしたいと思います。

コメントよろしくお願いします☆



添付ファイル: file070621_1922~0002.jpg 336件 [詳細] file070621_1921~0002.jpg 331件 [詳細] file070621_1921~0001.jpg 357件 [詳細] file070621_1919~0001.jpg 353件 [詳細] file070620_1158~0001.jpg 348件 [詳細] file070607_2010~0002.jpg 349件 [詳細] file070607_2008~0001.jpg 356件 [詳細] file070607_2009~0001.jpg 332件 [詳細] file070607_2010~0001.jpg 352件 [詳細] file070607_2010~0003.jpg 332件 [詳細] file070620_1107~0001.jpg 174件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2007-08-02 (木) 16:44:58