Descargar

Arduino Bluetooth (página 2)

Enviado por Pablo Turmero


Partes: 1, 2
edu.red

Arduino + BT Construido típicamente de dos formas: agregando un Bluetooth Shield a una tarjeta Arduino, o Conectando un módulo Bluetooth a una tarjeta Arduino. Precio se acerca a los $50 ($30 por la tarjeta y $20 por el shield o módulo BT). Módulo BT se comunica con otros dispositivos por Bluetooth a varias frecuencias (usualmente 57600  o 115200 baud), según las especificaciones del módulo. Programación se realiza por USB. Acercamiento más frecuentemente usado

edu.red

Ambiente de desarrollo ylenguaje de programación

edu.red

Lenguaje de programación También llamado Arduino. En realidad es C/C++. Consiste en un conjunto de funciones predefinidas empacadas en una biblioteca llamada “Wiring”. Programadores pueden proveer sus propias funciones. Un programa se conoce como sketch. Algunas funciones notables: setup() loop() digitalWrite() digitalRead() delay() attachInterrupt()

edu.red

L. de programación (cont.) Función setup(): Se ejecuta una vez justo después de arrancar el micro-controlador. Contiene la configuración inicial, por ejemplo: marcar pines para entrada o salida, definir la frecuencia de modulación, o agregar interrupciones a pines. Función loop(): “Lo que hace el sketch.” Ciclo de ejecución hasta el apagado o reinicio. Contenido corresponde a una iteración en el ciclo de sensar-procesar-actuar.

edu.red

Ambiente de desarrollo Llamado Arduino IDE para claridad. Escrito en Java. Simple y fácil de utilizar. Orientado fuertemente a usuarios no familiarizados con la programación. Ofrece compilación y carga del sketch todo-en-un-botón. Incluye algunas conveniencias como auto-indentación y pareo de llaves. Completamente ad hoc a la programación de Arduino. Agrega automágicamente las referencias y funciones requeridas para que el sketch se convierta en un programa C++ válido (por ejemplo, el main y el include a ).

edu.red

Ambiente de desarrollo (cont.) No es estrictamente requerido. Por debajo emplea el compilador avr-g++.

edu.red

Requerimientos y primeros pasos

edu.red

Requerimientos Como mínimo: Tarjeta Arduino BT o alguna forma de Arduino + BT. Una computadora corriendo Windows, Mac OS o Linux. Esta computadora debe tener capacidad BT para usarla con Arduino BT. Además ocupa un cable USB (A a B) en todos los otros casos. El Arduino IDE (viene con el lenguaje de programación). Alimentación eléctrica. Además: Todos los dispositivos electrónicos que interese usar como actuadores y sensores. Un protoboard para facilitar la conexión de dispositivos.

edu.red

Primeros pasos Aparear el módulo Bluetooth con la computadora. Sólo si se tiene el Arduino BT. Indicar en el IDE cuál tarjeta se utiliza. Arduino BT sólo si se tiene el Arduino BT. Instalar los drivers. ¡Empezar a programar!

edu.red

Ventajas y debilidades

edu.red

Ventajas: Arduino IDE y lenguaje son fáciles de usar y aprender. Tarjetas Arduino son económicas ($30 o menos). Software es open-source e independiente de la plataforma. Hardware es open-source. Permite hacer todo tipo de cosas divertidas.

edu.red

Ventajas: Arduino BT Programación a distancia sin cable USB. Sistema puede controlarse remotamente. No requiere de módulos o dispositivos adicionales para ofrecer la funcionalidad inalámbrica.

edu.red

Debilidades: Arduino BT La Arduino BT es más frágil que otras tarjetas. Programación requiere de una computadora con capacidad Bluetooth. El micro-procesador es más pequeño que en otras tarjetas y por tanto incompatible. Notoriamente más cara que la tarjeta Arduino promedio.

Estas debilidades pueden atacarse mediante el uso de Arduino + BT.

edu.red

Relación con otras plataformas

edu.red

Con dispositivos electrónicos El objetivo de Arduino es la interconectividad y control de múltiples dispositivos electrónicos. Conectividad se ofrece a través de los pines análogicos y digitales. A través de Arduino es más fácil realizar tareas complejas que requieren de la interacción entre sensores y actuadores. La lógica de percepción y acción es incorporada a priori mediante el código cargado en la tarjeta.

edu.red

Con dispositivos móviles El módulo Bluetooth extiende la funcionalidad de Arduino y permite conectividad con dispositivos móviles. La lógica puede incorporarse “en caliente” mediante el envío y recepción de señales por Bluetooth. Usos frecuentes: Controles remotos. Recolección de datos del ambiente y presentación al usuario. El mecanismo de transmisión de información y la interpretación de señales son lo único que requiere codificarse. Existen esfuerzos, como Amarino, por ofrecer al usuario el paquete prefabricado.

edu.red

Enlazando arduino con android

edu.red

¿Cómo se hace? Forma fácil (usando Amarino) Incluye un API listo para empezar a enviar y recibir datos por Bluetooth hacia y desde el dispositivo. Basta con agregar la referencia a la biblioteca en la carpeta libs. Requiere de algo de familiarización con el API.

Forma no-tan-fácil (manualmente) Requiere algunas inclusiones de las biblioteca de Bluetooth de Android agregadas en el API 5: android.bluetooth.BluetoothAdapter; android.bluetooth.BluetoothDevice; android.bluetooth.BluetoothSocket; Hay que hacer un poco más de “trabajo sucio”.

edu.red

¿Qué se requiere? Los componentes electrónicos anteriores Un smartphone o tablet con capacidad Bluetooth y corriendo al menos Eclair (prácticamente cualquiera). AmarinoLibrary.jar para la forma fácil. ¡Ganas!

edu.red

Ejemplo: por Amarino Lado Amarino

Lado Android

edu.red

Ejemplos prácticos

edu.red

Ejemplos prácticos ¡Bots, bots, bots! Compre un carro de juguete a control remoto. Remplace el módulo de control con una tarjeta Arduino. Escriba una aplicación para Android con controles de dirección y aceleración. ??? Profit. Guantes para control remoto. Impresión a distancia en LCDs. Todo tipo de wacky fun stuff.

edu.red

Videos! Multicolor Lamp: http://www.youtube.com/watch?v=GiibMA_H9rs

Carro a control remoto:

Tanque:

Matriz de LED:

edu.red

Referencias Kaufmann, Bonifaz. “Design and Implementation of a Toolkit fr the Rapid Prototyping of Mobile Ubiquitous Computing.” Tesis de maestría. Universidad de Kalgenfurt. Agosto 2010. Documentación oficial Arduino BT. En línea: http://www.arduino.cc/en/Main/ArduinoBoardBluetooth. Documentación oficial Amarino. En línea: http://www.amarino-toolkit.net/index.php Varios autores. “Communication Between Android And Arduino With Bluetooth”. En línea: http://www.elecfreaks.com/677.html

Partes: 1, 2
 Página anterior Volver al principio del trabajoPágina siguiente