[[2016b/Member]] * プログラム [#z19848e4] #define mid 49 // 閾値 #define cuvright() Off(OUT_AC);OnFwd(OUT_A); #define cuvleft() Off(OUT_AC);OnFwd(OUT_C); #define turnright() Off(OUT_AC);OnFwd(OUT_A);OnRev(OUT_C); #define turnleft() Off(OUT_AC);OnFwd(OUT_C);OnRev(OUT_A); #define cls Off(OUT_ABC);SetPower(OUT_B,2);OnFwd(OUT_B);Wait(15);Off(OUT_B); // ハサミ閉じ #define opn Off(OUT_ABC);SetPower(OUT_B,2);OnRev(OUT_B);Wait(15);Off(OUT_B); // ハサミ開け #define clag SetPower(OUT_B,2);OnFwd(OUT_B);Wait(5);Off(OUT_B); // ハサミ閉めなおし #define opnf SetPower(OUT_B,2);OnRev(OUT_B);Wait(15);Off(OUT_B); // ラストのハサミ開け task main() { SetSensor(SENSOR_2,SENSOR_LIGHT); ClearTimer(0); int i=0; int c=0; int t=0; //tは時間、cはカウント int a=0; int b=0; while(c<=6){ while(FastTimer(0)<=24){ OnFwd(OUT_AC); ClearTimer(0); ClearTimer(1); if(SENSOR_2>mid+3){ turnright() until(SENSOR_2<=mid-3); Off(OUT_AC); ClearTimer(0); } else if(SENSOR_2>mid+1){ cuvright() b=FastTimer(1)+1; until(SENSOR_2<=mid-3); Off(OUT_AC); ClearTimer(0); } else if(SENSOR_2>=mid){ClearTimer(0);} else if(SENSOR_2>mid-4){ ClearTimer(0); cuvleft() until(SENSOR_2>=mid+3); Off(OUT_AC); } else { turnleft() ClearTimer(0); until(SENSOR_2>=mid+4); Off(OUT_AC); } } t=FastTimer(0); turnright(); Wait(t); if(c==0){ Off(OUT_ABC); Wait(100); turnright(); Wait(40); OnFwd(OUT_AC); Wait(25); c=c+1; ClearTimer(0);} else if(c==1){ Off(OUT_ABC); Wait(100); turnleft(); Wait(10); OnFwd(OUT_AC); Wait(50); cls; c=c+1; ClearTimer(0);} else if(c==2){ Off(OUT_ABC); Wait(100); turnleft(); Wait(5); OnFwd(OUT_AC); Wait(50); c=c+1; ClearTimer(0); } else if(c==3){ OnFwd(OUT_AC); clag; Wait(40); turnright(); Wait(50); until(SENSOR_2>=mid-4); Off(OUT_AC); c=c+1; ClearTimer(0); } else if(c==4){ Off(OUT_ABC); Wait(100); turnleft(); Wait(5); OnFwd(OUT_AC); Wait(50); c=c+1; ClearTimer(0); } else if(c==5){ OnFwd(OUT_AC); clag; Wait(40); turnright(); until(SENSOR_2>=mid-4); Off(OUT_AC); c=c+1; ClearTimer(0); } else if(c==6){ turnleft(); Wait(10); OnRev(OUT_AC); Wait(70); OnFwd(OUT_AC); Wait(60); opnf; c=c+1; ClearTimer(0); Off(OUT_ABC); } } }