Sunteți pe pagina 1din 83

Trabajo Fin de Grado

Grado en Ingeniera Aeroespacial


Intensificacin en Navegacin Area

DISEO Y CONSTRUCCIN DE UN
PROTOTIPO DE SISTEMA MOTOR-HLICE-
BALANCN

Autor: Eduardo Cordero Mallado


Tutor: Manuel Gil Ortega Linares

Equation Chapter 1 Section 1

Dep. de Ingeniera de Sistemas y Automtica


Escuela Tcnica Superior de Ingeniera
Universidad de Sevilla
Sevilla, 2016
Trabajo Fin de Grado
Grado en Ingeniera de Aeroespacial
Intensificacin en Navegacin Area

DISEO Y CONSTRUCCIN DE UN
PROTOTIPO DE SISTEMA MOTOR-HLICE-
BALANCN

Autor:
Eduardo Cordero Mallado

Tutor:
Manuel Gil Ortega Linares
Profesor titular

Departamento de Ingeniera de Sistemas de Automtica


Escuela Tcnica Superior de Ingeniera
Universidad de Sevilla
Sevilla, 2016

iii
Trabajo Fin de Grado:
DISEO Y CONSTRUCCIN DE UN PROTOTIPO DE SISTEMA MOTOR-HLICE-BALANCN

Autor: Eduardo Cordero Mallado

Tutor: Manuel Gil Ortega Linares

El tribunal nombrado para juzgar el Proyecto arriba indicado, compuesto por los siguientes miembros:

Presidente:

Vocales:

Secretario:

Acuerdan otorgarle la calificacin de:

v
Sevilla, 2016

El Secretario del Tribunal


A mi familia, a mis padres, a mis
hermanos y a mi tata. Sin ellos no
sera quien soy, no tendra lo que
tengo y no habra llegado hasta
donde he llegado. Este ttulo les
pertenece tanto como a m.
A mis amigos, mi segunda
familia, los que me han apoyado y
respetado en cada momento.
A mis compaeros, sin duda lo
mejor que me llevo de estos aos.
Muchas horas juntos, amigos que
durarn toda la vida, personas a
las que admiro.

vii
Resumen

En el presente proyecto se lleva a cabo el diseo de un prototipo de un sistema motor-hlice-balancn. Esto


incluye la eleccin de componentes, construccin, integracin de los mismos y el control del sistema conjunto.
Un sistema motor-hlice-balancn consiste en una barra que tiene como grado de libertad el giro alrededor de
un eje horizontal, con un movimiento contenido en el plano vertical. El movimiento lo produce la fuerza de
empuje que origina el giro de una hlice, acoplada a un motor, que se encuentra en el extremo de la barra. La
variacin de la velocidad de giro de la hlice permite controlar la fuerza de empuje de la misma, consiguiendo
as mover la barra hacia una posicin determinada. Dicha posicin se determina a travs de la medida del
ngulo que forma la barra respecto de la vertical. Se plantea dos sensores para la medida del ngulo o posicin:
una unidad de medidas inerciales (IMU, Inertial Measurement Unit), y un potencimetro.
Por otro lado, la integracin de los datos y el control del sistema se realizan en el entorno Simulink de
MatLab, el cual permite, con un ordenador, controlar la velocidad de giro del motor y utilizar la medida del
ngulo para controlar el sistema. Se ha utilizado un dispositivo Arduino como interfaz entre sistema y
ordenador.

ix
ndice

Resumen ix
ndice x
ndice de Tablas xii
ndice de Figuras xiii
Notacin i
1 Estado del arte y objeto 1
2 Introduccin 3
2.1. Introduccin 3
2.2. Contenido 3
3 Componentes del Sistema 5
3.1 Descripcin detallada de la Planta 6
3.2 Motor Brushless 8
3.2.1 Caractersticas 9
3.2.2 Funcionamiento 9
3.2.3 Motor utilizado: Motor del Parrot AR.Drone 1.0 10
3.3 Variador electrnico o ESC 11
3.3.1 ESC utilizado: ESC YGE 30 i 12
3.4 Unidad de Medidas Inerciales, IMU 13
3.4.1 Unidad de medidas inerciales utilizada: MPU 6050 13
3.5 Potencimetro 13
3.5.1 Potencimetro utilizado: Potencimetro lineal giratorio de 10K 14
3.6 Arduino 15
3.6.1 Arduino utilizado: Arduino Mega 2560 15
3.7 Entorno Simulink de MatLab 16
3.7.1 Versin de Matlab utilizada 16
3.7.2 Modelo Simulink 17
3.8 Fuente de Alimentacin 17
3.8.1 Fuente de alimentacin utilizada: EP-920 de Silver Electronics 17
4 Comportamiento del Sistema 19
4.1 Estudio del Movimiento 19
4.1.1 Fuerzas que intervienen 19
4.1.2 Zonas de estabilidad e inestabilidad 21
4.2 Modelo Matemtico 22
4.2.1 Momento cintico 22
4.2.2 Ecuacin del movimiento 24
4.2.3 Linealizacin de la funcin de transferencia 25
5 Modelo de Simulink 27
5.1 Caractersticas del modelo en Simulink 27
5.1.1 Caractersticas de la comunicacin entre componentes 28
5.1.2 Simulink Support package for Arduino Hardware 29
5.1.3 Simulacin en Tiempo Real. Modo External 31
5.2 Preparacin de parmetros del modelo Simulink 32
5.3 Modelo de envo de seal PWM: Control del motor 34
5.3.1 Arranque del motor 35
5.4 Modelo de recepcin de datos del potencimetro giratorio 36
5.5 Modelo de recepcin de datos del sensor IMU 37
6 Eleccin del sensor de posicin 39
6.1 Medicin del ngulo con sensor inercial MPU6050 39
6.1.1 Pruebas experimentales con IMU 40
6.2 Medicin del ngulo con sensor potencimetro giratorio 42
6.2.1 Pruebas experimentales con potencimetro 42
7 Control del Sistema 47
7.1 Identificacin de Parmetros 47
7.1.1 Caracterstica esttica 47
7.1.2 Identificacin del sistema. Funcin de transferencia 54
7.2 Control sobre el sistema 60
7.2.1 Modelo de Simulink 62
7.2.2 Simulacin con control 63
Bibliografa 65

xi
NDICE DE TABLAS

Tabla 7-1. Medida experimental de la fuerza generada por la hlice en funcin de la seal de control 52
NDICE DE FIGURAS

Figura 1. Representacin de la planta formada por la estructura mvil (rodeada en verde) y la estructura de
soporte fija 6
Figura 2. Rodamiento de bolas 6
Figura 3. Estructura fija 7
Figura 4. Parte mvil del sistema: barra, soporte, motor y hlice 7
Figura 5. Conexin entre motor-ESC-Arduino-Ordenador 8
Figura 6. Esquema de motor de corriente continua con y sin escobillas (http://marylandev.org/wp-
content/uploads/2015/07/brushed-brushless.jpg) 9
Figura 7. Comparacin de posicin de imanes permanentes de un motor brushless inrunner y outrunner 10
Figura 8. Motor del Parrot AR.Drone 1.0 junto con el controlador de fbrica (store.parrot.com) 11
Figura 9. Estructura de soporte que acopla el motor con la hlice 11
Figura 10. Forma de una seal PWM para diferentes valores del Duty Cycle 12
Figura 11. Variador utilizado: ESC YGE 30 i 12
Figura 12. Unidad de medidas inerciales MPU 6050. 13
Figura 13. Esquema de potencimetro rotatorio. 14
Figura 14. Potencimetro lineal rotatorio de 10K utilizado. 14
Figura 15. Placa Arduino MEGA 2506 (izquierda) y software de programacin de Arduino (derecha) 15
Figura 16. Entorno Simulink de Matlab R2013b. Librera de bloques (izquierda) y ejemplo de modelo
(derecha) 16
Figura 17. Fuente de alimentacin utilizada 18
Figura 18. Esquema del conjunto del sistema a analizar 19
Figura 19. Fuerzas que actan sobre la estructura mvil en equilibrio. 20
Figura 20. Cuadrantes del plano vertical en los que se mueve el sistema. Posicin controlada (zona verde, 1 y
2) y no controlada (zona roja, 3 y 4) 21
Figura 21. Definicin de ejes y sistemas de referencia 22
Figura 22. Entrada y salida de la funcin de transferencia G(s) que representa el sistema 25
Figura 23. Esquema del flujo de informacin entre Ordenador-Arduino-Sistema 27
Figura 24. Pines de seal PWM, entrada y salida analgica y de comunicacin I2C del Arduino Mega 2560
28
Figura 25. Librera de bloques Simulink Support Package for Arduino Hardware 29
Figura 26. Lista de paquetes disponibles para Matlab donde hay que seleccionar Arduino 31
Figura 27. Seleccin del modo de simulacin External en el entorno Simulink 31
Figura 28. Formar de iniciar Simulink: escribir simulink (izquierda) o pulsar en Simulink Library (derecha)
32
Figura 29. Crear nuevo modelo en Simulink 32
Figura 30. Preparacin del modelo para funcionar en Arduino Mega 33

xiii
Figura 31. Seleccin del Hardware Arduino Mega 2560 33
Figura 32. Seleccin del puerto USB al que est conectado el Arduino 33
Figura 33. Configuracin de parmetros del apartado Solver 34
Figura 34. Deploy to Hardware 34
Figura 35. Modelo sencillo de envo de seal PWM (izquierda) y ventana de parmetros del bloque PWM
(derecha) 35
Figura 36. Modelo bsico de recepcin de seal analgica (izquierda) y ventana de parmetros del bloque
Analog Input (derecha) 36
Figura 37. Bloque S-Function que permite la comunicacin I2C con el sensor MPU6050 37
Figura 38. Posicin de la IMU respecto de la gravedad 39
Figura 39. Seal analgica proporcionada por el acelermetro durante una simulacin con el motor apagado y
encendido 41
Figura 40. Seal analgica proporcionada por el acelermetro durante una simulacin con el motor apagado y
encendido 41
Figura 41. Seal analgica proporcionada por el potencimetro durante una simulacin 42
Figura 42. Lmites del valor de la seal analgica del potencimetro: 0 y 1023 43
Figura 43. Relacin entre ngulo girado en el potencimetro y seal analgica 44
Figura 44. Bloque para implementar la ecuacin que relaciona la seal del potencimetro con el valor en
ngulos de su posicin 44
Figura 45. Seal antes y despus de encender el motor 45
Figura 46. Entrada y salida del sistema a controlar 47
Figura 47. Entradas y salidas de cada subsistema 47
Figura 48. Peso utilizado para medir la fuerza de empuje que genera la hlice 48
Figura 49. Medicin experimental de la fuerza generada por el giro de la hlice 49
Figura 50. Modelo de Simulink utilizado para enviar la seal de control al motor 50
Figura 51. Medicin inicial del peso con el motor apagado 51
Figura 52. Fuerza generada por la hlice en funcin de la seal de control 52
Figura 53. Ventana de ajuste de la opcin Basic Fitting que aparece al abrir el men Tools>Basic Fitting
53
Figura 54. Funcin que aproxima la curva de la seal de control frente a la fuerza generada por la hlice 54
Figura 55. Bloque del modelo de Simulink que se encarga de pasar de valor de Fuerza a Seal de Control
54
Figura 56. Ejemplo grfico de sobreoscilacin y tiempo de pico 55
Figura 57. Respuesta del sistema ante una entrada escaln de subida de 0.5 Newtons. La figura superior es la
respuesta de la salida del sistema (seal azul) producida por la seal de entrada (seal roja) 56
Figura 58. Respuesta del sistema ante una entrada escaln de bajada de 0.5 Newtons 58
Figura 59. Respuesta real del Sistema (seal azul) junto a respuesta de la funcin de transferencia (seal roja)
ante la misma entrada escaln 59
Figura 60. Modelo utilizado para simular la entrada escaln con la funcin de transferencia 60
Figura 61. Diagrama de bloques del sistema con control por realimentacin 60
Figura 62. Diagrama de bloques del sistema con control por realimentacin 62
Figura 63. Resultados de la simulacin con control 64
xv
Notacin

sen Funcin seno


cos Funcin coseno
tg Funcin tangente
arctg Funcin arco tangente
y x Derivada parcial de y respecto
x Notacin de grado, x grados.
: Tal que
< Menor o igual
> Mayor o igual
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

1 ESTADO DEL ARTE Y OBJETO

El diseo de un sistema como el que aqu se realiza se encuentra normalmente ligado al entorno acadmico.
Son varios los proyectos ya realizados en diferentes universidades que estn relacionados, en mayor o menor
medida, con lo que aqu se lleva a cabo. Resulta de inters acadmico ya que requiere aplicar el conocimiento
sobre diversas materias, como puede ser desde la conexin fsica de dispositivos electrnicos, hasta el
tratamiento de seales, programacin de dispositivos, o diseo de sistemas de control.
Una de las primeras cosas en la que pueden variar los proyectos realizados es en los componentes fsicos que
lo componen, entre ellos el tipo de motor utilizado y el dispositivo para medir la posicin. Respecto al tipo de
motor, la mayora de los proyectos utilizan un motor tipo brushless (sin escobillas), aunque tambin hay casos
en los que se utiliza motores de corriente continua con escobillas. La principal razn de utilizar motores
brushless es que presenta muy buenas prestaciones y ventajas respecto de uno con escobillas, estando su uso
muy generalizado en el mundo del aeromodelismo con una gran variedad de motores en el mercado. En
general, de ambos motores se ha recibido un comportamiento correcto ante la seal de control y el uso de
cualquiera de los dos tipos es vlido para este tipo de proyectos.
Por otro lado, para la medicin de la posicin se suele usar un potencimetro giratorio como sensor. ste se
coloca en el eje de giro del sistema, de tal forma que el eje de giro del sistema es solidario al eje de giro del
potencimetro, movindose ambos a la vez. El funcionamiento del potencimetro se basa, principalmente, en
una resistencia variable que traduce la posicin del potencimetro en una seal analgica con un determinado
voltaje. De forma experimental se puede relacionar la medida de voltaje proporcionada con el ngulo o
posicin del sistema, permitiendo medir el ngulo que forma el sistema respecto de una referencia. En los
diferentes casos en los que se ha utilizado se han obtenido datos suficientemente precisos y fiables. Otro tipo
de sensor que puede ser utilizado para la medicin de la posicin del sistema es la unidad de medidas
inerciales, o IMU (Inertial Measurement Unit), que se basa en otros procedimientos para determinar la
posicin del sistema y que, debido a su uso en gran variedad de dispositivos, resulta de gran inters.

El objetivo de este proyecto es el diseo y construccin de un prototipo de un sistema tipo balancn desde cero,
cuyo movimiento ser proporcionado por la fuerza generada por el giro de una hlice acoplada a un motor y
situada en su extremo. Principalmente se centra en el diseo y seleccin de componentes, as como su
construccin e integracin para su posterior control. Todo ello teniendo en cuenta que el prototipo debe estar
diseado para ser utilizado como futuro equipo de prcticas en la Universidad de Sevilla.
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

2 INTRODUCCIN

En este captulo se introduce el proyecto a realizar y la forma en que se ha estructurado este documento. El
objetivo de este apartado es aportar una visin global del proyecto de forma que queden claros los conceptos
principales de cada parte.

2.1. Introduccin
El conjunto motor-hlice-balancn propone un problema de control de inters debido a su naturaleza inestable.
Esto supone que si se quiere alcanzar un punto de equilibrio del sistema se ha de implementar algn tipo de
control sobre el mismo. A nivel acadmico resulta interesante ya que para obtener el modelo de control se
utilizan conocimientos tanto de fsica como de control, as como de programacin. Lo interesante es aplicar
diferentes tipos de control con el fin de compararlos, pudiendo implementarlos directamente y visualizarlos en
tiempo real en la realidad, aunque el principal objetivo de este proyecto no es el control del sistema, sino la
construccin del mismo.

