秋月電子の焦電型赤外線センサユニット(SE-10)は、人や動物などの動きを検出するセンサです。 検出距離は約2[m]、範囲は約120度です。
物体は温度に応じて赤外線を出しています。 焦電型赤外線ユニットは、その赤外線の変化を検出します。 壁や家具、床などよりも、人や動物などの体温(表面温度)が高いので、センサの検出範囲に 人や動物が入ったり動くと赤外線が変化し、センサが検出します。 そのため、人や動物以外でも周囲より高温のものが動いたら検出しますし、 人や動物の動きが小さかったり、 冬の寒い外から入ってきたときなどは検出しないことがあります。
このセンサユニットの電源は5[V]〜12[V]ですので、5[V]動作のArduinoで使うのに向いています。 動きを検出するとALARM信号がLになります。オープンコレクタ出力なので、不検出時の電圧は プルアップ抵抗で決まります。基板から出ている電線の色は以下のようになっています:
番号 | 電線の色 | 名称 | 備考 |
1 | 赤/赤 | VDD | 5[V]〜12[V] |
2 | 茶/白 | GND(power shutdown) | |
3 | 黒/黒 | ALARM | センサ出力(オープンコレクタ) |
ロットにより電線の色が変わることがあります。
以下のスケッチは動きを検出するとArduinoのオンボードLEDを0.1秒間点灯します。 電源投入直後は動きがなくても検出します。 意外と広範囲で検出するようで、 センサを紙箱などで隠しても隠した隙間で検出してLEDが点灯することがありました。 検出範囲を絞りたいときには、NaPiOnの方がよいかもしれません。
const int LEDpin = 13; const int PIRpin = 2; void setup() { pinMode(LEDpin, OUTPUT); } void loop() { if (digitalRead(PIRpin) == LOW) { digitalWrite(LEDpin, HIGH); delay(100); } else digitalWrite(LEDpin, LOW); }