lunes, 14 de noviembre de 2016

Light Sensor BH1750 y LCD 16x2 I2C

 El control de la luz es una habilidad esencial en numerosos sectores. Esta vez vamos a montar un instrumento de medida sensible a la luz.

 Es muy fácil si disponemos de un sensor adecuado ademas de un controlador y un display para exponer su valor, esta vez será de tipo LCD alfanumérico con comunicacion I2C.

 En cuanto al sensor usaremos algo mejor que un Foto-Resistor (LDR)un sensor de iluminación digital como el módulo BH1750.

 Este sensor entrega el valor de la intensidad luminosa directamente en unidades Lux y lo hace a través del bus I2 ( Inter-Integrated Circuit) .








 


Alimentaremos el sensor con la salida de 3.3V de Arduino.  El pin ADDR se emplea para cambiar de dirección I2C según se conecte. SCL y SDA del sensor a través de resistencias de 560Ω al bus  I2C y ADDR a través de 560Ω a 3.3V de Arduino.

 En Arduino nano, el bus I2C esta en los pines analógicos A4 (SDA) y A5 (SCL).
 Asociaremos tres dispositivos capaces de comunicarse  por medio del bus I2C, con lo que conseguiremos una gran reducción en el cableado.


Librerias necesarias:


BH1750FVI;                              para el sensor.

Wire;                                       protocolo I2C

LCD; LiquidCrystal I2C;             para el display



 Una ventaja importante de I2C es que permite el uso de líneas de datos y de reloj común para comunicarse con una cierta cantidad de periféricos.




 Es la dirección del esclavo que se emite a través del bus I2C la que determina quién debe responder, pudiéndose intercambiar el rol maestro/esclavo ( los dispositivos que lo permitan )

 El proyecto se ve asi:





Y este es el sketch del programa empleado:


BH1750_LCD_16x2_I2C



Saludos y hasta pronto.

AGPminiproyects.

1 comentario:

  1. hello, can you share the wiring diagram. please send to my email. thank you.
    renzrei20@gmail.com

    ResponderEliminar

Nota: solo los miembros de este blog pueden publicar comentarios.