2.2. Contenido
En el presente proyecto se empieza en el Captulo 3 por definir en detalle los componentes del sistema, tanto
hardware como software. Se explica su funcionamiento y caractersticas ms significativas para tener un
conocimiento de lo que hace falta para crear el sistema.
Posteriormente en el Captulo 4 se realiza un estudio del comportamiento del sistema con el objetico de
obtener la ecuacin de movimiento del sistema y su modelo matemtico. Se pretende llegar a la funcin de
transferencia que define el sistema para despus poder controlarlo.
Una vez se define el comportamiento del sistema se detalla en el Captulo 5 las caractersticas del modelo de
Simulink, tanto los bloques que lo forman como la configuracin de parmetros de simulacin. Se intenta
explicar la funcin de cada bloque segn las necesidades del modelo.
Una vez se conoce como debe ser el modelo para poder hacer funcionar el sistema, se compara en el Captulo
6 los dos sensores que se han escogido como medida de la posicin del sistema. Se realizan pruebas
experimentales con Simulink y se analizan los resultados.
Finalmente, en el Captulo 7 se obtiene una funcin de transferencia alternativa a la obtenida en el Captulo 4
haciendo pruebas experimentales con seales de entrada de escaln y se crea un controlador bsico para
realizan una simulacin con control sobre el sistema.
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

3 COMPONENTES DEL SISTEMA

Este captulo se centra en los componentes principales que constituyen el sistema motor-hlice-balancn, tanto
los componentes de la estructura como el software y hardware. Comienza por describir detalladamente la
planta y su funcionamiento, para posteriormente describir las caractersticas y el funcionamiento general de
cada componente, as como el modelo especfico que ha sido utilizado para este proyecto.
Hay que tener en cuenta que la eleccin de los componentes se ha hecho de tal forma que fuera posible
reutilizar dispositivos de los que se dispona en el laboratorio y teniendo en cuenta la posible produccin futura
de varios equipos, basndose ste como prototipo. Por ello, se ha intentado en la medida de lo posible utilizar
componentes comerciales, de fcil acceso y uso, econmicos, y que puedan ser adquiridos en un futuro sin
dificultad.
6 Componentes del Sistema

3.1 Descripcin detallada de la Planta


Se dispone de un sistema formado por una estructura compuesta por dos partes que se unen entre s a travs de
un rodamiento que permite el giro de una de ellas. Habr pues una parte fija, que hace de estructura de soporte,
y una parte mvil anclada a la fija que gira en el plano vertical en torno a un eje horizontal, de forma parecida
a un balancn.

EJE DE GIRO

PARTE MVIL

MOTOR + HLICE

PARTE FIJA

Figura 1. Representacin de la planta formada por la estructura mvil (rodeada en verde) y la estructura de
soporte fija
La parte fija est formada por barra metlica de seccin rectangular, colocada verticalmente y sujeta por la
parte inferior a una base de madera. En la parte superior de esta barra se encuentra atornillado un soporte cuya
funcin es sujetar o bien un potencimetro giratorio o un rodamiento de bolas como el que se muestra en la
Figura 2. Sujetando el rodamiento por la parte externa, la parte interna gira de forma libre, y es aqu donde se
acopla la parte mvil permitiendo el giro. En el caso del potencimetro, dispone de un eje giratorio alargado al
que se puede fijar la estructura.

PARTE EXTERNA (FIJA)

PARTE INTERNA (MVIL)

Figura 2. Rodamiento de bolas

En la Figura 3 se muestra la parte fija del sistema:


Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
7
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

Figura 3. Estructura fija de soporte

El conjunto mvil est compuesto por una barra de seccin cuadrada de aluminio, un motor, una hlice, un
soporte que une el conjunto motor-hlice con la barra y un lastre que permite aumentar el peso del conjunto.
En un extremo de la barra se encuentra situado el soporte que permite, por un lado, el acople del motor con la
hlice y, por otro, la sujecin del conjunto hlice-motor con la barra. El soporte utiliza un sistema de
engranajes para transmitir la velocidad de giro del motor a la hlice, de tal forma que la velocidad de giro de la
hlice sea inferior a la del motor. El otro extremo de la barra est sujeto al eje de giro, el cual es perpendicular
al eje longitudinal de la barra, permitiendo el giro de la barra en el plano vertical. Se ha usado un lastre anclado
a la barra mvil ya que el conjunto es relativamente ligero y la fuerza mnima que genera la hlice supera con
creces la fuerza necesaria para mover el conjunto.

Figura 4. Parte mvil del sistema: barra, soporte, motor y hlice

A parte de los componentes estructurales, es necesario el uso de diferentes dispositivos electrnicos. Una de
las caractersticas del control de un motor brushless es que requiere de un circuito electrnico que lo haga
funcionar. Este circuito electrnico se conoce como variador o ESC (Electronic Speed Controller), al cual se le
enva una seal de informacin de tipo modulacin por ancho de pulso, o PWM (Pulse Width Modulation),
para controlar la velocidad de giro del motor. El ESC se conecta por un lado al motor a travs de tres cables, y
por otro a la fuente de alimentacin y al dispositivo que le suministra la seal de informacin PWM de
velocidad de motor deseada (en este caso, el dispositivo que genera la seal PWM es un Arduino). Al ser un
motor brushless, la fuente de alimentacin va conectada al ESC y no directamente al motor, como ocurre en
motores de corriente continua, de forma que el ESC es el encargado de proporcionar la potencia necesaria al
motor, en funcin de la seal de control que recibe.
8 Componentes del Sistema

Figura 5. Conexin entre motor-ESC-Arduino-Ordenador

El control de la velocidad de giro del motor permite controlar la fuerza de empuje que ejerce la hlice y, con
ello, la posicin de la barra. Si se quiere llegar a una determinada posicin, habr que variar la velocidad de la
hlice en funcin de la posicin en la que se encuentre la barra, por lo que habr que determinar dicha posicin
de alguna forma. En este caso la posicin la define el ngulo que forma la barra respecto de una referencia
(bien puede ser la vertical u horizontal). Se necesita pues un sensor capaz de medir dicho ngulo de forma
precisa y en tiempo real. En este caso, para medir la posicin se va a probar con dos sensores diferentes: una
unidad de medidas inerciales (IMU, Inertial Measurement Unit) y un potencimetro giratorio.
La unidad de medidas inerciales o IMU est compuesta con un acelermetro y un girscopo. Su
funcionamiento se basa en que operando con los datos proporcionados por el acelermetro y girscopo se
puede calcular el ngulo que forman los ejes de la IMU respecto de un sistema de referencia. Entonces,
bastara hacer coincidir el eje de la barra con uno de los ejes de la IMU para poder medir el ngulo que forma
la barra respecto de un eje de referencia, es decir, permite medir su posicin.
Por otro lado, un potencimetro giratorio es un componente electrnico que proporciona una salida analgica
que vara de valor segn la posicin del eje giratorio del potencimetro. La idea es que dicho eje giratorio se
mueva solidariamente con la barra, siendo la posicin del potencimetro igual al de la barra.
El control del sistema se va a realizar desde un ordenador con el programa MatLab, concretamente en el
entorno Simulink de MatLab. Desde el ordenador, usando dicho programa, se interacta con el sistema de tal
forma que se recibe la seal procedente del sensor que mide el ngulo y se enva la seal de informacin que
mueve el motor a una determinada velocidad.
Se necesita pues un dispositivo que permita la conexin entre el sistema y el ordenador. Para realizar dicha
funcin se ha escogido el dispositivo Arduino. Se trata de una placa electrnica que cuenta con su propio
microcontrolador, con diferentes pines de entrada y salida para conectarse a todo tipo de dispositivos y
sensores. Arduino cuenta tambin con una conexin USB tipo B para conectar la placa a un ordenador. Esto
permite visualizar y manejar los datos de control desde un ordenador y trabajar con ellos. Se ha escogido el
entorno Simulink del programa MatLab como interfaz entre sistema y usuario, ya que permite trabajar con la
informacin de manera fcil e intuitiva desde el ordenador.

La descripcin detallada de cada componente y el modelo escogido se detalla a continuacin.

3.2 Motor Brushless


Uno de los primeros componentes que hay que definir es el tipo de motor que mover la hlice, ya que
dependiendo del tipo de motor habr que utilizar unos componentes determinados u otros. Se ha escogido un
motor tipo brushless debido a sus buenas prestaciones y caractersticas.
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
9
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

Figura 6. Esquema de motor de corriente continua con y sin escobillas


