#author("2019-12-26T12:46:37+09:00","minami","minami") #contents *課題2 [#j9c6ac10] *ロボットの説明 [#o297fb89] *プログラミングの説明 [#nab36970] **閾値と進行方向の設定 [#a65a5ec6] #define average 50 //基準の値 #define go1 OnFwd(OUT_B,30);OnFwd(OUT_C,-20); //go1の方向に進む(図参照) #define go2 OnFwd(OUT_B,20);OnFwd(OUT_C,-10); //go2の方向に進む(図参照) #define go3 OnFwd(OUT_BC,30); //go3の方向に進む(図参照) #define go4 OnFwd(OUT_B,-10);OnFwd(OUT_C,30); //go4の方向に進む(図参照) #define go5 OnFwd(OUT_B,-20);OnFwd(OUT_C,30); //go5の方向に進む(図参照) 基準の値との差で進行方向を考えるプログラムを作ったので、他のコースでする場合でも基準の値を変えるだけでそれなりにライントトレースすることが出来る。 **左折と直進の設定 [#ga091e3b] 左折~ 当初、変数を用いなかったが左折する場面が数回ありそれぞれで微調整出来るように変数を用いた。 #define left(s,t) OnFwd(OUT_B,s);Wait(t);Off(OUT_B); //左折 直進~ 左折と同様の理由で変数を用いた。 #define straight(s_b,s_c,t) OnFwd(OUT_B,s_b);OnFwd(OUT_C,s_c);Wait(t);Off(OUT_BC); //直進 **Uターンとボールをとる動作の設定 [#d3e07315] #define uturn OnFwd(OUT_B,-75);OnFwd(OUT_C,70);Wait(700);Off(OUT_BC); //Uターン #define ball OnFwd(OUT_A,-30);Wait(300);Off(OUT_A); //ボール *まとめ [#y99ee845]