P10004633.JPG

壁に沿って走るロボット

//    作成者:今西 高橋 東
//    作成日:2005年11月30日
 
task main()
{
   SetSensor(SENSOR_1,SENSOR_TOUCH); //センサ1がタッチセン
                                     //サであると宣言  
   SetSensor(SENSOR_3,SENSOR_TOUCH); //センサ3がタッチセン
                                     //サであると宣言
   OnFwd(OUT_A+OUT_C); //前進               
   until(SENSOR_1 == 1 || SENSOR_3 == 1);//1がオン又は3が
                                         //オンまで
   Off(OUT_A+OUT_C);
   while(true) //以下のことを繰り返す    
   {
       if (SENSOR_1 == 1) //もし1がオンなら
       {
           OnFwd(OUT_A+OUT_C);//前進
           until(SENSOR_1 == 0 || SENSOR_3 == 1);//1がオフ
                                                 //又は3が
                                                 //オン 
           Off(OUT_A+OUT_C);
       }
       if(SENSOR_3 == 1)//もし3がオンなら
       {
           OnFwd(OUT_A);//右回転
           OnRev(OUT_C);
           Wait(100);  //1秒間の間
           Off(OUT_A);
           OnFwd(OUT_A+OUT_C);//前進
           until(SENSOR_1 == 1);//1がオンまで
           Off(OUT_A+OUT_C);
       } else {  //その他のとき
           OnFwd(OUT_C);//左回転
           until(SENSOR_1 == 1);//1がオンまで
           Off(OUT_C);
       }
   }      
} 

難しかった点

  1. 机の下の部分の曲がるのにかかる時間を考える点。
  2. 机の下にあるちょっとした高さの違う部分での差を考えなくてはいけなかった点。

工夫した点

  1. 難しかった点でも書いたように、高さの違う部分んのためにバンパーの高さをいろ いろと考えた点。
  2. バンパーの形の点。
  3. バンパーをいかに柔軟かつ強度大にするかという点。

反省点

  1. ロボットを作るのに少し時間をかけすぎてしまい、プログラミングに取り掛かるの が遅かったので出来上がるのに時間がかかってしまった点。

感想

  • 思ったよりもタッチセンサがうまく作動しなかったり、高さの違う部分に対応する バンパーをつくるなどと苦戦をすることばかりで大変だったけどそれらが成功したときかなりうれしかったりとやりがいがありました。 東
  • 横にセンサーをつけたロボットを壁に沿わせ、直角に曲がらせるのが想像以上に難しかった。 今西

コメントはこちらまで

  • コメントも丁寧ですし、プログラムもすっきりまとまっていますね。 -- かとりーぬ(TA)? 2005-12-09 (金) 18:14:16

C6のTOPへ

tya1 0 &counter([total|today|yesterday]);

添付ファイル: fileP10004633.JPG 262件 [詳細] fileP10004632.JPG 149件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2005-12-09 (金) 18:14:16