- 追加された行はこの色です。
- 削除された行はこの色です。
[[2006a/MemberOnly/進行状況A]]
*課題2反転するロボ [#z725d9ef]
**制作者 Fuji[#i01f7031]
**制作者 Fuji.SHU[#i01f7031]
task main()
{
SetSensor(SENSOR_1,SENSOR_TOUCH); //センサー1はタッチセンサー
SetSensor(SENSOR_2,SENSOR_LIGHT);
SetSensor(SENSOR_3,SENSOR_LIGHT); //センサー2・3は光センサー
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); }
}
}
*課題2前のロボに当たると追い抜く [#f253c515]
**制作者:Fuji [#eced6868]
**制作者:Fuji .SHU[#eced6868]
task main()
{
SetSensor(SENSOR_1,SENSOR_TOUCH); //センサー1はタッチセンサー
SetSensor(SENSOR_2,SENSOR_LIGHT);
SetSensor(SENSOR_3,SENSOR_LIGHT); //センサー2・3は光センサー
OnFwd(OUT_A+OUT_C);
while(true){
if(SENSOR_1==1){
OnRev(OUT_A+OUT_C);Wait(50); //後退
OnFwd(OUT_A);Wait(50);
OnFwd(OUT_A);Wait(40);
OnFwd(OUT_A+OUT_C);Wait(50);
OnFwd(OUT_C);Wait(50);
OnFwd(OUT_A+OUT_C);Wait(300); //前のロボットを追い越す
OnFwd(OUT_C);Wait(50);
OnFwd(OUT_C);Wait(40);
OnFwd(OUT_A+OUT_C);Wait(250); //前のロボットを追い越す
OnFwd(OUT_C);Wait(40);
OnFwd(OUT_A+OUT_C);Wait(50); //コースに戻る
OnFwd(OUT_A);Wait(50); }
OnFwd(OUT_A);Wait(40); }
else{
if(SENSOR_2<40)
{OnFwd(OUT_C);}
if(SENSOR_3<40)
{OnFwd(OUT_A);} } } } //ライントレース部
*苦労した所 [#sc0092ea]
タッチセンサーと光センサー2個をロボに取り付けなくてはいけなかったところ。前にタッチセンサーを付けるので光センサーをつけるのが苦労した。
タッチセンサーの付け方に苦労しました。最初に作った物は前のロボットにぶつかってもうまくセンサーが押されなかったので、どうしたら押されるかを工夫したのと同時に苦労しました。
追い越すときのモーターの回転時間をどのぐらいにすればいいのかがいまいちわからなかったので、何回も実際に動かしてちょうどいい時間を探すのに苦労しました。
*工夫した所 [#e64a3fb4]
タッチセンサーのバンパーを少し短くして反転するときや曲がるときに邪魔にならないようにした。
前のロボットを追い越すときに、少し大きく動くことによってだいたいの物はよけられるようにしました。
*感想 [#v14baf6b]
今回はメンバー同士の連携がとれて、計画的に作業ができた。
メンバーの結束も強まってきたので、次回から更に良いものができそうだ。
*コメントをどうぞ [#z51143dd]
#coment