Arduino で PIR モーションセンサーを利用する

ここでは Arduino で PIR センサーを利用する方法を示します。

PIR (Passive Infrared) センサーで人の動きを検出し、モーションを検出した場合に LED を点滅させます。

今回使用したセンサーは PIR Motion Sensor (JST) (Sparkfun ID: SEN-13285) です。

このセンサーは電源投入後約 2 秒ほど周囲の状況のスナップショットを取得して、その後赤外線の動きによって何かの動作を検出したときに、 アラームピンを LOW にセットします。

アラームピンはオープンコレクタですので、プルアップ抵抗が必要です。 Arduino にはビルトインのプルアップ抵抗があり、ピンの設定時に INPUT_PULLUP を指定すれば、それを利用することが可能です。

動作電圧は 5V から 12V。ワイヤーは赤がパワー、白がグラウンド、黒がアラームです。

LED の点灯について不安がある場合は、「LED を点灯させる」をみてください。

const int PIN_PIR_SIG = 5;
const int PIN_LED = 10;

void setup() {
  pinMode( PIN_PIR_SIG, INPUT_PULLUP );
  pinMode( PIN_LED, OUTPUT );
}

void loop() {
  int i = digitalRead( PIN_PIR_SIG );
  if( i == LOW ){
    for( int j=0; j<5; j++ ){
      digitalWrite( PIN_LED, HIGH );
      delay( 50 );
      digitalWrite( PIN_LED, LOW );
      delay( 50 );
    }
  }
}

pinMode で PIR モーションセンサーからの入力ピンは INPUT_PULLUP として、 プルアップしていることに注意してください。

以上、ここでは PIR モーションセンサーを利用して、動作を検出した際に LED を点滅させる例を紹介しました。

ここまでお読みいただき、誠にありがとうございます。SNS 等でこの記事をシェアしていただけますと、大変励みになります。どうぞよろしくお願いします。

© 2024 基礎からの IoT 入門