メモ:上からメガネ1〜4 *作業用。 [#vdd4b121] どちらのプログラムかわかるように印とかつけとくことー どちらのプログラムかわかるように印とかつけとく #br #br #br いちおう打ってみました。 鉛筆を車体の中央に持ってくることは可能でしょうか? すごいことにちょっと気づいてしまったのですが…… 円の方がうまくいきそうです。。。 #br 定義がきちんとできているのかとかがとても心配です。正直なところ。 #define TURN_T 54 //time for faceturn #define turn_l OnRev(OUT_A);OnFwd(OUT_C);Wait(81);Off(OUT_A+OUT_C); //turn #defrine turn_r OnFwd(OUT_A);OnRev(OUT_C);Wait(108);Off(OUT_A+OUT_C); sub hair() { OnFwd(OUT_A+OUT_C); Wait(35); Off(OUT_A+OUT_C); OnRev(OUT_A);OnFwd(OUT_C); Wait(108); Off(OUT_A+OUT_C); OnFwd(OUT_A+OUT_C); Wait(35); Off(OUT_A+OUT_C); } sub turn() //sub for turn { OnRev(OUT_A); OnFwd(OUT_C); Wait(TURN_T); Off(OUT_A+OUT_C); } sub go() //sub for face { OnFwd(OUT_A+OUT_C); Wait(30); Off(OUT_A+OUT_C); } task main() { OnFwd(OUT_A+OUT_C); Wait(10); Off(OUT_A+OUT_C); //eye turn_l; //for face start go(); turn(); go(); turn(); go(); turn(); // faceline end turn_l; OnFwd(OUT_A+OUT_C); Wait(10); Off(OUT_A+OUT_C); //eye go OnRev(OUT_A+OUT_C); Wait(10); Off(OUT_A+OUT_C); //eye back OnFwd(OUT_A); OnRev(OUT_C); Wait(54); Off(OUT_A+OUT_C); //turn OnFwd(OUT_A+OUT_C);Wait(5);Off(OUT_A+OUT_C); //forehead hair(); turn_r; hair(); turn_r: hair(); OnFwd(OUT_A); OnRev(OUT_C); Wait(54); Off(OUT_A+OUT_C); //turn OnFwd(OUT_A+OUT_C);Wait(5);Off(OUT_A+OUT_C); //forehead } *タッチセンサのやつ 試作品。 task main() { SetPower(OUT_A+OUT_C+OUT_B,1); SetSensor(SENSOR_1,SENSOR_TOUCH); SetSensor(SENSOR_3,SENSOR_TOUCH); while(true) OnFwd(OUT_A+OUT_C); if (SENSOR_1 == 1); { Off(OUT_A+OUT_C); Wait(10); OnRev(OUT_A+OUT_C); Wait(5); Off(OUT_A+OUT_C); Wait(5) OnFwd(OUT_A);OnRev(OUT_C); Wait(10); Off(OUT_A+OUT_C); OnFwd(OUT_A+OUT_C); } if (SENSOR_3 == 1); { Off(OUT_A+OUT_C); Wait(10); OnRev(OUT_A+OUT_C); Wait(5); Off(OUT_A+OUT_C); Wait(5); OnFwd(OUT_C);OnRev(OUT_A); Wait(10); Off(OUT_A+OUT_C); OnFwd(OUT_A+OUT_C); } if(SENSOR_1+SENSOR_3 == 1); { Off(OUT_A+OUT_C); Wait(10); OnRev(OUT_A+OUT_C); Wait(10); Off(OUT_A+OUT_C); Wait(5); OnFwd(OUT_A);OnRev(OUT_C); Wait(20); Off(OUT_A+OUT_C); OnFwd(OUT_A+OUT_C); } } sub turn_left() {OnFwd(OUT_C);OnRev(OUT_A); Wait(1); OnFwd(OUT_A); } sub turn_right() {OnFwd(OUT_A);OnRev(OUT_C); Wait(1); OnFwd(OUT_C); } #define THRESHOLD 50 // Ëáíl task main() { SetPower(OUT_A,1); SetPower(OUT_C,1); SetSensor(SENSOR_1,SENSOR_LIGHT); SetSensor(SENSOR_2,SENSOR_TOUCH); SetSensor(SENSOR_3,SENSOR_LIGHT); {if(SENSOR_2==1) {Off(OUT_A+OUT_C); Wait(50); OnRev(OUT_A+OUT_C); Wait(50); Off(OUT_A+OUT_C);} } while (true){ if((SENSOR_1<=THRESHOLD) && (SENSOR_3<=THRESHOLD)) {OnFwd(OUT_A+OUT_C); } } while(true){ if((SENSOR_3<=THRESHOLD) && (SENSOR_1>THRESHOLD)) {turn_left(); } } while(true){ if((SENSOR_1<=THRESHOLD) && (SENSOR_3>THRESHOLD)) {turn_right(); } } while(true){ if((SENSOR_1>THRESHOLD)&&(SENSOR_3>THRESHOLD)) {Off(OUT_A+OUT_C);Wait(1000); } } } [[2008b/A4/left]]