ESCUELA TÉNCINA SUPERIOR DE INGENIERÍA (ICAI) INSTRUMENTACIÓN Y PROGRAMACIÓN DE UN BANCO DE ENSAYOS DE SISTEMAS DE PROPULSIÓN PARA CUADRICÓPTEROS

ESCUELA TÉNCINA SUPERIOR DE INGENIERÍA (ICAI) GRADO EN INGENIERÍA ELECTROMECÁNICA INSTRUMENTACIÓN Y PROGRAMACIÓN DE UN BANCO DE ENSAYOS DE SISTEMAS D

8 downloads 98 Views 3MB Size

Recommend Stories


ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI)
UNIVERSIDAD PONTIFICIA COMILLAS ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) INGENIERO INDUSTRIAL ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA (ICAI) PROY

2.- DISEÑO DE UN BANCO DE ENSAYOS INERCIAL
2.- DISEÑO DE UN BANCO DE ENSAYOS INERCIAL. 2.1.- ELEMENTOS CONTITUYENTES: ESTADO DEL ARTE. 2.2.- DESEÑO DEL PROTOTIPO. ADAPTACION DE LOS COMPONENTES.

ESCUELA SUPERIOR DE ARTES VISUALES
ESCUELA SUPERIOR DE ARTES VISUALES Crítica arsológica de RUBY LOFTUS SCREWING A BREECH RING Obra pictórica de Laura Knight Por Venecia Rosas Flores

Story Transcript

ESCUELA TÉNCINA SUPERIOR DE INGENIERÍA (ICAI) GRADO EN INGENIERÍA ELECTROMECÁNICA

INSTRUMENTACIÓN Y PROGRAMACIÓN DE UN BANCO DE ENSAYOS DE SISTEMAS DE PROPULSIÓN PARA CUADRICÓPTEROS

Autor: Izard Taillefer, Guillermo Directores: Zamora Macho, Juan Luis (Universidad Pontificia Comillas, [email protected]) Porras Galán, José (Universidad Pontificia Comillas, [email protected])

Madrid Julio 2014

AUTORIZACIÓN PARA LA DIGITALIZACIÓN, DEPÓSITO Y DIVULGACIÓN EN ACCESO ABIERTO (RESTRINGIDO) DE DOCUMENTACIÓN

1º. Declaración de la autoría y acreditación de la misma. El autor D. Guillermo Izard Taillefer , como Estudiante de la UNIVERSIDAD PONTIFICIA COMILLAS (COMILLAS), DECLARA que es el titular de los derechos de propiedad intelectual, objeto de la presente cesión, en relación con la obra del TRABAJO FIN DE GRADO; INSTRUMENTACIÓN Y PROGRAMACIÓN DE UN BANCO DE ENSAYOS DE SISTEMAS DE PROPULSIÓN PARA CUADRICÓPTEROS 1, que ésta es una obra original, y que ostenta la condición de autor en el sentido que otorga la Ley de Propiedad Intelectual como titular único o cotitular de la obra. En caso de ser cotitular, el autor (firmante) declara asimismo que cuenta con el consentimiento de los restantes titulares para hacer la presente cesión. En caso de previa cesión a terceros de derechos de explotación de la obra, el autor declara que tiene la oportuna autorización de dichos titulares de derechos a los fines de esta cesión o bien que retiene la facultad de ceder estos derechos en la forma prevista en la presente cesión y así lo acredita. 2º. Objeto y fines de la cesión. Con el fin de dar la máxima difusión a la obra citada a través del Repositorio institucional de la Universidad y hacer posible su utilización de forma libre y gratuita ( con las limitaciones que más adelante se detallan) por todos los usuarios del repositorio y del portal e-ciencia, el autor CEDE a la Universidad Pontificia Comillas de forma gratuita y no exclusiva, por el máximo plazo legal y con ámbito universal, los derechos de digitalización, de archivo, de reproducción, de distribución, de comunicación pública, incluido el derecho de puesta a disposición electrónica, tal y como se describen en la Ley de Propiedad Intelectual. El derecho de transformación se cede a los únicos efectos de lo dispuesto en la letra (a) del apartado siguiente. 3º. Condiciones de la cesión. Sin perjuicio de la titularidad de la obra, que sigue correspondiendo a su autor, la cesión de derechos contemplada en esta licencia, el repositorio institucional podrá: (a) Transformarla para adaptarla a cualquier tecnología susceptible de incorporarla a internet; realizar adaptaciones para hacer posible la utilización de la obra en formatos electrónicos, así como incorporar metadatos para realizar el registro de la obra e incorporar “marcas de agua” o cualquier otro sistema de seguridad o de protección.

1

Especificar si es una tesis doctoral, proyecto fin de carrera, proyecto fin de Máster o cualquier otro trabajo que deba ser objeto de evaluación académica

(b) Reproducirla en un soporte digital para su incorporación a una base de datos electrónica, incluyendo el derecho de reproducir y almacenar la obra en servidores, a los efectos de garantizar su seguridad, conservación y preservar el formato. . (c) Comunicarla y ponerla a disposición del público a través de un archivo abierto institucional, accesible de modo libre y gratuito a través de internet.2 (d) Distribuir copias electrónicas de la obra a los usuarios en un soporte digital. 3

4º. Derechos del autor. El autor, en tanto que titular de una obra que cede con carácter no exclusivo a la Universidad por medio de su registro en el Repositorio Institucional tiene derecho a: a) A que la Universidad identifique claramente su nombre como el autor o propietario de los derechos del documento. b) Comunicar y dar publicidad a la obra en la versión que ceda y en otras posteriores a través de cualquier medio. c) Solicitar la retirada de la obra del repositorio por causa justificada. A tal fin deberá ponerse en contacto con el vicerrector/a de investigación ([email protected]). d) Autorizar expresamente a COMILLAS para, en su caso, realizar los trámites necesarios para la obtención del ISBN. d) Recibir notificación fehaciente de cualquier reclamación que puedan formular terceras personas en relación con la obra y, en particular, de reclamaciones relativas a los derechos de propiedad intelectual sobre ella. 5º. Deberes del autor. El autor se compromete a: a) Garantizar que el compromiso que adquiere mediante el presente escrito no infringe ningún derecho de terceros, ya sean de propiedad industrial, intelectual o cualquier otro. b) Garantizar que el contenido de las obras no atenta contra los derechos al honor, a la intimidad y a la imagen de terceros. 2

En el supuesto de que el autor opte por el acceso restringido, este apartado quedaría redactado en los siguientes términos: (c) Comunicarla y ponerla a disposición del público a través de un archivo institucional, accesible de modo restringido, en los términos previstos en el Reglamento del Repositorio Institucional

3

En el supuesto de que el autor opte por el acceso restringido, este apartado quedaría eliminado.

c) Asumir toda reclamación o responsabilidad, incluyendo las indemnizaciones por daños, que pudieran ejercitarse contra la Universidad por terceros que vieran infringidos sus derechos e intereses a causa de la cesión. d) Asumir la responsabilidad en el caso de que las instituciones fueran condenadas por infracción de derechos derivada de las obras objeto de la cesión. 6º. Fines y funcionamiento del Repositorio Institucional. La obra se pondrá a disposición de los usuarios para que hagan de ella un uso justo y respetuoso con los derechos del autor, según lo permitido por la legislación aplicable, y con fines de estudio, investigación, o cualquier otro fin lícito. Con dicha finalidad, la Universidad asume los siguientes deberes y se reserva las siguientes facultades: a) Deberes del repositorio Institucional: - La Universidad informará a los usuarios del archivo sobre los usos permitidos, y no garantiza ni asume responsabilidad alguna por otras formas en que los usuarios hagan un uso posterior de las obras no conforme con la legislación vigente. El uso posterior, más allá de la copia privada, requerirá que se cite la fuente y se reconozca la autoría, que no se obtenga beneficio comercial, y que no se realicen obras derivadas. - La Universidad no revisará el contenido de las obras, que en todo caso permanecerá bajo la responsabilidad exclusiva del autor y no estará obligada a ejercitar acciones legales en nombre del autor en el supuesto de infracciones a derechos de propiedad intelectual derivados del depósito y archivo de las obras. El autor renuncia a cualquier reclamación frente a la Universidad por las formas no ajustadas a la legislación vigente en que los usuarios hagan uso de las obras. - La Universidad adoptará las medidas necesarias para la preservación de la obra en un futuro. b) Derechos que se reserva el Repositorio institucional respecto de las obras en él registradas: - retirar la obra, previa notificación al autor, en supuestos suficientemente justificados, o en caso de reclamaciones de terceros.

Madrid, a

22 de

Julio

ACEPTA

Fdo:

Guillermo Izard Taillefer

de 2014

Proyecto realizado por el alumno/a: Guillermo Izard Taillefer

Fdo.: …………………… Fecha: …22…/ …07…/ …2014…

Autorizada la entrega del proyecto cuya información no es de carácter confidencial EL DIRECTOR DEL PROYECTO Juan Luis Zamora Macho

Fdo.: …………………… Fecha: …22…/ …07…/ …2014…

Vº Bº del Coordinador de Proyectos Álvaro Sánchez Miralles

Fdo.: …………………… Fecha: …22…/ …07…/ …2014…

1

INSTRUMENTACIÓN Y PROGRAMACIÓN DE UN BANCO DE ENSAYOS DE SISTEMAS DE PROPULSIÓN PARA CUADRICÓPTEROS Autor: Izard Taillefer, Guillermo Directores: Zamora Macho, Juan Luis; Porras Galán, José Entidad Colaboradora: Universidad Pontificia de Comillas – ICAI

RESUMEN DEL PROYECTO INTRODUCCIÓN Este proyecto aborda el modelado de un cuadricóptero y el diseño, fabricación y puesta en marcha de un banco de ensayos para la obtención de parámetros electromecánicos que proporcionen una alta fiabilidad a nuestro modelo. Centrándose especialmente en el banco de ensayos, este proyecto forma parte de un proyecto en colaboración con la Fundación Ingenieros del ICAI para el Desarrollo, que tiene como fin el transporte de material sanitario en poblados o zonas rurales de difícil acceso. Además, el banco de ensayos nos permitirá testear múltiples hélices y rotores para poder escoger la de mayor eficacia. En función del empuje y del par torsor que generen frente a la corriente que estos consuman. Actualmente el desarrollo de los UAV (Unmanned Aerial Vehicle) está notablemente en alza, especialmente los multirrotores o drones. Estos carecen de alas, y se caracterizan por la gran maniobrabilidad debido al alto número de rotores tanto en el despegue y aterrizaje (que son verticales, no necesitando así ninguna pista de aterrizaje) como durante el vuelo. El tamaño de estos vehículos aéreos no tripulados es muy diverso, podemos encontrar cuadricópteros que caben en la palma de una mano hasta aplicaciones de gran envergadura en el ámbito militar con UAV de veintiséis metros de ala fija [1]. Encontramos aplicaciones desde el ámbito militar hasta el uso personal. Pasando por el reconocimiento de terrenos o grabación de vídeos de deportes de riesgo. Ya existen varias ONG que están trabajando con este tipo de vehículos, ya sea para la vigilancia de cazadores furtivos o la búsqueda de supervivientes en determinadas catástrofes naturales.

