loader image

Controla LED RGB desde App Android con Arduino y Bluetooth

Arduino Proyectos 0

En este proyecto desarrollarás una aplicación para Android para controlar el color de un LED RGB con un smartphone a través de Bluetooth.

Diseñarás la aplicación para Android usando un software gratuito de internet llamado MIT App Inventor 2. Este es un gran proyecto para aprender a interconectar el Arduino con un teléfono móvil.

Materiales

Elementos y componentes

  • Arduino UNO

    Tabla protoboard

    Cable o jumpers

    3 resistencias de 220Ω (o aproximada)

    LED RGB (ánodo común)

    Módulo Bluetooth HC-04, HC-05 o HC-06

    Teléfono móvil con Bluetooth

  • Software, aplicaciones y servicios online

  • MIT App Inventor 2

    IDE Arduino

  • Creación de la App Android

    La aplicación para Android se creará usando una aplicación web gratuita llamada MIT App Inventor. MIT App Inventor es un gran recurso para comenzar con el desarrollo de Android, ya que permite construir aplicaciones simples con la función de arrastrar y soltar (drag-n-drop).
    Necesitas una cuenta de Google para ingresar a MIT App Inventor, aquí está la página de ingreso: http://ai2.appinventor.mit.edu.

    Después de entrar, ve a Projects >Import project (.aia) from my computer y sube el archivo .aia. Haz clic aquí para descargar el archivo .aia.

    Después de subir el archivo .aia. Verás la aplicación en el software de MIT App Inventor.


    Diseñador

    Con MIT App Inventor tienes 2 secciones principales: diseñador y bloques (designer and blocks).

    El designer es la sección que te da la capacidad de añadir botones, añadir texto, añadir pantallas y editar el aspecto general de la aplicación. En el software App Inventor la aplicación se ve así:

    La aplicación se ve diferente en el software y en el smartphone. Así es como se ve la aplicación en un teléfono móvil:


    Bloques

    Además, hay una sección de bloques. La sección de blocks permite crear funcionalidad personalizada para la aplicación, de modo que al pulsar los botones realmente se realiza algo con esa información. Estos son los bloques para esta aplicación:


    Instalación de la App

    Para instalar la aplicación en tu smartphone, ve a la pestaña Build (Construir).

    • Puedes generar un código QR que luego podrás escanear con tu smartphone para instalar automáticamente la aplicación en el teléfono
    • O bien puedes descargar el archivo .apk, conectar tu smartphone al ordenador y mover el archivo .apk al teléfono
    Aprende también sobre:  Luces de policía con Arduino y tira de LED WS2812

    Sólo tienes que seguir el asistente de instalación para instalar la aplicación y listo!

    Código

    Descarga o copia el siguiente código en tu IDE de Arduino, y súbelo a tu placa Arduino UNO. Asegúrate de que tienes la placa correcta y el puerto COM seleccionado.

    Nota: antes de subir el código, asegúrate de tener los pines de TX y RX desconectados del módulo bluetooth!

    #define max_char 12
    char message[max_char];    // stores you message
    char r_char;               // reads each character
    byte index = 0;            // defines the position into your array
    int i;
    
    int redPin = 11;     // Red RGB pin -> D11
    int greenPin = 10;   // Green RGB pin -> D10
    int bluePin = 9;     // Blue RGB pin -> D9
    
    int redValue = 255;     // Red RGB pin -> D11
    int greenValue = 255;   // Green RGB pin -> D10
    int blueValue = 255;     // Blue RGB pin -> D9
    
    String redTempValue;     // Red RGB pin -> D11
    String greenTempValue;   // Green RGB pin -> D10
    String blueTempValue;     // Blue RGB pin -> D9
    
    int flag = 0;
    char currentColor;  
    
    void setup() {
      pinMode(redPin,OUTPUT);
      pinMode(bluePin,OUTPUT);
      pinMode(greenPin, OUTPUT);
      // initialize serial communication at 9600 bits per second:
      Serial.begin(9600);
    }
    
    void loop() {
      //while is reading the message 
      while(Serial.available() > 0){
        flag = 0;
        //the message can have up to 12 characters 
        if(index < (max_char-1)){         
          r_char = Serial.read();      // Reads a character
          message[index] = r_char;     // Stores the character in message array
          if(r_char=='R'){
             currentColor = 'R';
             redTempValue = "";
          }
          else if(r_char=='G'){
             currentColor = 'G';
             greenTempValue = "";
          }
          else if(r_char=='B'){
             currentColor = 'B';
             blueTempValue = "";
          }
          if(currentColor == 'R' && r_char!='R'){
             redTempValue += r_char;
          }
          else if(currentColor == 'G' && r_char!='G'){
             greenTempValue += r_char;
          }
          else if(currentColor == 'B' && r_char!='B'){
             blueTempValue += r_char;
          }
          index++;                     // Increment position
          message[index] = '\0';       // Delete the last position
       }
       
     }
     
     if(flag == 0){
       analogWrite(redPin, 255-redTempValue.toInt());
       analogWrite(greenPin, 255-greenTempValue.toInt());
       analogWrite(bluePin, 255-blueTempValue.toInt());
       /*Serial.print('R');
       Serial.println(redTempValue);
       Serial.print('G');
       Serial.println(greenTempValue);
       Serial.print('B');
       Serial.println(blueTempValue);
       Serial.print("MESSAGE ");*/
       Serial.println(message);
       flag=1;
           for(i=0; i<12; i++){
          message[i] = '\0';
        } 
        //resests the index
        index=0;  
     }
    
    }

    Conexión

    Siga el diagrama esquemático de la siguiente figura para conectar el circuito.

    Nota: Si estás usando un LED RGB con cátodo común, necesitas conectar el cable más largo a GND.

    Aprende también sobre:  Cómo hacer un circuito impreso PCB fácil y en casa

    Importante: Aquí están las conexiones del módulo bluetooth al Arduino:

    1. El módulo Bluetooth TX se conecta a la RX de Arduino
    2. El módulo Bluetooth RX se conecta a Arduino TX

    Así es como debería ser tu circuito:


    Iniciando la aplicación

    Una vez que tengas instalada la App, enciende el Bluetooth de tu smartphone.

    Asegúrate de emparejar tu smartphone con el módulo bluetooth: busca los dispositivos emparejados en la configuración bluetooth de tu smartphone.

    Luego, abre la aplicación recién instalada. Toca el botón Conectar bluetooth para conectarte al módulo bluetooth de arduino.

    Selecciona el módulo Bluetooth (debe llamarse linvor).

    ¡Ahora la aplicación está lista para ser usada!


    Submit your review
    1
    2
    3
    4
    5
    Submit
         
    Cancel

    Create your own review

    MiElectrónicaFácil.com
    Average rating:  
     0 reviews

     

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

    Deja una Review

    Submit your review
    1
    2
    3
    4
    5
    Submit
         
    Cancel

    Create your own review

    MiElectrónicaFácil.com
    Average rating:  
     0 reviews