ライントレース用のシートを床に広げます。
赤色LEDの光が直径1.5cmくらいの範囲を照らします。その光を床面の「白」と「黒」の中間に合わせて、値を読み取ります。
このセンサ値はあとで使いますので、覚えておいてください。
こちらが「ロボットエデュケータ」でも紹介されている、おそらく一番簡単なプログラムです。 NXTソフトウェアを使ってプログラムを作りました。これを1号機と名付けました。
このプログラムは、「スイッチブロック」を使って、光センサの値を「白」か「黒」かに分岐させています。
[Download]ライントレーサ1号機
(教育用NXTソフトウェア2.0で作成)
こちらがプログラムが動いているときのムービーです。
[Movie]1号機の動作中のムービー(youtube)
よく見るとロボットはジグザグに進んでいます。
これはなぜでしょうか?
ライントレースロボットの動きを図にするとこのようになります。
青い矢印がC側のモータを動かした時の動き、
赤い矢印がB側のモータを動かした時の動き、です。
ロボットは BとCのモータを交互に動かして、線の切れ目を探しながら前に進みます。ロボットがジグザグに進んでいるのはこのためです。
スイッチブロックには先に測定した「白と黒の中間」のセンサ値を入力します。
自分の場合だと「42」が中間だったので、「42」を入力しました。
ここが「白でもない黒でもない位置」ということになります。