i

La utilidad del modelo es validar y comparar mediante simulación diferentes estrategias de control y seleccionar el conjunto de parámetros óptimos para cada una de ellas. Es de vital importancia contar con parámetros de nuestro modelo que se aproximen en la mayor medida posible a los reales para las simulaciones y el diseño del control. Éstos se obtendrán a partir de un modelo CAD de donde se extraerán las dimensiones y los parámetros mecánicos, y a partir de ensayos se obtendrán el resto de parámetros, tales como la constante eléctrica del motor, factores de empuje y de arrastre de las hélices con el motor, etc. Es por ello que este proyecto se centra especialmente en un banco de ensayos para ensayar el sistema propulsor. De esta manera conseguiremos unos parámetros que se acercarán en gran medida a la realidad. En resumen, para poder realizar un buen control de un multicóptero, se necesita tener un modelo matemático válido, y por tanto, unos parámetros aproximados en la mayor medida posible a los valores reales.

Momentos de Inercia Dimensiones

CAD

Centro de gravedad

Parámetros del modelo Banco de ensayos

Constante eléctrica del motor Factor de empuje Factor de arrastre

Tabla 1. Esquema parámetros del modelo

METODOLOGÍA BANCO DE ENSAYOS Un banco de ensayos debe estar formado como mínimo por dos galgas extensiométricas capaces de medir el empuje vertical y el par torsor que generará el sistema propulsor. Requerirá también un amplificador de instrumentación seguido de un circuito que coloque dichas señales entre ±12 V para conseguir la mayor resolución posible en el muestreo. Dicho circuito estará formado por dos etapas compuestas por un amplificador operacional en cada una de ellas. La primera etapa realizará la función de amplificadora ajustando los rangos superiores e inferiores en una diferencia de 24 V. Mientras que la segunda etapa formada por un circuito sumador/restador se encargará de ii

colocar el valor mínimo de dicha señal en -12 V, asegurándonos así abarcar todo el rango de valores posibles que admite nuestra caja de medidas. Obteniendo de esta manera la mayor resolución posible.

Ilustración 1. Banco de ensayos

Por otro lado, se necesitará crear una señal en forma de PWM que nos permitirá controlar la velocidad del rotor comunicándonos mediante los ESC (Electronic Speed Controller). Dicha señal será generada mediante un Arduino a través de un código en C, el cual, además de generar dicha señal, estará compuesto de una máquina de estados que proporcione la máxima seguridad de cara a los usuarios que fueren a utilizarlo. Todas las variables de estudio serán registradas en un ordenador mediante una caja de medidas y el software Matlab. Dichas variables serán: el empuje medido en gramos, el par torsor en g·m, las revoluciones por minuto en rpm, la tensión del motor en voltios y su corriente en amperios.

MODELADO MATEMÁTICO Referido al modelado matemático, nos encontramos con dos posibles modelos matemáticos principales para la estimación de la orientación: •

En primer lugar, encontramos un modelo basado en los ángulos de Euler [3]. Se consideran dos sistemas de referencia; uno fijo al suelo (equivalente a la posición y velocidad vista por un observador fijo) y el otro fijo al cuadro del cuadricóptero. Gracias a este segundo sistema de referencia serán directas las medidas muestreadas por el giróscopo y el acelerómetro.



Por otro lado, nos encontramos con los cuaterniones [4] y [5], modelo matemático de mayor complejidad que tiene en cuenta la posible rotación total sobre sí mismo del

iii

cuadricóptero, permitiendo así la realización de acrobacias [4], pero como no es el objetivo de este proyecto no haremos uso de ésta estimación de la posición. Se ha hecho una larga reflexión acerca de si es necesario o no tener en cuenta las fuerzas aerodinámicas en el modelo. Pero después de hacer una investigación [6] podemos concluir que su efecto es despreciable para el desarrollo del modelado. El modelado estará basado principalmente en el propuesto por Holger Voos [3]. El cual propone un modelo en cascada para una posterior implementación del control. Desde que los mandos aplican la tensión en los rotores hasta que se obtiene la posición en el espacio del cuadricóptero hay un gran número de variables intermedias. Todas a ellas a excepción de una, con un significado físico. Es por ello, que se ha hecho especial énfasis en mostrar todas y cada una de ellas para obtener una buena perspectiva de todas las variables y de los pasos intermedios en el paso de unas a otras.

Ilustración 2. Modelado de un cuadricóptero

RESULTADOS

2500

6000

2000

5000 4000

rpm

1500 1000 500 0 0

3000 2000

V

torque

[g·m]

Los resultados del banco de ensayos son los esperados, a continuación se muestran gráficas de todas las variables de estudio obtenidas a través del banco de ensayos. El motor ensayado es el “Turnigy Multistar 4225-610Kv 16Pole Multi-Rotor Outrunner”. Y la hélice “Turnigy Carbon Mixed slow fly prop w/adapters 1347R SF”.

1000

10

20

t[s]

30

40

Ilustración 3. Par torsor o de arrastre

50

0 0

10

20

t[s]

30

40

50

Ilustración 4. Rpm

iv

1000

10

[A] mot

400

I

V

8

600

force

[g]

800

200

4 2

0 -200 0

6

10

20

t[s]

30

40

0

50

Ilustración 5. Empuje o fuerza vertical

10

0

t[s]

20

30

Ilustración 6. Corriente del motor

12

V

mot

[V]

10 8 6 4 2 0 0

10

20

t[s]

30

40

50

Ilustración 7. Tensión del motor

Para obtener los factores de arrastre y de empuje ajustamos las curvas:

𝐸𝐸𝐸𝐸𝐸𝐸𝐸𝐸𝐸𝐸𝐸𝐸 = 𝑏𝑏 · 𝑟𝑟𝑟𝑟𝑟𝑟2

Ecuación 1. Ajuste potencial fuerza vertical

𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇 = 𝑑𝑑 · 𝑟𝑟𝑟𝑟𝑟𝑟2

Ecuación 2. Ajuste potencial del par torsor

Mediante el ajuste de la Ecuación 1. Ajuste potencial fuerza vertical y de la Ecuación 2. Ajuste potencial del par torsor somos capaces de obtener los valores buscados de b y d. Que para el ensayo mostrado valen 2.4443e-05 y 5.1981e-07 respectivamente.

CONCLUSIONES El banco de ensayos nos ha permitido estudiar el conjunto de parámetros que definen a un motor y a una hélice. Es así como logramos obtener los parámetros para nuestro modelo. Además es posible hacer una buena elección de hélices y motores para lograr una mayor eficiencia de nuestro cuadricóptero y aumentar así la autonomía del mismo. Estudio que se ha llevado a cabo en paralelo [12].

v

INSTRUMENTATION AND PROGRAMMING OF A TEST BENCH FOR PROPULSION SYSTEMS FOR CUADRICOPTERS Author: Izard Taillefer, Guillermo Directors: Zamora Macho, Juan Luis; Porras Galán, José Collaborating Organization: Universidad Pontificia de Comillas – ICAI

SUMMARY OF THE PROJECT INTRODUCTION This project addresses two issues: the modeling of a quadcopter and the design of a test bench for the production of electromechanical parameters that provide high reliability to our model. Focusing on the test bench, this project is part of a collaborative project with the ICAI Engineers Foundation for Development, which aims to transport medical supplies in villages and remote rural areas. In addition, the test bench will allow us to test multiple propellers and rotors in order to be able to choose the most efficient one in function of the thrust and the torque that they generate against the current that they consume. Currently, the development of UAVs (Unmanned Aerial Vehicle) is on the rise, especially the multirotors and the drones. These vehicles do not have wings, and they are characterized by their great maneuverability due to the high number of rotors during the take off and the landing (which are vertical, not needing any runway) and during the flight. The size of these Unmanned Aerial Vehicles is extremely diverse; we can find quadcopters that fit in the palm of one hand to large-scale applications in the military context with UAV of twenty meters fixed wing [1]. We find applications from the military context to the personal use. Going through the recognition of land or video recordings of high-risk sports. There are already several NGOs working with these vehicles, either for monitoring poachers or for the search of survivors in certain natural disasters. The usefulness of the model is to validate and to compare by simulation different control strategies and to select the optimal set of parameters for each strategy. It is vital to have our model parameters approaching as much as possible to the real ones for the simulations and for the control design. These parameters are obtained from a CAD model i

where the dimensions and mechanical parameters will be extracted, and the rest of the other parameters will be obtained from tests, such as the electric constant of the engine, the push and pull factors of the propellers with the motor, etc. That is why this project particularly focuses on a test bench to test the propulsion system. Thus, we achieve a set of parameters that come closer to reality. In summary, in order to obtain a good control of a multicopter, you need to have a valid mathematical model, and therefore some parameters as similar as possible to the real values.

Moments of inertia Dimensions

CAD

Center of gravity

Model parameters

Test bench

Electric parameters Push factor Pull factor

Table 1. Scheme model parameters

OBJECTIVES TEST BENCH A test bench must consist of at least two extensiometric gauges capable of measuring the vertical thrust and the torque generated by the propulsion system. It will also require an instrumentation amplifier followed by a circuit, which can place such signals between ± 12 V in order to achieve the maximum resolution possible in the sampling. This circuit will cover two stages composed each one of an operational amplifier. The first stage will perform the function of the amplifier adjusting the upper and lower ranges in a difference of 24 V. While the second stage, composed of an adder / subtractor, will be responsible for placing the minimum value of the signal at -12 V, thus ensuring that the whole range of possible values that supports our ”measure boxes” will be covered. We will obtain thereby the maximum possible resolution.

ii

Illustration 1. CAD model of the test bench

