※当サイトはアフィリエイト広告(Amazonアソシエイト含む)を掲載しています。

人が近づくと反応する!超小型PIRモーションセンサー(人感センサー)の仕組みと使い方

Technology

コンニチハ AsoBot(アソボット)ダヨ!!

人が近づくとパッと自動で点灯するライトや、自動ドア、防犯カメラ。 「どうして人が来たってわかるんだろう?」って不思議に思ったことはないカイ?

実はこれ、「PIR(人感)センサー」という部品が使われているんダ。

今回は、Amazonでも手軽に手に入る超小型のPIRモーションセンサーモジュールを使って、その見た目やピンの秘密、動く仕組み、そしてメリット・デメリットまでを分かりやすく紹介するヨ!

センサーの見た目とピンの役割

今回紹介するのは、直径が1センチちょっとの、白いお団子みたいなドームがついた、とってもちいさなセンサーモジュール。 サイズがコンパクトだから、おもちゃや小さなガジェットにも簡単に組み込めちゃうんダ。

まんまるな白いドームの正体

この白いポコポコしたドームは「フレネルレンズ」というレンズ。まわりの光(赤外線)を効率よく集めるための大切な役割を持っているヨ。

3本のピン(信号線)を繋ごう

このセンサーからは3本のピンが出ていて、付属のケーブルを使ってArduinoやRaspberry Pi、micro:bitなどのマイコンに接続するんだ。
今回はSeed Xiao ESP32-C6という小さいマイコンを使うよ。

  • Power+ → 5V: 電源を繋ぐピン(だいたい3V〜5Vくらいで動くヨ)。
  • Signal OUT → D0: センサーが「人を検知したよ!」という合図を送るピン。
    • 人がいるとき ➡ HIGH(電気が流れる)
    • 人がいないとき ➡ LOW(電気はゼロ)
  • Power- → GND マイコンのGND(グラウンド)に繋ぐピン。

なぜ人を検知できるの?PIRセンサーのひみつ

PIRは「パッシブ・インフラレッド(受動赤外線)」の略なんダ。

「受動」っていう言葉の通り、このセンサーは自分からビームや電波を出しているわけじゃないんだヨ。じゃあどうやって見つけているかというと……

「人間や動物の体から出ている、目に見えない『赤外線(熱)』をキャッチしている」

んダ!

  1. 体温を見張っている: 人間はみんな、体から温かい赤外線を出して生きているヨ。
  2. レンズで空間をバラバラに: 白いドーム状のレンズが、まわりの景色を細かくハチの巣みたいに小分けにして見張っているんだ。
  3. 動いた変化をキャッチ!: 人がセンサーの前を歩くと、小分けにされたエリアの間で「熱が動いた!」というゆらぎ(変化)が起きる。センサーはこれを見逃さずに「人が来たヨ!」と判断して、OUTピンからHIGHの信号を出すんだね。

だから、センサーの前で「だるまさんがころんだ」みたいに完全にじーっと止まっている人は、変化が起きないから見つけられなくなっちゃうんだ。おもしろい特徴だよね!

PIRセンサーのいいところ・苦手なところ

工作で使うときに知っておきたい、このセンサーの得意なことと苦手なことをまとめたヨ。

◎ いいところ(メリット)

  • 電気をほとんど使わない!: 自分から光やビームを出さないから、電池で動かす工作にぴったり。
  • 暗闇でもへっちゃら: 見ているのは「熱(赤外線)」だから、真っ暗な部屋でもバッチリ人を感知できるヨ。
  • プログラミングがとっても簡単: 「人がいればHIGH、いなければLOW」という単純なスイッチみたいな仕組みだから、難しいコードを書かなくてもすぐに動かせちゃうんダ。