(http://marylandev.org/wp-content/uploads/2015/07/brushed-brushless.jpg)

La eleccin de los dems componentes est condicionada por el tipo de motor escogido, por lo que es
importante conocer bien sus caractersticas y funcionamiento.

3.2.1 Caractersticas

La principal caracterstica del motor brushless o motor sin escobillas es que es un motor elctrico de corriente
continua que, como su propio nombre indica, no utiliza escobillas para el cambio de polaridad, sino que
emplea un circuito electrnico externo conocido como variador electrnico o ESC (Electronic Speed
Controller). En este tipo de motores, los imanes permanentes se encuentran en la parte mvil o rotor, mientras
que el bobinado se encuentra en la parte fija o estator, justo al contrario a como ocurre en los motores de
corriente continua con escobillas.
El hecho de no usar escobillas hace que no sea necesario el rozamiento entre el rotor y la parte fija del motor,
de tal forma que aumenta la eficiencia ya que se produce menor prdida de calor, aumentando con ello el
rendimiento con un menor consumo de potencia, y permite un rango de velocidad elevado al no tener
limitaciones mecnicas. La ausencia de escobillas disminuye tambin el mantenimiento, as como el ruido
electrnico (menor interferencia en otros circuitos).
Como desventaja se tiene un mayor costo de construccin, as como la necesidad para su funcionamiento y
control del ESC, un circuito caro y complejo, aumentando el precio del conjunto.
Al ser un tipo de motor muy comn en el mundo del radiocontrol y el aeromodelismo, se dispone de una gran
variedad tanto de motores brushless como de ESC en el mercado, con diferentes caractersticas y precios, lo
que supone encontrar fcilmente un motor que cumpla con las condiciones necesarias para el proyecto.

3.2.2 Funcionamiento

Para entender el funcionamiento de los motores brushless es necesario conocer su estructura y componentes
internos. Principalmente, estn compuestos por dos partes diferenciables, la parte mvil que gira, conocida
como rotor, compuesta por imanes permanentes, y una parte fija, denominada estator, donde se encuentran las
bobinas de hilo conductor por el que circula la electricidad. Dependiendo de la posicin relativa entre estator y
rotor puede haber dos tipos de motores brushless: inrunner o outrunner. En los outrunner la parte que gira o
rotor es la parte exterior del motor, la cual porta los imanes permanentes, y es en la zona interior donde se
encuentran las bobinas conductoras fijas formando el estator. En el caso de los inrunner ocurre al contrario, el
bobinado fijo se encuentra en la parte externa del motor rodeando al rotor, que se encuentra en la parte interna
junto con los imanes.
10 Componentes del Sistema

Figura 7. Comparacin de posicin de imanes permanentes de un motor brushless inrunner y outrunner

El funcionamiento del motor brushless se basa en que la corriente elctrica que pasa por el bobinado del
estator genera un campo magntico que interacciona con el campo magntico de los imanes permanentes del
rotor, y con ello se produce el movimiento de giro de ste. El bobinado est formado por tres bobinas
colocadas en un desfase en la posicin de 120 grados. La corriente elctrica que le llega al motor procede del
variador electrnico o ESC y le llega a travs de tres cables que conectan con las tres bobinas, de tal forma que
se aplica tensiones en cada bobina con polaridades desfasadas 120 grados de forma secuencial, haciendo girar
el motor a la velocidad que genera el variador. Es decir, el ESC aplica voltajes secuencialmente sobre las
bobinas y los imanes del rotor siguen el campo magntico que generan las bobinas. La velocidad de la
secuencia se denomina frecuencia y se mide en Hz, de tal forma que a mayor frecuencia, mayor velocidad de
giro del rotor.

3.2.3 Motor utilizado: Motor del Parrot AR.Drone 1.0

Al comienzo del proyecto se fijaron dos condiciones que deba cumplir el motor a utilizar:
Ser motor brushless
Tener un consumo mximo de 3 Amperios
Esto es debido a que el presente proyecto pretende ser un prototipo para la realizacin de futuras prcticas en
la universidad, por lo que se necesita un motor pequeo con un consumo bajo, pues las fuentes de
alimentacin que se disponen en el laboratorio de prcticas son fuentes de corriente continua de 3 Amperios.
Por las buenas prestaciones que tiene y su uso cada vez ms generalizado se escogi el motor tipo brushless
como motor a utilizar.
La razn de utilizar este motor en concreto es que se dispona en el laboratorio de trabajo un quadrotor Parrot
AR.Drone 1.0 del que se podan reutilizar dos de sus cuatro motores ya que sus controladores haban dejado
de ser utilizables (no funcionaban). El Parrot AR.Drone 1.0 es un quadrotor comercial de pequeo tamao. Se
barajaron diferentes posibilidades respecto a adquirir un motor nuevo pero finalmente se opt por utilizar uno
de estos motores, separndolo del controlador original estropeado y utilizando un controlador propio. El motor
original que utiliza el Parrot es el que se muestra en la Figura 8, donde aparece con su propio controlador
integrado que viene al adquirirlo. Lo que se ha hecho en este caso es separar los tres cables que salen del motor
(negro, blanco y verde) al controlador original y conectarlos a un controlador universal de motores brushless
(un ESC).
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
11
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

Figura 8. Motor del Parrot AR.Drone 1.0 junto con el controlador de fbrica
(store.parrot.com)

Se trata de un motor brushless inrunner cuyas prestaciones son ms que suficientes para lo que aqu se
necesita. Tiene un consumo mximo que no supera 3 amperios, se alimenta con 11 Voltios y su tamao y peso
es reducido.
Por otro lado, una de las ventajas de utilizar el motor del AR.Drone es que dispone de una estructura soporte
especficamente diseada para este motor. Este soporte sirve de unin entre el motor y la barra a la que tiene
que ir unido, y por otro lado acta de unin entre la hlice y el motor de tal forma que se acopla la hlice al
motor a travs de un sistema de engranajes que permite proporcionar a la hlice una velocidad de giro inferior
a la que realmente gira el motor, haciendo de reductora. En la Figura 9 se puede ver la estructura junto con el
motor y la hlice.

Engranaje Soporte

Motor

Figura 9. Estructura de soporte que acopla el motor con la hlice

3.3 Variador electrnico o ESC


Como se ha comentado en los apartados anteriores, los motores brushless requieren de una electrnica de
control que les proporcione la seal de potencia. Esta electrnica de control se conoce como variador
electrnico o ESC, que transforma la corriente continua en una tensin alterna y es el encargado de aplicar al
motor la seal necesaria para ajustar las revoluciones del motor, es decir, permite controlar la velocidad del
motor.
Un ESC suele contar con siete conexiones necesarias para el correcto funcionamiento del motor: tres cables de
salida que van conectados directamente al motor y son los que le proporcionan la seal de control, dos cables
de alimentacin usados para conectar la fuente de alimentacin o batera (positivo y negativo), un cable de
seal de informacin por donde recibe la seal PWM de control de velocidad del motor, y otro cable para la
toma de tierra.
12 Componentes del Sistema

Sin entrar en el funcionamiento de las seales de control tipo PWM, se indica que la seal que debe recibir el
ESC para que se produzca movimiento del motor se caracteriza por tener un pulso de duracin que puede
variar entre 1 y 2 milisegundos y una amplitud de 0 o 5 Voltios. La variacin de la longitud del ancho de pulso
dentro de este rango es lo que controla la velocidad del motor, trasmitindole ms o menos potencia. Cuando
la duracin del ancho de pulso es menor o igual a 1ms el motor permanece inmvil ya que corresponde a la
velocidad mnima del motor, y conforme aumenta la duracin del pulso aumenta la velocidad de giro del
motor, hasta un mximo cuando alcanza los 2 ms. Esta seal PWM la genera la placa de Arduino y tiene una
forma parecida a la que se muestra en la Figura 10.

Figura 10. Forma de una seal PWM para diferentes valores del Duty Cycle

Recordar que esta seal es la que recibe el ESC y no el motor. La seal de potencia que recibe el motor tiene
unas caractersticas diferentes y depender de la seal PWM y del voltaje de la fuente de alimentacin o
batera que se conecte al ESC.
En definitiva, el variador o ESC es el dispositivo electrnico que se encarga de suministrar la seal de potencia
necesaria al motor en funcin de la seal PWM recibida y de la potencia que le suministra la fuente de
alimentacin, haciendo que ste gire con mayor o menor velocidad.

3.3.1 ESC utilizado: ESC YGE 30 i

La eleccin del ESC est directamente relacionada con la potencia de consumo que requiere el motor. Los
ESC suelen estar limitados por el amperaje mximo que transmiten, y ya que se dispone de un motor que
consume un mximo de no ms de 3 Amperios, el ESC debe ser capaz de proporcionar al menos esta corriente
al motor. Se suele utilizar un ESC con capacidad un poco superior a la que requiere el motor para asegurarse
que siempre pueda suministrar la potencia que necesita. Por ello es recomendable utilizar un ESC de ms de 5
o 6 amperios para este motor, como mnimo.
Se dispone de un ESC de 30 Amperios en el laboratorio que, aunque supera con creces las necesidades del
motor a utilizar, funciona perfectamente. Se trata del dispositivo ESC YGE 30 i que se muestra en la Figura
11. Podra utilizarse uno de menor capacidad, siempre y cuando supere la del motor en un 20-30%.

Figura 11. Variador utilizado: ESC YGE 30 i


Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
13
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

3.4 Unidad de Medidas Inerciales, IMU


Una unidad de medidas inerciales es un dispositivo electrnico que aporta datos de velocidad, orientacin y
fuerza gravitacional a partir de datos de aceleracin y velocidad angular, medidos por un conjunto de
acelermetros y girscopos. Algunas IMUs tambin incluyen un magnetmetro.
La IMU no mide ngulos directamente, sino que realiza clculos con los datos medidos de aceleracin y
velocidad angular para obtener la orientacin y velocidad. Para ello, el acelermetro aporta datos de
aceleracin en tres ejes perpendiculares entres s, as como el girscopo mide la velocidad angular en tres ejes
perpendiculares entre s. Existen diferentes mtodos de integrar estas medidas que permiten obtener la
posicin del dispositivo respecto de un sistema de referencia.
Una de las caractersticas de la IMU es que no necesita informacin externa para aproximar su posicin, es
decir, es un dispositivo autnomo. El inconveniente es que, debido a que integra los valores de la posicin y
velocidad constantemente, aparece un error acumulativo que crece con el tiempo. Tambin aparece un error en
la medida del ngulo debido a que el acelermetro, aparte de medir los valores de la gravedad, mide cualquier
tipo de aceleracin, a veces no deseables, como son las vibraciones, conocido como ruido. Por ello suele ser
necesario aplicar algn tipo de filtro a las medidas que se obtienen de la IMU antes de utilizarlas para poder
obtener datos fiables y precisos.

3.4.1 Unidad de medidas inerciales utilizada: MPU 6050

La unidad de medidas inerciales escogida para realizar el proyecto ha sido el dispositivo MPU 6050. Se trata
de una IMU de pequeo tamao, con buenas prestaciones, precisa y de bajo consumo y coste. Se dispone de
una pequea placa como la que se muestra en la Figura 12 en la que se puede acceder fcilmente a todos los
pines del MPU 6050 y conectarlos a un microcontrolador para comunicarse con el dispositivo, en este caso a
un Arduino.

Figura 12. Unidad de medidas inerciales MPU 6050

El MPU 6050 es un dispositivo de 6 ejes, el cual contiene un girscopo y un acelermetro de 3 ejes cada uno.
Una de las consideraciones que hay que tener en cuenta a la hora de conectarlo con Arduino es que el
protocolo de comunicacin es I 2 C y que requiere una alimentacin de 3.3 V. Las conexiones se realizan a
travs de 4 pins: dos para la comunicacin I 2 C y otros dos para la alimentacin (3.3 V y GND).

3.5 Potencimetro
Un potencimetro es un dispositivo electrnico compuesto por una resistencia variable en la que se puede
cambiar su valor de forma manual. El valor de la resistencia ir variando en funcin de la posicin del
potencimetro.
Se trata de un componente sencillo y robusto, que proporciona una seal de precisin en funcin de la calidad
del potencimetro que se tenga. Dispone de tres terminales: A, B y C. Los terminales A y C se conectan a una
fuente de tensin (terminales positivo y neutro) mientras que el tercer terminal B est conectado a una
resistencia. El terminal B es el que controla el usuario y le permite ajustar la posicin del mismo a lo largo de
14 Componentes del Sistema

la resistencia, proporcionando una tensin variable en funcin del valor de la resistencia.


Hay varios tipos de potencimetros en funcin de su forma y mtodo de variacin de la resistencia, entre ellos
estn:
Potencimetros deslizantes. La resistencia est formada por una pista resistiva recta, por lo que el
cursos para variar su valor tambin.
Potencimetros rotatorios. La resistencia en este caso es una pista resistiva circular, siendo el cursor
un eje que vara el valor de la resistencia al girar.

A C
B
Figura 13. Esquema de potencimetro rotatorio

Tambin se diferencian segn la ley de variacin de la resistencia, pudiendo ser lineal, logartmica o senoidal.
En definitiva, un sensor potencimetro es una resistencia variable que aporta una seal analgica variable,
capaz de ser medida y obtener as una relacin directa de su posicin, que en el caso del potencimetro
giratorio es el ngulo de giro de su eje.
Otra ventaja del potencimetro es que proporciona una seal analgica, la cual es relativamente sencillo de
medir, evitando comunicaciones complejas como es el caso de la IMU.

3.5.1 Potencimetro utilizado: Potencimetro lineal giratorio de 10K

Se ha escogido un potencimetro giratorio lineal como sensor para medir la posicin de nuestro sistema. Ya
que lo que se necesita es medir el ngulo que forma una barra que gira respecto a un eje, el eje del
potencimetro giratorio podra situarse en dicho eje de giro y medir la variacin de la posicin.
El valor de los potencimetros viene expresado en ohmios, al igual que las resistencias, e indica el valor
mximo de la resistencia que puede llegar a tener. En este caso, se trata de un potencimetro de 10K, por lo
que puede tener una resistencia variable con valores entre 0 y 10.000.
En la Figura 14 se muestra el potencimetro utilizado, en el que se puede apreciar el eje que sobresale y que al
girarlo vara el valor de la seal de salida.

Figura 14. Potencimetro lineal rotatorio de 10K utilizado


Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
15
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

3.6 Arduino
Arduino es una plataforma electrnica de cdigo abierto basada en un hardware y software de fcil uso
destinado a la realizacin de proyectos interactivos. Se trata de una placa provista de un microcontrolador con
entradas y salidas y de un entorno de desarrollo con su propio lenguaje de programacin, pudiendo conectarse
al ordenador y programarse desde l de una forma sencilla. El software de Arduino est disponible para
descarga gratuita desde su pgina web.
Arduino permite de una forma rpida y econmica desarrollar un proyecto con un microcontrolador ya que la
placa est totalmente montada, con un bootloader listo para conectar por USB al ordenador. Tambin estn
disponibles en internet una gran cantidad de libreras para trabajar con Arduino, lo cual ayuda a que no sea
necesario un gran conocimiento previo de programacin para poder utilizarlo. Debido a su popularidad y gran
uso, es fcil encontrar diferentes placas de Arduino de todos los precios, lo que lo hace un dispositivo de fcil
acceso para cualquier persona.
En definitiva, Arduino permite la comunicacin entre sensores y dispositivos electrnicos y el ordenador de
forma sencilla y econmica, siendo idneo para proyectos como el que aqu se presenta.

3.6.1 Arduino utilizado: Arduino Mega 2560

Hay multitud de diferentes tipos de placas Arduino, cada una con sus caractersticas. En este proyecto se ha
usado el Arduino Mega 2560, una placa Arduino que consta de 54 pines que puede configurarse como entrada
o salida digital de entre 0 y 5V (de los cuales se pueden usar 6 como salida PWM), y 16 pines de entrada
analgica, entre otros. Tambin cuenta con conexin USB, conexin de alimentacin, un botn de reset, etc.
La placa cuenta con todo lo necesario para hacer funcionar el microcontrolador con slo conectarla a un
ordenador o a la corriente elctrica.

Figura 15. Placa Arduino MEGA 2560 (izquierda) y software de programacin de Arduino (derecha)
[www.arduino.cc]

Tambin dispone de pines de entrada y salida especiales, como dos de los pines analgicos que pueden
configurarse para la comunicacin I 2 C con otros dispositivos, algo necesario para comunicarse con la IMU
que se utiliza.
16 Componentes del Sistema

Se ha escogido la placa Arduino Mega 2560 principalmente por los siguientes motivos:
Dispone de pines de salida de seal PWM, que es el tipo de seal de control que se necesita enviar al
ESC para controlar el motor.
Dispone de pines de comunicacin I 2 C, necesarios para la comunicacin con la IMU.
Es capaz de recibir seales analgicas, lo que permite medir el valor que proporciona el
potencimetro.
Permite utilizar el programa Simulink en modo external. Este es el motivo principal por el que se ha
escogido el modelo Arduino Mega, ya que no todos los modelos de placas de Arduino lo permiten.
Se explicar ms adelante en que consiste el modo external de Simulink, pero bsicamente hay que
saber que permite ejecutar el modelo en tiempo real, algo necesario para el control del sistema.

3.7 Entorno Simulink de MatLab


MatLab es un entorno de clculo numrico y visualizacin con su propio lenguaje de programacin de alto
nivel. Permite la visualizacin y procesado de seales de forma sencilla, as como implementacin de sistemas
de control o simulacin e identificacin de sistemas dinmicos.
El programa Matlab incluye, entre otros, un paquete de herramientas llamado Simulink (plataforma de
simulacin multidominio). Simulink consiste en un entorno de simulacin de diagramas de bloque usado para
modelar, simular y analizar sistemas dinmicos. Permite la creacin de modelos en el cual se pueden introducir
diferentes tipos de bloques para trabajar con sistemas lineales o no, en tiempo continuo o discreto. Todo ello a
travs de una interfaz grfica y diagramas de bloques haciendo su uso sencillo e intuitivo. Tambin permite la
simulacin de sistemas en tiempo real, muy til para representar grficamente la evolucin de las diferentes
variables del sistema y realizar control sobre el mismo. Tambin permite exportar resultados de la simulacin
a Matlab para trabajar con ellos en cualquier momento.

3.7.1 Versin de Matlab utilizada

Toda la parte de Simulink se ha realizado con la versin MATLAB R2013b. En la Figura 16 se muestra el
entorno Simulink de Matlab de dicha versin, en la que aparece a la izquierda la librera de bloques y a la
derecha un ejemplo de un modelo de Simulink.

Figura 16. Entorno Simulink de Matlab R2013b. Librera de bloques (izquierda) y ejemplo de modelo (derecha)
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
17
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
3.7.2 Modelo Simulink

Como se ha comentado, el entorno Simulink de Matlab permite crear modelos dinmicos usando los diferentes
bloques disponibles en la librera. En concreto, en este proyecto se necesita de una comunicacin entre el
sistema real y el entorno de Simulink en tiempo real, que permita interactuar con l y poder tanto enviar como
recibir datos. Gracias a la placa de Arduino es posible dicha comunicacin.
La placa de Arduino va conectada al ordenador a travs de un cable USB. El entorno de Simulink dispone de
bloques que permiten el envo y recepcin de datos por comunicacin serial, siendo posible enviar y recibir
informacin entre el ordenador y el Arduino. Tambin existe una librera exclusiva para Arduino que, aunque
no viene instalada en la versin de serie de Matlab, se puede descargar e instalar gratuitamente desde el propio
Simulink. Esta librera permite programar ciertas funciones en el dispositivo Arduino directamente desde el
entorno Simulink, sin necesidad de programarlo a mano ni de escribir ningn cdigo de programacin.
A lo largo de la realizacin de proyecto se han creado varios modelos, evolucionando segn las necesidades
que iban surgiendo hasta llegar a un modelo definitivo el cual se explicar de forma detallada en los prximos
captulos. El modelo definitivo permite la comunicacin con Arduino en modo external, un tipo de simulacin
que hace que la comunicacin entre ordenador y Arduino sea en tiempo real, es decir, que el tiempo de
simulacin de Simulink se corresponda con el tiempo real. Esto es necesario para poder realizar el control
sobre el sistema.

3.8 Fuente de Alimentacin


Para suministrar al motor la potencia elctrica necesaria se necesita una batera o fuente de corriente continua
que ir conectada al ESC.
Ya que el sistema se va a utilizar en un lugar con acceso a la corriente elctrica, lo ms lgico es utilizar una
fuente de corriente continua en vez de una batera lipo o similar. Adems, la fuente de corriente tiene como
ventaja que proporciona una corriente continua estable y constante durante todo el tiempo, pudiendo regular el
voltaje que se le suministra al ESC a travs de un interruptor, algo que no ocurre en el caso de las bateras ya
que stas pueden perder potencia conforme se van descargando. Es por ello que se ha escogido como
alimentacin del motor una fuente de corriente continua, que ir conectada al ESC a travs de dos cables,
positivo y negativo.
El fabricante del motor recomienda proporcionar una alimentacin de 11.1 Voltios de corriente continua. Es
necesario pues una fuente de alimentacin con capacidad para producir una tensin de aproximadamente al
menos 11.1 Voltios y una intensidad de corriente mayor o igual a 3 Amperios.

3.8.1 Fuente de alimentacin utilizada: EP-920 de Silver Electronics

La fuente de tensin utilizada es la que se dispone en el rea de trabajo que cumple con los requisitos de
potencia que se han comentado en el apartado anterior. Se trata del modelo EP-920 de la marca Silver
Electronics con las siguientes caractersticas:

INPUT: 230Vac / 50Hz ~


OUTPUT: 3 -15Vdc / 18A CONT.

Como se puede apreciar en la Figura 17, en la esquina superior derecha dispone de un botn giratorio para
seleccionar el voltaje de salida deseado, valor en Voltios que aparecer indicado en el indicador de aguja arriba
a la izquierda. Abajo a la izquierda dispone de dos conexiones tipo banana, entre las que se proporciona la
tensin de salida indicada previamente con el botn giratorio. En estos dos conectores es donde se conectarn
los cables de alimentacin del ESC, a una tensin de 10V (se recomienda 11.1V pero finalmente se ha
escogido una tensin de entrada de 10V). La fuente dispone de un interruptor ON/OFF (esquina inferior
derecha, botn POWER), que permite apagar en cualquier momento el dispositivo. El tener un botn de
18 Componentes del Sistema

apagado y encendido es otra ventaja respecto a usar una batera porttil, ya que te permite detener el motor en
caso de fallo del sistema.

Figura 17. Fuente de alimentacin utilizada


Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

4 COMPORTAMIENTO DEL SISTEMA

MOTOR

Figura 18. Esquema del conjunto del sistema a analizar

Para abordar el control de un sistema hay que conocer su comportamiento dinmico. Este captulo se centra en
el estudio del movimiento y en la representacin matemtica del comportamiento del sistema, es decir, en la
obtencin de una ecuacin que defina la posicin del sistema en cada instante. Un modelo matemtico permite
predecir la evolucin del sistema, analizar su el comportamiento, analizar el efecto de la variacin de
parmetros sobre la evolucin y estudiar el efecto de las entradas sobre la evolucin del sistema.

4.1 Estudio del Movimiento


Para comenzar, se tiene que el sistema completo est compuesto por una estructura fija y otra mvil que gira
respecto a la anterior en el plano vertical. La estructura fija acta como soporte inmvil, por lo que no requiere
de estudio dinmico. Interesa pues conocer las caractersticas de la estructura que gira y de las fuerzas que
actan sobre ella para as obtener un modelo matemtico de su movimiento.
Sobre la estructura mvil actan diferentes fuerzas que son las que originan el movimiento de la misma.
Dichas fuerzas se indican a continuacin.

4.1.1 Fuerzas que intervienen

Las fuerzas que actan sobre la estructura mvil cuando sta se encuentra en equilibrio se muestran en la
Figura 19. En ella se pueden diferenciar tres fuerzas resultantes:
20
Comportamiento del Sistema

h ),
1. la fuerza de empuje de la hlice (F
p ) aplicada en su centro de gravedad,
2. la fuerza del peso del conjunto debido a la gravedad (F
) que impide el desplazamiento en ese punto y que
3. y la fuerza de reaccin que aparece en el rodamiento (R
tendr la direccin y valor que le corresponda.

0
1
1

RODAMIENTO 0

0

CENTRO DE

GRAVEDAD

MOTOR

Figura 19. Fuerzas que actan sobre la estructura mvil en equilibrio.

Ya que se produce un movimiento relativo entre la restuctura mvil y la fija, se ha de definir un sistema de
referencia donde expresar las diferentes fuerzas para poder trabajar con ellas. En la Figura 19 se han definido
los ejes correspondientes a los sistemas de referencia 0 y 1. El sistema de referencia 0 es un Sistema Inercial y
queda definido por ser el eje OZ0 paralelo a la direccin de la gravedad y sentido opuesto, mientras que el
sistema de referencia 1 est ligado la estructura mvil, de tal forma que el eje OY1 coincide con el eje
longitudinal de la barra. En adelante se representarn las fuerzas en uno u otros ejes, segn convenga.
La fuerza que produce la gravedad sobre cada componente de la estructura se puede expresar como la fuerza
resultante de aplicar la masa total en el centro de gravedad del conjunto. La fuerza producida por el peso ser
pues una fuerza Fp aplicada en su centro de gravedad (cuya posicin es, a priori, desconocida), en la direccin
del eje 0 y sentido el de la gravedad. La fuerza que genera el giro de la hlice tiene como resultante una
fuerza con direccin la del eje de giro de la hlice (paralelo al eje 1 ) y sentido el que proceda segn la forma
y movimiento de la hlice. Por otro lado, se tiene que la unin entre la estructura fija y la mvil se hace, en el
caso de usar la IMU a travs de un rodamiento con rozamiento mnimo, mientras que con el potencimetro
aparece un rozamiento mucho mayor, pero en ambos casos permite solamente el giro de la estructura en el
plano vertical. Dado que en ese punto la estructura puede girar pero no desplazarse, aparece una fuerza de
reaccin que se opone al desplazamiento pero no al giro, con direccin y sentido opuesto al que ejerce la
resultante de las dems fuerzas sobre la estructura mvil (suma de la fuerza del peso y de la hlice).
Las fuerzas que permiten definir la posicin sern pues la fuerza del peso (constante) y la que genera la
hlice (variable), que se puede expresar en los ejes 0 o 1 segn convenga:

-
Fp = Fp
z0 = Fp cos
y1 Fp sen
z1 con Fp = mg = cte (m=masa total, (41)
g=gravedad).

-
Fh = Fh cos
y0 + Fh sen
z0 = Fh
z1 donde Fh es la fuerza de empuje que ejerce la (42)

20
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
21
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
hlice.

- R = R y0
y0 + R 0 sen
z0 = R y1
y1 + R 1
z1 donde y0 , z0 , y1 z1 sern los valores (43)
de la proyeccin del vector R en sus respectivos ejes (valores desconocidos).

Tambin influye la posicin del centro de gravedad del conjunto.


Al ser la fuerza del peso una constante, lo que permite variar la posicin de la estructura es la variacin de la
fuerza que genera la hlice controlando la velocidad de giro del motor. Hay que tener en cuenta que al variar la
fuerza de empuje tambin vara la direccin de la fuerza debido al cambio de posicin, mientras que direccin
de la fuerza del peso es siempre la misma (si se observa desde el sistema de referencia inercial). Esto afecta a
la estabilidad del sistema, siendo diferente segn la posicin del mismo.

4.1.2 Zonas de estabilidad e inestabilidad

Se sabe que el movimiento del sistema est contenido en el plano vertical, teniendo solo un grado de libertad:
el giro en torno a un eje. Por las caractersticas que presenta la estructura se puede deducir que el control de la
posicin del conjunto est acotado a la mitad del plano vertical, zona en la que la fuerza de empuje de la hlice
apunta hacia arriba y es capaz de contrarrestar la fuerza de la gravedad. Es ms, se puede deducir tambin que
dentro de la zona acotada del movimiento controlado existir una zona estable y otra inestable. Se razona a
continuacin sin entrar en la ecuacin del movimiento, que se har ms adelante.
Si se divide el plano vertical en los cuatro cuadrantes que se muestran en la Figura 20, se tiene que los
cuadrantes 1 y 2 son los que pueden contener un movimiento controlado del sistema (zona verde), mientras
que en los cuadrantes 3 y 4 la posicin del sistema no es controlable (zona roja), pues la componente vertical
de la fuerza que produce la hlice es incapaz de contrarrestar la fuerza de la gravedad ya que la componente
vertical tiene el mismo sentido. Segn las caractersticas del conjunto, el equilibrio de las fuerzas que
intervienen se puede alcanzar slo y exclusivamente en el cuadrante 1. Para alcanzar el equilibrio en el
cuadrante 2 hace falta implantar algn tipo de control sobre el conjunto.

Zona de movimiento
controlado

2 3
q

1 4
q q

Figura 20. Cuadrantes del plano vertical en los que se mueve el sistema.
Posicin controlada (zona verde, 1 y 2) y no controlada (zona roja, 3 y 4)
22
Comportamiento del Sistema

4.2 Modelo Matemtico


Una vez identificado cmo es el movimiento del sistema y las fuerzas que intervienen en l, se necesita una
ecuacin de movimiento que relacione dichas fuerzas con la posicin. La variable que se puede controlar en
todo momento es la fuerza de empuje de la hlice a travs del giro del motor, por lo que, si la intencin es
controlar la posicin del sistema, en la ecuacin deber aparecer necesariamente el ngulo y la fuerza de
empuje de la hlice, entre otros.
La teora de mecnica estudia el movimiento de los cuerpos bajo la accin de fuerzas, as como su evolucin
en el tiempo. En concreto, se va a utilizar teora de mecnica del slido rgido indeformable, modelo
matemtico til para llegar a una ecuacin de movimiento vlida. Para ello, se aplica al sistema la ley de
conservacin del momento cintico, la cual permite obtener una ecuacin de movimiento que relaciona la
posicin de la barra (ngulo ) con las fuerzas que intervienen en el sistema, estando entre ellas la fuerza que
genera la hlice.

4.2.1 Momento cintico

En este apartado se va a utilizar la definicin del momento cintico y el Teorema del Momento Cintico con el
objetivo de llegar a una expresin que relacione la posicin del sistema con la fuerza que genera la hlice.
Segn la Teora de Mecnica, en el caso de un sistema indeformable como ste, el momento cintico en un
punto cualquiera es:


0 = I0 v
21 + MOG O
21
(44)

Donde
21 es la velocidad angular alrededor del eje de giro O, I0 es el momento de inercia del conjunto
respecto del punto O y se trata de una constante del sistema ya que la masa del mismo no vara, M es la masa
es el vector de posicin del centro de gravedad y v
total del sistema, OG O
21 la velocidad del punto O respecto
del sistema de referencia inercial 1. Al ser variables vectoriales y para poder operar entre ellas, se han de
definir el sistema de referencia al que van ligadas. En la siguiente figura se han definido los dos sistemas de
referencia necesarios para describir el movimiento. El movimiento se produce en el plano vertical OYZ,
estando las fuerzas contenidas en el mismo. Se definen pues dos sistemas de referencia: el sistema de
referencia inercial (0) y el que gira respecto a ste (1). Ambos sistemas comparten el mismo centro de
referencia O y los ejes OX 0 y OX1 coinciden. En la siguiente Figura 21 se muestran ambos sistemas de
referencia:

0
1
1
1

O
0 0
0 1

Figura 21. Definicin de ejes


22 y sistemas de referencia
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
23
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
Segn los ejes escogidos y las caractersticas del movimiento del sistema contenido en el plano vertical OYZ,
d
se deduce que la velocidad angular tiene nicamente componente en el eje OX, siendo entonces 0 = dt .
Por tratarse de un sistema indeformable y ser el punto O fijo, v
O
= 0, por lo que la expresin del momento
21
cintico en (4-4) para el sistema que se est analizando queda de la siguiente forma:


0 = I0 v
21 + MOG O
21
0 = I0
d
0 = IO dt
Al derivar la expresin anterior del momento cintico con respecto al tiempo se obtiene:

O
d d
O d2
= IO = IO 2
dt dt dt (45)

Por otro lado, del Teorema del momento cintico se sabe que:
N
0
d
rn
=
Fn + C vO
dt (46)
n=1

Donde N es el nmero de fuerzas que intervienen en el sistema, es el vector que une el punto O con el punto
donde se aplica la fuerza n y
Fn las n fuerzas. En este caso, al ser O un punto fijo, la velocidad
vO del punto O
es nula, quedando la ecuacin anterior del Teorema del momento cintico (4-6) de la siguiente forma:
N
0
d (47)
rn
= Fn
dt
n=1

A partir de las ecuaciones (4-65 y (4-7) se llega a la siguiente relacin:


N
d2
rn
I0 2 = Fn
dt (48.1)
n=1

La ecuacin (4-8.1) representa la ecuacin ideal del movimiento del sistema a analizar. En la realidad se aade
un trmino ms que representa el momento que genera la fuerza de rozamiento existente en el eje de giro del
sistema real, ya que el giro lo permite un rodamiento con un rozamiento finito. Dicho trmino va ligado a la
velocidad angular y se representa como la velocidad angular por una constante B, conocida como constante
de rozamiento. En notacin simple la ecuacin queda de la siguiente forma:

I = r F
B (48.2)

O, lo que es lo mismo:

I + B r F
=0 (48.3)

Donde I es el momento de inercia del sistema, r F es el sumatorio del producto vectorial de la posicin
donde se aplica la fuerza respecto del eje de giro por la fuerza aplicada, y B es el coeficiente de rozamiento que
existe en el eje de giro de la estructura (rozamiento en el rodamiento en el caso de uso de la IMU o del
potencimetro giratorio en caso contrario).
24
Comportamiento del Sistema

4.2.1.1 Fuerzas que intervienen en el momento cintico

En el apartado anterior se han comentado las fuerzas que actan sobre la estructura mvil. En este apartado se
tienen en cuenta las fuerzas que intervienen en el momento cintico, que son las que crean un momento
alrededor del eje de giro O de la estructura y las necesarias para poder utilizar la ecuacin (4-8.3). Dichas
fuerzas sern todas las fuerzas que actan sobre el conjunto y que no pasen por el eje de giro, es decir, las que
generan momento:
: Fuerza generada por giro de la hlice, aplicada en el eje de giro de la hlice y en direccin
-
perpendicular a la barra.
: Fuerza debido al peso total del conjunto barra-motor-soporte-hlice, aplicada en el centro de masas
-
del conjunto.

La fuerza de empuje generada por la hlice coincide en todo momento con el eje OZ1 del sistema de referencia
(1) de la Figura 21. Por el contrario, la fuerza debida al peso coincide con el eje OZ0 . Para poder operar entre
ellas en la ecuacin (4-8.3) hay que expresarlas en el mismo sistema de referencia.
Pasando las fuerzas al sistema de referencia (1) quedan de la siguiente forma:


Fh = Fh
z1


Fp = mt g(cos
y1 + sen
z1 )

Donde es la masa total del sistema compuesto por la barra, el conjunto soporte-motor-hlice y el lastre, y
es la gravedad.

4.2.2 Ecuacin del movimiento

Por las caractersticas del sistema, se trata de un sistema no lineal cuyo comportamiento est representado por
la siguiente ecuacin diferencial de segundo orden, obtenida sustituyendo el sumatorio por cada fuerza y
posicin en la ecuacin del movimiento (4-4.3):

d2 d (49.1)
I 2
+ B + mt g dc sen dh Fh = 0
dt dt

O, lo que es lo mismo:

I (t) + B (t) + mt g dc sen (t) = dh Fh (t) (49.2)

Ecuacin que relaciona la fuerza de empuje que ejerce la hlice (entrada del sistema, Fh ()), con el ngulo que
forma la barra con la horizontal (salida del sistema, ()), permitiendo conocer su posicin en todo instante
de tiempo. En la ecuacin (4-9) se ha llamado a la distancia desde el eje de giro O al centro de gravedad del
conjunto, y a la distancia del eje de giro de la hlice al eje de giro O del sistema.

La ecuacin (4-9) es una ecuacin diferencial de segundo orden no lineal. Para poder obtener la funcin de
transferencia que relacione la entrada con la salida habr que linealizar la ecuacin anterior en torno a un punto
de equilibrio. Se pretende encontrar la funcin de transferencia G(s) que represente el comportamiento del
sistema tal que:

24
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
25
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

Fh
G(s)

Figura 22. Entrada y salida de la funcin de transferencia G(s) que representa el sistema

4.2.3 Linealizacin de la funcin de transferencia

Con el fin de linealizar la ecuacin (4-9), se considera la funcin ( , , , ) de la forma:

(, , , Fh ) = I + B + mt g dc sen dH Fh = 0

Se define un punto de equilibrio conocido (0 = 0, 0 = 0, = 0 , = 0 ) tal que:

(0,0, 0 , Fh 0 ) = mt g dc sen0 dH Fh 0 = 0 (410)

Se definen las variables incrementales () y (), que dependen del punto de equilibrio:
(t) = (t) 0 , (t) = (t) , (t) = (t)
(t) = Fh (t) Fh 0
Y se realiza el desarrollo en series de Taylor de la funcin f en torno al punto de equilibrio (0 = 0, 0 =
0, = 0 , = 0 ):
f f f f
(, , , Fh ) (0,0, 0 , Fh 0 ) + ] + ] + ] + ] + (2 , 2 ) = 0
=0 =0 =0 Fh F =F
h h 0

