loading

Logout succeed

Logout succeed. See you again!

ebook img

Implementación de un dron cuadricóptero con Arduino PDF

pages137 Pages
release year2015
file size6.34 MB
languageSpanish

Preview Implementación de un dron cuadricóptero con Arduino

E.T.S. de Ingeniería Industrial, Informática y de Telecomunicación Implementación de un dron cuadricóptero con Arduino Grado en Ingeniería Eléctrica y Electrónica Trabajo Fin de Grado Jose Etxeberria Mendez Javier Goicoechea Fernández Pamplona, 22 al 30 de Junio de 2015 - 0 - Departamento de Ingeniería Eléctrica y Electrónica | Jose Etxeberria Méndez 1 Agradecimientos, dedicatorias o citas Especiales agradecimientos a:  Mis padres por financiarme los estudios que me han permitido llegar hasta aquí.  Dr. Javier Goicoechea Fernández, tutor del proyecto, por ofrecerme su apoyo continuo durante la realización del proyecto.  La comunidad Arduino por su amplio desarrollo y sus elaborados tutoriales explicativos. Especiales dedicatorias a:  La comunidad de jóvenes genios que se sienten intrigados por el mundo electrónico.  La comunidad Arduino para aumentar su repositorio de proyectos disponibles.  Tributo a Pantera. Citas:  “Aprender sin pensar es inútil, pensar sin aprender es peligroso” - Confucio - 1 - Departamento de Ingeniería Eléctrica y Electrónica | Jose Etxeberria Méndez 2 Resumen y lista de palabras clave 2.1 Resumen El presente proyecto consiste en la implementación de un dron mediante la plataforma de programación Arduino. El dron en cuestión se trata de un cuadricóptero, “quadcopter” o simplemente “drone”, destinado a aplicaciones civiles genéricas, como podría ser filmación de vídeo. El desarrollo del “drone” ha constado de la elaboración software y hardware. Por un lado el código software almacenado en Arduino que permita el estudio de estabilidad del dron. Por otro lado el diseño de una PCB donde se incluyen los dispositivos y conexiones necesarias para el correcto funcionamiento del dron y posibles incorporaciones futuras. El dron es controlado mediante comunicación Zigbee entre Arduino y un ordenador, utilizando la aplicación XCTU. 2.2 Abstract In this paper, a hardware drone design that employs Arduino platform is introduced. That drone is a quadcopter. Its purpose is that in a future it could perform generic civil applications such as video recording. The aim of this project is composed by hardware and software development. On one hand the software code stored on Arduino that enables the drone stabilization study. On the other hand the printed circuit board design that includes all connections and devices required in order to achieve the correct performance and enable future improvements. This drone is controlled by Zigbee communication between Arduino and a computer, using XCTU application. 2.3 Laburpena Proiektu hau Arduino programazio plataformaren bitartez “dron” baten sorkuntzan datza. “Dron”-a kuadrikoptero bat da. Erabilera zibil orokorretarako zuzenduta dago, bideo baten filmaketa izan daitekeen bezala. “Dron”-aren garapena software nahiz hardware-aren lanketan datza. Alde batetik, “Dron”-aren egonkortasun azterketa ahalbidetuko duen Arduinon gordetako software kodea. Bestetik, zirkuitu inprimatuaren plaka baten diseinua, non “Dron”-aren funtzionamendu egokirako beharrezkoak diren gailu eta konexioak eta etorkizunean eman daitezkeen eransketak aurkitzen diren. “Dron”-a Arduino eta ordenagailu baten arteko Zigbee komunikazio baten bidez kontrolaturik dago, XCTU aplikazioaz baliatuta. - 2 - Departamento de Ingeniería Eléctrica y Electrónica | Jose Etxeberria Méndez 2.4 Key word list  Drone  Quadcopter  Arduino  Zigbee  Hardware Design 2.5 Lista de palabras clave  Dron  Cuadricóptero  Arduino  Zigbee  Diseño hardware 2.6 Hitz gakoak zerrenda  Dron  Koadrikopteroa  Arduino  Zigbee  Hardware Diseinua - 3 - Departamento de Ingeniería Eléctrica y Electrónica | Jose Etxeberria Méndez 1 AGRADECIMIENTOS, DEDICATORIAS O CITAS ............................................................................ - 1 - 2 RESUMEN Y LISTA DE PALABRAS CLAVE .................................................................................... - 2 - 2.1 RESUMEN ................................................................................................................................... - 2 - 2.2 ABSTRACT .................................................................................................................................. - 2 - 2.3 LABURPENA ................................................................................................................................ - 2 - 2.4 KEY WORD LIST ............................................................................................................................ - 3 - 2.5 LISTA DE PALABRAS CLAVE .............................................................................................................. - 3 - 2.6 HITZ GAKOAK ZERRENDA ................................................................................................................ - 3 - 3 CUERPO DEL DOCUMENTO ........................................................................................................ - 5 - 3.1 INTRODUCCIÓN............................................................................................................................ - 5 - 3.2 JUSTIFICACIÓN Y OBJETIVOS ............................................................................................................ - 6 - 3.3 CONTEXTO TECNOLÓGICO .............................................................................................................. - 7 - 3.4 CUERPO DEL TRABAJO ................................................................................................................... - 9 - 3.4.1 Estructura ........................................................................................................................ - 9 - 3.4.2 Arduino .......................................................................................................................... - 10 - 3.4.3 Inertial Measurement Unit ............................................................................................ - 10 - 3.4.3.1 Acelerómetro ......................................................................................................................... - 10 - 3.4.3.2 Giróscopo ............................................................................................................................... - 14 - 3.4.4 Filtro complementario ................................................................................................... - 19 - 3.4.5 Control PID .................................................................................................................... - 20 - 3.4.6 Acción de control, control de los motores ..................................................................... - 24 - 3.4.7 DesignSpark................................................................................................................... - 29 - 3.4.7.1 Observaciones de la placa ...................................................................................................... - 42 - 3.4.8 Desarrollo de la programación ...................................................................................... - 43 - 3.4.8.1 Organigrama de programación .............................................................................................. - 44 - 3.4.8.2 Lectura de los sensores .......................................................................................................... - 45 - 3.4.8.3 Exportación de los datos mediante Parallax-DAQ .................................................................. - 47 - 3.4.8.4 Ajuste de la señal de cada sensor ........................................................................................... - 48 - 3.4.8.4.1 Acelerómetro .................................................................................................................... - 49 - 3.4.8.4.2 Giróscopo .......................................................................................................................... - 53 - 3.4.8.5 Filtro complementario............................................................................................................ - 57 - 3.4.8.6 Control PID ............................................................................................................................. - 69 - 3.4.8.7 Cálculo de la acción de control ............................................................................................... - 70 - 3.4.8.8 Comunicación inalámbrica vía Xbee ....................................................................................... - 74 - 3.4.8.9 Monitorización de la carga de la batería ................................................................................ - 83 - 3.5 RELACIÓN DE COSTES .................................................................................................................. - 85 - 3.6 CONCLUSIÓN............................................................................................................................. - 89 - 3.7 LÍNEAS DE FUTURO ..................................................................................................................... - 90 - 3.8 ANEXOS ................................................................................................................................... - 91 - 3.8.1 Anexo 0. Código completo de programación. ............................................................... - 91 - 3.8.3 Anexo 1. Lectura del sensor MPU 6050. ...................................................................... - 103 - 3.8.4 Anexo 2. Código de escritura en Parallax-DAQ tool. ................................................... - 107 - 3.8.5 Anexo 3. Código programación acelerómetro y giróscopo ......................................... - 110 - 3.8.6 Anexo 4. Calculo automático de offsets. ..................................................................... - 112 - 3.8.7 Anexo 5. Filtro complementario .................................................................................. - 114 - 3.8.8 Anexo 6. Control PID ................................................................................................... - 116 - 3.8.9 Anexo 7. Calibración de los ESC. .................................................................................. - 119 - 3.8.10 Anexo 8. Asignación de la acción de control ............................................................... - 121 - 3.8.11 Anexo 9. Comunicación inalámbrica vía XBee ............................................................. - 123 - 3.8.12 Anexo 10. Monitorización de la carga de la batería ................................................... - 128 - 3.9 REFERENCIAS. ......................................................................................................................... - 130 - 3.9.1 Tabla de Ilustraciones. ................................................................................................ - 130 - 3.9.2 Referencias bibliográficas ........................................................................................... - 133 - - 4 - Departamento de Ingeniería Eléctrica y Electrónica | Jose Etxeberria Méndez 3 Cuerpo del documento 3.1 Introducción El objetivo del presente proyecto consiste en la realización de la programación de un dron, diseño de una placa de circuito impreso e implementación de los distintos periféricos para facilitar el estudio del equilibrio del mismo de forma automática frente a perturbaciones del viento. En este proyecto se realiza principalmente el trabajo de programación del software de control, desde la obtención de parámetros mediante sensores hasta la modificación del comportamiento de los actuadores en función de ellos. Por otro lado la segunda gran labor en el proyecto consiste en el diseño y montaje de un PCB que incluya los elementos necesarios para el objetivo presentado y futuras expansiones. Los elementos que forman nuestro cuadricóptero son los siguientes: por el lado mecánico están el chasis y las 4 hélices, y por el lado eléctrico tenemos el microcontrolador Arduino con su correspondiente batería, el sensor IMU (MPU 6050), regulador de tensión, módulo de comunicación Xbee, los reguladores ESC y los 4 motores brushless DC. En el código de programación se incluye el acondicionamiento de señal en función del sensor, el filtro complementario para promediar los datos del acelerómetro y giróscopo, el sistema de control PID, la generación de la acción de control, la traducción a un movimiento en los actuadores, un pequeño circuito que mide la carga de la batería y el control de parámetros del dron a través de comunicación XBee. - 5 - Departamento de Ingeniería Eléctrica y Electrónica | Jose Etxeberria Méndez 3.2 Justificación y objetivos La razón de elaboración del proyecto procede de un elevado interés por la electrónica y los elementos interactivos cuyos resultados son muy visuales y entretenidos. Además de un trabajo de fin de grado supone un reto personal el demostrar ser capaz de implementar un dispositivo con el que se pueda interactuar. A su vez, supone una indagación en las últimas modas tecnológicas y en un mercado que está comenzando a ser explotado y continuará con un elevado desarrollo. Existen dos tipologías diferenciadas para los drones, los hay con estructuras similares a los aviones y los hay con tipologías similares a los helicópteros, esta última será la estructura elegida para este proyecto, un multicóptero, concretamente con 4 hélices, es decir, un cuadricóptero o “quadcopter” en inglés. El proyecto se va a realizar dejando abierta la integración de distintas funcionalidades en un futuro, por lo que el desarrollo no se va a encasillar en una aplicación concreta. En el desarrollo del PCB, en el que se incluye toda la electrónica, se ha previsto la inclusión en el futuro de dos elementos más para ampliar las capacidades del dispositivo, un sensor de presión para controlar la altura y un compás para controlar la orientación horizontal. El objetivo final es desarrollar un dispositivo interactivo con el cual los alumnos puedan realizar el aprendizaje de una forma más dinámica y potencialmente atractiva. Se propone el uso del dispositivo para el estudio del comportamiento del control PID. - 6 - Departamento de Ingeniería Eléctrica y Electrónica | Jose Etxeberria Méndez 3.3 Contexto tecnológico Es triste que la ingeniería bélica marque el ritmo del desarrollo tecnológico pero el dron es uno de muchos ejemplos en los que las guerras han promovido el desarrollo de cierta tecnología con fines destructivos y luego ha sido adaptada para usos civiles. [12] Las aplicaciones civiles a las que son destinados los drones van aumentando con rapidez en los últimos años al permitir labores que por riesgo o dificultad de accesibilidad no son rentables de realizar de otra manera, las principales son: grabación de películas, documentales y eventos, grabación de deportes extremos o zonas interiores, prevención de incendios forestales, vigilancia de fronteras, control de infraestructuras industriales, labores de vigilancia en zonas catastróficas, lucha contra el terrorismo y el narcotráfico, entretenimiento, purificación del aire, investigación de volcanes, búsqueda de supervivientes en zonas azotadas por catástrofes naturales, lucha contra grafiteros, localización de bancos de peces así como de cazadores furtivos, entrega de productos a domicilio, etc. [8] [9] La principal ventaja que suponen los drones reside en la inexistencia de personas a bordo lo que elimina el riesgo de muerte de los pilotos y permite realizar funciones que no serían posibles con aeronaves tripuladas como investigación en zonas de alta toxicidad química y radiológica. Por otro lado están otros aspectos como la posibilidad de automatización del aparato, siendo capaz de actuar por sí mismo con una integración de inteligencia artificial e incluso coordinarse con otros drones. Para aplicaciones como grabación de video, un “drone” de poco tamaño puede ser suficiente, encontrándose modelos sencillos en el mercado rondando los 500€. A pesar de las grandes posibilidades que nos brindan los drones, presentan también una serie de desventajas técnicas, económicas y éticas. Las desventajas técnicas tienen en cuenta que este elemento no deja de ser una máquina, controlada a distancia a través de comunicación remota y que requiere una fuente de energía que se va consumiendo, pueden producirse ciertos fallos de comunicación, quedarse sin combustible, reacciones lentas a las indicaciones enviadas, pérdida de comunicación por lejanía o zonas de poca cobertura, así como ocurrió en Irak y Afganistán que los drones fueron hackeados. [11] Las desventajas económicas influyen principalmente en las aplicaciones militares, en las que estos vehículos aéreos son extremadamente avanzados y extremadamente caros llegando a 50 millones de dólares entre aparato y comunicación del MQ-B Fire Scout, el más grande de su estilo, diseñado para uso experimental en portaaviones. Las desventajas éticas son posiblemente las más importantes relacionadas con estos aparatos, como suele ocurrir al aparecer nuevas tecnologías siempre surgen muchas preguntas sobre su dirección de desarrollo. Se desarrollan ya drones de forma experimental con cierta integración de inteligencia artificial que les permite elegir por sí mismos los objetivos que deben ser atacados, tanto este aspecto como el hecho de estar a gran distancia del lugar del conflicto elimina preocupaciones morales y responsabilidad al mando que ordene la operación, difundiendo una insensibilidad inhumana. [12] - 7 - Departamento de Ingeniería Eléctrica y Electrónica | Jose Etxeberria Méndez Por otro aspecto la comercialización discriminada de estos aparatos sin regulación, permite que cualquier aficionado disponga de estas unidades con las que tomar fotografías o grabaciones a personas constituyendo una grave amenaza para la privacidad personal. En la otra cara de la moneda la regulación por parte de sistemas de gobierno aumenta el sofoco propio del estado policial extendido por medio planeta. - 8 - Departamento de Ingeniería Eléctrica y Electrónica | Jose Etxeberria Méndez 3.4 Cuerpo del trabajo 3.4.1 Estructura El primer aspecto que se debe decidir es la estructura que vamos a utilizar para nuestro dispositivo, en función de nuestra decisión se desarrollarán por un camino u otro el código de programación y el diseño del PCB. Habitualmente se utilizan distintas estructuras para el chasis, en “+”, en “X”, en “Y” o en “H”. Las más usadas son en “X” o en “+” ya que de esta forma todos los brazos son iguales y el control se sitúa en el centro de gravedad de la estructura, dentro de las modalidades en “X” las más utilizadas son las de 4, 6 y 8 brazos. [10] Ilustración 1. Tipologías de drones más habituales y la disposición de sus motores. www.aeromodelismofacil.com/cuadricoptero_primero.htm La estructura en forma “+” es más sencilla de controlar ya que para el desplazamiento solo es necesario actuar sobre 2 motores dejando los del eje perpendicular constantes, [14] en el modelo “X” estos movimientos son más complicados de controlar, no obstante el tutor Javier Goicoechea ya dispone de una estructura montada en modelo “X” por lo que esa es la estructura utilizada. - 9 -

See more

The list of books you might like