技術点は、自チームを含む全てのチームが次の4点で審査し、10点満点で採点し、その平均点を求める
どのように紙パックと缶を区別させるのか、区別した後どのように所定の位置まで運ぶのか意見がまとまらなくてロボットの製作に取りかかるのが遅れた。結局、紙パックと缶の良い区別の仕方が見つからず、ロボットを二台使い、一台は紙パックと缶を回収し枠付近まで運ぶロボット、もう一台はその紙パックと缶を枠内に押し込むロボットを作り、とにかく枠内に入れることだけを目標に進めていった。
とにかく一番苦労した点はどのように紙パックと缶を区別させるのか、区別した後どのように所定の位置まで運ぶかということで、話し合いの大半を占めた。おもしろいアイデアはいくつもでたが、その後それぞれの短所を解決する方法が見つからず断念。その後何度も話し合い、時間が足りないなどの状況を考慮した結果、最終的には分別はしないが全ての箱と缶を枠内に入れるという意見でまとまり、それに向けて精一杯取り組めたと思う。
#define open OnFwd(OUT_B);Wait(200);Off(OUT_B); //当初使うはずだった定義 #define close OnRev(OUT_B);Wait(200);Off(OUT_B); #define left(t) OnRev(OUT_A);OnFwd(OUT_C);Wait(t);Off (OUT_A+OUT_C); #define right(t) OnFwd(OUT_A);OnRev(OUT_C);Wait(t);Off(OUT_A+OUT_C); #define go(t) OnFwd(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C); #define back(t) OnRev(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C); #define float_l OnRev(OUT_A);OnFwd(OUT_C);Wait(10);Float(OUT_A+OUT_C); task main() { go(170); //回り込む back(22); left(87); go(650); back(20); left(87); go(200); left(100); go(1100); //二ついっぺんに持ち運び back(600); left(90); go(300); back(20); left(90); go(500); float_l //役目終了 後方で待機 }
#define go_straight(t) OnFwd(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C); //直進する #define back_straight(t) OnRev(OUT_A+OUT_C);Wait(t);Off(OUT_A+OUT_C); //後退する #define turn_left(t) OnFwd(OUT_A);OnRev(OUT_C);Wait(t);Off(OUT_A+OUT_C); //左折する #define turn_right(t) OnRev(OUT_A);OnFwd(OUT_C);Wait(t);Off(OUT_A+OUT_C); //右折する task main() { Wait(1000); //もう1台のロボットが通過するまで待機 back_straight(65); //壁に接触し本機を垂直にする Wait(2300); //もう1台のロボットの仕事が終わり後退するまで待機 go_straight(80); //まっすぐ進み缶のスペースに押し込む Wait(30); turn_left(79); Wait(30); while(true) { go_straight(150);Wait(30); //2回突進し押し込む back_straight(70);Wait(30); go_straight(150);Wait(30); back_straight(70);Wait(30); turn_right(80);Wait(30); back_straight(100);Wait(30); //回転し元いた壁に戻り軌道修正 go_straight(60);Wait(30); //最初より少し短めに進みそこで押し込む turn_left(80);Wait(30); go_straight(150);Wait(30); back_straight(70);Wait(30); go_straight(150);Wait(30); back_straight(70);Wait(30); turn_right(80);Wait(30); //また元いた壁に戻り軌道修正 back_straight(100);Wait(30); go_straight(40);Wait(30); //少し前進し紙パックのスペースへ押し込む turn_left(80);Wait(30); go_straight(150);Wait(30); back_straight(70);Wait(30); go_straight(150);Wait(30); back_straight(70);Wait(30); turn_right(80);Wait(30); back_straight(70);Wait(30); go_straight(80);Wait(30); turn_left(80);Wait(30); } //これの繰り返し }
判別さえできたら相当出来のいいロボットだったのではないだろうか?しかしそれが一番重要なのではないだろうか?努力は精一杯したと思うが意見がまとまらず何度か衝突をし、とりあえず入れるだけいれて得点をかせぐという結果重視か、結果的に一つも入らない可能性があっても判別することを目指したという過程重視か、という二つの方針を話し合い、時間もなくなってきたため最終的に結果重視することに決めた。何度か衝突することもあったが決められた時間内で、自分たちの出来る限りがんばったと思う。
結果は思いがけず1位。練習の時点でも、枠付近まで運搬するロボットの動作もほとんどミスのない安定性と、押し込むロボットのどんな向きでも押し込む能力にはそれなりに自信はあったが、みためと動きがシンプルなため技術点で高く評価されることはあまり期待していなかった。その分この1位という結果には正直驚いたのと同時にとてもうれしかった。最後にこういう結果が残せたのは今までの課題に精一杯取り組んできたおかげだと思う。
コメントをお願いします。