作成者 B3
プログラムは以下に記述。
//壁をつたうロボット、作成者 B3左 task main () { SetSensor(SENSOR_3,SENSOR_TOUCH); //センサー3を定義 SetSensor(SENSOR_1,SENSOR_TOUCH); //センサー1を定義 while(true) { if(SENSOR_3>0) //センサー3が少しでも触れていたなら前進 OnFwd(OUT_A+OUT_C); if((SENSOR_1 == 1)&&(SENSOR_3 == 1)) { OnRev(OUT_A+OUT_C); Wait(0); Off(OUT_A+OUT_C); //両方のセンサーが触れた場合少し下がり止まる OnFwd(OUT_C); OnRev(OUT_A); Wait(100); OnFwd(OUT_A+OUT_C); until(SENSOR_3>0); //斜めむきになってセンサー3が触れるまで前進 OnFwd(OUT_A+OUT_C); //完全に壁と平行とは言えないが強引に前進 } else{if(SENSOR_3 == 0) { Off(OUT_C); OnFwd(OUT_A); until(SENSOR_3 == 1); OnFwd(OUT_A+OUT_C); //もしセンサー3が全く反応しなくなったらま た反応するまで回転し反応したらまた前進する。 } } } }