Hoe de GY-302 BH1750 Lichtintensiteitssensor te gebruiken met Arduino

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

De GY-302 is een breakout-bord met de BH1750-lichtintensiteitssensor, die lichtniveaus meet in LUX. Het communiceert met microcontrollers via het I2C-protocol, waardoor het een uitstekende keuze is voor lichtafhankelijke projecten zoals Smart Lighting, Solar Trackers en fotografietoepassingen. Deze zelfstudie zal u begeleiden door de GY-302-module te verbinden en te gebruiken met Arduino.


Wat u nodig hebt

  1. GY-302 BH1750 Lichtsensormodule
  2. Arduino Board (bijv. UNO, Mega, Nano)
  3. Breadboard en jumper draden
  4. Een computer met de Arduino Ide geïnstalleerd

Stap 1: Inzicht in de GY-302-module

De GY-302 gebruikt de BH1750-sensor om de lichtintensiteit te meten. Het voert de resultaten uit in LUX, de standaardeenheid voor het meten van verlichtingsverlichting.

GY-302 pinout

Pin Functie
VCC Voeding (3.3V/5V)
GND Grond
SDA I2C -gegevenslijn
SCL I2c kloklijn

I2C -adres

  • Standaardadres: 0x23
  • Alternatief adres: 0x5C (ingesteld door de ADDR -pin hoog te trekken op sommige modules)

Stap 2: De GY-302 bedraden aan Arduino

Sluit de GY-302-module als volgt aan op uw Arduino:

GY-302 pin Arduino Pin
VCC 5V
GND GND
SDA A4
SCL A5

Opmerking: Zorg ervoor dat de juiste I2C -pinnen worden gebruikt voor uw Arduino -bord (bijv. SDA En SCL Op Arduino Mega zijn pennen 20 en 21).


Stap 3: Installeer de vereiste bibliotheek

Installeer de communicatie met de BH1750 -sensor om de bibliotheek "BH1750" te vereenvoudigen.

Stappen om te installeren:

  1. Open de Arduino Ide.
  2. Gaan naar Schetsen > Library innemen > Bibliotheken beheren.
  3. Zoek naar "BH1750" en klik Installeren.

Stap 4: Upload de code

Hier is een voorbeeldschets om gegevens over lichtintensiteit van de GY-302 te lezen:

#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
}

Stap 5: Test de installatie

  1. Sluit de Arduino via USB aan op uw computer.
  2. Open de Arduino IDE en selecteer de juiste Bord En Haven onder de Hulpmiddelen menu.
  3. Upload de code door te klikken Uploaden.
  4. Open de seriële monitor (Hulpmiddelen > Serie -monitor) en stel het baudrates in op 9600.
  5. Bekijk de lichtintensiteitswaarden die worden weergegeven in LUX.

Optioneel: het I2C -adres aanpassen

Als het standaard I2C -adres (0x23) werkt niet, controleer de ADDR -pin -configuratie van de module. Met sommige modules kunt u overschakelen naar een alternatief adres (0x5C) door de ADDR -pin aan te sluiten op VCC.


Toepassingen van de GY-302

  1. Slimme verlichtingssystemen
  2. Solar Panel Tracking
  3. Lichtintensiteitsmeting in fotografie
  4. Binnen- en buitenlichtmonitoring

Problemen oplossen

  • Geen reactie van de sensor: Controleer de I2C -bedrading en controleer het I2C -adres van de module.
  • Onjuiste metingen: Zorg ervoor dat de sensor niet wordt belemmerd of licht reflecties ontvangt.
  • Bibliotheekfouten: Bevestig dat de BH1750 -bibliotheek correct is geïnstalleerd.

Conclusie

Je hebt met succes de GY-302 BH1750-lichtsensor met Arduino gekoppeld. Deze veelzijdige sensor biedt nauwkeurige lichtintensiteitsmetingen in LUX, waardoor het een uitstekend hulpmiddel is voor een verscheidenheid aan lichtgevoelige projecten. Experimenteer verder door het te integreren met andere componenten of systemen!

Laat een reactie achter

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.