Práctica 20 – Bluetooth HM-10

 

Introducción

 

En esta práctica se implementa el control del encendido y apagado de un LED por medio de bluetooth 4.0 LE (Low Energy). El control del LED se realiza a través de un módulo bluetooth HM-10 para recibir y enviar datos a un smartphone mediante una aplicación llamada “Serial Bluetooth Terminal” para Android. 

 

Descripción

En esta práctica se realiza la conexión con el módulo Bluetooth HC-05 para enviar y recibir datos hacia un smartphone por medio de una aplicación llamada Serial Bluetooth Terminal para Android, la cual enviá indicaciones para el encendido y apagado de un LED, también pregunta el estado de un push button usando los módulos X-UNO o X-MEGA o X-NANO. Para encender el LED se envía el número 1, si se desea apagar se envía el número 0. Para recibir el estado del push button, se envía el signo “?”, si está presionado recibe el número 1, en caso contrario se recibe el número 0.

 

Materiales:

1 x Módulo X-UNO o X-MEGA o X-NANO. Comprar

1 x Módulo Programador XCU. Comprar

1 x Push Button. Comprar

1 x Bluetooth HM-10. Comprar

1 x Resistencia 220 Ohms. Comprar

1 x Juego de cable Dupont. Comprar

1 x Protoboard de 830 puntos. Comprar

1 x Cable micro USB.

 

Software:

Windows 7 o posterior.

Arduino IDE. Descarga

 

Procedimiento

1. En el apartado de “Diagrama esquemático”, que se encuentra a continuación, selecciona tu módulo, realiza las conexiones que se muestran en la imagen y conéctalo a la computadora.

2. Al final de esta práctica, en el apartado de “Descargas”, puedes encontrar los archivos del código fuente, o bien copiarlo del apartado de “Código” que se encuentra más abajo.

3. Si descargaste el archivo del paso 2, omite este paso. Si copiaste el código, abre el software Arduino IDE, pega el código en un nuevo proyecto, realiza la compilación. 

4. Programa el código que descargaste o compilaste, en el módulo. En el siguiente link encontrarás un manual para compilar y programar en Arduino IDE.

5. Al terminar de programar, el módulo se reiniciará y el programa de esta práctica se ejecutará.

 

A continuación se muestran las instrucciones para la comunicación entre el módulo bluetooth y el smartphone.

Instrucciones para comunicación bluetooth

Mostrar más información

PASO 1

Empareja el dispositivo bluetooth HM-10 con el Smartphone desde las configuraciones.

Nota: si no se ha programado el dispositivo HM-10 el nombre y contraseña deberán ser los siguientes:

Nombre: BT05 (HM-10)

Contraseña: 000000

 

PASO 2

Debemos seleccionar el tipo de Bluetooth desde el apartado de “Devices” teniendo dos opciones:

BLUETOOTH CLASSIC: Bluetooth 2.0 (HC-05)

BLUETOOTH LE: Bluetooth 4.0 (HM-10).

En este caso seleccionamos LE y BT05 

 

Nota: Una vez conectado los dispositivos, podrás enviar y recibir datos a través de la aplicación para el encendido y apagado del LED, así como el estado del push button.

 

 

 

Diagrama esquemático

 

X-UNO
X-MEGA
X-NANO
X-UNO

X-MEGA

X-NANO

 

Código

 

Código

/*

AUTOR: MICROSIDE TECHNOLOGY S.A. DE C.V.

FECHA: JUNIO 2019

*/

/**************************************************************************

Esta práctica consiste en realizar el envió de datos por medio de un módulo

Bluetooth, usando el protocolo de comunicación serial UART, para enviar un

comando simple para prender y apagar un LED incluido en los módulos X-UNO, X-MEGA o X-NANO

y un segundo comando para preguntar el estado de un botón.

**************************************************************************/

#include <SoftwareSerial.h>

int led1 = 13;

int data;

const int BOTON = 8;                                                      //Número del pin para BOTÓN

int EstadoBoton = 0;                                                        //Variable para guardar el estado

void setup()

{

  Serial.begin(9600);                                                                    //configura comunicación serial

  pinMode(led1,OUTPUT);                                                         //configura pin como salida para el LED

  pinMode (BOTON, INPUT_PULLUP);                                      //Inicializa el PIN como entrada con pull – up

}

void loop()

{

   while(Serial.available())                                             //espera recibir un dato del Bluetooth

    {

     data = Serial.read();                                                  //lee el dato recibido

       if(data == ‘1’)

         {

          digitalWrite(led1,HIGH);                                              //enciende el LED

          Serial.println(“LED encendido”);                                   //imprime en el monitor serial

           }

          if(data == ‘0’)

           {

          digitalWrite(led1,LOW);                                                //apaga el LED

          Serial.println(“LED apagado”);

           }

          else if(data == ‘?’)

          {
         EstadoBoton = digitalRead (BOTON);                 //Leer estado del botón

         if (EstadoBoton == HIGH)                                    //Pregunta el estado del botón

          {

            Serial.println (“0”);                                                 //Envía un 0 si el botón no está presionado

          }   

          else

           {

              Serial.println (“1”);                                                //Envía un 1 si el botón está presionado

           }

       }

    }
}

 

 

Descargas

Práctica 20 – Arduino

Descarga código en Arduino de la práctica 20.

 

Fecha

enero 20, 2019

Categoría

Prácticas Arduino

EnglishSpanish