On the other hand, we need to create a PWM signal that will allow us to control the rotor speed by communicating through the ESC (Electronic Speed Controller). This signal will be generated by an Arduino through a language code in C, which, besides generating such signal, it will be composed of a state machine that will provide the maximum security with regard to users. All study variables will be recorded on a computer using a box of measures and Matlab software. These variables are: the pressure measured in grams, the torque in g • m, the revolutions per minute rpm, the motor voltage in volts and the current in amperes.

MATHEMATICAL MODELING Referred to the mathematical modeling, we find two possible main mathematical models to estimate the orientation: •



First, we find a model based on the Euler angles [3] model. Two reference systems are considered; one fixed to the ground (equivalent to the position and velocity seen by a fixed observer) and the other fixed to the frame of the quadcopter. Thanks to this second reference system, we will obtain directly the measures sampled by the gyroscope and the accelerometer. On the other hand, we find quaternions [4] and [5], a more complex mathematical model that takes into account the total possible rotation on the quadcopter itself, thus allowing some acrobatic moves [4], but as this is not the aim of this project we will not make use of this estimation of the position.

iii

A long reflection has been made about whether or not it is necessary to take into account the aerodynamic forces on the model. But after doing some research [6] we can conclude that its effect is negligible for the model development. The modeling is mainly based on the model proposed by Holger Voos [3]. It proposes a cascade model for further implementation of the control. Since the commands apply the voltage to the rotors until the position in the space of the quadcopter is obtained, lots of intermediate variables are found. All of them except one, have a physical meaning. Therefore, it has been made special emphasis on showing each and every one of them to get a good overview of all variables and the intermediate steps in the transition from one to another.

Illustration 2. Quadcopter modeling

RESULTS

2500

6000

2000

5000 4000

rpm

1500 1000 500 0 0

3000 2000

V

torque

[g·m]

The results of the test bench are the ones expected. Below we can find the charts of all the variables that we have studied. The rotor tested is the “Turnigy Multistar 4225-610Kv 16Pole Multi-Rotor Outrunner”. And the propeller is the “Turnigy Carbon Mixed slow fly prop w/adapters 1347R SF”

1000 10

20

t[s]

30

Illustration 3. Drag torque

40

50

0 0

10

20

t[s]

30

40

50

Illustration 4. Rpm

iv

1000

10 8

[A]

600

mot

400

I

V

force

[g]

800

200

4 2

0 -200 0

6

10

20

t[s]

30

40

0

50

0

10

t[s]

20

30

Illustration 6. Motor current

Illustration 5. Vertical force 12

V

mot

[V]

10 8 6 4 2 0 0

10

20

t[s]

30

40

50

Illustration 7. Motor voltage

For obtaining the drag factor and the thrust constant we’ve adjusted the curves: 𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉𝑉 𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓𝑓 = 𝑏𝑏 · 𝑟𝑟𝑟𝑟𝑟𝑟2

Equation 1. Potential adjustment of the vertical force

𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇 = 𝑑𝑑 · 𝑟𝑟𝑟𝑟𝑟𝑟2

Equation 2. Potential adjustment of the drag torque

By the adjustment of Equation 1. Potential adjustment of the vertical forc and Equation 2. Potential adjustment of the drag torque we’re capable for obtaining the target values of b and d. For the test we’ve done are 2.4443e-05 and 5.1981e-07 respectively.

CONCLUSIONS The test bench has enabled us to study the set of parameters that define a motor and a propeller. Thus, we can obtain the parameters for our model. It is also possible to make a good choice of engines and propellers in order to increase the efficiency of our quadcopter, and thereby increase the autonomy. Study that has been carried out in parallel [12].

v

1

INDICE LISTA DE ACRÓNIMOS ....................................................................................................... 3 LISTA DE ILUSTRACIONES ............................................................................................... 4 LISTA DE TABLAS................................................................................................................. 6 LISTA DE ECUACIONES ...................................................................................................... 7

INTRODUCCIÓN .......................................................................................................... 9 MOTIVACIÓN ........................................................................................................................ 9 OBJETIVOS DEL PROYECTO .......................................................................................... 10 BANCO DE ENSAYOS ............................................................................................................................................................. 10 MODELADO ............................................................................................................................................................................. 11

CAPITULO I.- MODELADO DE UN CUADRICÓPTERO ................................... 13 FUNCIONAMIENTO DE UN CUADRICÓPTERO .......................................................... 13 ESTRUCTURA DEL MODELADO DE UN CUADRICÓPTERO ................................... 15 PRIMERA PARTE DEL MODELADO...................................................................................................................................... 17 VELOCIDADES ANGULARES DE LOS ROTORES A PARTIR DE LA TENSIÓN DE ENTRADA................................. 17 CREACIÓN DE LAS VARIBALES ARTIFICALES U .......................................................................................................... 17 DERIVADAS DE LOS ÁNGULOS CARACTERÍSTICOS A PARTIR DE LAS VARIBLES ARTIFICIALES................... 18 SEGUNDA PARTE DEL MODELADO .................................................................................................................................... 20 VELOCIDAD LINEAL A PARTIR DE LOS ÁNGULOS CARACTERÍSTICOS ................................................................. 20

CAPITULO II.- BANCO DE ENSAYOS ................................................................... 22 INTRODUCCIÓN ................................................................................................................. 22 ESTRUCTURA ...................................................................................................................... 24 AMPLIFICACIÓN Y AJUSTE SEÑAL .............................................................................. 28 CALIBRACIÓN ..................................................................................................................... 31 Calibración del empuje vertical: ........................................................................................................................................................ 31 Calibración del par torsor:.................................................................................................................................................................. 32

CONTROL MOTOR BRUSHLESS MEDIANTE ARDUINO .......................................... 34 REGISTRO DE DATOS ........................................................................................................ 36 REGISTRO DE LA FUERZA VERTICAL O EMPUJE ............................................................................................................................ 37 REGISTRO DEL PAR TORSOR O DE ARRASTRE ............................................................................................................................... 38 REGISTRO DE LAS REVOLUCIONES POR MINUTO .......................................................................................................................... 38 REGISTRO DE LA TENSIÓN Y CORRIENTE DEL MOTOR .................................................................................................................. 40

AJUSTE POTENCIAL .......................................................................................................... 42

1

CAPITULO III.- RESULTADOS Y CONCLUSIONES .......................................... 45 ANEXO A – CÓDIGO MODELOS NO LINEALES ............................................... 51 ROTORES BRUSHLESS ...................................................................................................... 51 VARIABLES ARTIFICALES .............................................................................................. 54 CÓDIGO BLOQUE M1......................................................................................................... 55 CÓDIGO BLOQUE M2......................................................................................................... 57

ANEXO B – CÓDIGO PWM ARDUINO .................................................................. 59 ANEXO C – CÓDIGO AJUSTE CURVAS ............................................................... 61 PREPARACIÓN DE DATOS (PREP_DATOS_AJUSTE.M)............................................ 61 AJUSTE POTENCIAL (AJUSTE.M) .................................................................................. 63 CURVA A AJUSTAR (CURVA.M) ...................................................................................... 67

REFERENCIAS ........................................................................................................... 69

2

LISTA DE ACRÓNIMOS U1 U2 U3 U4 W1 W2 W3 W4 U(1) U(2) U(3) U(4) 𝛗𝛗̇ 𝛉𝛉̇ 𝚿𝚿̇ 𝛗𝛗 𝛉𝛉 𝚿𝚿 𝒙𝒙̈ 𝒚𝒚̈ 𝒛𝒛̈ 𝐱𝐱̇ 𝐲𝐲̇ 𝐳𝐳̇ X Y Z d b m g Km Rm Jr Ix Iy Iz L

Tensión de entrada asociada al motor 1 Tensión de entrada asociada al motor 2 Tensión de entrada asociada al motor 3 Tensión de entrada asociada al motor 4 Velocidad angular del rotor 1 Velocidad angular del rotor 2 Velocidad angular del rotor 3 Velocidad angular del rotor 4 Variable artificial U(1) Variable artificial U(2) Variable artificial U(3) Variable artificial U(4) Velocidad angular de cabeceo Velocidad angular de alabeo Velocidad angular de guiñada Ángulo de cabeceo Ángulo de alabeo Ángulo de guiñada Aceleración en el eje X Aceleración en el eje Y Aceleración en el eje Z Velocidad lineal en el eje X Velocidad lineal en el eje Y Velocidad lineal en el eje Z Posición en el eje X Posición en el eje Y Posición en el eje Z Factor de empuje Factor de arrastre Masa Gravedad Constante eléctrica del motor Resistencia eléctrica del motor Inercia del rotor Momento de inercia respecto del eje X Momento de inercia respecto del eje Y Momento de inercia respecto del eje Z Longitud del brazo del cuadricóptero

3

