2017a/Member

課題2

詳しくは 2017a/Mission2

ロボットについて

gimp1.JPG
gimp2.JPG

小回りがきくようにするためとバランスが良くなるようにするためにロボットの後方に小さい車輪を付けました。また、指定された大きさに収まるようにできるだけロボットを小さくシンプルにしました。

プログラミングについて

#define THRESHOLD 42
#define turn_left Off(OUT_A);OnFwd(OUT_C);
#define turn_right OnFwd(OUT_A);Off(OUT_C);
#define STEP 1
#define R_senkai OnFwd(OUT_A);OnRev(OUT_C);
#define L_senkai OnFwd(OUT_C);OnRev(OUT_A);

trace1は境界の右側をたどるサブルーチンです。 白なら左回転、黒なら右回転して境目をたどっていくようにしました。また、交差点が識別できるように左回転したらタイマーをリセットし、右旋回をしたらタイマーをそのままにしてタイマーが30になったら止まるようにしました。

 

sub trace1()

 {

while(FastTimer(0)<30)
if(SENSOR_2>49){
 L_senkai;Wait(STEP);ClearTimer(0);
}else if(SENSOR_2>44){
 turn_left;Wait(STEP);ClearTimer(0);
}else if(SENSOR_2< 36){
 turn_right;Wait(STEP);ClearTimer(0);
}else if(SENSOR_2<33){
  R_senkai;Wait(STEP);
}

Off(OUT_AC);
}

trace2は境界の左側をたどるサブルーチンです。trace1と同様にしました。

sub trace2()

 {

while(FastTimer(0)<100)
if(SENSOR_2>49){
 R_senkai;Wait(STEP);ClearTimer(0);
}else if(SENSOR_2>44){
 turn_right;Wait(STEP);ClearTimer(0);
}else if(SENSOR_2< 36){
 turn_left;Wait(STEP);ClearTimer(0);
}else if(SENSOR_2<33){
  L_senkai;Wait(STEP);
}
Off(OUT_AC);
}

task main()

{
 SetSensor(SENSOR_2,SENSOR_LIGHT);  
 ClearTimer(0);

trace1();
PlaySound(SOUND_UP);   //E右折

trace1();
PlaySound(SOUND_DOWN);//P一時停止&左折
Wait(100);
turn_left;
Wait(30);

trace2();
PlaySound(SOUND_UP);//Q直進
turn_right;
Wait(30);

trace2();
PlaySound(SOUND_UP);//R直進


trace2();
PlaySound(SOUND_DOWN);//T一時停止&直進
Wait(100);
turn_right;
Wait(30);

trace2();
PlaySound(SOUND_DOWN);//T一時停止&直進
Wait(100);
turn_right;
Wait(30);

trace1();
PlaySound(SOUND_UP);//H

trace1(); //急なカーブ

trace1(); //急なカーブ

trace1();
PlaySound(SOUND_UP);//G

trace2(); 
PlaySound(SOUND_DOWN);//S一時停止&左折
Wait(100);

trace2();
PlaySound(SOUND_UP);//P直進
turn_right;  
Wait(30);

trace2();
PlaySound(SOUND_UP);//Q左折

trace1();
PlaySound(SOUND_UP);//F右折

trace1();//E直進

trace1();//A停止

}

感想

交差点の判断が難しくなかなかゴールまで辿りつけなかったが、最後に一回ゴール出来てよかった。 確実にゴールすることができなかったのが残念だった。


添付ファイル: filegimp1.JPG 219件 [詳細] filegimp2.JPG 206件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2017-07-21 (金) 19:10:39