#contents *課題2・黒い線に沿って動くロボット [#ge99588a] 2つの光センサーが白を感知して進みます。それによって、ロボット本体を黒の線上を進むようにしました。 **【メンバー】 [#t1e2029d] ・宮原 ・大益 **【ロボット紹介】 [#j76913f3] **【プログラム】 [#q7a68997] #define MOTOR OUT_A+OUT_C #define THRESHOLD 40 #define TIME 0 task main () { SetSensor(SENSOR_1,SENSOR_LIGHT); SetSensor(SENSOR_3,SENSOR_LIGHT); SetSensor(SENSOR_2,SENSOR_TOUCH); while(true){ if(SENSOR_2 == 1){ OnRev(MOTOR); Wait(60); Off(MOTOR); Wait(300); } else { if(SENSOR_1 > THRESHOLD){ if(SENSOR_3 > THRESHOLD){ OnFwd(MOTOR); } else { OnFwd(OUT_A); Off(OUT_C); Wait(TIME); } } else { if(SENSOR_3 > THRESHOLD){ Off(OUT_A); OnFwd(OUT_C); Wait(TIME); } else { OnFwd(MOTOR); Wait(30); Off(MOTOR); } } } } } ***衝突時の対応 [#vd4c4ef4] いくつかのロボットをコース上で動かすために、交差点などで衝突した場合の対応を組み込みました。 if(SENSOR_2 == 1){ OnRev(MOTOR); Wait(30); Off(MOTOR); Wait(100); 衝突直後3秒間後退します、その後10秒間停止して、再び前進し始めます。最初はテーブルバンパーを元に、タッチセンサを本体に付けようと考えていましたが、衝突した時の反応時間が遅くなってしまうこと、それにより衝突した相手のロボットの進路を妨げないために、下の写真のようにしました。拡散 **工夫した点・努力した点 [#ld375496] 前回の書道ロボットに比べ、軽量で小回りを利かせる事を念頭に考えて作りました。