El GY-302 es un tablero de ruptura con el sensor de intensidad de luz BH1750, que mide los niveles de luz en Lux. Se comunica con microcontroladores a través del protocolo I2C, por lo que es una excelente opción para proyectos dependientes de la luz como iluminación inteligente, rastreadores solares y aplicaciones de fotografía. Este tutorial lo guiará a través de la conexión y el uso del módulo GY-302 con Arduino.
Lo que necesitarás
- GY-302 BH1750 Módulo de sensor de luz
- Arduino Board (por ejemplo, Uno, Mega, Nano)
- Cables de placa y jersey
- Una computadora con el Arduino IDE instalado
Paso 1: Comprender el módulo GY-302
El GY-302 usa el sensor BH1750 para medir la intensidad de la luz. Emite los resultados en Lux, que es la unidad estándar para medir la iluminancia.
GY-302 PINOUT
Alfiler | Función |
---|---|
VCC | Fuente de alimentación (3.3V/5V) |
Gnd | Suelo |
SDA | Línea de datos I2C |
SCL | Línea de reloj I2C |
Dirección I2C
- Dirección predeterminada:
0x23
- Dirección alternativa:
0x5C
(Establezca tirando del pasador de addr en algunos módulos)
Paso 2: Cableado el GY-302 a Arduino
Conecte el módulo GY-302 a su Arduino de la siguiente manera:
Pin Gy-302 | Alfiler de arduino |
---|---|
VCC | 5V |
Gnd | Gnd |
SDA | A4 |
SCL | A5 |
Nota: Asegúrese de que se usen los pines I2C correctos para su placa Arduino (por ejemplo,
SDA
ySCL
En Arduino mega hay alfileres 20 y 21).
Paso 3: Instale la biblioteca requerida
Para simplificar la comunicación con el sensor BH1750, instale la biblioteca "BH1750".
Pasos para instalar:
- Abra el IDE Arduino.
- Ir a Bosquejo > Incluir biblioteca > Administrar bibliotecas.
- Busque "BH1750" y haga clic Instalar.
Paso 4: cargar el código
Aquí hay un boceto de ejemplo para leer datos de intensidad de luz del 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
}
Paso 5: prueba la configuración
- Conecte el Arduino a su computadora a través de USB.
- Abra el IDE Arduino y seleccione el correcto Junta y Puerto bajo el Herramientas menú.
- Cargar el código haciendo clic en Subir.
- Abra el monitor en serie (Herramientas > Monitor en serie) y establecer la tasa de baudios en
9600
. - Observe las lecturas de intensidad de luz que se muestran en Lux.
Opcional: ajustar la dirección I2C
Si la dirección I2C predeterminada (0x23
) no funciona, verifique la configuración del pin ADDR del módulo. Algunos módulos le permiten cambiar a una dirección alternativa (0x5C
) conectando el pin ADDR a VCC.
Aplicaciones del GY-302
- Sistemas de iluminación inteligente
- Seguimiento de panel solar
- Medición de intensidad de luz en fotografía
- Monitoreo de luz interior y exterior
Solución de problemas
- Sin respuesta del sensor: Verifique el cableado I2C y verifique la dirección I2C del módulo.
- Lecturas incorrectas: Asegúrese de que el sensor no esté obstruido o reciba reflejos de luz.
- Errores de la biblioteca: Confirme que la biblioteca BH1750 está instalada correctamente.
Conclusión
Has interactuado con éxito el sensor de luz GY-302 BH1750 con Arduino. Este sensor versátil proporciona mediciones precisas de intensidad de luz en Lux, lo que lo convierte en una excelente herramienta para una variedad de proyectos sensibles a la luz. ¡Experimente aún más integrándolo con otros componentes o sistemas!