LISTA DE ILUSTRACIONES ILUSTRACIÓN 1. BANCO DE ENSAYOS ...........................................................................................................III ILUSTRACIÓN 2. MODELADO DE UN CUADRICÓPTERO ................................................................................. IV ILUSTRACIÓN 3. PAR TORSOR O DE ARRASTRE ............................................................................................ IV ILUSTRACIÓN 4. RPM................................................................................................................................... IV ILUSTRACIÓN 5. EMPUJE O FUERZA VERTICAL...............................................................................................V ILUSTRACIÓN 6. CORRIENTE DEL MOTOR ......................................................................................................V ILUSTRACIÓN 7. TENSIÓN DEL MOTOR .......................................................................................................... 5 ILUSTRACIÓN 8. FUNCIONAMIENTO CUADRICÓPTERO ................................................................................. 13 ILUSTRACIÓN 9. LOS TRES ÁNGULOS CARACTERÍSTICOS ............................................................................. 14 ILUSTRACIÓN 10. REPRESENTACIÓN DE LAS VARIABLES INTERNAS DEL MODELADO................................... 15 ILUSTRACIÓN 11. ESTRUCTURA DEL MODELADO DE UN CUADRICÓPTERO ................................................... 16 ILUSTRACIÓN 12. BLOQUE ROTORES BRUSHLESS ........................................................................................ 17 ILUSTRACIÓN 13. BLOQUE VARIABLES ARTIFICIALES .................................................................................. 17 ILUSTRACIÓN 14. BLOQUE M1 .................................................................................................................... 18 ILUSTRACIÓN 15. MODELO BLOQUE DERIVADAS Ψ, Φ Y Θ ........................................................................... 19 ILUSTRACIÓN 16. INTEGRACIÓN Ψ, Φ Y Θ .................................................................................................... 20 ILUSTRACIÓN 17. MODELO NO LINEAL PARA LA OBTENCIÓN DE LAS VELOCIDADES .................................... 20 ILUSTRACIÓN 18. BLOQUE M2 .................................................................................................................... 21 ILUSTRACIÓN 19. OBTENCIÓN DE LA POSICIÓN POR INTEGRACIÓN .............................................................. 21 ILUSTRACIÓN 20. VARIABLES DE SALIDA DEL BANCO DE ENSAYOS ............................................................. 23 ILUSTRACIÓN 21. BANCO ENSAYOS 3D ....................................................................................................... 25 ILUSTRACIÓN 22. CONTROLADOR ESC ....................................................................................................... 26 ILUSTRACIÓN 23. ESC Y MOTOR ................................................................................................................. 26 ILUSTRACIÓN 24. FOTO BANCO DE ENSAYOS ............................................................................................... 27 ILUSTRACIÓN 25. AD620 ............................................................................................................................ 28 ILUSTRACIÓN 26. SUMADOR EMPUJE........................................................................................................... 28 ILUSTRACIÓN 27. CIRCUITO SUMADOR PAR ................................................................................................. 29 ILUSTRACIÓN 28. RESISTENCIAS INTERCAMBIABLES ................................................................................... 29 ILUSTRACIÓN 29. UA747CN....................................................................................................................... 30 ILUSTRACIÓN 30. AJUSTE LINEAL DEL EMPUJE ............................................................................................ 31 ILUSTRACIÓN 31. AJUSTE LINEAL PAR TORSOR ........................................................................................... 33 ILUSTRACIÓN 32. REPRESENTACIÓN DE LOS DOS MODOS DE OPERACIÓN .................................................... 34 ILUSTRACIÓN 33. CAJA DE MEDIDAS ........................................................................................................... 36 ILUSTRACIÓN 34. CONEXIÓN CPC AL ORDENADOR ..................................................................................... 36 ILUSTRACIÓN 35. FUERZA VERTICAL O EMPUJE........................................................................................... 37 ILUSTRACIÓN 36. DIAGRAMA DE BLOQUES FUERZA VERTICAL.................................................................... 37 ILUSTRACIÓN 37. PAR TORSOR O DE ARRASTRE .......................................................................................... 38 ILUSTRACIÓN 38. DIAGRAMA DE BLOQUES PAR TORSOR ............................................................................. 38 ILUSTRACIÓN 39. CONTADOR MEDIANTE DETECCIÓN DE FLANCOS ............................................................. 38 ILUSTRACIÓN 40. CÁLCULO DE LA VELOCIDAD A PARTIR DEL CONTADOR DEL ENCODER............................ 39 ILUSTRACIÓN 41. CÁLCULO DE LAS REVOLUCIONES POR MINUTO ............................................................... 39 ILUSTRACIÓN 42. RPM................................................................................................................................. 39

4

ILUSTRACIÓN 43. CIRCUITO ELECTRÓNICO MEDIDOR DE CORRIENTE Y TENSIÓN ......................................... 40 ILUSTRACIÓN 44. CIRCUITO PARA LA LECTURA DE TENSIÓN Y CORRIENTE ................................................. 40 ILUSTRACIÓN 45. DIAGRAMA DE BLOQUES DE LA TENSIÓN ......................................................................... 40 ILUSTRACIÓN 46. DIAGRAMA DE BLOQUES DE LA CORRIENTE ..................................................................... 41 ILUSTRACIÓN 47. V_MOT ............................................................................................................................ 41 ILUSTRACIÓN 48. I_MOT ............................................................................................................................. 41 ILUSTRACIÓN 49. FILTRACIÓN DE SEÑALES ................................................................................................. 42 ILUSTRACIÓN 50. FILTRACIÓN SEÑALES HÉLICE BIPALA 13X4,7" ................................................................ 46 ILUSTRACIÓN 51. AJUSTE POTENCIAL V_TORQUE VS RPM HÉLICE BIPALA 13X4,7” ................................... 46 ILUSTRACIÓN 52. AJUSTE POTENCIAL V_FORCE VS RPM HÉLICE BIPALA 13X4,7” ..................................... 47 ILUSTRACIÓN 53. FILTRACIÓN SEÑALES HÉLICE BIPALA 9X4,7”.................................................................. 47 ILUSTRACIÓN 54. AJUSTE POTENCIAL V_TORQUE VS RPM HÉLICE BIPALA 9X4,7" ..................................... 48 ILUSTRACIÓN 55. AJUSTE POTENCIAL V_FORCE VS RPM HÉLICE BIPALA 9X4,7" ....................................... 48 ILUSTRACIÓN 56. FILTRACIÓN SEÑAL HÉLICE TRIPALA 9X4,5” ................................................................... 49 ILUSTRACIÓN 57. AJUSTE POTENCIAL V_TORQUE VS RPM HÉLICE TRIPALA 9X4,5" ................................... 49 ILUSTRACIÓN 58. AJUSTE POTENCIAL V_FORCE VS RPM HÉLICE TRIPALA 9X4,5"...................................... 50

5

LISTA DE TABLAS TABLA 1. ESQUEMA PARÁMETROS DEL MODELO ........................................................................................... II TABLA 2. CALIBRACIÓN EMPUJE ................................................................................................................. 31 TABLA 3. CALIBRACIÓN PAR TORSOR.......................................................................................................... 32 TABLA 4. RESULTADOS FACTORES DE EMPUJE Y ARRASTRE ........................................................................ 45

6

LISTA DE ECUACIONES ECUACIÓN 1. AJUSTE POTENCIAL FUERZA VERTICAL .................................................................................... 5 ECUACIÓN 2. AJUSTE POTENCIAL DEL PAR TORSOR....................................................................................... 5 ECUACIÓN 3. MOTOR DC BRUSHLESS......................................................................................................... 17 ECUACIÓN 4. CREACIÓN VARIABLES ARTIFICIALES ..................................................................................... 18 ECUACIÓN 5. VARIABLE ARTIFICIAL U(5) ................................................................................................... 18 ECUACIÓN 6. DERIVADAS DE LOS ÁNGULOS CARACTERÍSTICOS .................................................................. 18 ECUACIÓN 7. MATRIZ DE ROTACIÓN ........................................................................................................... 20 ECUACIÓN 8. FUERZA DE ARRASTRE ........................................................................................................... 22 ECUACIÓN 9. FUERZA DE EMPUJE ................................................................................................................ 22 ECUACIÓN 10. CIRCUITO SUMADOR EMPUJE ............................................................................................... 28 ECUACIÓN 11. CIRCUITO SUMADOR TORSOR .............................................................................................. 29

7

INTRODUCCIÓN MOTIVACIÓN La utilización de UAVs o vehículos aéreos no tripulados está creciendo en gran medida. Es por ello que resulta lógico que hasta las ONGs se estén haciendo con vehículos de esta índole para aplicaciones humanitarias. Algún ejemplo de aplicaciones humanitarias es el control de diversas especies en peligro de extinción, a las cuales se les inserta un chip que emite una señal a un radio de pocos kilómetros, y debido a que pueden estar en zonas de difícil acceso como el amazonas, pues es de gran utilidad un cuadricóptero que vuele estas áreas para localizarlos. Este proyecto surgió a raíz de uno propuesto por una ONG llamada Asociación Ingenieros del ICAI para el Desarrollo. Esta asociación propuso el diseño y posterior construcción de un cuadricóptero que permitiese transportar material sanitario a zonas donde el acceso es complicado. Para ello es necesario tener en cuenta las distancias que separan las poblaciones de origen y de destino. Y después de estudiar un caso más concreto en el Amazonas, se observaron máximas distancias entre poblados pertenecientes al canal del amazonas de cuarenta kilómetros. Es por ello que se hizo especial hincapié en enfocar el proyecto a un cuadricóptero con la máxima autonomía posible y con un control de excelente calidad que pudiese superar los climas extremos de estas zonas tropicales. Después de un estudio detallado, se decidió enfocar uno de los dos proyectos en el estudio de los componentes que conformarían el cuadricóptero y en el diseño de la estructura de tal manera que proporcionasen la mayor autonomía posible; estudio que se ha llevado a cabo en [12]. Por otro lado, parte del proyecto exigía parámetros muy fiables para incorporar al modelado. Como se puede observar en la Tabla 1. Esquema parámetros del modelo tenemos dos tipos de parámetros que afectarán al modelado y al control del cuadricóptero. El primer tipo son los parámetros CAD, formados por los momentos de inercia, las dimensiones o el centro de gravedad del cuadricóptero. Todos ellos estimados en [12]. Y el segundo tipo son los parámetros eléctricos, compuestos por la constante eléctrica del motor y los factores de arrastre y de empuje. Es aquí donde entra en juego este proyecto; para una buena estimación de los parámetros citados anteriormente es necesario un banco de ensayos. El cual debe tener un protocolo de ensayos para la fácil obtención de dichos parámetros.

9

OBJETIVOS DEL PROYECTO Los objetivos que engloban este proyecto se pueden agrupar en dos partes: Diseño y construcción de un banco de ensayos. Modelado de un cuadricóptero. Se tratará de describir con el máximo detalle posible el banco de ensayos. Ya que la literatura no ofrece resultados en caso de búsqueda acerca de este tema. Por otro lado, el modelado del cuadricóptero estará fundamentalmente basado en Holger Voos [3] . Constituido por tres modelos no lineales que se detallan posteriormente.

BANCO DE ENSAYOS Hay tres parámetros fundamentales que caracterizan los motores y las hélices de cualquier multicóptero, los cuales se deben estimar por medio del banco de ensayos. Dichos parámetros son: la constante eléctrica del motor, el factor de arrastre y el factor de empuje. Para poder obtener la constante eléctrica del motor es necesario ser capaces de medir la corriente y la tensión que consume nuestro motor. Además, estas dos variables nos servirán para llevar a cabo el estudio de la optimización de los componentes para la mayor duración de la batería. Que como ya se ha indicado anteriormente, se lleva a cabo en [12]. Es por ello que se ha diseñado un circuito secundario que nos permitiese medir dichas variables. Se detalla posteriormente. Para la obtención del factor de arrastre es necesario ser capaces de medir el par torsor que genera el motor con su hélice asociada. Además se necesitará también ser capaces de leer el número de revoluciones por minuto a la que estará girando nuestro conjunto formado por el motor y la hélice. Una vez registradas estas dos variables, se enfrentarán para realizar posteriormente un ajuste exponencial con el fin de obtener el factor de arrastre. Muy similar es la obtención del factor de empuje, para el cual se necesitará registrar el empuje vertical ejercido por el motor con la hélice. Y posteriormente enfrentar esta variable con las revoluciones por minuto para realizar un ajuste exponencial que permita el cálculo del factor de empuje. Para ambos parámetros es necesario realizar una calibración de las dos células de carga asociadas que medirán tanto el empuje vertical como el par torsor. Los ensayos consistirán en unos escalones que se le aplicarán al motor brushless hasta que permanezca el tiempo suficiente en cada uno de los escalones para que se pueda considerar régimen permanente. Los escalones de velocidad están mostrados en la Ilustración 42. Rpm. 10

