[[2017a/Member]] ライントレース #define senkai_left OnRev(OUT_C);OnFwd(OUT_A);//左旋回 #define senkai_right OnFwd(OUT_C);OnRev(OUT_A); //右旋回 #define turn_left Off(OUT_C);OnFwd(OUT_A);//左折 #define turn_right OnFwd(OUT_C);Off(OUT_A);//右折 #define fwd OnFwd(OUT_AC);//直進 #define usetu OnFwd(OUT_C);Off(OUT_A);Wait(180);Off(OUT_C);OnRev(OUT_AC); Wait(20);Off(OUT_AC); sub line_trace() { SetSensor(SENSOR_1, SENSOR_LIGHT); //右 SetSensor(SENSOR_3, SENSOR_LIGHT); //左 ClearTimer(0); PlaySound(SOUND_UP); while(FastTimer(0)<11){ if(SENSOR_1>=49&&SENSOR_3>=55){ fwd; ClearTimer(0); }else if(SENSOR_3>=50){ turn_right; ClearTimer(0); }else if(SENSOR_1>=40){ turn_left; ClearTimer(0); }else if(SENSOR_3>=48){ senkai_right; ClearTimer(0); }else if(SENSOR_1>=38){ senkai_left; ClearTimer(0); }else if(SENSOR_1>=35||SENSOR_3>=40){ Off(OUT_AC); PlaySound(SOUND_LOW_BEEP); }else{ PlaySound(SOUND_FAST_UP); } } Off(OUT_AC); PlaySound(SOUND_DOWN); } task main() { Wait(50); fwd; Wait(50); Off(OUT_AC); repeat(2){ line_trace(); Wait(50); usetu; Wait(100); } fwd; Wait(50); Off(OUT_AC); PlaySound(SOUND_CLICK); }