2 2
Donde (0,0, 0 , 0 ) y ( , ) se pueden considerar nulos. Realizando las derivadas correspondiente en
(4-11.1) se obtiene a la ecuacin ya linealizada en (4-11.2):

f f f f (411.1)
] + ] + ] + ] =0
=0 =0 =0 Fh F =F
h h 0

I (t) + B (t) + mt g dc cos0 (t) dH Fh 0 (t) = 0 (411.2)

A la ecuacin (4-11) si se puede aplicar la transformada de Laplace, con el fin de obtener la funcin de
(s)
transferencia G(s) = (s). Usando la propiedad de la transformada de Laplace de la derivada se llega a:
26
Comportamiento del Sistema

I [s 2 (s) s(0) (0)] + B [s(s) (0)] + mt g dc cos0 (s) dH Fh 0 (s) = 0 (412)

Considerando las condiciones iniciales nulas y despejando, se obtiene la siguiente funcin de transferencia
aproximada del sistema, con entrada la fuerza que genera el giro de la hlice y salida el ngulo que forma la
barra con la vertical:

(s) (s) dH Fh 0 (413)


G(s) = = 2
Fe (s) (s) Is + Bs + mt g dc cos 0

4.2.3.1 Momento de Inercia y coeficiente de rozamiento

En la ecuacin (4-13) se tiene como dato conocido los valores de la fuerza, la posicin en el punto de
equilibrio (ngulo), la masa total del sistema, el valor de la gravedad y la distancia del eje de giro de la hlice
al eje de giro de la barra. Sin embargo, tanto la posicin del centro de gravedad como la inercia o el coeficiente
de rozamiento son incgnitas del problema y difciles de calcular tericamente:

Incgnitas
dH Fh 0
G(s) = Fh 0 , 0 , mt , g, dH Conocido
Is 2 + Bs + mt g dc cos 0
I, B, dc Desconocido

El momento de inercia de un sistema se puede calcular de forma terica aplicando la definicin de momento
de inercia. Lo que se suele hacer para estructuras complejas es dividirlas en partes con formas geomtricas
simples para calcular el momento de inercia de cada parte por separado y sumarlas posteriormente, obteniendo
el momento de inercia total. Sin embargo, solo es til cuando la estructura est formada por elementos con una
geometra simple (cuadrado, rectngulo, circunferencia, etc.) cuyo momento de inercia se puede calcular
fcilmente. Este no es el caso, por lo que el momento de inercia se pretende obtener a partir de diferentes
pruebas experimentales que permiten una aproximacin del valor.
Lo mismo ocurre con el coeficiente de rozamiento. No es un parmetro fcil de obtener o medir, por lo que se
obtendra una aproximacin a travs de pruebas experimentales.
La posicin del centro de gravedad se obtiene directamente de la ecuacin (4-10) en un punto de equilibrio
conocido, aunque para ello se ha de conocer antes los valores de la fuerza de empuje.
Estas pruebas experimentales se detallan ms adelante en el Captulo 7.

26
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

5 MODELO DE SIMULINK

Este captulo se centra en las caractersticas del modelo de Simulink creado as como los diferentes bloques
que intervienen en l.
Se comienza por una introduccin a las necesidades que debe satisfacer el modelo, para posteriormente
centrarse en los diferentes bloques utilizados y en el modelo definitivo.

5.1 Caractersticas del modelo en Simulink


En el proyecto que se realiza intervienen tanto seales de control como de informacin, utilizadas para
intercambiar datos entre un ordenador y un sistema con dispositivos electrnicos. Se ha escogido una placa
Arduino como dispositivo que permite la conexin entre el sistema y el ordenador, de tal modo que se conecta
al ordenador a travs de una conexin USB y a los dispositivos electrnicos a travs de los pines de salida y
entrada. Surge pues la necesidad de algn tipo de software capaz de interactuar con la placa Arduino desde el
ordenador, es decir, enviar y recibir seales con el Arduino. Como se ha comentado anteriormente, el software
utilizado en el ordenador para trabajar con dicha informacin es el entorno Simulink de Matlab, y para ello se
ha de crear un modelo que realice las funciones necesarias que permitan el control del sistema.
El modelo se puede dividir en dos partes principalmente:
una que se encarga del envi de la seal de control PWM que va desde el Arduino hacia el ESC y
que acta sobre la velocidad de giro del motor, y
otra parte encargada de la recepcin de los datos del sensor que mide el ngulo.

