先ほどのプログラムでは反射光の最低値だけを取り出して、残りの情報をすべて捨てていました。
このまま捨ててしまうのは、もったいないので配列に格納するプログラムを作ってみました(color3.ev3)。配列のデータを読み書きするには「配列操作」ブロックを使います。プログラムが巨大になってしまいましたので、マイブロックを使っています。
データの格納方法は配列のインデックスが移動距離(単位はmm。スタート時は0)です。配列の大きさは100個(インデックスは0~99)。格納には反射光の値0~100を格納します。
実行後の様子です。ラインを通過する様子がグラフとして描かれました。
先ほどのプログラムでは走っている最中にグラフを描いていましたが、このプログラムは走り終わったあとにグラフを描いています。センサーの情報は配列に格納されています。
配列の情報を解析すれば、センサーの最高値・最低値・しきい値も算出できます。
ロボット競技にはライントレースの要素がたくさんありますので、この技術を応用してみましょう。