Barra de LED PCA9685 con control con PWM en Arduino

En primer lugar, cabe señalar que esta barra de LED PCA9685 se controla mediante el protocolo I2C y un Arduino. Es por esto que se considera una barra de LEDs  es digital. La ventaja de esta barra , es que podemos controlar los LEDs de la misma con sólo 2 pines de nuestra tarjeta Arduino o microcontrolador. Los pines son SDA y SCL que pertenecen al protocolo I2C. Estos son, el pin de datos y el pin de reloj respectivamente. Esta tarjeta marca cuantex fue diseñada con el propósito didáctico de trabajar con un controlador de LEDs, asi como de que el usuario busque y le de una aplicación. De manera especifica podemos recomendar un indicador de magnitud de algún parámetro fisco. Donde no se requiera precisión pero una manera rápida de visualizar el parámetro.

LED PCA9685

Figura 1: Tarjeta LED PCA9685 controlada con Arduino.

Ejemplo de Barra de LED PCA9685

Primeramente como ejemplos generales podemos mencionar los siguientes. Un sistema para indicar las temperatura de una cámara de control termino, indicar la velocidad de un vehículo, indicar la distancia de un sistema en movimiento contra un objeto fijo, entre otras. La ventaja que supone usar un sistema con indicadores LEDs y no numérico es la simplicidad que este presenta y la poca carga mental que requiere. Supongamos un caso particular. Un operario esta observando la temperatura de un sistema, digamos que viene en grados centígrados. Aquí la cuestión es que el operario no necesita saber la temperatura especifica, solo necesita saber que si se pasa de cierta temperatura el tiene que apagar el equipo. En este caso es mas sencillo si ponemos esa temperatura referenciada y calibrada al primer LED rojo de nuestro sistema, donde el operario no tiene que recordar la temperatura, solo recordar que rojo es alto.

Para este ejemplo vamos a considerar el uso de la biblioteca del PCA9685 de Adafruit. Esta biblioteca, Adafruit la utiliza para su controlador de servo motores. En este caso vamos a hacer uso de las funciones tal cual vienen implementadas en la biblioteca.

Material para Barra de LED PCA9685

Conexiones de LED PCA9685 con Arduino MEGA 2560

En este caso, es importante mencionar que se esta usando un Arduino MEGA 2560, sin embargo, también es posible usar cualquier otro Arduino. Todos los Arduinos son compatibles, esto debido a que todos tienen integrado el protocolo I2C. Entonces las conexiones serán como sigue. Los de color rojo son de la tarjeta Cuantex y los azules los de Arduino.

  • SDA con SDA (20 en Arduino Mega 2560, 27 en Arduino UNO).
  • SCL con SCL (21 en Arduino Mega 2560, 28 en Arduino UNO).
  • VCC ó “+” con 5V en Arduino.
  • PIN “-“ con GND en Arduino.
LED PCA9685

Figura 2: Conexión de la tarjeta LED PCA9685 con Arduino.

A continuación se observan las figuras de la conexión con el Arduino.

LED PCA9685

Figura 3: Conexión de la tarjeta LED PCA9685 con Arduino. Para el ejemplo de el ADC se usó el canal A0.

 

Arduino MEGA

Figura 4: Arduino MEGA 2560 con las conexiones al LED PCA9685.

Programa para Barra de LED PCA9685

Primeramente, cabe mencionar que nos estamos basando en la biblioteca de control de servomotores de Adafruit, la puedes descargar desde github aqui. Estamos considerando modificaciones del ejemplo pwmtest.ino. La parte nueva en este ejemplo es el uso de la función pwm.setPWM(A,B,C). En donde A es el canal que queremos modificar, B es el valor inicial del PWM y C es el valor final del mismo. Tomando esto en consideración, finalmente, a continuación podemos ver tres ejemplos.

Ejemplo 1: Barra de LEDs incremental tipo onda como PWM.

Video del ejemplo 1, el código lo puedes encontrar a continuación.

Código de barra de LEDs incremental tipo onda como PWM.

Ejemplo 2: Barra de LED PCA9685 incremental tipo cascada

Video del ejemplo 1, el código lo puedes encontrar a continuación.

Código de barra de LEDs incremental tipo cascada con PWM

Ejemplo 3: Barra de LED PCA9685 controlado mediante el ADC

Video del ejemplo 1, el código lo puedes encontrar a continuación.

Código de barra de LEDs desplegando el valor del ADC.

ATENCIÓN

Te recordamos visitar nuestros tutoriales relacionados con las resistencias como, divisor de voltaje, sensor RTD o puente de wheatstone.

Por ultimo, si te gusto este tutorial, favor de dejar un comentario, lo agradeceremos mucho. Por lo tanto te recomendamos visitar nuestra pagina principal para que veas los nuevos tutoriales en HETPRO. Tenemos tutoriales de ArduinoPCBsprogramación y muchos más. En conclusión, esta obra está bajo una Licencia Creative Commons Atribución-NoComercial-SinDerivar 4.0 Internacional.

Autor: Dr: Hector Hugo Torres Ortega

2 Comments

  1. Gonzalo abril 8, 2018
    • Marc abril 27, 2018

Escríbenos tus dudas o comentarios

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Usamos Cookies en nuestro sitio WEB

Por favor confirma, si aceptas nuestras cookies de rastreo. También puedes negar el uso de cookies de rastreo y seguir navegando sin que ninguna información sea enviada a servicios de terceros.