Hardware - Mini-IR-Modul AM312
Dieser - wirklich kleine - Infrarot-Bewegungsmelder eignet sich gut für bewegungsgesteuerte Projekte - allerdings ist die Reichweite des Sensors grössenbedingt eingeschränkt.
Dafür passt er in fast jedes Mini-Gehäuse, wo auch ein ESP reinpasst...

Die Platine hat folgende Anschlüsse:
VIN und GND | hiermit wird der Sensor mit Strom versorgt, aufgrund des geringen Stromverbrauchs könnt ihr ihn direkt von den 3.5/5V Anschlüssen des ESP aus betreiben |
OUT | hier gibt der Sensor ein Signal aus, wenn er etwas detektiert hat, ihr führt es auf einen PIN am ESP.. |
Man kann den Sensor sehr gut nutzen, um z.B. den ESP aus dem "Tiefschlaf" zu wecken, damit er dann Aktionen ausführt.
Hier ein kleines Programm für den ESP32..
(Achtung - der Text [code].....[/code] gehört NICHT zum Programm..)
[code]
// der Infrarotsensor gibt ein Signal auf seinem PIN OUT aus - dies wird
// hier auf PIN 13 des ESP abgefragt...
// Bibliotheken
#include "driver/rtc_io.h"
// Definitionen......
// keine...wir greifen direkt auf den PIN zu...
// erste Einstellungen.... diesmal als Arbeitsschleife nach jedem Aufwecken
void setup() {
Serial.begin(115200); // Verbindung zum seriellen Monitor
// der Arduino-Oberfläche - der Wert muss passen)
pinMode(13, INPUT); // Modus des PIN's einstellen
// jetzt die abzuarbeitenden Befehle - hier nur eine Meldung
// auf den seriellen Monitor in der Arduino-Oberfläche....
Serial.println (" jetzt arbeite ich - gleich schlafe ich....");
delay(1000); // optional 1 sek warten
// jetzt die Definition für den Tiefschlaf...
esp_sleep_enable_ext0_wakeup(GPIO_NUM_13, 1); // wache auf, wenn der PIN 13 vom PIR Signal bekommt...
esp_deep_sleep_start(); // und der Schlaf-Befehl....
Serial.println("Wird nicht mehr ausgegeben"); // da er ja schläft...
} // Ende setup
// Dauerschleife..... die wird diesmal nicht genutzt...
void loop() {
// ....
} // Ende loop
[/code]
Probiert es doch einfach aus....