Habr que utilizar bloques de envo y recepcin de informacin, y stos dependern del tipo de seales y de
comunicacin de los sensores.
Se parte del siguiente esquema:

ORDENADOR ARDUINO SISTEMA

Senal de
control del
motor Senal PWN
Bloques de envo

Conexion Conexion
USB por
Pines

Bloques de recepcin
Comunicacion
Datos IMU
I2 C
Datos
MODELO SIMULINK Senal analogica SISTEMA FISICO
Potenciometro

Figura 23. Esquema del flujo de informacin entre Ordenador-Arduino-Sistema


28
Modelo de Simulink

Hay que crear dos modelos diferentes dependiendo de si se usa la IMU o el potencimetro como sensor de
medida del ngulo.

5.1.1 Caractersticas de la comunicacin entre componentes

Por un lado, la comunicacin entre el Arduino y el variador del motor o ESC consiste en una seal modulada
por ancho de pulso (PWM), que se enva desde el Arduino hacia el ESC por uno de sus pines. Ya que el
Arduino dispone de pines de salida digital que pueden usarse como salida de seal PWM, slo hay que
configurar uno de esos pines como salida PWM y enviar la seal por ste. Esto se puede hacer desde Simulink
con un paquete de bloques especial para Arduino disponible para descargar de forma gratuita desde la pgina
web de Matlab y que contiene un bloque especfico para realizar el envo de seales PWM por el pin que se
desee del Arduino. Se comentar este paquete ms adelante.

Pines PWM Comunicacin I 2 C

Alimentacin Pines entrada/salida analgica


Figura 24. Pines de seal PWM, entrada y salida analgica y de comunicacin I 2 C del Arduino Mega 2560

Por otro lado se tiene que realizar la comunicacin entre Arduino e IMU o Arduino y potencimetro.
La comunicacin entre el sensor inercial IMU y el Arduino es comunicacin tipo I 2 C. No se va a entrar en
detalle en que consiste la comunicacin I 2 C, pero si se ha de saber que el bus I 2 C consta de dos lneas
conocidas como SDA y SCL, lnea de datos y de reloj, respectivamente. Arduino Mega dispone de dos pines
que permiten realizar este tipo de comunicacin: 20 y 21. Para transmitir la informacin se conectan los pines
SDA y SCL de la IMU con los pines 20 (SDA) y 21 (SCL) del Arduino Mega, a parte de los pines de
alimentacin y de masa. Existen libreras disponibles en internet para programar Arduino de tal forma que
permita la adquisicin de los datos enviados a travs de estos pines por comunicacin I 2 C.
En el caso del potencimetro no se requiere de una comunicacin compleja. Se trata de un sensor activo que
proporciona en todo momento una seal analgica por uno de sus pines, por lo que alimentando el sensor y
conectando este pin a un pin entrada analgica del Arduino es suficiente para obtener la medida del
potencimetro.
El modelo en Simulink para el caso de la IMU debe ser capaz de:
Enviar seales PWM a travs de Arduino.
Recibir a travs de Arduino informacin por comunicacin I 2 C.
El modelo en Simulink para el caso del potencimetro debe ser capaz de:
Enviar seales PWM a travs de Arduino.
Recibir y medir a travs de Arduino la seal analgica que proporciona el potencimetro giratorio.

28
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
29
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
5.1.2 Simulink Support package for Arduino Hardware

Una vez se conocen el tipo de seales con las que hay que trabajar, hay que plantearse cmo se va a configurar
el Arduino para tratar dichas seales y que tipo de bloques hacen falta utilizar en Simulink. Como se ha
comentado, Arduino dispone de su propio Software y cdigo de programacin (Cap. 3, Figura 15), a travs
del cual se puede programar el dispositivo para que realice infinidad de funciones. Ya que Arduino y
Ordenador se conectan por USB con comunicacin serial, y Simulink dispone de bloques que permiten enviar
y recibir informacin por comunicacin serial a travs del puerto USB, se observa que una opcin es
programar el Arduino para que reciba la seal de control del motor desde el ordenador por el USB, haga las
conversiones necesarias y la transmita por un pin PWM hacia el ESC. De igual forma, se podra programar
para que reciba la seal de informacin de la IMU a travs de los pines de comunicacin I 2 C o la seal del
potencimetro por los pines analgicos y enviar esa informacin hacia el ordenador en el entorno de Simulink
por comunicacin serial. Este mtodo fue el usado inicialmente para las primeras conexiones entre Arduino y
Simulink y que, aunque permite controlar el motor y recibir los datos, presenta dos inconvenientes
importantes:
Se necesita programar Arduino con un cdigo que realice la comunicacin serial con el
ordenador, as como generar la seal PWM y comunicacin con la IMU o potencimetro.
El modelo utilizado en Simulink usando los bloques de comunicacin serial no permite la
simulacin en modo External, es decir, no permite la simulacin en tiempo real, algo necesario
para realizar el control.

Una vez sabido esto, se plantea el objetivo de que la programacin del Arduino se haga desde Simulink y que
el modelo pueda simularse en tiempo real. Es decir, que slo sea necesario crear un modelo en Simulink sin
tener que programar el Arduino escribiendo en cdigo, y que la programacin se haga de forma directa desde
Simulink. Para ello Matlab pone a disposicin del usuario un paquete especial de Arduino para Simulink, la
librera Simulink Support Package for Arduino Hardware, la cual se muestra en la Figura 25.

Figura 25. Librera de bloques Simulink Support Package for Arduino Hardware
30
Modelo de Simulink

En la Figura 25 se muestran los diferentes bloques disponibles para Arduino que permiten:
Configurar un pin como pin de entrada o salida digital y recibir o enviar datos a travs de l.
Configurar un pin como pin de entrada o salida analgica y recibir o enviar datos a travs de l.
Configurar un pin para enviar por l seales PWM.
Enviar o recibir informacin por Comunicacin Serial.
Envo y recepcin de seales tipo servo.

El uso de esta librera permite al usuario evitar tener que programar en cdigo arduino ya que, una vez creado
el modelo, ste se carga en la placa Arduino desde Simulink, programndose de forma automtica.
Por las caractersticas de los dos modelos que se necesitan se van a utilizar dos bloques de esta librera:
El bloque PWM que permite configurar un pin para enviar una seal tipo PWM desde el Arduino
con el valor que se indique en Simulink.
El bloque Analog Input que permite configurar un pin como entrada de seal analgica.
Para la comunicacin I 2 C que necesita la IMU, al no disponer de un bloque especfico para ello, se utilizar
otro mtodo que se explica en un apartado ms adelante.

5.1.2.1 Instalacin del paquete Arduino en Simulink

Para instalar el paquete Simulink Support Package for Arduino Hardware en el entorno de Matlab hay que
seguir los siguientes pasos:
1. Iniciar el instalador desde la ventana de comandos de Matlab escribiendo lo siguiente:

2. Al pulsa Intro aparece la ventada siguiente donde se da la opcin de seleccionar el origen del paquete
a instalar. Si se dispone de conexin a internet, seleccionar Install from Internet y pulsar en Next >.

3. A continuacin se debe seleccionar el paquete a instalar de la lista que aparece, que en este caso ser
Arduino. En la Figura 26 se muestra la ventana que aparece, a la izquierda se puede ver la lista de
paquetes disponibles, se selecciona Arduino y la derecha debera aparecer Install (en este caso aparece
Reinstall porque ya ha sido instalado), seleccionar, pulsar en Next > y seguir los pasos de instalacin.

30
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
31
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

Figura 26. Lista de paquetes disponibles para Matlab donde hay que seleccionar Arduino

Para la instalacin es necesario tener una cuenta activada de Matlab, la cual se puede obtener de forma gratuita
en su pgina web http://es.mathworks.com/.
Una vez instalado el paquete, debera aparecer en la librera de bloques de Simulink tal y como se muestra en
la Figura 25.

5.1.3 Simulacin en Tiempo Real. Modo External

Se ha hecho referencia anteriormente a la necesidad de simular el modelo de Simulink en tiempo real. Al


tratarse de un modelo que interacta en todo momento con componentes fsicos externos (Arduino, IMU,
motor, potencimetro,) es necesario que la simulacin sea en tiempo real con el fin de verificar las
interacciones del mismo, ya que estn diseados para un funcionamiento exclusivamente en tiempo real. De
igual modo, si se quiere realizar un control sobre el sistema, al ser ste un sistema real con respuesta en tiempo
real ante cambios es necesario una simulacin en tiempo real que responda a las exigencias del sistema.
En la Figura 27 se muestra el desplegable que aparece para seleccionar entre los diferentes modos de
simulacin de Simulink. El modo Normal es el modo ms flexible pero tiene el inconveniente de que es el ms
lento, siendo en ocasiones el tiempo de simulacin muy diferente al tiempo real. Los modos Accelerator y
Rapid Accelerator permiten una simulacin ms rpida que el modo normal pero limita las caractersticas del
modelo y sigue sin garantizar una simulacin en tiempo real. Software in the Loop y Processor in the Loop se
suelen utilizar para funciones de pruebas de software del modelo o el cdigo. El modo que interesa en este
caso es el modo External.

Figura 27. Seleccin del modo de simulacin External en el entorno Simulink


32
Modelo de Simulink

El modo External permite modificar los parmetros y visualizar los datos del modelo de Simulink mientras se
est ejecutando en el hardware Arduino en tiempo real. Esto permite un ajuste de parmetros ms cmodo y
rpido, ya que se puede visualizar en tiempo real cmo reacciona el sistema antes cambios de las variables
durante la simulacin.
El uso del modo externo conlleva algunas limitaciones del modelo:
No se pueden configurar bloques de envo y recepcin por el puerto serie 0 debido a que el
modo externo utiliza dicho puerto. En su lugar, permite utilizar bloques de comunicacin serie
con conexin Wi-Fi o el modo externo de TCP / IP.
No se puede utilizar los siguientes bloques servo para Arduino: Standard Servo Read, Standard
Servo Write y Continuous Servo Write.
Estas limitaciones no afectan a nuestro modelo ya que el bloque que se va a utilizar es el envo de seal PWM
y entrada de seal analgica.

5.2 Preparacin de parmetros del modelo Simulink


Antes de empezar a crear el modelo se han de ajustar los parmetros segn las necesidades. Para ello, abrir un
nuevo modelo siguiendo los siguientes pasos:
1. Para abrir la librera de Simulink basta con escribir en la ventana principal de Matlab la palabra
simulink o pulsar en la pestaa que aparece en la barra de herramientas de Matlab en la que pone
Simulink Library.

Figura 28. Formar de iniciar Simulink: escribir simulink (izquierda) o pulsar en Simulink Library (derecha)

2. Una vez aparece la librera de Simulink, hacer click en la ventana New Model que aparece en la
parte superior izquierda para abrir un nuevo modelo:

Figura 29. Crear nuevo modelo en Simulink

3. En el modelo nuevo que aparece, ir a la barra de herramientas y hacer seleccionar la pestaa Tools
Run on Target Hardware Prepare to Run para configurar los parmetros correspondientes
del modelo para que funcione con el Arduino Mega.

32
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
33
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

3.1
3.3

3.2

Figura 30. Preparacin del modelo para funcionar en Arduino Mega

4. Aparece entonces una nueva ventana (Configuration Parameters), en la cual en el apartado Run on
Target Hardware hay que indicar el Target Hardware en el que se va a simular el modelo, que en
este caso ser el Arduino Mega 2560:

4.2
4.1

Figura 31. Seleccin del Hardware Arduino Mega 2560

Al seleccionar el Arduino Mega 2560 aparecen diferentes opciones de configuracin. Lo nico que
hay modificar es el tipo de conexin del puerto USB al que se conecta el Arduino para pasar de
Automatically a Manually (de seleccin automtica a manualmente) e indicar el puerto al que se
conecta el dispositivo1:

4.3

4.4

Figura 32. Seleccin del puerto USB al que est conectado el Arduino

5. Una vez seleccionado el Arduino Mega como Hardware y el puerto al que est conectado, se procede
a configurar aspectos relacionados con el tipo Solver. Para ello, dentro del apartado Solver se realizan

1Se puede ver el nmero de puerto COM que corresponde al Arduino desde el Administrador de dispositivos de Windows (para que
aparezca debe estar conectado el Arduino).
34
Modelo de Simulink

los siguientes cambios y pulsar Apply:


5.1. Simulation Time Stop Time: inf
5.2. Solver Options Type: Fixed-step Solver: discrete (no continuous states)
Fixed-step size (fundamental sample time): 0.05

5.1 5.2
5.3 5.4

5.5

Figura 33. Configuracin de parmetros del apartado Solver

Con estos cambios lo que se est indicando es que el tiempo de simulacin es ilimitado y se detendr
cuando el usuario lo decida y que los bloques se ejecutarn en tiempo discreto y con paso fijo de 0.05
segundos.
Tras modificar los parmetros de configuracin del modelo, se ha de seleccionar el modo External (Figura 27)
y, una vez creado el modelo que se quiere utilizar y antes de comenzar la simulacin, pulsar en Deploy to
Hardware para cargarlo y programar el Arduino (asegurar que est conectado al puerto USB indicado en la
configuracin de parmetros).

Figura 34. Deploy to Hardware

Aunque es recomendable realizar la configuracin de parmetros al comienzo de la creacin del modelo,


tambin se puede modificar una vez creado pero antes de comenzar la simulacin. Una vez guardado el
modelo no es necesario volver a configurarlo.
Una vez hecho esto el modelo ya est listo para incluir bloques y realizar simulaciones. Para comenzar o parar
la simulacin basta con pulsar los botones Run o Stop segn corresponda.

5.3 Modelo de envo de seal PWM: Control del motor


En este apartado se detallan las caractersticas que debe tener la parte del modelo de Simulink que se encarga
de enviar la seal que aporta el movimiento de giro del motor. Gracias al bloque PWM que viene en la librera
de bloques de Arduino se puede enviar por el pin que se indique del Arduino la seal de informacin tipo
PWM que debe recibir el ESC para hacer girar el motor.
En la Figura 35 se muestra un modelo bsico con los bloques necesarios para hacer girar el motor desde
Simulink. Se trata de un modelo bastante sencillo y que, como se puede ver en la ventana que aparece al hacer
doble click sobre el bloque PWM (a la derecha de la Figura 35), genera una seal PWM cuyo duty cycle2
depende del valor de entrada al bloque, que debe estar comprendido entre 0 y 255. Es decir, el bloque PWM
necesita una seal de entrada con valor entre 0 y 255 donde 0 corresponde a duty cycle de 0% y 255 a un duty

2 El duty cycle de una seal suele expresarse como el porcentaje de tiempo que se encuentra la seal activa dentro de un mismo periodo. En
la Figura 10 se puede ver un ejemplo de cmo vara el duty cycle de una seal PWM.

34
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
35
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
cycle del 100%. El porqu de que el valor mximo sea 255 es porque al Arduino se le transmite 1 byte (8 bits),
cuyo valor mximo en decimal es 255.
Tambin hay que indicar en el bloque PWM el pin de salida analgica del Arduino que se va a utilizar, que en
este caso por ser Arduino Mega deber ser uno de los pines de entre el 2 y el 13. Una vez hecho esto, bastar
con conectar el cable correspondiente del ESC al pin seleccionado.

Constant Slider Manual PWM


Gain Switch

Figura 35. Modelo sencillo de envo de seal PWM (izquierda) y ventana de


parmetros del bloque PWM (derecha)

