▼ 2016/06/08(水) 壁センサのキャリブレーションについて
【マイクロマウス】
B4 Kishimotoです。
学祭も終え、もうすぐマウス合宿です。
今年は福井大学が幹事校なので工房長以下準備に忙しい毎日を送っています。
さて、去年からやりたかったセンサのキャリブレーションをやってみました。
センサをAD変換した生値は線形性がなく、生値で壁制御をおこなうのは気持ち悪いと思っていました。
そこで、こちらのサイトを参考にlogを使ってキャリブレーションを行いました。
式としては
x = a / ln(y) - b
x:壁からの距離
y:センサ生値
となります。
未知数がaとbの2つあるので、最初に壁からの距離がわかる2箇所でセンサ生値を取って連立方程式を解く必要があります。
私は左右の壁にくっつけて2箇所取得しました。
この条件でやってみたところ、こうなりました。
横軸が壁からの距離、縦軸がセンサから求めた距離です。
壁に近い部分が線形ではなくなっています。
これはフォトトランジスタが飽和しているためで、赤外線LEDの電流制限抵抗を大きくしたところ、うまくいきました。
私はlogの計算はテーブルで行っています。
除算1回で済むので、高速(なはず)です。
学祭も終え、もうすぐマウス合宿です。
今年は福井大学が幹事校なので工房長以下準備に忙しい毎日を送っています。
さて、去年からやりたかったセンサのキャリブレーションをやってみました。
センサをAD変換した生値は線形性がなく、生値で壁制御をおこなうのは気持ち悪いと思っていました。
そこで、こちらのサイトを参考にlogを使ってキャリブレーションを行いました。
式としては
x = a / ln(y) - b
x:壁からの距離
y:センサ生値
となります。
未知数がaとbの2つあるので、最初に壁からの距離がわかる2箇所でセンサ生値を取って連立方程式を解く必要があります。
私は左右の壁にくっつけて2箇所取得しました。
この条件でやってみたところ、こうなりました。
横軸が壁からの距離、縦軸がセンサから求めた距離です。
壁に近い部分が線形ではなくなっています。
これはフォトトランジスタが飽和しているためで、赤外線LEDの電流制限抵抗を大きくしたところ、うまくいきました。
私はlogの計算はテーブルで行っています。
除算1回で済むので、高速(なはず)です。
- TB-URL http://usamimi.info/~isys/cgi-bin/adiary/adiary.cgi/mouse/0165/tb/