✕ 苦手なこと(デメリット)

  • じっとしていると消えちゃう: センサーの前で動かずに本を読んでいると、動きがないから「誰もいなくなった」と勘違いして信号がOFFになっちゃうんだ。
  • 夏場はちょっとニガテ: まわりの気温が人間の体温(36度くらい)と同じになると、熱の差がなくなって反応しにくくなることがあるヨ。
  • ガラス越しには効かない: 赤外線はガラスを通らないから、窓ガラスの向こう側にいる人は見つけられないんダ。

実際のプログラムのイメージ

XIAO ESP32-C6に繋ぐときのコードは、驚くほどシンプル!

配線のやり方

  • センサーの VCC ➡ ESP32-C6の 1番ピン(5V)
  • センサーの OUT ➡ ESP32-C6の 1番ピン(D0)
  • センサーの GND ➡ ESP32-C6の 1番ピン(GND)

サンプルコード

人が近づいたら、ボードの上にあるLEDが光るプログラムだよ。

from machine import Pin
import time

# センサーのSignal OUTが繋がっているD0GPIO 0)」ピンを入力モードに設定
# 信号を安定させるために内部プルダウンPin.PULL_DOWNを設定しておくヨ
pir_sensor = Pin(0, Pin.IN, Pin.PULL_DOWN)

# ESP32-C6本体のLEDボードによってピン番号が変わるヨここでは例としてGPIO 15)
# ※XIAO ESP32C6は GPIO 15 が本体LEDになっているヨ
led = Pin(15, Pin.OUT)

print("ESP32-C6:センサーの見張りスタートだヨ!")

while True:
    # センサーの状態を読み取る(1=人がいる、0=誰もいない
    if pir_sensor.value() == 1:
        led.value(1)  # 本体LEDをピカッと点灯
        print("人が近づきました!キャッチ!")
    else:
        led.value(0)  # 誰もいなくなったら消灯
        print("誰もいません...")
        
    time.sleep(0.5) # 0.5秒おきにチェックするヨ

この超小型センサーは、人がセンサーの前で動き続けている間は、ずっと「HIGH(人がいるよ)」をキープしてくれるかしこい仕組み(繰り返しトリガー)になっているんダ。 人がいなくなってから、2〜3秒すると自動で「LOW(誰もいないよ)」に戻るから、タイマーのプログラムを細かく書かなくてもよくてとってもラクチン!

💡 AsoBotからのワンポイントアドバイス!

ESP32-C6は、Wi-FiやBluetooth(さらには最新のZigbeeやThreadまで!)が使えるもの凄く最先端なマイコンなんダ。

今回のプログラムで人が近づいたのをキャッチしたら、「Wi-Fiを使ってスマホのLINEに『だれか来たヨ!』とメッセージを送る」なんていう、本物のスマートホームシステム(見守り装置)へ簡単にパワーアップできちゃうヨ!

どんなおもしろいモノが作れるかな?

この小さな人感センサーを使えば、アイデア次第でワクワクするロボットや装置が作れるヨ!

  1. 自動ウェルカムライト ベッドの下や玄関に置いておいて、夜中にパッと足元を照らしてくれる優しいライト。
  2. お部屋の見守り・防犯ロボ 誰かが部屋に入ってきたら、ブザーを鳴らしたり、ネット経由でスマホに「だれか来たヨ!」って通知を飛ばす装置。
  3. 近づくと喋り出すおもちゃ 人が近づいた瞬間をキャッチして、サーボモーターで手を振ったり、音声合成チップで「コンニチハ!」っておしゃべりするからくりロボット。

まとめ

今回紹介した小型PIRセンサーは、ワンコイン以下で買えちゃうのに、とっても使いやすくて工作の幅がグッと広がる優秀な部品なんダ。

配線も3本だけだし、難しい設定もいらないから、電子工作が初めてのお友達にもおすすめ! 「人が来たら〇〇が動く!」という仕掛け、みんなならどんな面白いものを作るカイ?

ぜひ手に入れて、自分だけの発明品を作ってみてネ!