Objetivos
Material requerido
Conectando el Bluetooth HC-06 a 4-bot
Ya hemos aprendido como controlar al 4-bot utilizando el Nunchuk de la Wii, y aunque está muy bien poder usar el acelerómetro para controlar la inclinación del robot araña, tiene la limitación del cable, que a veces puede ser un engorro. Así que en está ocasión vamos a aprender a controlarlo utilizando un bluetooth HC-06 y el teléfono móvil.
Eso sí, si no creamos una app específica para este robot, va a ser un poco lío manejarla con una típica para robots tipo coche teledirigido. De momento dejaremos lo de crear la app para más adelante y tiraremos con la misma que solemos usar siempre.
Lo primero que tenemos que hacer es conectarlo al shield de servos. Lo haremos en los pines 7 y 8, aprovechándonos de la librería SoftwareSerial para no tener que andar soltándolo cada vez que queramos programarlo. Conectaremos el HC-06 de esta manera:
Si queréis usar otros pines, aseguraros de que las conexiones Rx y Tx del arduino y del HC-06 estén cruzadas, o hará caso omiso de vuestras órdenes.
Programa
Ya tenemos los movimientos del robot programados en esta sesión, así que sólo nos falta la parte de la comunicación por Bluetooth. Lo primero que tenemos que hacer es incluir la librería SoftwareSerial y declarar los pines que vamos a usar, en este caso el 7(Rx) y el 8(Tx).
#include <SoftwareSerial.h> SoftwareSerial BT(7,8); // RX, TX
Y a partir de ahí sólo tenemos que inicializar el puerto serie que hemos creado a 9600 baudios (que es la velocidad a la que vienen los HC-06 por defecto) hacer un case para hacer cada acción en función de lo que recibimos por el Bluetooth. Los caracteres que usamos son los que vienen por defecto en esta app, si vais a usar otro tendréis que cambiarlos. Normalmente podéis ver los que usa la app en los ajustes.
void setup() { BT.begin(9600) ; pwm.begin(); pwm.setPWMFreq(60); // Los servos funcionan a ~60 Hz } void loop() { if (BT.available()) switch (BT.read()) { case 'F': andar(); break; case 'B': atras(); break; case 'R': girarderecha(); break; case 'L': girarizquierda(); break; case 'S': depie(); break; } } DECARGAR LA APP Y SINCRONIZARLA
Lo primero que tendréis que hacer es encontrar el Bluetooth desde vuestro móvil y sincronizarlo, como cualquier otro dispositivo.
Hasta que hagamos una app propia oo encontremos una más apropiada, seguiremos usando Arduino Bluetooth RC Car, que es muy sencillita de usar y funciona bastante bien.
De momento el programa que hemos hecho en el Arduino nos permite usar las flechas de la app para mover la araña en las diferentes direcciones. Si queréis incluir más movimientos no tenéis más que hacer mas casos para el switch case y programar nuevas funciones, o usar las que ya tenemos. Podéis ver los demás controles de la aplicación en ajustes, y así saber que letras usa para los cases:
Resumen de la sesión
En esta sesión hemos aprendido varias cosas importantes: