さて、何かこの週末は台風で外にあまり出れなかったので、結果的に Arduino 三昧な生活であった。
というわけで、動体検知センサーの動作確認をしてみる。Parallax 社の PIR Motion Sensor である。
Arduino との接続は下図のとおり。
センサーの VCC から POWER ピンの 5V ピンへ。GND からは GND ピンへ。動体検知をした場合に ON(HIGH)となる OUT 端子は DIGITAL ピンの 2番へ。
また、動体検知をしたら光らせるための LED も DIGITAL の 13番 & GND に接続。
プログラムは、「Using a PIR」という名前のサイトに載っていたものを、シリアル出力とかしないんで、その辺はざっくり削除。残りはそのまま使わせていただいた。(日本語のコメントは俺が入れた)
/** PIR センサーテスト*/int ledPin = 13; // LED 発光用int inputPin = 2; // センサーからの検知情報入力用int val = 0; // 検知情報セット用変数void setup() {pinMode(ledPin, OUTPUT); // LED 発行用に出力ピンとして設定(5V 電源)pinMode(inputPin, INPUT); // 検知情報読み取り用に入力ピンとして設定}void loop(){val = digitalRead(inputPin); // 2番ピンを確認(検知情報)if (val == HIGH) { // 動体検知された!!(2番ピンが HIGH(検知!!))digitalWrite(ledPin, HIGH); // LED 点灯}else {digitalWrite(ledPin, LOW); // LED を消灯}}:
これで、センサーが動体を検知したら、
こんな感じで LED が点灯する。
ちなみに、検知されてから数秒間(10秒くらい?)はセンサーは HIGH(ON)の状態である。
こっちでなんかハンドリングが必要(手動で LOW(OFF)にする必要)があるのかとパッケージ兼説明書を読んでみたけど(英語です(^^;)、センサーが自動で行うようで設定のジャンパとかは無かった。
この PIR センサーは、ジャンパ切替でノーマルモードと敏感モードを切り替えることが出来るようで、「ノーマル」の場合の検知範囲は 10m。「敏感」の場合は 5mだそうだ。
今回の俺の要件だと、ディフォルトのノーマルモードのままで十分実用的。
次回は、動体検知をしたら赤外線距離計の電源を ON にする回路を作ってみよう。
コメントする