目次 #contents *課題2 黒い線に沿って動くロボット [#y3596a15] 各チームで作成したコースを3周するロボットを製作せよ。交差点のうちの一つには500mlの空の紙パックをおき、次のような動作するプログラムを作成せよ。(他のメンバーと重ならないように一人一つのプログラムを作成する) 1. 紙パックを迂回する、あるいは紙パックをもとの位置に戻したのちコースに戻って進む (交差点を通過後、紙パックが元の位置にあればよい) 2. 紙パックを次の交差点まで運んで行き、その交差点に紙パックを残してさらに黒い線に沿って進む **完成したロボット [#e015b271] 今回は各プログラムにつきパーツをかえてロボットをつくりました。 ***ノーマル [#z8140992] #ref(2009a/A3/課題2左/ノーマル.jpg,50%) ***恵のロボット(改善前) [#uff10e12] #ref(2009a/A3/課題2左/恵のロボット.jpg,50%) ***堀内のロボット [#bc0948b0] #ref(2009a/A3/課題2左/堀内のロボット.jpg,50%) ***改善前の光センサー [#uf094e72] #ref(2009a/A3/課題2左/光センサー.jpg,50%) ***ロボット作成において工夫した点 [#adda88b4] ロボットの本体は、小回りが利くようになるべく小さく、かつ頑丈に創りました。 バンパーは、テコの原理を用いて、なるべく低くしました。 **プログラムの説明 [#kd62ac00] ***恵のプログラム [#he1cbf21] #define GO OnFwd(OUT_A+OUT_C); //前に進む #define LEFT OnRev(OUT_A); OnFwd(OUT_C); //左に回る #define RIGHT OnRev(OUT_C); OnFwd(OUT_A); //右に回る #define RUN_TIME 8000 //走る時間の設定 task main () { SetSensor ( SENSOR_1, SENSOR_LIGHT ); SetSensor ( SENSOR_2, SENSOR_TOUCH ); SetSensor ( SENSOR_3, SENSOR_LIGHT ); //センサーの設定 ClearTimer(0); //タイマーを初期化 int flag; //交差点の名前 flag = 0; //交差点の値を0にしておく while( FastTimer(0) <= RUN_TIME ) //タイマーの時間を満たすまで { while ( SENSOR_2 == 1 ) //センサー2が反応する間 { OnFwd(OUT_B); //牛乳パックを捕まえる Wait(50); Off(OUT_B); if (flag==4 || flag==10 ) //もし4番目と10番目の交差点を通れば { GO; Wait(80); LEFT; Wait(170); //若干前に進み、左に180度回り、 OnRev(OUT_B); Wait(50); Off(OUT_B); //捕まえた牛乳パックを放す RIGHT; Wait(170); //右に180度回る } if ( SENSOR_1 > 40 && SENSOR_3 > 40 ) //センサー1とセンサー3が白のとき、前に進む { GO } if ( SENSOR_1 < 40 && SENSOR_3 > 40 ) //せんさー1が黒、センサー3が白のとき、左に回る { LEFT } if ( SENSOR_1 > 40 && SENSOR_3 < 40 ) //センサー1が白、センサー3が黒のとき、右に回る { RIGHT } if ( SENSOR_1 < 40 && SENSOR_3 < 40 ) //センサー1とセンサー3が黒のとき、flagに1を足して、前に進む { flag==flag+1; GO } } if ( SENSOR_1 > 40 && SENSOR_3 > 40 ) { GO } if ( SENSOR_1 < 40 && SENSOR_3 > 40 ) { LEFT } if ( SENSOR_1 > 40 && SENSOR_3 < 40 ) { RIGHT } if ( SENSOR_1 < 40 && SENSOR_3 < 40 ) { flag==flag+1; GO } } Off(OUT_A+OUT_C); //終了 } ***堀内のプログラム [#q40d9bdf] ***感想、反省点 [#p210bb9a] んー、なんか、ロボットの制作するのが意外と時間を食ったし、プログラムも若干、苦労しました;; でも自分的には、けっこうできた方だと思います。by恵 **コメントお願いします [#f06c3a94] #comment