- 追加された行はこの色です。
- 削除された行はこの色です。
[[2012b/Member]]
プログラムを貼り付ける時は整形済みテキストを使う
詳しく加工丁寧すぎるくらいがいい
写真は小さめで
コマンド convert -geometry サイズ 元のファイル
*ライントレースde空き缶運び [#fc3e4d1d]
*ロボットの紹介 [#n619a93f]
*コースの攻略法 [#y4d4ac72]
*プログラムの説明 [#e15a1eb1]
#define off Off(OUT_BC);
#define TURN_TIME 500 //1/4回転の時間
#define BLACK 31
#define WHITE 62
#define SPEED 100
#define go OnFwd(OUT_BC,47);
#define left OnFwd(OUT_B,47);Off(OUT_C);
#define right OnFwd(OUT_C,47);Off(OUT_B);
#define THRESHOLD 46
#define lleft OnFwd(OUT_B,47);OnRev(OUT_C,47);
#define rright OnFwd(OUT_C,47);OnRev(OUT_B,47);
task main()
{
SetSensorLight(S1);
int n=0;
int m=0;
long t0 = CurrentTick();
long t1 = CurrentTick();
long t2 = CurrentTick();
while(CurrentTick()-t0 <= 5000)
{
if (SENSOR_1 < 35){OnFwd(OUT_B,30);Off(OUT_C);}
else {if(SENSOR_1 < 42){OnFwd(OUT_B,30);OnRev(OUT_C,30); }
else if (SENSOR_1 < 50){OnFwd(OUT_BC,30);}
else {OnFwd(OUT_C,30);Off(OUT_B);}
}
}
while (true)
{
while(n<5000)
{;
Wait(900);
rright
while(CurrentTick()-t1 <= 42300){
if (SENSOR_1 < 35){left;n++; }
else {if(SENSOR_1 < 42){lleft}
else if (SENSOR_1 < 50){go}
else if (SENSOR_1 < 56){right}
else {rright}
n=0;
}
Wait(0.01);
}
off
Wait(500);
OnFwd(OUT_C,25);OnRev(OUT_B,25);
Wait(1100);
off
Wait(500);
OnRev(OUT_BC,30);
Wait(900);
off
rright
Wait(1000);
while(true)
{
if (SENSOR_1 < 35){left}
else {if(SENSOR_1 < 42){lleft}
else if (SENSOR_1 < 50){go}
else {right}
}
}
Wait(1000);
rright;
Wait(5000);
n=0;
}
}
}
*まとめ [#yd2e7fd2]