4号機で、もう大満足なのですが、ちょっと欲張って、次の点をパワーアップさせてみました。
改良したプログラムがこの5号機です。
プログラムが長くなってしまいましたので、分割して紹介します。
[Download]ライントレーサ5号機
(教育用NXTソフトウェア2.0で作成)
前半のプログラムです。ここで各変数を初期化しています。
こちらが後半のプログラムです。光センサの値から「センサの位置」を計算して、
さらに左右のモータのパワーを割り出しています。
「センサの位置」は、0だと中心、値がマイナスだと黒側に寄っている状態、値がプラスだと白側に寄っている状態となります。
「センサの位置」の値に変数Gainを掛けて、その結果を変数Powerから足します(または引きます)。
つまり、直線のラインでは、左右のモータが変数Powerのパワーで回ります。
カーブのラインを走るときは、内側のモータのパワーが減り、外側のモータのパワーが増える、、、というわけです。
動作中の様子です。
スピードアップしたため、若干ふらついてますが、かなりなめらかに進んでいます。 1号機ではコースを1周するのに1分ほどかかっていましたが、 5号機では約10秒にまで短縮できました。
[Movie]5号機の動作中のムービー(youtube)
変数Powerや変数Gainの値を変えて、動きがどう変わるのか確認してみると面白いと思います。
ライントレースロボットは難しい技術を一杯ふくんでいますが、難しいからこそ競技で人気があります。 そして、この技術にはまだまだ続きがあります。次回をお楽しみに。