jueves, 24 de abril de 2014

[Tutorial] ArduSmartPilot: Arma tu Dron con Arduino y Android

Directamente desde la Universidad de Reutlingen de Alemania, nos llega este interesante tutorial para armar tu propio Dron con Android y Arduino. El proyecto de esta universidad está enfocado a escolares, para que éstos puedan iniciarse en el mundo de la ingeniería, así que si eres escolar, demuestra tu habilidad! si ya eres universitario, puedes llevar este proyecto a otro nivel! y si ya eres profesional, bueno, a hacerlo como tal.


El proyecto consiste en armar un Dron (o nave comandada remotamente) que pueda ser controlado desde un Smartphone a través de Bluetooth, por lo cual dividiremos el proyecto en cuatro partes: Estructura, Hardware, Programación y App.


Este proyecto, como ya lo habíamos mencionado, lo hemos extraído de la web de la Universidad de Reutlingen, y puedes revisarlo en el siguiente enlace: ArduSmartPilot (Dentro también puedes encontrar documentación del proyecto y las guías de programación del hardware y de la app, pero ojo, están en alemán).

Estructura:


Los autores originales de este proyecto utilizaron el planeador de juguete "Wurfgleiter Felix80" del fabricante Miniprop. Éste planeador está hecho de polipropileno extruído, lo cual le da ligereza para poder volar, elasticidad para no dañarse si choca con algo, es fácilmente modificable con una cuchilla, y tiene bajo costo, por lo que puedes buscar un planeador similar, o desarrollar el tuyo propio (como ingeniero que se respeta).

Hardware:

En este proyecto, se busca que el circuito implantado en el planeador reciba las ordenes desde un Smartphone vía Bluetooth, con estos datos controle la velocidad de una hélice (que será incorporada a la punta del planeador), y a su vez controle la dirección del avión a través de dos servomotores (conectados a la hélice). Además, nuestro Dron contará con una serie de sensores, los cuales enviarán los datos medidos a la unidad de control y éste los enviará al Smartphone (lógicamente, también vía Bluetooth). En la siguiente cuadro podemos ver el diagrama de bloques del circuito (hacer caso omiso a los símbolos de Processing y Arduino, que se explicarán en breve).


Ahora que ya tenemos más claro el circuito que debemos desarrollar, es momento de escoger la unidad de control. Necesitamos un controlador que sea ligero, robusto, de fácil programación, bajo costo y bajo consumo de energía (al ser un dispositivo inalámbrico, trabajará con baterias), por lo cual en el proyecto original seleccionaron el Arduino Pro Mini (ATMega 328, 3.3V, 8MHz), puedes escoger el mismo o el que más te guste, o incluso algún controlador que no sea Arduino, pero ten en cuenta las especificaciones.


Un inconveniente del Arduino Pro Mini, es que no tiene puerto USB, por lo cual debe utilizarse un módulo Bluetooth que utilice un puerto serial. En el proyecto original se utilizó un módulo HC-05 debido a que ya posee una antena incorporada. Además, la Universidad contaba ya con módulos con sensores e indicadores, los cuales funcionan también a 3.3V. En tu caso, deberás seleccionar el tipo de sensores (se recomienda sensor de presión, un acelerómetro de 3 ejes, y un sensor de velocidad). Además, el circuito deberá también enviar al Smartphone los datos de calidad de señal Bluetooth y estado de la batería.


Programación:

La programación del Arduino se realizó en el proyecto base a través del Arduino IDE, que puedes descargarlo gratuitamente de la página de Arduino por si aún no lo tienes (lo cual no es novedad), pero aquí el consejo: Antes de probar el programa con todo el sistema, te recomendamos primero probarlo con un Arduino UNO e indicadores (no conectar el planeador) y con comandos enviados desde una PC por USB, luego puedes probar el programa usando el Arduino Pro Mini e indicadores (aún sin el planeador) y con comandos enviados desde una PC por Bluetooth utilizando alguna interfaz simple en Java (en la siguiente sección te daremos una ayuda con esto), y luego probar el programa con el Andruino Pro Mini, el planeador, y el programa en Java. 

Sabemos que es un procedimiento largo, pero es lo que se debería hacer, para evitar posibles inconvenientes. Aquí un "pantallaso" del programa del proyecto base.


App:

Hay muchas maneras de crear una App para Android, existen las plataformas de Java, como Eclipse, existen también plataformas desarrolladas por Google, pero la Universidad de Reutlingen nos recomienda "Processing", una plataforma muy similar al Arduino IDE que nos permite trabajar con un gran número de librerías, lo cual nos facilitará el proceso de creación de la App.

Processing tiene dos modos, modo Android y modo Java, lo cual también te permitirá desarrollar la interfaz para las pruebas de Hardware. Aquí un "pantallaso" del proyecto base.


La idea de la App es que a través de ella se pueda controlar el Dron y visualizar los datos de los sensores, señal y batería que nos envía el Arduino,. Una forma "divertida" de hacerlo es a través de la pantalla táctil, con la cual podemos manejar el Dron "con el dedo", pero otra forma también divertida usando la inclinación del Smartphone, lo cual da una simulación más real... queda a tu criterio cómo es que te quieres divertir con el proyecto.


Con todo esto ya puedes armar tu propio Dron! así que eso es todo por nuestra parte. Esperamos que te haya gustado este tutorial y te recordamos que puedes revisar información más detallada (en alemán) sobre el proyecto en la página de la Universidad de Reutlingen, a quienes agradecemos enórmemente por compartir su proyecto.

Y si lo llegas a construir, no dudes en contactarnos y en asistir a nuestro evento #Andruino2K14, que tendremos muchas sorpresas para ti.


No hay comentarios:

Publicar un comentario

Cuéntanos, ¿Qué opinas?