2015年3月23日 星期一

Arduino 測距系列 (五) Sharp GP2D12

之前既都係用超聲波, 今次講隻貴野, 用紅外線測距既 GP2D12



基本資料:

電壓:4-5.5V
電流消耗:33-50mA
感應角度:不大於 15度
探測距離:10 - 80 cm
探測精度:0.1cm+1%
分辨率:高於 1mm (可達 0.5mm)


相關資料下載:
GP2D12
GP2D12 使用說明書
GP2D12 Data Sheet

接線方法:

呢度要小心, 因為佢D針腳無名, 用番上圖咁放, 由左至右分別係 Vo, GND, Vcc



UNOGP2D12
A0Vo
5VVcc
GNDGND


測試程式:

呢舊野真係玩死人, 由於佢條曲線無一個好既轉換公式, 基本上只係用比較接近既方法去轉換成真實距離.



比較多見既兩條公式:
(1) http://www.geek-workshop.com/forum.php?mod=viewthread&tid=734&highlight=gp2d12 :

distance = 2547.8 / (0.49 * val - 10.41) - 0.42;

(2) http://playground.arduino.cc/Main/ReadGp2d12Range :
(Manning 本 Arduino in action 既例子都係用呢個計)

distance = (6787.0 / (val - 3.0)) - 4.0;

兩條公式都幾唔同下, 當中差距都幾大下, 只係有部份會比較接近.
如果要兩條公式既差距在 5% 內的話, 只可以接受 val 大約為在 80 - 450 之間.
即距離大約在 10 - 80 cm 之間, 亦配合 GP2D12 的探測距離.
所以, 用以上兩條公式去計算, 差距在 5% 以內.  用邊條都可以.


沒有留言:

張貼留言