martes, 16 de agosto de 2016

Módulo Bluetooth HC-06 y el HC-05 / Comunicación App-Android a Arduino


Bluetooth HC-06 y HC-05 Android – Arduino
Módulo Bluetooth HC-06 y el HC-05 /
Comunicación App-Android a Arduino.


Módulo Bluetooth HC-05 y el HC-06 (6 pines) y (4 pines)


Módulo Bluetooth HC-06 y el HC-05, gracias a sus puertos TxD y RxD nos permite realizar comunicaciones inalámbricamente a 10mts max resultando muy fáciles de manejar gracias a su SPP (Serial Port Protocol) de bajo consumo ya que trabajan a 3.3V. Los módulos de bluetooth HC-05 y HC-06 resultan populares para aplicaciones con microcontroladores PIC y Arduino. Sacando ventaja de su tamaño 12.7mmx27mm.

En este tutorial vamos a explicar un poco del funcionamiento de estos módulos y como configurar los. También abordaremos las diferencias entre el HC-05 y el HC-06.

En la foto de portada del artículo vemos de izquierda a derecha:
los módulos HC-05 y HC-06 en formato amigable para protoboard.

Módulo Bluetooth HC-05
El módulo de bluetooth HC-06 que solo opera de modo Esclavo, a diferencia de su hermano HC-05, Que ofrece una mejora, on respecto a precio y características, ya que es un módulo Maestro-Esclavo, esto quiere decir que además de recibir conexiones desde una PC o tablet, (Objetivo de este primer Tutorial) Comunicación App-Android a Arduino. También es capaz de generar conexiones hacia otros dispositivos Bluetooth. (Objetivo del siguiente Tutorial) Comunicación Arduino a Arduino.

Esto nos permite por ejemplo, conectar dos módulos de bluetooth y formar una conexión punto a punto, para transmitir datos entre dos microcontroladores o dispositivos.

HOJA DE DATOS: Modulo Bluetooth HC-05


4 y 6 Pines

Ya que en este tutorial de 2 partes. Cubrimos 2 aspectos desde comunicación móvil y a otro modulo.

Se ocuparan 1 o 2 de cada Elemento:
– Módulos Bluetooth (al menos 1 debe ser HC-05)
– Arduino (Cualquier Modelo)
– App Android (BlueTerm, ArduDroid, Bluetooth Serial Control, JoyBT Commander etc…)
– Jumpers (de preferencia Macho-Hembra)
-LED y resistencia de 220 ohm.
– si es necesario alguna fuente de alimentación de 6-12V o 5V de comunicación serial.

Tutorial 1: Comunicación App-Android a Arduino.

Que puede servir desde prender y apagar Led´s hasta controlar un Robot de manera remota.
Para lo cual cualquier modulo Bluetooth es bueno, HetPRO: HC-05 o HC-06

Para esta parte usaremos, App-Android, un Arduino, un LED y el Modulo Bluetooth HC-06 (esclavo).
Ya que este módulo no ocupa ninguna clase de configuración, se destaca por solo tener 4 pines.

PASO 1: Establecer la App según la finalidad.

Hay diversas App´s en play.google.com/store solo es cuestión de buscar “arduino bluetooth” ó “bluetooth hc-06 arduino”

Entre las más clásicas y desde mi opinión las más útiles están:
• BlueTerm: aunque muy básico logra dar una idea muy primitiva de lo que se esta haciendo.
• ArduDroid: es una app de testeo rápido, prender y apagar puertos y controlar PMW´s.
• Bluetooth Serial Controller: My favorita puedes crear tu propia Botonera.
• Joystick Bluetooth Commander: un Joystick y 4 Botones.
• Arduino BT Mando PRO: muy intuitivo y logra usar el Giroscopio interno de tu Móvil.

Todos con el mismo código y principios de comunicación Serial.

PASO 2: Instalemos la aplicación a usar

Esta ves usaremos “Bluetooth Serial Controller” ya que es muy completo y fácil de usar Primero búsquenlo e Instálenlo.


1) Una vez instalado les pedirá que prendan el Bluetooth de su equipo, si es que estaba apagado.


2) Por default te da 9 botones y puedes controlar hasta 25 botones.


3) Para configurar lo presionamos MENÚ donde sale el menú preferencias.


4) La aplicación nos permite guardar A-E Botoneras


5) Podemos modificar el Nombre de cada Botón.


6) Podemos modificar el Comando de cada Botón.


7) Podemos modificar la Visibilidad de cada Botón.


