Tabla de contenido:
- Paso 1: Descripción general del BH1715:
- Paso 2: ¡¡Lo que necesitas …
- Paso 3: Conexión de hardware:
- Paso 4: Código Arduino de medición de intensidad de luz:
- Paso 5: Aplicaciones:
Video: Cálculo de intensidad de luz usando BH1715 y Arduino Nano: 5 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:42
Ayer estuvimos trabajando en pantallas LCD y, mientras las revisábamos, nos dimos cuenta de la importancia del cálculo de la intensidad de la luz. La intensidad de la luz no solo es importante en el dominio físico de este mundo, sino que también tiene un papel bien dicho en el dominio biológico. La estimación precisa de la intensidad de la luz juega un papel fundamental en nuestro ecosistema, en el crecimiento de las plantas, etc. Entonces, para cumplir este propósito, estudiamos este sensor BH1715, que es un sensor de luz ambiental del tipo de salida en serie de 16 bits.
En este tutorial, vamos a demostrar el funcionamiento de BH1715 con Arduino Nano.
El hardware que vas a necesitar para este fin es el siguiente:
1. BH1715 - Sensor de luz ambiental
2. Arduino nano
3. Cable I2C
4. Escudo I2C para Arduino Nano
Paso 1: Descripción general del BH1715:
En primer lugar, nos gustaría familiarizarlo con las características básicas del módulo sensor que es BH1715 y el protocolo de comunicación en el que funciona.
BH1715 es un sensor de luz ambiental digital con una interfaz de bus I²C. El BH1715 se usa comúnmente para obtener los datos de luz ambiental para ajustar la potencia de la retroiluminación de la pantalla LCD y el teclado para dispositivos móviles. Este dispositivo ofrece una resolución de 16 bits y un rango de medición ajustable, lo que permite la detección de.23 a 100, 000 lux.
El protocolo de comunicación sobre el que trabaja el sensor es I2C. I2C significa circuito interintegrado. Es un protocolo de comunicación en el que la comunicación se realiza a través de líneas SDA (datos en serie) y SCL (reloj en serie). Permite conectar varios dispositivos al mismo tiempo. Es uno de los protocolos de comunicación más simples y eficientes.
Paso 2: ¡¡Lo que necesitas …
Los materiales que necesitamos para lograr nuestro objetivo incluyen los siguientes componentes de hardware:
1. BH1715 - Sensor de luz ambiental
2. Arduino Nano
3. Cable I2C
4. I2C Shield para Arduino nano
Paso 3: Conexión de hardware:
La sección de conexión de hardware básicamente explica las conexiones de cableado necesarias entre el sensor y la Raspberry Pi. Asegurar las conexiones correctas es la necesidad básica al trabajar en cualquier sistema para obtener la salida deseada. Entonces, las conexiones requeridas son las siguientes:
El BH1715 funcionará sobre I2C. Aquí está el diagrama de cableado de ejemplo, que demuestra cómo cablear cada interfaz del sensor.
Fuera de la caja, la placa está configurada para una interfaz I2C, por lo que recomendamos usar esta conexión si, por lo demás, es agnóstico. ¡Todo lo que necesitas son cuatro cables!
Solo se requieren cuatro conexiones Vcc, Gnd, SCL y pines SDA y estos se conectan con la ayuda del cable I2C.
Estas conexiones se muestran en las imágenes de arriba.
Paso 4: Código Arduino de medición de intensidad de luz:
Comencemos ahora con el código Arduino.
Mientras usamos el módulo de sensor con Arduino, incluimos la biblioteca Wire.h. La biblioteca "Wire" contiene las funciones que facilitan la comunicación i2c entre el sensor y la placa Arduino.
El código completo de Arduino se proporciona a continuación para la conveniencia del usuario:
#incluir
// BH1715 La dirección I2C es 0x23 (35) #define Addr 0x23 void setup () {// Inicializa la comunicación I2C como MASTER Wire.begin (); // Inicializar la comunicación en serie, establecer la velocidad en baudios = 9600 Serial.begin (9600); // Iniciar I2C Transmission Wire.beginTransmission (Addr); // Enviar energía al comando Wire.write (0x01); // Detener la transmisión I2C Wire.endTransmission (); // Iniciar I2C Transmission Wire.beginTransmission (Addr); // Enviar comando de medición continua Wire.write (0x10); // Detener la transmisión I2C Wire.endTransmission (); retraso (300); } bucle vacío () {datos int sin firmar [2]; // Solicitar 2 bytes de datos Wire.requestFrom (Addr, 2); // Leer 2 bytes de datos // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); datos [1] = Wire.read (); } retraso (300); // convierte los datos float luminance = ((data [0] * 256) + data [1]) / 1.20; // Salida de datos al monitor en serie Serial.print ("Luminancia de luz ambiental:"); Serial.print (luminancia); Serial.println ("lux"); }
La siguiente parte del código inicia la comunicación i2c y la comunicación en serie con la ayuda de la función Wire.begin () y Serial.begin ().
// Inicializar la comunicación I2C como MASTER
Wire.begin (); // Inicializar la comunicación en serie, establecer la velocidad en baudios = 9600 Serial.begin (9600); // Iniciar I2C Transmission Wire.beginTransmission (Addr); // Enviar energía al comando Wire.write (0x01); // Detener la transmisión I2C Wire.endTransmission (); // Iniciar I2C Transmission Wire.beginTransmission (Addr); // Enviar comando de medición continua Wire.write (0x10); // Detener la transmisión I2C Wire.endTransmission (); retraso (300);
La intensidad de la luz se mide en la siguiente sección del código.
datos int sin firmar [2];
// Solicitar 2 bytes de datos Wire.requestFrom (Addr, 2); // Leer 2 bytes de datos // ALS msb, ALS lsb if (Wire.available () == 2) {data [0] = Wire.read (); datos [1] = Wire.read (); } retraso (300); // convierte los datos float luminance = ((data [0] * 256) + data [1]) / 1.20; // Salida de datos al monitor en serie Serial.print ("Luminancia de luz ambiental:"); Serial.print (luminancia); Serial.println ("lux");
Todo lo que necesita hacer es grabar el código en arduino y verificar sus lecturas en el puerto serie. La salida se muestra en la imagen de arriba también para su referencia.
Paso 5: Aplicaciones:
BH1715 es un sensor de luz ambiental de salida digital que se puede incorporar en teléfonos móviles, televisores LCD, PC de NOTA, etc. También se puede emplear en máquinas de juegos portátiles, cámaras digitales, cámaras de video digitales, PDA, pantallas LCD y muchos más dispositivos que requieran aplicaciones de detección de luz eficientes.
Recomendado:
Medición de la intensidad de la luz mediante BH1715 y Raspberry Pi: 5 pasos
Medición de la intensidad de la luz mediante el uso de BH1715 y Raspberry Pi: Ayer estuvimos trabajando en pantallas LCD y, mientras las revisamos, nos dimos cuenta de la importancia del cálculo de la intensidad de la luz. La intensidad de la luz no solo es importante en el dominio físico de este mundo, sino que tiene un papel bien dicho en la biología
Lámpara de intensidad de luz Arduino: 3 pasos
Lámpara de intensidad de luz Arduino: este circuito se puede utilizar como una lámpara real, un proyecto escolar y un desafío divertido. Este circuito es fácil de usar y fácil de hacer, pero si no ha usado tinker cad antes, es posible que desee probarlo primero
Lámpara de intensidad de luz Arduino: 6 pasos
Lámpara de intensidad de luz Arduino: Bienvenido a mi tutorial sobre cómo construir y codificar una lámpara de intensidad de luz con un Arduino. Necesitará estos componentes para construir esto. * LDR * Microcontrolador Arduino * Bombilla * Relé * Una fuente de alimentación * Placa de pruebas * Resistencia de 1 k-ohmio
Trazado de intensidad de luz usando Arduino y la biblioteca maestra de Arduino de Python: 5 pasos
Trazado de intensidad de luz usando Arduino y la biblioteca maestra de Arduino de Python: Arduino es una herramienta económica pero altamente eficiente y funcional, programarlo en Embedded C hace que el proceso de hacer proyectos sea tedioso. El módulo Arduino_Master de Python simplifica esto y nos permite realizar cálculos, eliminar valores basura
Cálculo de la intensidad de la luz usando BH1715 y Particle Photon: 5 pasos
Cálculo de la intensidad de la luz utilizando BH1715 y Particle Photon: Ayer estuvimos trabajando en pantallas LCD y, mientras trabajaba en ellas, nos dimos cuenta de la importancia del cálculo de la intensidad de la luz. La intensidad de la luz no solo es importante en el dominio físico de este mundo, sino que tiene un papel bien dicho en la biología