//製作者 コンパス 今井 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); //直進 } } }
私たちの描いたラインは急カーブが多かったため、曲がりきれずに突き抜けていまい苦労しました。だから、線を踏んだときに少し戻ってカーブを曲がるというプログラムにして成功しました。
// 製作者 コンパス 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); } }
力が足らず苦労しました。ラインでピッタリとまらずスピードの調整が 難しかった。そのためにギア比を調節して、かつタイヤを小さくするなどして対応しました。プログラム自体は簡単で、右の光センサーが反応すれば左に曲がり、右の光センサーが反応すれば右に曲がるというものです。