Vúmetro RGB con ARDUINO

Construcción de un vúmetro LED RGB, controlado por Arduino. Este montaje consiste en un par de tiras RGB de un metro, con 30 LED SMD de tipo inteligente (WS2812) cada una. Este tipo de diodos incluye en su interior su propio controlador. Los diodos WS2812 disponen de una entrada de datos, la salida y los dos pines de alimentación. La información se transmite en serie, desplazando los datos de un pixel hacia el siguiente, y cada pixel utiliza 24 bit de información… 8 bit por cada color (RGB). El control de este vúmetro LED se realiza con Arduino. Micrófono amplificadoEl sonido se capta mediante un micrófono amplificado, de manera que no es necesario realizar ninguna conexión eléctrica entre el reproductor de audio y el vúmetro. Para facilitar el uso de este vúmetro en cualquier lugar, la alimentación de 5V se suministra con el módulo ‘Step Down-ConverterMP1584. De esta manera es posible alimentar este vúmetro con cualquier alimentador de continua, entre 6 y 28 voltios. Así podría utilizarse también dentro del coche, alimentado desde los 12V de la batería, y mostrar los efectos luminosos al ritmo del sonido del auto radio.

Tiras LED WS2812

Existen varios tipos de tiras LED RGB, pudiendo elegir la separación entre diodos y el grado de protección IP. Cuanto mayor sea el número de diodos LED por metro, mejor será el efecto luminoso que se pretenda mostrar (mayor resolución y brillo), pero el consumo también será mayor. Dependiendo del lugar donde se vayan a instalar las tiras LED, podremos elegir un grado de protección IP. El acabado IP67 permite utilizar estas tiras LED a la intemperie, protegiendo todos sus componentes electrónicos contra el agua y el polvo. Los consumos que se muestran en la tabla siguiente, son consumos máximos (cuando se encienden los tres colores de cada pixel a máximo brillo).

Las tiras LED WS2812 necesitan 3 hilos de conexión, 2 para la alimentación y 1 para datos. Las tiras LED se pueden cortar al tamaño que se necesite, y también se pueden ampliar juntando la salida de una de ellas con la entrada de otra. Cuando se vayan a utilizar tiras de gran tamaño, es importante conectar los hilos de alimentación con cable en varios puntos. Así se evitará la caída de tensión a lo largo de la línea, lo que provocaría un cambio de color y brillo sobre el color que se pretenda mostrar.

Conexiones tiras WS812

Descripción del circuito

Este vúmetro LED no necesita una conexión eléctrica con la fuente de sonido, facilitando así su uso y pudiendo mostrar efectos luminosos al ritmo del sonido de una sala, dentro de un coche, etc.. El sonido se capta por un micrófono de tipo ‘Electret‘, el cual se amplifica con un operacional, hasta conseguir el nivel necesario para excitar la entrada analógica del micro-controlador de Arduino ATMEGA328P .

En el esquema se muestra el montaje del micrófono y el amplificador operacional, pero también podría utilizarse un módulo SMD ya montado, el cuál se vende para el uso con Arduino, y conectar su salida de audio con la entrada A0 de Arduino. Para facilitar el uso de este vúmetro en cualquier lugar, la alimentación de 5V se suministra con el módulo ‘Step Down-ConverterMP1584.

Construcción del vúmetro

El circuito de control del vúmetro lo he montado en una placa de circuito impreso de tipo universal.

CPU: Vúmetro RGB

Posteriormente fabriqué una caja con metacrilato, haciendo la serigrafía con la CNC.

Vúmetro RGB: Módulo de control

A continuación se muestra el vúmetro LED funcionando.

Vúmetro RGB en pruebas

Firmware ARDUINO

El código de Arduino que he utilizado para este proyecto lo conseguí como un comentario en Internet. No conozco el autor del código, y por eso no figura su nombre en la cabecera. Este código, junto con la librería de control necesaria para el WS2812, se puede descargar desde el siguiente enlace: Vúmetro RGB

