[[戻る>2005/A6]] *製作中のプログラム [#c4c4fb09] 現在無し *製作したプログラム 『これまでの流れ』 [#c0e77817] **一番最初に作ったプログラム [#cb967754] // 初めてロボットを動かした時のプログラム task main() { OnFwd(OUT_A); OnFwd(OUT_C); Wait(110); Off(OUT_A+OUT_C); } // ただ進んで止まるだけ #comment **二番目に作った三角形を書くプログラム [#tc0fe390] //『repeat』プログラムを使えば簡単だった・・・ task main() { OnFwd(OUT_A+OUT_C); Wait(150); OnFwd(OUT_A); OnRev(OUT_C); Wait(110); OnFwd(OUT_A+OUT_C); Wait(150); OnFwd(OUT_A); OnRev(OUT_C); Wait(110); OnFwd(OUT_A+OUT_C); Wait(150); OnFwd(OUT_A); OnRev(OUT_C); Wait(110); OnFwd(OUT_A+OUT_C); Wait(150); } // 正三角形の軌跡を残すだけ #comment task main() // 『repeat』を使ったプログラム { repeat(3) { OnFwd(OUT_A+OUT_C); Wait(150); // 一つの辺の軌跡を書く OnFwd(OUT_A); OnRev(OUT_C); Wait(110); // 一つの角の軌跡を書く } } #comment **課題1についてのプログラム [#r8c50d1d] [[2005/A6/課題1/一班/コンドのプログラム]] **課題2についてのプログラム [#efca2f18] [[2005/A6/課題2左]] **課題3についてのプログラム [#z5951019] [[2005/A6/課題3左]] **課題4についてのプログラム [#qf1d30ff] // 12月5日 // コンド // 機体は課題3のモーターが二つあるタイプの機体と同じく三輪で後ろがキャスターになっている int light = 0; int turn_time = 60; task main() { SetSensor(SENSOR_2, SENSOR_LIGHT); // 真ん中のライトセンサー ClearTimer(0); // タイマー0をリセットする while(Timer(0) <= turn_time) // 6秒以内の動き { if(SENSOR_2 > light) // センサー2が『light』の光量より多いとき { light = SENSOR_2; // 『light』をセンサー2で示した値に置き換える } OnFwd(OUT_A); // 左タイヤが正転 } OnFwd(OUT_A); // 左タイヤが正転 until(SENSOR_2 >= light); // センサー2の値以上になるまで while(true) { if(SENSOR_2 < light) // センサーが懐中電灯の光から外れたとき { OnFwd(OUT_A); // 左タイヤが正転 OnRev(OUT_C); // 右タイヤが後転 until(SENSOR_2 >= light); // センサーが懐中電灯の光を見るまで } else // センサーが懐中電灯の光を見たとき { OnFwd(OUT_A + OUT_C); // 前進する until(SENSOR_2 < light); // センサーが懐中電灯から外れるまで } } } #comment