Composición de colores RGB con potenciómetros a través de Bluetooth

0
134

En este post, aprenderemos a usar dos Arduinos para controlar el color de un LED RGB a través de comunicación Bluetooth. Haremos esto utilizando tres potenciómetros, uno para cada color (rojo, verde y azul).

Conectaremos el LED RGB al «Arduino Esclavo», que recibirá los valores R, G y B necesarios para componer el color y aplicarlos al LED RGB. Conectaremos los tres potenciómetros al «Arduino Maestro», que leerá sus valores analógicos y los enviará al «Arduino Esclavo» a través de bluetooth.

Esto es similar a lo que se explicó en un post anterior, pero en lugar de conectar todos los componentes al mismo Arduino, usaremos dos Arduinos conectados por Bluetooth.

Comunicación Bluetooth “Maestro-Esclavo” entre dos Arduinos

Para poder realizar la comunicación Bluetooth entre los dos Arduinos, necesitaremos conectar un módulo Bluetooth HC-06 al “Arduino Esclavo” para que pueda recibir los valores R, G y B de la composición del color y además necesitaremos conectar un módulo bluetooth HC-05 al “Arduino Maestro” configurándolo como maestro para que pueda enviar los valores R, G y B a través de bluetooth.

Debemos tener en cuenta que para que ambos Arduinos se sincronicen vía Bluetooth deben de tener configurado mediante “comandos AT” el mismo pin de conexión, que en mi caso es “1234” para ambos Arduinos. También hace falta establecer la misma velocidad de transmisión (yo recomiendo 38400 Baudios para no tener que modificar los programas que cargamos en los Arduinos).

Como referencia sobre este tema tenemos el post anterior, donde se explica con detenimiento cómo configurar estos módulos bluetooth con éxito.

Tabla de conexiones

Cabe aclarar que tanto la masa (GND) como la alimentación (VCC) de los módulos bluetooth HC-05 y HC-06 van conectadas respectivamente a los pines «GND» y «+5V» de Arduino. Los potenciómetros lineales de 10KΩ tienen un mando de control  y tres terminales de conexión que denominaremos P1, P2 y P3, donde P2 es el terminal central del potenciómetro.

Como necesitamos tres potenciómetros en este proyecto, vamos a utilizar la matriz de enteros “const int Pot[3] = {0, 1, 2}” para definir a que pines analógicos de Arduino van a ir conectados los terminales centrales de los potenciómetros. De esta manera podremos realizar la lectura de sus valores.

Los números en la matriz Pot especifican la terminal central del potenciómetro que regula el color rojo del LED RGB (P2_Pot[0]) va conectado a la entrada analógica “A0” de Arduino, el que regula el color verde (P2_Pot[1]) le conectaremos a la entrada analógica “A1” y el que regula el color azul (P2_Pot[2]) le conectaremos a la entrada analógica “A2”.

Los otros dos terminales, P1 y P3, de cada uno de los tres potenciómetros van conectados respectivamente a los pines +5V y GND de Arduino. Por último, tengo que explicar, que el módulo RGB consta de cuatro pines de conexión, tres de ellos para los valores de entrada R, G y B que van conectados a los pines digitales 9, 10 y 11 respectivamente, y el restante que va conectado al pin “GND” de Arduino.

Para finalizar debo añadir que para que todo esto funcione correctamente simplemente debemos de realizar correctamente la conexión de todos los componentes, a la vez que cargar el código correspondiente en cada uno de los Arduinos para que se comporten de manera adecuada.

Una vez realizado esto, debemos de tener alimentados los dos Arduinos y esperar a que sincronicen los módulos bluetooth entre sí para comenzar a operar. Esto es un proceso automático y no es necesario realizar ninguna tarea adicional para que ocurra. Sabremos que los dispositivos están sincronizados cuando el LED de conexión de los módulos Bluetooth HC-06 y HC-05 deje de parpadear para permanecer en un estado fijo.

A partir de aquí podremos ir moviendo el mando de control de los 3 potenciómetros (R, G y B) para ir componiendo los colores en el LED RGB. Si abrimos el monitor serie del “Arduino Maestro” cuando lo tenemos conectado al PC a través del cable USB, podremos ver el valor de R, G y B (de 0 a 255) que estamos enviando a través de Bluetooth en cada momento cuando movemos los mandos de los tres potenciómetros.

Monitor serie
Lista de Materiales
    • Arduino UNO Rev.3
    • Cable USB tipo A-B
    • Módulo Bluetooth HC-05 (Maestro)
    • Módulo Bluetooth HC-06 (Esclavo)
    • LED RGB de  5mm (cátodo común)
    • 3 Resistencias de 220Ω
    • 3 Potenciómetros lineales de 10KΩ
    • Protoboard
    • Cables de conexión

NOTA: Si utilizamos un módulo RGB, no nos hace falta utilizar ni el LED RGB ni las resistencias, puesto que ya viene todo integrado en una pequeña placa.

Código del programa

Arduino Esclavo

Arduino Maestro

Video

En este post se explica cómo utilizar dos Arduinos para controlar el color de un LED RGB a través de la comunicación Bluetooth. Se utilizan tres potenciómetros para controlar los colores rojo, verde y azul del LED RGB, que están conectados al «Arduino Maestro».

El «Arduino Esclavo» recibe los valores R, G y B necesarios para componer el color del LED RGB a través de un módulo Bluetooth HC-06. El «Arduino Maestro» envía los valores R, G y B a través de un módulo Bluetooth HC-05 configurado como maestro.

Es importante tener en cuenta que para que ambos Arduinos se sincronicen vía Bluetooth deben tener el mismo pin de conexión y velocidad de transmisión. Además, se proporciona una tabla de conexiones detallando cómo conectar los componentes y se incluyen los códigos de programación para ambos Arduinos.

Gracias por leer este post. Espero que haya sido útil para aprender a controlar el color de un LED RGB a través de la comunicación Bluetooth entre dos Arduinos. Si tienes alguna duda o sugerencia, por favor no dudes en dejar un comentario. ¡Estaremos encantados de ayudarte o de escuchar tu opinión!

0 0 votes
Article Rating
Suscríbete
Notify of
guest

0 Comments
newest
oldest most voted
Inline Feedbacks
View all comments