[[2009b]] #contents *課題 [#h3dfeb40] 光センサーを使って、ラインをトレース!~ 牛乳パックに負けず、安全確実、かつ颯爽と駆け抜けるロボットを作ろう。~ *チーム [#fe1787dc] -チーム名 「切なさと悲しさとロボティクス」~ ~ -メンバー紹介(「」内は課題にかける想い。)~ しんご (農学部) 「穴数えるの大変。」~ なかみう(教育学部)「シンプルがカッコワルいとは言わせない。」~ ~ *ロボット [#y7af0333] ロボットはシンプルに作った。~ この方針は最初から決定していたので、~ ロボットの大きな変更はなかった。~ ただ、パーツの不具合が多く、大変だった。~ *プログラム [#db4d08ee] **共通のプログラム [#j6f57639] 共通のプログラムを、なかみうが作成した。~ ~ 共通のプログラムは下の通り。~ ~ SetSensor(SENSOR_1, SENSOR_LIGHT); //光センサー(左) SetSensor(SENSOR_2, SENSOR_LIGHT); //光センサー(右) if((SENSOR_1 < white) && (SENSOR_2 < white)) //直進 {OnFwd(OUT_A+OUT_C);} if(SENSOR_1 < 0) //コースから右にそれたときの回復 {OnFwd(OUT_C); Float(OUT_A);} if(SENSOR_2 < 0) //コースから左にそれたときの回復 {OnFwd(OUT_A); Float(OUT_C);} if((SENSOR_1 < 0) && (SENSOR_2 < 0)) //交差点での停止&直進 {Off(OUT_A+OUT_C); OnFwd(OUT_A+OUT_C);} **オリジナルのプログラム [#n777f084] 共通プログラムのパーツを組み合わせ(改良して)~ オリジナルのプログラムを作った。~ 以下は、それぞれのプログラムと、本人による解説。~ ***しんごのプログラム [#f2889524] ***なかみうのプログラム [#gb976f48] #define white 45 task main() { SetSensor(SENSOR_1, SENSOR_LIGHT); //left SetSensor(SENSOR_2, SENSOR_LIGHT); //right int t = 0; //後で使う、定数「 t 」 while( t <= 5 ){ //直進。両方のセンサー:しろ if((SENSOR_1 < white) && (SENSOR_2 < white)){ OnFwd(OUT_A+OUT_C); } //hidari if(SENSOR_1 < 0){ OnFwd(OUT_C); Float(OUT_A); } //migi if(SENSOR_2 < 0){ OnFwd(OUT_A); Float(OUT_C); } //kousaten & go-ru if((SENSOR_1 < 0) && (SENSOR_2 < 0)){ t = t+1; Off(OUT_A+OUT_C); Wait(30); OnFwd(OUT_A+OUT_C); } } } *コース [#o92cde6a] コースはA1左グループと共同で作成した。~ 衝突もあったが、なんとかまとまった。~ ~ 完成したコースは、こちら。~