2010/12/23

シャープ測距モジュールGP2Y0A21YK

赤外線で距離を測る GP2Y0A21YKというモジュールがあります。
電源を供給するだけで 、距離に応じたアナログ電圧が勝手に出てくるので、それをA/Dして計算したら距離が測れます。だいたいの場合「ある距離まで近づいたかどうか」が分かれば良いので、実際には計算しなくても良い場合が多いでしょう。
電源電圧は5Vで消費電流は平均30mAということなので、HT7750Aとかで簡単に駆動できそうです。でも実際にやってみると、実はそうでもなかったのでした。

まず、消費電流はこんな風になっていて、ピークでは200mA以上だそうです。(DSO nano V2で波形を見てみたら、実際その通りでした。) この電流が取れないと、モジュールはちゃんと動作してくれません。HT7750Aではそんなに取れないのですが、平均の30mAを供給することはできるので、電源ラインに適切なコンデンサを入れてやれば大丈夫なはず。結局、モジュールに47uFを直付けしたらなんとかなりました。データシートには10uFを入れろと書いてありますが、電源の容量がプアな場合、10uFでは足りないようです。

平均30mAとはいえ、電池の寿命を考えると、必要なときだけ電源を供給するような使い方をしたいところ。データシートによると、電源を供給して60mS後ぐらいから正しい測定電圧が得られるそうなので、マイコンでうまくスイッチングしてやれば良さそうです。ただし、それなりの電流を流せるMOSFETとかを使わないと、電圧が下がってしまって、やっぱりモジュールはちゃんと動作しません。

結局、こんな回路になりました。PICのGP5でモジュールの電源を制御し、GP4で測定電圧を受け取ります。

 ちなみに、このモジュールから得られる測定電圧は、基本的に距離が近いほど高く、遠いほど低くなります。測定できる最大の距離は80cmで、それ以上になると、80cmの時よりもさらに低い電圧が出てきます。
モジュールに必要な電源電圧が供給されない場合にどうなるかというと、測定できる範囲が狭くなるだけでなく、その範囲を超えた場合に、より高い電圧が出るようになります。この電圧は電源の状態によってだいたい決まっているようで、実際の距離とは関係がありません。低い電圧が出てくれるとありがたいのですが、そううまくはいかないようです。

関連記事:
シャープ測距モジュールGP2Y0A21YK(その2)

0 件のコメント: