So verwenden Sie den GY-302 BH1750 Light Intensity Sensor mit Arduino

How to Use the GY-302 BH1750 Light Intensity Sensor with Arduino

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

  1. GY-302 BH1750 Lichtsensormodul
  2. Arduino Board (z. B. Uno, Mega, Nano)
  3. Breadboard- und Jumper -Drähte
  4. 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 Und SCL 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:

  1. Öffnen Sie die Arduino -IDE.
  2. Gehen zu Skizzieren > Bibliothek einbeziehen > Bibliotheken verwalten.
  3. 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

  1. Schließen Sie den Arduino über USB an Ihren Computer an.
  2. Öffnen Sie die Arduino -IDE und wählen Sie die richtige Auswahl Planke Und Hafen unter dem Werkzeuge Speisekarte.
  3. Laden Sie den Code durch Klicken hoch Hochladen.
  4. Öffnen Sie den Serienmonitor (Werkzeuge > Serienmonitor) und den Baudrate auf festlegen 9600.
  5. 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

  1. Smart Lighting Systems
  2. Solarpanel -Tracking
  3. Lichtintensitätsmessung in der Fotografie
  4. 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!

Hinterlasse einen Kommentar

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.