Termostato de precisión #1

Construcción de un termostato digital, para controlar temperaturas con una precisión de 0,1ºC. Este termostato utiliza el sensor DS18B20, está controlado con el microprocesador AT89S52, y permite regular temperaturas entre -40 y +100ºC. También es posible controlar de forma simultánea los dos circuitos de un climatizador, el de frío y calor. Este termostato podría utilizarse como climatizador en un automóvil, controlar la temperatura de un edificio, la del agua de una piscina, incluso la de una incubadora. En esta primera parte, se muestra el diseño y construcción del termostato.

Descripción de funcionamiento

Este termostato permite calibrar su sensor de temperatura (DS18B20) en saltos de 1ºC, permitiendo un Offset entre -5 y +4ºC sobre el valor medido. Este valor de calibrado, junto con el valor de temperatura de referencia del termostato, también configurable mediante los pulsadores, son almacenados en la memoria RAM del propio micro controlador (AT89S52). Para evitar la pérdida de dichos valores en caso de perder la alimentación mientras está funcionando, el circuito incorpora una pequeña batería recargable de 3,6V Ni-MH.

Esquema: Termostato de precisión

Salidas de control

El termostato permite controlar los dos circuitos de  un climatizador de forma simultánea, el circuito de frío y el de calor. El micro controlador dispone de 2 salidas con estado lógico ‘0’ y otras 2 con estado lógico ‘1’. De esta forma es posible conectar cualquier driver en sus salidas. En este circuito he utilizado un módulo compuesto por 2 relés de 5V, de disparo con estado lógico ‘0’ y entradas optoacopladas (ver imagen).

2 Relay Module

Power Down Mode

La activación del ‘modo apagado’ (Power Down) del micro controlador permite minimizar al máximo su consumo. La detección de dicha caída de tensión se realiza mediante la lectura del nivel lógico 1/0 en el pin 39 (P0.0) del micro controlador. A pesar de que se podría simplificar el circuito intercalando una resistencia entre dicho pin (P0.0) y la entrada +5V, es mucho más eficaz entregar un nivel lógico en su entrada fijando su umbral de decisión. El circuito detector del umbral de apagado, está fijado por el valor del diodo Zener montado entre la base del transistor BC557 y masa (ver el esquema). En lugar del diodo Zener, puede utilizarse un diodo LED que tenga un umbral de encendido próximo a 3V.

A pesar de que el consumo del micro controlador se reduce bastante, es conveniente conectar la batería únicamente cuando el termostato esté en uso. De otra manera, la batería acabaría por descargarse. La finalidad de la batería es la de mantener los valores de configuración mientras el termostato está funcionando, y no cuando esté almacenado sin uso. En el esquema podemos ver que la desconexión de la batería se realiza mediante la extracción de un puente (jumper) entre el polo negativo de la batería  y masa. Este puente puede sustituirse por un pequeño interruptor deslizante, para poder accionarlo sin la necesidad de tener que abrir la caja.

Circuito impreso

Para la realización de este termostato he utilizado un circuito impreso de tipo universal. Es cierto que el acabado queda mucho mejor si se monta en un circuito impreso hecho a medida. Sin embargo, muchos aficionados a la electrónica son reacios a ‘perder el tiempo’ en fabricar un circuito impreso, y prefieren utilizar placas de tipo universal. Además, la fiabilidad del circuito impreso sólo depende del cuidado que se ponga durante el montaje y soldadura de sus componentes… el aspecto no mejora la fiabilidad.

Circuito impreso universal

Firmware

Termostato de precisión (v1.00)

Caja y frontal

He utilizado una caja de plástico de tipo comercial, de tamaño 130×130 mm y 35 mm de altura. Para darle un mejor acabado, he utilizado un trozo de Polimetilmetacrilato (Plexiglas).

Frontal delTermostato

El mecanizado y serigrafía lo he realizado con la CNC.