SHARP測距センサ「GP2Y0A21YK0F」の電圧と距離

やりたいこと

ArduinoでSHARPの測距センサ「GP2Y0A21YK0F」を使って距離を測りたい。
が、データシートの出力電圧と物体までの距離のグラフが曲線になっているので、パッと見では電圧→距離への変換がよくわからない。
ので、大体でいいので距離を求めるロジックが欲しい。

やったこと

「GP2Y0A21YK0F」のデータシート(pdf)から電圧-距離の値を目視で取得して、近似してみる。

やり方

1. データシートの5ページにある「Fig. 2 Example of distance measuring characteristics(output)」のグラフを拡大して、適当な範囲に目盛を振る。

元のFig.2

元のFig.2

Fig.2に目盛を入れた

Fig.2に目盛を入れた

Fig.2に目盛を入れた(拡大)

Fig.2に目盛を入れた(拡大)

2. 振った目盛をExcelに入力して、散布図を作って近似曲線を当ててみる。「累乗近似」だとなんとなくそれっぽい感じになった。さらに、サンプリングした区間ごとの直線の式を求める。(SLOPE関数とかINTERCEPT関数とか)

電圧と距離の関係

電圧と距離の関係

上記の画像をpdfにしたものはコチラ

3. 電圧ごとに条件分岐させて、電圧-距離の計算式をArduinoに当て込む。
Excelに表示された累乗近似の式を使ってもいいのかもしれないが、なんとなく各区間を直線で近似してみた。

取得された距離はだいたいな感じで。