8) Así como sus Preferencias.


9) La configuración que usaremos seria Prender y Apagar un Led.


10) Al presionar la Lupa nos permite conectar al Modulo. ya que tengamos Conectado y Programado nuestro Controlador.


• Como les mencionaba se pueden emplear a gusto sus usos.

Ya que el modulo manda un Carácter a la vez 8 bits, Solo veremos a continuación la comunicación ‘C’ ya sea con int o char como variable declarada. Ya con práctica y conocimiento pueden practicar un poco con los siguientes ejemplos y guardar cadenas. De tal manera poder mandar Ordenes más claras como Datos y Procesos no solo Ordenes.

Comunicación “Joystick Bluetooth Commander”:
un Joystick y 4 Botones usando Codigo Cadena

PASO 3: Programar MicroControlador “Arduino”

” Ya que no sabemos que tiene cargado el Arduino es importante primero programarlo
y así prevenir voltajes de entrada indeseados a nuestros componentes. “


Arduino UNO + Modulo Bluethoot HC-05

Recordemos que la transmisión (abreviatura: Tx) va a nuestra recepción (abreviatura: Rx) y viceversa.
Aunque el Modulo puede operar a 5V lo recomendable son los 3.3V para el ahorro de energía.
Y como respuesta Colocar un LED con una resistencia de 220 ohm del Pin 12 a GND.

El programa será el siguiente:
?

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
//bluetooth hc-06
int ledPin = 12; // usamos un pin de salida al LED
int state = 0; // Variable lectrura serial

void setup() {
pinMode(ledPin, OUTPUT); //Declara pin de Salida
digitalWrite(ledPin, LOW); //Normalmente Apagado
Serial.begin(9600);
}

void loop() {
//si el modulo a manda dato, guardarlo en estado.
if(Serial.available() > 0){
state = Serial.read();
} // esta parte del código es para solo 1 Carácter o Unidad.

// si el estado es 0 ese sería Apagado “OFF”
if (state == '0') {
digitalWrite(ledPin, LOW);
Serial.println("LED: off");
}

// de lo contrario si el estado es 1 ese sería Encendido “ON”
else
if (state == '1') {
digitalWrite(ledPin, HIGH);
Serial.println("LED: on");
}

}


Listos con la App buscamos nuestro bluetooth hc-06 en la LUPA, “la contraseña es 1234 que ya viene de Fabrica.” la App debe notificarnos que esta conectado al Modulo y listo “1”´s y “0”´s Prenderán y apagaran el LED

Aprende a controlar tu placa arduino desde un dispositivo Android por Bluetooth



¿Alguna vez has querido recibir en tu móvil la lectura de un sensor o tan solo querer realizar una acción en tu arduino de manera inalámbrica?



Podrás realizar aplicaciones propias como por ejemplo la del siguiente vídeo:



En este caso se utiliza una comunicación Wifi pero el fundamento es el mismo.





¿Que necesito para hacer esto?



– Placa Arduino

– Shield de comunicaciones

– Módulo bluetooth




En mi caso utilice este módulo bluetooth:

Bluetooth

Si se adquiere este módulo, el shield de comunicaciones te lo puedes ahorrar. No es necesario, si adquieres un módulo bluetooth más caro que necesita el shield de comunicaciones de arduino si que deberás comprarlo.



Después procederemos a descargar la aplicación de Android para enviar datos mediante la comunicación bluetooth que la puedes encontrar aquí:

Android



La conexión de este módulo es muy sencilla, como se puede observar en la imagen de abajo, los pines cero y uno de la placa llamados TX y Rx deberán conectarse a las patas también llamadas Tx y Rx del módulo bluetooth.

¡OJO!

La pata Tx de Arduino se conecta con la pata Rx del bluetooth

La pata Rx de Arduino se conecta con la pata Tx del bluetooth.





Antes de realizar la conexión debéis tener el programa grabado en la placa Arduino, sino sabes como programar, te recomiendo que visites esta página.



Recuerdo que se deberá iniciar el puerto serie con el comando:

Serial.begin(9600);

Si queremos leer lo que enviamos desde el móvil o tablet escribiremos:

Variable = Serial.read();

Y si queremos mandar algo al móvil:

Serial.write(variable);



Y no tiene mayor dificultad realizar esta comunicación, si hay alguna duda podéis comentar y compartir en redes sociales para agradecer este tutorial.


https://youtu.be/Pr8SvHFoRLg?t=1

No hay comentarios:

Publicar un comentario