- 追加された行はこの色です。
- 削除された行はこの色です。
[[2005/A2/課題3]]
*作成中... [#bb617b20]
*アンバランス [#de3b3251]
モーター2個、光センサー1個使用。
**プログラム 要確認[#v0ae3c0b]
**プログラム [#v0ae3c0b]
task main()
{
SetSensor(SENSOR_2, SENSOR_LIGHT);
while(true){
if(SENSOR_2<45){
OnFwd(OUT_C);
}
else{
OnFwd(OUT_A);
}
Off(OUT_A+OUT_C);
}
}
**ロボの話 [#kc6e9308]
前の課題が遅くなってしまったため、タッチセンサーの付いたロボに
少し強引な形で、光センサーを付け走らせた。
...想像していたよりも速いスピードで鮮やかなコーナリングを決めていた。
**プログラムの話 [#bf8ebbeb]
時間の都合状、サンプルを少し変えただけの物になってしまった。
周りきれない場合を考えてタイマーを付ける...予定。
*モーターが一つ [#q766010b]
モーター1個、光センサー1個使用。
**プログラム [#b3bf4be0]
#define THRESHOLD 45 // 閾値
#define RUN_TIME 100 // トレースする時間(単位 1/10 秒)
task main()
{
SetSensor(SENSOR_2, SENSOR_LIGHT);
ClearTimer(0); // Timer(0) をリセット
while(Timer(0) <= RUN_TIME){ //タイマー有り
if(SENSOR_2 < THRESHOLD){ // 黒線上にいるとき
OnFwd(OUT_A);
}else{ // 黒線から外れたとき
OnRev(OUT_A);
}
}
Off(OUT_A+OUT_B);
}
**ロボの話 [#ffd1558f]
モーター1個だけを使用で試行錯誤を繰り返す。
説明書のシークレットのページで左にだけなら曲がれるようになり、
片方にしか曲がれないので逆戻りしてしまった。最初はifである時間以上トレース出来なければ次のトレースを無視するなどを考えたけど、
それだと一回転してもカーブを通過していなかったら意味が無いので却下した。富岡さんのスケッチも参考にしてみたがなかなかうまく
いかなった。
試行錯誤の結果、説明書のシークレットのページで左にだけなら曲がれるようになり、
同時に、モーター1個で前進後退の方法を理解した。
**プログラムの話 [#r6b10d26]
**作成者 [#q68b9c0b]
キャべツ トマト 富岡
**感想 [#te268daa]
#comment