[[2005/MemberOnly/進行状況B]] sub tukamu() {OnFwd(OUT_B);Wait(70);} sub oku() {OnRev(OUT_B);Wait(70);} #define run_time 900 sub sasetu() { OnFwd(OUT_A);OnRev(OUT_C);Wait(80);Off(OUT_A+OUT_C);} sub usetu() { OnFwd(OUT_C);OnRev(OUT_A);Wait(80);Off(OUT_A+OUT_C);} task main() { SetSensor(SENSOR_1,SENSOR_LIGHT); SetSensor(SENSOR_2,SENSOR_LIGHT); SetSensor(SENSOR_3,SENSOR_LIGHT); tukamu(); // the 1st OnRev(OUT_A+OUT_C);Wait(50); sasetu(); OnFwd(OUT_A+OUT_C); Wait(500); usetu(); ClearTimer(0); while(Timer(0) <= run_time) { if (SENSOR_1<40&& SENSOR_2>40) {OnFwd(OUT_A);OnRev(OUT_C);} if(SENSOR_1>40&& SENSOR_2<40) {OnFwd(OUT_C);OnRev(OUT_A);} if(SENSOR_1<40&&SENSOR_2<40) {Off(OUT_A+OUT_C);} else {OnFwd(OUT_A+OUT_C);} } ClearTimer(1); while(30<SENSOR_3<=40) { OnFwd(OUT_A+OUT_C); Wait(106); usetu(); OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } while(SENSOR_3>=40) { OnFwd(OUT_A+OUT_C); Wait(318); usetu(); OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } while(SENSOR_3<=30) { OnFwd(OUT_A+OUT_C); Wait(530); usetu(); OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } oku(); OnRev(OUT_A+OUT_C); Wait(106); usetu(); while(318<Timer(1)<530) { OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } while(530<Timer(1)<742) { OnFwd(OUT_A+OUT_C); Wait(318);Off(OUT_A+OUT_C); } while(742<Timer(1)) { OnFwd(OUT_A+OUT_C); Wait(530);Off(OUT_A+OUT_C); } ClearTimer(0); while(Timer(0) <= run_time) { if (SENSOR_1<40&& SENSOR_2>40) {OnFwd(OUT_A);OnRev(OUT_C);} if(SENSOR_1>40&& SENSOR_2<40) {OnFwd(OUT_C);OnRev(OUT_A);} if(SENSOR_1<40&&SENSOR_2<40) {Off(OUT_A+OUT_C);} else {OnFwd(OUT_A+OUT_C);} } usetu(); OnFwd(OUT_A+OUT_C); until(SENSOR_1<40) sasetu(); OnFwd(OUT_A+OUT_C); Wait(106); sasetu(); OnFwd(OUT_A+OUT_C); Wait(106); Off(OUT_A+OUT_C); tukamu();// the 3rd OnRev(OUT_A+OUT_C);Wait(50); sasetu(); OnFwd(OUT_A+OUT_C); Wait(106); usetu(); ClearTimer(0); while(Timer(0) <= run_time) { if (SENSOR_1<40&& SENSOR_2>40) {OnFwd(OUT_A);OnRev(OUT_C);} if(SENSOR_1>40&& SENSOR_2<40) {OnFwd(OUT_C);OnRev(OUT_A);} if(SENSOR_1<40&&SENSOR_2<40) {Off(OUT_A+OUT_C);} else {OnFwd(OUT_A+OUT_C);} } ClearTimer(1); while(30<SENSOR_3<=40) { OnFwd(OUT_A+OUT_C); Wait(106); usetu(); OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } while(SENSOR_3>=40) { OnFwd(OUT_A+OUT_C); Wait(318); usetu(); OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } while(SENSOR_3<=30) { OnFwd(OUT_A+OUT_C); Wait(530); usetu(); OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } oku(); OnRev(OUT_A+OUT_C); Wait(106); usetu(); while(318<Timer(1)<530) { OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } while(530<Timer(1)<742) { OnFwd(OUT_A+OUT_C); Wait(318);Off(OUT_A+OUT_C); } while(742<Timer(1)) { OnFwd(OUT_A+OUT_C); Wait(530);Off(OUT_A+OUT_C); } ClearTimer(0); while(Timer(0) <= run_time) { if (SENSOR_1<40&& SENSOR_2>40) {OnFwd(OUT_A);OnRev(OUT_C);} if(SENSOR_1>40&& SENSOR_2<40) {OnFwd(OUT_C);OnRev(OUT_A);} if(SENSOR_1<40&&SENSOR_2<40) {Off(OUT_A+OUT_C);} else {OnFwd(OUT_A+OUT_C);} } sasetu(); OnFwd(OUT_A+OUT_C); Wait(212); usetu(); OnFwd(OUT_A+OUT_C); Wait(530); usetu(); OnFwd(OUT_A+OUT_C); Wait(36); Off(OUT_A+OUT_C); tukamu();// the 4th OnRev(OUT_A+OUT_C);Wait(50); usetu(); OnFwd(OUT_A+OUT_C); Wait(530); sasetu(); ClearTimer(0); while(Timer(0) <= run_time) { if (SENSOR_1<40&& SENSOR_2>40) {OnFwd(OUT_A);OnRev(OUT_C);} if(SENSOR_1>40&& SENSOR_2<40) {OnFwd(OUT_C);OnRev(OUT_A);} if(SENSOR_1<40&&SENSOR_2<40) {Off(OUT_A+OUT_C);} else {OnFwd(OUT_A+OUT_C);} } ClearTimer(1); while(30<SENSOR_3<=40) { OnFwd(OUT_A+OUT_C); Wait(106); usetu(); OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } while(SENSOR_3>=40) { OnFwd(OUT_A+OUT_C); Wait(318); usetu(); OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } while(SENSOR_3<=30) { OnFwd(OUT_A+OUT_C); Wait(530); usetu(); OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } oku(); OnRev(OUT_A+OUT_C); Wait(106); usetu(); while(318<Timer(1)<530) { OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } while(530<Timer(1)<742) { OnFwd(OUT_A+OUT_C); Wait(318);Off(OUT_A+OUT_C); } while(742<Timer(1)) { OnFwd(OUT_A+OUT_C); Wait(530);Off(OUT_A+OUT_C); } ClearTimer(0); while(Timer(0) <= run_time) { if (SENSOR_1<40&& SENSOR_2>40) {OnFwd(OUT_A);OnRev(OUT_C);} if(SENSOR_1>40&& SENSOR_2<40) {OnFwd(OUT_C);OnRev(OUT_A);} if(SENSOR_1<40&&SENSOR_2<40) {Off(OUT_A+OUT_C);} else {OnFwd(OUT_A+OUT_C);} } sasetu(); OnFwd(OUT_A+OUT_C); Wait(212); usetu(); OnFwd(OUT_A+OUT_C); Wait(106); usetu(); OnFwd(OUT_A+OUT_C); Wait(36); Off(OUT_A+OUT_C); tukamu();// the 6th OnRev(OUT_A+OUT_C);Wait(50); usetu(); OnFwd(OUT_A+OUT_C); Wait(106); sasetu(); ClearTimer(0); while(Timer(0) <= run_time) { if (SENSOR_1<40&& SENSOR_2>40) {OnFwd(OUT_A);OnRev(OUT_C);} if(SENSOR_1>40&& SENSOR_2<40) {OnFwd(OUT_C);OnRev(OUT_A);} if(SENSOR_1<40&&SENSOR_2<40) {Off(OUT_A+OUT_C);} else {OnFwd(OUT_A+OUT_C);} } ClearTimer(1); while(30<SENSOR_3<=40) { OnFwd(OUT_A+OUT_C); Wait(106); usetu(); OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } while(SENSOR_3>=40) { OnFwd(OUT_A+OUT_C); Wait(318); usetu(); OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } while(SENSOR_3<=30) { OnFwd(OUT_A+OUT_C); Wait(530); usetu(); OnFwd(OUT_A+OUT_C); Wait(106);Off(OUT_A+OUT_C); } oku(); } *感想:: [#t5ba8845] -これだけじゃさっぱりわかりません(’’; これが何を目的としたプログラムでどのように動作するのかもわかりません。ロボコンを通じてどのうようなことを考えて、どんなロボットを組み立てて、そしてどんな結果だったのか、何がだめだったか、どうすれば改善できるか、そういったことを人がみてわかるように書いてください。[[C5>2005/C5/ロボコン]]や[[C6>2005/C5/ロボコン]]を参考にするとよいでしょう。下手くそでもいいので面倒くさがらずにやってみてください。 -- [[まいける(TA)]] &new{2006-02-18 (土) 01:49:34}; -これだけじゃさっぱりわかりません(’’; これが何を目的としたプログラムでどのように動作するのかもわかりません。ロボコンを通じてどのうようなことを考えて、どんなロボットを組み立てて、そしてどんな結果だったのか、何がだめだったか、どうすれば改善できるか、そういったことを人がみてわかるように書いてください。[[C5>2005/C5/ロボコン]]や[[C6>2005/C6/ロボコン]]を参考にするとよいでしょう。下手くそでもいいので面倒くさがらずにやってみてください。 -- [[まいける(TA)]] &new{2006-02-18 (土) 01:49:34}; #comment