El modelo est formado por varios tipos de bloques disponibles en la librera de Simulink:
Bloques Constant que proporcionan un valor constante fijado por el usuario. El valor se puede
cambiar haciendo doble click sobre el bloque y escribiendo uno nuevo, y gracias al modo external se
puede cambiar tanto antes de la simulacin como mientras se est simulando el modelo.
Bloque Slider Gain que consiste en una ganancia variable cuyo valor se puede cambiar con un botn
deslizante entre el mximo y mnimo que se indique. Este bloque no es necesario pero aporta
comodidad a la hora de variar la el valor de la seal, ya que si se coloca como entrada al bloque una
constante de valor 1, la salida de la ganancia deslizante ser el valor que indique la ganancia, lo cual
es ms rpido que ir modificando el valor de la constante para cada cambio.
Bloque Manual Switch que permite elegir de entre dos entradas posibles de forma manual. Se ha
utilizado para poder apagar el motor de forma rpida en caso de que sea necesario, colocando como
una de sus entradas una constante de valor cero.
Bloque PWM que hace que el Arduino proporcione una seal de salida PWM por el pin que se
indique y con el duty cycle que corresponda al valor de entrada al bloque.
Con un bloque que proporcione una constante y el bloque PWM sera suficiente para crear la seal PWM, pero
el Switch y el Slider Gain aportan seguridad y comodidad durante la simulacin (no olvidar que se est
moviendo una hlice a gran velocidad).

5.3.1 Arranque del motor

Antes de comenzar a simular y encender el motor hay que tener en cuenta varios aspectos. Lo primero es que
hay que armar el ESC antes de arrancar el motor. Para ello, se alimenta el ESC con la fuente de alimentacin y
se le enva desde Ardunio una seal PWM con valor igual a 100 en Simulink, si suena un pitido es que el ESC
36
Modelo de Simulink

se ha armado correctamente. Una vez listo el ESC hay que ir aumentando progresivamente el valor de la seal
hasta que el motor comience a funcionar. Cuando el ESC se ha armado no hace falta volver a armarlo hasta
que no se desconecte la fuente de alimentacin.
Cada motor arranca con un valor diferente. En este caso el motor utilizado comienza a moverse a partir del
valor de seal igual 150 desde Simulink, estando el ESC alimentado con una fuente a 10V. Antes de aplicar el
valor de 150, al empezar la simulacin se debe enviar una seal con valor cero, posteriormente valor 100 para
armar el ESC, tras escuchar el pitido aumentar hasta el valor a 130 y esperar unos segundos para ya poder
enviar el valor de 150. Es posible que una vez haya arrancado, se pueda disminuir el valor de la seal por
debajo de 150 sin que se apague el motor.

5.4 Modelo de recepcin de datos del potencimetro giratorio


En caso de que se use un potencimetro giratorio como sensor de medicin del ngulo, el modelo a debe
incluir determinados bloques dedicados a la recepcin de la informacin que aporta el potencimetro. Como se
ha comentado anteriormente el potencimetro aporta una seal analgica por uno de sus terminales cuyo valor
vara segn la posicin del potencimetro. El valor de esta seal analgica puede ser medido desde uno de los
pines de entrada analgica de la placa Arduino. Para ello se ha de configurar el pin correspondiente como
entrada y visualizar el valor en Simulink. Todo ello se puede hacer usando los bloques disponibles en la
librera sin tener que escribir ningn cdigo en Arduino.
En la Figura 36 se muestra un modelo sencillo que recibe la seal analgica y la muestra tanto en un display
como en una grfica.

Scope

Analog Data Type Display


Input Conversion

Figura 36. Modelo bsico de recepcin de seal analgica (izquierda) y ventana de parmetros del
bloque Analog Input (derecha)

El modelo est formado por varios tipos de bloques disponibles en la librera de Simulink:
Bloque Analog Input: proporciona la seal recibida por el Arduino desde el potencimetro. Hay que
indicar el pin que se va utilizar como entrada haciendo doble click sobre el bloque e indicndolo en el
apartado Pin number.
Bloque Data Type Conversion: convierte una seal de entrada de cualquier tipo de dato al tipo que se
le indique. Se utiliza para cambiar el tipo de dato de la seal a tipo double para evitar problemas al
utilizar la seal con otros bloques operacionales.
Bloque Display: muestra el valor de la seal en cada instante. Es un bloque que permite ver de forma
rpida como vara la seal y el valor de la misma de forma visual.
Bloque Scope: representa grficamente la seal de entrada en el tiempo. Muy til para ver su
evolucin.

36
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
37
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
Como se puede ver, el modelo de recepcin de datos del potencimetro es sencillo y no requiere de una
comunicacin compleja. La seal que se recibe esta en unidades de voltaje, por lo que en el modelo del
sistema habr que incluir bloques que permitan obtener el valor en ngulo, que no es ms que obtener la
relacin entre voltaje-ngulo. Al ser un potencimetro lineal esta relacin se obtiene fcilmente.

5.5 Modelo de recepcin de datos del sensor IMU


Ya se ha comentado en este mismo captulo que la comunicacin del sensor IMU utilizado (MPU 6050) con
Arduino es del tipo I 2 C. La librera de bloques especfica para Arduino es limitada y no dispone de ningn
bloque que permita este tipo de comunicacin, por lo que surge la necesidad de crear uno propio. Esto es
posible gracias al bloque S-Function de Simulink.
Los bloques S-Function estn disponibles en la librera de Simulink. Permiten armar bloques programados en
lenguaje C y que funcionen en tiempo real. En [1] se encuentra disponible una gua muy completa de cmo
crear bloques S-Function para realizar funciones que no estn disponibles en Simulink, aunque aqu se
utilizar un bloque ya creado.
El cdigo que permite la comunicacin I 2 C entre Arduino y el sensor MPU6050 es algo complejo y requiere
de conocimientos previos de programacin. En internet hay disponible diferentes cdigos que permiten esta
comunicacin, algunos de ellos ya adaptados a la IMU que se utiliza. Es por ello por lo que se ha utilizado un
bloque S-Function disponible para descargar de forma gratuita desde [2] que realiza la recepcin en Simulink
de los datos del acelermetro y el girscopo para el caso del sensor MPU6050 y proporciona como salida sus
valores en tiempo real.
En la Figura 37 se muestra el bloque S-Function descargado de internet (sf_MPU6050_Driver) el cual aporta
los datos de aceleracin y velocidad angular en tres ejes perpendiculares entre s (6 salidas).

Figura 37. Bloque S-Function que permite la comunicacin I 2 C con el sensor MPU6050

Observando el datasheet [3] del sensor MPU 6050 se llega a que es necesario aplicar un factor de escala a los
valores en bruto que aporta el sensor para tener los datos de aceleracin y velocidad angular en unidades de
gravedad y grados por segundo, respectivamente. Este factor de escala se puede aplicar en el cdigo dentro del
propio bloque para que aporte los datos con las unidades directamente, o se puede hacer en Simulink a travs
de bloques de ganancia. El factor de escala para pasar los datos del girscopo a unidades de grados/segundo es
131, mientras que para pasar los datos del acelermetro a unidades de gravedad (g) el factor de escala es de
16.384.
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

6 ELECCIN DEL SENSOR DE POSICIN

Hasta ahora se han detallado los componentes que forman el sistema, as como sus caractersticas principales y
funcionamiento. Se ha estudiado su comportamiento y se ha obtenido un modelo matemtico del movimiento.
Se ha explicado el modelo de Simulink con los bloques que lo forman y cmo realizar la simulacin. Pero
todava no se ha comentado nada acerca de los resultados al aplicar toda la teora a la prctica. Como se ver
en este captulo, se encuentran limitaciones a la hora de llevar lo aprendido a la prctica, en concreto con los
resultados obtenidos del sensor IMU para medir la posicin, siendo necesario estudiar los resultados
experimentales y elegir entre este sensor o el potencimetro como medidor del ngulo.

6.1 Medicin del ngulo con sensor inercial MPU6050


En Captulos anteriores se han indicado las caractersticas de los sensores de medidas inerciales o IMU. Estos
proporcionan medidas de aceleracin y velocidad angular medidos por un conjunto de acelermetros y
girscopos. Tanto el acelermetro como el girscopo miden los datos en tres ejes perpendiculares entre s.
Como ya se coment anteriormente, el inconveniente es que, debido a que integra los valores de la posicin y
velocidad constantemente, aparece un error acumulativo que crece con el tiempo. Tambin aparece un error en
la medida del ngulo debido a que el acelermetro mide cualquier tipo de aceleracin que a veces no son
deseables, como son las vibraciones que produce el motor al estar encendido. Por ello suele ser necesario
aplicar algn tipo de filtro a las medidas que se obtienen de la IMU antes de utilizarlas para poder obtener
datos fiables y precisos.
Suponiendo que la nica aceleracin que acta sobre la IMU es la de la gravedad se puede calcular, con los
datos del acelermetro, la posicin respecto de la vertical. Para ello se coloca uno de los ejes del acelermetro,
por ejemplo el eje X, paralelo a la horizontal en todo momento de modo que la IMU solo puede girar en el eje
X. Entonces, si la IMU se encuentra como paralela al suelo como en la posicin A de la Figura 38, el valor
medido por el acelermetro en el eje Z es igual a la gravedad. Si la IMU gira respecto del eje X como se
representa en la posicin B, entonces la direccin de la gravedad forma un ngulo con los ejes Y y Z que se
puede medir.

Y
IMU
IMU





(A) (B)

Figura 38. Posicin de la IMU respecto de la gravedad


40
Eleccin del sensor de posicin

Una de las formas de medir la posicin es llamando ac_z y ac_y al valor medido por el acelermetro en el eje
Z e Y respectivamente, y aplicando la siguiente relacin que define el ngulo con la vertical:

_ _
tg = _ = arctg(_) (61)

La ecuacin (6-1) permite obtener el valor del ngulo girado con los datos que proporciona el acelermetro.
Pero tambin se puede calcular la posicin con los datos del girscopo. Al proporcionar la velocidad angular
en cada eje, que no es ms que la derivada de la posicin, se puede integrar se obtiene la posicin.
Si se conoce el ngulo inicial de la IMU, se puede sumar el valor que marca el giroscopio para obtener el
ngulo en cada momento. Llamando vel_x a la velocidad angular medida por el acelermetro en el eje X y
el tiempo de muestreo de la seal, se tiene la ecuacin siguiente:

() = ( 1) +vel_x (62)

() representa el ngulo actual y ( 1) el ngulo correspondiente a la medicin anterior.

Las ecuaciones (6-1) y (6-2) salen de aplicar la teora, pero al aplicarlas a la realidad se obtiene resultados
diferentes. El ruido y los errores afectan constantemente a las mediciones que realiza la IMU, por lo que puede
que la posicin obtenida con estas ecuaciones no sea la real.
En estos casos se suele aplicar algn tipo de filtro que combine los datos de aceleracin y velocidad angular,
eliminando el ruido que aparece en el acelermetro y la desviacin del girscopo. Hay diferentes filtros que se
utilizan para este tipo de seales, como el filtro de Kalman o el filtro complementario. Por la complejidad del
filtro de Kalman se ha escogido el filtro complementario para calcular una aproximacin del ngulo.
El filtro de paso bajo consiste en una fusin de dos filtros: uno de paso alto para el girscopo y otro de paso
bajo para el acelermetro. El filtro de paso alto deja pasar los valores por encima de un cierto lmite, mientras
que el de paso bajo solo permite los que estn por debajo. La ecuacin del filtro complementario tiene la
siguiente forma:

= 0.98 ( + ) + 0.02 (63)

Donde es el ngulo calculado con la ecuacin (6-2) y el obtenido con la ecuacin (6-1).

6.1.1 Pruebas experimentales con IMU

Se van a realizar algunas pruebas experimentales para ver la precisin de resultados que se obtienen. Para ello
se utiliza un modelo parecido al que se muestra en la Figura 37 del captulo anterior.
Lo primero es ver cmo responde la seal con el motor encendido y apagado. En la Figura 39 se muestra un
ejemplo de la seal de salida en bruto (sin aplicar el factor de escala) de uno de los ejes del acelermetro. Se
puede ver cmo mientras el motor est apagado la seal es sensible a pequeas variaciones, pero es al
encender el motor cuando los datos del acelermetro se ven completamente afectadas por el ruido que produce
el motor debido a las vibraciones.

40
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
41
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

MOTOR MOTOR ENCENDIDO


APAGADO

Figura 39. Seal proporcionada por el acelermetro durante una simulacin con el motor
apagado y encendido

Se va a probar en una simulacin a aplicar el filtro complementario a la seal para ver la medida del ngulo
que aporta. En la Figura 40 se han representado los resultados de la respuesta del sistema ante un escaln de
entrada. Se ve que la seal no es muy precisa y que, estando el sistema en equilibrio, los valores del ngulo que
se mide oscilan en torno a diez grados alrededor del ngulo real.

Figura 40. ngulo medido desde Simulink aplicando el filtro complementario a los datos de la IMU
42
Eleccin del sensor de posicin

6.2 Medicin del ngulo con sensor potencimetro giratorio


La medicin de la posicin usando un potencimetro giratorio es relativamente sencilla y su precisin
depender de la precisin y calidad del mismo. Como se ha explicado anteriormente, un potencimetro
proporciona una seal analgica variable que mide un voltaje y que vara segn la posicin del botn giratorio.
La gran ventaja respecto a la IMU es que no se ve afectado en gran medida por las vibraciones que introduce
el movimiento del motor y permite obtener valores de posicin ms que fiables.
Al tratarse de un potencimetro lineal y con rotacin limitada de 300 aproximadamente, proporciona una
seal lineal que vara entre dos valores, mximo y mnimo. Sabiendo esto se puede encontrar de forma directa
la relacin entre el valor de seal analgica y valor en ngulos de la forma = (_).
Para ello basta con resolver una ecuacin lineal de la forma = + , donde la variable dependiente y
sea el ngulo o posicin y la variable independiente x el valor de la seal analgica que proporciona el
potencimetro. Las constantes A y B se obtienen de forma experimental midiendo las variables x e y en dos
puntos diferentes.

6.2.1 Pruebas experimentales con potencimetro

Las pruebas se realizan con el modelo de Simulink similar al de la Figura 36 que recibe la seal analgica del
potencimetro desde arduino y permite visualizar y operar con los datos.
En la siguiente grfica (Figura 41) se muestra el valor bruto que proporciona el potencimetro en una
simulacin del sistema. En la grfica se muestra una zona en la que el motor est apagado y el valor del
potencimetro es constante, hasta el momento en el que se enciende alrededor del segundo 25 y vara su valor
al cambiar de posicin el sistema.

MOTOR APAGADO

MOTOR ENCENDIDO

Figura 41. Seal analgica proporcionada por el potencimetro durante una


simulacin con el motor encendido y apagado

Si se observa la seal mientras el motor est apagado se aprecia que la seal es estable y que apenas hay ruido.
El potencimetro se encuentra inmvil en equilibrio y as lo refleja la seal. En el momento en el que se

42
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
43
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
enciende el motor, el sistema se mueve, el ngulo de la barra vara y el botn giratorio del potencimetro
cambia de posicin como se ve en la Figura 41. Tras uno o dos segundos de oscilacin, la barra alcanza de
nuevo el equilibrio a una determinada posicin y el potencimetro vuelve a proporcionar una seal constante
aunque con variaciones puntuales, producidas por el ruido que proporciona el movimiento del motor.
Comparndolo con el caso de la IMU se puede ver como la seal del potencimetro presenta mucho menos
ruido una vez el motor est encendido y que los datos son mucho ms fiables y precisos.

Hay que tener en cuenta que el valor de la seal no se ha cambiado an a unidades de grados. Para obtener el
valor en grados habr que obtener la aproximacin lineal comentada al inicio de este apartado.
Se tiene la siguiente ecuacin lineal
= +
Donde la variable y representa el valor en ngulos de la variable x. Se va a obtener el valor de las constantes A
y B para el caso en el que el valor mnimo del potencimetro se corresponde con 0. Para ello se coloca la
posicin del potencimetro en uno de sus extremos y se mide el valor de la seal. Con ayuda de un
transportador de ngulos se gira el potencimetro 90 y se vuelve a medir el valor de la seal. Teniendo estos
dos puntos (x0,y0) y (x1,y1) se obtiene la ecuacin buscada.

Figura 42. Lmites del valor de la seal analgica del potencimetro: 0 y 1023

El valor de la seal analgica que proporciona el potencimetro vara entre 0 y 1023 como se puede ver en la
Figura 42. Para sacar la relacin entre el valor de esta seal y el ngulo que forma, se asigna al valor 1023 el
valor en ngulo de 0 grados. Si ahora se gira 90 tenemos que el valor correspondiente a 90 es 693, es decir:
0 = 0 0 = 1023
1 = 90 1 = 693
Haciendo clculos sencillos se llega a la ecuacin antes planteada que relaciona el ngulo con la seal
analgica:
= + = 0.273 + 279
44
Eleccin del sensor de posicin

Figura 43. Relacin entre ngulo girado en el potencimetro y seal analgica

