Note
こんにちは、SunFounderのRaspberry Pi & Arduino & ESP32愛好家コミュニティへようこそ!Facebook上でRaspberry Pi、Arduino、ESP32についてもっと深く掘り下げ、他の愛好家と交流しましょう。
参加する理由は?
- エキスパートサポート:コミュニティやチームの助けを借りて、販売後の問題や技術的な課題を解決します。
- 学び&共有:ヒントやチュートリアルを交換してスキルを向上させましょう。
- 独占的なプレビュー:新製品の発表や先行プレビューに早期アクセスしましょう。
- 特別割引:最新製品の独占割引をお楽しみください。
- 祭りのプロモーションとギフト:ギフトや祝日のプロモーションに参加しましょう。
👉 私たちと一緒に探索し、創造する準備はできていますか?[|link_sf_facebook|]をクリックして今すぐ参加しましょう!
受動赤外線(PIR)モーションセンサーは、動きを検出するセンサーです。これは、セキュリティシステムや自動照明システムでよく使用されています。センサーには、赤外線放射を検出するための二つのスロットがあります。物体(人間など)がセンサーの前を通過すると、赤外線放射量が変化するのを検出し、出力信号が生成されます。
PIRセンサーは、2つのスロットに分かれており、それぞれが差動アンプに接続されています。静止した物体がセンサーの前にある場合、2つのスロットは同じ量の放射線を受け、出力はゼロです。動く物体がセンサーの前にある場合、一方のスロットは他方よりも多くの放射線を受け、出力が高いまたは低いと変動します。この出力電圧の変化は、動きの検出によるものです。
感知モジュールが配線された後、1分間の初期化が行われます。初期化中には、モジュールは0〜3回の間隔で出力します。その後、モジュールはスタンバイモードになります。モジュールの表面から光源やその他の干渉源を遠ざけることで、干渉信号による誤動作を防ぎましょう。また、風の影響も避けるため、風が少ない環境での使用が望ましいです。
感知距離の調整用ポテンショメータのノブを時計回りに回すと、感知距離の範囲が広がり、最大で約0-7メートルになります。反時計回りに回すと、感知距離の範囲が狭まり、最小で約0-3メートルになります。
遅延調整用ポテンショメータのノブを時計回りに回すと、感知遅延が増加します。感知遅延の最大は約300秒です。反対に、反時計回りに回すと、最小5秒で遅延が短縮されます。
ジャンパーキャップを使用して、異なるモードを選択できます。
- H: 連続トリガーモード。人体を感知した後、モジュールは高レベルを出力します。その後の遅延期間中も感知範囲内に誰かが入ると、出力は高レベルのままです。
- L: 非連続トリガーモード。人体を感知すると高レベルを出力し、遅延後に自動的に低レベルに戻ります。
使用する電子部品
- Arduino Uno R4またはR3ボード * 1
- PIRモーションモジュール * 1
- ジャンパーワイヤー
回路の組み立て
Note
フレネルレンズによってピンマーキングが隠れています。これを開いて確認することができます。
PIRセンサーピンの設定。PIRセンサーのピンは2番ピンとして定義されています。
const int pirPin = 2; int state = 0;
PIRセンサーの初期化。
setup()
関数内で、PIRセンサーのピンを入力として設定します。これにより、ArduinoがPIRセンサーの状態を読み取れるようになります。void setup() { pinMode(pirPin, INPUT); Serial.begin(9600); }
PIRセンサーからの読み取りと結果の表示。
loop()
関数内で、PIRセンサーの状態は継続的に読み取られます。void loop() { state = digitalRead(pirPin); if (state == HIGH) { Serial.println("Somebody here!"); } else { Serial.println("Monitoring..."); delay(100); } }
もし状態が
HIGH
であれば、つまり動きが検出された場合、「誰かいる!」とシリアルモニターに表示されます。それ以外の場合は、「監視中...」と表示されます。
- 動きが検出された際に点灯または点滅するLEDを追加することができます。これにより、シリアルモニターメッセージに加えて視覚的なフィードバックが得られます。
- 動きが検出されたときに警報音を鳴らすブザーを組み込むことができます。