- 追加された行はこの色です。
- 削除された行はこの色です。
[[ロボティクス入門ゼミ]]
*光センサー一個
*光センサー一個 [#t39cca41]
#define THRESHOLD 40
task main()
{
SetSensor(SENSOR_1,SENSOR_LIGHT);
while(true){
if(SENSOR_1< THRESHOLD) {
OnFwd(OUT_A);
Off(OUT_B);
} else {
Off(OUT_A);
OnFwd(OUT_B);
}
}
}
*光センサー二個 [#r7870ae7]
task main()
{
SetSensor(SENSOR_1,SENSOR_LIGHT);
SetSensor(SENSOR_2,SENSOR_LIGHT);
while(true)
{if(SENSOR_1 >48){Off(OUT_A);OnFwd(OUT_B) ; }
if(SENSOR_2>40){Off(OUT_B); OnFwd(OUT_A); }
else{OnFwd(OUT_A +OUT_B);} }
}
感想:上手くセンサー2が反応しない。どこがおかしいのか見直して上手く動くようにする。
*当たると反転 [#h5e1d737]
task main()
{
SetSensor(SENSOR_1,SENSOR_TOUCH);
SetSensor(SENSOR_1,SENSOR_LIGHT);
SetSensor(SENSOR_1,SENSOR_LIGHT);
while(true)
{
OnFwd(OUT_A+OUT_C);
if(SENSOR_1==1)
{
OnRev(OUT_A+OUT_C); Wait(50);
OnFwd(OUT_A); Wait(150);
OnFwd(OUT_C);
}
if(SENSOR_2<40)
{ OnFwd(OUT_C);Off(OUT_A);}
else{OnFwd(OUT_A+OUT_C);}
if(SENSOR_3<40)
{ OnFwd(OUT_C);Off(OUT_A);}
else{OnFwd(OUT_A+OUT_C); }
}
}
*前のロボに当たると追い越すロボ [#d62b1c7d]
task main()
{
SetSensor(SENSOR_1,SENSOR_TOUCH);
SetSensor(SENSOR_2,SENSOR_LIGHT);
SetSensor(SENSOR_3,SENSOR_LIGHT);
while(true){
OnFwd(OUT_A+OUT_C);
if(SENSOR_1==1){
OnRev(OUT_A+OUT_C);Wait(100);
OnFwd(OUT_A);Wait(70);
OnFwd(OUT_A+OUT_C);Wait(100);Off(OUT_A);
OnFwd(OUT_C);Wait(70);
OnFwd(OUT_A+OUT_C);Wait(300);Off(OUT_A);
OnFwd(OUT_C);Wait(70);
OnFwd(OUT_A+OUT_C);Wait(100);Off(OUT_C);
OnFwd(OUT_A);Wait(70); }
else{
if(SENSOR_2<40)
{OnFwd(OUT_C);Off(OUT_A);}
if(SENSOR_3<40)
{OnFwd(OUT_A);Off(OUT_C);} } } }
*光を求めて動くロボ課題3.1 [#e2577945]
#define Do 262
#define Re 294
#define Mi 330
#define Fa 349
#define Sol 392
#define Ra 440
task play_music()
{
while (true)
{
PlayTone(Do,15);Wait(20);
PlayTone(Re,15);Wait(20);
PlayTone(Mi,15);Wait(20);
PlayTone(Fa,15);Wait(20);
PlayTone(Mi,15);Wait(20);
PlayTone(Re,15);Wait(20);
PlayTone(Do,35);Wait(40);
PlayTone(Mi,15);Wait(20);
PlayTone(Fa,15);Wait(20);
PlayTone(Sol,15);Wait(20);
PlayTone(Ra,15);Wait(20);
PlayTone(Sol,15);Wait(20);
PlayTone(Fa,15);Wait(20);
PlayTone(Mi,35);Wait(40);
PlayTone(Do,35);Wait(40);
PlayTone(Do,35);Wait(40);
PlayTone(Do,35);Wait(40);
PlayTone(Do,35);Wait(40);
PlayTone(Do,5);Wait(10);
PlayTone(Do,5);Wait(10);
PlayTone(Re,5);Wait(10);
PlayTone(Re,5);Wait(10);
PlayTone(Mi,5);Wait(10);
PlayTone(Mi,5);Wait(10);
PlayTone(Fa,5);Wait(10);
PlayTone(Fa,5);Wait(10);
PlayTone(Mi,15);Wait(20);
PlayTone(Re,15);Wait(20);
PlayTone(Do,35);Wait(40);
Wait(40);
}
}
task main()
{
SetSensor(SENSOR_1,SENSOR_LIGHT);
start play_music ;
OnFwd(OUT_A);
OnRev(OUT_C);
until(SENSOR_1>60);
while(true){
if(SENSOR_1>60){
stop play_music ;
OnFwd(OUT_A+OUT_C);
}else{
start play_music ;
OnFwd(OUT_A);
OnRev(OUT_C);
}}
}
*課題3.2 [#o632089d]
#define Do 262
#define Re 294
#define Mi 330
#define Fa 349
#define Sol 392
#define Ra 440
task play_music()
{
while(true) {
PlayTone(Do,15);Wait(20);
PlayTone(Re,15);Wait(20);
PlayTone(Mi,15);Wait(20);
PlayTone(Fa,15);Wait(20);
PlayTone(Mi,15);Wait(20);
PlayTone(Re,15);Wait(20);
PlayTone(Do,35);Wait(40);
PlayTone(Mi,15);Wait(20);
PlayTone(Fa,15);Wait(20);
PlayTone(Sol,15);Wait(20);
PlayTone(Ra,15);Wait(20);
PlayTone(Sol,15);Wait(20);
PlayTone(Fa,15);Wait(20);
PlayTone(Mi,35);Wait(40);
PlayTone(Do,35);Wait(40);
PlayTone(Do,35);Wait(40);
PlayTone(Do,35);Wait(40);
PlayTone(Do,35);Wait(40);
PlayTone(Do,5);Wait(10);
PlayTone(Do,5);Wait(10);
PlayTone(Re,5);Wait(10);
PlayTone(Re,5);Wait(10);
PlayTone(Mi,5);Wait(10);
PlayTone(Mi,5);Wait(10);
PlayTone(Fa,5);Wait(10);
PlayTone(Fa,5);Wait(10);
PlayTone(Mi,15);Wait(20);
PlayTone(Re,15);Wait(20);
PlayTone(Do,35);Wait(40);
Wait(40);
}
}
task play_music2()
{
while(true)
{
PlayTone(Do,55);Wait(60);
PlayTone(Mi,55);Wait(60);
PlayTone(Mi,55);Wait(60);
PlayTone(Mi,55);Wait(60);
PlayTone(Re,25);Wait(30);
PlayTone(Do,25);Wait(30);
PlayTone(Sol,175);Wait(180);
PlayTone(Sol,25);Wait(30);
PlayTone(Fa,25);Wait(30);
PlayTone(Mi,55);Wait(60);
PlayTone(Mi,55);Wait(60);
PlayTone(Mi,55);Wait(60);
PlayTone(Re,25);Wait(30);
PlayTone(Do,25);Wait(30);
PlayTone(Sol,175);Wait(180);
PlayTone(Sol,25);Wait(30);
PlayTone(Fa,25);Wait(30);
PlayTone(Mi,55);Wait(60);
PlayTone(Fa,25);Wait(30);
PlayTone(Sol,25);Wait(30);
PlayTone(Fa,55);Wait(60);
PlayTone(Mi,55);Wait(60);
PlayTone(Re,175);Wait(180);
}}
task main()
{
SetSensor(SENSOR_1,SENSOR_LIGHT);
start play_music;
OnFwd(OUT_A);
OnRev(OUT_C);
until(SENSOR_1>60);
while(true){
if(SENSOR_1>60){stop play_music ;
start play_music2;
OnFwd(OUT_A+OUT_C);
}else{stop play_music2 ;
start play_music;
OnFwd(OUT_A);
OnRev(OUT_C);
}}
}