2005/C5/課題2

机に沿って動くプログラム(左側のチーム)

task main ()
{
   SetSensor(SENSOR_1, SENSOR_TOUCH);     //左バンパー
   SetSensor(SENSOR_3, SENSOR_TOUCH);     //右バンパー
   while (true) {  
       if (SENSOR_1 == 1)         //左バンパーが壁に接触したとき
         {OnFwd(OUT_A);Off(OUT_C);}    //左タイヤ正回転(壁から離れる)
       else                //ロボットが壁から離れたとき
         {Off(OUT_A);OnFwd(OUT_C);}    //右タイヤ正回転(壁に近づく)
       if(SENSOR_3  == 1)         //右バンパーが壁に接触したとき(壁に正面から接触したら右折)     
         {Off(OUT_A+OUT_C);   
          OnRev(OUT_A+OUT_C);       //後退  
          Wait(10);
          OnFwd(OUT_A);          //右に向く
          Wait(100);
          OnFwd(OUT_A+OUT_C);       //前進
          Wait(220);
          }
                 }
}

ロボットの特徴

  • 左右に二つのタッチセンサー
  • 足は小さなタイヤ
  • 机に接触させるためにバンパーに棒を差した

プログラムの特徴

  • 左回り
  • 3通りの行動パターン
  • 曲がった後の前進時間が長い

結果と感想

 机からほとんど離れず移動することができた。しかし、一周する時間が長い・・・。光センサーの例を参考にプログラムを作ったので、簡単に作成することができた。しかし、直進しない簡潔なプログラムなので一周するのに時間がかかった。少しでも一周する時間を短くするために、右に曲がった後の直進時間を長くした。

コメントをどうぞ

  • よくまとめられたページですね。プログラムのところが分かれてしまってるのでそれだけ直しておいて下さい。 -- まいける(TA) 2005-12-02 (金) 18:06:09
  • 分かれた部分を直しました -- あきひろ? 2005-12-02 (金) 18:38:45
  • 良くまとめられたプログラムです。goodです☆ -- [[ かとりーぬ(TA)]] 2005-12-02 (金) 19:34:42


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