Drone

40
Quadric´ optero Aut´onomo de Arquitectura Abierta, QA3 Redolfi Javier Andr´ es, Henze Agust´ ın 13 de marzo de 2011 1

description

Drone especifications and development

Transcript of Drone

  • Quadricoptero Autonomo de Arquitectura

    Abierta, QA3

    Redolfi Javier Andres, Henze Agustn

    13 de marzo de 2011

    1

  • Indice

    1. Introduccion 51.1. Ventajas de un QuadRotor . . . . . . . . . . . . . . . . . . . . . 61.2. Definicion de la problematica . . . . . . . . . . . . . . . . . . . . 61.3. Objetivo General . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    1.3.1. Objetivos Particulares . . . . . . . . . . . . . . . . . . . . 61.4. Financiamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.5. Miembros del grupo de trabajo . . . . . . . . . . . . . . . . . . . 7

    1.5.1. Integrantes . . . . . . . . . . . . . . . . . . . . . . . . . . 71.5.2. Director . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

    2. Diseno del Cuadrotor 82.1. Introduccion al Funcionamiento . . . . . . . . . . . . . . . . . . . 8

    2.1.1. Movimiento de guinada (yaw) . . . . . . . . . . . . . . . . 82.1.2. Movimiento de inclinacion (pitch) . . . . . . . . . . . . . 82.1.3. Movimiento de bamboleo (roll) . . . . . . . . . . . . . . . 92.1.4. Movimiento Vertical . . . . . . . . . . . . . . . . . . . . . 10

    2.2. Estructura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.3. Calculo del peso total . . . . . . . . . . . . . . . . . . . . . . . . 112.4. Motores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.5. Controladores ESC . . . . . . . . . . . . . . . . . . . . . . . . . . 132.6. Bateras LiPo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    2.6.1. Caractersticas . . . . . . . . . . . . . . . . . . . . . . . . 142.6.2. Calculo de la autonoma de vuelo . . . . . . . . . . . . . . 15

    2.7. Helices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.8. Proteccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

    3. Modelado del Quadrotor 163.1. Descripcion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

    3.1.1. Fuerza de Arrastre del Cuerpo . . . . . . . . . . . . . . . 183.1.2. Empuje . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.1.3. Fuerza de arrastre sobre los rotores debido a la velocidad

    horizontal . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.1.4. Momento de arrastre sobre el eje de rotacion de los rotores 183.1.5. Momento de Roll generado en los rotores por la velocidad 183.1.6. Fuerza de arrastre en los rotores debido a la velocidad . . 183.1.7. Empuje Total . . . . . . . . . . . . . . . . . . . . . . . . . 19

    3.2. Aproximacion de la Fuerza y el Momento . . . . . . . . . . . . . 193.2.1. Fuerza . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193.2.2. Momento . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

    3.3. Medicion de los parametros de la Planta . . . . . . . . . . . . . . 193.3.1. Empuje de los motores . . . . . . . . . . . . . . . . . . . . 203.3.2. Calculo Aproximado de las constantes . . . . . . . . . . . 22

    3.4. Diseno del controlador . . . . . . . . . . . . . . . . . . . . . . . . 233.4.1. Controlador PID . . . . . . . . . . . . . . . . . . . . . . . 233.4.2. Controlador del angulo de roll . . . . . . . . . . . . . . . . 243.4.3. Controlador del angulo de pitch . . . . . . . . . . . . . . . 26

    3.5. Simulaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263.5.1. Simulacion a lazo abierto . . . . . . . . . . . . . . . . . . 26

    2

  • 3.5.2. Simulacion a lazo cerrado . . . . . . . . . . . . . . . . . . 26

    4. Hardware de control 274.1. Placa del Microcontrolador . . . . . . . . . . . . . . . . . . . . . 274.2. Sensores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

    4.2.1. Giroscopio . . . . . . . . . . . . . . . . . . . . . . . . . . . 284.2.2. Acelerometro . . . . . . . . . . . . . . . . . . . . . . . . . 284.2.3. Circuito de montaje de los sensores . . . . . . . . . . . . . 29

    4.3. Driver de motores ESC . . . . . . . . . . . . . . . . . . . . . . . . 294.4. Conexion inalambrica . . . . . . . . . . . . . . . . . . . . . . . . 30

    4.4.1. Caractersticas . . . . . . . . . . . . . . . . . . . . . . . . 314.4.2. Diagrama en bloques interno . . . . . . . . . . . . . . . . 324.4.3. Circuito Esquematico . . . . . . . . . . . . . . . . . . . . 324.4.4. Comunicacion . . . . . . . . . . . . . . . . . . . . . . . . . 32

    4.5. Placa Base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    5. Software 345.1. Firmware ARM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

    5.1.1. Codigo del filtro complementario . . . . . . . . . . . . . . 355.1.2. Codigo del controlador PID . . . . . . . . . . . . . . . . . 35

    5.2. Software de control de la PC . . . . . . . . . . . . . . . . . . . . 365.3. Utilidades adicionales . . . . . . . . . . . . . . . . . . . . . . . . 36

    6. Conclusiones 376.1. Analisis de Costos . . . . . . . . . . . . . . . . . . . . . . . . . . 37

    6.1.1. Costo detallado del Prototipo . . . . . . . . . . . . . . . . 386.2. Desarrollos a Futuro . . . . . . . . . . . . . . . . . . . . . . . . . 38

    7. Agradecimientos 39

    8. Bibliografa 40

    3

  • Indice de figuras

    1. Grados de libertad de un quadrotor. . . . . . . . . . . . . . . . . 82. Movimiento de yaw. . . . . . . . . . . . . . . . . . . . . . . . . . 93. Movimiento de pitch. . . . . . . . . . . . . . . . . . . . . . . . . . 94. Movimiento de roll. . . . . . . . . . . . . . . . . . . . . . . . . . . 105. Movimiento vertical. . . . . . . . . . . . . . . . . . . . . . . . . . 106. Estructura del QA3. . . . . . . . . . . . . . . . . . . . . . . . . . 117. Forma de onda para el control de un motor brushless trifasico. . 128. Motor BL-2830-8. . . . . . . . . . . . . . . . . . . . . . . . . . . . 129. Dimensiones del motor BL-2830-8. . . . . . . . . . . . . . . . . . 1310. Batera LiPo Hyperion G3 CX - 3S 2100mAh (25C). . . . . . . . 1411. Paso y Dametro de una helice. . . . . . . . . . . . . . . . . . . . 1512. Helice del tipo normal. . . . . . . . . . . . . . . . . . . . . . . . . 1613. Helice del tipo pusher. . . . . . . . . . . . . . . . . . . . . . . . . 1614. Proteccion del QA3. . . . . . . . . . . . . . . . . . . . . . . . . . 1715. Diagrama de cuerpo libre usado para la derivacion del modelo del

    QA3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1816. Montaje del motor para la medicion del empuje. . . . . . . . . . 2017. Empuje del motor 1 con distintas helices y controladores. . . . . 2118. Empuje del motor 2 con distintas helices y controladores. . . . . 2219. Comparacion del empuje del motor 1 con respecto al 2. . . . . . 2220. Diagrama en bloques de un controlador PID. . . . . . . . . . . . 2421. Diagrama en bloques de la planta a lazo cerrado en tiempo continuo. 2522. Diagrama en bloques de la planta a lazo cerrado en tiempo discreto. 2523. Resultado de la simulacion a lazo abierto con el controlador PID. 2724. Resultado de la simulacion a lazo cerrado con el controlador PID. 2825. Placa del microcontrolador LPC2114. . . . . . . . . . . . . . . . 2926. Circuito esquematico de la placa del microcontrolador. . . . . . . 3027. Giroscopio MEMS ITG3200. . . . . . . . . . . . . . . . . . . . . . 3028. Acelerometro MEMS ADXL345. . . . . . . . . . . . . . . . . . . 3129. Circuito de montaje del acelerometro y el giroscopio. . . . . . . . 3130. Controlador de velocidad RCTimer de 30A. . . . . . . . . . . . . 3231. Modulo wifly GSX. . . . . . . . . . . . . . . . . . . . . . . . . . . 3232. Diagrama en bloques interno del modulo wifly. . . . . . . . . . . 3333. Circuito esquematico para el funcionamiento de la wifly en modo

    ad-hoc. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3334. Circuito completo de la placa base o principal. . . . . . . . . . . 3435. Diagrama de flujo del codigo del microcontrolador. . . . . . . . . 3536. Ventana principal del codigo de la PC. . . . . . . . . . . . . . . . 36

    4

  • 1. Introduccion

    El siguiente Proyecto Final surge por la necesidad planteada por el Centro deInvestigacion en Informatica para la Ingeniera de contar con una plataforma dehardware voladora para la realizacion de pruebas de algoritmos de navegacionque surgen de diferentes trabajos doctorales de dicho centro.

    Los vehculos voladores no tripulados, conocidos por sus siglas en ingles UAV(Unmanned Aerial Vehicle), pueden ser aeronaves de ala fija o rotante o inclusocohetes. Estos vehculos vuelan pilotados en forma remota o de manera autono-ma. Aquellos UAV capaces de realizar vuelos estaticos como los helicopteros olos denominados cuatrirrotores, presentan particular interes para ciertas apli-caciones que requieren vuelos de baja altitud, entre obstaculos o incluso enespacios cerrados.

    Los vuelos a baja altura en ambientes con obstaculos representan un altoriesgo para la vida de los pilotos, por esto que los vehculos no tripulados de-spiertan mucho interes en aplicaciones como inspeccion de edificios, inspeccionde lneas de distribucion de energa electrica en alta tension, tareas de rescateen zona de desastres o de alta montana, filmacion, etc. Otra razon por la queestos vehculos resultan atractivos es por su bajo costo de operacion. En el pasa-do, el uso de UAVs ha estado mayormente relacionado a aplicaciones militares.En la actualidad el interes por los sistemas UAV es creciente en la direccionde aplicaciones civiles; esto como consecuencia de la reduccion de costos de lastecnologas involucradas.

    En forma sintetica se puede aseverar que la navegacion de aeronaves implicala resolucion eficiente y segura de cuatro tareas: toma de decisiones, percep-cion de obstaculos, estimacion del estado de la aeronave (posicion, velocidadesy actitud) y control de la aeronave. En la actualidad, tanto en el ambito mil-itar como comercial, estas tareas se resuelven satisfactoriamente en tanto y encuanto junto a los sistemas de automatizacion interactuan pilotos humanos com-plementando aquellos aspectos en que la tecnica aun no esta lo suficientementeavanzada, como ser la percepcion y evasion de obstaculos. Aqu se encuentra elprincipal desafo para permitir la introduccion de UAVs en espacios aereos norestringidos.

    Actualmente existen en el mercado pocos modelos comerciales de Quadricopteros,como pueden ser el Draganflyer X6, Parrot AR.Drone, Microdrones los cualesson usados en aplicaciones como: Fotografa Aerea y Video, Unidades de elimi-nacion de explosivos, busqueda y rescate, respuesta a desastres, asistencia, danospor fuego, ayuda a la construccion, inspeccion de lineas de transmision, explo-racion geologica, control de cultivo, etc. Pero el costo de este tipo de artefactosy la poca flexibilidad que otorgan debido a sus arquitecturas cerradas dificultansu uso en la investigacion universitaria. Debido al creciente interes en este tipode arquitecturas, son cada vez mas las universidades y centros de investigacionque estan construyendo su propio cuadricoptero para realizar con ellos diferentestipos de trabajos de investigacion. Algunos ejemplos pueden ser MKTajamar,Mikrokopter. Estos ultimos tienen la principal ventaja de ser mas economicosque los anteriores, pero sin embargo su costo de ensamblado sigue siendo exce-sivo. Ademas estos tipos de proyectos aun no tienen la suficiente maduracionpara su uso en investigacion y solo son aplicables para usos hobbistas.

    5

  • 1.1. Ventajas de un QuadRotor

    La eleccion de un quadrotor como plataforma experimental surge de unanalisis de las ventajas que tiene este prototipo con respecto a otros UAV.

    Un quadrotor es una aeronave del tipo PVTOL, esto significa que puededespegar y aterrizar en forma paralela el plano terrestre, lo cual nos da unagran ventaja para la navegacion en ambientes interiores. Desde el punto devista mecanico en un QuadRotor las unicas partes moviles son las helices. Dadoque estas estan acopladas directamente a los ejes de los motores no es necesarioimplementar ningun tipo de mecanismo. Esto es un punto a favor bastantegrande ya que nuestro conociento en mecanica no es suficiente para encarar laconstruccion de un dispositivo con una estructura mas sofisticada.

    Otra ventaja interesante del QuadRotor en terminos de simplicidad es lacancelacion de torque total que se obtiene (ya que 2 motores giran hacia unlado y 2 hacia otro). Esto nos permite dejar de lado consideraciones respecto ala estabilizacion del dispositivo en el eje vertical.

    Tambien al tener cuatro helices dispuestas el diseno del sistema de controlse simplifica, permitiendo realizar un desacoplamiento de las variables.

    1.2. Definicion de la problematica

    El principal problema de los modelos comerciales mencionados anteriormentees que al ser de arquitectura cerrada, no presentan la flexibilidad necesaria parasu uso en la investigacion. Para el caso de los modelos academicos analizados,que pueden ser de arquitectura abierta y brindar una mayor flexibilidad, aun nose encuentran en una etapa de desarrollo que brinde la confiabilidad necesariapara esta aplicacion.

    1.3. Objetivo General

    Obtener un robot movil volador autonomo (UAV) de dimensiones apropiadaspara vuelos interiores a partir de componentes .off-the-shelfcapaz de realizarvuelo estatico (hoovering) y desplazamientos con cambios de orientacion y conlos 3 grados de libertad estabilizados en intervalos cortos a partir de sensoresinerciales on-board.

    1.3.1. Objetivos Particulares

    Estudio de la dinamica de la estructura del robot. Definicion de los paramet-ros constructivos principales y plantas propulsoras. Construccion del pro-totipo.

    Diseno y construccion del hardware para procesamiento de informacionobtenida de los sensores, control y drivers de potencia para motores.

    Calculo, codificacion y validacion de la estrategia de control de la planta.

    Documentacion del proyecto

    6

  • 1.4. Financiamiento

    El financiamiento del proyecto es realizado por el Centro de Investigacion deInformatica para la Ingeniera como parte de un projecto de investigacion.

    1.5. Miembros del grupo de trabajo

    1.5.1. Integrantes

    Henze, AgustnRedolfi, Javier Andres

    1.5.2. Director

    Ing. David Gaydou, Ing. en Electronica (UTN-FRC).Organizacion del siguiente trabajoEl siguiente trabajo se organiza de la siguiente manera.En el captulo 2 se explica el funcionamiento basico y el diseno del QA3.En el captulo 3 se realiza el modelado de la planta, se disena el controlador

    y se realizan las simulaciones correspondientes.El captulo 4 nos presenta el filtro utilizado para realizar la medicion de los

    angulos de orientacion de la aeronave.En el captulo 5 se explican los disenos de los circuitos electronicos y la

    construccion de las placas.En el captulo 6 se comenta el software desarrollado y se explican sus partes

    fundamentales.En el captulo 7 se realizan las conclusiones del trabajo realizado, junto con

    un analisis de costos.

    7

  • 2. Diseno del Cuadrotor

    En esta seccion se realiza una introduccion al funcionamiento del Cuadrotoren general y se explica el diseno del QA3. En la seccion del modelado matematicode la planta se ampla la informacion sobre el funciomiento.

    El cuadricoptero, es una aeronave que se eleva y se desplaza por la accioncuatro rotores instalados al final de un marco en forma de cruz. El control selogra variando la velocidad angular de cada uno de los cuatro motores.

    2.1. Introduccion al Funcionamiento

    Para controlar el QA3 es necesario generar cambios en la potencia entregadaa cada motor. Para el siguiente analisis se asume que la plataforma esta volandoestable con una potencia de motores PWMQ (en los cuatro motores).

    Los cuadricopteros como todo vehculo volador tiene 3 grados de libertadangulares, estos son roll, pitch y yaw.

    Figura 1: Grados de libertad de un quadrotor.

    2.1.1. Movimiento de guinada (yaw)

    Se refiere al movimiento cuando el vehculo gira sobre su eje vertical. Elcuadricoptero logra este movimiento aumentando (o disminuyendo) por igual lapotencia de giro de los rotores 1 y 3 y disminuyendo (o aumentando) en igualmagnitud los motores 2 y 4. Al disminuir esta potencia aumenta el par motorcreando un giro contrario a las helices que estan rotando con mayor poten-cia. Las potencias de giro deben variar equilibradas para mantener el vehculoestacionario en el aire, es decir, la fuerza total constante.

    2.1.2. Movimiento de inclinacion (pitch)

    Es el movimiento que permite el movimiento hacia adelante y atras. Elvehculo mantiene la potencia en el rotor 1 que es opuesto al sentido desea-do, reduce al mnimo la del rotor 3 y deja los otros dos a potencia media, as la

    8

  • Figura 2: Movimiento de yaw.

    sustentacion del rotor 1 hace que el vehculo se incline a favor del sentido deseadoy se desplace.

    Figura 3: Movimiento de pitch.

    2.1.3. Movimiento de bamboleo (roll)

    Es cuando el vehculo se mueve a la izquierda o derecha. Usa el mismoprincipio que el de inclinacion, pero lateralmente. La combinacion de los tresmovimientos mencionados son los que hacen maniobrar al cuadricoptero libre-mente. Los movimientos de roll y pitch son giros en torno a los ejes horizontalesdel QA3. Una inclinacion en cualquiera de estos ejes produce un movimientolineal en el plano horizontal cuya velocidad depende del angulo (esto se denom-ina angulo de ataque) y la direccion depende de la orientacion del QA3. Yaw esun giro respecto a la vertical y no produce movimiento lineal.

    9

  • Figura 4: Movimiento de roll.

    2.1.4. Movimiento Vertical

    Por ultimo, se puede hacer ascender, descender o mentener en vuelo esta-cionario al QA3, haciendo que la fuerza de sustentacion generada por los 4 paresmotores-helices sea mayor que la fuerza peso generada por la atraccion gravita-toria. Este movimiento se logra variando la potencia de los cuatro motores enigual medida para no modificar los demas grados de libertad. De esta forma laplataforma puede ascender o descender.

    Figura 5: Movimiento vertical.

    Lo dicho anteriormente es para el caso ideal, donde los cuatro motores tieneexactamente las mismas constantes y giran a las mismas velocidades angulares.En el caso real, lo anterior no es posible, porque siempre existen ciertas varia-ciones en las fuerzas generadas por los motores, ya sea por que las constantesde los motores son diferentes o las velocidades angulares giran a distintas rev-oluciones. Estas diferencias causaran que el vehculo tuviera ciertas rotacionesen su centro de gravedad y llevara a que se la fuerza de sustentacion totaltuviera una diferencia angular con el eje Z. Esta diferencia dara lugar a un

    10

  • desplazamiento de en el plano XY.El control de los movimientos yaw, pitch y roll se realiza con el sistema de

    navegacion. En secciones siguientes se encontraran las expresiones matematicasque permitan modelar el comportamiento del cuadricoptero en el espacio. Losmodelos matematicos desarrollados seran simulados para luego ser probados enla estructura real.

    2.2. Estructura

    La estructura del QA3 es de aluminio compuesta por dos tubos rectangu-lares (2mm de espesor, 60cm de largo) encastrados en sus centros, formando unangulo de 90 grados. Sobre el centro se encuentra la placa madre montada sobregomas de caucho para amortiguar las vibraciones producidas por los motores.

    Figura 6: Estructura del QA3.

    Como se observa en la figura anterior, se realizaron ventanas sobre los tubospara no obstaculizar el flujo de aire generado por las helices. Con esto se lograun aumento en el empuje generado por los propulsores.

    2.3. Calculo del peso total

    En la siguiente tabla se especifican los pesos de los componentes utilizados,algunos fueron obtenidos del fabricante y otros a traves de mediciones.

    Motores 4 52g 208gESC 4 32g 128g

    Bateras 2 160g 320gHelices 4 10g 40g

    Estructura 1 300g 300gProteccion 1 150g 150g

    Placa Madre 1 200g 200gMontaje Placa 1 150g 150g

    Total 1496g

    11

  • Con el pesaje del prototipo completo con una balanza de presicion se obtuvoun valor de 1482g, el cual es muy cercano al valor calculado anteriormente.

    2.4. Motores

    Se utiliza motores brushless para aeromodelismo con control electronico. Adiferencia de un motor DC convencional, en un motor brushless la armadurano tiene movimiento y el iman permanente es el que gira sobre su eje. Estosmotores son conocidos como outrunners. Para lograr esto es necesario generartres senales con valor eficaz variable en forma cuasi-senoidal, como se muestraen el siguiente grafico.

    Figura 7: Forma de onda para el control de un motor brushless trifasico.

    Un parametro importante de este tipo de motores es el , constante que rela-ciona la velocidad en RPM del motor sin carga con el valor pico de tension enlas bobinas del motor. Los motores elegidos son los BL-2830-8 de la empresaRCTimer que tienen un kv = 1300RPMvolt .

    Figura 8: Motor BL-2830-8.

    Las caractersticas de estos motores son:

    Modelo: 2830-8

    Dimensiones: 28 30mmDimension del eje: 3,17 45mmPeso: 52g

    12

  • KV(rpm/V): 1300

    Potencia Maxima: 275W

    Batera: 2-4Li-Po

    Helices recomendadas: 9x6/7x3

    Ri(M): 0.075

    ESC(A): 30A

    Figura 9: Dimensiones del motor BL-2830-8.

    2.5. Controladores ESC

    Los controladores de los motores (ESC, Electronic Speed Controller) per-miten regular la potencia suministrada a cada motor. Se alimentan con unatension formada con celdas NiMh o LiPo. En nuestro caso la tension es 12v. Lasalida del ESC debe ser como la mostrada en la figura anterior.

    En un primer momento se planeo la construccion de un controlador de ve-locidad, pero debido a varias razones se decidio la compra de un ESC comercial.La principal razon de esta decision fue el costo de la construccion de un ESC.El precio de un controlador comercial esta en el orden de los $ 40, cuando laconstruccion del mismo ronda en el orden de los $ 200. Las razones de este costoelevado son la necesidad de usar transistores mosfet especiales que no se con-siguen facilmente, los transistores deben manejar 30A de corriente continua ypicos de 100A, tambien deben tener tensiones de disparo bajas compatibles conlas de un microcontrolador para no complicar el circuito. Tambien se necesitacontar un microcontrolador con 6 salidas de PWM, lo que no es muy comun enlos microcontroladores normalmente usados.

    Si agregamos a todo esto el tiempo de desarrollo y de prueba, llegamos ala conclusion de que carece de sentido construir el controlador en el ambito denuestro proyecto.

    En la seccion de hardware se ampla la informacion sobre los controladorescomerciales usados.

    2.6. Bateras LiPo

    Actualmente las bateras de Litio-Polmero son usadas para este tipo deaplicaciones en donde se necesitan elevadas potencias y bajo peso. Estas baterasestan formadas por celdas que se pueden agrupar en serie y paralelo para lograrlos voltajes y corrientes necesarios.

    13

  • Las bateras LiPo necesitan cargadores especiales. Sus celdas no deben sersobrecargadas ni tampoco deben ser descargadas profundamente. Para mantenerla diferencia entre las celdas al mnimo, se debe usar un balanceador. Estebalanceador puede estar integrado al cargador o puede estar separado. Por estolas bateras no solamente tienen los bornes normales de una batera, sino quetienen otro conector que nos permite acceder a las celdas individuales para lograruna carga balanceada.

    Figura 10: Batera LiPo Hyperion G3 CX - 3S 2100mAh (25C).

    El manejo de estas bateras debe ser realizado con precaucion, por lo tantose deben tener en cuenta algunas reglas. El fabricante nos aconseja:

    No exceder de 4,2V el voltaje de cada celda.

    No exceder de 5C la tasa de carga

    No exceder las tasas de descarga de corrientes especificadas

    No descargar la batera a mas de menos de entre un 10 a 20 % de sucapacidad energetica. Usar 3.4V como tension de corte de celda.

    Siempre monitorear la carga de la batera

    Nunca cortocircuitar, tampoco exponer al fuego o al agua

    Nunca usar un pack estropeado

    Se planteo el diseno del prototipo con una autonoma de vuelo de aproxi-madamente 10 minutos. El QA3 posee 2 baterias Hyperion G3 CX - 3S 2100mAh(25C).

    2.6.1. Caractersticas

    Peso: 160g

    Dimensiones: 109 x 36 x 24 mm

    Tecnologa Lipo

    Velocidad de carga de hasta 5C

    14

  • 2.6.2. Calculo de la autonoma de vuelo

    Se realizara un calculo aproximado de este tiempo debido a que el mismodepende de los tipos de maniobras que realiza el dispositivo.

    Primero vamos a suponer que trabajamos a potencia maxima:4 Motores de 275W = 1100WEsta es la potencia total consumida, despreciando el resto de los compo-

    nentes.2 Bateras de 11,1V 2100mAh = 46,62Wh

    Tiempo =E

    P=

    46,62

    1100= 2,55min

    Este tiempo esta calculado a potencia maxima, como vemos el QA3 sinllevar carga y volando manteniendose estatico en un punto reduce esta energaconsumida a aproximadamente un 25 %.

    2.7. Helices

    Para el funcionamiento del QA3 se necesitan que 2 helices giren en un sentidoy las otras 2 en otro sentido, esto hace que si la sumatoria de las 2 velocidadesde las que giran en un sentido es igual a la sumatoria de las que lo hacen ensentido contrario contrario, el torque resultante se cancela.

    Las helices mas comunes son las que se usan en el morro del avion, estan sonconocidas como helices normales. Hay otro tipo de helices llamadas empujadoraso pusher en ingles que son las que se utilizan en aeronaves que tienen generansu empuje en la cola. Una posible solucion a este problema sera girar 180o lahelice sobre su eje y colocarla en el motor. Pero esta solucion tiene corto alcancedebido a que el empuje generado por la misma helice cuando gira en su sentidonormal es distinto al generado cuando gira en el otro sentido.

    Las helices empujadoras estan disenadas para que el empuje generado porsu rotacion sea mas efectivo cuando giran al reves que una helice normal.

    Las helices en general tienen 2 parametros que las caracterizan: el paso y eldiametro.

    Figura 11: Paso y Dametro de una helice.

    El paso se calcula como la distancia que recorrera la helice en una vuelta siesta se moviese en un medio solido (semejante a un tornillo) y el diametro es el

    15

  • del crculo que generan cuando estas rotan. Este diametro me indica el area delaire que entra en juego en el calculo del empuje.

    Las helices definen el consumo de corriente de los motores, as como el empujeque se puede lograr.

    Las helices utilizadas en el QA3 son las recomendadas por el motor, con unamedida de 9x6 pulgadas.

    Figura 12: Helice del tipo normal.

    Figura 13: Helice del tipo pusher.

    2.8. Proteccion

    Para poder realizar pruebas seguras con el QA3 y evitar que el proyectodure mas que un solo vuelo, se decidio armar una estructura de telgopor, demanera que las helices queden contenidas dentro del volumen formado. Tambiense le anadio unos pies para proteger el conexionado de alimentacion. Estos piestambien permiten calibrar el cerofacilmente.

    3. Modelado del Quadrotor

    En este captulo se realiza la derivacion del modelo matemetico de la plantadel QA3, tambien se realizan las simplificaciones necesarias para poder obtenerun controlador simple, pero con una buena performance, luego se explican lasmediciones realizadas para obtener las constantes reales de la planta y aplicarlasal modelo. Por ultimo se disena el controlador.

    La derivacion de la dinamica no lineal es realizada en coordenadas inercialesNED y de cuerpo fijo. Denotemos con eN , eE , eD los ejes inerciales, y con xB ,

    16

  • Figura 14: Proteccion del QA3.

    yB , zB a los ejes del cuerpo. Los angulos de Euler de los ejes del cuerpo son, , con respecto a los ejes eN , eE y eD respectivamente, y son referidoscomo roll, pitch and yaw. Definamos a r como el vector de posicion desde elorigen inercial hacia el centro de gravedad del vehculo(CG), y dejemos que Bsea definido como la velocidad angular en con respecto al eje de referencia delcuerpo.

    La direccion actual de la velocidad es referida como ev en coordenadas iner-ciales. Los rotores, numerados 1-4, estan montados sobre los ejes xB , yB , xBy yB , respectivamente, con vectores de posicion ri con respecto a CG. Cadarotor produce un torque aerodinamico Qi y un empuje Ti, ambos paralelos aleje de rotacion del rotor, y ambos usados para el control del vehculo.

    Aqu, Ti = i K1+0,1s , donde ui es el voltage aplicado a los motores. En vuelo,Ti puede variar mucho con respecto a esta aproximacion. Los torques, Qi, sonproporcionales al empuje del rotor y estan dados por Qi = krTi.

    Los rotores 1 y 3 giran en direccion opuesta a los rotores 2 y 4, por estolos torques aerodinamicos se contrarrestran y pueden ser usados independiente-mente para el control de yaw. La velocidad horizontal resulta en un momentoen los rotores, Ri , sobre ev, y una fuerza de arrastre, Di, en la direccion ev.La fuerza de arrastre de cuerpo esta definida como DB , la masa del vehculo esm, la aceleracion debido a la gravedad es g, y la matriz de inercia es I R3X3.Un diagrama de cuerpo libre se muestra en la figura siguiente.

    La fuerza total, F , y el momento, M , puede ser sumado como

    F = DB ~eV +mg ~eD +4i=1

    (Ti ~zB Di ~eV )

    M =

    4i=1

    [Qi ~zB Ri ~eV Di(~ri ~eV ) + Ti(~ri ~zB)]

    La dinamica no lineal completa puede ser expresada como:

    F = mr

    M = IB + B IB

    17

  • Figura 15: Diagrama de cuerpo libre usado para la derivacion del modelo delQA3.

    donde se asume que el momento angular total de los rotores esta cerca decero, porque estan en contra rotacion.

    3.1. Descripcion

    3.1.1. Fuerza de Arrastre del Cuerpo

    DB = qSCD

    3.1.2. Empuje

    Ti = i K1 + 0,1s

    3.1.3. Fuerza de arrastre sobre los rotores debido a la velocidad hor-izontal

    Di

    3.1.4. Momento de arrastre sobre el eje de rotacion de los rotores

    Qi = KTi

    3.1.5. Momento de Roll generado en los rotores por la velocidad

    Ri

    3.1.6. Fuerza de arrastre en los rotores debido a la velocidad

    Di

    18

  • 3.1.7. Empuje Total

    T =

    4i=1

    Ti

    3.2. Aproximacion de la Fuerza y el Momento

    Suponiendo que el Cuadricoptero esta en vuelo estacionario podemos des-preciar DB y Di. Con esto nos queda:

    3.2.1. Fuerza

    mr = F = RRRT ~zB +mg ~eDAproximando las matrices de rotacion de los angulos para angulos pequenos,

    tenemos:

    RRR = 1 1 1

    mr =

    1 1 1

    00T

    + 00mg

    mr =

    0 T 0T 0 00 0 1

    T

    + 00mg

    3.2.2. Momento

    Tambien podemos despreciar los momemtos de Rolling Ri y B IB . ElTorque nos queda:

    M = IB =

    4i=1

    [Qi ~zB + Ti(~ri ~zB)]

    IxIy Iz

    = 0 l 0 ll 0 l 0Kr Kr Kr Kr

    T1T2T3T4

    3.3. Medicion de los parametros de la Planta

    Para el diseno del controlador del quadricoptero resulta necesario realizarla medicion de los distintos parametros del modelo real. Los parametros funda-mentales son el peso, el momento de inercia, los empujes de los motores.

    19

  • 3.3.1. Empuje de los motores

    Al momento de realizar esta medicion poseamos 2 motores rctimer 2830, 1ESC rctimer de 30A, 1 ESC mystery de 30A, 1 helice con paso normal y unahelice con paso pusher.

    Se realizo la medicion del empuje de cada motor, con las distintas helices ylos dos controladores. Esta medicion se hizo montando el motor sobre un pesode plomo, el cual se pona sobre la balanza y luego se realizaron las curvasde transferencia entre PWM y fuerza de empuje. El montaje se muestra en lasiguiente figura.

    Figura 16: Montaje del motor para la medicion del empuje.

    En las siguientes tablas se muestran los resultados obtenidos, RCTimer yMystery son los 2 controladores usados, Normal y Pusher son los 2 tipos dehelices. Tambien se muestran los datos en forma grafica.

    Como se puede ver, podemos aproximar la funcion de transferencia entre elciclo de trabajo y el empuje generado por una recta. Esta es una aproximacionno tan real debido a que se desprecian todas las constantes de tiempo del motory de la helice. Obtener una funcion de transferencia real para el conjunto motorhelice representa un trabajo que sobrepasa nuestros conocimientos y objetivos,por lo tanto en adelante se supondra que la transferencia entre ciclo de trabajoy empuje es una constante. La aproximacion se realizo a traves del metodo demnimos cuadrados.

    Motor 1

    RCTimer Normal

    Duty 2949 5898 8847 11796 14745 17694 20643 23592 26541 29491 32440

    Fuerza 0 55 100 145 185 230 270 320 360 400 440

    F = 0,0154 D 35,83Mystery Pusher

    Duty 2949 5898 8847 11796 14745 17694 20643 23592 26541 29491 32440

    Fuerza 20 20 95 165 245 325 410 480 575 670 770

    20

  • F = 0,0283 D 155RCTimer Pusher

    Duty 2949 5898 8847 11796 14745 17694 20643 23592 26541 29491 32440

    Fuerza 5 60 105 150 195 240 290 335 380 425 475

    F = 0,017 D 45,4Mystery Normal

    Duty 2949 5898 8847 11796 14745 17694 20643 23592 26541 29491 32440

    Fuerza 5 5 80 150 225 300 380 460 545 640 730

    F = 0,0267 D 156

    Figura 17: Empuje del motor 1 con distintas helices y controladores.

    Motor 2

    Mystery Normal

    Duty 2949 5898 8847 11796 14745 17694 20643 23592 26541 29491

    Fuerza 15 15 80 160 235 320 395 475 570 665

    F = 0,028 D 167,7RCTimer Pusher

    Duty 2949 5898 8847 11796 14745 17694 20643 23592 26541 29491 32440

    Fuerza 10 65 110 155 200 245 295 345 395 435 490

    F = 0,0168 D 34,1Mystery Pusher

    Duty 2949 5898 8847 11796 14745 17694 20643 23592 26541 29491

    Fuerza 5 5 80 155 245 335 425 535 655 795

    F = 0,03523 D 231,7RCTimer Normal

    Duty 2949 5898 8847 11796 14745 17694 20643 23592 26541 29491 32440

    Fuerza 25 65 110 155 195 235 275 315 360 400 435

    F = 0,015 D 23,47Motor1, RCTimer, Pusher y Motor2, Mystery y Normal

    21

  • Figura 18: Empuje del motor 2 con distintas helices y controladores.

    Figura 19: Comparacion del empuje del motor 1 con respecto al 2.

    3.3.2. Calculo Aproximado de las constantes

    Calculo de la constante de Inercia

    KJ =r

    JT

    J =

    m.r2

    JT = 2(Jmotor + JESC + Jhelice) + Jbarra

    Jmotor = 52.20, 52[g.cm2] = 21853[g.cm2]

    JESC = 32.102[g.cm2] = 3200[g.cm2]

    Jhelice = 15.20, 52[g.cm2] = 6303, 75[g.cm2]

    22

  • Jbarra =m.L2

    12=

    110.512

    12[g.cm2] = 23842, 5[g.cm2]

    JT = 86556[g.cm2] = 0,0086556[Kg.m2]

    KJ =21

    86556

    1

    g.cm= 24,26174962

    1

    Kg.m

    Calculo de la constante del Motor

    Segun las mediciones realizadas podemos aproximar estas constantes.

    KMPusher =FD

    =40

    3000

    g

    cuentas

    KMNormal =FD

    =70

    3000

    g

    cuentas

    3.4. Diseno del controlador

    El problema del diseno de un controlador de actitud para el QA3 no es un problematrivial debido a varias razones como son el acoplamiento entre las fuerzas y momentosgenerados por los motores y helices, el rozamiento con el aire, la fuerza de empuje delviento, etc; por esto se ha optado por el uso de un controlador PID, el cual se puedeajustar para las mejores condiciones de funcionamiento y de la realizacion de variassimplificaciones.

    La primera simplificacion importante es suponer que el control de los distintosangulos esta desacoplado. Con esta suposicion obtenemos 3 plantas independientes alas cuales les agregamos un controlador PID distinto.

    Otra simplificacion es suponer que las fuerzas de rozamiento con el aire y la fuerzagenerada por corrientes de aire son despreciables. Estas corrientes de aire no solo sepueden deber al viento, sino tambien a rebotes del flujo de aire generado por la helicecon el entorno.

    Tambien despreciamos la dinamica del motor y suponemos que es lineal.En esta seccion se explica el controlador PID y los 3 controladores de los angulos.

    3.4.1. Controlador PID

    Un controlador PID (Proporcional Integral Derivativo) es un mecanismo de controlpor realimentacion que calcula la desviacion o error entre un valor medido y el valorque se quiere obtener, para aplicar una accion correctora que ajuste el proceso.

    El algoritmo de calculo del control PID tiene tres parametros distintos: el pro-porcional, el integral, y el derivativo. El valor Proporcional determina la reaccion delerror actual. El Integral genera una correccion proporcional a la integral del error, estonos asegura que aplicando un esfuerzo de control suficiente, el error de seguimientose reduce a cero. El Derivativo determina la reaccion del tiempo en el que el errorse produce. La suma de estas tres acciones es usada para ajustar al proceso va unelemento de control, en este caso el PWM aplicado a los motores. Ajustando estas tresvariables en el algoritmo de control del PID, el controlador puede proveer un controldisenado para lo que requiera el proceso a realizar.

    La respuesta del controlador puede ser descrita en terminos de respuesta del controlante un error, el grado el cual el controlador llega al set point, y el grado de oscilaciondel sistema. Notese que el uso del PID para control no garantiza control optimo delsistema o la estabilidad del mismo. Algunas aplicaciones pueden solo requerir de unoo dos modos de los que provee este sistema de control.

    Ecuacion Diferencial

    23

  • Figura 20: Diagrama en bloques de un controlador PID.

    La ecuacion diferencial de un controlador PID tiene la siguiente forma:

    c(t) = k[e(t) +1

    Ti

    t0

    e(t)dt + Tdde(t)

    dt]

    Aplicando la transformada de Laplace a la ecuacion diferencial anterior podemosencontrar la relacion entre entrada y salida en el plano de Laplace:

    C(s) = k(1 +1

    Tis+ Tds)E(s)

    Para realizar el analisis en tiempo discreto necesitamos pasar del plano de Laplaceal plano Z. Esto se hace aplicando la transformada Z a la funcion obtenida ante-riormente. Una vez obtenida la funcion en el plano Z, podemos realizar analisis deestabilidad, de respuesta y realizar el controlador para obtener la respuesta deseada.

    C(z) = k[1 T2Ti

    +T

    Ti

    1

    1 z1 +TdT

    (1 z1)]E(z)Podemos definir 3 constantes, Kp, Ki, Kd, y expresar la ecuacion anterior como:

    C(z) = [Kp +Ki

    1 z1 +Kd(1 z1)]E(z)

    Esta ultima forma tiene una similitud con el controlador PID en tiempo continuo,pero aclaramos que las constantes no son las mismas.

    Para poder codificar el algoritmo en un microcontrolador, debemos pasar la funcionde transferencia en el plano Z, a una ecuacion en diferencias en el tiempo. En laecuacion siguiente se muestra el algoritmo del controlador PID en el tiempo.

    c(k) = c(k 1) +Kp[e(k) e(k 1)] +Kie(k) +Kd[e(k) 2e(k 1) + e(k 2)]A continuacion se realiza el analisis de los controladores de los angulos de roll y

    pitch.

    3.4.2. Controlador del angulo de roll

    El angulo de roll depende de la diferencia del empuje entre los motores laterales.A continuacion se realiza el calculo de la funcion de transferencia a lazo cerrado de laplanta mas el controlador PID. Suponemos primero un modelo continuo y luego unmodelo discreto con un retenedor de orden cero, para tener en cuenta el retardo defase introducido por el muestreo.

    Modelo Continuo

    24

  • Figura 21: Diagrama en bloques de la planta a lazo cerrado en tiempo continuo.

    x = 2 1 = J d

    2

    dt2

    s2(s) =(s)

    J

    Gbal(s) =1

    Js2

    Gtorque(s) = k

    GPID(s) = kp (1 + 1Tis

    + Tds)

    GLA(s) = Gbal(s)Gtorque(s)GPID(s) =kpkTiJ

    TiTds2 + Tis+ 1

    s3

    GLC(s) =GLA(s)

    1 +GLA(s)= kpk

    TiTds2 + Tis+ 1

    TiJs3 + kpkTiTds2 + kpkTis+ kpk

    Modelo Discreto

    Figura 22: Diagrama en bloques de la planta a lazo cerrado en tiempo discreto.

    Gbal(s) =1

    Js2

    GROC(s) =1 eTS

    S

    Gtorque(s) = k

    GPID(s) = kp (1 + 1Tis

    + Tds)

    Gplanta(Z) = Z[GROC(s)Gbal(s)Gtorque(s)]

    Gplanta(Z) = Z[1 eTS

    S

    kJS2

    ] = (1 z1)Z[ 2k2JS3

    ] =T 2k2J

    z + 1

    z2 2z + 1

    GPID(Z) = KP+KI

    1 z1+KD(1z1) =

    (KP +KI +KD)z2 + (2KD KP )z +KDz2 z

    25

  • GLA(Z) = GPID(Z)Gplanta(Z)

    GLA(Z) =T 2k2J

    (KP +KI +KD)z3 + (KI KD)z2 + (KP KD)z +KDz4 3z3 + 3z2 z

    GLC(Z) =GLA(Z)

    1 +GLA(Z)

    GLC(Z) =kT

    2((KP +KI +KD)z3 + (KI KD)z2 + (KP KD)z +KD)

    2Jz4 + ((KP +KI +KD)kT2 6J)z3 + ((KI KD)kT2 + 6J)z2 + ((KP KD)kT2 2J)z +KDkT2

    3.4.3. Controlador del angulo de pitch

    El angulo de pitch depende de la diferencia del empuje entre los motores delanteroy trasero. El controlador de este angulo es igual al del controlador del roll, por estono nos extendemos en este controlador.

    3.5. Simulaciones

    Para las simulaciones se van a utilizar las ecuaciones obtenidas anteriormente dela planta mas el controlador. Estas fueron realizadas con el software octave.

    Los valores de los parametros usados fueron extrados del modelo real y son lossiguientes.

    kt = 90,63e 6;

    J = 8,6556e 3;

    3.5.1. Simulacion a lazo abierto

    Se muestran los resultados de la simulacion de la planta mas el controlador disenadoen lazo abierto. Con estos datos podemos saber como sera la respuesta del sistemasegun el valor de k elegido. Como se puede observar para valores de k muy grandes elsistema se vuelve inestable.

    3.5.2. Simulacion a lazo cerrado

    En esta simulacion se muestran los resultados de la simulacion de la salida enfuncion del tiempo para una entrada escalon.

    26

  • Figura 23: Resultado de la simulacion a lazo abierto con el controlador PID.

    4. Hardware de control

    En este captulo se explica el funcionamiento del hardware de control utilizado.

    4.1. Placa del Microcontrolador

    Una de las especificaciones pedidas por el centro para la construccion del QA3fue el uso de la placa madre disenada por el CIII. Esta placa madre generica tiene laventaja de poder ser utilizada en multiples proyectos.

    Esta plataforma contiene un microcontrolador LPC2114/24 con nucleo ARM7 ytoda la electronica asociada para realizar la programacion y testeo de los sistemasdisenados. Ademas en el mismo centro se desarrollan un conjunto de libreras parafacilitar el uso de los perifericos.

    Algunas caractersticas y perifericos de este microcontrolador son:

    16/24K RAM

    128/256K flash

    CPU con una velocidad maxima de 60MHz

    4 canales A/D de 10 bit

    Interfaces series UART, I2C y SPI

    Dos timmers de 32 bit

    6 PWM

    Reloj en tiempo real

    Hasta 46 I/O de proposito general

    El circuito esquematico de la placa se muestra en la siguiente imagen.Los componentes utilizados en la placa se encuentran en el mercado local, y para

    su diseno se empleo exclusivamente software libre, particularmente KICAD.

    27

  • Figura 24: Resultado de la simulacion a lazo cerrado con el controlador PID.

    4.2. Sensores

    Para obtener una estimacion de la posicion angular del QA3 se usan 2 sensores,estos son un giroscopio de 3 ejes y una acelerometro de 3 ejes. Luego estas 2 medicionesde fusionan a traves de un filtro complementario para obtener una estimacion de losangulos. Esta fusion se explica en captulos siguientes.

    4.2.1. Giroscopio

    El sensor utilizado para medir velocidad angular es el ITG-3200. Este sensor es ungiroscopio con salida digital a traves del bus I2C, entregando mediciones correspon-diente a los 3 ejes Y, X y Z. Cada medicion realizada en su correspondiente eje, esdigitalizada por 3 conversores A/D que entregan la informacion sobre un ancho de 16bits. Posee un filtro pasa bajos programable, un sensor de temperatura y un osciladorcon 2 % de precision.

    Su tension de alimentacion es muy flexible y va desde 2,1V hasta los 3,6V . Sutension de logica se encuentra separada y puede ir desde 1,71V hasta VDD.

    Los sensores giroscopicos MEMS utilizan miden la velocidad a traves del efectoCoriolis.

    Estos sensores tienen la principal ventaja de ser muy inmunes a la vibracion,pero tienen como principal desventaja una deriva en la salida obtenida. Esta derivahace que si necesitamos calcular el angulo a traves de integracion obtenemos un errorsistematico que hace que le medicion del angulo tienda a infinito. Debido a esto se usael acelerometro para corregir esta deriva.

    4.2.2. Acelerometro

    Luego de realizar distintas pruebas sobre distintos sensores de aceleracion, seopto por el ADXL345. Por su excelente relacion costo-beneficio. Este sensor al igualque el anterior es de tipo MEMS.

    28

  • Figura 25: Placa del microcontrolador LPC2114.

    El sensor ADXL345 contiene salida digital a traves del bus I2C o SPI, brindandouna resolucion de 13 bits por cada eje y hasta un rango de +16g. Su resolucion tantocomo su rango son programables y puede discernir hasta 1.0 grado de inclinacionutilizando la configuracion de maxima resolucion.

    Una de las principales desventajas de los acelerometros es su alta sensibilidad alas vibraciones, lo que hace que su uso como inclinometro nos permite solo hacermediciones a largo plazo de la inclinacion.

    4.2.3. Circuito de montaje de los sensores

    4.3. Driver de motores ESC

    Los controladores de los motores (ESC, Electronic Speed Controller) permiten reg-ular la potencia suministrada a cada motor. Para controlar la potencia de los motoresutiliza una senal servo convencional: un tren de pulsos cuadrados de perodo T y ciclode trabajo W variable (0 % y 100 % respectivamente).

    Inicialmente se opto por disenarlos, se propuso un esquematico compuesto por 6MOSFETs, un microcontrolador que haga de interfaz con el exterior y que excite a losMOSFETs. Luego se procedio a la busqueda de los componentes y encontramos unimpedimento al no conseguir los MOSFETs de estas caractersticas(100A, 12V ) en elmercado local. Al tener que importarlos, se comenzo con el analisis de costo-beneficio yresulto ser mas conveniente utilizar los ESC disponibles en el mercado, ya que cumplencon los requisitos necesarios para el proyecto.

    Los controladores elegidos tambien son RCTimer de 30A. Se alimentan con unatension que se pueda formar con celdas LiPo que en este caso se conectan en serie paralograr un voltage de 11,1V . La conexion al motor tiene tres cables (motor brushless).

    Caractersticas:

    Voltage de entrada:DC 6-16.8V(2-4S Lixx)

    BEC:5V 2amp

    Corriente de trabajo: 30A (Output: Continuous 30A, Burst 40A up to 10 Secs.)

    Dimensiones: 36mm (L) * 26mm (W) * 7mm (H).

    Peso: 32g.

    La frecuencia de trabajo que se utilizo es de 200Hz, ya que era lo suficiente paracerrar el lazo de control.

    29

  • Figura 26: Circuito esquematico de la placa del microcontrolador.

    Figura 27: Giroscopio MEMS ITG3200.

    4.4. Conexion inalambrica

    Para controlar el QA3 ya sea a traves de un joystick, de una camara o algun sen-sor externo, es necesario algun medio de comunicacion inalambrico. Se analizaron lasopciones disponibles en el mercado y se opto por utilizar una conexion Wi-Fi(802.11).Este tipo de conexion permite conectarse directamente a otra PC, o a un router dondepueden existir muchas PCs conectadas, evitando as, hardware extra en la PC querealice el control a largo plazo.

    El modulo utilizado es el WiFly GSX. Es un sistema embebido que brinda unasolucion completa de acceso wireless, requiriendo unicamente 4 pines de conexion(POWER, TX, RX, GND) para ser utilizado. Una vez que la configuracion ha si-do establecida, el modulo puede acceder automaticamente a una red WiFi y comenzara enviar/recibir paquetes, a traves de datos serie.

    Desde el microcontrolador funciona de modo transparente, donde la conexion esexactamente igual a una configuracion null modem sin handshaking.

    El modulo WiFly GSX (RN-131C) es una completa solucion embebida de ultrabajo consumo para TCP/IP. La WiFly GSX es un modulo de red wireless 802.11b/gembebido independiente. La combinacion de ultra bajo consumo y la habilidad deauto despertarse, conectarse a una red wireless, enviar datos y volver al estado dedormida en menos de 100ms, le permiten a la WiFly GSX funcionar por anos con 2bateras estandar AAA. Usando solo 100mW cuando esta despierta y 10uW cuandoesta dormida, esta marcada eficiencia de potencia, hace posible una nueva clase de

    30

  • Figura 28: Acelerometro MEMS ADXL345.

    Figura 29: Circuito de montaje del acelerometro y el giroscopio.

    dispositivos con internet disponible.El modulo WiFly GSX incorpora una radio de 2,4GHz, procesador, stack TCP/IP,

    reloj en tiempo real, acelerador de encriptacion, manejo de potencia y interfaz con sen-sores analogicos. Esta solucion completa esta pregrabada con software para simplificarla integracion y minimizar el desarrollos de las aplicaciones. En la configuracion massimple el hardware requiere solo 4 conecciones (PWR, TX, RX, GND) para crear unaconexion de datos wireless. El rango de alcance puede ser de 100m, dependiendo delas condiciones del entorno.

    4.4.1. Caractersticas

    Ultra bajo consumo, 100mW activa, 10uW modo reposo

    Tasa de transferencia con el host de hasta de 100Mbps para SDIO, 44Mbps paraSPI y 2,7Mbps para UART

    Salida de 1 Mbps con TCP/IP y WPA2

    Interface de hardaware UART

    10 entradas salidas de proposito general

    8 interfaces analogicas para sensores

    Reloj en tiempo real para despertarse y dormirse automaticamente y para medi-cion de instantes de tiempo

    Acepta 3,3V DC regulados o 2 3V DC desde una batera

    31

  • Figura 30: Controlador de velocidad RCTimer de 30A.

    Figura 31: Modulo wifly GSX.

    Soporta conexion ad-hoc

    Configuracion a traves de las interfaces UART o wireless usando simples coman-dos ASCII

    Actualizacion del firmware a traves del aire, y a traves de un archivo

    Autenticacion WiFi segura WEP-128, WPA-PSK (TKIP), WPA2-PSK, EAP-TLS para WPA1 y WPA2 Enterprise

    Aplicaciones de red incorporadas, DHCP, UDP, DNS, ARP, ICMP

    4.4.2. Diagrama en bloques interno

    En la figura siguiente se muestra el diagrama en bloques interno del modulo wire-lesss.

    4.4.3. Circuito Esquematico

    El circuito esquematico utilizado se muestra en la siguiente figura.

    4.4.4. Comunicacion

    La comunicacion entre el micro y la wifly se realiza a traves de la UART, con lamisma configurada a 115200 bps, sin control de flujo, con 8 bits y sin paridad.

    32

  • Figura 32: Diagrama en bloques interno del modulo wifly.

    Figura 33: Circuito esquematico para el funcionamiento de la wifly en modoad-hoc.

    La comunicacion entre la PC y la wifly se realizo a traves de wifi, utilizando el pro-tocolo UDP. Tambien se podra haber utilizado el protocolo TCP, pero consideramosmas importante obtener una baja latencia en la comunicacion.

    La red wireless se configuro en el modo ad hoc. Una red ad hoc es aquella enla que no hay un nodo central, sino que todos los dispositivos estan en igualdad decondiciones. Se eligio este modo porque ademas de ser el mas sencillo para el armadode una red, es el que viene configurado por defecto en el modulo wifly.

    4.5. Placa Base

    Por ultimo de construyo una placa base sobre la cual se montaron todos los com-ponentes nombrados anteriormente. El circuito esquematico se muestra en la figurasiguiente.

    Como se puede apreciar en la misma, vemos 4 conectores para los PWM de losmotores, un regulador para obtener desde la tension de 11.1V de las bateras los 5Vnecesarios para la alimentacion, tambien vemos un conector para la placa adaptadorade los sensores mems, leds indicadores y por ultimo el modulo wireless.

    33

  • Figura 34: Circuito completo de la placa base o principal.

    5. Software

    El software consta de dos partes totalmente desacopladas, una es el control de lazocerrado a corto plazo el cual controla los 3 grados de libertad (roll, pitch y yaw), y laotra es el software de la PC que establece el control de lazo cerrado a largo plazo quecontrola los otros 3 grados de libertad (y, x y z).

    5.1. Firmware ARM

    El software de control es del tipo secuencial, en lenguaje ANSI-C, haciendo uso delos perifericos y caractersticas que ofrece el uC a traves de la placa multiproposito,como timers, UARTs, PWMs, deteccion de flancos, entre otros. El siguiente diagramade flujo simplificado da una nocion del flujo seguido por el software.

    Como vemos consta de dos tareas principales, una es la interfaz con el mundoexterior. En la cual los datos pueden ser parametros en ese instante o establecer algunode ellos para realizar el control del mismo.

    La comunicacion es realizada a traves de la UART, se establecio un protocolo paraintercambiar con la PC. Luego de varias fallas, se decidio implementar una compro-bacion de errores optando por la comprobacion de redundancia cclica(CRC). Tienedos modos de envos de parametros, uno sncrono y otro asncrono.

    * El modo sncrono es desde el uC hacia la PC, cada vez que obtiene datos de lossensores son enviados inmediatamente. * El modo asncrono es desde la PC hacia eluC. La PC cada cierto tiempo le enva un dato solicitandole un parametro especfico,el uC enva el parametro que tiene en buffer.

    Todo el firmware para el QA3 fue desarrollado con herramientas libres. Como editorde texto no se utilizo entorno grafico alguno, solamente el editor Vim. Como toolchainde compilacion, se utilizo gcc cross-compiled para ARM. Para grabar el microcontro-

    34

  • Figura 35: Diagrama de flujo del codigo del microcontrolador.

    lador se utilizo lpc21isp y por ultimo como herramienta de debug se utilizo insight conla interfaz JTAG.

    Los 2 algoritmos fundamentales del firmware son el filtro de estimacion del anguloy el controlador PID. Las partes principales se muestran a continuacion.

    5.1.1. Codigo del filtro complementario1 void f i l t r o comp l ementa r i o (void ) {2 // Ph i3 angulo . Ph i e s t = 0.9981 ( angulo . Phi ant ) +4 0.005 ve loc idad . Phi + 0.0019 angulo . Phi med ;5 angulo . Phi ant = angulo . Ph i e s t ;6 angulo . Phi = angulo . Ph i e s t angulo . Ph i ze ro ;7 // Th e t a8 angulo . Theta est = 0.9981 angulo . Theta ant +9 0.005 ve loc idad . Theta + 0.0019 angulo . Theta med ;10 angulo . Theta ant = angulo . Theta est ;11 angulo . Theta = angulo . Theta est angulo . Theta zero ;12 }

    5.1.2. Codigo del controlador PID1 void pid update ( p id type pid ){2 pid>e r r o r = pid>in pid>r e f ;3 pid>propor t i ona l = pid>Kp ( pid>e r r o r pid>e r r o r o l d 1 ) ;4 pid>i n t e g r a l = pid>Ki pid>e r r o r ;5 pid>de r i v a t i v e = pid>Kd ( pid>in 2pid>i n o l d1 + pid>i n o l d2 ) ;67 i f ( pid>in >= 5 | | pid>in i n t e g r a l = 0 .1 pid>i n t e g r a l ;9 }10 pid>out = pid>out o ld + pid>propor t i ona l + pid>de r i v a t i v e + pid>i n t e g r a l ;11 pid>i n o l d2 = pid>i n o l d1 ;12 pid>i n o l d1 = pid>in ;13 pid>e r r o r o l d 1 = pid>e r r o r ;14 pid>out o ld = pid>out ;15 }

    35

  • 5.2. Software de control de la PC

    El software de la PC esta realizado en python y se comunica por medio de unaconexion socket tcp a traves de la placa inalambrica. Se encarga de tomar las lecturasdel joystick, procesarlas y luego enviarlas al uC. Tambien este programa lleva unabitacora con los tiempos de vuelo y datos obtenidos en ese momento en un perodo de100ms cada muestra, definiendo la actitud del robot en espacio-tiempo. Para luego serutilizado en correccion de errores, calibracion de las mediciones realizadas, ajustes delcontrolador, analisis de vibraciones, etc.

    Tambien permite establecer los parametros del control, tanto como los ceros losangulos 0, 0 y 0, como as tambien los valores de Kp, Ki y Kd de los PIDs.

    Figura 36: Ventana principal del codigo de la PC.

    5.3. Utilidades adicionales

    Se generaron herramientas que permitieron el testeo y depuracion del sistema.Por ejemplo en el momento de analisis de vibraciones, se generaron graficos de dis-

    tintos instantes de tiempo y su transformada rapida de Fourier. Permitiendo as obten-er las distintas respuestas al impulso hasta lograr un valor optimo.

    Tambien se realizo una interface entre la PC y la balanza usada para medir elempuje de los motores.

    Todas estas herramientas para analizar los datos obtenidos se escribieron en lengua-je python.

    36

  • 6. Conclusiones

    Se ha logrado la construccion de un robot autonomo volador con 3 grados delibertad controlados, apropiado para vuelos en interiores. Se priorizo la utilizacion decomponentes de bajo costo, aunque la mayora de estos no se consiguen en nuestropas.

    El robot construido cuenta con una estructura robusta y con una carcaza de pro-teccion, la cual previene de roturas de las helices y accidentes que puedan danar alusuario.

    La carga util del prototipo es de aproximadamente 1kg, la cual nos permite agregaren un futuro una unidad de procesamiento con mayores capacidades y camaras paralograr a traves de algoritmos de procesamiento de imagenes una estabilizacion en los6 grados de libertad y una mejora en la respuesta global del sistema.

    Una de las ventajas del prototipo realizado es su arquitectura abierta, la cualen este caso abarca el uso de herramientas informaticas libres y gratuitas para sudesarrollo, la disponibilidad de los planos mecanicos y circuitos electricos a traves dela pagina del CIII y tambien de la documentacion asociada al proyecto.

    Tambien se ha realizado un estudio exhaustivo del modelo dinamico del QA3, elcual puede permitir en un futuro el diseno de algun otro controlador ya sea lineal ono lineal, el cual puede tener en cuenta algunas de las variables despreciadas en elcontrolador actual.

    Se ha logrado la construccion de una Unidad de Medicion Inercial ( IMU ) dereducido tamano, la cual integra 3 sensores ( acelerometro, giroscopo y magnetometro) de bajo costo; esta IMU no solo se puede utilizar para este robot, sino que puedeser usada para desarrollos futuros del propio centro de investigacion o como punto departida de otras tesis o trabajos.

    El desarrollo de este proyecto tambien ha generado la presentacion y aprobacionde un artculo en el Simposio Argentino de Sistemas Embebidos, cumpliendo tambiencon uno de los objetivos personales de los integrantes del grupo de trabajo y tambiencon los objetivos del CIII.

    Otra de las ventajas que queremos destacar del diseno es la utilizacion de softwarelibre en todas las etapas del desarrollo.

    6.1. Analisis de Costos

    Se pudo lograr la construccion de un dispositivo de bajo costo y altas prestacionesen comparacion con otros disponibles comercialmente. Aunque la principal ventaja delprototipo disenado es su arquitectura abierta, la cual le permite a cualquier personaobtener los planos mecanicos y electronicos, el codigo del firmware del microcontroladory el de la PC sin costo alguno. Tambien realizar cambios sobre los mismos para poderadaptar el prototipo al uso particular. Esta arquitectura tambien es la que mejor seadapta al ambito de la investigacion, debido a que en este entorno se necesita tenercontrol sobre todos los parametros del sistema en el cual se hacen pruebas y para esto esnecesario que los circuitos esten disponibles, que tambien el firmware este disponible yque las herramientas informaticas necesarias para desarrollarlo no tengas altos costos.

    A continuacion se hace un detalle del costo del prototipo.

    37

  • 6.1.1. Costo detallado del Prototipo

    Componente Cantidad Costo Unitario Sub Total

    Estructura 1 60 60

    Motores 4 60 240

    ESC 4 40 160

    Helices 4 5 20

    Bateras 2 240 480

    Cargador 1 300 300

    Placa Madre 1 200 200

    Sensores 1 160 160

    Wireless 1 200 200

    Total 1820

    6.2. Desarrollos a Futuro

    Como el prototipo disenado surge para ser usado en tareas de investigacion, seplanea continuar con el desarrollo del mismo agregando nuevas funcionalidades.

    Se planea agregar un sistema de camaras para poder obtener una referencia absolu-ta de posicion y luego con estos datos obtener un control sobre los 6 grados de libertad,lo cual nos permitira obtener un dispositivo realmente autonomo. El tratamiento delas imagenes obtenidas a traves de la camara necesita un alto requerimiento computa-cional por lo tanto se agregara una SBC (single board computer) desarrollada en elCIII para poder realizar este tratamiento matematico.

    Tambien se completara la IMU con un magnetometro para obtener una referenciaabsoluta para el angulo de yaw y la construccion de un altmetro para obtener unareferencia de posicion en el eje z.

    Otra de las mejoras que se debe realizar en el prototipo es la construccion deuna estructura mas liviana, con el mismo material o con otros materiales usados enaeromodelismo como puede ser fibra de carbono.

    38

  • 7. Agradecimientos

    Para poder realizar este proyecto final con el fin de obtener los mejores resultadosposibles fue necesario del apoyo de muchas personas a las cuales quieremos agradecer.

    En primer lugar a nuestro director de tesis David Gaydou, tanto por su apoyomoral, tecnico y academico.

    Tambien se agradece a los integrantes del CIII por cedernos un lugar fsico parapoder desarrollar este proyecto y tambien por la financiacion para el mismo; y tambiena todos los becarios que trabajan en el centro por la ayuda brindada.

    39

  • 8. Bibliografa

    Referencias

    [1] David Vilaseca Alan Kharsansky. Sistema de estabilidad para uav, 2009.

    [2] A.J. Baerveldt and R. Klang. A low-cost and low-weight attitude estimationsystem for an autonomous helicopter. In Intelligent Engineering Systems, 1997.INES97. Proceedings., 1997 IEEE International Conference on, pages 391395.IEEE, 2002.

    [3] G. Buskey, J. Roberts, P. Corke, and G. Wyeth. Helicopter automation using alow-cost sensing system. Computing & Control Engineering Journal, 15(2):89,2004.

    [4] WT Higgins. A comparison of complementary and Kalman filtering. Aerospaceand Electronic Systems, IEEE Transactions on, (3):321325, 2007.

    [5] http://es.wikipedia.org/. Enciclopedia online wikipedia.

    [6] Katie Miller. Path Tracking Control for Quadrotor Helicopters. Computing &Control Engineering Journal, 2008.

    [7] Katsuhiko Ogata. Sistemas de control en tiempo discreto. Prentice Hall, 2000.

    [8] A. Pascoal, I. Kaminer, and P. Oliveira. Navigation system design using time-varying complementary filters. Aerospace and Electronic Systems, IEEE Trans-actions on, 36(4):10991114, 2002.

    [9] J.M. Roberts, P.I. Corke, and G. Buskey. Low-cost flight control system for asmall autonomous helicopter. In Robotics and Automation, 2003. Proceedings.ICRA03. IEEE International Conference on, volume 1, pages 546551. IEEE,2003.

    [10] Steven L. Waslander, Gabriel M. Hoffmann, Claire J. Tomlin, and Jung SoonJang. Multi-Agent Quadrotor Testbed Control Design:Integral Sliding Mode vs.Reinforcement Learning. International Conference on Intelligent Robots and Sys-tems, 2005.

    40