ESP32 - Lichtsensor löst Relais aus

Dieses Tutorial zeigt dir, wie man ESP32, Lichtsensor und Relais verwendet, um ein Projekt zu realisieren, das:

Wir können dieses Tutorial erweitern, um automatisch einen LED-Streifen oder eine Glühbirne einzuschalten, wenn es dunkel ist.

Erforderliche Hardware

1×ESP32 ESP-WROOM-32 Entwicklungsmodul
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×Lichtsensor
1×10 kΩ Resistor
1×Relais
1×(Optional) Magnetschloss
1×(Optional) 12V Active Buzzer
1×(Optional) 12V Kühlventilator
1×(Optional) 12V Warning Light Bright Waterproof
1×12V Netzteil
1×Breadboard
1×Verbindungskabel
1×(Optional) DC-Stromanschluss
1×(Empfohlen) Schraubklemmen-Erweiterungsboard für ESP32
1×(Empfohlen) Breakout Expansion Board for ESP32
1×(Empfohlen) Stromverteiler für ESP32

Oder Sie können die folgenden Kits kaufen:

1×DIYables ESP32 Starter-Kit (ESP32 enthalten)
1×DIYables Sensor-Kit (30 Sensoren/Displays)
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.

Der LDR-Lichtsensor ist sehr günstig, aber er benötigt einen Widerstand zum Verdrahten, was die Verkabelung komplizierter machen kann. Um die Verkabelung zu vereinfachen, können Sie alternativ ein LDR-Lichtsensor-Modul verwenden.

Über Relais und Lichtsensor

Wir haben spezifische Tutorials zu Relais und Lichtsensoren. Jedes Tutorial enthält detaillierte Informationen und Schritt-für-Schritt-Anleitungen zur Hardware-Pinbelegung, Funktionsweise, Verdrahtung zum ESP32, ESP32-Code... Weitere Informationen dazu finden Sie in den folgenden Links:

Verdrahtungsdiagramm

ESP32 Lichtsensor Relais Glühbirne Verdrahtungsdiagramm

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

Wenn Sie nicht wissen, wie Sie ESP32 und andere Komponenten mit Strom versorgen, finden Sie Anleitungen im folgenden Tutorial: Wie man ESP32 mit Strom versorgt.

ESP32-Code

/* * Dieser ESP32 Code wurde von newbiely.de entwickelt * Dieser ESP32 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/esp32-light-sensor-triggers-relay */ #define LIGHT_SENSOR_PIN 36 // ESP32 pin GPIO36 (ADC0) connected to light sensor #define RELAY_PIN 27 // ESP32 pin GPIO27 connected to Relay #define ANALOG_THRESHOLD 500 void setup() { // set the ADC attenuation to 11 dB (up to ~3.3V input) analogSetAttenuation(ADC_11db); pinMode(RELAY_PIN, OUTPUT); // set ESP32 pin to output mode } void loop() { int analogValue = analogRead(LIGHT_SENSOR_PIN); // read the value on analog pin if (analogValue < ANALOG_THRESHOLD) digitalWrite(RELAY_PIN, HIGH); // turn on Relay else digitalWrite(RELAY_PIN, LOW); // turn off Relay }

Schnelle Schritte

  • Wenn Sie ESP32 zum ersten Mal verwenden, sehen Sie wie man die Umgebung für ESP32 in der Arduino IDE einrichtet.
  • Schließen Sie die Verkabelung wie im obigen Bild.
  • Schließen Sie das ESP32-Board über ein Mikro-USB-Kabel an Ihren PC an.
  • Öffnen Sie die Arduino IDE auf Ihrem PC.
  • Wählen Sie das richtige ESP32-Board (z. B. ESP32 Dev Module) und den COM-Port.
  • Kopieren Sie den obigen Code und fügen Sie ihn in die Arduino IDE ein.
  • Kompilieren Sie den Code und laden Sie ihn auf das ESP32-Board hoch, indem Sie in der Arduino IDE auf die Schaltfläche Upload klicken.
Arduino IDE Code hochladen
  • Strahlt Licht auf den Sensor
  • Beobachte die Änderung des Relaiszustands

Zeilenweise Code-Erklärung

Der obige ESP32-Code enthält eine zeilenweise Erklärung. Bitte lesen Sie die Kommentare im Code!

※ Notiz:

In diesem Tutorial wird die Funktion analogRead() verwendet, um Werte von einem ADC (Analog-Digital-Wandler) zu lesen, der an einen Lichtsensor angeschlossen ist. Der ESP32-ADC ist gut geeignet für Projekte, die keine hohe Genauigkeit benötigen. Für Projekte, die präzise Messungen erfordern, beachten Sie bitte:

  • Der ESP32-ADC ist nicht völlig genau und muss möglicherweise kalibriert werden, um korrekte Ergebnisse zu erhalten. Jedes ESP32-Board kann etwas unterschiedlich sein, daher müssen Sie den ADC für jedes einzelne Board kalibrieren.
  • Die Kalibrierung kann schwierig sein, besonders für Anfänger, und liefert möglicherweise nicht immer die genauen Ergebnisse, die Sie möchten.

Für Projekte mit hoher Präzision sollten Sie in Erwägung ziehen, einen externen ADC (z. B. ADS1115) mit dem ESP32 zu verwenden oder einen Arduino zu verwenden, der einen zuverlässigeren ADC hat. Falls Sie den ESP32-ADC dennoch kalibrieren möchten, verweisen Sie auf ESP32 ADC Calibration Driver

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ 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!