Arrow Electronic Components Online

Control Bluetooth Arduino: Control de Arduino a Arduino mediante Bluetooth

Inalámbrico30 abr 2018
Una vista en primer plano de placas Arduino montadas en protoboards, conectadas a módulos Bluetooth con cables puente, resistencias y botones pulsadores amarillos.
Ver todos los artículos

Cuando la persona promedio escucha el término "Bluetooth", puede pensar en un auricular o altavoz de audio. Ambos dispositivos utilizan la tecnología Bluetooth, pero los entusiastas de la electrónica saben que se puede usar este método de comunicación a corta distancia para mucho más que escuchar tu podcast favorito.   Bluetooth puede transmitir información de docenas de formas interesantes e innovadoras. Uno de nuestros usos favoritos es emparejar un robot basado en Arduino u otro dispositivo con un smartphone para controlarlo.   Aquí tienes cómo empezar a usar la tecnología Bluetooth en tu próximo proyecto de robótica con Arduino.

¿Cómo funciona la comunicación Bluetooth de Arduino a Arduino?

Utilizando señales seriales Bluetooth, tu teléfono controla el Arduino tan perfectamente como si los dos tuvieran una conexión por hardware. Aplicaciones como Bluetooth Terminal y ArduinoRC hacen un buen trabajo convirtiendo tu teléfono en un dispositivo de interfaz en este escenario.   Esto se pone aún mejor. Con la configuración adecuada, puedes permitir que dos placas Arduino se comuniquen entre sí sin la necesidad de un ordenador o teléfono. La comunicación de Arduino a Arduino es un poco más compleja de operar correctamente, pero amplía considerablemente las posibilidades de control.

Paso 1: Construir los circuitos

A wiring diagram showing an Arduino board connected to a breadboard and an HC‑05 Bluetooth module using jumper wires, resistors, and a push button.

Para esta construcción, necesitarás ensamblar un par de protoboards idénticos, como se muestra en el diagrama de Fritzing arriba. Cada uno de estos utilizará un Arduino Nano para transmitir datos mediante un módulo Bluetooth HC-05, permitiendo que su contraparte reciba estos datos y responda encendiendo el LED integrado. Puedes enviar una señal de un Arduino a otro a través de la interfaz serial de una computadora, pero la entrada del botón proporciona una tecla de acceso rápido para transmitir un carácter de forma inalámbrica.   Esto es lo que necesitas para construir tus circuitos:

  • (2) Arduino Nanos
  • (2) Protoboards
  • (2) Módulos Bluetooth HC-05
  • (2) Botones pulsadores
  • (2) Resistores de 1k
  • (2) Resistores de 2k
  • (2) Resistores de 20k
  • Cables puente
  • (2) Cables mini-USB
Nota: Puedes sustituir muchos de los componentes según tus preferencias. Por ejemplo, un Arduino Uno funciona igual de bien que un Nano. Además, en el diagrama del circuito se puede ver que hemos usado un divisor de voltaje en el pin RX del HC-05. Los módulos HC-05 trabajan a 3.3V, por lo que tomamos esta decisión para evitar proporcionar demasiado voltaje a ese pin.

Emparejar su módulo Bluetooth de Arduino

Two computer windows side by side showing Arduino serial monitor output, with text indicating the device is ready and displaying test messages over a COM port.

Fig 2: Al abrir una segunda instancia del Arduino IDE, puedes trabajar con dos placas separadas al mismo tiempo.
 
Una vez que hayas completado la configuración de tu circuito, necesitarás configurar tus dos módulos Bluetooth para que se comuniquen entre sí. Estos son los próximos pasos:

  1. Transfiere el código HC-05_AT_MODE_01 encontrado aquí a una de tus placas Arduino. Luego, pon el módulo Bluetooth HC-05 en modo AT encendiendo el módulo mientras mantienes presionado el botón de la placa.
  2. Los LEDs integrados parpadearán lentamente al encenderse. Abre un monitor serial en tu Arduino IDE; luego, escribe “AT”. Si todo está funcionando correctamente, recibirás una respuesta “OK” del terminal.
  3. Escribe “AT+ROLE=1” para configurar tu HC-05 como maestro; luego, AT+CMODE=1 para permitir que se empareje con cualquier dirección (módulo).
  4. Reinicia el dispositivo, y tu HC-05—ahora actuando como maestro—se emparejará con el otro HC-05, que normalmente viene configurado como módulo esclavo.

Si necesitas cambiar un maestro a esclavo, interfázalo serialmente como se describió anteriormente y escribe AT+ROLE=0. También es posible usar un módulo HC-06, que solo funciona en modo esclavo. Utiliza el código vinculado en el paso 1 para más detalles. También puedes enlazar los dos módulos usando estas instrucciones avanzadas.
 
Cuando trabajes con dos placas Arduino de esta manera, puede ser extremadamente útil cargar dos instancias del Arduino IDE (desde un acceso directo, no usando archivo/nuevo o archivo/abrir en el IDE). Esto te permite cargar programas y monitorear puertos seriales simultáneamente, haciendo que la programación y la solución de problemas sean mucho más fáciles.

Empareja tu módulo Bluetooth Arduino

Two breadboards each containing an Arduino board connected with jumper wires and components, with USB cables attached and indicator LEDs lit on one board.

Fig 3: Un pulsador enciende la luz en otro Arduino Nano. Las notas adhesivas indican el puerto serial utilizado para identificar cada uno durante la programación.   Una vez que hayas conectado tu HC-05/Arduino, carga el software encontrado aquí en cada Arduino y sigue estos pasos:

  1. Abre un monitor serial para cada instancia del IDE, luego experimenta ingresando “O” y “F” (sensible a mayúsculas y minúsculas).
  2. Deberías ver que la placa opuesta responde encendiendo y apagando su LED integrado. Presiona el botón. Esto enviará el carácter “B” a la placa opuesta, parpadeando el LED por un corto tiempo.
  3. También puedes escribir “B” en el monitor serial para probar esta funcionalidad.
  4. Una vez que estés satisfecho de que todo funciona correctamente, puedes desconectar cualquier ensamblaje y conectarlos en lados opuestos de la habitación, parpadeando luces de un lado al otro.
Ahora que has conectado tus dos placas Arduino, es hora de ser creativo. Quizás has estado controlando tu robot con un teléfono por Bluetooth, pero preferirías tener un teclado físico. Tal vez quieras diseñar una interfaz de computadora personalizada que opere de forma remota. La tecnología Bluetooth puede agregar una nueva dimensión portátil a tus proyectos de robótica.

Etiquetas de artículo

Global
Robótica
Máquinas autónomas
Automatización
Inalámbrico
Arduino S.r.l.

Contenido relacionado