[[2004/B2/練習問題]]
ライントレース!
 
 #define THRESHOLD 34 // 閾値
 task main ()
{
  SetSensor(SENSOR_1, SENSOR_LIGHT); //ライントレース用の光センサー
  while(true)
 {
  while(SENSOR_1<THRESHOLD)
  {
   OnFwd(OUT_A+OUT_C);
  }
  while(SENSOR_1>=THRESHOLD)
  {
    ClearTimer(0);
   while(SENSOR_1>=THRESHOLD && Timer(0)<=25)
 
   {
    if(Timer(0)<10)
    {
    {#define THRESHOLD 40   // 閾値
#define RUN_TIME 150   // トレースする時間(単位 1/10 秒)

task main ()
{
    SetSensor(SENSOR_1, SENSOR_LIGHT);

    ClearTimer(0);                    // Timer(0) をリセット

    while ( Timer(0) <= RUN_TIME ) {  // タイマー0がRUN_TIME以下の時に繰り返す
        if (SENSOR_1 < THRESHOLD) {   // 黒線上にいるとき
            OnFwd(OUT_A);
            Off(OUT_C);
        } else {                      // 黒線から外れたとき
            Off(OUT_A);
            OnFwd(OUT_C);
        }
    }
}
     OnRev(OUT_C);
     OnFwd(OUT_A);
    }
    if(Timer(0)>=10 && Timer(0)<=25)
    {
     OnRev(OUT_A);
     OnFwd(OUT_C);
    }
   }
  }
 }
}



トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS