ESP32 C3 Super Mini - Bewegungssensor

Lernen Sie, wie Sie mit Ihrem ESP32 C3 Super Mini und dem HC-SR501-Bewegungssensor Bewegungen erkennen. Dieses einsteigerfreundliche Tutorial behandelt alles, was Sie zum Bau von Bewegungserkennungsprojekten mit dem ESP32 C3 Super Mini benötigen.

In diesem Tutorial lernen Sie:

ESP32 C3 Super Mini - Bewegungssensor

Erforderliche Hardware

1×ESP32 C3 Super Mini
1×USB-Kabel Typ-A zu Typ-C (für USB-A PC)
1×USB-Kabel Typ-C zu Typ-C (für USB-C PC)
1×HC-SR501 Bewegungssensor
1×Breadboard
1×Verbindungskabel
1×(Optional) DC-Stromanschluss

Oder Sie können die folgenden Kits kaufen:

1×DIYables Sensor-Kit (18 Sensoren/Displays)
Offenlegung: Einige der in diesem Abschnitt bereitgestellten Links sind Amazon-Affiliate-Links. Wir können eine Provision für Käufe erhalten, die über diese Links getätigt werden, ohne zusätzliche Kosten für Sie. Wir schätzen Ihre Unterstützung.

Überblick über HC-SR501 Motion Sensor

HC-SR501-Bewegungssensor

Der HC-SR501 ist ein PIR-Sensor (Passiv-Infrarot), der Bewegungen erkennt, indem er Veränderungen der Infrarotstrahlung wahrnimmt.

Hauptmerkmale:

  • Erkennt automatisch Bewegungen von Menschen und Tieren
  • Arbeitet mit 5V-Stromversorgung
  • Gibt ein digitales Signal aus (HIGH/LOW)
  • Einstellbare Empfindlichkeit und Verzögerungszeit
  • Großer Erfassungsbereich (bis zu 7 Meter)
  • Kostengünstig und einsteigerfreundlich

Häufige Anwendungen:

  • Automatische Lichtsteuerungssysteme
  • Sicherheits- und Einbrucherkennung
  • Automatische Türöffner
  • Energiesparende Geräte
  • Smart-Home-Automatisierungsprojekte

Pinbelegung des HC-SR501-Bewegungssensors

Der HC-SR501 hat eine einfache 3-Pin-Schnittstelle für einfache Verbindungen.

Pinbelegung des HC-SR501-Bewegungssensors
  • VCC: Mit der 5V-Stromversorgung verbinden
  • GND: Mit Masse (0V) verbinden
  • OUTPUT: Mit einem digitalen Eingangspin des ESP32 C3 Super Mini verbinden – gibt LOW aus, wenn keine Bewegung erkannt wird, und HIGH, wenn eine Bewegung erkannt wird

Zusätzliche Komponenten:

  • Einsteller für den Erfassungsbereich: Potentiometer zur Einstellung der Erfassungsdistanz
  • Einsteller für die Verzögerungszeit: Potentiometer zur Einstellung, wie lange der Ausgang nach einer Erkennung HIGH bleibt
  • Wahlschalter für den Wiederholungsauslöser: Jumper zur Auswahl zwischen Einzel- oder wiederholbarem Auslösemodus

Wie der HC-SR501-Bewegungssensor funktioniert

Der HC-SR501 erkennt Bewegungen, indem er Veränderungen der von warmen Objekten ausgesendeten Infrarotstrahlung wahrnimmt.

Voraussetzungen für die Erkennung:

  • Das Objekt muss Infrarotstrahlung aussenden (wie Menschen und Tiere)
  • Das Objekt muss sich bewegen oder seine Position verändern

Erkennungsszenarien:

  • ✓ Erkannt: Eine Person geht im Sensorbereich
  • ✓ Erkannt: Ein Tier bewegt sich in der Nähe
  • ✗ Nicht erkannt: Eine Person steht völlig still
  • ✗ Nicht erkannt: Ein sich bewegender Roboter oder ein Fahrzeug (keine Infrarotabstrahlung)

Wichtige Hinweise:

  • Der Sensor erkennt Bewegung, nicht direkt die Anwesenheit
  • Stillstehende Menschen werden möglicherweise nicht erkannt, auch wenn sie anwesend sind
  • Funktioniert am besten zur Erkennung aktiver Bewegung

Das obige Video zeigt, wie der HC-SR501-Bewegungssensor in Echtzeit auf Bewegungen reagiert.

Erkennung der Anwesenheit von Menschen

Der HC-SR501 schließt aus der Bewegungserkennung auf die Anwesenheit von Menschen, statt sie direkt zu erfassen.

Erkennungslogik:

  • Bewegung erkannt = Mensch wahrscheinlich anwesend
  • Keine Bewegung erkannt = Mensch wahrscheinlich nicht anwesend

Praktische Einschränkung:

  • Wenn eine Person anwesend ist, sich aber nicht bewegt, erkennt der Sensor sie nicht
  • Dies kann in manchen Anwendungen zu falsch-negativen Ergebnissen führen

Warum er trotzdem beliebt ist:

  • Im Vergleich zu anderen Sensoren sehr günstig
  • Funktioniert gut für die meisten praktischen Anwendungen
  • Gut genug für automatische Beleuchtung, Alarme und Energiesparprojekte

ESP32 C3 Super Mini und HC-SR501-Bewegungssensor

Durch den Anschluss des Bewegungssensors an den ESP32 C3 Super Mini können Sie intelligente, auf Bewegung reagierende Projekte erstellen.

So funktioniert es:

  • Ein Pin des ESP32 C3 Super Mini liest den digitalen Eingang (HIGH oder LOW)
  • Der OUTPUT-Pin des Bewegungssensors sendet ein Signal an den ESP32 C3 Super Mini
  • Der Code des ESP32 C3 Super Mini wertet das Signal aus und löst Aktionen aus
  • Sie können Lichter, Alarme oder jedes beliebige Gerät abhängig von Bewegung steuern

Verdrahtungsdiagramm

Schließen Sie den HC-SR501-Bewegungssensor gemäß dem folgenden Schaltplan an Ihren ESP32 C3 Super Mini an.

  • Hinweis: Der HC-SR501 benötigt für einen zuverlässigen Betrieb eine 5V-Stromversorgung
ESP32 C3 Super Mini Bewegungssensor Schaltplan

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

HC-SR501-Pin ESP32 C3 Super Mini-Pin
VCC 5V
GND GND
OUTPUT D5

Anfangseinstellungen des Sensors

Konfigurieren Sie vor der Verwendung des HC-SR501 diese Einstellungen für eine optimale Leistung.

ESP32 C3 Super Mini Bewegungssensor Anfangseinstellung
Einstellung Konfiguration
Einsteller für den Erfassungsbereich Vollständig im Uhrzeigersinn drehen (minimaler Bereich zum Testen)
Einsteller für die Verzögerungszeit Vollständig gegen den Uhrzeigersinn drehen (minimale Verzögerung)
Wahlschalter für den Wiederholungsauslöser Jumper wie im obigen Bild gezeigt setzen

Wie man den Bewegungssensor programmiert

Folgen Sie diesen Schritten, um die Daten des Bewegungssensors mit dem ESP32 C3 Super Mini auszulesen.

Schritt 1: Pin des ESP32 C3 Super Mini als Eingang konfigurieren

pinMode(PIN_TO_SENSOR, INPUT);

Schritt 2: Den Ausgangszustand des Sensors lesen

motion_state = digitalRead(PIN_TO_SENSOR);

Schritt 3: Beginn der Bewegung erkennen (LOW zu HIGH)

prev_motion_state = motion_state; // store old state motion_state = digitalRead(PIN_TO_SENSOR); // read new state if (prev_motion_state == LOW && motion_state == HIGH) { // pin state change: LOW -> HIGH Serial.println("Motion detected!"); }

Schritt 4: Ende der Bewegung erkennen (HIGH zu LOW)

prev_motion_state = motion_state; // store old state motion_state = digitalRead(PIN_TO_SENSOR); // read new state if (prev_motion_state == HIGH && motion_state == LOW) { // pin state change: HIGH -> LOW Serial.println("Motion stopped!"); }

ESP32 C3 Super Mini Code

Dieser Code überwacht den HC-SR501-Bewegungssensor und meldet Bewegungsereignisse.

Was der Code macht:

  • Konfiguriert Pin D5 als digitalen Eingang zum Lesen der Sensordaten
  • Überwacht fortlaufend den Zustand des Bewegungssensors
  • Erkennt, wann eine Bewegung beginnt (Übergang von LOW zu HIGH)
  • Erkennt, wann eine Bewegung endet (Übergang von HIGH zu LOW)
  • Gibt Bewegungsereignisse im Seriellen Monitor aus
  • Bereit für Ihre eigenen Aktionen (Lichter, Alarme usw.)
/* * Dieser ESP32 C3 Super Mini Code wurde von newbiely.de entwickelt * Dieser ESP32 C3 Super Mini Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/esp32-c3/esp32-c3-super-mini-motion-sensor */ #define PIN_TO_SENSOR D5 // The ESP32 C3 Super Mini pin connected to OUTPUT pin of sensor int motion_state = LOW; // current state of pin int prev_motion_state = LOW; // previous state of pin void setup() { Serial.begin(115200); // Initialize the Serial to communicate with the Serial Monitor. pinMode(PIN_TO_SENSOR, INPUT); // set ESP32 C3 Super Mini pin to input mode to read value from OUTPUT pin of sensor } void loop() { prev_motion_state = motion_state; // store old state motion_state = digitalRead(PIN_TO_SENSOR); // read new state if (prev_motion_state == LOW && motion_state == HIGH) { // pin state change: LOW -> HIGH Serial.println("Motion detected!"); // TODO: turn on alarm, light or activate a device ... here } else if (prev_motion_state == HIGH && motion_state == LOW) { // pin state change: HIGH -> LOW Serial.println("Motion stopped!"); // TODO: turn off alarm, light or deactivate a device ... here } }

Schnelle Schritte

  • Neu beim ESP32 C3 Mini? Absolvieren Sie zuerst unser Tutorial Erste Schritte mit dem ESP32 C3 Mini, um Ihre Entwicklungsumgebung einzurichten.
  • Code einfügen: Kopieren Sie den obigen Code und fügen Sie ihn in die Arduino IDE ein
  • Board auswählen: Wählen Sie ESP32 C3 Super Mini im Menü Werkzeuge > Board
  • ESP32 anschließen: Verbinden Sie Ihren ESP32 C3 Super Mini per USB mit Ihrem Computer
  • Hochladen: Klicken Sie in der Arduino IDE auf die Schaltfläche Hochladen, um den Code zu übertragen
  • Seriellen Monitor öffnen: Klicken Sie auf das Symbol des Seriellen Monitors (oben rechts) oder drücken Sie Strg+Umschalt+M
  • Baudrate einstellen: Wählen Sie im Dropdown-Menü des Seriellen Monitors 115200 Baud
  • Bewegungserkennung testen: Bewegen Sie Ihre Hand vor dem HC-SR501-Sensor
  • Ergebnisse beobachten: Beobachten Sie, wie der Serielle Monitor Bewegungsereignisse anzeigt
  • Profi-Tipp: Beginnen Sie mit minimaler Empfindlichkeit und Verzögerung und stellen Sie dann die Potentiometer so ein, dass Sie Ihren idealen Erfassungsbereich und Ihr ideales Timing finden.

Ausgabe im Seriellen Monitor

Wenn Sie sich vor dem Sensor bewegen, sehen Sie eine Ausgabe wie diese:

∞
Newbiely | Arduino IDE 2.3.8
──
☐
✕
File
Edit
Sketch
Tools
Help
ESP32C3 Dev Module
Newbiely.ino
···
8 Serial.println("Hello World!");
Output
Serial Monitor
Message (Enter to send message to 'ESP32C3 Dev Module' on 'COM15')
New Line
9600 baud
Motion detected! Motion stopped! Motion detected! Motion stopped! Motion detected! Motion stopped!
Ln 11, Col 1
ESP32C3 Dev Module on COM15
2

Projektideen

Hier sind einige praktische Projekte, die Sie mit dem ESP32 C3 Super Mini und dem HC-SR501-Bewegungssensor bauen können.

  • Automatisches Raumlicht: Licht einschalten, wenn eine Bewegung erkannt wird, und ausschalten, wenn keine Bewegung mehr erkannt wird
  • Sicherheitsalarmsystem: Benachrichtigungen senden oder einen Alarm auslösen, wenn ein Eindringling erkannt wird
  • Energiesparer: Displays oder Geräte automatisch ausschalten, wenn niemand anwesend ist
  • Intelligenter Futterautomat für Haustiere: Erkennen, wann sich Ihr Haustier nähert, und Futter ausgeben
  • Besucherzähler: Die Anzahl der Personen erfassen, die einen Raum oder ein Gebäude betreten
  • Halloween-Requisiten: Gruselige Geräusche oder bewegliche Dekorationen auslösen, wenn sich jemand nähert

Video-Tutorial

Sehen Sie sich das folgende Video an, um eine visuelle Schritt-für-Schritt-Anleitung zu diesem Projekt zu erhalten.

Herausforderungen

Bringen Sie Ihre Fähigkeiten mit dem Bewegungssensor am ESP32 C3 Super Mini mit diesen Herausforderungen auf die nächste Stufe.

  • Einfach: Fügen Sie eine LED hinzu, die sich bei erkannter Bewegung einschaltet und ausschaltet, wenn die Bewegung endet
  • Einfach: Zählen Sie die Gesamtzahl der erkannten Bewegungsereignisse und zeigen Sie sie an
  • Mittel: Fügen Sie einen Summer hinzu, der bei erkannter Bewegung 3 Sekunden lang Alarm gibt
  • Mittel: Verwenden Sie den Sensor, um ein Relais zu steuern, das eine Schreibtischlampe ein- und ausschaltet
  • Fortgeschritten: Kombinieren Sie den Bewegungssensor mit einem OLED-Display, um Uhrzeit und Datum der letzten Erkennung anzuzeigen
  • Fortgeschritten: Erstellen Sie ein intelligentes Sicherheitssystem, das E-Mail-Warnungen sendet, wenn nachts eine Bewegung erkannt wird

Sprachreferenzen

Verwandte Tutorials

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!