この間のLEDをセンサーとして使ってみる実験の続き。
http://brown.ap.teacup.com/nekosan0/877.html
この間は、普通の赤色LED、J-FETトランジスタ
(2SK246)、1kΩの抵抗の3つの部品を使って
光の強さを電圧に変換してみるところまでやりました。
今回は、J-FETトランジスタのバリエーションを
追加したり、抵抗値を変えてみたりしつつ、
arduinoに繋いだらどうなるかっていう実験
をしてみました。
J-FETトランジスタとしては、2SK246(BL)、
2SK170(BL)、2SK30ATM(GR)が
手元にあったので、この3つをチョイス。
抵抗値は、1kΩと2kΩ(=1kを2個直列)を使用。
arduinoに繋ぐ前に一旦テスターで出力電圧
を測定してみることに。
まずは2SK246で1kΩを接続。出力電圧は前回
どおり。光を遮ると約1.5V。蛍光灯が当っている
状態では約1.8V。至近から白色LEDで光を
あてると約2.2V。これは同型のトランジスタに
取り替えてもほぼ同じ。それなりに再現性があるって
考えてよいでしょう。
同様に2SK30ATMで1kΩだとそれぞれ
3.1V、3.8V、4.2V。
2SK170は何故だか5Vに振り切ったままで
センシング出来ず。
さて抵抗値を2kΩにしてみると…
2SK246はそれぞれ0.8V、0.9V、1.0V。
2SK30ATMはそれぞれ1.7V、2.5V、3.1V。
2SK170はやはりNG。
2SK170で上手く行かない理由が良くわかんない
んだけど、他の2つはそれなりに光の強弱を感じ
取っているみたい。ヨシヨシ。2SK30ATMは
振幅が大きく出ているのが特徴的。
この間、光が当ってない時の電流源が良く判らない
って話を書きましたが、このアタリについて一応想像
してみました。
FETトランジスタのゲート端子に流れる漏れ電流
と、LEDで生じる光電流のつりあいの問題じゃぁ
ないかな?FETの漏れ電流が電流源…と。
それにしてもなぜ2SK170はダメなのかは
やっぱよく判らん…
さて、出力をarduinoに繋いで見ます。
全パターンをテストするのはメンドウなので、
2SK240と1kΩ、2SK30ATMと1kΩ
の組合せのみ実施。
arduino側のスケッチは以前使ったものを
適当に流用し、アナログ入力の値をシリアルモニタ
に表示してみました。
…それなりに結構ちゃんと入力できているようです。
シメシメ。( ̄ー ̄)
ただ、蛍光灯の50Hzのちらつきのせいなのか、
蛍光灯や薄暗い光(これも蛍光灯が当っている)の
時には若干のばたつきがある感じ。
トランジスタ側にもパスコンを入れてないし、
ソフトウェア上でもノイズ対策を打ってないので、
バタバタするノイズは何らかのLPFを掛ける
必要がありそう。
でもまぁ、LED、FETtr、抵抗の3つだけの
部品…せいぜい50円以下…で光センサーが作れた
と考えればまぁまぁか。光の強弱でもう少し振幅が
大きく取れると良いんだけどな。
この後の発展としては、LEDを「光らせる」モード、
「センサー」モード、両方のモードに自由に切り替え
できるようにすること。
LEDだから光らないとあまり意味が無いわけ。
そのためには、arduinoのデジタル出力ピン
をFETtrのゲートとLEDの間に繋いで、
電圧を掛けて光らす、と。
ただそういうことするとまたarduinoの
端子に含まれるキャパシタンス成分や漏れ電流が
影響することになると思うので、単純に今回の
結果が使えるかどうかはわかんないんだよな…
まぁ、時間が出来たらやるだけやってみよう。
|