MODELADO El modelado está estructurado por bloques. Se ha realizado con Matlab mediante el complemento Simulink. Presenta una estructura global en la que podemos observar todos los bloques, a excepción de los modelos no lineales que se han agrupado en subsistemas. Dentro de estos subsistemas se han creado los bloques conocidos por Matlab function en los cuales se han introducido las ecuaciones no lineales de los modelos. Son derivadas temporales que posteriormente se integrarán para hallar las variables deseadas. Las variables están indicadas en las conexiones entre bloques para una mayor facilidad de comprensión.

11

CAPITULO I.MODELADO DE UN CUADRICÓPTERO FUNCIONAMIENTO DE UN CUADRICÓPTERO Los multicópteros engloban a todos aquellos vehículos aéreos compuestos por una o más hélices. Dentro de estos nos encontramos con los multicópteros formados por cuatro hélices, también conocidos como cuadricópteros (Ilustración 8. Funcionamiento cuadricóptero). Estos logran crear un empuje vertical haciendo girar sus cuatro hélices en sentidos contrarios dos a dos; véase en la figura 1; w1 y w3 en sentido antihorario en este caso, y w2 y w4 en sentido horario. De esta manera se proporciona un empuje vertical en caso de que todas las hélices estén girando a la misma velocidad.

Ilustración 8. Funcionamiento cuadricóptero

Mediante la regulación de las velocidades angulares de las 4 hélices; controlando la diferencia de velocidades entre las hélices dos a dos, se puede lograr el pleno control del cuadricóptero. Pudiendo conseguir así los ángulos de alabeo, cabeceo y guiñada deseados.

13

Controlando el empuje vertical y estos tres ángulos característicos, podemos ordenar al cuadricóptero que siga una referencia determinada aplicando una transformación mediante ecuaciones que se encargarán de traducir esa referencia deseada a los ángulos característicos y al empuje que permitan alcanzar dicha referencia.

Ilustración 9. Los tres ángulos característicos

Remontándonos a los causantes de los ángulos característicos (Ilustración 9. Los tres ángulos característicos) y del empuje, es de fácil deducción que estos se deben a las velocidades angulares a la que estén girando cada uno de los cuatro rotores. Y a su vez, la velocidad angular de cada uno de los rotores es causada por la tensión de entrada que se genera en cada uno de ellos.

14

ESTRUCTURA DEL MODELADO DE UN CUADRICÓPTERO La siguiente estructura de modelado está basada en la idea que propone Holger Voos [3] . Cuyo pretexto es estar integrado en un control en cascada. Este modelo propuesto resulta de gran utilidad ya que nos permite observar las variables internas sin ninguna dificultad. Además, dentro de todos los posibles modelados que se han encontrado en la literatura [2] [4] [9] [10] [11] , ninguno de ellos presenta la facilidad de comprensión del modelado tal y como encontramos en [3] . Asimismo, se puede deducir que las primeras variables de entrada para el modelado de un cuadricóptero serán las tensiones de entrada de los rotores, y las variables de salida últimas, serán las posiciones en el espacio respecto de un eje fijo de referencia. Pasando por las siguientes variables en el orden en que se citan; velocidades angulares de los cuatro rotores, derivadas respecto del tiempo de los ángulos característicos, ángulos característicos, velocidades lineales respecto de un eje fijo de referencia y en último lugar; posiciones respecto de ese mismo eje fijo de referencia. (Ilustración 10. Representación de las variables internas del modelado e Ilustración 11. Estructura del modelado de un cuadricóptero). Tensiones de entrada U1

U2

U3

U4

Velocidades angulares de los rotores w1

w2

φ̇

w3

Derivadas de los ángulos característicos 𝜃𝜃̇

w4

Ψ̇

Ángulos característicos φ

𝜃𝜃

Ψ

Velocidad lineal 𝑥𝑥̇

𝑦𝑦̇

𝑧𝑧̇

Posición x

y

z

Ilustración 10. Representación de las variables internas del modelado

15

Ilustración 11. Estructura del modelado de un cuadricóptero

El modelado está constituido por diferentes bloques como se puede observar en Ilustración 11. Estructura del modelado de un cuadricóptero. Es por ello que se van a explicar por separado; en primer lugar, se explicará desde que entra la tensión a los motores hasta que llegamos a las velocidades angulares de guiñada, cabeceo y alabeo (Ψ, ϕ y θ). Y en segundo lugar, se explicará cómo se obtiene la velocidad lineal del cuadricóptero en cuestión a partir de los tres ángulos característicos, y partir de ahí, integrando, su posición instantánea.

16

PRIMERA PARTE DEL MODELADO VELOCIDADES ANGULARES DE LOS ROTORES A PARTIR DE LA TENSIÓN DE ENTRADA

Ilustración 12. Bloque rotores brushless

Tenemos un modelo no lineal en el cual podemos obtener las velocidades angulares de los motores (variable de salida) a partir de las derivadas de las velocidades angulares. La ecuación que rige esta relación aplicada a cada uno de los cuatro rotores es la Ecuación 3. Motor DC Brushless. Se especifica más el modelo no lineal de los rotores brushless en el

Ecuación 3. Motor DC Brushless

CREACIÓN DE LAS VARIBALES ARTIFICALES U

Ilustración 13. Bloque variables artificiales

17

Se crearán cuatro variables artificiales que nos permitirán simplificar en gran medida el resto de ecuaciones, estas variables artificiales se componen de las velocidades angulares, resultan de una combinación de estas:

Ecuación 4. Creación variables artificiales

DERIVADAS DE LOS ÁNGULOS CARACTERÍSTICOS A PARTIR DE LAS VARIBLES ARTIFICIALES Para la obtención de las derivadas de los ángulos de cabeceo, alabeo y guiñada, necesitamos como entradas las variables artificiales U(2), U(3) y U(4), además de una cuarta variable artificial U(5):

Ecuación 5. Variable artificial U(5)

Una vez tenemos todas estas variables como entradas, y una serie de parámetros; los que aparecen en Ecuación 6. Derivadas de los ángulos característicos. se puede dar pie a la ecuación que relaciona cada una de las segundas derivadas de los ángulos característicos con sus primeras derivadas:

Ecuación 6. Derivadas de los ángulos característicos

Ilustración 14. Bloque M1

La ampliación de la Ilustración 14. Bloque M1 es la Ilustración 15. Modelo bloque derivadas Ψ, ϕ y θ . En donde se pretende mostrar el modelo no lineal en el que introduciendo debidamente la 18

Ecuación 5. Variable artificial U(5) y la Ecuación 6. Derivadas de los ángulos característicos logramos obtener las salidas deseadas. Documento que se adjunta en el CÓDIGO BLOQUE M1.

Ilustración 15. Modelo bloque derivadas Ψ, ϕ y θ

19

SEGUNDA PARTE DEL MODELADO Los ángulos Ψ, ϕ y θ se obtienen fácilmente integrando sus derivadas temporales, como se indica en Ilustración 16. Integración Ψ, ϕ y θ.

Ilustración 16. Integración Ψ, ϕ y θ

VELOCIDAD LINEAL CARACTERÍSTICOS

A

PARTIR

DE

LOS

ÁNGULOS

La velocidad lineal se obtendrá a través de la matriz de rotación que pasa del sistema de referencia fijo al cuerpo a un sistema de referencia inercial; Ecuación 7. Matriz de rotación.

Ecuación 7. Matriz de rotación

Aplicando las ecuaciones que relacionan la aceleración del cuadricóptero respecto de un sistema de referencia inercial con sus ángulos de guiñada, cabeceo y alabeo somos capaces de integrar posteriormente las aceleraciones para obtener así las velocidades lineales. Entradas y salidas representadas en Ilustración 17. Modelo no lineal para la obtención de las velocidades.

Ilustración 17. Modelo no lineal para la obtención de las velocidades

20

El modelo representado va embebido en el bloque M2. La variable U1 es la primera variable artificial U(1) creada en Ecuación 4. Creación variables artificiales.

Ilustración 18. Bloque M2

El siguiente paso sería la integración de estas tres variables que son las velocidades lineales respecto de sistema de referencia inercial para así obtener la posición del cuadricóptero; Ilustración 19. Obtención de la posición por integración.

Ilustración 19. Obtención de la posición por integración

Es así como se obtiene la variable final de salida; posición del cuadricóptero, respecto de la variable de entrada; tensión en los motores.

21

CAPITULO II.- BANCO DE ENSAYOS INTRODUCCIÓN La necesidad de un banco de ensayos es inmediata. Necesitamos contar con unos parámetros fiables de los motores y las hélices. Las hélices se caracterizan principalmente mediante dos parámetros; el de arrastre y el de empuje. Ambos dependen del tipo de perfil, del ángulo de incidencia y del número de Reynolds. El factor de arrastre, en adelante representado por d, define en qué medida la hélice genera un par torsor respecto de la base del motor, dicho par es causado por la fuerza de arrastre. Ecuación 8. Fuerza de arrastre. 𝑑𝑑𝐹𝐹𝑎𝑎𝑎𝑎𝑎𝑎 =

1 𝑑𝑑 𝜌𝜌 𝑐𝑐 2 𝑑𝑑𝑑𝑑 2

Ecuación 8. Fuerza de arrastre

Donde se puede observar que cuanto mayor es el factor de arrastre mayor lo es la fuerza. Sucede lo mismo con el factor de empuje, en adelante representado por b. Este parámetro caracteriza el empuje generado por la hélice. Siendo mayor eficiente cuanto mayor lo sea b.

𝑑𝑑𝐹𝐹𝑒𝑒𝑒𝑒𝑒𝑒 =

1 𝑏𝑏 𝜌𝜌 𝑐𝑐 2 𝑑𝑑𝑑𝑑 2

Ecuación 9. Fuerza de empuje

