C-Styleでmath.hなど(その2)

C-Codeを使えば三角関数も使える。ただし、遅い。


速度を単純に上げたいなら、より速いマイコンボードに替えるのが楽だと思う。TJ3Bを使いたいなら、プログラムを工夫するしかない。


速度にこだわるのは、理由がある。ロボットのスピードが毎秒1mとすると、0.1秒=100ミリ秒で10cm、0.01秒=10ミリ秒で1cm移動する。幅2cmのラインを1つのセンサで検知しようとすると、0.02秒=20ミリ秒以内にチェックを繰り返す必要がある。

ところが、TJ3Bでは1つのPINGを確認するだけ相当の時間がかかり、その他の処理も考慮するとその期間内にチェックを繰り返すことは難しい。処理速度を上げるためにPINGを必要時以外には使わないなどの対応を考慮する必要がある。