2005/A1

ライントレースするロボット

ライントレース(モータ2個)

ライントレースのプログラム

 //製作者 コンパス 今井 harada
  #define THRESHOLD 40 
 
  task main ()
  {
   SetSensor(SENSOR_1, SENSOR_LIGHT);
   SetSensor(SENSOR_3, SENSOR_LIGHT);
   
   while (true) {
       if (SENSOR_1 < THRESHOLD) { 
           OnRev(OUT_A+OUT_C);
           Wait(2);
           OnFwd(OUT_A);
           
           OnRev(OUT_C);     //後ろに戻って少し回転
           
       }
       if (SENSOR_3 < THRESHOLD) {
           OnRev(OUT_A+OUT_C);
           Wait(2); 
           OnFwd(OUT_C);
           
           OnRev(OUT_A);      //後ろに戻って少し回転
      
       }
       else {          
           OnFwd(OUT_A);
           OnFwd(OUT_C);      //直進
            }
                }
  }

感想(解説)

私たちの描いたラインは急カーブが多かったため、曲がりきれずに突き抜けていまい苦労しました。だから、線を踏んだときに少し戻ってカーブを曲がるというプログラムにして成功しました。

モーター1つでライントレースするロボット

PA0_0051.JPG

モーター1つのプログラム

// 製作者 コンパス harada 今井
#define THRESHOLD 40
 task main ()
 {
   SetSensor(SENSOR_1, SENSOR_LIGHT);
   SetSensor(SENSOR_2, SENSOR_LIGHT);
   
   while (true) {
         if (SENSOR_1 < THRESHOLD)  // 1が黒線踏んだら 右へ
             OnFwd(OUT_A);
           
         if (SENSOR_2 < THRESHOLD)  // 2が黒線踏んだら 左へ                                
             OnRev(OUT_A);
          
         if(SENSOR_1+SENSOR_2 < THRESHOLD)  // 両方なら 右へ
             OnFwd(OUT_A);
           }
 }

感想(解説)  

力が足らず苦労しました。ラインでピッタリとまらずスピードの調整が 難しかった。そのためにギア比を調節して、かつタイヤを小さくするなどして対応しました。プログラム自体は簡単で、右の光センサーが反応すれば左に曲がり、右の光センサーが反応すれば右に曲がるというものです。                                                             

掲示板

  • モータ2つでのプログラムも載せましょう。 -- ゆん(TAM)? 2005-12-09 (金) 15:43:07
  • 見ました。お疲れさまです。 -- ゆん(TA)? 2006-02-02 (木) 17:19:50


添付ファイル: filedscn2312_Large.jpg 169件 [詳細] filePA0_0051.JPG 186件 [詳細] file051125_1602~0001.jpg 115件 [詳細]

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