Los ensayos que permitirán realizar nuestro banco registrarán hasta seis variables con el fin de calcular los factores de arrastre y de empuje ajustando posteriormente unas curvas. Además, seremos capaces de medir la corriente y la tensión absorbida por el motor con el fin de estudiar su consumo. Las variables que registraremos mediante Matlab serán (Ilustración 20. Variables de salida del banco de ensayos): Empuje: Se colocará en dirección perpendicular al plano de giro de la hélice (y paralela al eje del motor) una galga extensiométrica capaz de medir las microdeformaciones. De esta manera seremos capaces de ajustar gracias a una previa calibración el empuje generado por las hélices medido en gramos.

22

Par torsor: Se empleará el mismo procedimiento que para el empuje. Se colocará una galga extensiométrica en dirección perpendicular al empuje (y paralela al plano de giro de la hélice) para medir el par torsor generado por la misma. Gracias a otra calibración realizada para el par torsor seremos capaces de convertir esa tensión de salida a g·m. Revoluciones por minuto (rpm): Para esta lectura, necesitaremos colocar en el motor (negro o rojo en los ensayos realizados) una cinta aislante blanca en vertical. De esta manera, mediante un fotodiodo seremos capaces de medir la diferencia de color en cada revolución del motor. Tensión: Mediante un circuito electrónico capaz de reducir en gran medida la tensión, somos capaces de llevarla a nuestra caja de medidas. Corriente: Sucede lo mismo que con la tensión, un circuito electrónico especificado más adelante, se encarga de reducir en gran medida la corriente para poder leerla con la caja de lecturas.

Las variables tensión y corriente nos permitirán estudiar la duración de la batería en función del empuje generado, estudio que será de gran utilidad para encontrar una buena combinación motor/hélices y así aumentar la durabilidad de la batería del cuadricóptero; uno de los mayores inconvenientes de estos vehículos aéreos de cuatro hélices.

Ilustración 20. Variables de salida del banco de ensayos

23

ESTRUCTURA El banco de ensayos ha sido diseñado previamente en CAD e imprimido en 3D con una de las impresoras 3D con las que contamos en la universidad. (Ilustración 21. Banco ensayos 3D). Una vez impreso se colocaron las células de carga en los orificios del banco, de tal manera que una célula estuviese paralela al plano de giro de la hélice y sujetada por un extremo al eje y por el otro extremo a una superficie aislada del eje. De esta manera lograremos mesurar el par torsor o de arrastre. La otra célula de carga deberá estar situada en perpendicular al plano de giro de la hélice y en un extremo fijada al eje y en el otro aislado del movimiento del eje tan y como se muestra en Ilustración 21. Banco ensayos 3D.

24

Ilustración 21. Banco ensayos 3D

Los cables de las células de cargas se llevarán a dos circuitos electrónicos encargados de amplificar y ajustar la señal. Tal y como se describe en AMPLIFICACIÓN Y AJUSTE SEÑAL. En la parte superior mostrada en rojo irá atornillado el motor brushless con el que deseemos ensayar. El arduino irá atornillado a una base de madera sobre la que irán todos los circuitos electrónicos y las salidas mensurables. (Ilustración 20. Variables de salida del banco de ensayos).

25

Ilustración 22. Controlador ESC

Del pin 9 del arduino saldrá la señal mandada en forma de PWM que se conectará al ESC (Ilustración 22. Controlador ESC) que posteriormente irá al motor trifásico (Ilustración 23. ESC y motor).

Ilustración 23. ESC y motor

Finalmente resulta la estructura mostrada en Ilustración 24. Foto banco de ensayos.

26

Ilustración 24. Foto banco de ensayos

27

AMPLIFICACIÓN Y AJUSTE SEÑAL La señal de salida de las células de carga es una tensión en milivoltios, es por ello que se ha utilizado un amplificador de instrumentación (AD620; Ilustración 25. AD620) para cada una de las dos células de carga (la del empuje vertical y la del torsor) a las que se le han colocado entre sus pines 2 y 3 una resistencia de 50 Ω a cada uno de ellos, de esta manera logramos una ganancia de 50.

Ilustración 25. AD620

Una vez establecida una amplificación razonable para las células de carga, el siguiente paso es establecer un circuito sumador que nos permita ponderar las entradas. Como la única alimentación que tenemos es ± 12 V, es -12 V la que hemos escogido para restársela a la tensión de empuje. (Ilustración 26. Sumador empuje).

Ilustración 26. Sumador empuje

La ecuación que rige el anterior circuito es Ecuación 10. Circuito Sumador. RG está previamente seleccionada y vale 100 kΩ. 𝑉𝑉𝑜𝑜𝑜𝑜𝑜𝑜 = −𝑉𝑉𝐼𝐼𝐼𝐼

𝑅𝑅𝐺𝐺 100 𝑅𝑅𝐺𝐺 100 − (−12) = −𝑉𝑉𝐼𝐼𝐼𝐼 + 12 𝑅𝑅1 𝑅𝑅2 𝑅𝑅2 𝑅𝑅1

Ecuación 10. Circuito Sumador empuje

28

Sabiendo que la caja de medidas de la que disponemos detecta señales entre ± 12 V, entonces lo óptimo sería situar el mínimo empuje, es decir, con la hélice parada en -12 V, y que el máximo esté en + 12 V. De esta manera se logrará la mayor resolución posible. Resultan para el empuje unos valores para R1 y R2 de 9,1 kΩ y 12,081 kΩ respectivamente. Para encajar la señal de circuito del par torsor el procedimiento es el mismo:

Ilustración 27. Circuito sumador par

La ecuación que rige el anterior circuito es Ilustración 27. Circuito sumador par. RG está previamente seleccionada y vale 100 kΩ. 𝑉𝑉𝑜𝑜𝑜𝑜𝑜𝑜 = −𝑉𝑉𝐼𝐼𝐼𝐼

𝑅𝑅𝐺𝐺 100 𝑅𝑅𝐺𝐺 100 − 12 = −𝑉𝑉𝐼𝐼𝐼𝐼 − 12 𝑅𝑅1 𝑅𝑅2 𝑅𝑅2 𝑅𝑅1

Ecuación 11. Circuito Sumador torsor

Obteniendo unos valores para R1 y R2 de 5 kΩ y 34,6 kΩ. De esta manera también lograremos obtener una buena resolución del par torsor. Como el empuje y el par realizado por un motor brushless grande pensado para hélices de 11 pulgadas no es el mismo que el realizado por uno pensado para 4 pulgadas, se ha diseñado el circuito electrónico de tal manera que las cuatro resistencias sean intercambiables. De tal manera que se pincharán y se podrán intercambiar en el circuito con facilidad. (Ilustración 28. Resistencias intercambiables).

Ilustración 28. Resistencias intercambiables

29

Se ha utilizado un UA747CN. (Ilustración 29. UA747CN) Está compuesto por dos amplificadores operacionales. La alimentación será a ± 12 V.

Ilustración 29. UA747CN

30

CALIBRACIÓN La calibración llevada a cabo se realizó mediante pesos de 15,18 gramos (pesados en una balanza de alta precisión y realizando una media de todos los pesos posteriormente).

Calibración del empuje vertical: Se fueron colocando uno a uno sobre el banco de ensayos hasta llegar a 7 pesos. Se registraron todas las tensiones que se obtuvieron para cada peso medido en gramos (Tabla 2. Calibración empuje). [V] -9,75 -8,5 -6,15 -3,7 -1,8 0,9 3,5 5

EMPUJE Pesos 0 1 2 3 4 5 6 7

g 0 15,18 30,36 45,54 60,72 75,9 91,08 106,26

Tabla 2. Calibración empuje

Con estos puntos generamos el ajuste lineal mediante Excel (Ilustración 30. Ajuste lineal del empuje).

Ilustración 30. Ajuste lineal del empuje

31

De este último gráfico podemos concluir que la galga extensiométrica presenta una gran linealidad, lo cual supone que las medidas serán de la precisión deseada.

Calibración del par torsor: El procedimiento empleado para la calibración del par torsor fue muy similar al del empuje. Pero en este caso, utilizamos una cuerda cortada a 10,5 centímetros y de 8,08 gramos atada a un extremo de la galga extensiométrica encargada de medir el torsor. Esta cuerda nos permitió ir colocando en su extremo los pesos para estudiar la fuerza vertical que ejercían. Posteriormente de medir esta fuerza, tan solo se multiplicó por la distancia a la galga (el brazo de la fuerza que genera el par) y ya obtuvimos el par torsor en g·cm en función de la tensión de la galga (Tabla 3. Calibración par torsor). [V] -2,9 -2,91 -3,4 -3,95 -4,44 -4,95 -5,48 -5,98 -6,5 -7,03 -7,54 -8,07 -8,5 -9,1

Pesos 0 cable 1 2 3 4 5 6 7 8 9 10 11 12

Torsor g 0 8,08 15,18 30,36 45,54 60,72 75,9 91,08 106,26 121,44 136,62 151,8 166,98 182,16

g·cm 0 84,84 159,39 318,78 478,17 637,56 796,95 956,34 1115,73 1275,12 1434,51 1593,9 1753,29 1912,68

Tabla 3. Calibración par torsor

Mediante estos puntos, generamos el ajuste lineal mediante Excel teniendo en cuenta la tensión y el par en g·cm (Ilustración 31. Ajuste lineal par torsor).

32

Ilustración 31. Ajuste lineal par torsor

33

CONTROL MOTOR BRUSHLESS MEDIANTE ARDUINO Es necesario un control interno del motor brushless que nos permita generar escalones haciendo pasar al motor desde estar parado hasta sus máximas revoluciones por minuto alcanzables. Es por ello que mediante los 5V de salida que proporciona el arduino mediante el pin 9 somos capaces de controlar la velocidad del motor. Dicha salida del arduino irá a parar al ESC o Controlador Electrónico de Velocidad. Se mandará en forma de PWM, ya que es la señal que el ESC reconoce como válida. El arduino cuenta con una función en la que con introducirle un valor entre 0 y 180, genera un PWM entre sus valores mínimo y máximo. Para ello se ha desarrollado un código en C (ANEXO B – CÓDIGO PWM ARDUINO) con una máquina de estados compuesta de dos estados (Ilustración 32. Representación de los dos modos de operación):

Ilustración 32. Representación de los dos modos de operación

Mediante un interruptor se seleccionará uno de los dos estados: Manual: Mediante un potenciómetro circular permite hacer tests manuales del banco de ensayos. En la posición mínima el motor estará parada, y en la máxima estará la máxima velocidad del motor, habiendo entre dichos puntos de operación una escala lineal de velocidad. Automático: Al accionar el botón automático se realizará un barrido de hasta seis escalones de velocidad distintos. En los cuales se mantendrá cierto tiempo con el fin de que se alcance el régimen permanente y se estabilice la velocidad para cada una de las velocidades. 34

