カラーセンサーはロボットの目です。
SpikePrimeのカラーセンサーでは、床やオブジェクトの色を確認することができます。
今回は反射光モードを使って、床の色を読み取り、黒い線をたどって走るプログラムを研究します。

最初に反射光測定のテストプログラムを作りましょう。

1 カラーセンサーを使おう!

上記のプログラムでは、プログラムがスタートすると無限ループでLEDマトリクスに”F”と表示した後、センサーFの感じている反射光の明るさを表示します。これを使ってコース各部の明るさを測定してみましょう。

次に、カラーセンサーを使って、黒い線を見つけてみましょう。

センサーFの反射光が50%以下になるまで右に回転します。

2 ライントレースをしよう!

①ジグザグライントレース(OnOff制御)

暗い時は右、明るい時は左にハンドルを切って、ジグザグ黒線をたどります。
線を見つけやすく、外れにくい性質があります。

②なめらかライントレース(Power制御)

目標とする明るさから反射光の明るさを引いて、その差をステアリングに入れているので滑らかに線をたどります。線から完全に外れると戻ることが難しくなります。

③走る距離をcmで制御

回転角1000度でだいたい50cm走らせていましたが、計算式を入れてcmを入力するマイブロックにしてみました。
タイヤ1回転分が17.5cmなので、360度を17.5cmでわり、1cmあたりの角度を出しています。
360÷17.5=約20.57…なので、入力したcmに20.6をかけて角度で制御しています。

角度制御を使うときは、まずモーターの相対角を0度にリセットすることを忘れずに!

今回作成したテキストはこちらです。