
今回は光センサーを2つ使って、ロボットに確実に自分の位置を確かめさせながら動く方法を考えてみましょう。
ちょっと長くなりましたががんばってください。

①黒まで前進
kuro1、kuro2を変数と言います。変数は数字を覚えておく箱だと思ってください。
最初は0を入れておいて、光センサーが黒を感知したら1を入れるようにプログラムしてあります。
<kuro1=1>かつ<kuro2=1>まで繰り返す
がその命令です。
繰り返しの中身が、「もし」2つになっています。
その中身は、光センサー1について反射光が50%以下ならモーターを停止してkuro1に1を入れます。
反射光が50%以上ならBモーターを30%のパワーで前進させます。
光センサー1とモーターBを関連付け、明るい間前進させて、暗くなったら止める。そしてkuro1に1を入れる。
ということです。
次の「もし」で光センサー2とモーターCを関連付けて同じことをしています。
これで両方のセンサーが黒を感知するまで前進するプログラムになります。

②白になるまで前進
今度はさらに白になるまで前進してみましょう。
内容は①とほとんど同じですね。
ただ、①の終了条件が50%以下だったので、今回の終了条件はそれより明るい60%になっていることに注意してください。もし、50%を指定すると、一瞬でこの②は終わってしまいます。

③黒まで左回転
④左黒までライントレース
③では、右の光センサー2が黒を感知するまで左回転しています。
センサーは前についているので、黒い線上にタイヤが車で前進してから行っています。
センサーを使うと、確実に黒線の上にセンサーをもってくることができます。

そのあとは右の光センサー2でライントレースしながら、左の光センサー1で黒線を探しながら進んでいます。
こうすることで下のような場所を確実に捉えることができます。
