Mira&Luna's nursery lab

旅乙女と発明娘の子供部屋

人感センサモジュール「HC-SR501」をトランジスタで制御したLED照明の自作。

f:id:miraluna:20180105114819j:plain:w100 Mira

赤外線人感センサ(焦電型人感センサモジュール)[HC-SR501]を使って、人が来たら明かりが点く自動照明器を自作しました。

     こんなの →     f:id:miraluna:20190822163543j:plain:w300
電源は9v電池だけなので持ち運べます。
これがアマゾンで買える人感センサモジュール→ 



人が近づいたら人の出す赤外線をキャッチして一定時間LEDを点灯させる、というものです。
これのいいところは、
・コンセントにつながってないので持ち運べる(写真よりずっと小さくできます)。
・かなり明るい。まぶしいくらい。
・点灯時間・感知距離を調整できる(もともとモジュールに備わっている機能です)。
・LEDとセンサを同じ一つの電池で動作させる。電池交換が楽。
・照明が点くときにリレーのカチッという音がしない。
                         などなどです。
今回はArduinoを使わない電子工作です。
Arduinoを使ってAVRマイコン瞳子(ATtiny13)にプログラムを書いて制御もしてみたの。それもうまくいった。
でも明かりを点けるだけならマイコンなしでも十分なので、今回は瞳子chenの出番はなし。

◆ 焦電型赤外線人感センサモジュール [HC-SR501]
f:id:miraluna:20190822163650j:plain

これが今回の主役、人感センサよ。
アマゾンで買いました。151円だった。

◆ フレネルレンズと焦電センサ
f:id:miraluna:20190822163709j:plain
フレネルレンズを外すと中に焦電型赤外線センサがあります。レンズを通して、ここで赤外線を感知するのね。反対側の3本のピンのどれがVccでGNDでOutputなのか、レンズを外すと書いてあります。
RLというところにCdSセルを付けると、暗いときだけ感知するようになります。「LDRを付ける」って書かれていたので、LDRって何かしらって調べたら「光依存性抵抗 Light dependent resistor」だって。CdSセルもその中の一つみたい。
RTには温度センサ(サーミスタかtemperature-sensitive resistor)を付けるらしい。特殊な温度のときに(暑すぎるか寒すぎるかでしょうね)検知精度を上げるそうです。

それでは実装プランを立てましょう(∂.<🎀/

◆ トランジスタ [2SC1815]
f:id:miraluna:20190823065435j:plain

トランジスタを使うことにしました。
どうしてかというと......。
1.人感センサは 5v~20vまでO.K.。だから 9v電池がそのまま使える。
2.人感センサのOutputは 3.3vだけど、LED照明は 3.3vよりももっと明るくしたい。
3.電源はできれば一つで済ませたい。
そんなわけで 9v電源とリレーを使おうと思ったんだけど。

リレー。この前Aitendoで買ったと思っていたけど、やっぱり買うのやめたんだった。
ということで家にリレーがない。

そこで。トランジスタをリレーとして使うことにしたの。


トランジスタにはコレクタとエミッタとベースという3本の足があって、ベースに電流を流すとコレクタとエミッタ間で止められていた電流が流れる。つまり人感センサの 3.3vをベースに流すことで、もっと大きな電流をスイッチできるというわけ。リレーと同じ働きね。

トランジスタにはNPN型とPNP型があって、それによってつなぎ方が変わるから注意しましょう。

◆ NPN型トランジスタとPNP型トランジスタ
f:id:miraluna:20190823065448j:plain

下の図にまとめてみました。

◆ NPN型とPNP型のつなぎ方
f:id:miraluna:20190822163611j:plain

赤い斜線の入った四角が電流を流したい物。ここではLEDね。
NPN型ならLEDを電源とトランジスタの間につなぐ。
PNP型ならLEDをトランジスタとグラウンドの間につなぐ。

私はNPN型のトランジスタ[2SC1815]を使いました。

          ◆ トランジスタの足の配置
          f:id:miraluna:20190824202751j:plain:w300

◆ ます目地図
f:id:miraluna:20190822163514j:plain

私ははんだづけがいつまでもへたっぴだから、混乱しないようにいつも基板のます目地図を書くの。今回は基板はほとんど必要なくて、導線ばっかりだけど。
ノートのます目が基板の穴。6x8の小さな基板を使ったのよ。
トランジスタのベースに電流が流れると、コレクタとエミッタ間がつながってLEDに電流が流れる回路。人感センサは常に通電していて、赤外線を感知するとアウトプット線から 3.3vがベースへと流れるの。

◆ 実装。導線ばっかり。
f:id:miraluna:20190822163624j:plain
基板にはスイッチとトランジスタしかついてないわね。

◆ 基板部分
f:id:miraluna:20190822163557j:plain
     シンプル。

◆ 人感センサへ接続
f:id:miraluna:20190822163723j:plain
人感センサへはピンソケットで接続します。

◆ 実装完了
f:id:miraluna:20190822163746j:plain
これで実装完了。
なんだけど......。

じつはまだこの人感センサの能力には続きがあるの。

もう一度センサモジュールの裏側を見てみましょう。

◆ マイコン
f:id:miraluna:20190823173214j:plain
これがモジュールの裏側。
上にある3本のピンヘッダが電源とアウトプットとグラウンドの線。

左下にはジャンパピンがついてる。
これを青丸側に挿すとシングルトリガになって、赤丸側に挿すとリピートトリガになる。
シングルトリガは感知してLEDを点灯させたら、一定時間後に一度消灯するモード。
リピートトリガは感知してLEDを点灯しているときも再感知して、感知している限り点灯し続けるモード。
初めはシングルトリガになっていたので、これをリピートトリガに変えました。

◆ 暗い時だけ点灯
f:id:miraluna:20190823173203j:plain
今度はレンズを外した表側。RLと書かれていたところにCdS(カドミウム)セルを付けました。これで暗い時にしか感知しなくなります。

◆ 待機時間をなくす
f:id:miraluna:20190823173157j:plain
このモジュールの初期設定では、感知した後2.5秒間のブロックタイムという感知しない待ち時間があるの。これは変更可能で、マイコンの5pinと6pinに抵抗を挟むとその抵抗値が小さくなるほど短くできるみたい。ショートさせることもできて、そうすると待ち時間がなくなるんだって。だからショートさせました。

◆ 調整機能
f:id:miraluna:20190822163645j:plain
この人感センサモジュールには「感知距離」と「点灯時間」の調整機能がついているの。
左の半固定抵抗器は点灯(アウトプット)時間、右のは感知距離。
点灯時間は時計回りで長くなって反時計回りで短くなる。範囲は 3秒~300秒。
点灯距離は時計回りで近くなって反時計回りで遠くなる。範囲は 3~7m。

◆ 仮実装
f:id:miraluna:20190822163528j:plain
完成したので実装しましょう。と思ったんだけど、なかなかいい容れ物がなかったからとりあえずペットボトルに仮実装。

◆ 点灯
f:id:miraluna:20190822163543j:plain
うまく機能しています。
LEDは使い方がよく分からなくて2つだけ点灯させてる。すごくまぶしい。

でも夏で暑いからかな、ときどき感知しにくいときがある。
涼しくなったらもう少し感度が良くなるかもね。


追記:)この後とってもぴったりの容れ物が見つかったのでそれに入れました。感知しにくさも解消して、敏感に反応します。
人が近づくと光るかぼちゃランタンよ。
miraluna.hatenablog.com

人感センサLED照明の自作方法の紹介でした。

f:id:miraluna:20180815165315j:plain:w200 Mira