Además, el código cuenta con una seguridad para evitar el accionamiento del motor haciéndolo pasar directamente a la velocidad máxima; situación peligrosa ya que las hélices son de hasta once pulgadas. Se ha impedido el paso al modo manual o al automático si el potenciómetro de regulación de velocidad no está situado en su mínimo. Así lograremos evitar los posibles accidentes que puedan surgir.

35

REGISTRO DE DATOS El registro de datos ha sido realizado mediante la conexión de las seis salidas del banco de ensayos (Ilustración 20. Variables de salida del banco de ensayos) a una caja de medidas (Ilustración 33. Caja de medidas). Las etiquetas mostradas en Ilustración 20. Variables de salida del banco de ensayos irán a parar a la caja de medidas conectándose con su número asociado. Esta caja de medidas también proporcionará la alimentación de las células de carga. Por eso también se requerirá la conexión de los ±12V y la tierra.

Ilustración 33. Caja de medidas

La caja de medidas irá a su vez conectada mediante una interfaz al ordenador (Ilustración 34. Conexión CPC al ordenador).

Ilustración 34. Conexión CPC al ordenador

Mediante la herramienta Matlab seremos capaces de registrar todas las variables y ajustar el empuje y el par torsor mediante los resultados de la calibración. De esta manera somos capaces de obtener los resultados mostrados en Ilustración 35. Fuerza vertical o empuje y en Ilustración 37. Par torsor o de arrastre.

36

Registro de la fuerza vertical o empuje 1000

V

force

[g]

800 600 400 200 0 -200 0

10

20

t[s]

30

40

50

Ilustración 35. Fuerza vertical o empuje

Para el cálculo del empuje o fuerza vertical en gramos, es necesaria aplicar la conversión de la ecuación de la recta que obtuvimos en el apartado de calibración. Aplicando ese cambio de escala obtenemos la fuerza vertical directamente en gramos. (Ilustración 36. Diagrama de bloques fuerza vertical)

Ilustración 36. Diagrama de bloques fuerza vertical

Las señales están filtradas para eliminar el ruido que aparece en las medidas.

37

Registro del par torsor o de arrastre 2500

1500 1000

V

torque

[g·m]

2000

500 0 0

10

20

t[s]

30

40

50

Ilustración 37. Par torsor o de arrastre

Lo mismo que con el empuje sucede con el par torsor o de arrastre. Para obtenerlo en gramos por metro es necesario aplicar la conversión obtenida de la calibración del banco (Ilustración 38. Diagrama de bloques par torsor).

Ilustración 38. Diagrama de bloques par torsor

Registro de las revoluciones por minuto Para el registro de las revoluciones por minuto ha sido necesario crear un detector de flanco (Ilustración 39. Contador mediante detección de flancos) que permitiese contar las veces que hay un cambio de color mientras está girando el motor.

Ilustración 39. Contador mediante detección de flancos

38

Después se procede a calcular la velocidad a partir del contador del encoder, y para ello se realizan los pasos mostrados en Ilustración 40. Cálculo de la velocidad a partir del contador del encoder.

Ilustración 40. Cálculo de la velocidad a partir del contador del encoder

Mediante los dos pasos mencionados anteriormente obtenemos finalmente el cálculo de las vueltas que da el motor medido en radianes por segundo, que multiplicando por 30 y dividiendo por pi nos resulta en revoluciones por minuto (Ilustración 41. Cálculo de las revoluciones por minuto).

Ilustración 41. Cálculo de las revoluciones por minuto

6000 5000

rpm

4000 3000 2000 1000 0 0

10

20

t[s]

30

40

50

Ilustración 42. Rpm

39

Registro de la tensión y corriente del motor El circuito que se ha integrado para la lectura de la tensión y corriente del motor es el representado en Ilustración 43. Circuito electrónico medidor de corriente y tensión.

Ilustración 43. Circuito electrónico medidor de corriente y tensión

Para la tensión del motor en Matlab tan solo es necesario aplicar la contrapartida de la ganancia que posee el circuito que lee la tensión, es decir, si nuestro circuito del banco de ensayos (Ilustración 44. Circuito para la lectura de tensión y corriente) tiene una ganancia de 1/15, pues en el diagrama de bloque de Matlab la multiplicaremos por 15(Ilustración 45. Diagrama de bloques de la tensión).

Ilustración 44. Circuito para la lectura de tensión y corriente

Ilustración 45. Diagrama de bloques de la tensión

40

Y para el de corriente el mecanismo es el mismo, solo que aquí, el factor que le aplica nuestro circuito a la corriente es una ganancia de 3,3/90. Por lo que para compensarlo, habrá que poner un bloque con una ganancia de 90/3,3 (Ilustración 46. Diagrama de bloques de la corriente).

Ilustración 46. Diagrama de bloques de la corriente

Con estos dos bloques ya somos capaces de registrar la tensión y la corriente del motor, obteniendo los resultados mostrados en Ilustración 47. V_mot y en Ilustración 48. I_mot. 12

V

mot

[V]

10 8 6 4 2 0 0

10

20

t[s]

30

40

50

Ilustración 47. V_mot

10

I

mot

[A]

8 6 4 2 0

0

10

t[s]

20

30

Ilustración 48. I_mot

Se puede observar que la corriente absorbida por el motor va aumentando a medida que se le imponen más revoluciones por minuto si comparamos con la gráfica mostrada en Ilustración 42. Rpm. Por el contrario, la tensión del motor va cayendo. 41

AJUSTE POTENCIAL Para el ajuste potencial se ha utilizado el código ANEXO C – CÓDIGO AJUSTE CURVAS. El método para realizar el ajuste es el siguiente: En primer lugar debemos tener guardado un buen ensayo con la hélice y el motor que queramos experimentar. Se recomienda realizar un ensayo como el que se propone en el ANEXO B – CÓDIGO PWM ARDUINO en el modo automático. Una vez registrado el ensayo en el workspace de Matlab, nos vamos al fichero PREPARACIÓN DE DATOS (PREP_DATOS_AJUSTE.M) y en este debemos modificar una de las últimas líneas; en caso de que deseemos estimar el factor de empuje debemos dejar sin comentar la línea de debajo de Fuerza Vertical que define la función a ajustar y dejar comentada la del par torsor. Y en el caso en que el factor que queramos estimar sea el de arrastre o torsor la línea que debe estar comentada es la del empuje vertical y la que no será la del torsor. Al ejecutarlo saldrá una imagen en la que tendremos que presionar la tecla INTRO para después seleccionar seleccionar la zona de interés; poco antes de que comience a girar el motor hasta el último escalón.

Vertical force [g]

Una vez realizado este paso obtenemos las señales filtradas del empuje y del torsor enfrentadas con las revoluciones por minuto. 1000

500

0 -1000

0

1000

2000

0

1000

2000

rpm

3000

4000

5000

6000

3000

4000

5000

6000

torsor [g·cm]

3000 2000 1000 0 -1000

rpm

Ilustración 49. Filtración de señales

42

Una vez realizado este proceso, debemos abrir el fichero CURVA A AJUSTAR (CURVA.M) y modificar la función en el caso en que no sea esa la curva que queramos ajustar. El siguiente paso sería ejecutar el archivo AJUSTE POTENCIAL (AJUSTE.M) y ya obtendríamos el factor de arrastre o de empuje. En el caso en que la curva a ajustar tenga más de un parámetro, debemos indicarlo en el fichero AJUSTE POTENCIAL (AJUSTE.M) poniendo dos variables Th con sus respectivas inicializaciones asociadas.

43

CAPITULO III.RESULTADOS Y CONCLUSIONES Los resultados obtenidos para los factores de empuje y de arrastre en función de la hélice utilizada se muestran en la siguiente tabla (Tabla 4. Resultados factores de empuje y arrastre). Curva de ajuste: X=rpm2 Hélice bipala Hélice bipala Hélice tripala Hélice bipala

Dimensiones 6" 9x4,7" 9x4,5" 13x4,7”

b 5,446E-07 7,890E-06 1,270E-05 2,444E-05

d 7,325E-09 1,534E-07 2,787E-07 5,198E-07

Curva de ajuste: X=rpmth b 5,772E-07 3,048E-07 6,056E-07 3,765E-06

th 2,0127 2,5157 2,4876 2,2991

d 6,765E-09 9,026E-08 1,584E-07 2,005E-08

th 2,0347 2,0863 2,0921 2,5197

Tabla 4. Resultados factores de empuje y arrastre

Como podemos observar, el mayor factor de empuje lo logramos en la hélice de mayor tamaño, la de doce pulgadas. Comparando los resultados para las hélices bipala y tripala de las mismas proporciones se puede deducir que la tripala presenta factores de arrastre y de empuje mayores que los bipala. De tal manera que siempre será preferible escoger una hélice tripala a una bipala. A continuación se muestran los ajustes de las curvas de donde se han extraído los parámetros mostrados en Tabla 4. Resultados factores de empuje y arrastre. También se puede observar que es más eficiente una hélice de mayor tamaño girando a menos vueltas que una de menor tamaño; entendiendo por eficiencia, para un mismo consumo de potencia proporcionar un mayor empuje.

45

Vertical force [g]

1000

500

0 -1000

0

1000

2000

0

1000

2000

rpm

3000

4000

5000

6000

3000

4000

5000

6000

torsor [g·cm]

3000 2000 1000 0 -1000

rpm

Ilustración 50. Filtración señales hélice bipala 13x4,7"

De la filtración mostrada en Ilustración 50. Filtración señales hélice bipala 13x4,7". Obtenemos posteriormente los ajustes para la misma hélice; Ilustración 51. Ajuste potencial V_torque VS rpm Hélice bipala 13x4,7” e Ilustración 52. Ajuste potencial V_force VS rpm Hélice bipala 13x4,7”. 0.2 Salida medida Salida simulada Error

0.15

0.1

0.05

0

-0.05 -100

0

100

200

X

300

400

500

600

Ilustración 51. Ajuste potencial V_torque VS rpm Hélice bipala 13x4,7”

46

10 Salida medida Salida simulada Error

8 6 4 2 0 -2 -100

0

100

200

X

300

400

500

600

Ilustración 52. Ajuste potencial V_force VS rpm Hélice bipala 13x4,7”

