センサのほうも、まぁ使えそうなところに持っていきました。
今年はハードウェア側では全くフィルタをかけていないので、ソフトを考えて作りこみました。一応、強めのLEDでスポットライトじかに当ててもあまり揺らがない程度には値が取れるようになっています。
フォトトランジスタの応答速度は結構遅いので割とシビアに値の調整をしました。50㎲程度はないと追いつかないようなので、それを個別に1ms周期でずらして発光させています。ずらしも割と時間をおかないとなので、まともな値が取れるまではそこそこ実験しました。結果的には、電流も何も考えずに使う時の1/5にできましたし、割り込み処理が軽くなったので、高効率になったかなーと思います。
その後は、昨年時間がなくてできなかったセンサ値の近似化に取り掛かりました。
マイクロマウスのセンサ(とりあえず自分の場合)は、距離が近いと値の変化が急になりやすくなるような特性があります。遠いときは値の変化が緩やかです。そのようなグラフを近似化する必要があります。
調べてみると、自然対数を使う方法がなかなか有力なようで、確かに自然対数のグラフを見てみるとなかなかセンサの値と似ている感じでした。
ということで、それを用いて、実測値から連立方程式を解いてやって定数を算出し、式を出して近似してみました。結果はこんな感じです。
系列1が実際の距離、系列2が左前壁センサの値を近似化したもの、系列3は右前壁センサの値を近似化したものです。
どちらも110㎜を超えたあたりからずれていますが、正直値の実測の精度はたいして高くないですし、実用では問題ないかなという感じでしょうか。あと右のほうは飽和しています。左は飽和しないで比較的きれいなのになんででしょうね。光軸は結構調整しましたがどうも右は飽和します。まあ、15㎜程度なら何とかなると思います。
横壁センサも同様に近似して、なかなかよさげです。
とりあえずセンサも使えそうになりました。初めての試みでしたがうまくいっているようでよかったです。実際動かしてみないとこれがどう出るかはわかりませんが、生値を使っているよりははるかに良いと思います。
次は壁制御ですね。昨年のようにただ誤差をP制御するだけとかではだめそうなので、これも試行錯誤でやっていこうと思います。それが出来たら探索がようやくできる...とよいですね。迷路を動く姿を、見れるように頑張ろうと思います。
今日はこの辺で。
0 件のコメント:
コメントを投稿