ロボット・プログラミングを学び始めたり、ロボコンなどの大会に出場するときに、身につけておきたいておきたいテクニックの代表的なものの一つが、「ライントレース」です。
まずは、下の実際にライントレースしている動画をご覧ください。
ライントレースは、コースに描かれた黒い線にそってロボットを走らせるものです。応用として黒い線で止まって方向を変えるなど、ライントレースができるようになると、ロボットで実現できることの幅が広がります。
この記事では、ライントレースの基本的な考え方を解説していきます。
教育版レゴ®マインドストーム®EV3を利用されている方もまだ多いと思いますが、SPIKEプライムを使って解説していきます。
カラーセンサーの取り付け方
ライントレースを行うときには、カラーセンサーが必要になります。
カラーセンサーは、明るさや光の反射率、色などを感知できるセンサーです。

色や反射してくる光を感知するときに、感知したい物体とカラーセンサーの距離が16mmのときに最もよく反応するので、取り付ける位置に注意しましょう。
(参考:株式会社アフレル 技術情報)

ライントレースの基本となる仕組み
ライントレースは、以下の手順で行います。
- カラーセンサーで黒い線をみつける
- モーターを動かすプログラムを変えて、ロボットの進む方向を変更する
少し仕組みを詳しく説明していきます。
カラーセンサーでは、カラーセンサーから光を出して、どれくらいの光が反射されてかえってくるかを感知することができます。白色の場所ほどたくさんの光がかえってきます。

上の画像の場所では、反射率は85%でした。

一方、カラーセンサーで黒色の場所を測定すると、反射率の値は小さくなります。

上の画像では、反射率は22%でした。

カラーセンサーが黒色の線を見つけるということは、反射率の値が小さくなるということなので、もしカラーセンサーの反射光の値が小さくなったときに、モーターの動きを変更するというプログラムをつくることによって、下の動画のようにロボットの動きをコントロールすることができます。
上の動画は、下のプログラムで動いています。カラーセンサーの反射率の値が40%よりも小さくなった時、つまり、黒い線を見つけたときに、移動をやめる動きになっています。

ここまで説明してきた内容を応用すると、線にそって進むライントレースの動きを実現することができます。
ライントレースのプログラムをつくろう!
ライントレースを実現する方法は色々ありますが、ここでは一番基本となる方法について解説します。
カラーセンサーがロボットの左前についているロボットでライントレースすることを考えます。
ロボットが走っていって、もし黒い線を見つけたら、右方向に進むことにします。

次に、ロボットが白い線を見つけたら、左側に進行方向を変えて進むことにします。

上で説明した2つの動きを繰り返すと、黒い線にそって走ることができるようになります。実際にライントレースしている様子は、下の動画のとおりです。
このロボットのプログラムは、下の図のとおりです。カラーセンサーの反射率が40%より小さくなったら右方向に進み、反射率が40%よりも大きくなったら、左方向に進むプログラムとなっています。

さらに学びたい方に
本ブログを運営するMYLABでは、ロボット・プログラミングのコースを提供しているプログラミング教室です。
レッスンの詳細については、以下の記事をご参照ください。
ロボット・プログラミングをしっかり学んでみたいという方がいらっしゃいましたら、ぜひ一度教室の体験会にお越しください。