Leichter abhängiger Widerstand - LDR -Sensor mit eSptop 10 unter Verwendung von Arduino IDE

Leichter abhängiger Widerstand - LDR -Sensor mit eSptop 10 unter Verwendung von Arduino IDE

Der ESP32 ist ein leistungsstarker Mikrocontroller, der mit Funktionen für IoT ausgestattet ist. ESP32 mit LDR kann die Lichtintensität messen und die Reaktion danach auslösen. Mit ESP32 und einem LDR können wir ein remote-lichtempfindliches Projekt erstellen und eine Vielzahl innovativer IoT-Lösungen für verschiedene Branchen und Anwendungen entwerfen.

In diesem Leitfaden werden die Grundlagen von LDR und seine Anwendungen mit ESP32 abgedeckt.

1: Einführung in den LDR -Sensor

2: Anwendungen von LDR mit ESP32

3: Schnittstellen von LDR mit ESP32 mit Arduino IDE

    • 1: Schema
    • 2: Code
    • 3: Ausgabe unter schwachem Licht
    • 4: Ausgabe unter hellem Licht

Abschluss

1: Einführung in den LDR -Sensor

A Lig Dependent REsistor (LDR) ist eine Art von Widerstand, der seinen Widerstand basierend auf der Lichtintensität verändert, der er ausgesetzt ist. In der Dunkelheit ist sein Widerstand sehr hoch, während sein Widerstand im hellen Licht sehr niedrig ist. Diese Änderung des Widerstands macht es am besten für leichte Erfassungsprojekte.


Die ESP32 -Analogstifte wandeln die eingehenden Spannungen in eine Ganzzahl zwischen 0 und 4095 um. Dieser ganzzahlige Wert wird gegen die analoge Eingangsspannung von 0V bis 3 abgebildet.3V, was standardmäßig die ADC -Referenzspannung in ESP32 ist. Dieser Wert wird mit dem Arduino gelesen Analograd () Funktion von LDR.

Weitere detaillierte Anleitung und ADC -Pinout von ESP32 Lesen Sie den Artikel ESP32 ADC - Analogwerte mit Arduino IDE lesen.


Der ESP32 verfügt. Unter Verwendung dieses Signals bestimmt ESP32 den Widerstand des LDR, der proportional zur Lichtintensität ist.

Hier werden wir die ESP32 ADC Channel 1 Pins verwenden.


Photonen oder Lichtpartikel spielen eine entscheidende Rolle bei der Operation von LDRs. Wenn das Licht auf die Oberfläche eines LDR fällt, werden Photonen vom Material absorbiert, das dann Elektronen im Material befreit. Die Anzahl der freien Elektronen ist direkt proportional zur Lichtintensität, und je mehr Elektronen befreit werden, desto niedriger wird der Widerstand des LDR.

2: Anwendungen von LDR mit ESP32

Im Folgenden finden Sie die Liste einiger IoT -basierter Anwendungen von LDR mit ESP32:

    • Leichter aktivierter Schalter
    • Lichtpegelanzeige
    • Nachtmodus in Geräten
    • Leichte Sicherheitssysteme
    • Smart Lighting Systems
    • Leichtempfindliche Sicherheitssysteme
    • Pflanzenüberwachung
    • Energieeffiziente Beleuchtung
    • Automatisierte Fenster Jalousien

3: Schnittstellen von LDR mit ESP32 mit Arduino IDE

Um einen LDR mit dem ESP32 zu verwenden. Danach wird Arduino -Code benötigt, um analoge Werte aus dem LDR -Ausgangsstift zu lesen. Um diese Schaltung zu entwerfen, benötigen wir LDR, einen Widerstand und die ESP32 -Karte.

Der LDR und der Widerstand sind in Reihe angeschlossen, wobei der LDR mit dem verbunden ist Analogkanal 1 Eingangsstift von ESP32. Der Schaltkreis wird eine LED hinzugefügt, mit der LDR -Arbeit testen kann.

1: Schema

Das Schaltplan für die Schnittstellen von LDR mit ESP32 ist recht einfach. Wir müssen den LDR und einen Widerstand in einer Spannungsteilerkonfiguration anschließen und den Ausgang des Spannungsteilers an den ADC -Pin (Analog -to Digital -Wandler) von ESP32 anschließen. ADC Channel 1 Pin D34 wird als analoge Eingabe für ESP32 verwendet.

Das folgende Bild ist das Schema von ESP32 mit LDR -Sensor.

2: Code

Sobald die Schaltung eingerichtet wurde, besteht der nächste Schritt darin, den Code für den ESP32 zu schreiben. Der Code liest die analoge Eingabe aus dem LDR und steuert ihn zur Steuerung einer LED oder eines anderen Geräts basierend auf verschiedenen Lichtstufen.

int ldr_val = 0; /*Variable zum Speichern des Photoresistorwerts*/
int sensor = 34; /*Analoger Eingang für Photoresistor*/
int led = 25; /*LED -Ausgangsstift*//
void setup ()
Serie.Beginnen Sie (9600); /*Baudrate für serielle Kommunikation*/
PinMode (LED, Ausgabe); / *LED -Pin als Ausgabe eingestellt */

void Loop ()
LDR_VAL = AnalOgrad (Sensor); /*Analog Read LDR -Wert*//
Serie.print ("LDR -Ausgangswert:");
Serie.println (ldr_val); /*LNDR -Ausgang VAL auf dem seriellen Monitor*/anzeigen
if (ldr_val> 100) /*Wenn die Lichtintensität hoch ist* /
Serie.println ("hohe Intensität");
DigitalWrite (LED, niedrig); /*LED bleibt aus*///

anders
/*Sonst, wenn die Lichtintensität niedrig ist, bleibt auf*///
Serie.println ("niedrige Intensität");
DigitalWrite (LED, hoch); /* LED -Einschalten der LDR -Wert beträgt weniger als 100*/

Verzögerung (1000); /*Liest Wert nach jeder 1 Sek.*/


Im obigen Code verwenden wir einen LDR mit ESP32, der die LED mithilfe des analogen Eingangs von LDR steuert.

Die ersten drei Codezeilen deklarieren Variablen, um die zu speichern Photoresistorwert, Die Analogstift für den Photoresistor und die LED Ausgangsstift.

Im aufstellen() Funktion, die serielle Kommunikation wird mit einer Baudrate von 9600 und LED Pin D25 als Ausgabe eingestellt.

Im Schleife() Funktion, der Photoresistorwert wird unter Verwendung der analograd () -Funktion gelesen, die in der gespeichert ist LDR_VAL Variable. Der Photoresistorwert wird dann mit der seriellen seriellen Monitor auf dem seriellen Monitor angezeigt.println () Funktion.

Ein ansonsten Die Anweisung wird verwendet, um die LED auf der Grundlage der vom Photoresistor erkannten Lichtintensität zu steuern. Wenn der Photoresistorwert größer als 100 ist, bedeutet dies, dass die Lichtintensität hoch ist, und die LED bleibt aus. Wenn der Photoresistorwert jedoch kleiner oder gleich 100 beträgt, bedeutet dies, dass die Lichtintensität niedrig ist und die LED eingeschaltet wird.

Schließlich wartet das Programm auf 1 Sekunde mit der Funktion Delay (), bevor er den Fotoleiterwert erneut liest. Dieser Zyklus wiederholt sich auf unbestimmte Zeit und macht die LED ein- und ausgeschaltet, basierend auf der vom Photoresistor erkannten Lichtintensität.

3: Ausgabe unter schwachem Licht

Die Lichtintensität beträgt weniger als 100, so dass die LED eingeschaltet bleibt.

4: Ausgabe unter hellem Licht

Wenn die Lichtintensität zunimmt.

Abschluss

Der LDR kann mit ESP32 mit dem ADC Channel 1 Pin miteinander verbunden werden. Der LDR -Ausgang kann die Lichtempfindung in verschiedenen Anwendungen steuern. Mit seinen kostengünstigen und kompakten Größe treffen ESP32 und LDR eine attraktive Auswahl für IoT -Projekte, für die leichte Erfassungsfunktionen erforderlich sind. Verwenden des Arduino Analograd () Funktion können wir Werte von LDR lesen.