Der GY-302 ist ein Breakout-Board mit dem BH1750-Lichtintensitätssensor, der die Lichtwerte in Lux misst. Es kommuniziert mit Mikrocontrollern über das I2C-Protokoll und macht es zu einer hervorragenden Wahl für lichtabhängige Projekte wie Smart Lighting, Solar Tracker und Fotografieanwendungen. In diesem Tutorial führt Sie durch das Verbinden und die Verwendung des GY-302-Moduls mit Arduino.
Was Sie brauchen werden
- GY-302 BH1750 Lichtsensormodul
- Arduino Board (z. B. Uno, Mega, Nano)
- Breadboard- und Jumper -Drähte
- Ein Computer mit der Arduino -IDE installiert
Schritt 1: Verständnis des GY-302-Moduls
Der GY-302 verwendet den BH1750-Sensor, um die Lichtintensität zu messen. Es gibt die Ergebnisse in Lux aus, was die Standardeinheit für die Messung von Beleuchtung ist.
GY-302 Pinout
Stift | Funktion |
---|---|
VCC | Stromversorgung (3,3 V/5 V) |
GND | Boden |
SDA | I2C -Datenzeile |
Scl | I2C -Uhr -Linie |
I2C -Adresse
- Standardadresse:
0x23
- Alternative Adresse:
0x5C
(Setzen Sie den ADDR -Pin hoch auf einigen Modulen)
Schritt 2: Verkabelung des GY-302 mit Arduino
Verbinden Sie das GY-302-Modul wie folgt mit Ihrem Arduino:
GY-302 PIN | Arduino Pin |
---|---|
VCC | 5v |
GND | GND |
SDA | A4 |
Scl | A5 |
Notiz: Stellen Sie sicher, dass die richtigen I2C -Stifte für Ihr Arduino -Board verwendet werden (z. B.,
SDA
UndSCL
Auf Arduino Mega sind Stifte 20 und 21).
Schritt 3: Installieren Sie die erforderliche Bibliothek
Um die Kommunikation mit dem BH1750 -Sensor zu vereinfachen, installieren Sie die "BH1750" -Bibliothek.
Schritte zu installieren:
- Öffnen Sie die Arduino -IDE.
- Gehen zu Skizzieren > Bibliothek einbeziehen > Bibliotheken verwalten.
- Suchen Sie nach "BH1750" und klicken Sie auf Installieren.
Schritt 4: Laden Sie den Code hoch hoch
Hier ist eine Beispielskizze zum Lesen von Lichtintensitätsdaten aus dem GY-302:
#include <Wire.h>
#include <BH1750.h>
BH1750 lightMeter;
void setup() {
Serial.begin(9600);
while (!Serial);
Serial.println("Initializing BH1750...");
if (!lightMeter.begin()) {
Serial.println("BH1750 not detected. Check wiring.");
while (1);
}
Serial.println("BH1750 ready.");
}
void loop() {
float lux = lightMeter.readLightLevel(); // Read light level in lux
Serial.print("Light Intensity: ");
Serial.print(lux);
Serial.println(" lx");
delay(1000); // Wait 1 second before the next reading
}
Schritt 5: Testen Sie das Setup
- Schließen Sie den Arduino über USB an Ihren Computer an.
- Öffnen Sie die Arduino -IDE und wählen Sie die richtige Auswahl Planke Und Hafen unter dem Werkzeuge Speisekarte.
- Laden Sie den Code durch Klicken hoch Hochladen.
- Öffnen Sie den Serienmonitor (Werkzeuge > Serienmonitor) und den Baudrate auf festlegen
9600
. - Beobachten Sie die in Lux angezeigten Lichtintensitätswerte.
Optional: Anpassen der I2C -Adresse
Wenn die Standard -I2C -Adresse (0x23
) Überprüfen Sie nicht die Addr -Pin -Konfiguration des Moduls. Einige Module ermöglichen es Ihnen, zu einer alternativen Adresse zu wechseln (0x5C
) durch Anschließen des ADDR -Pin mit VCC.
Anwendungen der GY-302
- Smart Lighting Systems
- Solarpanel -Tracking
- Lichtintensitätsmessung in der Fotografie
- Innen- und Außenlichtüberwachung
Fehlerbehebung
- Keine Antwort vom Sensor: Überprüfen Sie die I2C -Verkabelung und überprüfen Sie die I2C -Adresse des Moduls.
- Falsche Lesungen: Stellen Sie sicher, dass der Sensor nicht verstopft ist oder Lichtreflexionen empfangen.
- Bibliotheksfehler: Bestätigen Sie, dass die BH1750 -Bibliothek korrekt installiert ist.
Abschluss
Sie haben den GY-302 BH1750-Lichtsensor mit Arduino erfolgreich miteinander verbunden. Dieser vielseitige Sensor bietet genaue Messungen der Lichtintensität in Lux und macht es zu einem hervorragenden Werkzeug für eine Vielzahl von lichtempfindlichen Projekten. Experimentieren Sie weiter, indem Sie es in andere Komponenten oder Systeme integrieren!