- 追加された行はこの色です。
- 削除された行はこの色です。
[[2009a/A8/課題2右]]
#define THRESHOLD 47 //閾値を47に設定
task main ()
{
SetSensor(SENSOR_1,SENSOR_LIGHT); //センサー1に光センサーをセット
SetSensor(SENSOR_2,SENSOR_TOUCH); //センサー2にタッチセンサーをセット
SetSensor(SENSOR_3,SENSOR_LIGHT); //センサ−3に光センサーをセット
while (true) {
if (SENSOR_1>THRESHOLD){ //センサ−1が白で
if(SENSOR_3>THRESHOLD){ //センサー3も白のとき
OnFwd(OUT_A+OUT_C);
}
else //センサー3が黒のとき
{
OnFwd(OUT_A);
Off(OUT_C);
}
}
else{ //センサー1が黒で
if(SENSOR_3>THRESHOLD){ //センサー3が白のとき
OnRev(OUT_A);
OnFwd(OUT_C);
}
}
if(SENSOR_2 == 1) //タッチセンサーに何かがあたったとき
{
OnRev(OUT_A+OUT_C); //向きを変えたりしながらよける
Wait(25);
Off(OUT_A+OUT_C);
Wait(50);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(120);
Off(OUT_A+OUT_C);
Wait(50);
OnFwd(OUT_A+OUT_C);
Wait(180);
Off(OUT_A+OUT_C);
Wait(50);
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(110);
Off(OUT_A+OUT_C);
Wait(50);
OnFwd(OUT_A+OUT_C);
Wait(300);
Off(OUT_A+OUT_C);
Wait(50);
OnFwd(OUT_A);
OnRev(OUT_C);
Wait(110);
Off(OUT_A+OUT_C);
Wait(50);
OnFwd(OUT_A+OUT_C);
Wait(180);
Off(OUT_A+OUT_C);
Wait(50);
OnRev(OUT_A);
OnFwd(OUT_C);
Wait(120);
Off(OUT_A+OUT_C);
Wait(50);
OnRev(OUT_A+OUT_C);
Wait(60);
Off(OUT_A+OUT_C);
Wait(50);
}
}
}