task main() {
SetPower(OUT_A,5); SetPower(OUT_C,5); OnFwd(OUT_A); Wait(340); Off(OUT_A); Wait(30); SetPower(OUT_A,5); SetPower(OUT_C,5); OnFwd(OUT_A+OUT_C); Wait(75); Off(OUT_A+OUT_C); Wait(30); SetPower(OUT_A,5); SetPower(OUT_C,5); OnFwd(OUT_A); OnRev(OUT_C); Wait(65); Off(OUT_A+OUT_C); Wait(30); SetPower(OUT_A,5); SetPower(OUT_C,5); OnFwd(OUT_A+OUT_C); Wait(75); Off(OUT_A+OUT_C);
Wait(30); SetPower(OUT_A,5); SetPower(OUT_C,5); OnFwd(OUT_A); Wait(340); Off(OUT_A); Wait(30);
}
task main(){
SetSensor(SENSOR_1,SENSOR_TOUCH); SetSensor(SENSOR_3,SENSOR_TOUCH);
OnFwd(OUT_A+OUT_C);
while(true){ if((SENSOR_1==1)||(SENSOR_3==1)){ OnRev(OUT_A+OUT_C); Wait(50); OnFwd(OUT_A); OnRev(OUT_C); Wait(150); OnFwd(OUT_A+OUT_C); } else{ OnFwd(OUT_A+OUT_C); } }
}
task main(){
SetSensor(SENSOR_2,SENSOR_LIGHT);
while(true){ OnFwd(OUT_A+OUT_C);
if(SENSOR_2 > 50){ Off(OUT_A+OUT_C); OnFwd(OUT_C); OnRev(OUT_A); Wait(20); OnFwd(OUT_A); OnRev(OUT_C); until(SENSOR_2<50); } }
}
/*最初に一回転してもっとも明るい方向(懐中電灯の方向)を探し、次に懐中電灯の光を追いかけて進む*/
#define THRESHOLD 58
#define SPIN_TIME 600 task main() {
int x; SetSensor(SENSOR_1, SENSOR_LIGHT);
OnFwd(OUT_A); OnRev(OUT_C); ClearTimer(0); Wait(SPIN_TIME);
if(SENSOR_1>THRESHOLD){ x=Timer(0); }
OnFwd(OUT_A); OnRev(OUT_C); Wait(x);
while(true){ if(SENSOR_1>THRESHOLD){ OnFwd(OUT_A+OUT_C); }else{ OnFwd(OUT_A); OnRev(OUT_C); } }
}
#define Sil 494
#define Do 523
#define Re 587
#define Mi 659
#define Fa 698
#define Sol 784
#define La 880
#define Si 988
#define Doh 1047
task music1() {
while(true) { PlayTone(Do,25); Wait(30);//きらきら星 PlayTone(Do,25); Wait(30); PlayTone(Sol,25); Wait(30); PlayTone(Sol,25); Wait(30); PlayTone(La,25); Wait(30); PlayTone(La,25); Wait(30); PlayTone(Sol,50); Wait(60); PlayTone(Fa,25); Wait(30); PlayTone(Fa,25); Wait(30); PlayTone(Mi,25); Wait(30); PlayTone(Mi,25); Wait(30); PlayTone(Re,25); Wait(30); PlayTone(Re,25); Wait(30); PlayTone(Do,50); Wait(60); PlayTone(Sol,25); Wait(30); PlayTone(Sol,25); Wait(30); PlayTone(Fa,25); Wait(30); PlayTone(Fa,25); Wait(30); PlayTone(Mi,25); Wait(30); PlayTone(Mi,25); Wait(30); PlayTone(Re,50); Wait(60); PlayTone(Sol,25); Wait(30); PlayTone(Sol,25); Wait(30); PlayTone(Fa,25); Wait(30); PlayTone(Fa,25); Wait(30); PlayTone(Mi,25); Wait(30); PlayTone(Mi,25); Wait(30); PlayTone(Re,50); Wait(60); }
}
task music2() {
while(true) { PlayTone(La,50); Wait(65);//さくらさくら PlayTone(La,50); Wait(65); PlayTone(Si,100); Wait(150); PlayTone(La,50); Wait(65); PlayTone(La,50); Wait(65); PlayTone(Si,100); Wait(150); PlayTone(La,50); Wait(65); PlayTone(Si,50); Wait(65); PlayTone(Doh,50); Wait(65); PlayTone(Si,50); Wait(65); PlayTone(La,50); Wait(65); PlayTone(Si,25); Wait(35); PlayTone(La,25); Wait(35); PlayTone(Fa,100); Wait(150); PlayTone(Mi,50); Wait(65); PlayTone(Do,50); Wait(65); PlayTone(Mi,50); Wait(65); PlayTone(Fa,50); Wait(65); PlayTone(Mi,50); Wait(65); PlayTone(Mi,25); Wait(35); PlayTone(Do,25); Wait(35); PlayTone(Sil,100); Wait(150); PlayTone(La,50); Wait(65); PlayTone(La,50); Wait(65); PlayTone(Si,100); Wait(150); PlayTone(La,50); Wait(65); PlayTone(La,50); Wait(65); PlayTone(Si,100); Wait(150); PlayTone(Mi,50); Wait(65); PlayTone(Fa,50); Wait(65); PlayTone(Si,25); Wait(35); PlayTone(La,25); Wait(35); PlayTone(Fa,100); Wait(115); PlayTone(Mi,200); Wait(500); }
}
task main() {
SetSensor(SENSOR_1, SENSOR_TOUCH); while(true) { OnFwd(OUT_A); start music1; if(SENSOR_1==1) { stop music1; start music2; OnRev(OUT_A); Wait(800); stop music2; Off(OUT_A); } }
}
task main(){
SetSensor(SENSOR_1,SENSOR_LIGHT); while(true){ if(SENSOR_1>=29){ OnFwd(OUT_A+OUT_B); Off(OUT_C); OnRev(OUT_C); }else{ OnFwd(OUT_A+OUT_B+OUT_C); } }
}
#define THRESHOLD1 49
#define THRESHOLD2 42
task main(){
SetSensor(SENSOR_1,SENSOR_TOUCH); SetSensor(SENSOR_2,SENSOR_LIGHT); SetSensor(SENSOR_3,SENSOR_LIGHT);
SetPower(OUT_A,7); SetPower(OUT_C,7);
int x=-1;
OnFwd(OUT_A+OUT_C); Wait(100); Off(OUT_A+OUT_C); OnRev(OUT_A+OUT_C); Wait(70); Off(OUT_A+OUT_C); OnFwd(OUT_A+OUT_C); Wait(40); while(true){ if((SENSOR_2 < THRESHOLD1)&&(SENSOR_3 < THRESHOLD1)){ Off(OUT_A+OUT_C); OnFwd(OUT_A+OUT_C); } if((SENSOR_2 < THRESHOLD1)&&(SENSOR_3 > THRESHOLD1)){ Off(OUT_A+OUT_C); OnFwd(OUT_C); } if((SENSOR_2 > THRESHOLD1)&&(SENSOR_3 < THRESHOLD1)){ Off(OUT_A+OUT_C); OnFwd(OUT_A); } if((SENSOR_2 > THRESHOLD1)&&(SENSOR_3 > THRESHOLD1)){ Off(OUT_A+OUT_C); x++; if(x==4){ OnFwd(OUT_C); until((SENSOR_2 < THRESHOLD1)||(SENSOR_3 <THRESHOLD1)); Wait(20); Off(OUT_A+OUT_C); repeat(2){ OnFwd(OUT_A); Wait(20); Off(OUT_A+OUT_C); OnFwd(OUT_C); Wait(28); Off(OUT_A+OUT_C); } OnFwd(OUT_A+OUT_C); Wait(60); Off(OUT_A+OUT_C); OnRev(OUT_A+OUT_C); Wait(100); Off(OUT_A+OUT_C); OnFwd(OUT_A); OnRev(OUT_C); Wait(60); x=0; } OnFwd(OUT_A); until((SENSOR_2 < THRESHOLD1)||(SENSOR_3 <THRESHOLD1)); } }
}
task main(){
Wait(100); OnFwd(OUT_A+OUT_B); Wait(300); Off(OUT_A+OUT_B);
}