Al ser una ecuacin sencilla, se puede implementar en Simulink utilizando ganancias y sumadores:

Figura 44. Bloque para implementar la ecuacin que relaciona la seal del potencimetro con el
valor en ngulos de su posicin

Ya que la posicin de 0 de la barra no coincide con la posicin de 0 del potencimetro, se puede ajustar el
valor de la constante Constant de la Figura 44 con la intencin de que la salida en ngulos sea el ngulo real
del sistema y no el del potencimetro. Simplemente colocando el sistema en la posicin de 0 de forma visual,
se anota el valor que se obtiene en grados en Simulink y se resta o suma al valor de la constante para que el
valor en Simulink tambin sea 0.
Una vez se tiene el valor en ngulos del giro del potencimetro se vuelve a medir para el caso en el que el
motor est encendido para comprobar cmo afecta el ruido procedente de las vibraciones que aparecen. En la
Figura 45 se muestra la seal del ngulo antes y despus de encender el motor frente al tiempo. Hasta los 15
segundos aproximadamente el motor se encuentra apagado y la posicin del sistema es de alrededor de -4.5,
siendo la seal estable y con variaciones mnimas. A partir del segundo 15 se enciende el motor y la posicin
cambia varios grados hasta colocarse en 0 aproximadamente. En este caso la seal es en general estable pero
aparecen ciertos picos de ruido debido a las vibraciones que produce el motor. An presentado estos picos de
44
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
45
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
ruido se puede considerar que aporta valores fiables de la posicin del sistema.

Ruido

Encendido del
motor

Figura 45. Seal de ngulo antes y despus de encender el motor

Tras los resultados obtenidos para ambos sensores se ha escogido finalmente el potencimetro giratorio como
sensor de medida del ngulo, ya que aporta una medida ms precisa y fiable que en el caso de la IMU.
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

7 CONTROL DEL SISTEMA

7.1 Identificacin de Parmetros

7.1.1 Caracterstica esttica

La caracterstica esttica de un sistema es la relacin entre la entrada y la salida en rgimen permanente.


En este proyecto se tiene que la entrada al sistema es la fuerza que genera la hlice, mientras que la salida es la
posicin del sistema, expresada a travs de un ngulo .
El esquema general es el siguiente:

Fh Sistema
G(s)
Figura 46. Entrada y salida del sistema a controlar

Se tiene que la entrada que se le da al sistema es la fuerza que se desea que genere la hlice para que se alcance
una determinada posicin. A priori, lo nico que se conoce es el rango del valor de la seal de control que hay
que introducir en el sistema para que se mueva el motor, pero no la fuerza que genera el movimiento de la
hlice. Esta fuerza depende de la forma de la hlice, velocidad de giro o densidad del aire, que son datos
complicado de medir. Para obtener el valor de la fuerza se calcula la caracterstica esttica de la fuerza
generada por la hlice en funcin de la seal de control, y obtener as una relacin entre la fuerza y la seal de
control.
De esta forma, se puede representar el sistema de la Figura 46 dividido en dos subsistemas, de tal forma que:

Fe Relacin
Seal de
Control

Sistema
Fe -SC

Figura 47. Entradas y salidas de cada subsistema


48
Control del Sistema

Una vez se conoce la relacin entre la fuerza generada por la hlice y su valor correspondiente de la seal de
control se puede obtener la caracterstica esttica del sistema completo, que tiene como entrada la fuerza de
empuje generada por la hlice, y salida la posicin del sistema.

7.1.1.1 Caracterstica esttica de la fuerza generada por la hlice en funcin de la seal de control
La necesidad de conocer el valor de la fuerza que genera la hlice (en Newtons) lleva a obtener la
caracterstica esttica de sta frente a la seal de control, de forma que quede definido el valor de la fuerza en
funcin del valor de la seal de control. Esto permite que la entrada del sistema se de en valores de Fuerza o
Newtons.
La caracterstica esttica se obtiene de manera experimental como se comenta a continuacin. Se considera
como seal de entrada la seal de control, que se enva desde Simulink, y seal de salida a la fuerza de empuje
que genera el giro de la hlice. El objetivo es definir el valor de la fuerza para cada valor de la seal de control.

Por teora de mecnica de fluidos se sabe que la fuerza de sustentacin que genera un perfil aerodinmico que
se desplaza dentro de un fluido viene definido por la siguiente expresin:

1 (71)
L = V 2 SCL
2
Dnde L es la sustentacin del perfil (Lift en ingls), es la densidad del fluido, V es la velocidad relativa del
fluido respecto al perfil, S es la superficie del perfil y es el coeficiente de sustentacin del perfil.
Dicha ecuacin podra aplicarse al caso que nos ocupa, ya que una hlice no es ms que un perfil
aerodinmico que se mueve de forma giratoria, es decir, que tiene una velocidad respecto del aire, por lo que
produce sustentacin o empuje. Pero por otra parte, el coeficiente de sustentacin no es una variable fcil
de medir ya que depende de la forma del perfil de la hlice. Es por ello por lo que medir de forma terica la
sustentacin o fuerza que produce la hlice no es posible con los instrumentos que se disponen en el rea de
trabajo. Pero hay otros mtodos experimentales que permiten obtenerla, como el que se va a aplicar a
continuacin.

Para medir la fuerza que ejerce la hlice se ha recurrido a un mtodo experimental en el que se mide
directamente la fuerza que ejerce la hlice en movimiento a travs de un peso. El peso utilizado tiene precisin
de un gramo y es el que se muestra en la Figura 48.

Figura 48. Peso utilizado para medir la fuerza de empuje que genera la hlice

Para realizar la medicin se ha modificado la estructura, cambiando la barra que se utiliza por una de mayor
48
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
49
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
longitud para poder apoyar el extremo opuesto al motor sobre el peso como se muestra en la Figura 49.

FH Fp

PESO

Figura 49. Medicin experimental de la fuerza generada por el giro de la hlice

Se ha colocado el sistema de tal forma que, estando el motor apagado, la barra se encuentra en equilibrio y
apoyada sobre el peso. De esta forma, al ser un sistema indeformable, toda fuerza que se genere hacia arriba en
el extremo de la barra donde se encuentra la hlice es medida hacia abajo en el extremo opuesto con el peso.
Dicha medida se obtiene con precisin de un gramo, por lo que habr que pasarla a Newtons. Ya que el
sistema est en equilibrio, el momento generado por la fuerza que genera la hlice se compensa por el
momento generado por la fuerza de reaccin que produce el peso, de tal forma que hay equilibrio de
momentos e igualando la relacin fuerza por distancia se obtiene que:

= (72)

Donde es la fuerza generada por la hlice, la distancia del eje de giro del sistema al eje de giro de la
hlice, es la fuerza medida por el peso (obtenida en gramos) y la distancia del peso al eje de giro del
sistema. En la ecuacin (7-2) la nica incgnita es , la cual se puede despejar directamente, quedando:

(73)
=

Con lo que, conociendo las respectivas distancias al eje y el valor medido por el peso se puede obtener una
medicin aproximada del valor de la fuerza que genera la hlice. Ya que el valor de fuerza que proporciona el
peso est en gramos, habr que pasar la fuerza a Newtons, usando la siguiente relacin:

m 1 kilogramo (74)
F[Newtons] = F[gramos] gravedad [ 2 ]
s 1000 gramos
50
Control del Sistema


Considerando el valor de la gravedad igual a 9.81 2 , la ecuacin (7-4) queda de la siguiente forma:

F[Newtons] = 9.81 103 F[gramos] (75)

La medicin de la caracterstica esttica se ha realizado siguiendo estos pasos:

1. Se coloca el sistema como se muestra en la Figura 49, de tal forma que la barra queda apoyada en el
peso estando el motor apagado. Se anota el valor que marca el peso antes de encender el motor.
2. Se activa el motor con el valor mnimo de la seal de control que produce movimiento, y se anota el
valor medido por el peso en rgimen permanente, es decir, una vez alcanzado el equilibrio.
3. Se aumenta la seal de control de 5 en 5 unidades hasta llegar a 255, anotando el valor medido por el
peso en rgimen permanente correspondiente a cada valor de entrada.

En este caso se ha utilizado un modelo de Simulink simplificado, en el que solo se necesita un bloque que se
encarga de enviar la seal de control PWM desde el Arduino al ESC. En la Figura 50 se muestra el modelo
utilizado.

Figura 50. Modelo de Simulink utilizado para enviar la seal de control al motor

Una vez realizadas las mediciones para todo el rango de funcionamiento del motor, se desea conocer la fuerza
generada por la hlice. Para ello, se toman las mediciones obtenidas anteriormente por el peso y se les resta el
valor inicial del peso medido antes de encender el motor. De esta forma se obtiene el incremente de fuerza
entre la fuerza inicial con el motor apagado y la fuerza medida una vez encendido. Este incremento de fuerza
es la fuerza generada por la hlice, ya que no interviene ninguna otra fuerza en el proceso. La fuerza generada
50
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
51
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
por la hlice medida en gramos se pasa a Newtons con la frmula (7-5).

Los datos iniciales de la prueba realizada son los siguientes:


- Fuerza en gramos que mide el peso inicialmente con el motor apagado: Fp0 = 33 gramos
- Distancia desde el eje de la hlice al eje de giro de la barra: H = 0.2 m
- Distancia desde el eje de giro de la barra al punto de apoyo en el peso: P = 0.252 m

Figura 51. Medicin inicial del peso con el motor apagado

En la Tabla 7-1 se muestran los resultados obtenidos tras la medicin. Se han presentado tres columnas con los
datos correspondientes a la seal de control de entrada, el valor medido por el peso para cada entrada y el valor
correspondiente a la fuerza de empuje que genera la hlice. Para obtener la ltima columna se ha procedido
como se ha comentado anteriormente, restando al valor medido en gramos el valor inicial medido con el motor
apagado 0 y aplicando la frmula (7-3) y (7-4), que con los datos que se tienen queda de la siguiente forma:

lP 0.252 (76)
FH = FP = 9.81 103 (FP [gramos] Fp0 ) = 0.0124 (FP [gramos] Fp0 )
lH 0.200

Siendo la fuerza generada por la hlice ya en Newtons, [] los gramos que marca el peso con el
motor encendido y 0 los gramos que marca el peso antes de encender el motor.
Tambin se han representado los datos obtenidos grficamente en la Figura 52.
52
Control del Sistema

Tabla 7-1. Medida experimental de la fuerza generada por la hlice en funcin de la seal de control
Medicin del
Seal de control Fuerza hlice,
peso,
[0-255] [Newtons]
[gramos]
0 0 0
149 0 0
150 44 0.14
155 56 0.28
160 66 0.41
165 76 0.53
170 86 0.66
175 96 0.78
180 106 0.90
185 115 1.01
190 125 1.14
195 140 1.32
200 147 1.41
205 153 1.48
210 161 1.58
215 170 1.69
220 191 1.95
225 192 1.97
230 192 1.97
235 192 1.97
240 192 1.97
245 192 1.97
250 192 1.97
255 192 1.97

Figura 52. Fuerza generada por la hlice en funcin de la seal de control

52
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
53
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
Se puede observar que se alcanza un valor mximo de la fuerza a partir del cual, aun aumentando el valor de la
seal de control, la fuerza se mantiene constante. Se tiene entonces un rango de valores de la seal de control
dentro del cual al variar la seal de control varia el valor de la fuerza generada, y fuera de ese rango la fuerza
no vara. Dicho rango es el que interesa y es el comprendido entre los valores [150-225] de la seal de control.
Dentro de dicho rango, la relacin entre el valor de la seal de control y la fuerza que genera la hlice se puede
aproximar por una ecuacin.
Volviendo a la Figura 48, recordamos que se necesita una ecuacin que relacione la fuerza generada por la
hlice con la seal de control correspondiente de forma que
= ( )
La opcin Basic Fitting de Matlab permite obtener una ecuacin que relacione dos variables entre s a partir de
una curva con datos de dichas variables. Esto permite obtener una funcin en la que la variable dependiente es
la seal de control, y la variable independiente la fuerza que genera la hlice. Esta opcin se encuentra en el
men Tools de la barra de herramientas de la ventana que se abre al representar grficamente una curva en
Matlab, y da la posibilidad de elegir entre varios tipos de aproximacin: por el interpolante tipo spline, por el
interpolante que preserva la forma, o por aproximacin polinmica de grado 1 hasta 10. En la Figura 53 se
muestra dnde se encuentra la opcin Basic Fitting en la barra de herramientas y la ventana que aparece,
dnde se debe seleccionar el tipo de aproximacin.

Figura 53. Ventana de ajuste de la opcin Basic Fitting que aparece al abrir el men Tools>Basic Fitting

Segn lo comentado anteriormente, para obtener la ecuacin buscada se representa grficamente en Matlab la
seal de control en funcin de la fuerza generada por la hlice y se aplica la opcin Basic Fitting a la curva
obtenida. En la Figura 54 se ha representado grficamente la aproximacin cuadrtica obtenida a partir de la
curva representada. Se ha indicado que se muestre la ecuacin de la curva de aproximacin cuadrtica y sta
ser la utilizada en el bloque creado en Simulink encargado de pasar de fuerza a seal de control (Figura 55),
que tiene como entrada la fuerza que genera la hlice y salida la seal de control correspondiente.
54
Control del Sistema

Figura 54. Funcin que aproxima la curva de la seal de control frente a la fuerza generada por la hlice

Figura 55. Bloque del modelo de Simulink que se encarga de pasar de valor de Fuerza a Seal de Control

7.1.2 Identificacin del sistema. Funcin de transferencia

Para crear un controlador que acte sobre el control del sistema se necesita definir la funcin de transferencia
que aproxime el movimiento del mismo.
Se trata de un sistema de segundo orden. Si llamamos a la salida y a la entrada del sistema, la ecuacin del

54
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
55
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
movimiento tiene la siguiente forma

d2 y dy (77)
+ a 1 + a2 y = b1 u
dt 2 dt
Ya en el Captulo 4 se obtuvo la ecuacin diferencial linealizada (4-11.2) que define el movimiento del
sistema:

d2 d
I + B + mt g dc cos0 (t) = dH Fh 0 Fh (t)
dt 2 dt

Como se coment, la ecuacin (4-11.2) no se est identificada por completo debido a que hay incgnitas por
definir: la inercia, el coeficiente de rozamiento y distancia al centro de gravedad. Sin embargo, cuando 2 > 0
en la ecuacin (7-7) se recurre a la parametrizacin habitual y se utiliza la siguiente ecuacin:

d2 y dy (78)
2
+ 2n + n 2 y = Kn 2 u
dt dt

Donde los parmetros se pueden obtener fcilmente de forma experimental:


K: ganancia esttica
: Coeficiente de amortiguacin
: frecuencia natural

Esta parametrizacin se puede aplicar a la ecuacin (4-11.2) que ya que en este caso 2 es un mltiplo de
, que en los primeros 90 es positivo. La ecuacin diferencial de segundo orden que define el movimiento
del sistema quedara entonces, con la parametrizacin, de la siguiente forma:

d2 d (79)
2
+ 2n + n 2 = Kn 2 Fh
dt dt
Al igual que el Captulo 4, aplicando la transformada de Laplace a la ecuacin (7-9) queda la funcin siguiente
funcin de transferencia:

(s) Kn 2 (710)
G(s) = = 2
Fh (s) s + 2n s + n 2

En este caso las incgnitas son los parmetros K, y los cuales estn definidos y se pueden obtener
experimentalmente a travs de la relacin de las especificaciones de la respuesta temporal con ellos.
Para ello se analiza la respuesta temporal del sistema frente a una entrada de escaln, de donde se
obtienen los valores de la sobreoscilacin y del tiempo de pico, a partir de los cuales se puede calcular el
coeficiente de amortiguacin y la frecuencia natural:
Sobreoscilacin, S.O.:
y(tp )yeq
SOpu = yeq y(t0 )
(Sobreoscilacin por unidad)


ln2 (SOpu )
(%) = 100 12 =
2 +ln2 (SOpu )

Tiempo de pico, :
t p = t primer pico t entrada_escaln

Figura 56. Ejemplo grfico de sobreoscilacin y tiempo de pico


[Control Automtico, Dpto. Ing. de Sistemas y Automtica US]
56
Control del Sistema


tp = n =
12 n 12 tp

Para obtener el valor de la ganancia esttica se aplica la definicin:


Salida
K= =
Entrada F

Una vez se ha indicado como calcular los parmetros se procede a realizar las pruebas experimentales para
obtener una aproximacin del sistema con datos reales.