Lo mismo sucede para las otras dos hélices testeadas, en primer lugar filtramos las señales para una mejor comparación de las variables (Ilustración 53. Filtración señales hélice bipala 9x4,7” e Ilustración 56. Filtración señal hélice tripala 9x4,5”), y posteriormente las ajustamos (Ilustración 54. Ajuste potencial V_torque VS rpm Hélice bipala 9x4,7", Ilustración 55. Ajuste potencial V_force VS rpm Hélice bipala 9x4,7", Ilustración 57. Ajuste potencial V_torque VS rpm Hélice tripala 9x4,5" e Ilustración 58. Ajuste potencial V_force VS rpm Hélice tripala 9x4,5").

Vertical force [g]

400 300 200 100 0 -1000

0

1000

2000

0

1000

2000

3000

4000

5000

6000

7000

3000

4000

5000

6000

7000

rpm

torsor [g·cm]

800 600 400 200 0 -200 -1000

rpm

Ilustración 53. Filtración señales hélice bipala 9x4,7”

47

0.07

Salida medida Salida simulada Error

0.06 0.05 0.04 0.03 0.02 0.01 0 -0.01 -100

0

100

200

300 X

400

500

600

700

Ilustración 54. Ajuste potencial V_torque VS rpm Hélice bipala 9x4,7" 3.5

Salida medida Salida simulada Error

3 2.5 2 1.5 1 0.5 0 -0.5 -100

0

100

200

300 X

400

500

600

700

Ilustración 55. Ajuste potencial V_force VS rpm Hélice bipala 9x4,7"

48

Vertical force [g]

500 400 300 200 100 0 -100 -1000

0

1000

2000

0

1000

2000

rpm

3000

4000

5000

6000

3000

4000

5000

6000

torsor [g·cm]

1500 1000 500 0 -500 -1000

rpm

Ilustración 56. Filtración señal hélice tripala 9x4,5” 0.12

Salida medida Salida simulada Error

0.1 0.08 0.06 0.04 0.02 0 -0.02 -100

0

100

200

X

300

400

500

600

Ilustración 57. Ajuste potencial V_torque VS rpm Hélice tripala 9x4,5"

49

5 Salida medida Salida simulada Error

4

3

2

1

0

-1 -100

0

100

200

X

300

400

500

600

Ilustración 58. Ajuste potencial V_force VS rpm Hélice tripala 9x4,5"

50

ANEXO A – CÓDIGO MODELOS NO LINEALES ROTORES BRUSHLESS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

function [dw,w1] = M1(w,U,param) % Parámetros utilizados d = param(4); Km = param(5); Rm = param(6); % Velocidades de los motores w1 = w(1); w2 = w(2); w3 = w(3); w4 = w(4); % Tensión aplicada a los 4 motores U1 = U(1); U2 = U(2); U3 = U(3); U4 = U(4);

19 20

% Motor DC brushless numero i

21 22

% Km*(umi-Km*wi)/Rm = Ir*dw1/dt + d*wi^2 dw1=1/Ir*(Km*(U1-Km*w1)/Rm-d*w1^2);

23 24

dw2=1/Ir*(Km*(U2-Km*w2)/Rm-d*w2^2); dw3=1/Ir*(Km*(U3-Km*w3)/Rm-d*w3^2);

25 26

dw4=1/Ir*(Km*(U4-Km*w4)/Rm-d*w4^2);

27

% Vector de derivadas de las variables de estado 51

28 29 30 31 32

dw=[dw1 dw2 dw3 dw4]'; % Ecuaciones de salida w = [w1 w2 w3 w4]';

52

VARIABLES ARTIFICALES

54

CÓDIGO BLOQUE M1 function [d2Ang,Y] = M1(dAng,U, param) % Parámetros % Inercia eje X Ix = param(8); % Inercia eje Y Iy = param(9); % Inercia eje Z Iz = param(10); % Longitud brazo L = param(11); % SUPONIENDO Jr = Ir = Rotor Intertia Ir = param(7); % Gravedad g = param(1);

% Entradas % b*(w2^2 - w4^2) U2 = U(2); % b*(w1^2 - w3^2) U3 = U(3); % d*(w1^2 + w3^2 - w2^2 - w4^2) U4 = U(4); U(5) = w1 - w2 + w3 - w4; U5 = U(5);

% Variables de estado que resultan de integrar d2Ang % Velocidad eje X dPhi = dAng(1); % Velocidad eje Y dTh = dAng(2); % Velocidad eje Z dPsi= dAng(3); 55

% Ecuaciones de estado d2Phi = dTh*dPsi*(Iy-Iz)/Ix - (Ir/Ix)*dTh*U5 + (L/Ix)*U2; d2Th = dPhi*dChi*(Iz-Ix)/Iy - (Ir/Iy)*dPhi*U5 + (L/Iy)*U3; d2Psi = dPhi*dTh*(Ix-Iy)/Iz + (1/Iz)*U4; % Vector de estado: d2Ang=[d2Phi d2Th d2Psi]'; % Ecuaciones de salida Y = [dPhi dTh dPsi]';

56

CÓDIGO BLOQUE M2 function [d2X,Y] = M2(dX,U1,Ang, param) % Parámetros % Factor de empuje b = param(3); % Factor de arrastre (par) d = param(4); % Masa m = param(2); % Gravedad g = param(1); % Entradas % Ángulo de Cabeceo. Roll Phi = Ang(1); % Ángulo de Alabeo. Pitch Th = Ang(2); % Ángulo de guiñada. Yaw Psi = Ang(3);

% Variables % Velocidad dx = dX(1); % Velocidad dy = dX(2); % Velocidad dz = dX(3);

de estado que resultan de integrar d2X eje X eje Y eje Z

% Ecuaciones de estado % (12) Voos d2x = -(cos(Phi)*sin(Th)*cos(Psi)+sin(Phi)*sin(Psi))*U1/m; d2y = -(cos(Phi)*sin(Th)*sin(Psi)-sin(Phi)*cos(Psi))*U1/m; d2z = g - (cos(Phi)*cos(Th))*U1/m; 57

% % La matriz de rotacion (SR cuerpo => SR inercial) es: % R = [cos(Chi)*cos(Th) cos(Chi)*sin(Th)*sin(Phi)sin(Chi)*cos(Phi) cos(Chi)*sin(Th)*cos(Phi)+sin(Chi)*sin(Phi); % sin(Chi)*cos(Th) sin(Chi)*sin(Th)*sin(Phi)+cos(Chi)*cos(Phi) sin(Chi)*sin(Th)*cos(Phi)-cos(Chi)*sin(Phi); % -sin(Th) cos(Th)*sin(Phi) cos(Th)*cos(Phi)] % ab = R'*([0 0 g] - [d2x d2y d2z])'; % Vector de estado: d2X = [d2x d2y d2z]'; % Ecuaciones de salida Y = [dx dy dz]';

58

ANEXO B – CÓDIGO PWM ARDUINO

59

60

ANEXO C – CÓDIGO AJUSTE CURVAS PREPARACIÓN DE DATOS (PREP_DATOS_AJUSTE.M) 1 2

clf plot([v_force(:,2) v_torque(:,2) n_rpm(:,2)])

3 4

legend('Vertical force [g]','Torsor [g·cm]', 'rpm') [num,den] = besself(4,10);

5 6

Filtro = tf(num,den); Filtrod = c2d(Filtro,ts);

7 8

[B,A] = tfdata(Filtrod, 'v'); grid

9 10

disp('Hacer zoom en la zona de interés de la figura') disp('Después, pulsar cualquier tecla')

11 12

pause [aux1,aux2]=ginput(2);

13 14

aux1=round(aux1); x=n_rpm(aux1(1):aux1(2),2);

15 16

y1=v_force(aux1(1):aux1(2),2); y2=v_torque(aux1(1):aux1(2),2);

17 18 19 20 21 22 23 24 25 26 27

t = n_rpm(aux1(1):aux1(2),1)-n_rpm(aux1(1),1); xf = filtfilt(B,A, x); y1f = filtfilt(B,A, y1); y2f = filtfilt(B,A, y2);

figure(1) subplot(311) plot(t,[x xf]) ylabel('rpm') 61

28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65

xlabel('t [s]') grid subplot(312) plot(t,[y1 y1f]) ylabel('Vertical force [g]') xlabel('t [s]') grid subplot(313) plot(t,[y2 y2f]) ylabel('torsor [g·cm]') xlabel('t [s]') grid set(figure(1),'Name','rpm, V_Force & Torque: filtradas','NumberTitle','off') % relaciones Fuerza vertical VS rpm & Torsor VS rpm figure(2) subplot(211) plot(xf,y1f,'o') xlabel('rpm') ylabel('Vertical force [g]') grid subplot(212) plot(xf,y2f,'o') ylabel('torsor [g·cm]') xlabel('rpm') grid set(figure(2),'Name','Fuerza vertical VS rpm & Torsor VS rpm','NumberTitle','off') %Conversión a rad/s x =xf*2*pi/60; %Fuerza vertical %Conversión a N y = y1f*9.81/1000; %Torsor %Conversión a N·m %y = y2f*9.81/(1e5); retur

62

AJUSTE POTENCIAL (AJUSTE.M) 1 2 3 4 5 6 7 8 9 10 11

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ALGORITMO DE ESTIMACION DE PARAMETROS POR MINIMOS CUADRADOS %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

12 13

PARAMETROS Y VALORES INICIALES %%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

14 15

% parametros de la funcion th=[1e-6];

16 17

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% theta=th;

18 19

Np=length(theta); Nd=length(x);

20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

clear theta thaux dgn J format compact format short e %set_param('sistema','MaxConsecutiveZCsMsg','none'); %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Numero de parametros % numero de datos

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% PARAMETROS DEL ALGORITMO %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% tol1=1; % Tolerancia (variacion de la funcion objetivo 'V') tol2=1; % Tolerancia (variacion de los parametros 'theta') V=1; % Inicializacion del valor anterior la funcion objetivo Vaux=0.01; % Inicializacion del valor nuevo de la funcion objetivo dgn=ones(1,Np); % Direccion de Gauss-Newton (incremento de los parametros) niter=0; % Numero de iteraciones %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% ALGORITMO DE AJUSTE 63

38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % El algoritmo se ejecuta mientras (bucle while) la variacion de % la funcion objetivo en % es mayor que 'tol1' o el maximo incremento % en % de los parametros es mayor que 'tol2'. % Tambien se puede usar como criterio el numero de iteraciones. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% while (100*(V-Vaux)/Vaux>tol1 || 100*max(abs(dgn./theta))>tol2) %& niter

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.