- 追加された行はこの色です。
- 削除された行はこの色です。
#define THRESHOLD 30
sub up_arm(){OnFwd(OUT_A); Wait(400);}
task main ()
{
SetSensor(SENSOR_1, SENSOR_LIGHT);
SetSensor(SENSOR_3, SENSOR_TOUCH);
while (true) {
OnFwd(OUT_A); if (SENSOR_1 > THRESHOLD ) {
Off(OUT_A);Wait(5);OnRev(OUT_A);
ClearTimer(0);
while ( Timer(0) <= 50 ) { SendMessage(1); } }
if (SENSOR_1 < THRESHOLD)
{
ClearTimer(0);
while ( Timer(0) <= 20 ) { SendMessage(2);}
OnRev(OUT_A);
OnFwd(OUT_C);
until (SENSOR_3 == 1) ;
Off(OUT_A);
}
OnFwd(OUT_C); until ( Message() == 6 ) ;
if (SENSOR_1 < 30 ) {
ClearTimer(0);
while ( Timer(0) <= 50 ) { SendMessage(3); }
}
if (SENSOR_1 > 45 ) {
ClearTimer(0);
while ( Timer(0) <= 50 ) { SendMessage(4); }
}
else {
ClearTimer(0);
while ( Timer(0) <= 50 ) { SendMessage(5); }
}
ClearMessage();
until (Message() != 0);
if ( Message() == 6 ) up_arm() ;
ClearMessage();
until (Message() != 0);
if ( Message() == 7 ) ;
}
}