7.1.2.1 Respuesta del sistema ante un escaln de subida como entrada


En este caso se realiza una prueba experimental en la que se tiene como seal de entrada un escaln de subida
de 0.5 Newtons (de 1.2 a 1.7 Newtons). El resultado en la salida se muestra en la Figura 57, donde se ha
representado grficamente en el tiempo tanto la seal de entrada de la fuerza en Newtons (Figura 57 inferior,
seal roja) como la respuesta de la seal de salida del ngulo en grados (Figura 57 superior, seal azul).

Figura 57. Respuesta del sistema ante una entrada escaln de subida de 0.5 Newtons. La figura superior es la
respuesta de la salida del sistema (seal azul) producida por la seal de entrada (seal roja)

Se han marcado los puntos necesarios con los valores para obtener los parmetros de la funcin de
transferencia del escaln de subida Gup (s).

56
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
57
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
K up n u 2
Gup (s) = 2
s + 2u n u s + n u 2
Utilizando los valores de los puntos mostrados en la Figura 57 se calcula el valor de cada constante:
Tiempo de pico de subida
t p = 180.7 180.1 = 0.6 s
u

Ganancia esttica de subida


48.532.12
K up = F = 1.71.2
= 32.76 /N

Sobreoscilacin de subida
y(tp ) 62.4348.5
up u
SOpu up = = = 0.85 SO(%)up = SOpu uo 100 = 85%
y(t0 ) 48.532.12
u

Coeficiente de amortiguacin de subida


ln2 (SOpu )
d ln2 (0.85)
u = 2 +ln2 (SOpu )
= 2 +ln2 (0.85) = 0.0517 Sistema Subamortiguado (0 < < 1)
d

Frecuencia natural de subida



n u = = = 5.245 rad/s
10.0592 0.6
1u 2 tp
u

Se tiene pues que la funcin de transferencia del sistema en caso de calcular las constantes a partir de la
respuesta ante un escaln de subida como entrada es:
K up n u 2 32.76 5.2452
Gup (s) = =
s 2 + 2u n u s + n u 2 s 2 + 2 0.0517 5.245 s + 5.2452

7.1.2.2 Respuesta del sistema ante un escaln de bajada como entrada


Al contrario que en el caso anterior, se realiza una prueba experimental en la que se tiene como seal de
entrada un escaln de bajada de 1.7 a 1.2 Newtons. El resultado en la salida se muestra en la Figura 58, donde
se ha representado grficamente en el tiempo tanto la respuesta de la seal de salida del ngulo en grados
(Figura 58 superior, seal azul) como la seal de entrada de la fuerza en Newtons (Figura 58 inferior, seal
roja).
La funcin de transferencia Gdown tiene la misma forma que en el caso anterior pero ahora se utilizan los
datos correspondientes a la prueba experimental con la entrada escaln de bajada (down).
2
() =
2 + 2 + 2
El valor de los parmetros de obtienen a continuacin a partir de los datos representados en la Figura 58:
Tiempo de pico de bajada
= 173.9 173.4 = 0.5

Ganancia esttica de bajada


32.1249.6
= = 1.21.7
= 34.96 /N

Sobreoscilacin de bajada
58
Control del Sistema

( ) 19.57 32.12
= = = 0.718 (%) = 100
(0 ) 32.12 49.6
= 71.8%
Coeficiente de amortiguacin de bajada
2 ( )
2 (0.718)
= 2 +2 ( = 2 +2 (0.718) = 0.105 Sistema Subamortiguado (0 < < 1)
)

Frecuencia natural de bajada



= = = 6.318 /
2 10.1052 0.5
1

Figura 58. Respuesta del sistema ante una entrada escaln de bajada de 0.5 Newtons

Una vez se obtenidos los valores de , y se puede definir la funcin de transferencia del sistema
aproximada por el caso experimental de una entrada escaln de bajada:

2 34.96 6.3182
() = =
2 + 2 + 2 2 + 2 0.105 6.318 + 6.3182

58
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
59
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
7.1.2.3 Simulacin de la funcin de transferencia
En este apartado se va a realizar una simulacin utilizando la funcin de transferencia obtenida en el apartado
anterior para el caso del escaln de bajada, (). La simulacin consiste repetir la situacin descrita en la
prueba experimental, introduciendo como entrada un escaln de bajada de 0.5 Newtons. Una vez terminada la
simulacin se compara la respuesta obtenida con la obtenida en el sistema real para ver si se ha aproximado
correctamente el comportamiento del sistema.
En la Figura 59 se ha representado grficamente la respuesta ante el escaln de entrada para el sistema real
(seal azul) y para la funcin de transferencia (seal roja). La salida de la funcin de transferencia presenta
mayor oscilacin que el caso real por lo que podra ajustarse an ms el valor de los parmetros. Aun as, los
resultados son aceptables y se da por vlida la aproximacin obtenida, por lo que se utilizar esta funcin de
transferencia para crear el controlador en el apartado siguiente.

Figura 59. Respuesta real del Sistema (seal azul) junto a respuesta de la funcin de transferencia (seal roja)
ante la misma entrada escaln

Para realizar la simulacin utilizando la funcin de transferencia se ha creado un modelo en Simulink como el
que se muestra en la Figura 60. En l se utilizan bloques como Step, Transfer Fcn, To Workspace o Clock. El
bloque Step produce una seal escaln con la amplitud y en el momento que se le indique. En este caso la
amplitud es -0.5 y se aplica en un Step Time a los 173.4 segundos (al igual que en el caso real de la Figura
58). En el bloque Transfer Fcn se introducen los datos de la funcin de transferencia que se muestra a la
derecha en la Figura 60. Gracias al bloque To Workspace se pueden guardar los datos de la seal de salida
para posteriormente trabajar con ellas y representarla grficamente frente al tiempo desde Matlab.
60
Control del Sistema

Figura 60. Modelo utilizado para simular la entrada escaln con la funcin de transferencia

7.2 Control sobre el sistema


Se va a realizar un control bastante simple para ver cmo responde el sistema. Se aplica un control por
realimentacin en el que se realimenta el sistema con la salida del mismo, que en este caso es el ngulo. La
realimentacin permite comprar esta salida con la referencia que se le indique y obtener el comportamiento
deseado. El diagrama de bloque del sistema realimentado quedara de la siguiente forma:
Actuador

Referencia Error Fuerza ngulo


Sensor

Controlador SISTEMA
C(s)
ngulo

Figura 61. Diagrama de bloques del sistema con control por realimentacin

Se propone un controlador de la siguiente forma:


1 1
() =
() ( + 1)
Donde la funcin de transferencia G(s) es la obtenida apartados anteriores como Gdown (s). Las constantes
y se obtienen a continuacin:
3
1 3 /

1
= = 0.04
25 25

Hay que tener cuidado ya que el tiempo de muestro que se utiliza en el modelo de Simulink es =0.05 s. Al
ser < se ha decidido utiliza un valor de = 0.1 para realizar el control.

60
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
61
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
La funcin del controlador C(s) queda de la siguiente forma:

Kc 1 1 3 s 2 + 2 0.105 6.318 s + 6.3182 1


C(s) = = 2

s G(s) (af s + 1) s 34.96 6.318 0.1 s + 1

Recordando lo indicado en el Captulo 5 acerca del modelo de Simulink en tiempo real se deca que en la
configuracin de los parmetros se escoge la simulacin en tiempo discreto. Si se desea implementar la
funcin de transferencia del controlador C(s) en el modelo hay que discretizarla para obtener C(z). Para ello
Matlab dispone de la funcin c2d que convierte un sistema dinmico en tiempo continuo en un sistema en
tiempo discreto. Aplicando la funcin c2d a la funcin del controlador en tiempo continuo se obtiene la
funcin en tiempo discreto:
1. Primero se definen el numerador y denominador de la funcin en tiempo continuo, para despus crear
la funcin C(s) con la funcin tf de Matlab. Se escribe en la ventana de comandos de Matlab:
>> nu_c=3*[1 2*0.105*6.318 6.318^2];
>> de_c=34.96*6.318^2*conv([1 0],[0.1 1]);
>> C=tf(nuc,dec)

C=
3 s^2 + 3.98 s + 119.8
------------------------------
139.6 s^2 + 1396 s
Continuous-time transfer function.

2. Una vez que se tiene la funcin C(s), para pasar a tiempo discreto se aplica directamente sobre ella la
funcin c2d:
>> Cd=c2d(C, 0.05, 'matched')

Cd =

0.01763 z^2 - 0.03244 z + 0.0165


----------------------------------------------
z^2 - 1.607 z + 0.6065

Sample time: 0.05 seconds


Discrete-time transfer function.

Esta ltima es la funcin del controlador que se utiliza en el modelo de Simulink con el bloque Discrete
Trasnfer Fcn.
62
Control del Sistema

7.2.1 Modelo de Simulink

Para implementar el control sobre el sistema hay que adaptar el modelo de Simulink incluyendo la
realimentacin y la funcin de transferencia del controlador.
En la Figura 62 se muestra el modelo en Simulink definitivo, en el que se recibe la posicin de sistema y se
controla la velocidad del motor. Se parte de los modelos descritos en el Captulo 5 de recepcin de datos desde
el potencimetro y envo de seal del control del motor, y se aaden los bloques obtenidos en este captulo que
permite realizar el control.

Figura 62. Diagrama de bloques del sistema con control por realimentacin

En la parte superior de la figura se encuentran los bloques del modelo dedicados a la recepcin de la seal del
potencimetro y su traduccin a la posicin en ngulos, que ya est detallado en el Captulo 5. Se ha aadido
el bloque Goto a la salida del ngulo para realizar la realimentacin.
Por otro lado, en la zona inferior del modelo se encuentran los bloques que se encargan de generar la seal de
control y enviarla al motor. La parte del envo de la seal PWM hacia Arduino ya se ha comentado en el
Captulo 5, pero no con la seal de control en valores de fuerza. Para realizar el control se han utilizado los
siguientes bloques:
Para pasar los valores de fuerza a seal de control del motor se ha colocado el bloque MATLAB Function
obtenido en este Captulo y representado en la Figura 55. Este bloque aplica la ecuacin que relaciona la
seal de control con la fuerza que genera la hlice corresponde.
El bloque Discrete Transfer Fcn contiene la funcin de transferencia del Controlador en tiempo discreto,
C(), obtenida en el apartado anterior.
Como se puede ver en el diagrama de la Figura 61, la entrada al controlador es la diferencia (error) entre
la posicin deseada (referencia) y la posicin real. El bloque REF grados hace de referencia y se aplica
como una constante con un bloque Constant, y para el valor de la posicin real medida se utiliza el
bloque From, que recibe la seal del bloque Goto (se produce la realimentacin). Al valor del ngulo de
referencia se le resta el valor del ngulo real con un bloque Add y el resultado es la entrada al controlador.
Al ser una constante, la referencia se puede cambiar durante la simulacin y ver cmo responde el

62
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
63
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn
sistema.
A la seal de salida del controlador se le suma un valor de fuerza que se sabe que, si la salida del
controlador es cero, el sistema est en equilibrio. Es el bloque Fuerza eq y no es ms que un bloque
Constant cuyo valor lo elige el usuario.
A parte de los bloques anteriormente descritos, se han incluido otros que permiten guardar los valores de las
seales para su posterior estudio y bloques de seguridad:
To Workspace: con este tipo de bloque se guarda en Matlab los datos de la seal de entrada.
Bloques de seguridad: Se han colocado dos bloques Manual Switch, que permiten elegir entre dos
entradas. Uno se utiliza para anular la accin del Controlador y otro para anular la seal de control del
motor en caso que sea necesario. Tambin se ha utilizado el bloque Saturation que limita la seal de
entrada entre un lmite inferior y superior, esto permite que el motor nunca se apague y que tampoco
reciba valores muy altos de control que hagan perder el control.

El ajuste de parmetros del modelo es el que se indic en el Captulo 5, que se caracteriza por un tiempo de
muestro de 0.05 segundos, simulacin en modo External y cargado en el Arduino Mega.

7.2.2 Simulacin con control

Una vez creado el modelo se va a realizar una simulacin para comprobar que funciona correctamente y que el
control acta sobre el sistema.
La simulacin se ha basado principalmente en aplicar el controlador y dar valores a la referencia para ver la
respuesta del sistema. En la Figura 63 se muestran los resultados de la simulacin. La grfica superior
representa el valor del ngulo del sistema en cada instante medido por el potencimetro (seal azul) junto con
el valor de referencia indicado en Simulink (seal roja). La grfica inferior representa el valor de la seal de
control que le llega al motor en valores de fuerza. Se ha representado a partir del segundo 200 porque hasta ese
instante no hay informacin de inters.
Lo que se ha hecho es, antes de activar el control, colocar el sistema en una posicin de aproximadamente 50
aplicando una fuerza constante de 1.7 N. Es decir, una vez encendido el motor se indica el valor de 1.7 N en el
bloque Fuerza eq del modelo (Figura 62). El interruptor que hay a la entrada del controlador se encuentra
colocado hacia la constante de valor cero para anularlo, ya que si la entrada al controlador es cero su salida
tambin lo es. Con la intencin de que en el instante inicial cuando se aplique el controlador no se produzca un
cambio brusco de la posicin, se pone una referencia de 50 y posteriormente se activa el control cambiando la
entrada en el interruptor Manual Switch1 que hay antes del controlador. Esto activa el controlador (segundo
215 en la Figura 63 inferior) pero, al ser la referencia casi igual que la posicin el sistema, el sistema no
cambia de posicin. A partir del segundo 227 se empieza a cambiar los valores de la referencia y se puede ver
como en la Figura 63 la seal de la posicin sigue a la seal de referencia. Primero se dan referencias
inferiores y despus se comienza a aumentar la referencia. Recordando que el controlador solo es vlido para
los primeros 90, al llegar a una referencia de 60 el sistema pierde el control y no es capaz de permanecer en
equilibrio, por lo que hay que parar la simulacin. Para controlar el sistema en esta zona habra que aplicar otro
tipo de control y dicho trabajo se deja para un proyecto futuro dedicado nicamente al control del sistema.
64
Control del Sistema

Comienzo
del control
Figura 63. Resultados de la simulacin con control

64
Grado en Ingeniera Aeroespacial
Eduardo Cordero Mallado
Diseo y construccin de un prototipo de sistema Motor-Hlice-Balancn

BIBLIOGRAFA

[1] MathWorks, Device Drivers,. Available:


http://www.mathworks.com/matlabcentral/fileexchange/39354-device-drivers

[2] Reading accelerometer and gyroscope data from MPU6050 with I2C,. Disponible:
http://minseg.webs.com/arduino-downloads

[3] http://datasheet.octopart.com/MPU-6050-InvenSense-datasheet-14421344.pdf

Informacin sobre Motor brushless:


http://housecomputer.ru/rest/hobby/rc_models/brushless_device/brushless02/brushless02.html
https://es.wikipedia.org/wiki/Motor_el%C3%A9ctrico_sin_escobillas
http://www.quadruino.com/guia-2/materiales-necesarios-1/motores-brushless
http://www.motorbrushless.es/
http://www.asifunciona.com/electrotecnia/af_motor_cd/af_motor_cd_8.htm
https://1mecanizadoelarenal.files.wordpress.com/2013/11/motores-brushless.pdf
http://www.electrosector.com/wp-content/ftp/descargas/brushless.pdf?64b304
Informacin sobre Variado o ESC:
http://tallerdedalo.es/web/ESC
http://abottravel.blogspot.com.es/2011/12/how-to-drive-brushless-motor-with.html
http://www.quadruino.com/guia-2/materiales-necesarios-1/esc
Informacin sobre IMU:
http://robologs.net/2014/10/15/tutorial-de-arduino-y-mpu-6050/
https://es.wikipedia.org/wiki/Unidad_de_medici%C3%B3n_inercial
http://smartdreams.cl/unidad-de-medicion-inercial-imu/
Informacin sobre Arduino:
http://www3.gobiernodecanarias.org/medusa/ecoblog/ralvgon/files/2013/05/Caracter%C3%ADsticas-
Arduino.pdf
http://www.menosmedia.org/spip.php?article43
https://www.arduino.cc/
Informacin sobre Potencimetro:
https://curiosoando.com/que-es-un-potenciometro
http://panamahitek.com/que-es-y-como-funciona-un-potenciometro/
http://www.areatecnologia.com/electronica/potenciometro.html
https://www.youtube.com/watch?v=xpxzSrV6CTU

S-ar putea să vă placă și