[[2006b/MemberOnly/進行状況A]] *課題 光を追いかけるロボット [#n3ce83cd] **ロボットについて [#jc8bd063] 今回の課題では、光センサーの部分をどのように装着するべきか、光をどのように探知するかに重点をおくべきでした。~ 前回の課題2からのロボのベースステーションを用いて、光センサーを装着するようにしました。 ***変更点 [#xca7f7c7] 制作をしている中での、変更点は光センサーを2個から1個にしたことです。 **プログラム [#k777191f] int Light=85; int turn_time=300; int light_max=0; int time_max; task main() { SetSensor(SENSOR_1,SENSOR_LIGHT); ClearTimer(0); while(FastTimer(0)<turn_time){ OnFwd(OUT_A); OnRev(OUT_C); PlayTone(SENSOR_1*10,3); if(SENSOR_1>light_max){ light_max=SENSOR_1; time_max=FastTimer(0); } } while(Timer(0)<=turn_time) { if(SENSOR_1>Light) { Light=SENSOR_1; } OnFwd(OUT_A); OnRev(OUT_C); } OnFwd(OUT_A); OnRev(OUT_C); until(SENSOR_1>=Light); while(true) { if(SENSOR_1<Light) { OnFwd(OUT_A); OnRev(OUT_C); } else if (SENSOR_1>= Light){ OnFwd(OUT_A+OUT_C); } } } ***反省点 [#x858d103] 最終的に光センサーは2個の方でも良かったという反省が出た。 ***苦労した点 [#jd663231] コンパイルしてもなかなかできなくて苦労した(笑)~ コメントをお願いします。 -上記のプログラムでは、光源がある程度遠くにある場合(SENSOR_1が常に85以下の場合)にはうまく動作しないのでは? それぞれの方角の明るさを比べて、より明るい方向へ向かうようなプログラムにしてみましょう(光源をどちらに動かしても対応できるように)。 -- [[松本(教員)]] &new{2007-01-17 (水) 16:13:32}; #comment