universidad de sevilla escuela t´ecnica superior de ...aero.us.es/rvazquez/fgj_thesis.pdf · do...
TRANSCRIPT
Universidad de Sevilla
Escuela Tecnica Superior de Ingenierıa
Tesis Doctoral
Sistemas de Control y Guiado para Vehıculos
Aereos No Tripulados: Diseno de Algoritmos y
Sistemas Embarcados
Tesis presentada en el programa “Diseno Avanzado en Ingenierıa Mecanica”,
para la obtencion del tıtulo de doctor en la
Universidad de Sevilla
Autor: Francisco Rafael Gavilan Jimenez
Director: Rafael Vazquez Valenzuela
Dpto. Ingenierıa Aeroespacial y Mecanica de Fluidos
Tutor: Miguel Perez-Saborid Sanchez-Pastor
Dpto. Ingenierıa Aeroespacial y Mecanica de Fluidos
Sevilla. Noviembre, 2012
Resumen
En esta tesis se trata el problema de diseno de sistemas de control de vuelo para aviones no
tripulados, considerando de forma integral el diseno de leyes de control y guiado, junto con los
sistemas necesarios para el vuelo autonomo. Estas leyes tienen como objetivo el seguimiento de
una trayectoria de referencia generada previamente.
En primer lugar, partiendo del estudio del estado del arte, se propone una arquitectura gene-
ral del sistema de control de vuelo. Esto permite tener una vision global de todos los sistemas
necesarios, ası como de las interfaces entre ellos. Esta arquitectura servira de hilo conductor de
la tesis, ya que definira los distintos subsistemas que se desarrollaran en los sucesivos capıtu-
los.
Entrando en los sistemas de control y guiado, se ha propuesto una aproximacion con dos nive-
les. En el nivel inferior se tiene el sistema de control de actitud, encargado de seguir consignas
en velocidad, angulo de trayectoria y angulo de balance; las cuales son generadas por el sistema
de guiado en un nivel superior.
Esta separacion permite abordar ambos problemas con estrategias de control distintas, aso-
ciadas a los condicionantes de cada uno. Ası, considerando el problema de control de actitud, se
propondran nuevas leyes de control mediante tecnicas de control adaptativo no lineal, de forma
que se consiguen leyes validas para toda la envolvente de vuelo del avion, a la vez que las leyes de
adaptacion permiten lidiar con las incertidumbres del modelo aerodinamico y propulsivo.
Por otra parte se plantean dos estrategias de guiado complementarias. En primer lugar se
avanzara en la aplicacion de sistemas de guiado proporcional a aviones no tripulados, obte-
niendo una ley simple y robusta, que permite seguir el camino establecido, aunque no ofrece
mecanismos adecuados de sincronizacion temporal con la referencia. Partiendo de esta ley de
guiado proporcional, se desarrolla una estrategia avanzada de guiado predictivo, consiguiendo
mejoras en el seguimiento de la referencia, al mismo tiempo que se incorporan mecanismos de
sincronizacion temporal con la trayectoria de referencia. En lugar de resolver directamente el
problema de optimizacion no lineal, se realiza una linealizacion explıcita del movimiento del
avion en torno a una solucion de guiado factible (proporcionada por la ley de guiado proporcio-
nal previamente disenada), resolviendo un problema de optimizacion linealizado en torno a esta
solucion de referencia. Mediante un proceso iterativo, se consiguen optimizar las senales de con-
i
ii Resumen
trol proporcionadas por el guiado sin necesidad de acudir a metodos no lineales, y manteniendo
en todo momento una solucion factible disponible.
A continuacion, teniendo en cuenta que para el sistema de control de actitud es fundamental
disponer de una buena medida de la velocidad aerodinamica y de los angulos de ataque y de
resbalamiento, se plantea el diseno de un sistema de medida de datos aerodinamicos especıfico
para la aeronave con la que se esta trabajando. A partir de un estudio de los errores introducidos
en las medidas en funcion de la geometrıa de este sistema (ası como a la instalacion del mismo
en el propio avion), se proporciona un diseno a medida para conseguir una buena precision con
un coste reducido. Se realizan ademas ensayos en tunel aerodinamico, en los que se comprueba
que el error obtenido es acorde con las predicciones realizadas.
En el capıtulo siguiente se aborda el desarrollo del sistema de navegacion de la aeronave, el
cual se encarga de proporcionar medidas de la posicion y de la actitud de la misma. Ası se
introduce una version del filtro extendido de Kalman que hace uso de una linealizacion basada
en productos de cuaterniones, al mismo tiempo que se consigue una discretizacion exacta.
Esto permite obtener estimaciones de las variables de estado sin necesidad de normalizar los
cuaterniones, debido a que preserva la norma unidad gracias a la formulacion empleada.
Para finalizar la tesis, se trata el problema del desarrollo del hardware y del software embarca-
do que haga posible la implementacion en el avion de las leyes de control y guiado desarrolladas
en esta disertacion, abriendo ası la posibilidad de realizar ensayos en vuelo en etapas futuras.
Ası se hace una descripcion de la arquitectura del computador de vuelo desarrollado a tal efecto,
ası como de los demas sensores necesarios para permitir el vuelo autonomo del avion.
Agradecimientos
En primer lugar, quiero mostrar mi mas profunda gratitud a mi director, Rafael Vazquez. Sin
sus consejos y supervision no hubiera sido posible este trabajo. Debo agradecerle la motivacion
que me ha proporcionado en todo momento, la cual me ha servido de inestimable ayuda para
llevar a cabo esta tesis.
Doy las gracias tambien a Damian Rivas, por darme la oportunidad de incorporarme al De-
partamento, a Sergio Esteban, por tantas horas dedicadas a la construccion del avion, ası como
a los demas miembros del Area de Ingenierıa Aeroespacial: Alfonso Valenzuela, Antonio Corra-
les, Antonio Franco y Carlos Antunez, por formar un excelente entorno de trabajo. Tambien
debo agradecer a Andres Fernandez, Vicente Payo y Javier Galnares su excelente trabajo en el
Laboratorio de Ingenierıa Aeroespacial, el cual ha ayudado a que esta tesis sea posible.
Quiero tambien mostrar mi gratitud a Miguel Perez-Saborid, por haber tutorado esta tesis;
ası como al personal del Laboratorio de Mecanica de Fluidos: Manuel Gonzalez, Jose Tejada y
Benjamin C. F. Elliott por su inestimable ayuda para llevar a cabo los ensayos en el tunel de
viento.
Agradezco tambien a Eduardo Fernandez Camacho y a Jose Angel Acosta Rodrıguez, coau-
tores de algunas publicaciones que han dado lugar a esta tesis, su colaboracion y rigor cientıfico
en las investigaciones desarrolladas.
Y lo mas importante, debo agradecer a mi madre y mis hermanas todo su apoyo durante
estos anos, y muy especialmente a mi padre, quien siempre me animo a seguir adelante, y cuyo
recuerdo me ha servido de infinita motivacion para llevar a cabo esta tesis.
Finalmente quiero agradecer a Alicia, la persona con quien comparto mi vida, su constante
apoyo y compresion en todo momento. Sin ella no hubiera sido posible.
A todos, gracias de corazon.
Francisco Gavilan Jimenez.
iii
Pagina en blanco
iv
Indice general
Agradecimientos III
Indice general V
Indice de figuras IX
1. Introduccion 1
1.1. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2. Arquitectura del sistema de control de vuelo . . . . . . . . . . . . . . . . . . . . 4
1.3. Estructura de la tesis y contribucion original . . . . . . . . . . . . . . . . . . . . 10
2. Modelo General del Sistema 15
2.1. Modelos geofısicos y atmosfericos . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.1.1. Forma de la Tierra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.1.2. Gravedad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.1.3. Atmosfera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2. Modelos de avion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.1. Modelo no lineal de 6 grados de libertad . . . . . . . . . . . . . . . . . . 23
2.2.2. Modelo de 3 grados de libertad . . . . . . . . . . . . . . . . . . . . . . . 30
2.3. Estimacion de parametros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.3.1. Estimacion de parametros aerodinamicos . . . . . . . . . . . . . . . . . . 33
2.3.2. Estimacion de parametros del modelo propulsivo . . . . . . . . . . . . . . 39
3. Diseno de Sistemas de Control de Actitud 43
3.1. Revision del estado del arte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.2. Modelo de la dinamica longitudinal del avion . . . . . . . . . . . . . . . . . . . . 48
3.3. Controlador de velocidad aerodinamica . . . . . . . . . . . . . . . . . . . . . . . 51
3.3.1. Controlador de velocidad con saturaciones en el empuje . . . . . . . . . . 54
3.3.2. Incorporacion del modelo de motor en el controlador de velocidad . . . . 58
3.4. Control del angulo de trayectoria . . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.4.1. Movimiento en el plano vertical . . . . . . . . . . . . . . . . . . . . . . . 65
3.4.2. Extension del controlador para virajes uniformes . . . . . . . . . . . . . . 72
v
vi INDICE GENERAL
3.5. Resultados de simulacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
4. Diseno de Sistemas de Guiado 89
4.1. Revision del estado del arte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.1.1. Leyes de guiado clasicas . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.1.2. Leyes de guiado modernas . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.2. Diseno de un Sistema de Guiado Proporcional . . . . . . . . . . . . . . . . . . . 96
4.2.1. Ley de guiado proporcional basada en fuerzas . . . . . . . . . . . . . . . 98
4.3. Sistema de Guiado basado en Control Predictivo . . . . . . . . . . . . . . . . . . 102
4.3.1. Modelo de avion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
4.3.2. Prediccion del estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
4.3.3. Estimador de perturbaciones . . . . . . . . . . . . . . . . . . . . . . . . . 110
4.3.4. Restricciones del problema . . . . . . . . . . . . . . . . . . . . . . . . . . 112
4.3.5. Funcion objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
4.3.6. Calculo de la senal de control . . . . . . . . . . . . . . . . . . . . . . . . 119
4.4. Resultados de simulacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
4.5. Aplicaciones al guiado de vehıculos espaciales . . . . . . . . . . . . . . . . . . . 135
4.5.1. Modelo del problema de rendezvous . . . . . . . . . . . . . . . . . . . . . 138
4.5.2. Prediccion del estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
4.5.3. Definicion de la funcion objetivo . . . . . . . . . . . . . . . . . . . . . . . 144
4.5.4. Calculo de las senales de control . . . . . . . . . . . . . . . . . . . . . . . 145
4.5.5. Satisfaccion robusta de las restricciones . . . . . . . . . . . . . . . . . . . 146
4.5.6. Estimador en lınea de perturbaciones . . . . . . . . . . . . . . . . . . . . 148
4.5.7. Resultados de simulacion . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
4.5.8. Extension del MPC a sistemas no lineales particulares . . . . . . . . . . . 154
5. Diseno del Sistema de Datos Aerodinamicos 165
5.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
5.1.1. Introduccion a la anemometrıa . . . . . . . . . . . . . . . . . . . . . . . . 166
5.1.2. Sistemas de datos aerodinamicos en UAVs ligeros . . . . . . . . . . . . . 170
5.2. Sistema de medida de la presion total y estatica . . . . . . . . . . . . . . . . . . 171
5.2.1. Errores asociados a la configuracion del sistema . . . . . . . . . . . . . . 171
5.2.2. Seleccion de la configuracion del sistema de Pitot y estatica . . . . . . . 179
5.2.3. Sensores de presion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
5.3. Sistema de medida de angulo de ataque y resbalamiento . . . . . . . . . . . . . 182
5.4. Diseno de la lanza de anemometrıa . . . . . . . . . . . . . . . . . . . . . . . . . 184
5.5. Ensayos en tunel aerodinamico . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
5.5.1. Ensayos de insensibilidad del sistema de Pitot y estatica . . . . . . . . . 189
5.5.2. Ensayo del sistema completo integrado en el morro . . . . . . . . . . . . 193
INDICE GENERAL vii
6. Diseno del Sistema de Navegacion 197
6.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197
6.2. Antecedentes y contribucion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
6.3. Filtro de Kalman. Cuaterniones . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
6.3.1. KF para sistemas lineales . . . . . . . . . . . . . . . . . . . . . . . . . . 200
6.3.2. Cuaterniones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
6.4. MEKF Discreto para UAVs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
6.4.1. Estimacion a priori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
6.4.2. Variables de error. Covarianza . . . . . . . . . . . . . . . . . . . . . . . . 208
6.4.3. Medidas linealizadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
6.4.4. Filtro de Kalman Extendido Multiplicativo Discreto . . . . . . . . . . . . 213
6.5. Simulaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
7. Desarrollo del Computador de Vuelo 221
7.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
7.2. Implementacion hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
7.2.1. Arquitectura general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
7.2.2. Placa base . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
7.2.3. Placa FPGA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
7.3. Implementacion software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
7.3.1. Ensayos de respuesta en tiempo real . . . . . . . . . . . . . . . . . . . . 245
8. Conclusiones y trabajos futuros 249
Bibliografıa 257
Appendices 266
A. Sistemas de Referencia 267
A.1. Matrices de transformacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
B. Sistema basico de control lateral-direccional 271
B.1. Modelo linealizado de la dinamica lateral-direccional . . . . . . . . . . . . . . . . 271
B.2. Controlador LQR con termino integral . . . . . . . . . . . . . . . . . . . . . . . 272
C. Aproximacion de la ecuacion del prediccion 275
Pagina en blanco
viii
Indice de figuras
1.1. Imagenes del Cefiro UAV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2. Arquitectura general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1. Estructura general de un modelo de avion. . . . . . . . . . . . . . . . . . . . . . 15
2.2. Integracion de DATCOM y TORNADO para el modelado aerodinamico . . . . . 35
2.3. Parametros del modelo de coeficiente CZS. . . . . . . . . . . . . . . . . . . . . . 36
2.4. Parametros del modelo de coeficiente CXS. . . . . . . . . . . . . . . . . . . . . . 36
2.5. Parametros del modelo de coeficiente CYS . . . . . . . . . . . . . . . . . . . . . . 37
2.6. Parametros del modelo de coeficiente ClS . . . . . . . . . . . . . . . . . . . . . . 37
2.7. Parametros del modelo de coeficiente CmS. . . . . . . . . . . . . . . . . . . . . . 38
2.8. Parametros del modelo de coeficiente CnS. . . . . . . . . . . . . . . . . . . . . . 38
2.9. Bancada de la helice en el tunel de viento. . . . . . . . . . . . . . . . . . . . . . 39
2.10. Coeficiente de traccion de la helice obtenido en ensayos en tunel de viento . . . . 40
2.11. Coeficiente de potencia de la helice obtenido en ensayos en tunel de viento . . . 40
3.1. Entradas y salidas del sistema de control de actitud . . . . . . . . . . . . . . . . 43
3.2. Fuerzas, momentos y angulos en el problema longitudinal (φ = 0). . . . . . . . . 49
3.3. Coeficiente de traccion de la helice . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.4. Diagrama de bloques del controlador adaptativo de velocidad . . . . . . . . . . . 64
3.5. Esquema de los filtros en las consignas. . . . . . . . . . . . . . . . . . . . . . . . 79
3.6. Evolucion temporal de Va y γ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.7. Evolucion temporal de FT y δe . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
3.8. Evolucion temporal de los parametros estimados por la ley de control 3 . . . . . 81
3.9. Evolucion temporal de los parametros estimados por la ley de control 5 . . . . . 81
3.10. Evolucion temporal de la velocidad aerodinamica y del angulo de trayectoria . . 82
3.11. Senales de control en el command filter . . . . . . . . . . . . . . . . . . . . . . . 83
3.12. Evolucion temporal de los parametros estimados por la ley de control 4. . . . . . 84
3.13. Evolucion de la Va, γ, φ y β . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
3.14. Evolucion de los parametros estimados por el controlador 6 . . . . . . . . . . . . 85
3.15. Evolucion de Va, γ y φ con consignas del sistema de guiado . . . . . . . . . . . . 87
4.1. Entradas y salidas del sistema de guiado. . . . . . . . . . . . . . . . . . . . . . . 90
ix
x INDICE DE FIGURAS
4.2. Esquema de la ley clasica de guiado proporcional. . . . . . . . . . . . . . . . . . 91
4.3. Guiado proporcional (movimiento en un plano horizontal). . . . . . . . . . . . . 97
4.4. Esquema de la trayectoria circular calculada por el guiado horizontal. . . . . . . 99
4.5. Modelo de avion en el guiado predictivo. . . . . . . . . . . . . . . . . . . . . . . 104
4.6. MPC basado en tramos rectilıneos . . . . . . . . . . . . . . . . . . . . . . . . . . 104
4.7. MPC basado en tramos de curvatura constante . . . . . . . . . . . . . . . . . . 105
4.8. Oscilaciones en el sistema de guiado debido a la sincronizacion . . . . . . . . . . 114
4.9. Distancia entre el avion y el segmento de vuelo de referencia. . . . . . . . . . . . 115
4.10. Proyeccion de la posicion del avion sobre el segmento de referencia. . . . . . . . 117
4.11. Iteraciones guiado predictivo. Perfil horizontal . . . . . . . . . . . . . . . . . . . 121
4.12. Iteraciones guiado predictivo. Perfil vertical . . . . . . . . . . . . . . . . . . . . 121
4.13. Evolucion del valor de la funcion de coste del guiado . . . . . . . . . . . . . . . 122
4.14. Vista en planta de la mision de referencia. . . . . . . . . . . . . . . . . . . . . . 124
4.15. Vista tridimensional de la mision de referencia considerada. . . . . . . . . . . . . 124
4.16. Vista en planta del camino seguido por el avion con guiado proporcional . . . . 125
4.17. Perfil vertical del camino seguido con guiado proporcional . . . . . . . . . . . . . 126
4.18. Vista tridimensional del camino seguido con guiado proporcional . . . . . . . . . 126
4.19. Trayectoria seguida por el avion con guiado proporcional . . . . . . . . . . . . . 127
4.20. Vista en planta del camino seguido usando el guiado predictivo . . . . . . . . . . 127
4.21. Perfil vertical del camino seguido usando el guiado predictivo . . . . . . . . . . . 128
4.22. Vista tridimensional del camino seguido usando el guiado predictivo . . . . . . . 128
4.23. Trayectoria seguida usando el guiado predictivo . . . . . . . . . . . . . . . . . . 129
4.24. Modelo de perturbaciones como proceso estocastico . . . . . . . . . . . . . . . . 130
4.25. Evolucion temporal de la velocidad y direccion del viento. . . . . . . . . . . . . 131
4.26. Perfil horizontal de la trayectoria. Guiado predictivo con perturbaciones . . . . . 131
4.27. Perfil vertical de la trayectoria. Guiado predictivo con perturbaciones . . . . . . 132
4.28. Vista tridimensional del camino seguido. Guiado predictivo con perturbaciones . 132
4.29. Trayectoria seguida, usando el guiado predictivo con perturbaciones . . . . . . . 133
4.30. Maniobra con viraje de 180 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
4.31. Sistema de referencia LVLH. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
4.32. Region LOS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
4.33. Controlador rendezvous sin satisfaccion robusta de restricciones . . . . . . . . . 151
4.34. Controlador robusto en presencia de perturbaciones . . . . . . . . . . . . . . . . 151
4.35. Evolucion temporal de las variables de estado durante el rendezvous. . . . . . . 152
4.36. Costes de mision obtenidos en el analisis de Monte Carlo . . . . . . . . . . . . . 154
4.37. Simulacion orbita elıptica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
4.38. Trayectorias planificadas para la maniobra de rendezvous . . . . . . . . . . . . . 163
4.39. Valor de la funcion objetivo a durante el proceso iterativo. . . . . . . . . . . . . 163
4.40. Secuencia de pulsos de los actuadores . . . . . . . . . . . . . . . . . . . . . . . . 164
INDICE DE FIGURAS xi
5.1. Esquema tubo de Pitot. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
5.2. Instalacion de un sensor de angulo de resbalamiento en un AV-8B Harrier II . . 168
5.3. Sensor de presion diferencial y sensor buscador de presion nula . . . . . . . . . . 168
5.4. Instalacion de un sensor de angulo de ataque de diferencia de presion nula. . . . 169
5.5. Ensayo de insensibilidad de tubo de pequena apertura. . . . . . . . . . . . . . . 172
5.6. Ensayo de insensibilidad de tubo de pequena apertura. . . . . . . . . . . . . . . 172
5.7. Ensayo de insensibilidad del tubo con boca biselada, a M = 0,26. . . . . . . . . 173
5.8. Cabeza semiesferica ensayada por el NACA. . . . . . . . . . . . . . . . . . . . . 173
5.9. Ensayo de insensibilidad del tubo con entrada conica a 30. . . . . . . . . . . . . 174
5.10. Distribuciones de presiones a lo largo de un tubo alineado con la corriente. . . . 175
5.11. Efecto de la base del tubo en la medida de estatica . . . . . . . . . . . . . . . . 176
5.12. Distribucion de presiones alrededor de un cilindro a α = 45 y M = 0,2. . . . . . 177
5.13. Errores en lectura de presion estatica debidos a la posicion de los orificios . . . . 178
5.14. Error en lectura de estatica frente al angulo de ataque del diseno con 10 orificios. 179
5.15. Efecto del diametro de los orificiones en los errores en la presion estatica . . . . 179
5.16. Errores en lectura de presion estatica para diferentes acabados de los orificios . . 180
5.17. Errores en lectura de presion estatica frente a la distancia del extremo del morro 180
5.18. Decisiones de diseno derivadas de los ensayos de [Grac 80]. . . . . . . . . . . . . 180
5.19. Error del sensor en la medicion de velocidad aerodinamica. . . . . . . . . . . . . 182
5.20. Esquema de una de las veletas empleadas en el sistema de datos aerodinamicos . 184
5.21. Variacion del angulo de ataque local con la distancia al fuselaje . . . . . . . . . 184
5.22. Vista general del diseno de lanza de anemometrıa. . . . . . . . . . . . . . . . . . 186
5.23. Anclaje del sistema de anemometrıa . . . . . . . . . . . . . . . . . . . . . . . . . 186
5.24. Vista del Cefiro UAV con el sistema de anemometrıa instalado . . . . . . . . . . 187
5.25. Despiece del diseno de lanza de anemometrıa. . . . . . . . . . . . . . . . . . . . 188
5.26. Montaje del ensayo de insensibilidad del sistema de Pitot y estatica . . . . . . . 190
5.27. Error en la presion dinamica ante variaciones del angulo de ataque . . . . . . . . 192
5.28. Error en la presion estatica ante variaciones del angulo de ataque . . . . . . . . 192
5.29. Error en la presion dinamica ante variaciones del angulo de resbalamiento . . . . 194
5.30. Error en la presion estatica ante variaciones del angulo de resbalamiento . . . . 194
5.31. Montaje del morro del Cefiro en el tunel aerodinamico . . . . . . . . . . . . . . 195
5.32. Velocidad medida por el sistema de anemometrıa . . . . . . . . . . . . . . . . . 196
5.33. Error relativo en la medida de la velocidad . . . . . . . . . . . . . . . . . . . . . 196
6.1. Componentes del vector de posicion. . . . . . . . . . . . . . . . . . . . . . . . . 217
6.2. Componentes del vector velocidad. . . . . . . . . . . . . . . . . . . . . . . . . . 217
6.3. Cuaterniones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
6.4. Componentes del sesgo de la aceleracion medida por la IMU. . . . . . . . . . . . 218
6.5. Componentes del sesgo de la velocidad angular medida por la IMU. . . . . . . . 219
xii INDICE DE FIGURAS
7.1. Arquitectura general del computador de vuelo. . . . . . . . . . . . . . . . . . . . 227
7.2. Placa base HERCULES II. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
7.3. Placa Hollybush 1 HB1-400. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
7.4. Interfaz exterior del modulo FPGA. . . . . . . . . . . . . . . . . . . . . . . . . . 231
7.5. Arquitectura implementada en la FPGA. . . . . . . . . . . . . . . . . . . . . . . 234
7.6. Senales PWM en servos radio control . . . . . . . . . . . . . . . . . . . . . . . . 236
7.7. Envıo y respuesta de la IMU. Numero de serie. . . . . . . . . . . . . . . . . . . . 238
7.8. Montaje del motor del avion. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
7.9. Estructura del software embarcado. . . . . . . . . . . . . . . . . . . . . . . . . . 243
7.10. Tiempo medido entre dos ejecuciones consecutivas del proceso de tiempo real. . 246
7.11. Histograma de tiempos de muestreo . . . . . . . . . . . . . . . . . . . . . . . . . 246
Acronimos
CPU Central Processor Unit
DATCOM DATa COMpendium
DSP Digital Signal Processor
EKF Extended Kalman Filter
ESC Electronic Speed Controller
IMU Inertial Measurement Unit
ISA International Standard Atmosphere
FC Flight Computer
FDR Flight Data Recorder
FPGA Field Programmable Gate Array
GPIO General Purpose Input Output
GPS Global Positioning System
GTO Generador de Trayectorias Optimas
HCW Hill-Clohessy-Wiltshire
KF Kalman Filter
LOS Line Of Sight
MEKF Filtro Extendido Multiplicativo de Kalman
MEMS Microelectromechanical Systems
MIMO Multiple Input Multiple Output
MPC Model Predictive Control
NACA National Advisory Committee for Aeronautics
NASA National Aeronautics and Space Administration
PAM Pulse Amplitude Modulated
PN Proportional Navigation
PWM Pulse Width Modulated
RTOS Real Time Operating System
SCG Sistema de Control y Guiado
SINTONIA SIstemas No Tripulados Orientados al Nulo Impacto Ambiental
SISO Single Input Single Output
xiii
xiv INDICE DE FIGURAS
UART Universal Asynchronous Receiver-Transmitter
UAV Unmanned Aerial Vehicle
USAF United States Air Force
Capıtulo 1
Introduccion
En los ultimos anos, los aviones no tripulados (UAVs) han experimentado un gran auge,
resultando de interes en numerosas aplicaciones. Al carecer de piloto, este tipo de aeronaves
tienen enormes ventajas que las hacen muy atractivas para multitud de misiones, tanto en el
ambito civil como militar.
Desde un punto de vista historico, fue sin duda la industria militar la que impulso el desarrollo
de los aviones no tripulados. Ası, en la decada de los 60 ya se usaban estos vehıculos como
blancos aereos para labores de entrenamiento y de ensayo de sistemas de defensa antiaerea.
Fue durante la guerra de Vietnam, cuando se comenzo a explotar el potencial de los aviones no
tripulados en escenarios belicos. Un ejemplo es el “Ryan Firebee”, el cual se usaba para misiones
de reconocimiento en zonas hostiles. Estos aviones permitıan a la USAF aumentar su capacidad
operacional, ya que con estas aeronaves no se asumıa el riesgo de perder ninguna vida, con lo
que permitıan la realizacion de misiones consideradas demasiado arriesgadas para la aviacion
tripulada.
Ya en las decadas de los 80 y 90, con la miniaturizacion de la electronica, comenzo a verse un
desarrollo exponencial de estas aeronaves. El aumento de la potencia de calculo y la reduccion de
peso de los computadores embarcados permitio extender notablemente el campo de aplicacion
de los UAVs. En la actualidad, puede encontrase una gran variedad de aviones no tripulados en
los ejercitos de los distintos paıses, realizando labores que van desde el reconocimiento y apoyo
a fuerzas terrestres (como es el caso de los micro UAVs como el “FQM-151 Pointer” con un
peso de 4 kilos), hasta operaciones de combate (con UAVs armados), como el “General Atomics
MQ-9 Reaper” de 4.8 toneladas de peso.
Aparte de estas aplicaciones militares, en la ultima decada se ha visto un creciente interes en
el uso de estos aviones en misiones civiles. En especial, puede constatarse un notable desarrollo
de UAVs ligeros y medios (con pesos comprendidos entre los 5 y 200 kilos), los cuales presentan
unos costes de construccion y desarrollo notablemente inferiores a los de la aviacion tripulada,
ademas pueden ser desplegados muy facilmente en cualquier escenario y presentan unos costes
1
2 CAPITULO 1. INTRODUCCION
de operacion bastante mas reducidos1. Esto ha permitido ver estas aeronaves en campos como
la monitorizacion de cultivos, vigilancia de fronteras, control de incendios forestales, vigilancia
de parques naturales y un largo etcetera.
Como se puede intuir, un pilar clave para el desarrollo de los aviones no tripulados es contar
con sistemas automaticos de control y guiado que permitan el vuelo autonomo con la suficiente
fiabilidad y eficiencia. Hay que tener en cuenta que los aviones son sistemas inherentemente no
lineales en los que estan presentes fuerzas y momentos aerodinamicos difıciles de modelar. Esto
complica el desarrollo de sistemas de control y guiado, ya que resulta complejo garantizar la
estabilidad de los controladores en toda la envolvente de vuelo, en presencia de tantas incerti-
dumbres. En este sentido, existen muchas aproximaciones a los sistemas de control y guiado que
han sido implementados con buenos resultados, sin embargo, este campo de investigacion dista
mucho de estar cerrado, y en la actualidad hay un notable interes en la comunidad cientıfica
por desarrollar leyes de control y guiado cada vez mas robustas y eficaces.
Otro campo que esta experimentando notables avances (sobre todo en los UAVs ligeros) es el
de la avionica embarcada. Hay que tener en cuenta que en el mercado pueden encontrase con
facilidad sistemas y equipos necesarios para el vuelo autonomo, disenados bajo los requisitos
de la aviacion comercial. Sin embargo, la mayorıa de esos equipos tienen un tamano, peso y
coste que los hacen inviables para ser embarcados en UAVs ligeros. Por este motivo, resulta
interesante realizar avances desde el punto de vista hardware, con el fin de conseguir desarrollar
computadores y sensores embarcables en este tipo de UAVs, satisfaciendo sus requerimientos
de peso y coste.
Estos dos ultimos puntos sirven de motivacion para el desarrollo de esta tesis doctoral. El
objetivo de la misma sera disenar sistemas de control y guiado avanzados que permitan el vuelo
autonomo de un avion de acuerdo a un plan de vuelo establecido. Ademas, se investigara en el
desarrollo de la plataforma hardware que permita implementar las leyes de control disenadas. El
objetivo final (que queda fuera del alcance de esta tesis) es la futura implementacion y prueba
en vuelo de estos sistemas en un UAV ligero desarrollado en el Departamento de Ingenierıa
Aeroespacial de la Universidad de Sevilla, al cual pertenece el autor de esta disertacion.
1.1. Objetivos
Como punto de partida de esta tesis, se dispone de un avion no tripulado (denominado Cefiro
UAV) desarrollado y construido por el Area de Ingenierıa Aeroespacial de la Universidad de
Sevilla, en cuyo proceso ha participado activamente el autor de esta disertacion. Ası, se dispone
de un primer prototipo operativo, con el cual se han realizado varios vuelos de prueba, pero
1Es de senalar que el hecho de no llevar piloto, no solo permite ahorrar en el coste horario del mismo, sino quetambien conlleva una importante reduccion de peso (debido al propio piloto y a todos los sistemas de seguridadasociados).
1.1. OBJETIVOS 3
Figura 1.1: Imagenes del Cefiro UAV. Izquierda: primer prototipo. Derecha: segundo prototipo.
que carece de instrumentacion alguna que permita implementar en el sistemas de control de
vuelo.
De esta forma, el autor de esta disertacion inicia la construccion de un segundo prototipo, con
algunas modificaciones que permiten la instalacion de sensores y computadores embarcados, en
los cuales se puedan implementar leyes de control y guiado que permitan el vuelo autonomo
del avion.
Por otro lado, tambien se dispone en el Area de Ingenierıa Aeroespacial de una herramienta
que permite generar planes de vuelo optimos (GTO), a partir de una secuencia de puntos de
paso proporcionadas por el usuario.
Con este punto de partida, el objetivo principal de esta tesis es avanzar en el estudio de leyes
de control y guiado que permitan a la aeronave ejecutar cualquier mision introducida por el
usuario de acuerdo al plan de vuelo optimo. Se pretende obtener leyes de control innovadoras,
que permitan ejecutar la mision de forma segura y eficiente.
En este sentido, el problema de control de vuelo se va a dividir en dos niveles. En el nivel
inferior se tiene el sistema de control de actitud, que debera encargarse de controlar la velocidad
de vuelo y la actitud del avion para cumplir las consignas proporcionadas por el sistema guiado
de nivel superior. De este modo, el sistema de guiado debera proporcionar consignas al sistema
de control de actitud para hacer que la aeronave se mantenga en la trayectoria de referencia
deseada.
Entrando en el sistema de control de actitud, el objetivo de esta tesis sera desarrollar leyes
adaptativas, no lineales, que permitan garantizar la estabilidad del avion en un amplio rango de
puntos de operacion, al mismo tiempo que dispongan de mecanismos de adaptacion para lidiar
con las incertidumbres asociadas a las fuerzas y momentos aerodinamicos del mismo.
Por otra parte, considerando el sistema de guiado, el objetivo es avanzar en leyes que permitan
seguir eficientemente una trayectoria de referencia 4D (esto es, cumpliendo los tiempos de paso
4 CAPITULO 1. INTRODUCCION
por cada punto establecidos por el GTO), y que dispongan de mecanismos de adaptacion de
perturbaciones externas (como el viento) que permitan anticiparse a las mismas para cumplir
la mision satisfactoriamente.
Para implementar estos sistemas de control y guiado, se propondra una arquitectura general
del sistema de control de vuelo, identificando que sistemas de sensores son necesarios, esta-
bleciendo al mismo tiempo las interfaces entre estos sistemas. Concretamente, como se vera
posteriormente, se tiene necesidad de disponer de un sistema de datos aerodinamicos que pro-
porcione la orientacion de la aeronave y la velocidad respecto a la corriente incidente, ası como
un sistema de navegacion que proporcione la posicion, velocidad y actitud de la aeronave en
cada momento.
En este sentido, otro de los objetivos de esta tesis sera desarrollar un sistema de datos ae-
rodinamicos adaptado a las necesidades concretas del avion con el que se esta trabajando, de
forma que se pueda obtener una precision aceptable con un coste dentro de las limitaciones de
esta tesis.
Por otra parte, se requiere disponer de un sistema de navegacion, encargado de proporcionar
medidas de posicion, velocidad y actitud del avion mediante integracion de sensores inerciales
y GPS. Debido a la naturaleza distinta de estos sensores, es necesario usar estrategias de inte-
gracion y filtrado, que permitan compensar los errores y sesgos existentes en estos elementos,
lo cual se traduce en la obtencion de medidas mucho mas ajustadas a la realidad. Concreta-
mente, en este trabajo se va a profundizar en el Filtro Multiplicativo Extendido de Kalman,
proponiendo una formulacion adecuada para aviones no tripulados.
Por ultimo, otra de las metas de esta tesis es disenar el computador embarcado que permita
implementar las leyes de control y guiado desarrolladas a lo largo de esta disertacion. A partir
de una placa base comercial, se disenara el hardware que permita la integracion de los distintos
sensores y actuadores en el computador de vuelo. Ademas, se desarrollara el software necesario
para la implementacion en tiempo real de las leyes de control y guiado propuestas en esta
tesis.
1.2. Arquitectura del sistema de control de vuelo
Para conseguir los objetivos planteados anteriormente, es necesario definir una arquitectura
del sistema de control de vuelo que permita ubicar todos los sistemas necesarios, proporcionando
una vision clara de las relaciones y dependencias que se producen entre ellos. Al mismo tiempo,
esto permitira al lector tener una vision de la tesis en su conjunto, visualizando cada uno de los
elementos como parte de un todo, al mismo tiempo que se muestran los requisitos que deben
cumplir cada uno de los subsistemas que se describiran en los sucesivos capıtulos.
Haciendo una breve revision de la literatura sobre las arquitecturas propuestas del sistema
1.2. ARQUITECTURA DEL SISTEMA DE CONTROL DE VUELO 5
de control de vuelo, pueden encontrarse numerosos trabajos donde se aborda la estructura
general del sistema de guiado y de control de actitud. Por ejemplo, en [Bear 05] se propone
una estructura multicapa. En ella, se dispone de una estacion de tierra, con un generador de
trayectorias que se encarga de calcular una trayectoria de referencia a partir de una lista de
waypoints deseados. Dicha trayectoria se envıa por telemetrıa a la aeronave, cuyo computador
de a bordo dispone de un control de trayectoria y de un controlador de actitud. El controlador
de trayectoria proporciona referencias en velocidad, rumbo y altitud de vuelo, en funcion de
los errores respecto de la trayectoria de referencia detectados; mientras que el controlador de
actitud de bajo nivel, que esta compuesto de tres controladores monovariables independientes,
se encarga de seguir las consignas en velocidad, altitud y rumbo accionando el mando de gases,
el timon de profundidad y los alerones respectivamente. Ademas, es de destacar que la conexion
entre el sistema de control de trayectoria y el controlador de actitud es conmutable, de forma
que el propio usuario puede especificar las propias referencias en velocidad, altitud y rumbo,
desactivando el controlador de trayectoria.
La ventaja de esta arquitectura es que da lugar a un sistema bastante simple y facil de
implementar. La ley de guiado que permite calcular las correcciones en velocidad rumbo y
altitud podrıa estar basada en modelos cinematicos o geometricos, los cuales resultan simples
y livianos desde el punto de vista computacional, ademas de existir numerosa literatura al
respecto. Tambien se facilita el diseno del controlador de actitud, ya que los controladores de
velocidad, rumbo y altitud han sido ampliamente estudiados, pudiendo encontrarse numerosos
ejemplos en la literatura.
Existen otras aproximaciones basadas en los sistemas de control y guiado de misiles (como las
que se pueden encontrar en las referencias [Boyl 99] y [Pedd 08]). En estos casos, se tiene un
sistema de guiado que calcula, a partir de los errores detectados en la trayectoria, las acelera-
ciones instantaneas que deberıa tener la aeronave para capturar la trayectoria de referencia. En
un nivel inferior, el sistema de control de actitud se disena para seguir las consignas en acelera-
ciones impuestas por el guiado, en lugar de las clasicas consignas en velocidad, rumbo o altitud.
Segun se sostiene en estos trabajos, el resultado de esta estrategia es un comportamiento mas
agil de la aeronave, aunque se complica la formulacion de los sistemas de control de bajo nivel,
repercutiendo en una mayor demanda computacional.
Por otra parte, tambien pueden encontrarse en la literatura ejemplos de desarrollo de un
sistema de control y guiado de forma integral, el cual es capaz de llevar a cabo las labores
de guiado y control de actitud de forma integrada. Por ejemplo, en la referencia [Kami 98] se
desarrolla un algoritmo basado en “gain scheduling” capaz de llevar a cabo de forma integral
el guiado y el control de un UAV, usando la misma estrategia de control. La ventaja de esta
aproximacion es la simplicidad de necesitar un unico sistema para llevar a cabo las tareas de
guiado y control del avion. Sin embargo, esto puede ser al mismo tiempo un inconveniente, ya
que en esencia los controles de actitud y de posicion son problemas distintos, de manera que
6 CAPITULO 1. INTRODUCCION
puede resultar beneficioso tratarlos con estrategias de control diferentes.
Con todo esto, en esta tesis se va a proponer una arquitectura del sistema de control y guiado
basada en dos niveles. Por un lado se tiene el sistema de guiado, el cual se encarga del control de
posicion del avion, generando las acciones necesarias para mantener la aeronave en la trayectoria
de referencia, lo que se traduce en consignas en velocidad, angulo de trayectoria y angulo de
balance. En un nivel inferior, se tiene el sistema de control de actitud, que se encarga de calcular
las deflexiones necesarias de los mandos de vuelo para seguir las referencias calculadas por el
sistema de guiado. Esto va a permitir usar dos estrategias de control distintas para abordar
los problemas de guiado y de control de actitud, ya que tanto los objetivos que deben cumplir
como los requisitos a los que estan sujetos estos sistemas son distintos.
Entrando en el control de actitud de bajo nivel, su mision principal sera garantizar la estabili-
dad de la aeronave, siguiendo al mismo tiempo las consignas impuestas por el sistema de guiado
con la mayor fidelidad posible. Por otra parte, hay que tener presente que las ecuaciones de la
dinamica de actitud de un avion son no lineales, y contienen fuerzas y momentos aerodinamicos
difıciles de modelar con precision, lo que introduce incertidumbre en el sistema. Considerando
estos requisitos y condicionantes, para el diseno del sistema de control de actitud se emplea
una estrategia de control adaptativo no lineal, de manera que se puedan tener garantıas de
que las leyes son validas en toda la envolvente de vuelo del avion, al mismo tiempo que se
tienen leyes de adaptacion para estimar los parametros desconocidos existentes en el modelo
del sistema.
En un nivel superior, el sistema de guiado debe calcular las acciones necesarias para mantener
la aeronave en la trayectoria deseada. Hay que tener en cuenta que este sistema no puede
considerarse como un controlador puramente reactivo, que se encargue de anular el error medido
respecto a la referencia, sino que debe anticiparse a los cambios en la trayectoria de referencia
(conocidos a priori) para que el seguimiento de la misma se haga con un vuelo suave y eficiente.
Ademas, el problema de control de posicion puede ser descrito por las ecuaciones cinematicas del
avion, con un tiempo caracterıstico notablemente superior al del sistema de control de actitud.
Todo esto hace aconsejable emplear una estrategia de guiado basada en control predictivo,
la cual permite optimizar las senales de control para maximizar los parametros de eficiencia
definidos.
Por otra parte, para poder implementar las leyes de control y guiado, estos sistemas necesi-
taran medidas de las variables de estado del avion. Concretamente, el sistema de guiado va a
requerir de un sistema de navegacion que proporcione medidas de la posicion y de la velocidad
del avion en cada instante, de manera que puedan ser usadas para calcular las correcciones ne-
cesarias. En un nivel inferior, el sistema de control de actitud necesitara disponer de medidas de
la orientacion del avion respecto a tierra, ası como medidas de la velocidad del avion respecto al
aire (ya que la velocidad aerodinamica condiciona todas las fuerzas y momentos aerodinamicos
que actuan sobre el avion). Ademas para llevar a cabo las tareas de control de velocidad, el
1.2. ARQUITECTURA DEL SISTEMA DE CONTROL DE VUELO 7
Sistema Navegación
-IMU
- GPS
Sistema de GuiadoGuiado Predictivo
Guiado Proporcional
USUARIOGenerador de
trayectoriasS
iste
ma d
e C
on
trol
y G
uia
do
Referencia
Controlador de
servos y motor
Sensores
FILTRO DE
KALMAN
Sistema de Guiado- Guiado Proporcional
- Guiado Predictivo
Vref
γref
φref
Sistema de Control de Actitud- Control Velocidad
- Control
- Control lateral-direccional
γ
Sistema Datos Aerodinámicos
-Presión dinámica
- Presión estática
- Veletas de yα β
Datos de Motor
-Sensor RPM
δe
δ δr t
δa
RPMV
aα
β
Actitud
Posición-Velocidad
Figura 1.2: Arquitectura general
sistema de control de actitud debera disponer de medidas del regimen de motor, para poder
controlar ası el empuje que proporciona la helice.
Todas estas consideraciones estan recogidas en la figura 1.2, donde se propone la arquitectura
general propuesta en esta tesis. A continuacion se van a describir detalladamente cada uno de
los subsistemas que se distinguen en esta imagen.
GENERADOR DE TRAYECTORIAS
Para definir la trayectoria que debera seguir el avion, en primer lugar es necesario fijar un
plan de vuelo, el cual estara compuesto de una ruta y un modo de operacion. Existen diver-
sas formas de definir la ruta haciendo uso de distintos tipos de descriptores, entre los que se
encuentran:
Waypoints 2D, donde unicamente se fijan los puntos de la superficie terrestre que se quieren
sobrevolar.
Waypoints 3D, donde ademas de fijar los puntos de sobrevuelo, se puede especificar la altitud
de cada punto.
Waypoints 4D, donde se fijan las coordenadas espaciales de los puntos de paso, junto con el
tiempo de paso por cada punto.
8 CAPITULO 1. INTRODUCCION
En cuanto al modo de operacion, se deben establecer parametros relativos a la configuracion
de la aeronave (como la carga de combustible) y parametros sobre el tipo de mision que se desea
llevar a cabo (mınimo consumo, maxima velocidad de ejecucion, maxima autonomıa, etc).
Haciendo uso del plan de vuelo, el generador de trayectorias debera ser capaz de generar tra-
yectorias eficientes que cumplan con la ruta establecida, de acuerdo a los modos de operacion
seleccionados. Para ello, en este sistema se deberan incluir algoritmos de generacion de trayec-
torias eficientes en base a los distintos criterios que se requieran (optimizacion del consumo, de
la duracion de la mision, de la velocidad de actuacion, etc).
Dada la carga computacional que puede suponer resolver determinados problemas de opti-
mizacion, estos algoritmos emplearan un modelo puntual de la aeronave, y no se ejecutaran
continuamente, solo son necesarios al principio y despues de cada reconfiguracion de la mi-
sion.
Este subsistema se sale del alcance de esta tesis, de modo que se va a considerar como una
entrada al sistema de control de vuelo. Pueden verse algunos ejemplos de generadores de tra-
yectorias en [Vale 11, Tsou 11]. Se empleara el primero de ellos, el cual ha sido disenado en el
departamento en el que se desarrolla esta tesis.
SISTEMA DE CONTROL Y GUIADO
El sistema de control y guiado debera encargarse de generar las senales de control que gobier-
nan los mandos de vuelo del avion para mantener un vuelo estable y siguiendo la trayectoria
calculada por el generador de trayectorias.
Debido a la complejidad que tendrıa tratar de resolver el problema de control y guiado de
una forma integral, se hace necesaria la division del sistema en dos elementos, de acuerdo a la
jerarquıa mostrada en la figura 1.2. Estos elementos se detallan a continuacion:
Control de trayectoria (guiado): a partir de la referencia generada en el sistema anterior,
este controlador debera encargarse de mantener la aeronave en dicha referencia.
Se trata de un controlador de alto nivel, el cual no genera senales de control reales (esto es,
no actua sobre los mandos del avion), sino que genera las referencias adecuadas que debera
seguir el sistema de control de actitud (en un nivel inferior), como por ejemplo velocidades,
angulos de trayectoria o angulos de balance.
En la literatura existen diferentes estrategias para resolver este problema (que se suele deno-
minar especıficamente como guiado), las cuales se basan en modelos puramente cinematicos
(las mas simples), en modelos dinamicos puntuales, e incluso en modelos de seis grados de
libertad (en las cuales se integran los problemas de guiado y de control de actitud).
Control de actitud: se trata del controlador de mas bajo nivel, el cual genera las ordenes
1.2. ARQUITECTURA DEL SISTEMA DE CONTROL DE VUELO 9
adecuadas a los mandos de vuelo para mantener la aeronave estable y siguiendo la referencia
impuesta por el control de trayectoria.
Para disenar estos sistemas de control, se debe acudir ineludiblemente a un modelo de aero-
nave de seis grados de libertad. Se trata de un modelo no lineal, con una dependencia muy
fuerte del modelo aerodinamico de la aeronave, cuyo conocimiento detallado resulta bastante
complicado.
Con estos condicionantes, el principal requisito de este sistema de control sera contar con la
robustez suficiente para poder garantizar la estabilidad en todos los puntos de operacion de
la aeronave.
SISTEMA DE DATOS AERODINAMICOS
Este sistema se debe encargar de medir la orientacion y velocidad de la aeronave respecto al
viento, ademas de la altitud barometrica.
Los parametros que debe proporcionar son:
Angulo de ataque
Angulo de resbalamiento
Velocidad aerodinamica
Altitud barometrica
Para ello, debe contar con los siguientes sensores:
Veletas para medir angulos de ataque y de resbalamiento.
Sistema de Pitot y estatica, para determinar la presion de remanso y estatica de la corriente,
a traves de la cual se determina tanto la velocidad equivalente como la altitud barometrica.
SISTEMA DE NAVEGACION
La funcion principal de este sistema es estimar con precision la posicion y la actitud de la
aeronave, ası como realizar medidas de velocidades y aceleraciones lineales y angulares.
Los instrumentos que deben componer el sistema de navegacion son:
Unidad de GPS
Unidad de medidas inerciales (IMU), la cual se compone de acelerometros, giroscopos e
inclinometros.
Hay que tener en cuenta que el GPS puede cometer errores en posicion del orden de metros;
mientras que las medidas de posicion y velocidad obtenidas de los acelerometros van adquiriendo
deriva a medida que pasa el tiempo (debido a los errores cometidos en la integracion).
10 CAPITULO 1. INTRODUCCION
Para solucionar esto, se debe contar con un sistema de filtrado (como el Filtro de Kalman),
que integre los datos recibidos de la IMU y del GPS, compensando ası los errores anteriormente
mencionados.
1.3. Estructura de la tesis y contribucion original
Una vez mostrados los objetivos de la tesis, esta seccion se va a centrar en describir la estruc-
tura de este documento, dando una vision general al lector de los pasos seguidos para alcanzar
los objetivos propuestos, ası como explicando las contribuciones originales realizadas en esta
disertacion.
Lo primero que hay que tener en cuenta, es que dada la diversidad de los temas a tratar en
esta tesis, resulta inadecuado incluir un primer capıtulo con una revision general de la literatura
relacionada, ya que la heterogeneidad de la bibliografıa comentada harıa difıcil su lectura. En su
lugar, esta revision de la literatura se realizara en la introduccion de cada uno de los capıtulos,
de manera que se podra centrar mas en el problema que se trate en cada epıgrafe.
Capıtulo 2: Modelos.
En este capıtulo se va a plantear un modelo del avion, que sirva de base para el desarrollo
de las leyes de control y guiado. Se estableceran las ecuaciones generales del movimiento (no
lineales), ası como los modelos aerodinamicos y propulsivos.
Para una estimacion mas precisa de los coeficientes del modelo aerodinamico, se ha creado un
software que permite integrar dos herramientas de calculo aerodinamico de naturaleza distinta,
como son DATCOM y TORNADO VLM. Por otra parte, para estimar los coeficientes del
modelo propulsivo, se ha acudido directamente a experimentacion en tunel de viento.
Capıtulo 3: Diseno de Sistemas de Control de Actitud.
En este capıtulo se trata el problema de control de actitud de bajo nivel. Concretamente,
se centra en el desarrollo de leyes de control no lineales para la dinamica longitudinal del
avion, ya que esta presenta una fuerte dependencia del punto de operacion, dificultando el uso
de estrategias de control convencionales. Se consideran separadamente el control de velocidad
y el de angulo de trayectoria, empleando en ambos casos tecnicas basadas en backstepping
adaptativo.
Como contribucion original, se hacen uso de las propiedades fısicas elementales del avion
para dar lugar a controladores adaptativos cuya estabilidad se demuestra sin necesidad de
conocer los coeficientes del modelo aerodinamico. Ademas en el caso del angulo de trayectoria, se
considera que la funcion que describe el coeficiente de sustentacion es desconocida, demostrando
la estabilidad de la ley de control sin necesidad de realizar una parametrizacion de dicha funcion.
1.3. ESTRUCTURA DE LA TESIS Y CONTRIBUCION ORIGINAL 11
Fruto de estas contribuciones, se han realizado las siguientes aportaciones a congresos.
F. Gavilan, J. A. Acosta and R. Vazquez. “Control of the longitudinal flight dynamics of an
UAV using adaptive backstepping”. IFAC World Congress. Milano. 2011.
F. Gavilan, R. Vazquez and J. A. Acosta. “Output-Feedback Control of the Longitudinal
Flight Dynamics Using Adaptative Backstepping”. IEEE Conference on Decision and Con-
trol. Orlando, Florida. 2011.
Capıtulo 4: Diseno de Sistemas de Guiado.
Por otra parte, en este capıtulo se trata el problema de control de vuelo en un nivel superior,
esto es, se estudia el guiado del avion para seguir una trayectoria de referencia. Se plantean dos
estrategias de guiado complementarias. En primer lugar se avanza en la aplicacion de sistemas
de guiado proporcional a aviones no tripulados, obteniendo una ley simple y robusta, la cual
permite seguir el camino establecido, aunque no ofrece mecanismos adecuados de sincronizacion
temporal con la referencia.
Partiendo de esta ley de guiado proporcional, se desarrolla una estrategia avanzada de guiado
predictivo, consiguiendo mejoras en el seguimiento de la referencia, al mismo tiempo que se
incorporan mecanismos de sincronizacion temporal con la trayectoria. Como se vera en la seccion
4.3 las ecuaciones que gobiernan la posicion del avion son fuertemente no lineales, de manera
que usar una estrategia de control predictivo estandar da lugar a procesos de optimizacion
no lineales que dificultan enormemente la posible implementacion practica de este sistema, al
mismo tiempo que no ofrecen garantıas de calcular al menos una solucion factible.
Como contribucion original, para solucionar esta problematica, se propone una estrategia
novedosa de guiado predictivo, de manera que se usa el guiado proporcional anterior para
obtener una linealizacion explıcita del movimiento del avion en torno a una trayectoria de
referencia factible, a partir de la cual se resuelve un problema de control predictivo con un
estimador de perturbaciones. Esto permite disminuir drasticamente los tiempos de calculo, al
mismo tiempo que se garantiza que siempre existe una solucion factible del problema, lo cual
redunda en un aumento de la seguridad de operacion.
Ademas de esta contribucion realizada en el campo del guiado de aviones, hay que decir que las
bases de este sistema de guiado son fruto de investigaciones previas realizadas en el campo del
control de trayectorias de vehıculos espaciales, las cuales se muestran tambien en este capıtulo.
Dichas tecnicas han dado lugar a las siguientes publicaciones.
F. Gavilan, R. Vazquez and E. F. Camacho. “Robust Model Predictive Control for Space-
craft Rendezvous with Online Prediction of Disturbance Bounds”. IFAC Aerospace Guidance,
Navigation and Flight Control Systems (AGNFCS) Workshop. Samara (Russia). 2009.
R. Vazquez, F. Gavilan and E. F. Camacho. “Trajectory Planning for Spacecraft Rendezvous
with On/Off Thrusters”. IFAC World Congress. Milano. 2011.
12 CAPITULO 1. INTRODUCCION
F. Gavilan, R. Vazquez and E. F. Camacho. “Chance-constrained model predictive control
for spacecraft rendezvous with disturbance estimation”. Control Engineering Practice. Vol.
20, No. 2, pp. 111-122, 2012.
Capıtulo 5: Diseno del Sistema de Datos Aerodinamicos.
Este capıtulo se centra en el desarrollo de un sistema de datos aerodinamicos que provea al
sistema de control de actitud de las medidas de la velocidad aerodinamica, angulo de ataque y
angulo de resbalamiento. Tras una revision de los sistemas existentes, se observa la ausencia en
el mercado de sistemas de datos aerodinamicos con la precision necesaria, a un coste asequible,
lo que sirve de motivacion para realizar un diseno propio.
A partir de un estudio de los errores introducidos en las medidas debidos a la geometrıa
del sistema de datos aerodinamicos, ası como a la instalacion del mismo en el propio avion, se
proporciona un diseno a medida para conseguir una buena precision con un coste reducido. Para
constatar estas prestaciones, se realizan ensayos en tunel aerodinamico, en los que se comprueba
que el error obtenido es acorde con las predicciones realizadas.
Capıtulo 6: Diseno del Sistema de Navegacion.
En este capıtulo se trata el diseno del sistema de navegacion de la aeronave. Como se puede
ver en la arquitectura general propuesta en la seccion 1.2, este sistema debe encargarse de
proporcionar medidas de la posicion, velocidad y actitud del avion, disponiendo para ello de
los datos proporcionados por el GPS y por los sensores inerciales. Estas dos fuentes de medida,
de naturaleza distinta, deben ser integradas mediante un proceso de filtrado que elimine los
errores inherentes a las mismas, proporcionando una estimacion mas precisa.
Como contribucion original, en este capıtulo se desarrolla un Filtro Multiplicativo Extendido
de Kalman (MEKF) totalmente discreto (los desarrollos de MEKF previos son fundamental-
mente continuos, si bien la implementacion siempre ha de ser discreta), en el que se aprovecha el
hecho de que es posible obtener de forma analıtica el cuaternion resultante en cada instante de
muestreo si se supone la velocidad angular constante durante dicho instante de muestreo. Esta
formulacion permite obtener todas las matrices necesarias para el MEKF de forma analıtica
eliminando la necesidad de realizar una integracion numerica, lo cual es una ventaja a la hora
de implementar el filtro. Ademas, su formulacion multiplicativa evita los procesos de renorma-
lizacion de cuaterniones presentes en las aproximaciones convencionales, lo que se traduce en
un aumento de la precision del sistema.
Capıtulo 7: Desarrollo del Computador de Vuelo.
Para permitir la implementacion de los algoritmos desarrollados en esta tesis, en este capıtulo
se trata el desarrollo (tanto hardware como software) de un computador de vuelo adaptado
a las necesidades de esta disertacion. Tras realizar un estudio de las distintas aproximaciones
1.3. ESTRUCTURA DE LA TESIS Y CONTRIBUCION ORIGINAL 13
existentes, se comprueba la necesidad de desarrollar un nuevo hardware embarcado con las
caracterısticas adecuadas para implementar los desarrollos realizados en esta tesis.
Se propone una nueva arquitectura modular, basada en una FPGA que gestiona todos los
sistemas especıficos de los aviones no tripulados, la cual se conecta a una placa base estandar
mediante el bus PCI104. Esta aproximacion permite conseguir un sistema altamente integrado
(ya que todo el hardware de gestion de sensores y actuadores se sintetiza en la FPGA), a
la vez que resulta muy versatil, ya que permite emplear como placa base del computador de
vuelo cualquier unidad compatible con el estandar PC-104+. Ademas se pueden incorporar con
facilidad nuevos modulos al bus para anadir funcionalidades adicionales.
Capıtulo 8: Conclusiones y trabajos futuros.
Finalmente, en este capıtulo se resumen los principales resultados y conclusiones obtenidas
en esta disertacion, al mismo tiempo que se proponen futuras lıneas de trabajo que podrıan
desarrollarse a partir de ellas.
Pagina en blanco
14
Capıtulo 2
Modelo General del Sistema
En este capıtulo se van a plantear las ecuaciones generales que permiten modelar el movi-
miento del avion. De esta forma, se presentaran hipotesis generales consideradas para describir
el movimiento del avion, ası como las ecuaciones del movimiento que se derivan de ellas. Se
consigue ası una base general a partir de la cual se obtendran modelos especıficos acordes con
las necesidades de los distintos capıtulos. El modelo general obtenido se usara en las distintas
simulaciones presentadas en esta tesis.
De forma general, un modelo es un conjunto de ecuaciones que permiten simular el compor-
tamiento de un sistema. Para el caso de un avion, cualquier modelo debe estar compuesto por
la estructura mostrada en la figura 2.1.
Figura 2.1: Estructura general de un modelo de avion.
Como puede apreciarse, en cualquier modelo de avion son necesarios cuatro elementos cla-
ve:
Modelo dinamico: constituye el conjunto de ecuaciones diferenciales que permiten describir
la evolucion de las variables de estado del avion en funcion de las fuerzas y momentos ex-
teriores. Resultan de la aplicacion de las leyes de la mecanica racional al vuelo del avion,
y constituyen el nucleo basico de modelado. En el caso de un avion, para cerrar el modelo
dinamico es necesario proporcionar modelos de las fuerzas gravitatorias, y de las acciones
15
16 CAPITULO 2. MODELO GENERAL DEL SISTEMA
aerodinamicas y propulsivas.
Modelo de Tierra: describe la fuerza gravitatoria sobre el avion, ası como el posicionamiento
del mismo respecto a la referencia terrestre.
Modelo aerodinamico y propulsivo: permite conocer que fuerzas y momentos aerodinami-
cos y propulsivos actuan sobre el avion en funcion de las variables de estado del mismo.
Modelo de atmosfera: permite conocer las propiedades de la atmosfera en funcion de la
posicion (las cuales son necesarias para conocer las fuerzas aerodinamicas y propulsivas).
Se suelen llamar habitualmente al modelo dinamico junto al modelo aerodinamico y propulsivo
como modelo de avion; por otra parte, los modelos de Tierra tambien son conocidos como
modelos geofısicos.
En la practica, tener modelos muy precisos de los bloques anteriores resulta una tarea bastante
costosa, ademas de carecer de utilidad practica en la mayorıa de los casos. De hecho, se puede
decir que el mejor modelo no es el mas preciso, sino el que mejor se adapta a las necesidades
del problema. De este modo, lo que se va a hacer en este capıtulo es identificar las necesidades
de modelado que se van a presentar a lo largo del desarrollo del sistema de control de vuelo de
esta tesis, estableciendo en consecuencia modelos generales adecuados en los que se basaran los
sistemas descritos en los sucesivos capıtulos.
Entrando en los modelos geofısicos, hay que tener presente que en este trabajo se esta abordan-
do el problema del control autonomo de un avion ligero no tripulado. Por la propia naturaleza
de estas aeronaves, no caben esperar grandes alcances ni altitudes de vuelo, lo cual permite
introducir diversas simplificaciones.
Concretamente, resulta bastante adecuado emplear un modelo de Tierra Plana, a diferencia
de los modelos basados en la forma elipsoidal de esta (por ejemplo el WGS84 [NIMA 00]) que
se usan en el analisis de trayectorias de aviones comerciales. Ademas, se supondra un modelo
de gravedad constante, de forma que en conjunto se obtiene una notable simplificacion, a la vez
que no se incurren en errores de relevancia.
En cuanto al modelo de atmosfera, resulta adecuado usar la Atmosfera Estandar Internacional
(ISA), ya que permite caracterizar la atmosfera con una precision aceptable, a la vez que se
ha convertido en un convenio que permite a todos los aviones volar con el mismo modelo
atmosferico.
En la Seccion 2.1 se ofreceran mas detalles sobre los modelos geofısicos y atmosfericos.
Respecto a los modelos de avion, resulta bastante mas complicado establecer un unico tipo de
modelo a usar por todos los elementos del sistema de control y guiado, debido a la estrategia
jerarquica empleada. Ası, como puede verse en la seccion 1.2 (donde se muestra la arquitectura
general del sistema de control de vuelo desarrollado en esta tesis), el sistema de control y guiado
consta de dos modulos principales:
17
Controlador de trayectorias (sistema de guiado): genera senales de control de alto nivel ne-
cesarias para seguir la trayectoria de referencia, rechazando las posibles perturbaciones que
se puedan presentar.
Controlador de actitud: genera las senales de control de bajo nivel necesarias para mantener
el avion estable y siguiendo las referencias indicadas por el controlador de trayectorias.
El sistema de guiado constituye un generador tactico de trayectorias del avion. Su mision es
mantener a la aeronave en la trayectoria de referencia, corrigiendo las posibles desviaciones que
puedan ocurrir debido a las distintas perturbaciones. Para disenar este sistema, es util disponer
de un modelo puntual del avion de tres grados de libertad, que permita describir la posicion
del avion respecto a la trayectoria de referencia, ignorando al mismo tiempo el problema de la
actitud para evitar introducir una complejidad innecesaria en el problema. Dicho modelo no
se usara unicamente para la sintonizacion del sistema de guiado, ya que como se vera en el
capıtulo 4 se usaran algoritmos de guiado predictivo, los cuales necesitan incorporar un modelo
interno del movimiento del avion para predecir cual sera el movimiento del avion en funcion de
las decisiones que se tomen.
Por otra parte, el controlador de actitud es el encargado de ejecutar las senales de control que
mantengan el avion estable y le permitan seguir las consignas impuestas por el controlador de
trayectoria. Para su sıntesis, es necesario disponer de un modelo de seis grados de libertad, que
permita describir tanto la actitud como la velocidad de la aeronave. Sin embargo, a diferencia
del sistema de guiado, los modelos empleados aquı no tendran por que tener en cuenta la
posicion espacial de la aeronave.
Ademas, como se ha mencionado antes, resulta necesario disponer de un modelo con la mayor
precision posible para simular los controladores disenados y tener ciertas garantıas de estabilidad
de los mismos. Para estos usos, habra que modelar el avion con todos los grados de libertad
posibles, incluyendo modelos aerodinamicos y propulsivos con el maximo nivel de detalle.
Teniendo en cuenta esta variedad de modelos, puede resultar confuso desarrollarlos todos
en este capıtulo. Ası, hay que tener presente que para el desarrollo del sistema de guiado o
del sistema de control de actitud, sera necesario emplear modelos matematico del movimiento
del avion que se ajusten a las tecnicas empleadas para disenar esos sistemas, por lo que las
hipotesis simplificativas usadas para llegar a estos modelos solo se entienden en el contexto de
estos sistemas. Por este motivo, resulta mucho mas claro exponer estos modelos adaptados a
las necesidades particulares de un sistema en el capıtulo correspondiente a dicho sistema.
Con todo esto, lo que se va a hacer en este capıtulo es desarrollar la figura 2.1 para llegar
a un modelo del sistema con la mayor generalidad posible. Ası, las ecuaciones desarrolladas
aquı serviran como punto de partida para establecer modelos simplificados adaptados a las
necesidades de cada uno de los capıtulos de los que se compone esta tesis, ademas de ser usadas
para realizar las distintas simulaciones que se mostraran posteriormente.
18 CAPITULO 2. MODELO GENERAL DEL SISTEMA
Entrando en la estructura de este capıtulo, en la seccion 2.1 se expondran los modelos de
Tierra y de atmosfera a considerar en este trabajo. A partir de ellos, en la seccion 2.2 se van
a deducir las ecuaciones generales del movimiento del avion (modelo dinamico, aerodinamico y
propulsivo), a partir de las hipotesis generales consideradas durante toda esta tesis. El modelo
de avion descrito en esta seccion dependera de una serie de parametros geometricos, masicos,
aerodinamicos y propulsivos. Sera en la seccion 2.3 donde se expongan los metodos empleados
para estimar estos parametros (sobre todo los aerodinamicos y propulsivos), proporcionando ya
un modelo particularizado para la aeronave concreta con la que se trabajara en esta tesis.
2.1. Modelos geofısicos y atmosfericos
Los modelos geofısicos incluyen el modelo de la forma de la Tierra y de la gravedad terrestre;
estos modelos son de relevancia para el sistema de control y guiado ya que afectan directamente
a las ecuaciones del movimiento. En concreto, la forma de la Tierra determina las coordenadas
mas adecuadas para expresar dichas ecuaciones ası como la definicion de altitud, mientras que
la gravedad aparece explıcitamente en ellas.
Por otro lado, los modelos atmosfericos tambien tienen importancia en el sistema de control
y guiado ya que relacionan parametros como la altitud, la presion, o la densidad, que juegan
un papel relevante en el comportamiento de la aeronave.
2.1.1. Forma de la Tierra
El modelo de forma de Tierra que se elige es un modelo de Tierra plana; este modelo es
suficientemente preciso para desplazamientos no muy grandes y su tratamiento analıtico es
sencillo.
Hipotesis basicas
1. Se adopta un modelo de Tierra plana, despreciando la curvatura de la Tierra.
2. La posicion viene descrita por las coordenadas topocentricas x, y, y z.
3. Como origen del sistema de coordenadas topocentricas se toma la posicion inicial de la aero-
nave, a la altitud del nivel del mar medio.
Para aviones no tripulados ligeros (como es el caso de la aeronave con la que se esta traba-
jando en esta disertacion), estas hipotesis estan totalmente justificadas, ya que las limitaciones
operacionales del avion impiden que este se aleje demasiado del punto de referencia empleado
en el modelo de Tierra plana.
2.1. MODELOS GEOFISICOS Y ATMOSFERICOS 19
2.1.1.1. Coordenadas topocentricas
En consonancia con el modelo de Tierra elegido, se describira la posicion de la aeronave
utilizando coordenadas topocentricas, tomando como origen del sistema de referencia la posicion
inicial de la aeronave (punto de despegue u otro punto local de interes), al nivel del mar
medio.
Las coordenadas topocentricas x, y y z estan definidas de la siguiente forma respecto al origen
del sistema de referencia.
La coordenada x mide el desplazamiento de la aeronave hacia el Norte.
La coordenada y mide el desplazamiento de la aeronave hacia el Este.
La coordenada z mide el desplazamiento vertical, hacia el centro de la Tierra. Puesto que el
origen esta a la altitud del nivel del mar medio, z se puede igualar con la altitud respecto al
nivel del mar.
Para medir la altura a partir del nivel del suelo (tambien conocida como altura AGL), es
necesario tener un modelo de terreno, descrito a continuacion.
2.1.1.2. Modelo de terreno
Un modelo de terreno es una funcion que determina el nivel del suelo (respecto al nivel del
mar) en una region de la Tierra. Denominando el nivel del suelo respecto al nivel del mar como
hG, este modelo se podrıa representar matematicamente como hG(x, y).
A partir del modelo de terreno, es sencillo obtener la altura sobre el nivel del suelo (hAGL),
que dependera de la posicion de la aeronave, de la siguiente manera
hAGL = −z − hG(x, y). (2.1)
Es tıpico que estos modelos se formulen para coordenadas geodeticas (sobre el elipsoide
WGS84) y no para coordenadas topocentricas. La conversion entre ambos conjuntos de coor-
denadas se explica a continuacion.
2.1.1.3. Relacion con las coordenadas sobre el elipsoide WGS84
Es de interes relacionar las coordenadas topocentricas con las coordenadas en el sistema de
ejes Tierra dadas sobre el elipsoide WGS84, tambien conocidas como coordenadas geodeticas.
Estas son las coordenadas que emplea el sistema de navegacion por satelite GPS.
Las coordenadas geodeticas se dan como longitud (λ), latitud (φ) y altitud (h).
20 CAPITULO 2. MODELO GENERAL DEL SISTEMA
En primer lugar es necesario conocer las coordenadas geodeticas del origen de coordenadas
topocentricas, que se denominaran (λ0, φ0). Se supone h0 = 0, suponiendo el nivel del mar
medio a la altura del elipsoide WGS84. A partir de estas coordenadas, se define la matriz RTE
(la matriz de cambio de base entre el sistema de referencia ejes Tierra y el sistema de referencia
topocentrico) como
RTE =
− sinφ cosλ − sinφ sinλ cosφ
− sinλ cosλ 0
− cos φ cosλ − cosφ sinλ − sin φ
. (2.2)
Dado un punto (λ, φ, h), se obtienen sus coordenadas topocentricas de la siguiente forma:
1. En primer lugar, se calcula su posicion relativa en los ejes Tierra.
xE =
(
h +re
√
1− f(2− f) sin2 φ
)
cosφ cosλ− re cosφ0 cosλ0√
1− f(2− f) sin2 φ0
, (2.3)
yE =
(
h +re
√
1− f(2− f) sin2 φ
)
cosφ sinλ− re cos φ0 sin λ0√
1− f(2− f) sin2 φ0
, (2.4)
zE =
(
h +re(1− f)2
√
1− f(2− f) sin2 φ
)
sin φ− re(1− f)2√
1− f(2− f) sin2 φ0
sin φ0. (2.5)
2. En segundo lugar se emplea la matriz RTE para expresar el anterior resultado en los ejes
topocentricos
x
y
z
= RTE
xE
yE
zE
. (2.6)
En las ecuaciones (2.3)–(2.5) aparecen los parametros del elipsoide WGS84 re y f , que son
respectivamente su radio ecuatorial y aplanamiento, y cuyos valores son
re = 6378, 137 km, (2.7)
f =1
298, 257224. (2.8)
2.1.2. Gravedad
Para obtener las fuerzas masicas que aparecen en el avion, es necesario incorporar un modelo
gravitatorio. Concretamente, en esta tesis se va a considerar un modelo de gravedad constan-
te.
2.1. MODELOS GEOFISICOS Y ATMOSFERICOS 21
Hipotesis basicas
1. Se adopta un modelo de gravedad constante, de forma que en el sistema de referencia topo-
centrico ~g = [0 0 − g0]T .
2. Se desprecia la rotacion de la Tierra.
3. Como valor de gravedad se toma la llamada “aceleracion estandar de caıda libre”, g0 =
9, 80655 m/s2.
Estas hipotesis quedan justificadas por las variaciones de altitud previsibles (del orden de cen-
tenares de metros) y los desplazamientos maximos previsibles (del orden de decenas de kilome-
tros). Ademas es un modelo consistente con los modelos de Tierra y atmosfera.
2.1.3. Atmosfera
Como se vera posteriormente, las fuerzas y momentos aerodinamicos y propulsivos dependen
de las propiedades (densidad, presion y temperatura) del aire que rodea al avion. Sin embargo,
hay que tener en cuenta que estas magnitudes no son constantes, obteniendose variaciones
importantes en funcion de la altitud de vuelo.
De esta manera, para cerrar el modelo aerodinamico y propulsivo, sera necesario proporcionar
una relacion entre las propiedades del aire y la altitud de vuelo. Como se menciono anterior-
mente, el modelo adaptado sera la Atmosfera Estandar Internacional (ISA), el cual se resume
a continuacion (para mas detalles, se puede consultar [ISO 75]).
Hipotesis basicas
1. El aire se considera un gas perfecto.
2. Se desprecia la humedad del aire.
3. La atmosfera esta en reposo respecto a tierra.
4. La presion, temperatura y densidad a nivel del mar son las siguientes
p0 = 101325 N/m2, (2.9)
T0 = 288,15 K, (2.10)
ρ0 = 1,225 kg/m3. (2.11)
5. La variacion de temperatura con la altura viene dada por
T = T0 − αz, (2.12)
donde α = 6,5 K/km.
22 CAPITULO 2. MODELO GENERAL DEL SISTEMA
6. La aceleracion de la gravedad es constante y su valor es igual a g0 (constante definida en el
apartado anterior).
Estas hipotesis son las de la atmosfera ISA, para altitudes de trabajo inferiores a la de la
tropopausa (que esta en torno a 11 kilometros).
Empleando las hipotesis basicas, es sencillo encontrar expresiones para la variacion de la
presion y la densidad con la altura
p = p0
(
T0 − αz
T0
)
g0Rgα
, (2.13)
ρ = ρ0
(
T0 − αz
T0
)
g0Rgα
−1
, (2.14)
donde Rg = 287 J/(kgK) es la constante del aire como gas perfecto.
Como se vera en el capıtulo 5, donde se aborda el diseno del sistema de datos aerodinamicos,
el uso de este modelo de atmosfera resulta imprescindible para obtener una estimacion de la
altitud de vuelo (conocida como altitud-presion) a partir de las medida de presion estatica
proporcionada por el sistema de anemometrıa.
2.2. Modelos de avion
En esta seccion se van sentar las bases de los modelos de avion (ecuaciones del movimiento
y modelos aerodinamicos y propulsivos) que se van a usar en el desarrollo de los sistemas de
control de vuelo de esta tesis.
Como se ha mencionado antes, en esta seccion no se pretende recopilar todos los modelos
que vayan a ser usados a lo largo de los sucesivos capıtulos de esta tesis, ya que la mayorıa
de esos modelos solo tienen sentido en base a las hipotesis y consideraciones establecidas en
cada momento. Sin embargo, sı es necesario partir de unas ecuaciones generales, a partir de
las cuales, haciendo uso de las hipotesis adecuadas en cada momento, se puedan obtener los
modelos simplificados adecuados a las necesidades de cada momento.
En este sentido, se van a presentar dos modelos generales del movimiento. En primer lugar,
en la seccion 2.2.1 se mostraran el modelo de 6 grados de libertad del avion, el cual permite
describir tanto la dinamica de posicion como de actitud de la aeronave. Se considerara este
modelo como el de mayor nivel de detalle, por lo que sera el que se implemente en el software
de simulacion empleado para ensayar con el maximo nivel de realismo, las leyes de control y
guiado que se generaran a lo largo de esta disertacion.
Por otro lado, para analizar el movimiento de traslacion del avion, resulta de interes disponer
de un modelo puntual de la aeronave (de 3 grados de libertad), a partir del cual se pueda
obtener la trayectoria del centro de gravedad del avion (sin considerar el problema de actitud).
2.2. MODELOS DE AVION 23
Este modelo, descrito en la seccion 2.2.2, resultara de especial utilidad en el capıtulo 4, donde
se trata el problema de guiado del avion.
Ademas de estos modelos dinamicos, para cerrar el modelo de avion es necesario incorporar
las fuerzas y momentos aerodinamicos y propulsivos que actuan sobre la aeronave, los cuales se
describiran en las secciones 2.2.1.2 y 2.2.1.3.
2.2.1. Modelo no lineal de 6 grados de libertad
Este modelo es el de mayor complejidad de todos los que se usaran esta disertacion. Su funcion
es simular con el maximo nivel de detalle la dinamica de la aeronave, por lo que se acudira a
las ecuaciones mas generales del movimiento, junto con el modelo aerodinamico y propulsivo
mas preciso del que se disponga.
Sera este el modelo que se implemente en el entorno de simulacion en el que se realicen las
pruebas de los sistemas de control y guiado que se detallaran en los capıtulos posteriores.
2.2.1.1. Modelo dinamico
Como puede comprobarse en referencias clasicas de dinamica del vuelo como [Pama 98,
BL S 03, B Et 96], la expresion mas general de las ecuaciones del movimiento de la aerona-
ve viene dadas por las ecuaciones de cantidad de movimiento y de momento cinetico, las cuales
pueden expresarse como
md ~Vcd t
∣
∣
∣
∣
∣
i
= ~FA,T + ~Fg, (2.15)
d ICG~ω
d t
∣
∣
∣
∣
i
= ~MA,T , (2.16)
donde ~Vc es la velocidad del centro de gravedad del avion respecto a tierra, ~ω es la velocidad
angular del avion respecto a tierra, ~FA,T y ~MA,T son las fuerzas y momentos aerodinamicos y
propulsivos, ~Fg es la fuerza gravitatoria, m es la masa y ICG es el tensor de inercia en el centro
de gravedad.
Hipotesis basicas:
El avion es un solido rıgido de 6 grados de libertad.
Avion con plano de simetrıa (xBzB).
Como se establecio anteriormente, se usa el modelo de tierra plana:
• El sistema topocentrico es inercial.
• Modelo de gravedad constante.
24 CAPITULO 2. MODELO GENERAL DEL SISTEMA
No se considerara el viento. Esto implica que la velocidad respecto a tierra (denotada por ~Vc)
coincide con la velocidad aerodinamica (~V ).
Se desprecia el efecto de las partes moviles internas del avion (motor, helice, etc) en el
momento cinetico del mismo.
Se considera que la masa y los momentos de inercia permanecen constantes. Hay que tener
en cuenta que la aeronave con la que se esta trabajando aquı es de propulsion electrica, por
lo que no hay perdida de masa de combustible durante el vuelo.
Como suele ser habitual, se va a usar el sistema de ejes cuerpo (ver apendice A) para proyectar
las ecuaciones del movimiento. Ası, introduciendo la regla de Poisson para calcular las derivadas
respecto de sistemas no inerciales (como es el caso de los ejes cuerpo), y teniendo en cuenta las
hipotesis que se acaban de hacer, se pueden escribir las ecuaciones (2.15)–(2.16) de la siguiente
manera
~FA,T + ~Fg = m
[
d~VBTdt
∣
∣
∣
∣
∣
B
+ ~ωBT ∧ ~vBT]
, (2.17)
~MA,T = ICG
[
d~ωBTdt
∣
∣
∣
∣
B
~ωBT ∧ ~ωBT]
, (2.18)
donde los subındices BT representan velocidad (lineal o angular) del sistema de ejes cuerpo
(B) respecto al sistema topocentrico (T ).
A continuacion se van a reescribir estas ecuaciones de forma escalar, para lo que se necesita
introducir la siguiente notacion
[
~V]B
=[
u v w]T,
[~ω]B =[
p q r]T,
[
~FA,T
]B
=[
X Y Z]T,
[
~MA,T
]B
=[
L M N]T.
Ademas, teniendo en cuenta la hipotesis de Tierra Plana, la fuerza gravitatoria se puede
expresar en ejes cuerpo de la siguiente forma
[~Fg]B = RBH
0
0
g0
, (2.19)
donde RBH es la matriz de transformacion del sistema de ejes horizonte local al sistema de ejes
cuerpo mostrada en el apendice A.
2.2. MODELOS DE AVION 25
Con todo esto, las ecuaciones (2.17) y (2.18) pueden escribirse como
X −mg0 sin θ = m (u− rv + qw) , (2.20)
Y +mg0 cos θ sinφ = m (v + ru− pw) , (2.21)
Z +mg0 cos θ cosφ = m (w − qu+ pv) , (2.22)
L = Ixp− Ixzr + (Iz − Iy)qr − Ixzpq, (2.23)
M = Iyq + (Ix − Iz)pr + Ixz(p2 − r2), (2.24)
N = Iz r − Ixzp+ (Iy − Ix)pq + Ixzqr. (2.25)
Junto con las ecuaciones dinamicas (2.20)-(2.25), es necesario proporcionar las relaciones
cinematicas lineales y angulares.
Las ecuaciones cinematicas lineales vienen dadas por la ecuacion diferencial que permite co-
nocer la posicion del vehıculo en funcion de la velocidad, esto es
[
~Vc
]T
=
[
d~rcdt
]T
=
xc
yc
zc
, (2.26)
donde el vector de posicion se ha expresado como: [~rc]T =
[
xc yc zc
]T
.
Puesto que el vector velocidad viene dado en ejes cuerpo, es necesario introducir la oportuna
matriz de transformacion, por lo que las relaciones cinematicas lineales quedan
xc
yc
zc
= RTB
u
v
w
=
ucθcψ + v (sθsφcψ − sψcφ) + w (sθcφcψ + sψsφ)
ucθsψ + v (sψsθsφ + cψcφ) + w (sθcφsψ − cψsφ)
−usθ + vsφcθ + wcφcθ
, (2.27)
donde para una mayor compacidad, se han definido los senos y cosenos mediante la notacion
sx = sin(x) y cx = cos(x).
En cuanto a las relaciones cinematicas angulares, teniendo presente la secuencia de rotaciones
que define la transformacion FH ↔ FB (ecuacion A.8), se puede definir el vector velocidad
angular de la siguiente forma
~ω = ψ~kH + θ~jX1+ φ~iB.
Proyectando esta ecuacion en ejes cuerpo
p
q
r
= ψRBH
[
~kH
]H
+ θRBX2RX2X1
[
~jX1
]X1
+ φ[
~iB
]B
,
26 CAPITULO 2. MODELO GENERAL DEL SISTEMA
de donde
p
q
r
=
φ− ψ sin θ
θ cosφ+ ψ cos θ sinφ
−θ sinφ+ ψ cos θ cos φ
, (2.28)
ecuacion que puede ser invertida para dar lugar a
φ
θ
ψ
=
p + (q sinφ+ r cos φ) tan θ
q cosφ− r sinφ
(q sin φ+ r cosφ) sec θ
. (2.29)
El grupo de ecuaciones (2.27), (2.29) y (2.20-2.25) constituye un sistema de 12 ecuaciones
diferenciales que permite calcular las 12 variables de estado
~x =[
xc yc zc φ θ ψ u v w p q r]
.
Para cerrar el problema, es necesario conocer las expresiones de las fuerzas y momentos aero-
dinamicos y propulsivos. En general se tiene
~FA,T , ~MA,T = f (~x, ~u) ,
donde ~x es el vector de estados y ~u es el vector de control.
Modelo dinamico del avion en ejes viento
Aunque las ecuaciones formuladas anteriormente son ampliamente usadas, resulta de interes
en algunas ocasiones cambiar algunas variables de estado del problema. Concretamente se va
a proponer una formulacion alternativa en la que se sustituyen las componentes del vector
velocidad en ejes cuerpo (u, v y w), por otras tres variables que permiten definir el vector
de velocidad aerodinamica, como son: el modulo de la velocidad V , el angulo de ataque α y
el angulo de resbalamiento β. Notese que mediante estas tres variables, si se hace uso de la
transformacion entre ejes viento y ejes cuerpo que se muestra en el apendice A, se pueden
obtener las componentes de la velocidad aerodinamica en ejes cuerpo. Esta formulacion de las
ecuaciones del movimiento es denominada por algunos autores (ver [BL S 03]) como ecuaciones
del movimiento en ejes viento.
El motivo para desarrollar esta version alternativa a las ecuaciones del movimiento, reside
en que en una aeronave sı se tienen sensores que permiten realizar medidas directas de la
velocidad aerodinamica (la cual se mide mediante el tubo de Pitot) y de los angulos de ataque
y resbalamiento (que se miden mediante veletas o sondas); mientras que no se disponen de
elementos que permitan una medida directa de las componentes de la velocidad aerodinamica
en ejes cuerpo. Ası, esta formulacion alternativa resulta de interes para el desarrollo de sistemas
2.2. MODELOS DE AVION 27
de control de actitud (como se vera en el capıtulo correspondiente).
Para formular estas ecuaciones no se puede proceder de la misma forma que con las ecuaciones
en ejes cuerpo, esto es, no se puede partir de las ecuaciones (2.15)–(2.16) y calcular las derivadas
respecto al sistema de ejes viento mediante la regla de Poisson. El motivo es que el sistema de
ejes viento no es un sistema ligado al avion, por lo que la derivada temporal del tensor de inercia
escrito en este sistema de ejes no es nula, lo que implica que aparecerıan terminos adicionales
en la ecuacion de momentos, complicando la formulacion. Por este motivo, unicamente se van a
reformular en ejes viento las ecuaciones de fuerzas. Para ello, se va a partir de la ecuacion (2.15),
donde se va a sustituir la derivada temporal de la velocidad en ejes cuerpo, por la derivada en
ejes viento, haciendo uso de la regla de Poisson. Esto es
~FA + ~FT + ~Fg = m
[
d~VBTdt
∣
∣
∣
∣
∣
W
+ ~ωWB ∧ ~vBT + ~ωBT ∧ ~vBT]
, (2.30)
donde se han considerado separadamente las fuerzas aerodinamicas y propulsivas. Introduciendo
la siguiente notacion:[
~FA
]W
=[
−D −C −L]T
, (2.31)[
~FT
]B
=[
XT YT ZT
]T
, (2.32)[
~VBT
]W
=[
Va 0 0]T
, (2.33)[
d~VBTdt
∣
∣
∣
∣
∣
W
]W
=[
Va 0 0]T
. (2.34)
Ademas, la velocidad angular de los ejes viento respecto al sistema de ejes cuerpo, puede ser
calculada a partir de la definicion de los sistemas de referencia mostrada en el apendice A
[~ωWB]W =
0
0
β
+RWS
0
−α0
=
−α sin β
−α cos β
β
. (2.35)
Con todo esto, se pueden reescribir las ecuaciones de fuerzas proyectadas en ejes viento de la
siguiente forma
Va
βVa
αVa cos β
=
1
m
−D−C−L
+RWB
XT
YT
ZT
+RWBRBT
0
0
g0
−
0
Va (−p sinα + r cosα)
Va ((p cosα + r sinα) sin β − q cos β)
. (2.36)
28 CAPITULO 2. MODELO GENERAL DEL SISTEMA
2.2.1.2. Modelo propulsivo
Hipotesis simplificativas:
el sistema propulsivo de la aeronave usada en este trabajo esta compuesto un sistema de
baterıas, un motor electrico (con su correspondiente controlador electronico de velocidad) y
una helice de paso fijo.
la fuerza propulsiva esta alineada con el eje x del avion (en el sistema de ejes cuerpo).
El empuje que proporciona la helice puede modelarse de la siguiente forma
~FT =4
π2ρR4Ω2CT~iB, (2.37)
donde R es el radio de la helice, Ω la velocidad angular de giro y CT es el coeficiente de traccion
de la helice, que a su vez depende del parametro de avance (J) de la misma, esto es
CT = f(J); J =πu
ΩR. (2.38)
En cuanto al momento propulsivo, hay que decir que vendra generado exclusivamente por el
par de reaccion debido al giro de la helice, de forma que si tiene en cuenta que el eje de la helice
es paralelo al eje xB de la aeronave, se puede decir que el momento propulsivo tendra una sola
componente no nula (segun xB), cuyo valor viene dado por
~MT = − 4
π3ρR5Ω2CP~iB, (2.39)
donde CP = π3P4ρΩ3R5 es el coeficiente de potencia de la helice.
Los coeficientes CP y CT dependen unicamente del parametro de avance J y son caracterısticos
de cada helice. En la Seccion 2.3 se proporcionara un modelo para CP y CT , obtenido mediante
ensayos en tunel de viento del sistema propulsor del avion.
Finalmente, hay que decir que el controlador electronico de velocidad del motor electrico del
avion posee un regulador interno de revoluciones, de manera que puede establecerse una relacion
lineal entre la posicion de la palanca (δt) y las revoluciones conseguidas. De esta manera, se
puede decir que, a todos los efectos, Ω sera la senal de control asociada al motor.
2.2.1.3. Modelo aerodinamico
Hay que tener en cuenta que la obtencion de un modelo aerodinamico preciso es una tarea de
gran dificultad. En general, puede decirse que estas fuerzas y momentos dependen de forma no
2.2. MODELOS DE AVION 29
lineal las variables de estado y de control, lo cual puede expresarse de la siguiente forma
~FA, ~MA = f (~x, ~u) .
Como es de esperar, no se dispone de ninguna expresion analıtica que modele esta dependencia
funcional de forma global.
Para facilitar la tarea de modelado resulta conveniente adimensionalizar las distintas fuerzas
y momentos. Esto permite trabajar con coeficientes adimensionales, sobre los cuales se tiene
mucho mas conocimiento. Ademas, por conveniencia, se van a usar los ejes estabilidad (definidos
en el Apendice A).
Las fuerzas y momentos aerodinamicos pueden expresarse de la siguiente forma
XA
YA
ZA
=
cosα 0 − sinα
0 1 0
sinα 0 cosα
12ρV 2
a SCXS
12ρV 2
a SCYS12ρV 2
a SCZS
, (2.40)
LA
MA
NA
=
cosα 0 − sinα
0 1 0
sinα 0 cosα
12ρV 2
a SbClS12ρV 2
a ScCmS
12ρV 2
a SbCnS
, (2.41)
donde CXS, CZS
, CY , ClS , CmSy CnS
son los coeficientes de fuerzas y momentos aerodinamicos
en ejes estabilidad (que seran estimados posteriormente), mientras que S, b y c son la superficie,
la envergadura y la cuerda media del ala, respectivamente.
Los coeficientes de sustentacion (CL), resistencia (CD) y fuerza lateral (CC) del avion (que
se usaran en la seccion 2.2.2) se pueden definir a partir de los coeficientes de fuerzas en ejes
estabilidad de la siguiente forma
CD
CC
CL
=
cos β − sin β 0
sin β cos β 0
0 0 1
−CXS
CYS−CZS
. (2.42)
Como se ha comentado antes, no existe ningun modelo general que proporcione una forma fun-
cional universal para estos coeficientes. Por el contrario, pueden encontrarse distintos modelos
con distintos niveles de complejidad.
El modelo que se va a proponer para los coeficientes de fuerzas y momentos aerodinamicos en
ejes estabilidad esta basado en el modelo aerodinamico empleado en el DATCOM (que como
se vera mas adelante, sera la herramienta usada para estimar los parametros aerodinamicos).
Ası, las fuerzas y momentos aerodinamicos en ejes estabilidad se van a expresar de la siguiente
30 CAPITULO 2. MODELO GENERAL DEL SISTEMA
forma
CXS= CXα(α) + CXδe
(α, δe) + CXδf(α, δf), (2.43)
CZS= CZα(α) + CZα
(α)αc
2us+ CZq(α)
qc
2us+ CZδe
(δe) + CZδf(δf ), (2.44)
CYS = CYβ(α)β + CYp(α)pb
2us+ CYr(α)
rb
2us+ CYδr (δr), (2.45)
ClS = Clβ(α)β + Clp(α)pb
2us+ Clr(α)
rb
2us+ Clδa (δa) + Clδr (δr), (2.46)
CmS= Cmα(α) + Cmα
(α)αc
2us+ Cmq(α)
qc
2us+ Cmδe
(δe) + Cmδf(δf ), (2.47)
CnS= Cnβ
(α)β + Cnp(α)pb
2us+ Cnr(α)
rb
2us+ Cnδa
(α, δa) + Cnδr(δr), (2.48)
donde us es una velocidad de vuelo de referencia.
Es importante no confundir las distintas funciones que aparecen en el modelo aerodinamico
anterior con las derivadas de estabilidad del avion que se pueden encontrar en cualquier ma-
nual de Mecanica del Vuelo. Por ejemplo, la funcion Cmα(α) de la ecuacion (2.47) representa
la contribucion del angulo de ataque al momento de cabeceo, mientras que la constante de-
notada por Cmα es la derivada de estabilidad conocida como “ındice de estabilidad estatica
longitudinal”.
Los terminos δe, δa, δr y δf son las deflexiones de las superficies de control, definidas de la
siguiente forma:
δe: deflexion del timon de profundidad. δe > 0 implica momento de picado.
δa: deflexion de alerones. δa > 0 implica momento de balance positivo.
δr: deflexion del timon de direccion. δr > 0 implica momento de guinada positivo.
δf : deflexion de flaps. δf > 0 un incremento del coeficiente de sustentacion.
En la seccion 2.3 se realizara una estimacion de las distintas funciones que componen el modelo
aerodinamico descrito en las ecuaciones anteriores.
2.2.2. Modelo de 3 grados de libertad
Como se ha mencionado antes, para analizar la trayectoria de un avion resulta conveniente
utilizar un modelo de masa puntual con 3 grados de libertad (el cual es ampliamente usado en
la literatura [Slat 97]). Este modelo permite obtener las ecuaciones que describen el movimiento
del centro de masas del UAV, sin incluir la dinamica de la actitud.
En la formulacion de las ecuaciones del movimiento se consideran las siguientes hipotesis:
avion rıgido y simetrico,
2.2. MODELOS DE AVION 31
empuje paralelo al eje xB,
tierra plana,
viento estacionario, horizontal,
masa constante (ya que la aeronave dispone de un motor electrico alimentado por baterıas).
Ası, se pueden obtener las siguientes ecuaciones escalares
dx
dt= Va cos γ cosχ+ wx, (2.49)
dy
dt= Va cos γ sinχ+ wy, (2.50)
dh
dt= Va sin γ, (2.51)
mdVadt
= T cosα cos β −D −mg sin γ, (2.52)
mVa cos γdχ
dt= (T cosα sin β − C) cosµ+ (L+ T sinα) sin µ, (2.53)
mVadγ
dt= − (T cosα sin β − C) sinµ+ (L+ T sinα) cosµ−mg cos γ. (2.54)
En estas ecuaciones Va, γ, χ son el modulo de la velocidad aerodinamica, el angulo de tra-
yectoria y el angulo de rumbo, que definen el vector velocidad aerodinamica ~V ; m la masa
del UAV; x, y, h son las coordenadas del centro de masas del avion (hacia el norte, hacia el
este y altitud); t el tiempo; T es el empuje suministrado por la helice; L la sustentacion, D
la resistencia aerodinamica y µ el angulo de balance de la velocidad aerodinamica (tambien
conocido como angulo de alabeo); y wx, wy son las componentes de la velocidad del viento
(viento horizontal y estacionario) segun los ejes x, y del sistema topocentrico.
Finalmente, resulta conveniente particularizar las ecuaciones anteriores para una condicion
de vuelo simetrico. Ası, considerando que la aeronave vuela sin angulo de resbalamiento (esto
es, la velocidad aerodinamica esta contenida en el plano de simetrıa del avion) y que la fuerza
aerodinamica lateral C es nula, el sistema de ecuaciones (2.49)–(2.54) se transforma en
dx
dt= Va cos γ cosχ+ wx, (2.55)
dy
dt= Va cos γ sinχ+ wy, (2.56)
dh
dt= Va sin γ, (2.57)
mdVadt
= T cosα−D −mg sin γ, (2.58)
mVa cos γdχ
dt= (L+ T sinα) sinµ, (2.59)
mVadγ
dt= (L+ T sinα) cosµ−mg cos γ. (2.60)
Ademas, otra consecuencia de mantener un vuelo simetrico, es que el angulo de alabeo del
32 CAPITULO 2. MODELO GENERAL DEL SISTEMA
avion µ (esto es, el que forma el plano sustentacion–resistencia con la vertical) coincide con el
angulo de balance φ (formado por el plano de simetrıa del avion y la vertical), ya que en este caso,
la sustentacion y la resistencia estan contenidas en el plano de simetrıa de la aeronave.
2.3. Estimacion de parametros
En esta seccion se van a proporcionar los distintos parametros que aparecen en los modelos
detallados en las secciones anteriores. Con esto se particularizaran los modelos proporcionados
en las secciones anteriores para la aeronave usada en este trabajo: el Cefiro UAV.
De forma general, de pueden distinguir dos tipos de parametros en los modelos descritos
anteriormente:
parametros geometricos y masicos,
parametros aerodinamicos y propulsivos.
La estimacion del primer grupo de parametros no supone ningun problema, ya que pueden
ser medidos directamente. Ası, para la aeronave con la que se esta trabajando en esta tesis, se
tienen los siguientes valores
Masa: m = 23 kg.
Tensor de inercia:
ICG =
2,496 0 −0,373
0 4,451 0
−0,373 0 6,509
kg ·m2. (2.61)
Posicion del centro de gravedad: xCG = 1,19m, yCG = 0m, zCG = 0m.
Por el contrario, no puede decirse lo mismo de los distintos coeficientes de los modelos aero-
dinamicos y propulsivos de las secciones 2.2.1.2 y 2.2.1.3, ya que no son magnitudes medibles
directamente, y tampoco se tienen metodos exactos que permitan encontrar sus valores con
total certidumbre. Teniendo en cuenta esta problematica, se va a mostrar en las siguientes sec-
ciones los metodos empleados para estimar estos parametros. Ademas, es importante remarcar
que dichos parametros solo se usaran en simulaciones y no en el diseno de los controladores
de actitud (capıtulo 3), ya que estos controladores incluyen leyes de adaptacion que permiten
estimarlos por sı mismos.
2.3. ESTIMACION DE PARAMETROS 33
2.3.1. Estimacion de parametros aerodinamicos
La obtencion de un modelo aerodinamico preciso de una aeronave puede considerarse una
tarea bastante complicada. De forma general, se puede afirmar que no existe ningun metodo
numerico que permita la obtencion de un modelo aerodinamico de seis grados de libertad con
total exactitud. De hecho, puede decirse que la unica forma de obtener un modelo aerodinamico
de un avion de gran precision no es otra que acudir a una campana de ensayos en vuelo o en
tunel aerodinamico.
La realizacion de este tipo de ensayos resulta ser una labor muy costosa debido al elevado
numero de horas de vuelo (o de tunel aerodinamico) que se necesitan. Ademas, dista mucho
de ser trivial, ya que se requiere un diseno minucioso de las maniobras para identificar los
distintos tipos de parametros aerodinamicos. A modo de ejemplo, en la referencia [Kimb 03] se
proporciona una vision general sobre el diseno de maniobras para en ensayos en vuelo, mientras
que en [Klei 06] se muestran tecnicas de tratamiento de datos obtenidos en ensayos en vuelo
para la identificacion de modelos aerodinamicos.
El problema de estos metodos (aparte del coste y de la complejidad, ya mencionados), es que
para su realizacion en un avion no tripulado, se necesita disponer de un sistema de control de
vuelo que sea capaz de ejecutar las maniobras necesarias, a la vez que garantice la estabilidad
de la aeronave durante las mismas; que es justo lo que se esta desarrollando en esta tesis. Por
lo tanto, es necesario acudir a otros metodos de modelado que no requieran la preexistencia del
sistema de control de vuelo.
Con estas circunstancias, el modelado aerodinamico de la aeronave se va a basar en los me-
todos contenidos en el Data Compendium (mas conocido como DATCOM), de la Fuerza Aerea
Estadounidense (USAF). Esta herramienta fue desarrollada en los anos 50 por parte de esta
fuerza aerea, para dar respuesta a la problematica relacionada con el modelado de aviones (sobre
todo de cara a obtener caracterısticas de estabilidad y control). Debido a la deficiente capacidad
computacional de la epoca, se hizo una recopilacion de resultados de ensayos en vuelo y en tunel
aerodinamico de distintas geometrıas y condiciones de vuelo, unificando todos estos datos en
metodos semiempıricos para calcular los distintos parametros aerodinamicos, dando lugar a un
extenso documento [Finc 60]. Posteriormente, estos metodos fueron digitalizados, dando lugar
al software Digital DATCOM [Will 79], el cual permite obtener el modelo aerodinamico del
avion a partir de un archivo de texto en el que se describe la geometrıa de la aeronave usando
un lenguaje de programacion propio.
Hay que decir que DATCOM no es un software de calculo aerodinamico al uso, es decir, no
realiza una discretizacion de la geometrıa del avion, tratando de calcular las fuerzas aerodina-
micas en cada elemento para obtener las fuerzas y momentos totales del avion. Por el contrario,
a partir de parametros geometricos sencillos, usa metodos empıricos para obtener las distintas
fuerzas y momentos aerodinamicos del avion. Esto permite incluir con facilidad elementos de la
34 CAPITULO 2. MODELO GENERAL DEL SISTEMA
geometrıa del avion que suelen ser de difıcil modelado en los paquetes software convencionales
de calculo aerodinamico, como son el fuselaje, la influencia del motor, o la interferencia ala-
fuselaje; permitiendo obtener un modelo final con un grado de precision muy aceptable. Para
tener una idea del nivel de precision de DATCOM, se pueden ver trabajos como [Bosc 10], don-
de se comparan parametros aerodinamicos de una aeronave de geometrıa similar al Cefiro con
distintos metodos (entre los que estan DATCOM), o [Blak 85] donde se comparan parametros
aerodinamicos de un avion de caza obtenidos con DATCOM con los obtenidos en ensayos en
tunel aerodinamico.
Sin embargo, DATCOM tambien tiene algunos inconvenientes. Uno de los mas importantes,
es que debido a su diseno, solo es valido para geometrıas de avion convencionales, ya que son las
unicas para las que estan disponibles estos metodos empıricos de estimacion. Ası, por ejemplo,
DATCOM pierde eficacia al trabajar con aviones con doble estabilizador vertical (como es el
caso del Cefiro). Ademas, en este caso tampoco proporciona el efecto del timon de direccion,
ademas de otros parametros aerodinamicos presentes en el modelo.
Para solventar esto, se ha disenado un software que integra DATCOM con otro programa
de calculo aerodinamico basado en el bien conocido metodo de vortex lattice. Se trata de un
metodo basado en aerodinamica potencial, aplicable unicamente al calculo de fuerzas en super-
ficies sustentadoras de origen no viscoso. Este metodo realiza una panelizacion de las distintas
superficies definidas, calculando las presiones de cada panel, permitiendo ası obtener una apro-
ximacion a la distribucion de presiones en dichas superficies (ver [Houg] para mas detalles).
Por contra, el inconveniente de usar un metodo de vortex lattice, es que no se puede calcular la
influencia del fuselaje del avion.
De entre los distintos paquetes de software que implementan metodos de vortex lattice, en
esta tesis se ha hecho uso del “Tornado Vortex Lattice” [Torn], ya que es de codigo abierto, y su
implementacion en Matlab facilita el desarrollo del software de integracion con DATCOM.
Con estas bases, se ha desarrollado una herramienta de modelado aerodinamico de aviones
mediante un software que permite integrar DATCOM y Tornado. Ası, partiendo de un archivo de
entrada donde se define la geometrıa del avion, la herramienta permite traducir esta geometrıa
de entrada a los formatos compatibles con DATCOM y Tornado, ejecutando estos dos programas
bajo las mismas condiciones de vuelo. Ası mismo, una etapa de postprocesado interpreta la
informacion devuelta por estos dos programas, desglosando la contribucion de los distintos
elementos del avion (ala, fuselaje, estabilizadores, etc) a los distintos parametros aerodinamicos.
Finalmente, es el usuario el que decide cual de los dos metodos es mas adecuado para modelar
las contribuciones de los distintos elementos del avion a cada parametro aerodinamico.
A modo de ejemplo, en la figura 2.2 se muestra un esquema donde se describe como se ha hecho
el modelado aerodinamico para el Cefiro UAV. Como se puede ver en la figura, se ha definido en
DATCOM la geometrıa completa del avion, excepto los estabilizadores verticales (debido a las
limitaciones del software), al mismo tiempo que se modelan todas las superficies aerodinamicas
2.3. ESTIMACION DE PARAMETROS 35
Figura 2.2: Integracion de DATCOM y TORNADO para el modelado aerodinamico del Cefiro.
del avion en Tornado. Una vez aplicados ambos metodos, el software de integracion postprocesa
los resultados de ambos, ofreciendo al usuario la contribucion de cada elemento del avion a cada
parametro aerodinamico calculada por ambos metodos. Finalmente, se define que metodo de
calculo es el mas adecuado para cada contribucion.
Como se puede ver en la definicion del modelo aerodinamico (2.44)–(2.48), es necesario es
necesario establecer una condicion de vuelo de referencia. Concretamente, en este trabajo se ha
considerado como referencia un vuelo rectilıneo, uniforme, a altitud constante (nivel del mar)
y velocidad 19 m/s (Mach 0.059).
Es importante senalar que se ha comprobado que el numero de Mach no afecta sensiblemente
a los distintos coeficientes aerodinamicos calculados (si este varıa dentro del rango admisible de
la aeronave). Lo mismo ocurre con la altitud de vuelo (un vuelo a 3000 m implica variaciones
en los coeficientes aerodinamicos del orden del 1% respecto a los coeficientes calculados a nivel
del mar). Por este motivo solo se van a calcular los distintos coeficientes aerodinamicos para
la condicion de vuelo de referencia descrita anteriormente, de forma que la dependencia de las
fuerzas y momentos aerodinamicos con la velocidad y la altitud de vuelo entrara unicamente
a traves de la presion dinamica (tengase en cuenta que para obtener las fuerzas y momentos
aerodinamicos a partir de sus correspondientes coeficientes adimensionales hay que multiplicar
estos por la presion dinamica q = 12ρV 2).
Como resultado, en las figuras 2.3–2.8 pueden encontrarse todos los coeficientes que in-
tervienen en el modelo aerodinamico (2.43)–(2.48), calculados a una velocidad de referencia
us = 19m/s, a nivel del mar.
36 CAPITULO 2. MODELO GENERAL DEL SISTEMA
0 5 10 15−1.5
−1
−0.5
0
α
CZα
0 5 10 15
−1.2
−1.1
−1
−0.9
α
CZα
0 5 10 15
−5.5
−5
−4.5
−4
α
CZq
−20 0 20
−0.1
−0.05
0
0.05
0.1
δe
CZδe
−20 0 20−5
0
5x 10
−3
δf
CZδf
Figura 2.3: Parametros del modelo de coeficiente CZS.
0 5 10 15
−0.13
−0.12
−0.11
−0.1
−0.09
−0.08
−0.07
−0.06
−0.05
−0.04
−0.03
α
CXα
−20 0 20
−8
−6
−4
−2
0
2
4x 10
−3
δe
CXδe
−20 0 20
−4
−3
−2
−1
0
1
2
3
x 10−4
δf
CXδf
α = −4 α = 2 α = 6 α = 10 α = 15
Figura 2.4: Parametros del modelo de coeficiente CXS.
2.3. ESTIMACION DE PARAMETROS 37
0 5 10 15−0.585
−0.58
−0.575
α
CYβ
0 5 10 15
−0.25
−0.2
−0.15
−0.1
−0.05
α
CYp
0 5 10 15
0.439
0.44
0.441
0.442
0.443
0.444
0.445
0.446
α
CYr
−20 −10 0 10 20 30
−0.1
−0.05
0
0.05
0.1
δr
CYδr
Figura 2.5: Parametros del modelo de coeficiente CYS .
0 5 10 15
−0.14
−0.12
−0.1
α
Clβ
0 5 10 15−0.5
−0.45
−0.4
−0.35
−0.3
α
Clp
0 5 10 150.071
0.0715
0.072
α
Clr
−20 0 20
−0.05
0
0.05
δa
Clδa
−25 −20 −15 −10 −5 0 5 10 15 20 25
−0.01
−0.005
0
0.005
0.01
δr
Clδr
Figura 2.6: Parametros del modelo de coeficiente ClS .
38 CAPITULO 2. MODELO GENERAL DEL SISTEMA
0 5 10 15−0.25
−0.2
−0.15
−0.1
−0.05
0
α
Cmα
0 5 10 15−4.2
−4
−3.8
−3.6
−3.4
−3.2
−3
−2.8
α
Cmα
0 5 10 15−10
−9.5
−9
−8.5
α
Cmq
−20 0 20
−0.4
−0.3
−0.2
−0.1
0
0.1
0.2
0.3
δe
Cmδe
−20 0 20
−0.02
−0.015
−0.01
−0.005
0
0.005
0.01
0.015
δf
Cmδf
Figura 2.7: Parametros del modelo de coeficiente CmS.
0 5 10 15
0.196
0.198
0.2
0.202
α
Cnβ
0 5 10 15
−0.05
−0.04
−0.03
−0.02
α
Cnp
0 5 10 15
−0.24
−0.235
−0.23
−0.225
−0.22
α
Cnr
−20 −10 0 10 20 30
−0.05
0
0.05
α
Cnδr
−30 −20 −10 0 10 20 30−0.01
−0.005
0
0.005
0.01
δa
Cnδa
α = −4 α = 2 α = 6 α = 10 α = 15
Figura 2.8: Parametros del modelo de coeficiente CnS.
2.3. ESTIMACION DE PARAMETROS 39
2.3.2. Estimacion de parametros del modelo propulsivo
En esta seccion se va a proporcionar un modelo propulsivo para obtener tanto el coeficiente de
par como el de potencia de la helice del avion. Esto permitira, junto con el modelo aerodinamico
de la seccion anterior, disponer de un modelo completo del avion con el que se esta trabajando
en esta tesis.
A la hora de establecer un modelo de CT y CP para el sistema propulsor del avion, lo primero
que hay que tener en cuenta es la ausencia de metodos numericos fiables, o de bases de datos
experimentales para helices de paso fijo de aviones ligeros. Ası, como se puede ver en trabajos
como [Bail 78, Ol 08] en este tipo de helices el numero de Reynolds es sensiblemente distinto al
de las helices de aviones tripulados convencionales, de modo que no son directamente aplicables
los metodos tradicionales para estimar modelos propulsivos de helices, ya que se ha podido
constatar que en realidad se obtienen rendimientos considerablemente inferiores.
Por este motivo, para obtener un modelo propulsivo del avion, se ha acudido directamente a
ensayos en tunel de viento. Ası, se ha desarrollado una bancada de pruebas equipada con sensores
de par, empuje y revoluciones del motor (ademas de los sensores de tension e intensidad, para
contabilizar la potencia electrica demandada). Como se puede ver en la figura 2.9, el sistema se
instalo en el tunel aerodinamico, realizando medidas de empuje, par, revoluciones y velocidad
del tunel.
Figura 2.9: Bancada de la helice en el tunel de viento.
Los resultados obtenidos se muestran en las figuras 2.10 y 2.11, donde se proporcionan las
curvas del coeficiente de traccion CT y del coeficiente de potencia CP en funcion del parametro
de avance J .
40 CAPITULO 2. MODELO GENERAL DEL SISTEMA
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7−0.03
−0.02
−0.01
0
0.01
0.02
0.03
0.04
0.05
0.06
0.07
J
CT
MuestrasAjuste: C
T = 0.064249 −0.18991 J2
Figura 2.10: Coeficiente de traccion de la helice obtenido en ensayos en tunel de viento. Sepresentan tanto las muestras como el ajuste cuadratico propuesto para modelar el coeficientede traccion en funcion del parametro de avance.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7−0.02
−0.01
0
0.01
0.02
0.03
0.04
J
CP
MuestrasAjuste: C
P = 0.030204 +0.017233J +0.035504J2 −0.22081J3
Figura 2.11: Coeficiente de potencia de la helice obtenido en ensayos en tunel de viento. Sepresentan tanto las muestras como el ajuste cubico propuesto para modelar el coeficiente depotencia en funcion del parametro de avance.
2.3. ESTIMACION DE PARAMETROS 41
Se proponen ademas en estas figuras sendos modelos para obtener funciones explıcitas que
permitan obtener de forma analıtica la relacion entre CT y CP con el parametro de avance.
Para ello, se ha propuesto una funcion de ajuste cuadratica para el coeficiente de traccion
y otra funcion cubica para el de potencia, identificando los parametros de estas funciones
mediante mınimos cuadrados. Como se puede ver en las figuras, se obtiene un buen ajuste
del comportamiento real de la helice con estos modelos.
Pagina en blanco
42
Capıtulo 3
Diseno de Sistemas de Control de
Actitud
Los sistemas de control de actitud tienen una larga historia en aeronautica, estando hoy
dıa presentes en la mayorıa de los aviones comerciales actuales. El objetivo de estos sistemas
es alcanzar y mantener una cierta referencia (que se puede expresar mediante la velocidad
aerodinamica, el angulo de trayectoria y el angulo de balance) garantizando al mismo tiempo
la estabilidad de la aeronave y un buen comportamiento de la respuesta del vehıculo (evitando,
por ejemplo, aceleraciones excesivas). Para ello, disponen de la capacidad de actuar sobre las
deflexiones de las superficies aerodinamicas de control (timon de profundidad δe, alerones δa,
timon de direccion δr) y sobre el mando de motor (que en la figura se representa mediante
la variable δt). La figura 3.1 (en la que ~V es el vector velocidad aerodinamica, ~x es el vector
Sistemade controlde actitud
AVIÓN
Sensores ySistema deNavegación
Incertidumbres
Errores
Referencia
Figura 3.1: Entradas y salidas del sistema de control de actitud.
43
44 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
de posicion, y ~φ es un vector que contiene los angulos de actitud del vehıculo) representa el
diagrama de bloques generico de un sistema de control de actitud.
Observese que el sistema de control de actitud estara sujeto tanto a las incertidumbres pre-
sentes en el sistema como a los errores de navegacion. Puesto que estos ultimos no se pueden
eliminar, el sistema de guiado debe considerar la posicion, velocidad y actitud estimadas por
el sistema de navegacion como correctas. Si el sistema de navegacion esta bien disenado, los
errores seran pequenos y estaran acotados, por lo que no introduciran mucho error en el control
de actitud.
3.1. Revision del estado del arte
Teniendo en cuenta el creciente interes que estan despertando las aeronaves no tripuladas
(UAVs), puede entenderse que la investigacion sobre sistemas de control de vuelo haya sido un
campo bastante activo en los ultimos anos, por lo que se pueden encontrar en la literatura un
gran numero de trabajos relacionados con los sistemas de control de estos vehıculos.
Historicamente, los sistemas de control de vuelo que han aparecido con mayor frecuencia
en la literatura estan basados en modelos linealizados de las aeronaves en torno a distintos
puntos de operacion. Esto permite usar las bien conocidas tecnicas de control lineal, dando
lugar a distintos tipos de controladores segun la estrategia empleada (como PIDs, controladores
optimos, controladores robustos, etc). Este tipo de sistemas de control son los mas frecuentes
en las monografıas existentes sobre dinamica y control de aviones.
Por ejemplo, en las referencias [McRu 73, Rosk 95] pueden encontrarse capıtulos dedicados
al diseno de distintos controladores independientes (control de altitud, de velocidad, de rumbo,
etc) usando tecnicas clasicas de respuesta en frecuencia. En lugar de trabajar con la dinamica
completa del avion, la mayorıa de los controladores mostrados son monovariables, por lo que
resulta necesaria la identificacion de que variable de control es la mas adecuada para controlar
cada variable regulada. La gran ventaja de estos controladores es que resultan ser bastante sim-
ples (en la mayorıa de los casos se utilizan PIDs), permitiendo una facil implementacion.
En obras como [BL S 03, McLe 90], ademas de tratar las tecnicas clasicas de diseno de sis-
temas de control de vuelo, se abordan tecnicas mas modernas de sıntesis de controladores
(basadas en la realimentacion lineal del vector de estados), dando lugar a controladores mul-
tivariables. Ademas, se plantean otras tecnicas mas avanzadas; por ejemplo, en [BL S 03] se
aborda el problema del control robusto, mientras que en [McLe 90] se dan algunas nociones
sobre controladores adaptativos.
Todas estas tecnicas de control basadas en sistemas linealizados dan lugar a controladores
simples y faciles de implementar, pero tienen el grave inconveniente de que estan basados en un
punto de operacion concreto. De esta forma, cuando las condiciones de vuelo del avion cambian
3.1. REVISION DEL ESTADO DEL ARTE 45
respecto del punto de operacion de diseno, los controladores no tienen por que mantener las
especificaciones con las que fueron disenados, pudiendo incluso ser incapaces de estabilizar el
avion.
Para solucionar este problema, han aparecido tecnicas basadas en gain scheduling (planifica-
cion de ganancias). Los controladores basados en gain scheduling poseen parametros que varıan
en funcion de alguna o algunas variables representativas del punto de operacion de la aeronave.
De esta forma consiguen adaptarse a los distintos puntos de operacion en los que trabaje la
aeronave.
En la referencia [Rugh 00] se puede encontrar una revision bastante extensa de las aplicacio-
nes de gain scheduling a la industria aeronautica y automovilıstica. Puede comprobarse que
existen varias tecnicas que implementan esta idea. Entre ellas, una de las mas simples y mas
ampliamente usada consiste en disenar un procedimiento de interpolacion de distintos contro-
ladores disenados para distintos puntos de operacion. Ası, la aeronave tendrıa en la memoria
del computador de a bordo una baterıa de controladores que cubren una serie de puntos de
operacion representativos de la envolvente de vuelo del avion. En funcion del punto de ope-
racion en el que se encuentre en cada instante, un algoritmo de interpolacion permite generar
el controlador que mas se adecua a la situacion actual de vuelo. Por ejemplo, en [Nich 93] se
muestra el diseno de un sistema de control de actitud para misiles, usando cuatro controladores
robustos H∞ para distintos tipos de operacion.
Segun se comenta en [Rugh 00], los controladores basados en gain scheduling han sido amplia-
mente utilizados en los trabajos sobre control aplicado, ya que permiten generar controladores
simples y faciles de implementar. Sin embargo, existen algunos inconvenientes que hacen que
esta tecnica haya perdido popularidad entre los investigadores. Concretamente, una de las des-
ventajas consiste en que resulta complicado garantizar la estabilidad del sistema cuando el
estado se aleja de las trayectorias de equilibrio, o cuando el punto de operacion varıa demasiado
rapido. Hay que tener en cuenta que la aeronave es un sistema inherentemente no lineal, por lo
que cualquier controlador disenado bajo los metodos de control lineal clasico no podra garanti-
zar la estabilidad del sistema en bucle cerrado mas alla del entorno del punto de operacion de
diseno.
Para superar estas dificultades asociadas a la no linealidad de la dinamica del avion, existen
publicaciones cientıficas en las que pueden encontrarse otras estrategias de control. Por ejemplo,
existen estrategias de linealizacion por realimentacion (ver [Ochi 91, Adam 94]) que permiten
convertir en un sistema lineal las ecuaciones generales no lineales de un avion, haciendo uso
de un controlador no lineal. El sistema lineal resultante puede ser controlado con las tecnicas
de control clasicas, pudiendo garantizarse la estabilidad global. Sin embargo, esta tecnica tiene
algunos inconvenientes. Por ejemplo, debe tenerse un conocimiento bastante preciso del modelo
del avion, ya que los terminos no lineales se eliminan directamente a traves del controlador, lo
cual es imposible cuando se tienen incertidumbres en algunos terminos del modelo (por ejemplo
46 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
en las fuerzas y momentos aerodinamicos).
Otro aspecto perjudicial de la linealizacion por realimentacion es que se tiende a compensar
todos los terminos no lineales del modelo, sin discernir su caracter (estabilizante o desestabili-
zante). Esto puede dar lugar a leyes que hagan un uso intensivo y sin embargo innecesario de
las senales de control. Ademas, la cancelacion de terminos siempre se traduce en una perdida
de robustez del sistema, debido a las incertidumbres en el modelo.
Otra tecnica de control no lineal que puede encontrarse en aplicaciones aeroespaciales es
el backstepping [Krst 95a, Khal 02]. Esta estrategia se aplica en sistemas con estructuras en
cascada y puede combinarse con leyes de adaptacion que permitan estimar algunos parametros
desconocidos del modelo del sistema. El resultado es una ley de control general valida para
cualquier punto de operacion de la aeronave.
Un ejemplo de aplicacion de este metodo puede encontrarse en [Hark 03], donde se hace uso
de esta tecnica para disenar sistemas de control de vuelo tanto para la dinamica longitudinal
como para la dinamica lateral-direccional. El resultado un unico sistema de control de vuelo
valido para toda la envolvente de la aeronave, garantizandose a priori la estabilidad global. Sin
embargo, esta estrategia de control tiene algunos inconvenientes de cara a su implementacion
practica. Ası, se usan las velocidades angulares como senales de control, a traves de las cuales se
determinan las deflexiones necesarias de las superficies de control mediante tecnicas de control
allocation. Esto implica que se necesita un conocimiento perfecto del modelo aerodinamico del
avion, lo cual resulta muy difıcil de obtener.
Teniendo en cuenta dificultad de disponer de modelos aerodinamicos precisos, existen ex-
tensiones del backstepping que incorporan leyes de adaptacion de parametros, permitiendo
garantizar la estabilidad del sistema en presencia de incertidumbres parametricas. Estos me-
todos, conocidos como adaptive backstepping [Krst 95a, Farr 06] dan respuesta a gran parte
de la problematica existente en el diseno de sistemas de control de vuelo, ya que por un lado
son tecnicas que pueden lidiar con las no linealidades inherentes a la dinamica del avion, a la
vez que incorporan leyes de adaptacion para compensar las incertidumbres asociadas al modelo
aerodinamico del mismo.
Un ejemplo de aplicacion de adaptive backstepping al diseno de sistemas de control de vuelo
puede encontrarse en [Farr 05]. En este trabajo se modelan las fuerzas y momentos aerodina-
micos como funciones lineales de las variables de estado del avion, considerando desconocidos
los parametros de estas funciones. A partir de este modelo, se formula un controlador capaz de
llevar la velocidad aerodinamica, el angulo de trayectoria y el angulo de rumbo a unos valores
deseados, a la vez que una ley de adaptacion se encarga de estimar los parametros desconocidos.
Ademas, se introducen los llamados command filters, que permiten incorporar saturaciones y
limitaciones de velocidad de actuacion de las senales de control. El resultado es un controlador
adaptativo no lineal valido para toda la envolvente de vuelo. Sin embargo, debido a su formula-
cion multivariable, el controlador resultante es bastante complejo (de hecho no puede escribirse
3.1. REVISION DEL ESTADO DEL ARTE 47
de forma explıcita) y es de difıcil implementacion.
En [Sonn 07] puede encontrarse otro trabajo similar al anterior. En este caso se proponen
tecnicas de backstepping adaptativo, con command filters para incorporar las restricciones en
las senales de control, para un caza de empuje vectorial. La principal diferencia radica en el
modelo aerodinamico empleado, ya que en este caso no se propone un modelo lineal de las
variables de estado del avion, sino que las fuerzas y momentos aerodinamicos se calculan a
partir de redes neuronales, cuyos pesos son estimados por la ley de adaptacion. Al igual que en
el caso anterior, el controlador resultante tiene una formulacion compleja, que hace difıcil su
implementacion.
En esencia, estos command filters, introducidos en [Farr 03] son filtros disenados ad-hoc, cuyas
entradas son las senales de control (virtuales o reales) que se van obteniendo durante el proceso
de diseno en cascada asociado al backstepping, mientras que sus salidas son las propias senales
de control filtradas, ası como sus derivadas. Ademas de poder implementar limitaciones en las
magnitudes de las senales de control y en sus derivadas, la principal ventaja de estos filtros es
que proporcionan directamente las derivadas de las senales de control virtuales filtradas a lo
largo del proceso de diseno en cascada.
Por otra parte, hay que tener en cuenta que la demostracion de estabilidad formal del sistema
en presencia de command filters presenta algunos problemas. Ası, en [Farr 09] se demuestra
la estabilidad del sistema en presencia de command filters en el caso de sistemas sin parame-
tros desconocidos, mientras que en [Dong 12] se extiende esta demostracion a sistemas SISO
con parametros indeterminados. Sin embargo, todavıa no existe ningun resultado formal que
demuestre la estabilidad de un controlador adaptativo multivariable que haga uso de estos fil-
tros. No obstante, hay que decir que aunque no se tenga un resultado formal de estabilidad,
se trata de una tecnica que funciona bastante bien en la practica, pudiendo encontrarse nume-
rosos controladores aplicados a aeronaves que hacen uso de estos filtros con buenos resultados
experimentales [Farr 05, Sonn 07, Sonn 10, Cao 11].
Partiendo de estos antecedentes, el objetivo de este capıtulo sera desarrollar sistemas de
control de vuelo validos para toda la envolvente de vuelo del avion, que sean capaces estabili-
zar la aeronave con la mınima informacion posible sobre el modelo de la misma, y utilizando
solo informacion medible. Concretamente, la contribucion de esta disertacion (mostrada en
[Gavi 11a, Gavi 11b]) se va a centrar en la dinamica longitudinal. Ası, se van a buscar controla-
dores avanzados para la velocidad de vuelo y el angulo de trayectoria, ya que las ecuaciones del
movimiento que describen estas variables dependen fuertemente del punto de operacion de la
aeronave. Por otra parte, para completar el sistema de control de actitud, se emplearan tecnicas
clasicas para el control lateral-direccional, las cuales permiten obtener buenos resultados (este
controlador se detallara en el apendice B).
Se emplearan tecnicas de backstepping adaptativo para explotar la estructura en cascada del
sistema, a la vez que se usara informacion cualitativa sobre algunos parametros del modelo
48 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
aerodinamico del avion para dar lugar a una ley de adaptacion simple y facil de implementar.
El resultado seran leyes de control no lineales mucho mas simples que las descritas en referen-
cias anteriores, a la vez que permiten estabilizar el sistema sin necesidad de conocer ningun
parametro del mismo.
Entrando en la estructura del capıtulo, en el la seccion 3.2 se va a exponer el modelo longitu-
dinal del avion usado en el desarrollo del controlador de velocidad y de angulo de trayectoria.
Seguidamente, en la seccion 3.3 se tratara la formulacion del control de velocidad, mientras que
el controlador de angulo de trayectoria se tratara en la seccion 3.4. Se finalizara el capıtulo con
la seccion 3.5 donde se mostraran los resultados obtenidos en simulacion.
3.2. Modelo de la dinamica longitudinal del avion
En primer lugar se van a formular las ecuaciones del movimiento de la dinamica longitudinal,
a partir de las cuales se realizara el diseno de los sistemas de control de velocidad aerodinamica
y de angulo de trayectoria. Las variables de estado que se van a considerar en este problema son
la velocidad aerodinamica Va, el angulo de trayectoria γ, el angulo de cabeceo θ y la velocidad
angular de cabeceo q. Como senales de control, se van a usar la fuerza propulsiva FT1 y la
deflexion del timon de profundidad δe.
Como hipotesis de partida, se supone que la aeronave mantiene en todo momento un vuelo
simetrico, esto es, se considera que el velocidad aerodinamica esta en el plano de simetrıa del
avion y que no existen fuerzas aerodinamicas laterales en el mismo. Esta hipotesis se justifica
teniendo en cuenta que la aeronave dispone de un regulador de angulo de resbalamiento (β)
para mantenerlo a cero (el cual se ha descrito en el apendice B).
El sistema de ecuaciones diferenciales que modela la dinamica longitudinal del avion puede
obtenerse a partir de los modelos generales establecidos en el capıtulo 2. Concretamente, te-
niendo en cuenta la hipotesis de vuelo simetrico, puede construirse el modelo longitudinal a
partir de las ecuaciones (2.24), (2.29), (2.52) y (2.54), dando lugar a
Va =1
m(−D + FT cosα−mg sin γ) , (3.1)
γ =1
mVa(L cosφ+ FT sinα cosφ−mg cos γ) , (3.2)
θ = q cosφ− r sin φ, (3.3)
q =M(δe)
Iy+Iz − IxIy
pr − IxzIy
(
p2 − r2)
, (3.4)
donde m, Ix, Iy, Iz, Ixy son respectivamente la masa y los momentos de inercia de la aeronave;
α es el angulo de ataque, φ es el angulo de balance, p y r las componentes x y z de la veloci-
1Posteriormente se propondra una version del controlador de velocidad en la que se sustituye el empuje comosenal de control por las revoluciones de giro de la helice
3.2. MODELO DE LA DINAMICA LONGITUDINAL DEL AVION 49
dad angular en ejes cuerpo (ver capıtulo 2), mientras que L, D y M(δe) son respectivamente
la sustentacion, resistencia y momento de cabeceo (que depende del angulo de deflexion del
timon de profundidad, entre otras variables). Notese ademas que debido a la condicion de vuelo
simetrico, se ha sustituido el angulo de alabeo µ por el de balance φ, ya que ambos coinciden
si el resbalamiento es nulo.
Hay que tener en cuenta que φ, p y r son variables de la dinamica lateral-direccional, por lo
que aquı se consideraran unicamente como parametros medibles.
Ademas, de las ecuaciones (3.1)–(3.4), para cerrar el problema es necesario proporcionar una
relacion entre el angulo de ataque y las variables de estado longitudinales. De forma general
puede escribirse (ver [BL S 03])
sin γ = cosα cos β sin θ − (sinφ sin β + cos φ sinα cos β) cos θ, (3.5)
expresion que puede simplificarse si se introduce la hipotesis de vuelo simetrico (β = 0)
sin γ = cosα sin θ − cos φ sinα cos θ. (3.6)
Notese que de la ecuacion anterior, para el caso de vuelo en el plano vertical (φ = 0) puede
deducirse la conocida expresion γ = θ − α.
A modo de ilustracion, en la figura 3.2 puede verse un esquema con la definicion de las fuerzas,
momentos y velocidades en el plano longitudinal, para el caso φ = 0.
Figura 3.2: Fuerzas, momentos y angulos en el problema longitudinal (φ = 0).
En lugar de trabajar con fuerzas y momentos aerodinamicos directamente, es conveniente
introducir sus correspondientes coeficientes adimensionales, esto es
L =1
2ρV 2
a SCL, D =1
2ρV 2
a SCD, M =1
2ρV 2
a ScCm(δe), (3.7)
donde ρ es la densidad del aire, S es la superficie alar de referencia del avion, c es la cuerda
media, y CL, CD y Cm(δe) son respectivamente los coeficientes de sustentacion, resistencia y
momento de cabeceo. Ademas, como es usual en Mecanica del Vuelo (ver referencias [Pama 98,
50 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
Loui 98, Phil 09]), se va a considerar el siguiente modelo de coeficientes de resistencia y momento
aerodinamico
CD = CD0+ k1CL + k2C
2L, (3.8)
Cm(δe) = Cm0+ Cmαα + Cmqq + Cmδe
δe, (3.9)
donde CD0, k1, k2, Cm0
, Cmα , Cmq y Cmδeson coeficientes aerodinamicos del avion, que seran
considerados parametros desconocidos en este trabajo. De este modo, sera necesario disenar le-
yes de adaptacion que permitan estimar los valores de estos parametros e incluir las estimaciones
en las leyes de control.
Sin embargo, que estos parametros se consideren desconocidos no quiere decir que no se
disponga de ninguna informacion sobre ellos. Concretamente, el parametro Cmδe, conocido como
potencia de control longitudinal, tiene un signo bien definido, ya que por diseno del avion, una
deflexion positiva del timon de profundidad implica un momento de picado (esto es, negativo).
Por tanto, aunque se suponga desconocido el valor de Cmδe, se considerara en todo momento
que tiene signo negativo: Cmδe< 0.
Por otra parte, tratando ahora el modelo de coeficiente de sustentacion, se va a establecer la
siguiente suposicion:
Suposicion 3.2.1 Se considera que el coeficiente de sustentacion CL es unicamente una fun-
cion del angulo de ataque α. Ademas, el eje de referencia xB (ver figura 3.2) se escogera de tal
manera que CL(0) = 0, esto es, xB sera paralelo a la lınea de sustentacion nula del avion. Esto
implica que se satisface la propiedad α · CL(α) ≥ 0 en todo el rango de operacion normal de la
aeronave.
Es de remarcar que esta sera la unica informacion sobre el coeficiente de sustentacion nece-
saria para la formulacion del sistema de control longitudinal. Esto supone ventaja sobre otros
controladores existentes en la literatura, que necesitan imponer un modelo de sustentacion, e
incorporar una ley de adaptacion para estimar los parametros desconocidos de este modelo. A
diferencia de estas aproximaciones existentes, aquı solo se hace uso de una propiedad sobra-
damente conocida en aerodinamica (esto es, unicamente se esta suponiendo que la curva de
sustentacion de un avion esta en el primer y en el cuarto cuadrante, sin importar su forma
concreta). Para constatar esto, pueden consultarse referencias como [Abot 59] donde se puede
encontrar un compendio de curvas de sustentacion para distintos perfiles y alas.
Con todo esto, el objetivo de este capıtulo sera disenar leyes de control que permitan al avion
seguir referencias en velocidad y angulo de trayectoria (Vr, γref), haciendo uso del empuje y de
la deflexion del timon de profundidad como senales de control. Ademas, estas leyes no deberan
depender de ninguna informacion del modelo del avion mas alla de lo considerado en parrafos
anteriores.
Como se menciono en la introduccion, se disenaran dos controladores separadamente: uno
3.3. CONTROLADOR DE VELOCIDAD AERODINAMICA 51
para la velocidad aerodinamica (cuya dinamica viene dada por la ecuacion (3.1)) haciendo uso
del empuje del motor; y otro para el angulo de trayectoria (ecuaciones (3.2)–(3.4)), usando las
deflexiones del timon de profundidad. El desarrollo de estos controladores se mostrara en las
secciones 3.3 y 3.4, respectivamente.
3.3. Controlador de velocidad aerodinamica
La velocidad aerodinamica esta gobernada por la ecuacion (3.1), en la que se puede sustituir
el modelo de resistencia D de la ecuacion (3.7), dando lugar a
Va =1
m
(
−1
2ρV 2
a SCD + FT cosα−mg sin γ
)
, (3.10)
donde se considerara que α y γ son magnitudes medibles, y que FT es la senal de control del
problema. Ademas, se usara el modelo de resistencia
CD = CD0+ k1α+ k2α
2, (3.11)
donde CD0, k1 y k2 son parametros desconocidos. Denotando Vr a la velocidad de referencia, y
considerando el error en velocidad como zV := Va − Vr, se puede escribir la dinamica del error
de seguimiento de la siguiente forma
zV = − 1
2mρ (zV + Vr)
2 SϕV (α)T · θV + FT
cosα
m− g sin γ − Vr
= −β1(
z2V + V 2r + 2zV Vr
)
ϕV (α)T · θV + FT
cosα
m− g sin γ − Vr, (3.12)
donde se ha definido
ϕV (α) :=[
1 α α2]T, θV := [CD0
k1 k2]T, β1 :=
ρS
2m, (3.13)
siendo θV un vector de parametros desconocidos, mientras que ϕV se define usando la ecuacion
(3.11) de la forma CD = ϕV (α)T · θV > 0. Ademas, hay que tener en cuenta que por definicion
se tiene que β1 > 0.
Por tanto, el problema de control de velocidad se traduce en calcular la ley de FT , que permita
hacer estable el origen del sistema (3.12), en presencia de parametros desconocidos asociados al
coeficiente de resistencia del avion. En este sentido, en [Gavi 11a] se propuso una ley de control
con este proposito, la cual se resume en el siguiente parrafo:
Ley de control 1
Considerando el problema de control de velocidad aerodinamica descrito por sistema (3.12) y
siendo θV una estimacion de θV definido en (3.13), se puede definir la siguiente ley de control
52 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
adaptativa
FT =m
cosα
(
g sin γ + Vr + β1(z2V + V 2
r )ϕV (α)T · θV − κV1zV
)
, (3.14)
˙θV = −β1
(
z3V + zV V2r
)
ΓV ϕV (α), (3.15)
la cual garantiza que zV y θV permanecen globalmente acotadas, a la vez que zV converge a
cero.
Para demostrar la estabilidad del sistema (3.12) en presencia de esta ley de control, se va a
definir la siguiente funcion de Lyapunov
WV =1
2z2V +
1
2θT
VΓV−1θV , (3.16)
donde θV := θV − θV es el vector de error de estimacion y ΓV = ΓVT > 0 es la matriz de
ganancias de la ley de adaptacion. De este modo, la derivada temporal de (3.16) a lo largo de
las trayectorias de (3.12) puede escribirse de la siguiente forma
WV = zV
(
−β1(
z2V + V 2r + 2zV Vr
)
ϕV (α)T · θV + FT
cosα
m− g sin γ − Vr
)
+ θT
VΓV−1 ˙θV
= −2β1VrϕV (α)T · θV z2V − κV1z
2V − β1zV (z
2V + V 2
r )ϕV (α)T · θV + θ
T
VΓV−1 ˙θV
= −2β1VrϕV (α)T · θV z2V − κV1z
2V + θ
T
V
(
ΓV−1 ˙θV − β1zV (z
2V + V 2
r )ϕV (α))
, (3.17)
donde se ha sustituido FT por (3.14). Ademas, por definicion el primer y el segundo termino de
(3.17) son negativos, mientras que el ultimo termino se cancela mediante la ley de adaptacion
(3.15), teniendo en cuenta que˙θV = − ˙
θV .
Por tanto, al ser WV positivo definido, radialmente no acotado, y WV ≤ 0, puede concluirse
mediante el teorema de LaSalle-Yoshizawa que zV y θV estan globalmente acotados y que zV
converge a cero.
Es de resenar que aunque el controlador que se acaba de describir cumple los objetivos pro-
puestos, todavıa puede obtenerse a partir de el una version mas simplificada. Ası, teniendo en
cuenta que la velocidad aerodinamica Va es siempre positiva, puede obtenerse una version mas
simple tanto de la ley de control como de la ley de adaptacion, si se hace uso de esta propiedad
para eliminar los terminos cuadraticos y cubicos de la ley de control y adaptacion anterior. Esto
se puede resumir en el siguiente parrafo:
Ley de control 2
Considerando el sistema (3.12) y siendo θV una estimacion de θV definido en (3.13). Conside-
rando ademas que la velocidad aerodinamica del avion Va siempre tiene signo positivo, se puede
llegar a una ley de control adaptativa simplificada, definida por
FT =m
cosα
(
g sin γ + Vr + β1V2r ϕ(α)T · θV − κV1zV
)
, (3.18)
3.3. CONTROLADOR DE VELOCIDAD AERODINAMICA 53
˙θV = −β1zV V 2
r ΓV ϕV (α), (3.19)
que garantiza que zV y θV permanecen globalmente acotadas, a la vez que zV converge a cero.
La demostracion de la estabilidad del sistema parte de la misma funcion de Lyapunov que en
el caso anterior, esto es
WV =1
2z2V +
1
2θT
VΓV−1θV , (3.20)
donde de nuevo θV := θV − θV es el error de estimacion y ΓV = ΓVT > 0 es la matriz de
ganancias de la ley de adaptacion. La derivada temporal de (3.20) a lo largo de las trayectorias
de (3.12) queda ahora
WV = zV
(
−β1 (zV + Vr)2ϕV (α)
T · θV + FTcosα
m− g sin γ − Vr
)
+ θT
VΓV−1 ˙θV
= −β12z2V VrϕV (α)T · θV − zV β1z
2VϕV (α)
T · θV−zV
(
β1V2r ϕV (α)
T · θV − FTcosα
m+ g sin γ + Vr
)
− θT
VΓV−1 ˙θV . (3.21)
Considerando que la velocidad aerodinamica siempre es positiva, se puede ver que el error en
velocidad zV = Va−Vr satisface: zV ≥ −Vr, o lo que es lo mismo −zV ≤ Vr. Teniendo en cuenta
ademas la definicion del coeficiente de resistencia CD = ϕV (α)T · θV ≥ 0, se puede acotar el
segundo termino de W de la forma
−zV β1z2VϕV (α)T · θV ≤ β1z
2V VrϕV (α)
T · θV . (3.22)
De este modo, la derivada temporal de la funcion de Lyapunov queda
WV ≤ −β1z2V VrϕV (α)T · θV − zV
(
β1V2r ϕV (α)
T · θV − FTcosα
m+ g sin γ + Vr
)
−θT
VΓV−1 ˙θV . (3.23)
Incorporando ahora la ley de control y de adaptacion (3.18)–(3.19) se puede ver que
WV ≤ −β1z2V VrϕV (α)T · θV − κV1z
2V ≤ 0. (3.24)
Por tanto, puede concluirse que zV y θV permanecen globalmente acotadas, a la vez que zV
converge a cero.
Como se puede ver, tanto el controlador 1 como 2 permiten controlar la velocidad aerodinami-
ca del avion en cualquier punto de operacion (con una unica ley), y sin necesidad de conocer los
parametros del coeficiente de resistencia aerodinamica, lo cual responde a los objetivos plantea-
dos inicialmente. Sin embargo, hay que tener presente que para su diseno se han hecho algunas
hipotesis sobre la senal de control del problema que merecen un estudio mas detallado.
Uno de los aspectos que no se ha tenido en cuenta es la posible presencia de saturaciones en
54 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
el empuje. Ası, en la demostracion de la estabilidad del sistema en bucle cerrado se ha supuesto
que en todo momento el valor de la senal de control FT viene dado por la ecuacion de la ley
de control (ya sea (3.14) o (3.18)), las cuales no tienen presente las posibles saturaciones que
puedan ocurrir. Esta hipotesis se va a eliminar en la seccion 3.3.1 donde se va a analizar la
estabilidad del sistema en presencia de saturaciones de la senal de control.
Por otra parte, como suele ser habitual en muchos trabajos existentes [Farr 05, Sonn 09], se
ha tomado el empuje del avion como una senal de control del sistema, considerando que el avion
puede generar cualquier valor de empuje deseado (dentro de los lımites del sistema propulsor).
Sin embargo, hay que tener presente que la senal de control real del avion es la posicion de
palanca del motor (o en este caso, la senal PWM que se envıa al controlador electronico de
velocidad del motor), de manera que esta hipotesis implica que se dispone de un modelo de
empuje que permite relacionar la posicion de palanca con la fuerza propulsiva generada, o bien,
que se dispone de un controlador de bajo nivel que permite alcanzar las consignas de empuje
demandadas por el controlador de velocidad.
Para eliminar estas hipotesis, en la seccion 3.3.2 se va a incorporar el modelo del sistema
propulsor a la estructura de control adaptativo. Para ello, se va a tener en cuenta que el avion
con el que se esta trabajando dispone de un sistema propulsor compuesto por una helice de paso
fijo accionada por un motor electrico. Ademas, el controlador electronico de velocidad asociado
al motor dispone de un regulador interno de revoluciones de giro, estableciendo una relacion
lineal entre revoluciones y posicion de palanca de motor. Esto permite usar las revoluciones
de giro de la helice (Ω) como senal de control de bajo nivel, sin mas que incluir el modelo de
empuje de la helice en la ecuacion (3.1).
3.3.1. Controlador de velocidad con saturaciones en el empuje
En la formulacion original del sistema de control de velocidad se asumio que la fuerza propul-
siva coincide siempre con el valor comandado por la ley de control. Sin embargo, hay que tener
en cuenta que las limitaciones fısicas del sistema propulsor impiden que el empuje real salga
del intervalo [0, FT ], donde FT denota el empuje maximo posible.
A continuacion se va a analizar que ocurre si la ley de control demanda un empuje fuera
de este intervalo. Dicho analisis partira de (3.23), considerando por separado las dos posibles
saturaciones.
Hipotesis inicial: Se va a considerar que la condicion de vuelo de referencia, dada por (γ, Vr),
puede ser ejecutada por la aeronave, teniendo en cuenta sus limitaciones fısicas. Matematica-
mente, esto se traduce en asumir que el valor del empuje que equilibra la ecuacion (3.12) es
alcanzable. Ası, el valor de FT resultante de
0 = −β1V 2r ϕV (α)
T · θV + FTcosα
m− g sin γ − Vr, (3.25)
3.3. CONTROLADOR DE VELOCIDAD AERODINAMICA 55
debe estar dentro de las limitaciones fısicas del motor, o lo que es lo mismo
β1V2r ϕV (α)
T · θV + g sin γ + Vr ∈[
0, FTcosα
m
]
. (3.26)
La expresion se puede traducir en las siguientes desigualdades
β1V2r ϕV (α)
T · θV + g sin γ + Vr ≥ 0, (3.27)
β1V2r ϕV (α)
T · θV + g sin γ + Vr ≤ FTcosα
m. (3.28)
A continuacion se va a estudiar el comportamiento del sistema en el caso en el que la ley de
control (3.18) provoque saturaciones.
Caso 1. FT = FT
Considerando el caso en el que la ley de control satura en el valor maximo de empuje, la
ecuacion (3.18) se traduce en
g sin γ + Vr + β1V2r ϕ(α)
T · θV − κV1zV ≥ FTcosα
m, (3.29)
por lo que
β1V2r ϕ(α)T · θV − FT
cosα
m+ g sin γ + Vr ≥ κV1zV . (3.30)
Por otra parte, considerando el comportamiento real del avion, hay que tener en cuenta que el
empuje aplicado sera el maximo, en lugar del demandado por la ley de control. Ası, sustituyendo
FT = FT en (3.23) se obtiene
WV ≤ −β1z2V VrϕV (α)T · θV − zV
(
β1V2r ϕV (α)
T · θV − FTcosα
m+ g sin γ + Vr
)
−θT
VΓV−1 ˙θV , (3.31)
donde se puede ver que(
β1V2r ϕV (α)
T · θV − FTcosαm
+ g sin γ + Vr
)
≤ 0 por la hipotesis ini-
cial.
Para analizar la estabilidad del sistema, es necesario considerar dos subcasos:
1. zV ≥ 0. En este caso se puede usar la ley de adaptacion original, dada por la ecuacion (3.15).
De esta forma, se tiene
WV ≤ −β1z2V VrϕV (α)T · θV − zV
(
β1V2r ϕV (α)
T · θV − FTcosα
m+ g sin γ + Vr
)
, (3.32)
y aplicando la cota (3.30) junto con que zV es positivo, se obtiene
WV ≤ −β1z2V VrϕV (α)T · θV − κV1z
2V . (3.33)
56 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
2. zV ≤ 0. En este caso, se propone detener por completo la ley de adaptacion. Ası, la derivada
temporal de la funcion de Lyapunov queda
WV ≤ −β1z2V VrϕV (α)T · θV − zV
(
β1V2r ϕV (α)
T · θV − FTcosα
m+ g sin γ + Vr
)
≤ −β1z2V VrϕV (α)T · θV , (3.34)
donde se ha tenido en cuenta que la hipotesis (3.28) implica que(
β1V2r ϕV (α)
T · θV − FTcosαm
+ g sin γ + Vr
)
≤ 0. Con estas consideraciones, se tiene que
WV es definida negativa en todos los casos estudiados.
La modificacion de la ley de adaptacion considerada aquı (con la subdivision en los dos
subcasos) tiene un sentido fısico que merece la pena comentar. Ası, analizando las condiciones
para que el sistema entre en saturacion superior (FT = FT ) a traves de la ley de control (3.18),
se puede ver que esta saturacion puede venir dada por dos condiciones:
1. Si se produce un aumento brusco en la velocidad de referencia, lo que implicarıa que zV =
Va − Vr serıa negativa); y la ganancia κV1 es suficientemente grande, el ultimo termino de la
ley de control puede crecer considerablemente llevando el sistema a saturacion (notese que
este es el subcaso 2). En esta situacion, la aeronave acelerarıa menos de lo que lo harıa si
se pudiese obtener el empuje demandado por la ley de control, lo cual harıa que la ley de
adaptacion interpretara que se esta produciendo un aumento en la resistencia aerodinamica
que justifica esa menor aceleracion.
Por consiguiente, la estrategia planteada aquı es parar la adaptacion si se llega a este caso. Ası,
no se falsea la estimacion de la resistencia aerodinamica debido a los efectos de la saturacion
del empuje.
2. Al hilo del caso anterior, si no se para la ley de adaptacion durante la saturacion, el coeficiente
de resistencia estimado crecerıa considerablemente, de forma que cuando la velocidad llegue a
su valor de referencia (y por tanto zV se haga positivo), se tendrıa un coeficiente de resistencia
estimado artificialmente alto. Esto podrıa propiciar que el sistema permaneciera en saturacion
superior incluso despues de haber superado la referencia (zV > 0), debido a que el penultimo
termino de (3.18) podrıa ser dominante.
Para evitar que se produzca este problema, el metodo propuesto aquı no detiene la ley de
adaptacion si se cumple zV > 0. De esta forma la ley (3.19) provoca una disminucion en la
resistencia estimada, haciendo que esta vuelva a los valores correctos.
Caso 2. FT = 0
Una vez mostrado el analisis para el caso en el que FT = FT , puede pensarse en encontrar
una solucion simetrica aplicable en el caso en el que se produzca la saturacion FT = 0.
Partiendo del mismo razonamiento que se hizo anteriormente, se tienen las siguientes desigual-
3.3. CONTROLADOR DE VELOCIDAD AERODINAMICA 57
dades
g sin γ + Vr + β1V2r ϕ(α)
T · θV − κV1zV ≤ 0, (3.35)
β1V2r ϕV (α)
T · θV + g sin γ + Vr ≥ 0, (3.36)
donde la primera de ellas viene dada por la saturacion inferior del empuje, mientras que la
segunda se deriva de la hipotesis que establece que (Vr, γ) son valores alcanzables con un empuje
FT dentro de sus lımites. Ademas hay que tener en cuenta que la derivada de la funcion de
Lyapunov esta acotada por
WV ≤ −β1z2V VrϕV (α)T · θV − zV
(
β1V2r ϕV (α)
T · θV + g sin γ + Vr
)
− θT
VΓV−1θV . (3.37)
De nuevo se va a dividir el analisis en dos subcasos:
1. zV ≤ 0. Si se da esta condicion, se usa la ley de adaptacion original, dada por (3.19). De esta
manera, se tiene
WV ≤ −β1z2V VrϕV (α)T · θV − zV
(
β1V2r ϕV (α)
T · θV + g sin γ + Vr
)
. (3.38)
Aplicando la cota (3.35) y teniendo en cuenta que −zV es positivo, se puede escribir
WV ≤ −β1z2V VrϕV (α)T · θV − κV1z
2V . (3.39)
2. zV ≥ 0. En este caso, se propone parar la ley de adaptacion, de manera que la derivada de
la funcion de Lyapunov viene dada por
WV ≤ −β1z2V VrϕV (α)T · θV − zV
(
β1V2r ϕV (α)
T · θV + g sin γ + Vr
)
≤ −β1z2V VrϕV (α)T · θV , (3.40)
donde se ha usado (3.36) y −zV ≤ 0.
De este modo, al igual que en el caso anterior, se puede concluir que WV es semidefinida
negativa en ambas situaciones.
Por ultimo se van a resumir las modificaciones hechas la ley de adaptacion para incorporar el
efecto de las saturaciones en el empuje en la siguiente ley de control
Ley de control 3
Considerando el problema de control de velocidad descrito por el sistema (3.12), y teniendo
en cuenta que la senal de control FT presenta saturaciones del tipo FT ∈ [0, FT ], en base a lo
expuesto en esta seccion, se puede escribir la siguiente ley de control y adaptacion
FT =m
cosα
(
g sin γ + Vr + β1V2r ϕ(α)
T · θV − κV1zV
)
, (3.41)
58 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
˙θV =
0 si FT ≤ 0 y zV ≥ 0,
0 si FT ≥ FT y zV ≤ 0,
−β1zV V 2r ΓV ϕV (α) en otros casos,
(3.42)
con la cual zV tiende a cero (o lo que es lo mismo, Va tiende a Vr), a la vez que el vector de
parametros estimados θV permanece acotado.
3.3.2. Incorporacion del modelo de motor en el controlador de ve-
locidad
En esta seccion se va a proponer una evolucion del controlador de velocidad mostrado ante-
riormente, con el fin de usar como senal de control las revoluciones de giro de la helice, en lugar
de la fuerza propulsiva.
Como se ha comentado antes, la aeronave con la que se esta trabajando en esta tesis dispone
de un sistema propulsor compuesto por una helice de paso fijo accionada por un motor electri-
co. Ademas, dicho motor esta gobernado por un controlador electronico de velocidad (conocido
como ESC, por sus siglas en ingles), que recibe la senal de control del piloto (δt), y gestiona la
potencia electrica que envıa al motor en funcion del modo de funcionamiento que tenga progra-
mado (tengase en cuenta que el ESC dispone de un microprocesador interno que implementa
bucles de control de bajo nivel). Concretamente, se ha configurado el controlador electronico
de velocidad de modo que se establezca una relacion lineal entre la senal PWM enviada por el
piloto y las revoluciones alcanzadas por el motor (Ω). Esto permite considerar a Ω como una
verdadera senal de control.
Esto implica una mejora respecto de los controladores descritos anteriormente, ası como res-
pecto de muchos sistemas de control para UAVs que se pueden encontrar en la literatura en los
que tambien se usa el empuje como senal de control. Como se puede ver en la seccion 2.2 el
empuje de un avion depende de la velocidad de vuelo, de la altitud y de la palanca de mando del
piloto (entre otros factores). De este modo, usar el empuje para controlar la velocidad requeri-
rıa o bien disponer de un modelo “perfecto” del motor, o de un controlador de bajo nivel para
mantener el valor deseado de la fuerza propulsiva ante cambios en algunas variables de estado
como la velocidad o la altitud de vuelo. Estos inconvenientes se eliminan con la aproximacion
que se va a describir en esta seccion, al incorporar el modelo de empuje del motor dentro de la
formulacion del controlador.
Para introducir las revoluciones del motor en la ecuacion que rige la dinamica de la velocidad,
es necesario definir un modelo de empuje. Como se ha mostrado en la seccion 2.2, se puede
considerar que el empuje generado por una helice de paso fijo viene dado por
~FT =4
π2ρR4Ω2CT (J), (3.43)
3.3. CONTROLADOR DE VELOCIDAD AERODINAMICA 59
donde CT (J) es el coeficiente de empuje, el cual depende del parametro de avance de la helice
J =πu
ΩR, siendo u la velocidad segun el eje xB y R el radio de giro de la helice. Ademas,
considerando pequenos angulos de ataque y resbalamiento, se puede realizar la aproximacion
u ≈ Va, de modo que el parametro de avance quedarıa J =πVaΩR
.
El problema esta en definir la forma funcional del coeficiente de traccion de la helice en
funcion del parametro de avance. En la seccion 2.3 se mostraron los resultados de los ensayos
de identificacion del modelo propulsivo del avion, realizado en un tunel de viento. A partir de
ellos, se puede ver que resulta bastante adecuado modelar el coeficiente de traccion como una
funcion parabolica del parametro de avance. En la figura 3.3 se muestra de nuevo este ajuste
parabolico, junto con los puntos obtenidos en la campana de ensayos en tunel de viento.
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7−0.03
−0.02
−0.01
0
0.01
0.02
0.03
0.04
0.05
0.06
0.07
J
CT
MuestrasAjuste: C
T = 0.064249 −0.18991 J2
Figura 3.3: Coeficiente de traccion de la helice
Incorporando este modelo de CT , se va a definir la fuerza propulsiva del avion como
FT = πρΩ2R4(
CT0 − CT2J2)
. (3.44)
Ademas, aunque CT0 y CT2 han sido medidos en tunel aerodinamico, se va a considerar que
son parametros desconocidos (con valor constante). De esta forma se conseguira un controlador
valido para cualquier helice de paso fijo.
Una vez establecido el modelo propulsivo, se puede reescribir la ecuacion dinamica de velocidad
de la siguiente forma
Va = − 1
2mρV 2
a SCD +1
mπρΩ2R4CT (J) cosα− g sin γ, (3.45)
60 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
donde de nuevo α y γ son variables medibles, mientras que la senal de control sera ahora Ω2.
Considerando (3.8) y el modelo de CT de la figura 3.3, se tienen los siguientes modelos de
coeficiente de resistencia y de empuje
CD = CD0+ k1α + k2α
2, (3.46)
CT = CT0 − CT2
(
Va4πΩR
)2
, (3.47)
donde CD0, k1, k2, CT0 y CT2 son parametros desconocidos. Al igual que en las secciones ante-
riores, Vr denota la velocidad aerodinamica de referencia, al mismo tiempo que se introduce la
variable de error zV := Va−Vr. Con todo esto, la ecuacion de la dinamica del error queda
zV = − (zV + Vr)2ϕV (α)
T · θV + C ′T0cosαΩ2 − p, (3.48)
habiendose definido
ϕV (α) :=[
1 α α2 cosα]T,
θV :=
[
ρSCD0
2m
ρSk12m
ρSk22m
ρR2CT216πm
]T
,
p := g sin γ + Vr, (3.49)
C ′T0
:=πρR4CT0
m, (3.50)
donde θV ∈ R4 es el vector de parametros desconocidos.
Con todo esto, el problema de control de velocidad consiste en hacer el origen de (3.48) estable,
usando como senal de control las revoluciones de giro del motor. Ademas, se van a considerar
las siguientes hipotesis:
C1. Vr es una referencia dada.
C2. θV es un vector constante de parametros desconocidos.
C3. C ′T0
es un parametro desconocido cuyo signo es positivo. Por razones practicas, se considerara
que existe una cota inferior conocida para este parametro C ′T0,min
> 0.
C4. Se van a tener en cuenta saturaciones en la senal de control y en su derivada.
C5. cosα tendra siempre signo positivo, ya que por limitaciones aerodinamicas, el avion solo
puede operar a pequenos angulos de ataque.
Para abordar este problema de control, se va disenar un controlador no lineal adaptativo que
permita estimar los parametros desconocidos; junto con un command filter que permita incluir
en el problema saturaciones en las senales de control y en sus derivadas (ver [Farr 03]).
El command filter se va a formular como un sistema de segundo orden estable, cuya entrada es
la senal de control generada por el controlador no lineal de velocidad, mientras que su salida es
la senal de control real que habrıa que comandar a la aeronave, la cual satisface sus limitaciones
3.3. CONTROLADOR DE VELOCIDAD AERODINAMICA 61
en magnitud y derivada gracias al diseno del filtro.
Formalmente, este filtro se puede escribir como
[
q1
q2
]
=
q2
2ξωn
(
SΩu
Ωl
(
ω2n
2ξωn
[√
SΩ2
u
Ω2l
(Ω2v)− q1
])
− q2
)
,
[
Ω
Ω
]
=
[
q1
q2
]
, (3.51)
donde ωn y ξ son la frecuencia natural y el amortiguamiento del filtro (los cuales deben ser
adecuadamente seleccionados para obtener un ancho de banda apropiado), Ω2v es la senal de
control virtual calculada por la ley de control de velocidad (la cual no tiene por que satisfacer
ninguna limitacion fısica del motor), Ω es la senal de control real enviada al ESC (la cual ahora
sı tiene en cuenta las limitaciones impuestas), Ωu y Ωl son los lımites superior e inferior de las
revoluciones de la helice, Ωu y Ωl son los lımites superior e inferior de la tasa de cambio de
dichas revoluciones, y Sxuxl (x) es un operador de saturacion, que se puede definir de la siguiente
forma
Sxuxl (x) =
xu si x ≥ xu,
x si xu > x ≥ xl,
xl si x < xl.
(3.52)
Al introducir el filtro (3.51) en el sistema, la senal de control Ω enviada al ESC satisfara
siempre sus restricciones, independientemente del valor de Ω2v calculado por la ley de control
de velocidad. Ası, es necesario incluir el posible error entre ambas senales de control en la
formulacion del problema, con el fin de mantener la estabilidad. De este modo, se va a introducir
la siguiente variable de error compensada
zV = zV − χ, (3.53)
donde χ es otra variable de estado introducida para contabilizar los efectos de las restricciones
de la senal de control (esto es, las diferencias entre Ω2 y Ω2v) en el sistema. De esta manera, se
definira la dinamica de χ de la siguiente manera
χ = −κV χ+ C ′T0 cosα
(
Ω2 − Ω2v
)
, (3.54)
siendo C ′T0
una estimacion del parametro desconocido C ′T0, mientras que κV es una constante
cuyo valor se seleccionara posteriormente.
De este modo, usando (3.53), (3.48) y (3.54), la dinamica de zV se puede escribir de la
forma
˙zV = − (zV + Vr)2ϕV (α)
T · θV − p+ C ′T0cosαΩ2 + kχ+ C ′
T0cosα Ω2
v, (3.55)
62 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
donde se ha introducido el error de estimacion C ′T0
:= C ′T0
− C ′T0.
Para encontrar la ley de control adaptativa que satisfaga los objetivos propuestos, se va a
partir de la siguiente funcion de Lyapunov
WV =1
2z2V +
1
2θT
VΓV−1θV +
1
2Γ−1C′
T0
C ′2T0, (3.56)
donde θV := θV − θV y ΓV = ΓVT > 0 son el error de estimacion y la matriz de ganancias de
la ley de adaptacion de θV (siendo θV la estimacion de θV ); mientras que ΓC′
T0es la ganancia
de la ley de adaptacion de C ′T0.
Ası, la derivada de (3.56) a lo largo de las trayectorias (3.55) puede escribirse de la forma
WV = zV
(
− (zV + Vr)2ϕV (α)
T · θV + kχ− p+ C ′T0cosαΩ2 + C ′
T0cosα Ω2
v
)
+θT
VΓV−1 ˙θV + C ′
T0Γ−1C′
T0
˙CT0 . (3.57)
Si se propone la ley de control
Ω2v =
1
C ′T0cosα
(
p+ (zV + Vr)2ϕ(α)T · θV − κV zV
)
, (3.58)
la derivada de la funcion de Lyapunov (3.57) queda de la forma
WV = −κV z2V + C ′T0
(
Γ−1C′
T0
˙C ′T0
+ zv cosαΩ2)
+θT
V
(
ΓV−1 ˙θV − zV (zV + Vr)
2ϕV (α))
, (3.59)
donde se ha sustituido Ω2v por (3.58) y se ha tenido en cuenta que zV = zV − χ.
Como se puede ver, por definicion el primer termino de WV es semidefinido negativo. Ademas,
el segundo termino, cuyo signo es indeterminado debido a la presencia de θV , puede eliminarse
de (3.59) si se selecciona la ley de adaptacion
˙θV = − ˙
θV = zV (zV + Vr)2 ΓθV ϕV (α). (3.60)
Finalmente, para eliminar el termino que involucra a ˙C ′T0, se puede proponer la siguiente ley
de adaptacion hıbrida
˙C ′T0 =
0 si C ′T0
= C ′T0,min
y zV ≤ 0
ΓC′
T0zV cosαΩ2 en otros casos,
(3.61)
la cual se ha formulado a partir de un operador de proyeccion para evitar la posibilidad de que el
parametro estimado C ′T0
se anule (lo que generarıa una singularidad en la ley de control).
Notese que si la ley de adaptacion (3.61) esta activa, esto es˙C ′T0
= − ˙C ′T0
= ΓC′
T0zV cosαΩ2,
3.3. CONTROLADOR DE VELOCIDAD AERODINAMICA 63
se produce la anulacion de este termino. En caso contrario, cuando˙C ′T0
= 0 (primera rama
de (3.61)), este termino se hace negativo, ya que para que se de esta condicion en la ley
de adaptacion se tiene que cumplir que zV < 0, al mismo tiempo que Ω2 cosα es siempre
positivo.
Una vez demostrado el caracter semidefinido negativo de (3.59), se puede demostrar la con-
vergencia a cero de la variable de error compensada zV . Queda ahora por ver la convergencia
al origen de la variable de error zV . Como se menciona en [Dong 12], no existe demostracion
formal de esta convergencia si el sistema tiene saturaciones, sin embargo, se tiene evidencia
practica que si se hace el filtro lo suficientemente rapido, la variable χ tiende rapidamente a
cero, lo cual se traduce al mismo tiempo en que la variable de error zV tiende tambien cero. En
este sentido, existen numerosos trabajos relacionados con sistemas de control de vuelo donde
se usa satisfactoriamente esta tecnica, como [Farr 05, Sonn 07, Sonn 10, Cao 11].
Finalmente, sintetizando todo el desarrollo realizado en esta seccion, se puede condensar la
ley de control adaptativa para la velocidad de vuelo en el siguiente parrafo:
Ley de control 4
Considerando el problema de control de velocidad, descrito por el sistema (3.55), y usando
como senal de control las revoluciones de giro del motor (la cual presenta limitaciones en
modulo y derivadas), se puede escribir la siguiente ley de control adaptativa que permite seguir
las referencias impuestas en la vuelo
Ω2v =
1
C ′T0cosα
(
p+ (zV + Vr)2ϕ(α)T · θV − κV zV
)
, (3.62)
˙θV = −zV (zV + Vr)
2 ΓθV ϕV (α), (3.63)
˙C ′T0
=
0 si C ′T0
= C ′T0,min
y zV ≤ 0
ΓC′
T0zV cosαΩ2 en otros casos,
(3.64)
donde para calcular la variable de error compensada zv = zV − χ, es necesario usar el filtro
χ = −κV χ+ C ′T0 cosα
(
Ω2 − Ω2v
)
, (3.65)
con el que se puede obtener χ.
Finalmente, para calcular la senal de control real del problema (Ω), la cual es comandada
al ESC (ademas de ser usada por el filtro anterior), es necesario aplicar el siguiente command
filter, cuya entrada es el valor de Ω2v calculado mediante la ley de control (3.62)
[
Ω
Ω
]
=
Ω
2ξωn
(
SΩu
Ωl
(
ω2n
2ξωn
[√
SΩ2
u
0 (Ω2v)− Ω
])
− Ω
)
, (3.66)
siendo la variable de estado del filtro Ω, la que se enviara como consigna al ESC del motor, la
cual tiene en cuenta limitaciones en magnitud y derivada del regimen de giro del motor (debido
64 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
al diseno del filtro).
Puede verse en la figura 3.4 un diagrama de bloques con las conexiones de cada uno de los
subsistemas que componen este controlador adaptativo de velocidad.
Ley de Control Command Filter
Filtro de la variable de error
Leyes de Adaptación
Controlador Adaptativo de Velocidad
ESC
Figura 3.4: Diagrama de bloques del controlador adaptativo de velocidad aerodinamica (ley decontrol 4).
Por ultimo, para cerrar esta seccion, resulta interesante realizar un comentario acerca de las
leyes de adaptacion introducidas. Ası, hay que tener presente que la formulacion del controlador
se ha realizado con la premisa de que no se conoce el valor de ningun parametro aerodinamico
ni propulsivo de la aeronave, lo que ha dado lugar a dos leyes de adaptacion: una para el vector
de parametros desconocidos θV y otra para el parametro que multiplica a la senal de control
C ′T0. Sin embargo, hay que tener en cuenta que el parametro C ′
T0en la practica resulta facil de
medir, ya que representa el coeficiente de traccion estatico de la helice empleada (como se puede
ver en la figura 3.3, se trata del coeficiente de traccion con J = 0, esto es, con el avion parado).
De este modo, con un sencillo ensayo estatico (sin necesidad de emplear un tunel de viento) se
puede medir dicho coeficiente, lo que permitirıa eliminar la ley de adaptacion asociada, dando
lugar a un controlador mucho mas simple.
3.4. Control del angulo de trayectoria
A continuacion se va a proponer una ley de control para el angulo de trayectoria. Como se
ha comentado en la introduccion, se van a buscar leyes de control que permitan garantizar la
estabilidad de la aeronave en todo su rango normal de operacion, y que al mismo tiempo no
requieran conocer ningun parametro del modelo del mismo. Ası, se va a proponer una ley de
3.4. CONTROL DEL ANGULO DE TRAYECTORIA 65
control basada en backstepping adaptativo que explote ademas algunas propiedades fısicas de
la aerodinamica del avion para dar lugar a un controlador simple y facil de implementar.
El desarrollo del controlador se va a hacer en dos fases. En primer lugar se va a exponer la
ley de control presentada en [Gavi 11b], con la cual se obtiene un control adaptativo del angulo
de trayectoria, valido para vuelo en el plano vertical (angulo de balance cero). Posteriormente,
se propondra una modificacion de la ley original, obteniendose un controlador de angulo de
trayectoria valido para virajes coordinados a angulo de balance constante.
3.4.1. Movimiento en el plano vertical
A continuacion se va a proponer una nueva ley de control del angulo de trayectoria para
un avion volando en el plano vertical. El objetivo fundamental de esta ley sera garantizar el
seguimiento de referencias en dicho angulo, suponiendo que modelo aerodinamico del avion es
totalmente desconocido. Ası, respecto al coeficiente de sustentacion solo se asumiran algunas
propiedades fısicas sobradamente conocidas (no se impondra una forma funcional concreta),
mientras que se asumira un modelo coeficiente de momento aerodinamico lineal (como se es-
tablece en la mayorıa de las referencias sobre Mecanica del Vuelo), con todos sus parametros
desconocidos.
Las bases de este controlador se mostraron en [Gavi 11a], aunque en ese caso era necesario un
estimador del angulo de ataque de equilibrio (ya que, como se vera mas adelante, esta variable
no resulta directamente medible). Posteriormente, en [Gavi 11b] se presento el diseno que se va
a mostrar aquı, el cual unicamente usa variables medibles en la ley de control, eliminando la
presencia del estimador de la ley de control inicial.
La dinamica de cabeceo del avion esta gobernada por las ecuaciones (3.2)–(3.4), junto con el
modelo aerodinamico (3.7). Si ademas se supone un vuelo en el plano vertical, esto es µ = 0,
se llega al siguiente sistema de ecuaciones simplificadas
γ =1
mVa
(
1
2ρV 2
a CL + FT sinα−mg cos γ
)
, (3.67)
θ = q, (3.68)
q =ρV 2Sc
2Iy
(
Cm0+ Cmαα + Cmqq + Cmδe
δe)
. (3.69)
Hay que tener en cuenta que para un vuelo en el plano vertical, se puede establecer la siguiente
relacion entre angulo de ataque, angulo de cabeceo y angulo de trayectoria
α = θ − γ. (3.70)
Entrando en el desarrollo de la ley de control, en primer lugar hay que decir que se van a
considerar las siguientes hipotesis simplificativas:
66 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
- Tal como se propone en [Hark 03], se asume que cos γ ≈ cos γref .
- Se considera que la referencia en el angulo de trayectoria es constante, esto es γref = 0.
- El sistema propulsor del avion no puede producir empuje negativo, por lo que se satisface
que FT ≥ 0.
- Se considera que Va es un parametro medible.
De este modo, se puede ver que que bajo estas hipotesis, la ecuacion (3.67) puede reescribirse
de la siguiente manera
γ = f(α) = f(θ − γ), (3.71)
donde la funcion escalar f se define como
f(α) :=1
mVa
(
1
2ρV 2
a SCL(α) + FT sinα−mg cos γref
)
.
Analizando la aerodinamica del avion, y en particular teniendo presente que αCL(α) ≥ 0
(como se establecio en la seccion 3.2), puede verse que la funcion f(α) tiene una propiedad muy
interesante que resultara muy util en el desarrollo de la ley de control.
Ası, considerando α0 como el angulo de ataque de equilibrio, que hace que f(α0) = 0 para un
valor dado del angulo de trayectoria de referencia γref , bajo las hipotesis que se han establecido
puede demostrarse que la funcion f(α) satisface que
(α− α0)f(α) > 0. (3.72)
Esta propiedad no es mas que una formalizacion de la fısica del vuelo de un avion. Ası, para
una condicion de vuelo dada por Va y FT (constantes), existe un angulo de ataque de equilibrio
(o lo que es lo mismo, un coeficiente de sustentacion de equilibrio), que hace que la aeronave
mantenga un angulo de trayectoria estacionario γref (siempre que el angulo de trayectoria
demandado no exceda las limitaciones fısicas del avion).
Es importante senalar que esta es la unica informacion sobre la funcion f(α) que se va a usar
para disenar el controlador de angulo de trayectoria, lo cual supone una clara mejora respecto
de otras trabajos similares que pueden encontrarse en la literatura, ya que en estos es necesario
realizar una parametrizacion del coeficiente de sustentacion y estimar dichos parametros en la
ley de adaptacion.
Entrando en la formulacion del controlador, en primer lugar se va realizar un cambio de
coordenadas, para desplazar el equilibrio de las variables de estado al origen. Ası, se va introducir
3.4. CONTROL DEL ANGULO DE TRAYECTORIA 67
el vector de error de las variables de estado como
z =
z1
z2
z3
:=
γ − γref
θ − γref − α0
q
. (3.73)
Hay que tener en cuenta que α0 es desconocido, ya que resulta de resolver la ecuacion f(α) = 0,
y no se dispone de mas informacion de la funcion f(α) mas alla de la propiedad (3.72). Por
tanto, la variable z2 no resulta medible y no podra ser utilizada en el ley de control final.
Reescribiendo las ecuaciones (3.67)–(3.69) junto con (3.71) en el nuevo conjunto de variables
de error (3.73) se obtiene
z1 = η(z2 − z1), (3.74)
z2 = z3, (3.75)
z3 = β2[
Cm0+ Cmα(z2 − z1 + α0) + Cmqz3 + Cmδe
δe]
, (3.76)
donde se ha definido β2 :=ρV 2
a Sc2Iy
y
η(x) := f(x+ α0). (3.77)
Hay que tener en cuenta que la propiedad (3.72) implica que la funcion escalar η(x) satisface
x · η(x) ≥ 0.
Con todo esto, se puede definir el problema de control que se va a resolver en esta seccion. Ası,
se va buscar hacer el origen del sistema escrito en variables de error (3.74)–(3.76) globalmente
estable, es decir (γ, θ, q) = (γref , θref , 0), para lo cual se usara como senal de control la deflexion
del timon de profundidad δe. Ademas, se consideraran las siguientes condiciones:
C1. γref es una referencia dada. Debera estar dentro de las limitaciones fısicas del avion.
C2. α0 es desconocido, lo que implica que θref := α0 + γref tambien lo es.
C3. La potencia de control longitudinal Cmδede la ecuacion (3.9) es desconocida. Sin embargo,
el diseno del avion hace que su signo sea siempre negativo.
C4. El vector de salidas medibles del sistema y ∈ R3 se define de la siguiente manera.
y :=
γ − γref
α
q
≡
z1
z2 − z1 + α0
z3
. (3.78)
A continuacion se describen los pasos para estabilizar el sistema en cascada (3.74)–(3.76)
haciendo uso de backstepping.
Paso 1. En primer lugar, se considera el sistema descrito por la ecuacion (3.74), el cual se
68 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
estabiliza usando z2 como senal de control virtual. Ası, se puede definir la funcion de Lyapu-
nov
W1 =1
2z21 , (3.79)
cuya derivada temporal es W1 = z1η(z2 − z1).
Seleccionando la ley de control virtual z2 = u1(z1) = −κγ1z1 (hay que tener en cuenta que
z1 = y1, y por tanto es medible), se tiene
W1|z2=u1(z1) = z1η(−(1 + κγ1)z1),
por lo que W1|z2=u1(z1) es negativa definida si se selecciona κγ1 > −1.
Paso 2. Introduciendo ahora el error del estado z2 respecto a la ley de control virtual del paso
anterior, se puede definir la nueva variable de error
z2 := z2 − u1(z1).
Escribiendo las ecuaciones (3.74)–(3.75) en terminos de esta nueva variable, se tiene
z1 = η(z2 − (1 + κγ1)z1), (3.80)
˙z2 = z3 + κγ1η(z2 − (1 + κγ1)z1). (3.81)
Sobre este sistema se puede definir la funcion de Lyapunov
W2 = c1W1 +
∫ z2−(1+κγ1 )z1
0
η(s)ds,
la cual es definida positiva, ya que la propiedad (3.72) hace que el termino integral ası lo sea.
Como se vera mas adelante, al incluir este termino integral (propuesto en [Krst 95b]), junto
con la propiedad x · η(x) ≥ 0, se consigue garantizar el caracter semidefinido negativo de la
derivada de la funcion de Lyapunov sin necesidad de emplear la funcion desconocida η en la ley
de control.
Calculando la derivada temporal de W2 se tiene
W2 = c1z1η + η (z3 + κγ1η − (1 + κγ1)η)
= −η2 + (c1z1 + z3)η, (3.82)
donde, por simplicidad en la notacion, se ha omitido el argumento de la funcion η, de manera
que η = η(z2 − (1 + κγ1)z1).
Seleccionando la ley de control virtual z3 = u2(z1) = −c1z1, la ecuacion (3.82) se transforma
3.4. CONTROL DEL ANGULO DE TRAYECTORIA 69
en
W2 = −η2, (3.83)
por lo que es negativa definida.
Usando el teorema de LaSalle, se puede concluir que z1 y z2 tienden al mayor conjunto
invariante dentro del conjunto (z1, z2) ∈ R2 : η = 0, el cual, haciendo uso de la propiedad
(3.72) y (3.77) puede escribirse como
(z1, z2) ∈ R2 : z2 − (1 + κγ1) z1 = 0. (3.84)
Analizando ahora la dinamica residual de este conjunto se tiene
z1 = 0, (3.85)
˙z2 = −c1z1, (3.86)
La ecuacion (3.85) implica que z1 es una constante. Ademas, la derivada del conjunto es
˙z2 − (1 + κγ1) z1 = 0, por lo que se obtiene que ˙z2 = 0. Teniendo en cuenta tambien la ecuacion
(3.86) puede concluirse que el mayor conjunto invariante es el origen z1 = z2 = 0, y lo que es
mas, al serW2 radialmente no acotada, puede decirse que el origen es globalmente estable.
Esta conclusion implica que γ → γref , θ → θref incluso aunque θref sea desconocido; o lo que
es lo mismo, se consigue que el angulo de ataque tienda a su valor de equilibrio (α0) aunque se
desconozca cual es dicho valor de equilibrio. Ademas, hay que destacar que este comportamiento
se ha conseguido con leyes de control que unicamente usan variables de estado medibles (notese
la ausencia de z2 en la ley de control virtual), y que no se tiene ningun conocimiento de la
funcion f(α) mas alla de la propiedad (3.72).
Finalmente, hay que senalar que en el trabajo previo [Gavi 11a] se introdujeron elementos
adicionales en W2 para conseguir hacer aparecer un termino negativo que involucrara z22 en W2.
Esto permite demostrar la convergencia exponencial al equilibrio, pero tiene el inconveniente
de que hace aparecer a la variable z2 en la ley de control, la cual no es medible, ya que como
se puede ver en (3.73), requiere el conocimiento de α0 (que por hipotesis del problema, es
indeterminado). Por el contrario, en la version del controlador propuesta en esta seccion, se
ha conseguido hacer desaparecer el angulo de ataque de equilibrio de la ley de control, lo
que permite que esta funcione sin requerir ningun conocimiento del modelo aerodinamico del
avion (mas alla de las hipotesis establecidas anteriormente). Ademas, aunque esta mejora se
haya conseguido a costa de sacrificar la estabilidad exponencial, en la seccion 3.5 se vera que
proporciona buenos resultados en simulacion.
Paso 3. Finalmente, en este ultimo paso se extiende el metodo de backstepping para generar
una ley de control real, que haga uso de la senal de control del sistema (δe). Ademas, teniendo
70 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
en cuenta que en la ecuacion (3.76) aparecen parametros asociados al modelo de coeficiente de
momento aerodinamico que son desconocidos, se va a introducir una ley de adaptacion para
estimar en lınea estos parametros.
Las ecuaciones del sistema a considerar para este ultimo paso de backstepping, son las resul-
tantes de componer el subsistema (3.80)-(3.81) con la ecuacion (3.76). Introduciendo en dicho
sistema la nueva variable de error
z3 := z3 − u2(z1) = z3 + c1z1, (3.87)
se obtiene el modelo del sistema en este ultimo paso de backstepping
z1 = η, (3.88)
˙z2 = z3 − c1z1 + κγ1η, (3.89)
˙z3 = β2Cmδe
(
ϕTγ · θγ + δe
)
− β2κγ3 z3 + c1η, (3.90)
donde se ha definido el vector de parametros aerodinamicos desconocidos θγ ∈ R4 de la for-
ma
θγ :=
[
Cm0
Cmδe
Cmα
Cmδe
Cmq
Cmδe
1
Cmδe
]T
, (3.91)
y el vector de magnitudes medibles ϕγ(y) ∈ R4 como
ϕγ(y) :=
1
α
z3
κγ3 z3
=
1
y2
y3
κγ3(y3 + c1y1)
. (3.92)
Notese que δe es la deflexion del timon de profundidad, la cual es la senal de control real del
sistema.
Para calcular la ley de control, se va a definir la siguiente funcion de Lyapunov
W3 =W2 +c32z23 +
|Cmδe|
2θT
γΓ−1γ θγ, (3.93)
donde c3 > 0, Γγ = ΓTγ > 0 es la matriz de ganancias de la ley de adaptacion, θγ es la estimacion
de θγ y θγ := θγ − θγ es el vector de error de estimacion.
De esta forma, la derivada temporal de la funcion de Lyapunov queda
W3 = −η2 + z3η + c3z3β2Cmδe
(
ϕTγ · θγ + δe
)
+c3z3c1η − c3β2κγ3 z23 + |Cmδe
|θTγΓ−1γ
˙θγ. (3.94)
3.4. CONTROL DEL ANGULO DE TRAYECTORIA 71
Introduciendo la siguiente ley de control y de adaptacion
δe := −ϕTγ · θγ, (3.95)
˙θγ = − ˙
θγ := −c3β2z3Γγϕγ , (3.96)
y seleccionando c3 =1c1, se puede ver que (3.94) queda
W3 = −η2 + 2z3η −β2κγ3c1
z23 ≤ −(
1− 2
λ
)
η2 −(
β2κγ3c1
− 2λ
)
z23 ,
donde se ha usado la desigualdad de Young, con el parametro λ libre. Seleccionando λ = 4 y
κγ3 > 8c1/β2, se llega a
W3 ≤ −1
2η2 − 1
2z23 ,
la cual es una funcion semidefinida negativa.
Usando de nuevo el teorema de LaSalle, se puede ver que el mayor conjunto invariante dentro
de (z1, z2, z3) ∈ R3 : η = 0, z3 = 0 es precisamente el origen z1 = z2 = z3 = 0, ya que
z1 = z2 = 0 implica z2 = 0 (como se ha visto anteriormente), y ademas, z1 = 0 y z3 = 0
implican directamente z3 = 0. Trasladando esta conclusion a las variables de estado originales,
puede decirse que (γ, θ, q, θγ) = (γref , θref , 0, θ∗
γ) es globalmente asintoticamente estable (para
un cierto vector constante θ∗
γ), con lo que se satisfacen los objetivos impuestos para desarrollar
el controlador.
Finalmente, para tener una vision mas clara del conjunto controlador – ley de adaptacion, se
va a sintetizar el resultado al que se ha llegado en esta seccion en el siguiente parrafo:
Ley de control 5
Considerando el problema de control de angulo de trayectoria descrito por las ecuaciones (3.67)–
(3.69), usando ademas unicamente las salidas medibles del sistema dadas por (3.78), y teniendo
en cuenta que la unica informacion sobre el modelo aerodinamico del avion se reduce a que
Cmδe< 0 y (α− α0) · f(α) ≥ 0; entonces, la ley de control adaptativa dada por
δe = −ϕγ(y)T · θγ, (3.97)
˙θγ = −β2
c1(q + c1(γ − γref))Γγϕγ(y), (3.98)
con c1 > 0 y κγ3 > 8c1/β2, Γγ = ΓTγ > 0 y
ϕγ(y) =
1
α
q
κγ3(q + c1(γ − γref))
, (3.99)
72 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
permite establecer que la variedad de equilibrio (γ, θ, q, θγ) = (γref , θref , 0, θ∗
γ) es globalmente
asintoticamente estable, para un cierto vector constante θ∗
γ.
3.4.2. Extension del controlador para virajes uniformes
En la seccion anterior se presento un controlador adaptativo para el angulo de trayectoria
valido para vuelos simetricos en el plano vertical. Esta restriccion se va a eliminar en esta
seccion, dando lugar a un control de trayectoria valido tanto para vuelos en el plano vertical,
como para virajes uniformes.
Para establecer el modelo del sistema, se van a seguir manteniendo las hipotesis que se mos-
traron al principio de la seccion anterior, a las que se anadiran algunas algunas consideraciones
adicionales. Ası, el conjunto de hipotesis que se va a tener en cuenta en esta seccion puede
resumirse en los siguientes puntos:
- Al igual que en la seccion anterior, se asume que cos γ ≈ cos γref .
- Se considera que la referencia en el angulo de trayectoria es constante, esto es γref = 0.
- El sistema propulsor del avion no puede producir empuje negativo, por lo que se satisface
que FT ≥ 0.
- Se supone que el avion mantiene un vuelo simetrico en todo momento, esto es, el angulo de
resbalamiento es β = 0. Se trata de una hipotesis ampliamente usada en Mecanica del Vuelo,
ya que los aviones estan disenados para volar con esta condicion. Ademas, el controlador
lateral-direccional del avion esta disenado para mantener nulo el angulo de resbalamiento.
- Teniendo en cuenta que debido a las restricciones fısicas del avion, α, θ y γ son angulos
pequenos, se va a sustituir la relacion entre el angulo de trayectoria y los angulos de ataque,
cabeceo y balance (3.6) por la siguiente aproximacion
γ = θ − α cos φ. (3.100)
- Se va a suponer que el angulo de balance φ, permanece constante pudiendo medirse su valor
mediante el sistema navegacion. Esto implica que la velocidad angular de balance es nula
(p = 0)
- Se considera que Va y r son parametros medibles.
- Por restricciones operacionales del avion se considera que |φ| < π2.
- Al igual que en la seccion anterior, se considera que la potencia de control longitudinal Cmδe
es un parametro desconocido, con signo negativo.
Bajo estas hipotesis, el modelo considerado para disenar el controlador de angulo de trayectoria
se resume en las siguientes ecuaciones, las cuales muestran una clara estructura en cascada que
3.4. CONTROL DEL ANGULO DE TRAYECTORIA 73
permite el uso de backstepping para disenar el controlador
γ =1
mVa(L cosφ+ FT sinα cos φ−mg cos γref) , (3.101)
α =θ − γ
cosφ, (3.102)
θ = q cosφ− r sinφ, (3.103)
q =M(δe)
Iy+IxzIyr2. (3.104)
Notese que se ha sustituido µ = φ, debido a que se esta considerando un vuelo simetrico.
Ademas, es de senalar que, al igual que ocurrıa en la seccion anterior, bajo las hipotesis que
se han presentado, la ecuacion (3.101) puede escribirse de la siguiente manera
γ = f(α) = f(θ − γ), (3.105)
donde la funcion escalar f se define ahora como
f(α) :=1
mVa
(
1
2ρV 2
a SCL(α) cosφ+ FT sinα−mg cos γref
)
.
Hay que tener en cuenta que, al igual que en el caso anterior, esta funcion satisface de nuevo
la propiedad (3.72), aunque en este caso cambiara la definicion de f y α0 debido a la aparicion
del angulo de balance del avion.
Entrando en la formulacion del controlador, se va a realizar el mismo cambio de coordenadas
que en la seccion anterior, esto es
z =
z1
z2
z3
:=
γ − γref
θ − γref − α0
q
. (3.106)
Donde se considera que α0 es desconocido, y que no se dispone de mas informacion de la funcion
f mas alla de la propiedad (3.72). Por tanto, la variable z2 no resulta medible y no podra ser
utilizada en el ley de control final.
Reescribiendo las ecuaciones (3.101)–(3.104) junto con (3.105) en el nuevo conjunto de varia-
bles de error (3.73) se obtiene
z1 = η(z2 − z1), (3.107)
z2 = z3 cosφ− r sinφ, (3.108)
z3 = β2[
Cm0+ Cmα(z2 − z1 + α0) + Cmqz3 + Cmδe
δe]
+IxzIyr2, (3.109)
donde se ha definido β2 :=ρV 2
a Sc2Iy
y
η(x) := f(x+ α0). (3.110)
74 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
Notese que la propiedad (3.72) implica que la funcion escalar η(x) satisface x · η(x) ≥ 0.
Con estas consideraciones, se puede establecer el mismo problema de control que en la seccion
anterior, esto es, se busca hacer el origen de (3.107)–(3.109) globalmente estable, o lo que es lo
mismo (γ, θ, q) = (γref , θref , 0), usando como senal de control del timon de profundidad δe, y
estando sujeto a las siguientes condiciones:
C1. γref es una referencia dada. Debera estar dentro de las limitaciones fısicas del avion.
C2. α0 es desconocido, lo que implica que θref := α0 + γref tambien lo es.
C3. La potencia de control longitudinal Cmδede la ecuacion (3.9) es desconocida. Sin embargo,
el diseno del avion hace que su signo sea siempre negativo.
C4. El vector de salidas medibles del sistema y se define de la siguiente manera.
y :=
γ − γref
α
q
≡
z1
z2 − z1 + α0
z3
. (3.111)
A continuacion se describen los pasos para estabilizar el sistema en cascada (3.107)–(3.109)
haciendo uso de backstepping.
Paso 1. El primer paso es exactamente el mismo que en la seccion anterior, ya que la ecuacion
(3.107) es esencialmente la misma. Ası, aunque la definicion de la funcion η ha cambiado (debido
a la aparicion del angulo de balance), esta sigue satisfaciendo la propiedad x · η(x) ≥ 0.
Ası, usando la funcion de Lyapunov
W1 =1
2z21 ,
se puede seleccionar la ley de control virtual z2 = u1(z1) = −κγ1z1, la cual hace que W1|z2=u1(z1)es negativa definida si se selecciona κγ1 > −1.
Paso 2. Introduciendo ahora el error del estado z2 respecto a la ley de control virtual del paso
anterior, se puede definir la nueva variable de error
z2 := z2 − u1(z1).
Escribiendo las ecuaciones (3.107)–(3.108) en terminos de esta nueva variable, se tiene
z1 = η(z2 − (1 + κγ1)z1), (3.112)
˙z2 = z3 cos φ− r sin φ+ κγ1η(z2 − (1 + κγ1)z1). (3.113)
3.4. CONTROL DEL ANGULO DE TRAYECTORIA 75
Se va a usar la funcion de Lyapunov
W2 = c1W1 +
∫ z2−(1+κγ1 )z1
0
η(s)ds,
cuya derivada temporal viene dada por
W2 = c1z1η + η (z3 cosφ− r sinφ+ κγ1η − (1 + κγ1)η)
= −η2 + (c1z1 + z3 cosφ− r sinφ)η, (3.114)
donde, por simplicidad en la notacion, se ha omitido el argumento de la funcion η, de manera
que η = η(z2 − (1 + κγ1)z1).
Seleccionando la ley de control virtual z3 = u2(z1) = − c1z1cosφ
+ r tanφ, la ecuacion (3.114) se
transforma de nuevo en W2 = −η2.
Usando de nuevo el teorema de LaSalle, se puede concluir que γ → γref , θ → θref incluso
aunque θref sea desconocido; o lo que es lo mismo, se consigue que el angulo de ataque tienda
a su valor de equilibrio (α0) aunque se desconozca cual es dicho valor de equilibrio.
Paso 3. Introduciendo la nueva variable de error
z3 := z3 − u2(z1) = z3 +c1z1cosφ
− r tanφ, (3.115)
en el sistema resultante de componer el subsistema (3.112)-(3.113) con la ecuacion (3.109), se
obtiene el modelo del sistema en este ultimo paso de backstepping:
z1 = η, (3.116)
˙z2 = z3 cosφ− c1z1 + κγ1η, (3.117)
˙z3 = β2Cmδe
(
ϕTγ · θγ + δe
)
− β2κγ3 z3 +c1η
cosφ, (3.118)
donde de nuevo se ha definido el vector de parametros aerodinamicos desconocidos θγ de la
forma
θγ :=
[
Cm0
Cmδe
Cmα
Cmδe
Cmq
Cmδe
1
Cmδe
]T
, (3.119)
mientras que el vector de parametros medibles ϕγ(y) se define ahora como
ϕγ(y) :=
1
α
z3
κγ3 z3 +Φβ2
=
1
y2
y3
κγ3(y3 + c1y1)− r tan φβ2
+ Ixzβ2Iy
r2
, (3.120)
76 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
donde se ha introducido
Φ = −r tanφ+IxzIyr2. (3.121)
La funcion de Lyapunov se va a definir ahora de la siguiente manera
W3 =W2 +c32z23 cos
2 φ+|Cmδe
|2
θT
γΓ−1γ θγ, (3.122)
donde c3 > 0, Γγ = ΓTγ > 0 es la matriz de ganancias de la ley de adaptacion, θγ es la estimacion
de θγ y θγ := θγ − θγ es el vector de error de estimacion.
Calculando la derivada de (3.122) a lo largo de las trayectorias del sistema (3.116)–(3.118) se
tiene:
W3 = −η2 + z3η cosφ+ c3 cos2 φz3
(
β2Cmδe
(
ϕTγ · θγ + δe
)
− β2κγ3 z3 +c1η
cosφ
)
+|Cmδe|θTγΓ−1
γ˙θγ . (3.123)
Se puede constatar que si se introduce el cambio de variable z′3 = z3 cosφ, la derivada de la
funcion de Lyapunov (3.123) es cualitativamente similar a (3.94). De este modo, introduciendo
la ley de control y de adaptacion
δe := −ϕTγ · θγ, (3.124)
˙θγ = − ˙
θγ := −c3β2z3 cos2 φΓγϕγ , (3.125)
y seleccionando c3 =1c1, se puede ver que (3.123) queda
W3 = −η2 + 2z3 cos φ η −β2κγ3c1
z23 cos2 φ
≤ −(
1− 2
λ
)
η2 −(
β2κγ3c1
− 2λ
)
z23 cos2 φ,
donde se ha usado la desigualdad de Young, con el parametro λ libre. Seleccionando λ = 4 y
κγ3 > 8c1/β2, se llega a
W3 ≤ −1
2η2 − 1
2z23 ,
la cual es una funcion semidefinida negativa, de manera que, usando el teorema de LaSalle-
Yoshizawa, se puede concluir el acotamiento global de (z1, z2, z3), es decir, de (γ, θ, q, θγ).
Por otra parte, puesto que el sistema en bucle cerrado es invariante en el tiempo, usando
el principio de invariancia de LaSalle se puede asegurar que todas las trayectorias del sistema
convergen al mayor conjunto invariante contenido en (z1, z2, z3, θγ) ∈ R4 : W3 = 0. De este
modo, puesto que todas las trayectorias estan acotadas, se puede concluir que la variedad de
3.5. RESULTADOS DE SIMULACION 77
equilibrio (z3, z2, z1, θγ) = (0, 0, 0, θ∗
γ), o lo que es lo mismo (γ, θ, q, θγ) = (γref , θref , 0, θ∗
γ) es
globalmente asintoticamente estable.
Como se puede comprobar, el resultado de esto es un controlador que es capaz de seguir las
referencias impuestas en el angulo de trayectoria (incluso en vuelo en viraje), con un mınimo
conocimiento del modelo aerodinamico del avion. Esta ley de control adaptativa se resume en
el siguiente parrafo:
Ley de control 6
Considerando el problema de control de angulo de trayectoria en presencia de virajes uniformes
descrito por las ecuaciones (3.101)–(3.104), usando ademas unicamente las salidas medibles
del sistema dadas por (3.111), y teniendo en cuenta que la unica informacion sobre el modelo
aerodinamico del avion se reduce a que Cmδe< 0 y (α − α0) · f(α) ≥ 0; entonces, la ley de
control adaptativa dada por
δe = −ϕγ(y)T · θγ, (3.126)
˙θγ = −β2 cos
2 φ
c1
(
q +c1(γ − γref)
cos φ− r tanφ
)
Γγϕγ(y), (3.127)
(3.128)
con c1 > 0 y κγ3 > 8c1/β2, Γγ = ΓTγ > 0, permite establecer que la variedad de equilibrio
(γ, θ, q, θγ) = (γref , θref , 0, θ∗
γ) es globalmente asintoticamente estable, para un cierto vector
constante θ∗
γ .
3.5. Resultados de simulacion
En esta seccion se van a exponer los resultados de simulacion de los controladores formulados
en las secciones anteriores. Como modelo de simulacion, se considerara el modelo de avion no
lineal descrito en la seccion 2.2, usando los datos aerodinamicos mostrados en la seccion 2.3.1.
Respecto al modelo propulsivo, si el controlador de velocidad emplea el regimen revoluciones
del motor como senal de control, se usara el modelo propulsivo de la seccion 2.3.2; en caso
contrario, se usara directamente la fuerza propulsiva como senal de control.
Ademas, en todas las simulaciones se consideraran saturaciones tanto en las senales de control
como en sus derivadas temporales. En este sentido se tienen en cuenta las siguientes limitaciones
en la deflexion del timon de profundidad, tanto en magnitud como en tasa de cambio
δe ∈ [−30o, 30o] , |δe,max| = 60 deg/s. (3.129)
Por otra parte, en el caso en el que el controlador de velocidad emplee la fuerza propulsiva
78 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
como senal de control, se asumiran las siguientes restricciones
FT ∈ [0 N, 100N] , |FT,max| = 40N/s, (3.130)
mientras que si se usan las revoluciones de giro como senal de control, se incluiran los siguientes
lımites
Ω ∈ [500 rpm, 5000 rpm] , |Ωmax| = 500 rpm/s. (3.131)
Notese que se ha incluido un regimen de revoluciones mınimo distinto de cero, ya que de lo
contrario se tendrıan problemas numericos al calcular el parametro de avance. Ademas, en la
practica, durante el vuelo no se puede detener completamente la helice, ya que aunque no se le
suministre potencia electrica, esta entra en regimen de molinete.
Entrando en los parametros de sintonizacion de las leyes de control establecidas anteriormente,
se han seleccionado los siguientes valores:
Leyes de control 1, 2 y 3
κV1 = 1,8, ΓV = 0,001 Id3. (3.132)
Ley de control 4
κV = 4, ΓθV = 0,02 Id4, ΓC′
T0= 10−7. (3.133)
Ademas, para el command filter se han seleccionado los parametros ωn = 500 rad/s y ξ = 1.
Leyes de control 5 y 6
κγ3 = 4; c1 = 2; Γγ = 5
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 0,1
. (3.134)
Por otra parte, hay que tener en cuenta que en el diseno de los controladores mostrados en
las secciones anteriores se ha supuesto que las consignas en velocidad y angulo de trayectoria
son funciones continuas. Sin embargo, como se vera mas adelante, las velocidades de referencia
que proporciona el sistema de guiado son discretas (este sistema se ejecuta con una frecuencia
de muestreo de 1 Hz, de manera que una vez por segundo proporciona un nivel de velocidad
constante que el sistema de control de actitud debera alcanzar y mantener). Ası, la referencia con
la que se va a trabajar en la practica es una funcion escalonada, y por tanto discontinua.
Tras realizar varias pruebas, se ha comprobado que estos escalones introducen oscilaciones en
las leyes de adaptacion cada vez que se produce un cambio brusco en la referencia (las cuales
acaban traduciendose al final a la propia senal de control). Para evitar esto, se han incluido
3.5. RESULTADOS DE SIMULACION 79
sendos filtros de primer orden en las senales referencia (ver figura 3.5), los cuales han sido
disenados con el suficiente ancho de banda para no perjudicar las prestaciones del controlador.
Ası, la senal de referencia enviada a cada controlador es continua, aunque la consigna real sea
una funcion escalonada.
Controladorde Velocidad
Avión
Controladorde ángulo detrayectoria
Controlador longitudinal
Figura 3.5: Esquema de los filtros en las consignas.
Pasando a mostrar los resultados de las simulaciones realizadas con los distintos controladores
disenados en este capıtulo, en primer lugar se va a simular un movimiento en el plano vertical,
usando como senales de control el empuje y el timon de profundidad. Para el control de velo-
cidad, se emplearan las leyes 2 y 3 (comparando las diferencias entre ellas), mientras que para
el control de angulo de trayectoria se empleara la ley 5.
De este modo, en la figura 3.6 se muestra la evolucion temporal de la velocidad y del angulo
de trayectoria. En la grafica correspondiente al controlador de velocidad, pueden verse dos
simulaciones: la lınea verde muestra la respuesta del avion usando el controlador 2, mientras
que la lınea roja describe la respuesta del sistema usando la ley de control 3, que tiene en cuenta
la existencia de saturaciones.
Se puede apreciar como en general ambas leyes cumplen con su cometido, estabilizando el
sistema sin disponer de ninguna informacion sobre los valores de los parametros del modelo
aerodinamico. Sin embargo, cuando se emplea el controlador sin saturaciones aparece una cierta
sobreoscilacion, la cual es debida a los errores en la estimacion de parametros, que se acumulan
durante los periodos de saturacion del empuje. Se puede ver como este comportamiento mejora
sustancialmente introduciendo las modificaciones en la ley de adaptacion que incluye la ley de
control 3, reduciendo considerablemente sobreoscilaciones en la velocidad.
En este sentido, en la figura 3.7 pueden verse las senales de control aplicadas, donde las senales
de control reales implementadas en el avion (teniendo en cuenta las restricciones anteriormente
mencionadas) se representan con lınea roja, mientras que las senales de control calculadas por
las leyes (sin tener en cuenta estas restricciones) aparecen representadas mediante una lınea
azul. Particularmente, se puede ver que en el caso del control de velocidad, cuando tienen
lugar cambios grandes en la referencia, se producen saturaciones en el empuje durante periodos
80 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
0 10 20 30 40 50 60 70 80 90 10015
20
25
30
35
Va [m
/s]
t [s]
Referencia Controlador de velocidad 2 Controlador de velocidad 3
0 10 20 30 40 50 60 70 80 90 100−5
0
5
10
15
γ [d
eg]
t [s]
Figura 3.6: Evolucion temporal de la velocidad aerodinamica y del angulo de trayectorian (ley5). En el caso de la velocidad, se muestra la respuesta del sistema con y sin saturaciones en leyde adaptacion (leyes 2 y 3, respectivamente).
0 10 20 30 40 50 60 70 80 90 100−50
0
50
100
150
200
FT [N
]
Controlador de velocidad 2
0 10 20 30 40 50 60 70 80 90 100−100
0
100
200
FT [N
]
Controlador de velocidad 3
0 10 20 30 40 50 60 70 80 90 100−15
−10
−5
0
δ e [deg
]
Controlador de angulo de trayectoria 5
t [s]
Control calculado Control aplicado
Figura 3.7: Evolucion temporal de las senales de control de las leyes 2, 3 y 5.
3.5. RESULTADOS DE SIMULACION 81
0 10 20 30 40 50 60 70 80 90 100−0.1
0
0.1
0.2
0.3C
D0
0 10 20 30 40 50 60 70 80 90 1000.04
0.06
0.08
0.1
0.12k
1
0 10 20 30 40 50 60 70 80 90 1000.04
0.06
0.08
0.1
0.12
t [s]
k2
Ley de control 2 Ley de control 3
Figura 3.8: Evolucion temporal de los parametros estimados por los controladores de velocidad 2y 3.
0 20 40 60 80 100−1
−0.5
0
0.5
1
1.5
2
t [s]
Cm0 / Cmδ
e
0 20 40 60 80 100−3.4
−3.3
−3.2
−3.1
−3
t [s]
Cmα / Cmδe
0 20 40 60 80 100−9.2
−9.1
−9
−8.9
−8.8
−8.7
t [s]
Cmq / Cmδ
e
0 20 40 60 80 100−7.4
−7.39
−7.38
−7.37
−7.36
−7.35
t [s]
1 / Cmδe
Figura 3.9: Evolucion temporal de los parametros estimados por el controlador de angulo detrayectoria 5.
82 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
de tiempo significativos. Esto da lugar al efecto windup visible en el sistema cuando no se
consideran las saturaciones en la ley de adaptacion (ley 2).
En las figuras 3.8 y 3.9 se puede ver la evolucion temporal de los parametros estimados por
las leyes de adaptacion de los controladores de velocidad y de angulo de trayectoria, respectiva-
mente. Puede apreciarse como estos parametros tienden a valores estables cuando se alcanzan
los distintos equilibrios, aunque estos no tienen por que coincidir con los valores reales del avion.
Ademas, observando la figura 3.8, se puede ver el efecto perverso que provocan las saturacio-
nes en la ley 2, produciendose sobreestimaciones notables de los parametros desconocidos, en
comparacion con las estimaciones proporcionadas por la ley 3.
A continuacion se va mostrar la respuesta del sistema usando el controlador de velocidad 4,
el cual usa las revoluciones del motor como senal de control, en lugar de trabajar directamente
con el empuje. Se empleara ademas la ley de control 5 para el angulo de trayectoria, realizando
las simulaciones en el plano vertical.
0 10 20 30 40 50 60 70 80 90 10016
18
20
22
24
26
28
30
Va [m
/s]
0 10 20 30 40 50 60 70 80 90 100−2
0
2
4
6
8
10
12
14
Tiempo [s]
γ [d
eg]
Figura 3.10: Evolucion temporal de la velocidad aerodinamica y del angulo de trayectoria,usando la ley de control 4 para la velocidad y la ley 3 para el angulo de trayectoria. La lıneaazul es la referencia, la roja la variable de estado y la lınea verde muestra la salida del filtro dela senal de referencia.
En la figura 3.10 puede observarse la evolucion temporal de la velocidad aerodinamica del
avion haciendo uso de este controlador, la cual se muestra junto a la evolucion temporal del
angulo de trayectoria. Puede verse como el seguimiento en velocidad es excelente, alcanzando
la referencia en el mınimo tiempo que le permiten las limitaciones fısicas del avion, sin incurrir
en excesivas sobreoscilaciones. Al mismo tiempo, se aprecia que en este caso tampoco se tiene
ninguna interferencia importante entre ambos controladores (velocidad y angulo de trayectoria),
de manera que los dos son capaces de alcanzar las consignas demandadas, manteniendolas a
pesar de las perturbaciones existentes. Hay que tener en cuenta que la velocidad y el angulo de
3.5. RESULTADOS DE SIMULACION 83
trayectoria estan acoplados, de manera que un cambio en alguna de las dos variables de estado
provoca cambios en la otra.
Por otra parte, en la figura 3.11 (donde se muestran las revoluciones del motor, y la variable
de error χ) se puede apreciar el efecto del command filter. Se aprecia como las revoluciones
calculadas por la ley de control sobrepasan en algunas ocasiones los lımites fısicos del motor,
sin embargo, la senal de control proporcionada por el command filter siempre permanece dentro
de dichas limitaciones. Se puede apreciar tambien como crece la variable de error χ cuando se
producen estas diferencias entre las senales de control a la entrada y a la salida del filtro. Esta
variable de error permite incluir el efecto de las discrepancias entre la senal de control calculada
y la aplicada en las leyes de adaptacion del controlador, lo cual le permite una mejor estimacion
de los parametros. En este sentido, en la figura 3.12 se muestran dichos parametros estimados
por este controlador, apreciandose como estos tienden a valores de equilibrio constantes.
0 10 20 30 40 50 60 70 80 90 100
0
2000
4000
6000
8000
10000
12000
Hz2
0 10 20 30 40 50 60 70 80 90 100−10
−5
0
5
10
χ
Tiempo [s]
Ωv2
Ω2
Figura 3.11: Evolucion temporal de las revoluciones del motor al cuadrado calculadas por laley de control Ω y calculadas por el command filter Ωv (las cuales son enviadas directamenteal ESC). Se muestra ademas la evolucion temporal de la variable de error χ introducida por elfiltro.
Para comprobar las prestaciones de los sistemas de control longitudinales, con el controlador
lateral-direccional mostrado en el apendice B, en la figura 3.13 se muestra una simulacion en
la que se tiene el controlador de velocidad 4, el controlador de angulo de trayectoria 6 y el
controlador lateral direccional del apendice B. Puede apreciarse como, a pesar de haber sido
84 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
0 50 100−0.2
0
0.2
0.4
0.6θ
V 1
t [s]0 50 100
0
0.02
0.04
0.06
0.08θ
V 2
t [s]
0 50 1000
0.5
1
1.5x 10
−3
θV 3
t [s]0 50 100
−0.2
0
0.2
0.4
0.6θ
V 4
t [s]
0 10 20 30 40 50 60 70 80 90 1000.6
0.8
1
1.2
1.4
1.6x 10
−3
CT0
t [s]
Figura 3.12: Evolucion temporal de los parametros estimados por la ley de control 4.
disenados separadamente, los tres controladores operan satisfactoriamente de forma conjunta,
consiguiendo un buen seguimiento de las consignas sin interferencias resenables. Asimismo, el
controlador lateral-direccional mantiene el angulo de resbalamiento practicamente nulo en todo
momento.
Para cerrar esta seccion de simulaciones, se va a mostrar el comportamiento sistema de control
de actitud en condiciones mucho mas exigentes, que por otra parte van a ser las condiciones
reales de operacion. Concretamente, se va a mostrar la respuesta del sistema de control de acti-
tud usando como referencias las consignas generadas por el sistema de guiado que se describira
en el capıtulo siguiente. Se trata de unas condiciones de operacion mas exigentes, ya que cada
segundo (esta es la frecuencia de trabajo del guiado) se producen cambios simultaneos en las
referencias de velocidad, angulo de trayectoria y angulo de balance.
El resultado de esta simulacion puede verse en la figura 3.15. Se aprecia como a pesar del
continuo cambio en las consignas de estas tres variables de estado, se tiene un buen seguimiento
de las mismas. Esto facilitara que el sistema de guiado sea capaz de ejecutar con precision la
3.5. RESULTADOS DE SIMULACION 85
0 10 20 30 40 50 60 70 80 90 10015
20
25
30
Va [m
/s]
0 10 20 30 40 50 60 70 80 90 100−10
0
10
20
γ [d
eg]
0 10 20 30 40 50 60 70 80 90 100−50
0
50
φ [d
eg]
Tiempo [s]
0 10 20 30 40 50 60 70 80 90 100−10
0
10
β [d
eg]
Tiempo [s]
Figura 3.13: Evolucion de la velocidad aerodinamica, el angulo de trayectoria, el angulo debalance y el angulo de resbalamiento. La lınea azul es la consigna, ya lınea roja la variable deestado, y en el caso de la velocidad y el angulo de trayectoria, la lınea verde representa la salidadel filtro de la senal de referencia.
0 50 100−2
0
2
t [s]
Cm0 / Cmδ
e
0 50 1000.5
1
1.5
t [s]
Cmα / Cmδe
0 50 1004.5
5
5.5
6
t [s]
Cmq / Cmδ
e
0 50 100−4.7
−4.6
−4.5
t [s]
1 / Cmδe
Figura 3.14: Evolucion de los parametros estimados por la ley de control 6.
86 CAPITULO 3. DISENO DE SISTEMAS DE CONTROL DE ACTITUD
trayectoria de referencia del avion.
Con todas estas simulaciones, pueden comprobarse las ventajas de los sistemas de control
longitudinal que se han desarrollado en esta tesis. Ası, en todos los casos considerados se ha
mostrado un excelente seguimiento de las consignas, junto con un adecuado rechazo de las
perturbaciones introducidas por los acoplamientos entre los tres controladores (que se han
disenado separadamente). Ademas, lo mas importante es que estas caracterısticas se consiguen
sin necesidad de estimar ningun parametro aerodinamico del avion, y que las leyes obtenidas son
validas para cualquier punto de operacion, a la vez que respetan las limitaciones fısicas de las
senales de control. Notese que esto facilita la extension de estas leyes de control a cualquier avion
similar, sin necesidad de identificar modelos ni redisenar las leyes de control, ya que unicamente
serıa necesario un ligero ajuste de ganancias para conseguir las prestaciones deseadas.
3.5. RESULTADOS DE SIMULACION 87
0 50 100 150 200 250 300 350 40010
15
20
25
30
Va [m
/s]
0 50 100 150 200 250 300 350 400−10
−5
0
5
10
γ [d
eg]
0 50 100 150 200 250 300 350 400−40
−20
0
20
40
φ [d
eg]
Tiempo [s]
Estado Referencia
Figura 3.15: Evolucion de la velocidad aerodinamica, el angulo de trayectoria y el angulo debalance, ante consignas calculadas por el sistema de guiado.
Pagina en blanco
88
Capıtulo 4
Diseno de Sistemas de Guiado
Los algoritmos de guiado se han desarrollado, historicamente, para sistemas de armamento y
en particular, misiles. No fue hasta los anos 60 cuando se desarrollaron algoritmos de guiado
para aplicaciones no militares, en concreto para satelites y vehıculos espaciales no tripulados,
motivados por la carrera espacial. En los ultimos anos y debido al crecimiento exponencial de la
investigacion y desarrollo en el campo de los vehıculos autonomos (de todo tipo y en particular
de UAVs), se ha renovado el interes en la creacion y perfeccionamiento de leyes de guiado aptas
para un amplio espectro de misiones.
Si bien para algunos autores el concepto de guiado se aplica al problema de generacion y
control de trayectorias en su totalidad, en este trabajo se entiende como sistema de guiado
aquel sistema cuya mision es generar un vector velocidad (que sera transmitido al sistema de
control de actitud) que asegure que el UAV sigue lo mas fielmente posible una trayectoria de
referencia previamente obtenida.
El diagrama de bloques con las entradas y salidas del sistema de guiado que se va a desarrollar
en este capıtulo se puede ver en la figura 4.1. Como se puede apreciar, se va a hacer uso de
una referencia generada externamente, la cual proporciona la evolucion temporal de la posicion
deseada de la aeronave ~x(t). El problema de generacion de trayectorias de referencia queda
fuera del alcance de esta tesis, por lo que dicha trayectoria se considera como un dato de
entrada. Ası, como se menciono en la seccion 1.2, se ha usado un generador de trayectorias
desarrollado en el Area de Ingenierıa Aeroespacial de la Universidad de Sevilla (ver [Vale 11]),
el cual permite al usuario introducir una secuencia de waypoints deseados, de manera que se
genera una trayectoria basada en tramos rectos (con virajes instantaneos) capaz de optimizar los
segmentos de vuelo entre dichos waypoints. El objetivo del sistema de guiado sera el seguimiento
de esta referencia ~x(t) de la forma mas fiel posible (incluyendo tiempos de paso por cada punto),
incluso en presencia de viento (que se tratara como una perturbacion del sistema).
El sistema de guiado usa esa referencia, junto con las medidas de la posicion, velocidad y
actitud del avion (denotadas por los vectores ~x, ~V y ~φ respectivamente) que proporciona el
89
90 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
sistema de navegacion, para calcular los valores deseados de la velocidad aerodinamica Vref ,
angulo de trayectoria γref y angulo de balance φref . Sera el sistema de control de actitud de
bajo nivel (desarrollado en el capıtulo 3) el encargado de seguir estos comandos para ejecutar
adecuadamente la trayectoria.
Referencia Sistemade guiado
Sistemade controlde actitud
Sensores ySistema deNavegación
Errores
Figura 4.1: Entradas y salidas del sistema de guiado.
Entrando en la estructura de este capıtulo, en la seccion 4.1 se va a revisar el estado del
arte sobre las leyes de guiado existentes en la literatura, poniendo especial enfasis en dos de
las tecnicas seleccionadas en este trabajo: el guiado proporcional y el guiado predictivo. A
continuacion, sera en las secciones 4.2 y 4.3 respectivamente, donde se detallara la formulacion
de estos dos metodos de guiado. Posteriormente, en la seccion 4.4 se mostraran en simulacion
los resultados de aplicar los dos metodos de guiado a varios escenarios de ejemplo, estableciendo
comparaciones entre ambas formulaciones, e incluyendo perturbaciones debidas al viento y a
errores de navegacion. Finalmente, en la seccion 4.5 se va a mostrar una aplicacion de las
tecnicas de guiado predictivo al problema de rendezvous entre vehıculos espaciales. Ası, aunque
este problema se salga del ambito de los sistemas de control de vuelo de aviones, los algoritmos
desarrollados para el guiado de vehıculos espaciales sirvieron de germen para el diseno de la
ley de guiado predictiva de la seccion 4.3. De esta forma, esta seccion servira para entender el
origen de algunos de los metodos posteriormente aplicados a aviones. Notese que se ha ubicado
al final del capıtulo para no interrumpir la lınea natural de desarrollo del sistema de guiado del
avion, aunque el desarrollo de estos algoritmos fuera previo cronologicamente.
4.1. Revision del estado del arte
4.1.1. Leyes de guiado clasicas
Al iniciar una revision de la literatura sobre algoritmos de guiado presentes en vehıculos
aereos no tripulados, lo primero que se puede constatar es que este tipo de leyes nacieron en el
ambito del control de misiles. Por tanto, es en este campo donde puede encontrarse una extensa
bibliografıa, que sirva de base para desarrollar a partir de ellas leyes de guiado especıficas de
4.1. REVISION DEL ESTADO DEL ARTE 91
aviones no tripulados.
Ademas, hay que tener en cuenta que el objeto de la ley de guiado de un misil es, en general, la
persecucion de un blanco, que sigue una trayectoria ~x(t) tıpicamente desconocida. Esto implica
que estas leyes de guiado podrıan aplicarse en el contexto de los aviones no tripulados, conside-
rando como blanco un objeto puntual que siguiera la trayectoria de referencia. Por otro lado,
tambien implica que estas leyes no podran tener en cuenta la trayectoria de referencia mas alla
de dicho blanco virtual, por lo que el comportamiento sera mas reactivo que anticipativo.
En los primeros trabajos relacionados con el guiado de misiles destacan claramente dos tipos
de leyes de guiado (comunmente llamadas leyes clasicas de guiado): leyes de persecucion pura y
leyes de guiado proporcional (tambien conocidas como leyes de navegacion proporcional (PN)).
Ambas leyes parten de la medida del vector de posicion relativo entre el misil y el blanco movil,
de manera que a partir de el se calculan las aceleraciones verticales y horizontales que debe
ejecutar el misil para llevar a cabo la interceptacion. Se puede encontrar una buena base teorica
de estas leyes en [Blak 91].
Concretamente, las leyes de persecucion pura se basan en generar un vector velocidad que
apunta directamente al blanco. Se trata de una estrategia aparentemente logica, sin embar-
go, como se puede ver en [Shne 98a], el gran inconveniente que tiene es que genera excesivas
aceleraciones, lo cual hace que no sea muy adecuada para aviones no tripulados.
Por otra parte, el guiado proporcional nacio como una evolucion de las leyes de persecucion
pura (ver [Adle 56]). Estas leyes se basan en modificar la direccion del vector velocidad de
acuerdo a la rotacion de la lınea que une al perseguidor con el blanco. Para ello, es necesario
definir el concepto de linea de vision (LOS), la cual se define como vector unitario ~λ(t) que une
el perseguidor con el blanco. Como se puede ver en la figura 4.2, si la posicion del perseguidor es
~Rp(t) y la del blanco es ~Rb(t), entonces se define la posicion relativa como ~r(t) = ~Rb(t)− ~Rp(t)
y se tiene ~λ = ~rr, donde r = |~r|.
Figura 4.2: Esquema de la ley clasica de guiado proporcional.
La idea fundamental del guiado proporcional consiste en que para seguir un blanco, se debe
92 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
generar una aceleracion proporcional a la velocidad de cambio de la linea de vision, es decir
~a = Nvcl~λ, (4.1)
donde vcl = −r es la velocidad de acercamiento al blanco y N es una constante de propor-
cionalidad que se puede elegir para ajustar las propiedades de la ley de guiado a una mision
concreta.
El principal inconveniente que presenta el guiado proporcional es que genera una aceleracion en
lugar de una velocidad1. Ademas, no emplea el conocimiento de la posicion futura del blanco,
y no permite incluir restricciones de ningun tipo o acomodar perturbaciones. No obstante,
las aceleraciones generadas no son elevadas (en comparacion con otras leyes de guiado, como
por ejemplo la persecucion pura), ademas de ser una ley de guiado muy robusta y sencilla
de implementar, con un funcionamiento sobradamente probado en la practica. Ademas, existen
variantes que permiten tener en cuenta, por ejemplo, la aceleracion del blanco (PN aumentada),
o que permiten disminuir la sensibilidad a perturbaciones (PN con sesgo). Una discusion de estas
variantes se puede encontrar en [Shne 98b].
Entrando en el campo de las aeronaves no tripuladas, hay que decir que estas leyes han sido
satisfactoriamente aplicadas al guiado de UAVs. Por ejemplo, en [Yama 07] se aplican leyes de
guiado proporcionales para el seguimiento de trayectorias de referencia, mediante la generacion
de waypoints intermedios virtuales que se emplean como blancos para el guiado proporcional.
En [Alex 05] se emplean leyes de persecucion pura combinadas con control adaptativo para
el guiado de UAVs. Por otra parte, en [Park 07] se desarrolla una ley proporcional para un
UAV que permite seguir un punto virtual que recorre la trayectoria de referencia, realizando un
analisis riguroso de la estabilidad del sistema.
En este sentido, en esta tesis se va a exponer una version de la navegacion proporcional
adaptada al problema de guiado del avion con el que se esta trabajando. Como se puede ver en
la seccion 1.2, donde se muestra la arquitectura general del sistema, el sistema de guiado debe
proporcionar al controlador de actitud referencias en velocidad, angulo de trayectoria y angulo
de balance. Ası, se va a proponer una ley de guiado que obtenga estas consignas a partir de las
aceleraciones calculadas mediante la navegacion proporcional, a la vez que se tengan en cuenta
algunas limitaciones fısicas del avion como son las limitaciones estructurales en los virajes o la
entrada en perdida.
4.1.2. Leyes de guiado modernas
Ademas de estas leyes clasicas, en la actualidad se han formulado leyes de guiado (para
misiles, pero aplicables a UAVs) mas complicadas, basadas en principios de control moderno.
1Tengase en cuenta que esta aceleracion tiene que ser traducida a consignas en velocidad que debe seguir elsistema de control de actitud.
4.1. REVISION DEL ESTADO DEL ARTE 93
Por ejemplo, en [Shne 98b] se exponen leyes basadas en algoritmos de control optimo, como
LQR o LQG. Estos algoritmos permiten obtener leyes de guiado optimas respecto a funciones de
coste que se pueden definir de acuerdo a la mision. Otros trabajos como por ejemplo [Savk 03]
emplean algoritmos H∞, que permiten disenar leyes de guiado de precision, no solo optimas,
sino tambien robustas frente a incertidumbres.
Tambien pueden encontrase trabajos donde se aplican tecnicas de sliding modes. Por ejemplo,
en [McGe 06] se muestra un sistema que permite generar caminos para cumplir con una mision
definida por el usuario mediante waypoints, al mismo tiempo que un sistema de guiado basado
spatial sliding surfaces es capaz de mantener el avion en la referencia deseada. Otro ejemplo
puede encontrase en [Jack 08], donde se hace uso de esta tecnica para desarrollar un sistema de
guiado para un pequeno avion no tripulado, realizando ensayos en vuelo y obteniendo resultados
satisfactorios incluso en presencia de viento.
Pueden encontrase otras aproximaciones basadas en tecnicas de control no lineal en ejemplos
como [Ren 04]. En este trabajo, se propone un metodo para el guiado de aviones no tripulados
basado en una funcion de control de Lyapunov (mas conocida como CLF, por sus siglas en
ingles), que permite seguir una trayectoria de referencia, teniendo en cuenta incluso limitaciones
en las velocidades y en los cambios de rumbo demandados.
Uno de los metodos modernos de control que puede ser aplicable a los aviones no tripulados es
el control predictivo [Cama 04]. El control predictivo basado en modelo (conocido como MPC,
por sus siglas en ingles) se origino a finales de la decada de los setenta, aplicado fundamental-
mente al control de procesos industriales, habiendo experimentado un considerable desarrollo
desde entonces. En sus inicios, su aplicacion se reducıa a sistemas con dinamicas lentas, ya que
los procesos de optimizacion involucrados en esta estrategia de control impedıan frecuencias de
control demasiado elevadas. Puede verse el desarrollo de esta tecnica a lo largo de las decadas
de los 80 y 90 en un amplio abanico de aplicaciones que van desde el control de torres de desti-
lacion [Rick 90] hasta el control de plantas solares [Cama 94], considerandose hoy una tecnica
de control totalmente madura.
Hay que tener en cuenta que el termino MPC no se refiere a una estrategia especıfica de control,
sino que engloba un amplio rango de metodos de control basados en un modelo del sistema a
controlar, que les permite obtener predicciones de las variables de estado futuras en funcion del
estado actual y de las acciones de control que se ejecuten a lo largo de un determinado tiempo
(denominado horizonte de control). Para cada tiempo de muestreo, el calculo de las senales de
control se realiza a traves de un proceso de optimizacion de algun tipo de funcion objetivo, que
tiene en cuenta el modelo del sistema para optimizar la evolucion del estado a lo largo de un
horizonte temporal deslizante.
El MPC tiene la enorme ventaja de no ser un mero controlador reactivo basado en errores
medidos, sino que, a diferencia de la navegacion proporcional, es capaz de anticiparse al fu-
turo, optimizando el control del sistema para minimizar en la medida de lo posible el coste
94 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
de operacion. Ademas, permite incluir restricciones tanto en las variables de estado como en
las senales de control (son incorporadas directamente al proceso de optimizacion). Por otra
parte, se pueden emplear algunos metodos de control robusto [Rich 04] que permiten mejorar
considerablemente las prestaciones del sistema en presencia de perturbaciones.
Sin embargo, el principal inconveniente que tiene el control predictivo reside en que el proceso
de optimizacion puede ser computacionalmente costoso, lo cual impide alcanzar frecuencias
de control elevadas. Ası, mientras puede ser directamente aplicado a sistemas lineales, o a
sistemas inherentemente lentos (con suficiente tiempo de calculo entre tiempos de control),
resulta mas difıcil de implementar en sistemas no lineales, en los que los procesos de optimizacion
se complican considerablemente [Hens 98]. Ademas de esto, requiere de un modelo del sistema
bastante preciso, lo cual no siempre esta disponible.
Entrando en la aplicacion del control predictivo en el ambito aeroespacial, puede encontrarse
un gran numero de trabajos dedicados al control de satelites y demas vehıculos espaciales,
ya que el movimiento orbital tiene una dinamica lenta y se tienen modelos muy precisos que
facilitan la prediccion de las variables de estado futuras. Pueden encontrarse trabajos como
[Rich 02], donde se disenan trayectorias optimas para realizar maniobras libres de colision entre
satelites; [Wang 03], donde se aborda el problema del rendezvous y el docking2 en formaciones
de satelites; o [Breg 08], donde se desarrolla un controlador de rendezvous con tolerancia a
fallos en los impulsores.
Precisamente es en el campo del rendezvous de vehıculos espaciales donde se han desarrollado
algunos de los metodos de guiado predictivo empleados posteriormente en UAVs en esta tesis.
Ası, en [Gavi 12], se introduce un esquema de control predictivo, que hace uso de un estimador
de perturbaciones para ejecutar la maniobra de rendezvous de forma robusta. Por otra parte,
en [Vazq 11] se extiende el problema anterior para hacerlo aplicable a satelites equipados con
motores PWM, en los que el modelo linealizado clasico HCW introducido en [Hill 78, Cloh 60]
no es valido, dando lugar a ecuaciones del movimiento no lineales en el control. El problema
de optimizacion no lineal resultante se resuelve mediante linealizaciones sucesivas, partiendo de
una solucion inicial factible calculada con los metodos mostrados en [Gavi 12].
En el campo del control de aviones, la aplicacion del control predictivo resulta bastante in-
novadora, existiendo todavıa pocos ejemplos en los que se aplique esta tecnica al desarrollo de
sistemas de control y guiado de aviones. El problema fundamental radica en que la no linealidad
del modelo complica los procesos de optimizacion y hacen mas difıcil su implementacion. No
obstante pueden encontrarse algunos trabajos como [Kim 02] donde se plantea un proceso de
optimizacion no lineal basado en el metodo del gradiente para el control de trayectorias de
helicopteros no tripulados.
2En astronautica, se define el rendezvous como la maniobra de aproximacion final entre dos vehıculos es-paciales, hasta alcanzar posiciones adyacentes, con velocidad relativa practicamente nula. Una vez concluido elrendezvous, el docking define la maniobra de contacto controlado que acaba con el acoplamiento fısico entre losvehıculos.
4.1. REVISION DEL ESTADO DEL ARTE 95
En otros trabajos como [Bela 07], se propone una ley de guiado para UAVs basada en control
predictivo que permite alcanzar blancos con ciertas condiciones finales especificadas. El modelo
de avion usado en este caso es mucho mas simple, facilitando la resolucion del proceso de
optimizacion.
Tambien pueden encontrarse algunas aplicaciones de MPC para control de actitud de aero-
naves. Por ejemplo, en [Sleg 06] se hace uso de tecnicas de control predictivo no lineal para
disenar el sistema de control de actitud de un avion no tripulado, considerando el modelo com-
pleto de seis grados de libertad (no lineal). El problema de optimizacion no lineal se simplifica
proponiendo una expansion en serie de Taylor que permite obtener una prediccion de los es-
tados futuros en funcion de las senales de control empleadas. Otro ejemplo puede encontrarse
en [Joel 11], donde se aborda el control de actitud de helicopteros no tripulados, de forma que
la no linealidad del modelo se resuelve generando una baterıa de sistemas linealizados para
varios puntos de operacion, aplicando tecnicas de MPC lineal en cada uno de esos puntos. Una
estrategia similar se emplea en [Kevi 06], aplicada en este caso el control longitudinal de un
avion de caza.
Teniendo en cuenta el estado del arte, se va a exponer la estrategia de guiado desarrollada
en esta tesis. La idea esta en disenar un sistema de guiado con dos niveles. El nivel inferior
se va a basar en una evolucion de las leyes de guiado proporcional, adaptadas a aviones no
tripulados. La funcion de este sistema de bajo nivel sera generar consignas de guiado mediante
una ley simple y robusta, que garantice la existencia de al menos una solucion del problema
de guiado en cada instante (aunque esta no sea optima). Este algoritmo (presentado en la
seccion 4.2) permite incluir de forma explıcita limitaciones como la entrada en perdida o la
presencia de lımites estructurales durante los virajes. Esta aproximacion ha sido desarrollada
por el autor de esta disertacion en el seno de un proyecto de colaboracion empresarial, como es
SINTONIA3.
Esta solucion sera empleada para inicializar el algoritmo de guiado predictivo de alto nivel
(descrito en la seccion 4.3), el cual se ha generado a partir de las investigaciones desarrolladas en
el campo del rendezvous de vehıculos espaciales anteriormente mencionadas. Se usara un modelo
de avion de tres grados de libertad, sobre el que se desarrollara el guiado predictivo. El modelo
de la aeronave es no lineal, de manera que no resulta posible obtener de forma explıcita los
vectores de estados futuros en funcion de las senales de control. Para solventar esto, se emplean
los metodos publicados en [Vazq 11], de manera que se linealizara el modelo del avion en torno
a una secuencia de senales de control de referencia, calculadas mediante el guiado proporcional
de bajo nivel. Se consigue ası establecer un proceso iterativo que permite optimizar la solucion
de guiado conseguida por la ley proporcional, manteniendo en todo momento una solucion
factible del problema para ser implementada en caso de no completar el proceso de optimizacion
3Proyecto CENIT subvencionado por el Centro para el Desarrollo Tecnologico Industrial (CDTI), en el queun consorcio de empresas y organismos de investigacion abordaron el diseno de sistemas de control y guiadopara aviones o tripulados orientados al mınimo impacto ambiental.
96 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
en el tiempo asignado. Ademas, se incorporara el estimador de perturbaciones mostrado en
[Gavi 12], consiguiendo un excelente seguimiento de la referencia incluso en presencia de vientos
considerables.
Con todo esto, en la seccion 4.4 se mostraran los resultados de simulacion de ambas leyes de
guiado para distintos escenarios.
Finalmente, se cierra el capıtulo con la seccion 4.5, donde se van a mostrar los resultados
conseguidos aplicando estas tecnicas de control predictivo en otro ambito distinto del guiado de
aviones, como es el caso del rendezvous de vehıculos espaciales. Se trata por tanto de mostrar
el germen de la estrategia de guiado predictivo que constituye uno de los pilares basicos del
sistema de control de vuelo de esta tesis. Por otra parte, desde un punto de vista cronologico,
hay que decir que la ubicacion natural de esta seccion serıa el inicio de este capıtulo, ya que los
resultados que en ella se describen fueron obtenidos antes del diseno del sistema de guiado que
se muestra en las secciones 4.2 y 4.3. Ademas, en ella se detallan algunos conceptos clave como
es el estimador de perturbaciones y la linealizacion explıcita del sistema en torno a la secuencia
de control, que posteriormente fueron usados para el desarrollo del guiado predictivo de aviones.
Sin embargo, se ha optado por ubicar esta seccion al final de este capıtulo para no interrumpir
la secuencia natural de desarrollo del sistema de guiado del avion, al mismo tiempo que permite
ver esta seccion como un apendice con una aplicacion adicional de este metodo.
4.2. Diseno de un Sistema de Guiado Proporcional
Como se ha comentado anteriormente, existen numerosos ejemplos de aplicacion de leyes de
guiado proporcional a aviones no tripulados. Entre estos ejemplos, destaca [Park 04] donde
se usa esta tecnica para desarrollar un sistema de guiado para un avion muy parecido a la
aeronave con la que se esta trabajando en esta tesis. Haciendo uso de experimentos reales en
vuelo, en este trabajo se muestra la bondad del guiado proporcional para seguir todo tipo
de trayectorias rectas y curvas, incluso en presencia de perturbaciones tales como errores del
sistema de navegacion y viento.
La idea basica del guiado proporcional se expone en la figura 4.3, para el caso de movimiento
en el plano horizontal.
Ası, se selecciona un punto que recorre de forma perfecta la trayectoria de referencia (punto
de referencia) y que se encuentra a una cierta distancia (Lt) por delante de la aeronave. En
base al angulo ηhor entre el vector velocidad de la aeronave (~V ) y el vector posicion relativa de
Lt respecto a la aeronave , se genera una orden de aceleracion horizontal ahor (perpendicular a
la velocidad, por lo que genera un cambio de rumbo) como sigue
ahor = NhorV 2
Ltsin ηhor. (4.2)
4.2. DISENO DE UN SISTEMA DE GUIADO PROPORCIONAL 97
Figura 4.3: Guiado proporcional (movimiento en un plano horizontal).
De forma similar, para el movimiento en un plano vertical se calcula el angulo ηver, para generar
una orden de aceleracion vertical aver (perpendicular a la velocidad, por lo que genera un cambio
de angulo de trayectoria) de la forma
aver = NverV 2
Ltsin ηver. (4.3)
En las ecuaciones (4.2) y (4.3), Nhor y Nver representan respectivamente las ganancias horizon-
tal y vertical que deberan ser ajustadas para que el guiado tenga las caracterısticas apropiadas.
Excesivos valores de las ganancia pueden provocar un vuelo inestable con muchas oscilaciones,
mientras que valores bajos de las mismas resultarıan en un guiado poco reactivo a cambios en
la trayectoria de referencia. El valor de Lt tambien debe ser cuidadosamente elegido; un valor
demasiado bajo provocarıa que el sistema fuera muy sensible a cambios bruscos en la trayec-
toria, lo que podrıa causar inestabilidad. Por otro lado, un valor elevado de Lt producirıa un
guiado poco reactivo y excesivamente anticipativo. Los valores adecuados de Nhor, Nver y Lt
dependeran mucho de la respuesta dinamica de la aeronave a los comandos generados por el
guiado, lo que depende a su vez del sistema de control de actitud de bajo nivel.
El sistema de control de actitud no puede aceptar aceleraciones, unicamente usa comandos
que fijen el rumbo deseado (χ), el angulo de trayectoria (γ) o la velocidad de vuelo (V ). En base
a esta limitacion, la forma elegida para implementar (4.2) y (4.3) ha sido generar comandos
para el sistema de control de actitud de una forma discreta en el tiempo. Se elige un tiempo de
muestreo para el sistema de guiado (TG), de forma que cada TG segundos se genera un comando
de cambio de rumbo (∆χ), angulo de trayectoria (∆γ) y velocidad (∆V ). Los comandos ∆χ
y ∆γ se generan aproximando el efecto de la aceleracion (puesto que es perpendicular a la
velocidad) de la siguiente forma
∆χ ≈ ahorV
TG = NhorV
Ltsin ηhorTG, ∆γ ≈ aver
VTG = Nver
V
Ltsin ηverTG. (4.4)
Los comandos de cambio de velocidad se realizan para asegurar que la velocidad de la aeronave
sea la misma que la del punto de referencia que se esta siguiendo (de forma que, idealmente,
ni se aleje ni se acerque, aunque en la practica se alejara levemente debido a las pequenas
98 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
desviaciones respecto a la trayectoria de referencia)
∆V = Vref − V. (4.5)
Con todo esto, puede verse que la aplicacion de la navegacion proporcional a los aviones no
tripulados da lugar a una ley de guiado sencilla y facil de implementar. Sin embargo, tiene
algunas deficiencias que justifican una nueva evolucion del diseno para hacerla mas adecuada
para estos vehıculos. Estos puntos de mejora son:
Las ganancias de esta ley clasica de guiado son estaticas. Puesto que la velocidad de vuelo
influye notablemente en los radios de giro, serıa deseable incluir algun medio de variacion
dinamica de estas ganancias (sobre todo de Nhor) para contabilizar las distintas condiciones
de vuelo.
Del mismo modo, serıa deseable que la distancia al punto de seguimiento del cambiara tambien
en funcion de la velocidad. Se ha constatado que esta distancia es crıtica para la estabilidad
del sistema de guiado, ya que si el avion se acerca demasiado al punto de seguimiento, se
pueden producir oscilaciones excesivas que darıan lugar a la inestabilidad del sistema. Esta
distancia mınima al punto de seguimiento deberıa ser mayor a medida que el avion vuele mas
rapido.
Con esta ley de guiado, la aeronave muestra un comportamiento impredecible si se le deman-
dan virajes instantaneos de 180, lo cual puede ser necesario por ejemplo si se produce una
emergencia y es necesario abortar la mision.
4.2.1. Ley de guiado proporcional basada en fuerzas
Para solventar estos inconvenientes, se va a proponer una adaptacion a la ley de guiado
proporcional clasica mostrada anteriormente. Concretamente, se va a modificar la ley de guiado
horizontal, ya que es esta la que esta asociada a los problemas descritos anteriormente. Notese
que el el plano vertical, la ley original funciona correctamente, ya que las limitaciones fısicas
del avion hacen que siempre se tengan angulos de trayectoria pequenos.
En la ley de guiado clasica, se calcula directamente la aceleracion ahor, usando Lt como un
parametro de diseno, e introduciendo una ganancia horizontal para ajustar la sensibilidad del
sistema (ver ecuacion 4.2). Posteriormente, la aceleracion se integra (4.4) para determinar el
incremento de angulo de rumbo necesario en cada instante, obteniendo ası las consignas para
el sistema de control de actitud.
Esta forma de proceder, tiene el inconveniente de que no se tienen en cuenta las limitaciones
fısicas del avion. Ası hay que considerar que en realidad, la unica manera posible de producir
aceleraciones es a traves de fuerzas, y si unicamente se centra el problema en calcular unas
4.2. DISENO DE UN SISTEMA DE GUIADO PROPORCIONAL 99
aceleraciones necesarias para producir un tipo de viraje, no se tiene la garantıa de que la
aeronave pueda producir las fuerzas necesarias para generar las aceleraciones demandadas.
Lo que se propone en esta evolucion de la ley de guiado proporcional, es proceder de una
forma mas empırica y usar las ecuaciones de la mecanica del vuelo para traducir el problema de
calculo de aceleraciones en uno de calculo de fuerzas, a traves del cual se generen las consignas
adecuadas que permitan guiar a la aeronave satisfaciendo las restricciones de la misma.
Figura 4.4: Esquema de la trayectoria circular calculada por el guiado horizontal.
Se va a considerar que en cada instante de muestreo, en lugar de calcular directamente el
cambio de rumbo necesario, se computara el angulo de balance requerido para que la aeronave
siga una trayectoria circular de radio R que intercepte a la trayectoria de referencia en un punto
deseado (de esta forma, se esta suponiendo que el sistema de control de actitud es capaz de
seguir referencias en angulos de balance). Esta estrategia puede verse en la figura 4.4, donde se
puede ver como el angulo ηhor de la ley original se puede relacionar con el arco recorrido en la
trayectoria circular, cuyo valor es 2ηhor (notese el triangulo isosceles formado por la aeronave,
el punto de interceptacion y el centro de giro).
De este modo, considerando el modelo de tres grados de libertad sin resbalamiento de la
seccion 2.2.2, y suponiendo constantes la velocidad y el angulo de alabeo µ, y considerando
el angulo de trayectoria γ igual a cero, las expresiones (2.52)–(2.54) dan lugar a las siguientes
ecuaciones que describen el viraje circular uniforme de un avion en el plano horizontal
T = D, (4.6)
W
g
V 2
R= L sin µ, (4.7)
W = L cosµ, (4.8)
donde de nuevo T es el empuje, D es la resistencia aerodinamica, L es la sustentacion, W es
el peso, y V es la velocidad aerodinamica del avion. Ademas, teniendo en cuenta que el angulo
de ataque del avion es pequeno, se ha hecho la aproximacion cosα ≈ 1. Por otra parte, como
100 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
se establecio en la seccion 2.2.2, la hipotesis de vuelo simetrico considerada aquı hace que el
angulo de alabeo del avion µ sea igual al angulo de balance φ . Ası, en los sucesivos desarrollos
se trabajara con φ en lugar de µ, ya que el angulo de balance puede ser controlado directamente
por el sistema de control de actitud de bajo nivel.
Hay que tener en cuenta que a diferencia del guiado proporcional clasico, la aceleracion hori-
zontal ahor =V 2
Rahora no es cualquier valor deseado, sino que tiene que satisfacer la ecuacion
(4.7).
Para incluir las posibles restricciones fısicas del avion, se va a introducir en la formulacion el
factor de carga, que se define como n = L/W (como se describira mas adelante, este parametro
resulta de especial interes, ya que en el se pueden resumir las principales limitaciones aerodi-
namicas y estructurales del avion). Ası, se puede ver que en una maniobra de viraje horizontal,
descrita segun las ecuaciones anteriores, el factor de carga es n = L/W = 1/ cosφ, por lo que
dividiendo (4.7) entre (4.8) se obtiene
V 2
gR=
√n2 − 1. (4.9)
De esta expresion se puede obtener el factor de carga necesario para realizar un viraje de
radio R a velocidad V
n =
√
(
V 2
gR
)2
+ 1. (4.10)
De la misma forma, introduciendo la distancia al punto de seguimiento Lt en lugar del radio
de giro, se tiene
n =
√
(
2V 2 sin ηhorgLt
)2
+ 1, (4.11)
estando este factor de carga asociado a un angulo de balance a traves de la relacion
φ = arc cos1
n. (4.12)
Aquı esta la clave de la nueva ley propuesta. En lugar de calcular aceleraciones horizontales
que no tienen por que ser fısicamente posibles, se calcula el factor de carga necesario a partir
del angulo medido ηhor, el cual esta directamente relacionado con el angulo de balance que debe
tener el avion para ejecutar el viraje deseado (el sistema de control de actitud debe encargarse de
controlar este angulo). Hay que decir que factor de carga es un parametro de vital importancia
en un viraje, ya que en el se resumen las limitaciones aerodinamicas y estructurales que tiene
un avion. Ası, el factor de carga esta acotado por los siguientes valores:
4.2. DISENO DE UN SISTEMA DE GUIADO PROPORCIONAL 101
Limitacion estructural: nunca debe superar el valor maximo para el que esta disenada la
estructura del avion (n < nmax). Para ser conservativos, y para evitar angulos de balance
excesivos que provoquen demasiadas interferencias en la dinamica longitudinal, este valor
maximo se va a establecer en:
nmax = 1,3054,
valor que se corresponde con un viraje a 40 de angulo de balance.
Limitacion aerodinamica: como se puede ver en la seccion 2.3.1, existe un valor maximo
del coeficiente de sustentacion del avion (CLmax), a partir del cual se produce la entrada en
perdida. Para evitar que se llegue a este coeficiente de sustentacion durante el viraje se va a
limitar el factor de carga, de manera que a partir de la ecuacion (4.8) se tiene
nW =1
2ρV 2SCL ⇒ n <
ρV 2SCLmax
2W(4.13)
Por otra parte, hay que tener en cuenta que la ecuacion (4.11) presenta un maximo cuando
ηhor = 90, disminuyendo para angulos en el segundo y tercer cuadrante. Para evitar esta
situacion anomala (aunque poco frecuente, ya que en la mayorıa de las situaciones normales
de vuelo ηhor se ubica en el primer o en el cuarto cuadrante), se establece que si cos ηhor <
0, automaticamente se demanda el mayor factor de carga posible. Notese que este algoritmo
permite incluso tratar situaciones en las que se demande un viraje instantaneo de 180.
Con todo esto, el algoritmo de la ley de guiado horizontal propuesta consiste en los siguientes
pasos:
Paso 1: Dados V , Lt y ηhor, calcular el factor de carga necesario, de acuerdo a la ecuacion
(4.11).
Paso 2: Verificar que no se incumplen ninguna de las restricciones (ni aerodinamica ni estruc-
tural). Si no es ası, limitar el factor de carga al valor maximo que satisfaga ambas restricciones.
Paso 3: Si cos ηhor < 0, imponer el maximo factor de carga de acuerdo a las limitaciones del
punto anterior.
Paso 4: Calcular el angulo de balance necesario:
φ = sgn(sin ηhor) arc cos1
n. (4.14)
Notese que la funcion signo es necesaria para definir si el viraje es a izquierdas o a derechas.
Paso 5: Enviar al sistema de control de actitud esta consigna para que se encargue de llegar
a ella y mantenerla.
Como se puede ver en esta formulacion, esta ley de guiado tiene un unico parametro de diseno:
la distancia al punto de seguimiento (Lt). El valor de este parametro afecta considerablemente
102 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
al comportamiento del avion durante el seguimiento de la trayectoria, de forma que con valores
muy grandes se tiende a suavizar mucho los virajes, alejandose de la trayectoria nominal en
misiones con muchas variaciones de rumbo; mientras que en el caso de valores muy pequenos
se generan virajes muy agresivos, llegandose incluso a la inestabilidad del sistema.
En lugar de fijar este parametro en un valor rıgido, se va a permitir que este oscile entre
unos lımites maximos y mınimos, estableciendose estos valores de acuerdo de acuerdo a las
limitaciones fısicas del avion.
Teniendo en cuenta la ecuacion (4.9), el mınimo radio de giro que puede desarrollar una
aeronave a una velocidad de vuelo es
Rmin =V 2
g√
n2max − 1
. (4.15)
Por tanto, en el peor de los casos, la distancia al punto de seguimiento nunca sera menor al
diametro mınimo que puede desarrollar la aeronave durante un viraje, esto es
Lmin = 2V 2
g√
n2max − 1
. (4.16)
En cuanto a la distancia maxima, para evitar suavizar demasiado la trayectoria, se usara el
valor obtenido de la ecuacion anterior, usando un factor de carga n = 1,1. Se ha seleccionado
este valor para que en condiciones normales de operacion (V ≈ 20m/s), la distancia maxima
al punto de seguimiento no supere los 180 metros, ya que de lo contrario la aeronave tenderıa
a realizar los virajes excesivamente interiores.
4.3. Sistema de Guiado basado en Control Predictivo
Una de las ideas fundamentales de la estrategia de control predictivo es ser capaz de predecir
las variables de estado en instantes futuros en funcion de la secuencia de senales de control
empleadas. A partir de aquı, se puede establecer un problema de optimizacion que permita
encontrar la secuencia de senales de control que minimice una determinada funcion de coste, a
la vez que se satisfacen las restricciones del problema.
Para ello, en primer lugar se van a establecer las hipotesis necesarias para dar lugar a un
modelo del movimiento del avion que sirva de base para el diseno del sistema de guiado (esto se
hara en la seccion 4.3.1). Una vez establecido el modelo del sistema, en la seccion 4.3.2 se va a
plantear el problema de prediccion del estado en funcion de las senales de control. Este problema
no resulta trivial, ya que como se vera en las ecuaciones del movimiento del avion (4.27)–(4.30),
el modelo del sistema es no lineal y no se puede calcular de forma simple una secuencia de con-
troles optima. Se resolvera el problema partiendo de una solucion factible (aunque suboptima),
4.3. SISTEMA DE GUIADO BASADO EN CONTROL PREDICTIVO 103
calculada segun el esquema de la seccion 4.2, y luego se mejorara dicha solucion resolviendo
iterativamente el problema de optimizacion linealizado en torno a la solucion inicial.
Ademas, en la seccion 4.3.3 se tendra en cuenta la presencia de incertidumbres en el modelo,
estableciendo un estimador de perturbaciones que permita mejorar la prediccion del estado de
la seccion 4.3.2.
Por otra parte, en la seccion 4.3.4 se analizaran las restricciones presentes en el problema,
para que puedan ser incluidas en la seccion 4.3.5, donde se formalizara el problema de opti-
mizacion, estableciendo asimismo la funcion objetivo que marcara el criterio de eficiencia del
problema
Finalmente, en la seccion 4.3.6 se usaran todos los pasos anteriores para establecer un algo-
ritmo que permita calcular la senal de control en cada instante de muestreo.
El comportamiento de esta estrategia de control se mostrara en la seccion 4.4 donde se ex-
pondran algunos resultados de simulacion.
4.3.1. Modelo de avion
Como se ha mencionado antes, para el desarrollo de una estrategia de control predictivo, es
necesario disponer de un modelo del sistema sobre el que calcular predicciones de las variables
de estado futuras en funcion de las senales de control empleadas. Este modelo causa-efecto debe
representar lo mas fielmente posible el comportamiento del sistema, a la vez que debe resultar
simple, ya que de lo contrario complicarıa el proceso de optimizacion implıcito en la estrategia
de control predictivo, pudiendo llegar a que no fuera implementable en tiempo real debido a la
gran demanda computacional.
Puesto que lo que aquı se esta desarrollando es un controlador de trayectorias, resulta bastante
adecuado usar un modelo de vuelo simetrico de tres grados de libertad (ver seccion 2.2.2), por
lo que este sistema unicamente se va a ocupar de la posicion (dejando la actitud para el sistema
de control de actitud de bajo nivel). Ademas, para hacer abordable el problema, se va a realizar
una simplificacion adicional a las ecuaciones (2.55)–(2.60), de manera que unicamente se van a
trabajar con las ecuaciones cinematicas. Esto es, el modelo de avion a considerar es
d x
d t= V cos γ cosχ+ wx, (4.17)
d y
d t= V cos γ sinχ + wy, (4.18)
d z
d t= −V sin γ, (4.19)
donde x, y, z representan las coordenadas del centro de gravedad del avion respecto al sistema de
referencia topocentrico (expresadas en el sistema topocentrico), V es la velocidad aerodinamica
del avion, γ es el angulo de trayectoria, χ es el angulo de rumbo, y wx y wy son las componentes
104 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
del viento en el sistema topocentrico (se ha considerado nula la componente vertical del viento).
En la figura 4.5 se puede ver un esquema con la definicion de estas variables.
Figura 4.5: Modelo de avion en el guiado predictivo.
Teniendo en cuenta que el control predictivo es por naturaleza discreto, se va a obtener
un modelo discreto del sistema a partir de las ecuaciones (4.17)–(4.19). Existen numerosas
formas de discretizar el problema. En muchos trabajos existentes, (ver por ejemplo [Kang 09])
se desacopla el movimiento vertical del horizontal (esto es, se hace la aproximacion cos γ ≈ 1,
sin γ ≈ γ). Ademas, otra caracterıstica comun de la mayorıa de los trabajos existentes es
que discretizan la trayectoria del avion mediante segmentos rectilıneos, es decir, consideran el
angulo de rumbo χ como una variable de control que se mantiene constante durante todo el
tiempo de muestreo (suponen la existencia de un controlador de rumbo de bajo nivel), y que
puede cambiar instantaneamente de un segmento de vuelo a otro (ver esquema en figura 4.6).
Con estas simplificaciones, pueden obtener un modelo de prediccion muy simple que facilita
considerablemente el proceso de optimizacion.
Figura 4.6: Estrategia de control predictivo basada en tramos rectilıneos.
Sin embargo, estos cambios instantaneos de rumbo introducen imprecisiones en el modelo,
ya que son fısicamente irrealizables por el avion. Ası, en realidad es el controlador de rumbo
4.3. SISTEMA DE GUIADO BASADO EN CONTROL PREDICTIVO 105
de bajo nivel el que se encarga de comandar el angulo de balance necesario para iniciar un
viraje que lleve al avion al nuevo rumbo deseado; sin que el esquema de guiado predictivo tenga
ningun control sobre este viraje.
Para solucionar este problema, en esta tesis se propone un nuevo metodo de guiado predictivo
basado en una discretizacion mas realista de las trayectorias de la aeronave. Ası, en lugar de
discretizar el movimiento del avion mediante segmentos rectos (considerando V , γ y χ como
senales de control), se va a definir la trayectoria como una concatenacion de tramos de curvatura
constante, usando como senales de control la velocidad aerodinamica V , el angulo de trayectoria
γ y angulo de balance φ (ver figura 4.7). Con esto se consigue modelar de una forma mas precisa
el comportamiento del avion, a la vez que se integra el controlador de rumbo en el esquema
predictivo.
Figura 4.7: Estrategia propuesta de control predictivo basada en tramos de curvatura constante.
Aparte de la ventaja que supone desde el punto de vista de la optimizacion (se esta mejorando
el modelo de prediccion), no hay que olvidar que esta estructura de control permite hacer
aparecer de forma explıcita las restricciones operativas del avion en el esquema predictivo, ya
que se pueden relacionar directamente las senales de control con el factor de carga de cada
segmento de vuelo (n = L/W ). Como se menciono en la seccion anterior, se trata de un
parametro de vital, ya que a traves de el se pueden determinar las limitaciones estructurales y
aerodinamicas de un avion (ver [Hull 07]).
Entrando ya en la discretizacion del sistema de ecuaciones (4.17)–(4.19), en primer lugar es
necesario obtener la ley de cambio de rumbo en cada segmento de vuelo. Teniendo en cuenta que
el angulo de balance permanece constante durante todo el periodo de muestreo, la velocidad
de cambio de rumbo se puede extraer del modelo de avion de 3 grados de libertad (2.53)–
(2.54)
dχ
d t=g tanφ
V, (4.20)
donde se ha hecho la simplificacion cos γ ≈ 1 (ya que este angulo sera pequeno durante todo
el vuelo debido a las restricciones operacionales del avion), a la vez que se ha tenido en cuenta
106 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
que µ = φ debido a la hipotesis de vuelo simetrico. Ademas se considera que γ es constante
durante todo el periodo de muestreo. Considerando χk como el angulo de rumbo en el instante
de muestreo tk, la evolucion de dicho angulo durante el periodo que transcurre entre tk y tk+Ts
(siendo Ts el tiempo de muestreo del problema) sera
χ(t) =g tanφ
Vt+ χk. (4.21)
Sustituyendo (4.21) en (4.17)–(4.19), despreciando el efecto del viento e integrando entre los
tiempos tk y tk + Ts se tiene
xk+1 =V 2k cos γkg tanφk
(
sin
(
g tanφkTsVk
+ χk
)
− sinχk
)
+ xk, (4.22)
yk+1 =V 2k cos γkg tanφk
(
cosχk − cos
(
g tanφkTsVk
+ χk
))
+ yk, (4.23)
zk+1 = −Vk sin γkTs + zk, (4.24)
χk+1 =g tanφkVk
Ts + χk. (4.25)
Hay que tener en cuenta que aunque de momento se ha ignorado el viendo para facilitar la
formulacion, posteriormente se introducira como una perturbacion del sistema.
Finalmente, para simplificar el modelo de prediccion (4.22)–(4.25), se va a hacer un cambio
de variables para sustituir la senal de control φ por
κ =g tanφTs
V, (4.26)
de manera que el modelo de prediccion se puede reescribir de la forma
xk+1 =Vk cos γkTs
κk(sin (κk + χk)− sinχk) + xk, (4.27)
yk+1 =Vk cos γkTs
κk(cosχk − cos (κk + χk)) + yk, (4.28)
zk+1 = −Vk sin γkTs + zk, (4.29)
χk+1 = κk + χk. (4.30)
Con esto se ha conseguido discretizar el modelo del avion, permitiendo obtener los valores
futuros del vector de variables de estado x =[
x y z χ]T
en funcion del vector de senales
de control u =[
V γ κ]T
.
4.3.2. Prediccion del estado
Entrando en la prediccion del estado, lo primero que hay que tener en cuenta es la no linealidad
del modelo de avion empleado. Ası, a diferencia de los sistemas lineales en los que se puede
4.3. SISTEMA DE GUIADO BASADO EN CONTROL PREDICTIVO 107
escribir de forma explıcita cualquier estado futuro como una combinacion lineal del estado
actual y de la secuencia de controles empleadas, en este caso se va a tener una dependencia no
lineal entre estados futuros y senales de control.
En algunas referencias como [Gugl 11], se sigue adelante con esta descripcion no lineal del
sistema, estableciendo un problema de optimizacion no lineal para encontrar las senales de
control deseadas (concretamente, en dicho trabajo se hace uso algoritmos geneticos para resolver
el problema de optimizacion). Sin embargo, el inconveniente de la mayorıa de estas tecnicas
es que pueden requerir elevados tiempos de calculo que hagan inviable su implementacion en
tiempo real. Ademas, otra problematica adicional es que no hay garantıas de encontrar al menos
una solucion factible (aunque no sea optima) que se pudiera emplear en caso de llegar al tiempo
lımite de calculo.
En lugar de esto, lo que se propone aquı es linealizar el modelo de avion en torno a una
secuencia de controles de referencia inicial, cuyo calculo se describira en la seccion 4.3.6, de
manera que se pasara a tener un problema linealizado mucho mas facil de abordar. El problema
de control predictivo se debera encargar de encontrar los incrementos de las senales de control
respecto de sus valores iniciales, y al final del proceso se actualizaran las senales, obteniendose
un nuevo control de referencia. Entonces se reiniciara la optimizacion, entrando en un proceso
iterativo que permita sustituir una optimizacion no lineal por una secuencia de optimizaciones
lineales, hasta que se agote el tiempo de calculo permitido. Observese que si dicho tiempo se
agota sin llegar a alcanzar ninguna solucion factible, se podrıa aplicar la inicial.
Comenzando con la prediccion del estado, a partir de la ecuacion (4.30) se puede escribir
la variable de estado χ en el instante k en funcion de la secuencia de controles y del χ en el
instante inicial, esto es
χk =i=k−1∑
i=0
κi + χ0. (4.31)
Introduciendo esto en las ecuaciones (4.27) y (4.28) se llega al siguiente modelo del sistema:
xk+1 = 2Vk cos γkTs
κkcos
(
κk2
+i=k−1∑
i=0
κi + χ0
)
sinκk2
+ xk, (4.32)
yk+1 = 2Vk cos γkTs
κksin
(
κk2
+i=k−1∑
i=0
κi + χ0
)
sinκk2
+ yk, (4.33)
zk+1 = −Vk sin γkTs + zk, (4.34)
χk+1 = κk + χk. (4.35)
El sistema de ecuaciones (4.32)–(4.35) se puede escribir de forma compacta de la siguiente
108 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
manera
xk+1 = fk(Vk, γk, κk, κk−1, . . . , κ0, χ0) + xk, (4.36)
donde se ha definido el vector fk de la forma
fk =
2Vk cos γkTsκk
cos(
κk2+∑i=k−1
i=0 κi + χ0
)
sin κk2
2Vk cos γkTsκk
sin(
κk2+∑i=k−1
i=0 κi + χ0
)
sin κk2
−Vk sin γkTsκk
. (4.37)
De esta forma, se puede ver que los estados futuros dependen no linealmente de la secuencia
de senales de control, pero sı dependen linealmente de los estados anteriores, de forma que se
puede escribir facilmente una ley recursiva de prediccion del estado como sigue
xk+1 =i=k∑
i=0
fi(Vi, γi, κi, κi−1, . . . , κ0, χ0) + x0, (4.38)
habiendose definido fi en (4.37).
Lo que se va a hacer a continuacion, es linealizar el problema en torno a una secuencia de
referencia de senales de control. Ası, se define
Vi = Vi +∆Vi, γi = γi +∆γi; κi = κi +∆κi, (4.39)
donde Vi denota la senal de control de referencia V en el instante i, al igual que γi y κi; mientras
que ∆Vi denota el incremento de esta senal de control respecto al valor de referencia en el dicho
instante, al igual que ∆γi y ∆κi. Por otra parte, la secuencia completa de senales de control se
puede expresar de manera unificada apilando los vectores de senales de control a lo largo del
horizonte de prediccion (Np) en los siguientes “vectores pila”
uS =[
uT0 uT1 · · · uTNp−1
]T
, (4.40)
uS =[
uT0 uT1 · · · uTNp−1
]T
, (4.41)
∆uS =[
∆uT0 ∆uT1 · · · ∆uTNp−1
]T
, (4.42)
donde el ui = [Vi γi κi] es el vector de senales de control en el instante i, ui es el vector de
control de referencia en ese instante, mientras que ∆ui es el vector de incrementos de senales de
control respecto a sus referencias. Con estas definiciones y con la relacion (4.37), puede decirse
que de forma generica fk=fk(uS, χ0).
4.3. SISTEMA DE GUIADO BASADO EN CONTROL PREDICTIVO 109
De esta forma, linealizando los vectores fi de (4.38) en torno a uS, se tiene
xk+1 =
i=k∑
i=0
(
fi(uS, χ0) +∂fi∂uS
(uS, χ0)∆uS
)
+ x0, (4.43)
donde la matriz ∂fi∂uS
(uS, χ0) viene dada por
∂fi∂uS
(uS, χ0) =[
Θ4×2∂fi∂κ0
| Θ4×2∂fi∂κ1
| · · · | ∂fi∂Vi
∂fi∂γi
∂fi∂κi
| Θ4×(Np−1−i)
]
,
(4.44)
donde Θn×m es una matriz n ×m de ceros, y se entiende que todas las derivadas de fi estan
evaluadas en uS y χ0. Notese ademas que a partir de la i-esima submatriz de (4.44) todos sus
elementos son nulos, ya que las senales de control futuras no pueden influir en las variables de
estado pasadas.
A continuacion se detalla el calculo de cada uno de estos terminos de (4.44), que se puede
realizar explıcitamente
∂fk∂Vk
=
2 cos γkTsκk
cos(
κk2+∑i=k−1
i=0 κi + χ0
)
sin κk2
2 cos γkTsκk
sin(
κk2+∑i=k−1
i=0 κi + χ0
)
sin κk2
− sin γkTs
0
, (4.45)
∂fk∂γk
=
−2 Vk sin γkTsκk
cos(
κk2+∑i=k−1
i=0 κi + χ0
)
sin κk2
−2 Vk sin γkTsκk
sin(
κk2+∑i=k−1
i=0 κi + χ0
)
sin κk2
−Vk cos γkTs0
, (4.46)
∂fk∂κk
=
Vk cos γkTs
(
κk cos(κk+χk)−sin(κk+χk)+sin χk
κ2k
)
Vk cos γkTs
(
κk sin(κk+χk)+cos(κk+χk)−cos χk
κ2k
)
0
1
, (4.47)
∂fk∂κi
=
−2 Vk cos γkTsκk
sin(
κk2+ χk
)
sin κk2
2 Vk cos γkTsκk
cos(
κk2+ χk
)
sin κk2
0
0
, i < k. (4.48)
Notese que en (4.47) y (4.48) se ha introducido el termino χk =∑i=k−1
i=0 κi+χ0. Por otra parte,
hay que tener en cuenta que para un segmento de vuelo rectilıneo, se tiene que κ = 0, por lo
que las expresiones (4.45)– (4.48) no pueden ser implementadas en un ordenador debido a la
110 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
division por cero. Sin embargo, esto no supone ningun problema, ya que en realidad todos estos
vectores son continuos y derivables, pudiendose ver que tienen un lımite finito cuando κ → 0.
Por tanto, de cara a la implementacion software, cuando se detecta que algun valor de κ se
acerca a cero, se sustituyen las expresiones (4.45)– (4.48) por aproximaciones de primer orden
en torno a κ = 0. En el apendice C se detalla el calculo de estas aproximaciones.
Introduciendo el vector de estados “apilado” (al igual que se hizo en (4.40)–(4.42))
xS =[
xT1 xT2 · · · xTNp
]T
, (4.49)
la ecuacion de propagacion del estado (4.43) se puede escribir de la siguiente manera
xS = F+Gu∆uS, (4.50)
donde F, Gu vienen dadas por las ecuaciones (4.43) y (4.44)
F =
f0(uS, χ0) + x0
f1(uS, χ0) + f0(uS, χ0) + x0
...
fNp−1(uS, χ0) + · · ·+ f0(uS, χ0) + x0
, (4.51)
Gu =
∂f0∂uS
(uS, χ0)∂f1∂uS
(uS, χ0) +∂f0∂uS
(uS, χ0)...
∂fNp−1
∂uS(uS, χ0) + · · ·+ ∂f0
∂uS(uS, χ0)
. (4.52)
Por ultimo, se va a introducir en el modelo anterior una perturbacion aditiva, que entre otras
cosas, permite modelar el efecto del viento incluido en (4.17)–(4.19), obteniendose el modelo de
prediccion del estado usado en la optimizacion
xS = F+Gu∆uS +GδδS, (4.53)
donde se puede ver que Gδ es una matriz triangular compuesta por bloques de matrices iden-
tidad de la forma (Gδ)ij = I4×3, y δS es un vector de perturbaciones apilado definido de forma
analoga a xS.
4.3.3. Estimador de perturbaciones
Teniendo en cuenta la presencia de incertidumbres en el modelo de prediccion (4.53), especial-
mente debidas al viento, es necesario incorporar un algoritmo de estimacion de perturbaciones
que permita una prediccion mas precisa de las variables de estado en el futuro, mejorando ası
4.3. SISTEMA DE GUIADO BASADO EN CONTROL PREDICTIVO 111
el proceso de optimizacion.
La estructura basica de este algoritmo de estimacion ya se propuso en [Gavi 12], aplicada al
redezvous de vehıculos espaciales. En ese caso, en cada instante de muestreo se estimaban las
perturbaciones del instante anterior mediante la diferencia entre el estado en ese instante y la
prediccion que se hizo en el instante anterior. Esto es
δi = xi+1 − fi(Vi, γi, κi, χi)− xi, para i = 1, ..., k − 1, (4.54)
donde fi se obtiene de (4.37) incorporando χi mediante la ecuacion (4.30).
El problema de esta formulacion es que no tiene en cuenta los posibles retardos en la aplicacion
de las senales de control que introduce el bucle de control de actitud de bajo nivel, por lo que
puede falsearse la estimacion de las perturbaciones aditivas que se esta considerando aquı.
Para solucionar esto, se va incorporar un sobremuestreo que mejore la medida de las pertur-
baciones. Ası durante el periodo de muestreo k (tiempo transcurrido entre tk y tk+1), se van
a tomar Nθ medidas (equidistantes en el tiempo) de las variables de control (V , γ, χ)4. Ası,
denotando ξk,n a la n-esima muestra de la variable ξ durante el periodo de muestreo k, se puede
establecer la siguiente relacion
xk+1 = xk +
j=Nθ−1∑
j=0
fj(Vk,j, γk,j, κk,j, χk,j), (4.55)
donde χk,j =∑p=j−1
p=0 κk,p + χk, y xk+1 denota la prediccion del estado en el instante k + 1
obtenida a lo largo del periodo de muestreo k. Con esta prediccion, se puede establecer la
estimacion del vector de perturbaciones como
δk = xk+1 − xk+1. (4.56)
Asumiendo que las perturbaciones son variables aleatorias normalmente distribuidas, con
media δ y matriz de covarianza Σ, esto es, δ ∼ N6(δ,Σ), se puede usar la ley recursiva de
estimacion de propiedades estadısticas de las perturbaciones mostrada [Gavi 12].
Denotando por δk y Σk a las estimaciones de la media δ y de la varianza Σ en el instante k,
basadas en las medidas de las perturbaciones hasta el instante k − 1, se pueden introducir las
siguientes relaciones
δk =
∑k−1i=0 e
−λ(k−i)δi∑k−1
i=0 e−λ(k−i)
, (4.57)
4Hay que tener en cuenta que aunque el guiado considere a (V , γ, κ) como senales de control, en realidad sonvariables de estado del controlador de actitud de bajo nivel, de manera que su valor no tiene por que coincidircon el valor demandado por el guiado en cada instante.
112 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
Σk =
∑k−1i=0 e−λ(k−i)
(
δi − δk
)(
δi − δk
)T
∑k−1i=0 e−λ(k−i)
, (4.58)
donde λ > 0 es un factor de olvido, cuyo valor se ha fijado en λ = 0,3. Notese que aunque
se haya asumido que las propiedades estadısticas de las perturbaciones son “aproximadamente
constantes”, esta forma de estimacion con factor de olvido serıa tambien adecuada en el caso en
que estas variaran con el tiempo. Notese que se trata de una propiedad importante de cara a la
aplicacion practica de este estimador, ya que la principal fuente de perturbaciones es el viento,
cuyas componentes medias pueden variar a lo largo del tiempo.
Por otra parte, definiendo γk =∑k−1
i=0 e−λ(k−i), y usando la suma de la progresion geometri-
ca
γk =e−λ
(
1− e−λk)
1− e−λ, (4.59)
se pueden definir formulas recursivas para (4.57)–(4.58) de la siguiente manera:
δk =e−λ
γk
(
γk−1δk−1 + δk−1
)
, (4.60)
Σk =e−λ
γk
(
γk−1Σk−1 +(
δk−1 − δk
)(
δk−1 − δk
)T)
, (4.61)
siendo δ0 = 0, Σ0 = 0.
Notese que esta forma de estimar las propiedades estadısticas de las perturbaciones conlleva
importante ahorro de memoria, ya que solo es necesario usar la ultima estimacion de la media
y la covarianza.
4.3.4. Restricciones del problema
A continuacion se van a exponer las restricciones sobre las senales de control consideradas en
este sistema de guiado. Se van a considerar fundamentalmente dos tipos de restricciones:
1. Debido a las limitaciones operativas del avion, existen valores maximos y mınimos de u =[
V γ κ]T
, por lo que se debera garantizar en todo momento que se cumple lo siguiente
umin ≤ uk ≤ umax. (4.62)
Estas restricciones se pueden traducir a las variables de control con las que trabaja el guiado
(∆u) de la siguiente manera
umin − uk ≤ ∆uk ≤ umax − uk. (4.63)
4.3. SISTEMA DE GUIADO BASADO EN CONTROL PREDICTIVO 113
En esta tesis se han considerado las siguientes limitaciones en las senales de control
Vmin = 15m/s Vmax = 30m/s
γmin = −15 γmax = 15
κmin = −0,6540Ts rad κmax = 0,6540Ts rad
(4.64)
2. Teniendo en cuenta que se esta trabajando con una aproximacion del sistema en torno a
una secuencia de control de referencia, se va a limitar el valor absoluto de ∆uk para evitar
que la secuencia de control calculada uS se aleje excesivamente de la secuencia nominal uS,
garantizando ası que la linealizacion siga teniendo validez. De este modo, se considera
−δu ≤ ∆uk ≤ δu, (4.65)
siendo δu =[
δV δγ δκ]T
el vector con los maximos cambios admisibles de las senales
de control en cada iteracion. En esta tesis se han considerado los valores
δV = 1,5Ts [m
s], δγ = 3
π
180Ts [rad], δκ = 6
π
180Ts [rad]. (4.66)
Notese que en la expresion anterior lo que se esta fijando es el maximo cambio de las senales
de control por unidad de tiempo. Ası, es necesario multiplicar por el tiempo de muestreo para
calcular los incrementos maximos durante un intervalo de muestreo.
Hechas estas consideraciones se pueden formalizar las cotas superior e inferior del vector de
senales de control en cada instante de la siguiente manera
max (umin − uk , −δu) ≤ ∆uk ≤ mın (umax − uk , δu) . (4.67)
4.3.5. Funcion objetivo
Para cerrar la formulacion del controlador predictivo, es necesario definir una funcion objetivo,
de forma que su optimizacion dara lugar a la secuencia de senales de control que permitan
a la aeronave ejecutar la mision designada de manera eficiente. Para ello, se debe construir
una funcion que pondere tanto el error de ejecucion de mision como el esfuerzo de control
empleado.
En la formulacion clasica de un controlador predictivo para el seguimiento de una consigna
[Cama 04], se suele usar una funcion de coste en la que se pondera tanto el error cuadratico de
posicion en cada instante de tiempo, como el esfuerzo de control empleado, de manera que la
funcion objetivo es
J(k) =
Np∑
i=1
[
(
xk+i|k − xref k+i
)TR(k + i)
(
xk+i|k − xref k+i
)
]
114 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
+
Np∑
i=1
[
uTk+i−1Q(k + i− 1)uk+i−1
]
, (4.68)
donde xk+j|k = E[xk+j] es la esperanza matematica del vector de estados, esto es, el valor
esperado de xk+j conocido el estado xk. Esta funcion objetivo penaliza el error de cada estado
futuro respecto a su referencia (buscando ası el seguimiento de la consigna), a la vez que incluye
penalizaciones en las senales de control para evitar maniobras demasiado agresivas.
En base a esto, la forma natural de definir la funcion de coste para este problema usar (4.68),
donde xref k+i serıa el vector de estados de la trayectoria de referencia en cada instante de
prediccion. De esta forma, se estarıa priorizando una sincronizacion temporal con la referen-
cia.
Sin embargo, esta forma de proceder puede dar lugar a efectos no deseables que penalicen la
respuesta de avion. Por ejemplo, en la figura 4.8 se representa un caso en el que debido a alguna
perturbacion (como puede ser el viento), en el instante k, la aeronave se ha adelantado respecto
de su referencia xref k. La respuesta ideal del sistema de guiado serıa disminuir la velocidad
paulatinamente hasta sincronizarse con la trayectoria de referencia (de esta forma el avion no
se saldrıa en ningun momento del segmento de vuelo que debe seguir), sin embargo si se usa la
funcion objetivo (4.68), puede ocurrir que se llegue a una solucion con la forma que se muestra
en la figura 4.8, donde se introducen virajes indeseables para alcanzar la sincronizacion mas
rapidamente.
Figura 4.8: Oscilaciones en el sistema de guiado considerando unicamente la sincronizaciontemporal.
Teniendo presente estos efectos, se va a proporcionar una formulacion alternativa que permita
priorizar los objetivos del sistema de guiado, de esta forma en primer lugar se buscara que el
avion siga el camino de referencia, y cuando sea posible se sincronice temporalmente con la
trayectoria de referencia.
Para determinar el error de seguimiento del camino, se va a calcular, para todo el horizonte
de prediccion, la distancia entre la aeronave y el segmento de vuelo que debe seguir. Ası, como
se puede ver en la figura 4.9, se va a considerar que ~xk = (xk, yk, zk) es el vector de posicion del
avion en el instante k, y que en ese instante la trayectoria de referencia es un segmento rectilıneo
que comienza en el punto con vector de posicion ~rk = (rx,k, ry,k, rz,k), siendo su vector director
~vr,k = (vx,k vy,k, vz,k). De esta forma, la distancia δk entre la aeronave y el segmento de referencia
4.3. SISTEMA DE GUIADO BASADO EN CONTROL PREDICTIVO 115
en el instante k viene dada por
δk =~v ∧ (~xk − ~rk)
|~vr,k|=
1
|~vr,k|
0 −vz,k vy,k
vz,k 0 −vx,k−vy,k vx,k 0
(~xk − ~rk) (4.69)
Figura 4.9: Distancia entre el avion y el segmento de vuelo de referencia.
Ademas, hay que tener en cuenta que el vector director del segmento de referencia se puede de-
terminar de manera inmediata mediante el rumbo y el angulo de trayectoria de referencia
~vr,k =
cosχr,k cos γr,k
sinχr,k cos γr,k
− sin γr,k
, (4.70)
siendo γr,k y χr,k los angulos de trayectoria y de rumbo de la trayectoria de referencia en el
instante k.
Introduciendo ahora en vector de estados en la ecuacion (4.69), se puede construir una funcion
objetivo que penalice el cuadrado de la distancia a los segmentos de referencia a lo largo del
horizonte de prediccion, esto es
J1(k) =
Np∑
i=1
(
Vk+i(xk+i|k − rk+i))T
R1,k+i
(
Vk+i(xk+i|k − rk+i))
, (4.71)
donde
Vi =
0 −vz,i vy,i 0
vz,i 0 −vx,i 0
−vy,i vx,i 0 0
0 0 0 0
, rk =
rx,k
ry,k
rz,k
0
, (4.72)
116 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
y R1,k+i es una matriz diagonal con la ponderacion de cada componente del error en el instante
k + i. Notese que no es necesario dividir por |~vr,k|, ya que tal como se ha formulado en (4.70),
este vector tiene modulo unidad.
La funcion objetivo (4.71) resulta muy adecuada para el seguimiento de segmentos rectos,
consiguiendo al mismo tiempo evitar los problemas que se muestran en la figura 4.8. Sin em-
bargo, resulta insuficiente para el problema que se esta tratando aquı, ya que no introduce
ningun tipo de control sobre la velocidad de vuelo, con lo que no se cumplirıan los tiempos de
paso por cada punto de la trayectoria. Ademas, en el caso de virajes, queda indeterminado que
segmento de vuelo escoger (esto es, se podrıa virar tanto a izquierdas como a derechas), ya que
en lo que en realidad penaliza la funcion (4.71) es la distancia a una recta, no a al segmento en
cuestion5.
Teniendo en cuenta estos problemas, se van a incluir terminos adicionales para garantizar los
tiempos de paso por cada punto de la trayectoria. Para aislar el error asociado al tiempo de
paso del error de seguimiento del camino de referencia, se va a proyectar el vector de posicion
del avion en cada instante k sobre el segmento de referencia en ese instante (ver figura 4.10).
De esa manera, en cada instante se puede calcular el error de seguimiento d proyectado sobre
la referencia de la siguiente manera
dk = ~vr,k · (~xk − ~rk)− ~vr,k · (~xrefk − ~rk) = ~vr,k · (~xk − ~xref,k) , (4.73)
donde ~vr,k es el vector director del segmento de referencia en el instante k, como se muestra en
(4.71).
De este modo, se puede penalizar el cuadrado de la distancia entre la aeronave y el punto de
seguimiento, proyectada sobre el segmento de referencia, de la siguiente manera
J2(k) =
Np∑
i=1
(
vk+i(xk+i|k − xref k+i))T
R2,k+i
(
vk+i(xk+i|k − xref k+i))
, (4.74)
donde R2,k+i es de nuevo una matriz diagonal con la ponderacion de cada componente del error
de sincronizacion en el instante k + i, mientras que vk se define de la forma
vk =[
cosχr,k cos γr,k sinχr,k cos γr,k − sin γr,k 0]
. (4.75)
Por ultimo, una vez considerados los errores de seguimiento de trayectoria, se va a incluir en
la funcion objetivo una penalizacion del control para evitar usos abusivos que impliquen un
5En trabajos como [Kang 09] se usa una funcion de coste similar, aunque en ese caso solo se aborda el guiadoen el plano horizontal y no se considera la sincronizacion temporal (se supone un vuelo a velocidad constante),a la vez que se introduce el rumbo en la funcion de coste para garantizar que los virajes se realizan en el sentidocorrecto.
4.3. SISTEMA DE GUIADO BASADO EN CONTROL PREDICTIVO 117
Figura 4.10: Proyeccion de la posicion del avion sobre el segmento de referencia.
mayor coste de mision6. Ası, para que el sistema de guiado no genere cambios bruscos en las
senales de control, se va a incluir una funcion de coste de la forma
J3(k) =
Np−1∑
i=1
(uk+i − uk+i−1)T Qk+i (uk+i − uk+i−1) + (uk − uk)
T Qk (uk − uk) , (4.76)
donde se define uk, como la senal de control medida en el instante k, antes de ejecutar el sistema
de guiado. Tengase en cuenta que aunque el vector u contiene las senales de control del sistema
de guiado, en realidad estas senales son variables de estado del avion que pueden ser medidas
(ya que es el sistema de control de actitud el encargado de seguir las referencias fijadas por
el guiado). Estas medidas se introducen para evitar un salto brusco entre la senal de control
calculada para el instante k y la que se ha medido en ese momento.
Hechas estas consideraciones, se va a definir la funcion objetivo del problema de optimizacion
como la suma de las tres funciones de coste definidas en (4.71), (4.74) y (4.76). Ademas, teniendo
en cuenta la ecuacion de prediccion del estado (4.53), y que E[δ(k + i)] = δ, se puede escribir
la funcion objetivo de forma compacta
J(k) = J1(k) + J2(k) + J3(k) (4.77)
=[
VS
(
Gu∆uS + F+GδδS − rS)]T
R1,S
[
VS
(
Gu∆uS + F+GδδS − rS)]
+[
vS
(
Gu∆uS + F+GδδS − xref ,S
)]TR2,S
[
vS
(
Gu∆uS + F+GδδS − xref ,S
)]
+ [Au(∆uS + uS)− u0,S]T QS [Au(∆uS + uS)− u0,S] ,
donde δS es un vector pila obtenido de concatenar δ Np veces, y se ha definido
VS =
Vk+1
. . .
Vk+Np
, vS =
vk+1
...
vk+Np
, (4.78)
6Hay que tener en cuenta que no tiene sentido penalizar el valor absoluto del vector de senales de control encada instante, ya que se esta partiendo de la existencia de un sistema de generacion de trayectorias que optimizael plan de vuelo para cumplir con una mision dada.
118 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
Ri,S =
Ri,k+1
. . .
Ri,k+Np
,QS =
Qk+1
. . .
Qk+Np
.
(4.79)
Ademas, la matriz Au y el vector u0,S permiten computar las diferencias de las senales de
control entre dos tiempos de muestreo consecutivos, estando definidos de la forma
Au =
Id3×3
−Id3×3 Id3×3
. . .. . .
−Id3×3 Id3×3
3Np×3Np
, u0,S =
uk
0...
0
3Np×1
. (4.80)
En cuanto a los valores de las matrices de sintonizacion que se han descrito, tras numerosas
simulaciones, en esta tesis se han considerado adecuados los siguientes valores
Qi = 30
1δV 2
1δγ2
1δκ2
, (4.81)
R1,i = 10f
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 0
R2,i = 0,1f
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 0
, (4.82)
donde δV , δγ y δκ se definieron en (4.66), y f es un factor introducido para no penalizar los
errores del vector de estados en los primeros instantes de la prediccion (ya que en esos momentos
es donde se pueden tener diferencias mas significativas con la trayectoria de referencia), evitando
ası la aparicion de maniobras bruscas. Este factor se define de la siguiente manera
f =
0 Si i ≤ 3
1 Si i ∈ [4, Np], (4.83)
donde i denota el instante de prediccion.
Por ultimo, hay que tener en cuenta que el calculo de todos los elementos que aparecen en este
problema de optimizacion es explıcito. Esto supone una ventaja de cara a la implementacion
practica, ya que se evita el calculo numerico de las derivadas presentes en la linealizacion,
disminuyendo la carga computacional.
4.3. SISTEMA DE GUIADO BASADO EN CONTROL PREDICTIVO 119
4.3.6. Calculo de la senal de control
Una vez realizada la formulacion del esquema de guiado predictivo, se va a exponer el algoritmo
final que permite el calculo de las senales de control en cada instante de muestreo.
La clave de este algoritmo, a diferencia de otros que se pueden encontrar en la literatura, es
que permite resolver un problema control predictivo no lineal aplicado al guiado de aviones,
sin necesidad de acudir a metodos de optimizacion no lineales. Ası, se usa un metodo iterativo
para resolver problemas linealizados en torno a una solucion de referencia, estando esta solucion
inicial (“hotstart”) proporcionada por otro algoritmo de guiado robusto y fiable como es el guiado
proporcional basado en fuerzas presentado en la seccion 4.2.1. Ademas, la linealizacion realizada
es explıcita, lo que redunda en eficiencia computacional.
Esto permite mejorar las prestaciones del sistema de guiado respecto al guiado proporcional
basado en fuerzas inicial (ya que el guiado predictivo implica una optimizacion de una funcion
de coste), pero manteniendo en todo momento una solucion factible que pueda ser usada en
caso de fallo en el proceso de optimizacion.
El esquema basico del algoritmo puede resumirse en los siguientes pasos:
1. Obtencion de una solucion inicial.
Se tienen dos metodos para calcular esta solucion inicial, en funcion de si existe un calculo
anterior del sistema de guiado predictivo o no.
a) Guiado Proporcional: si no existe ninguna trayectoria inicial disponible, se ejecuta en
simulacion de forma iterativa el algoritmo de guiado proporcional descrito en la sec-
cion 4.2.1.
1) A partir de la medida del estado, se calculan las senales Vk, γk y φk segun la ley de
la seccion 4.2.1.
2) Usando las ecuaciones (4.22)–(4.25), se calculan las variables de estado estimadas
en el instante k + 1.
3) A partir de estas nuevas variables de estado, se vuelve a aplicar el algoritmo de
guiado proporcional para calcular las senales de control en el instante k + 1.
4) Se sigue iterando de esta forma hasta llegar al horizonte de prediccion. El resultado
es una secuencia de senales de control uk, . . . ,uk+Np−1.
b) Guiado Predictivo: si existe una solucion anterior del algoritmo de guiado predictivo, se
realiza un desplazamiento de la secuencia de controles anterior, de forma que uk+i =
uk+i+1 (donde ui denota el vector de control calculado en la ejecucion anterior del
controlador predictivo para el instante i ).
2. Linealizacion del problema a partir de la secuencia inicial de controles.
120 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
Usando los metodos de la seccion 4.3.2, se linealizan las ecuaciones del movimiento del avion,
llegando a la ecuacion de prediccion (4.53).
3. Resolucion del problema de optimizacion.
Considerando el modelo de prediccion (4.53), las restricciones (4.63) y (4.65) y la funcion
objetivo (4.77), se puede establecer el siguiente proceso de optimizacion
mın∆uS
J(xk,∆uS, δS) (4.84)
s.a. max (umin − uk , −δu) ≤ ∆uk ≤ mın (umax − uk , δu) ,
umin − uk ≤ ∆uk ≤ umax − uk.
En caso de que el proceso de optimizacion resulte fallido, se interrumpe este algoritmo, y se
implementan las senales de control generadas por la ultima iteracion factible, o en su defecto,
por el guiado proporcional.
La secuencia de control final sera uS = uS +∆uS, donde ∆uS es la solucion del problema
de optimizacion anterior.
4. Actualizacion de la condicion inicial e iteracion.
Se toma la solucion del proceso de optimizacion anterior (uS) como secuencia inicial de senales
de control. Se vuelve al punto 2 para linealizar el problema en torno a esta nueva solucion
inicial. Se vuelve a optimizar y se sigue iterando hasta converger o hasta alcanzar un numero
maximo de iteraciones.
Paralelamente a este proceso, se debe ejecutar el algoritmo de estimacion de perturbaciones
de la seccion 4.3.3, de forma que durante el proceso de optimizacion se disponga de la medida
de la prediccion del vector de perturbaciones.
Para ilustrar como este algoritmo permite mejorar la solucion inicial obtenida con el guiado
predictivo de la seccion 4.2.1, a continuacion se va a mostrar en detalle la evolucion de la
solucion de guiado obtenida a lo largo del proceso iterativo. Ası, para una posicion concreta
de la aeronave, se van a exponer cada una de las trayectorias predichas tanto por la solucion
inicial de guiado proporcional, como por las distintas iteraciones de guiado predictivo.
De este modo, en las figuras 4.11 y 4.12 se muestra el perfil horizontal y el vertical de cada
una de las soluciones de guiado obtenidas a lo largo del proceso iterativo, para una posicion
concreta de la aeronave (se ha seleccionado una condicion de vuelo exigente, en la que la
aeronave tiene que realizar un viraje en subida). En este caso, la iteracion inicial (obtenida
por el guiado proporcional) genera una trayectoria que es capaz de seguir la referencia, aunque
en las esquinas se aleja de la misma, debido a que unicamente se centra en el blanco virtual
de seguimiento. Una vez establecida esta solucion inicial, se puede apreciar como el guiado
predictivo va ajustando cada vez mas la trayectoria para aproximarla a la referencia. Ası, se
4.3. SISTEMA DE GUIADO BASADO EN CONTROL PREDICTIVO 121
−250 −200 −150 −100 −50 0
100
150
200
250
300
350
y [m]
x [m
]
ReferenciaPunto inicialLey ProporcionalIteracion 1Iteracion 2Iteracion 3Iteracion 4Iteracion 5Iteracion 6
Figura 4.11: Perfil horizontal de las trayectorias calculadas por el sistema de guiado a lo largode las distintas iteraciones, para una posicion concreta de la aeronave.
100 150 200 250 300 350 400
44
45
46
47
48
49
50
51
x [m]
h [m
]
ReferenciaPunto InicialLey ProporcionalIteracion 1Iteracion 2Iteracion 3Iteracion 4Iteracion 5Iteracion 6
Figura 4.12: Perfil vertical de las trayectorias calculadas por el sistema de guiado a lo largo delas distintas iteraciones, para una posicion concreta de la aeronave.
122 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
puede ver como en las ultimas iteraciones, se obtiene un excelente seguimiento, con unos virajes
mucho mas cenidos que permiten ajustarse mas fielmente a la trayectoria requerida.
Para comprobar como varıa el coste a lo largo del proceso iterativo, en la figura 4.13 se
presenta la variacion de la funcion de coste mostrada en (4.77) para cada paso de la iteracion.
Se aprecia como el caso correspondiente al guiado proporcional tiene un coste notablemente
por encima de los demas, ya que este algoritmo de guiado no incorpora ningun algoritmo
de optimizacion. A partir de ahı, se puede ver como en cada paso, el guiado predictivo va
disminuyendo sensiblemente el coste, estabilizandose este a partir de la cuarta iteracion.
0 1 2 3 4 5 60
2000
4000
6000
8000
10000
12000
14000
16000
18000
Iteraciones
Fun
cion
de
cost
e
Figura 4.13: Evolucion del valor de la funcion de coste a lo largo del proceso iterativo. Elprimer punto (iteracion 0) se corresponde con el coste correspondiente a la solucion inicialproporcionada por el guiado proporcional.
4.4. Resultados de simulacion
En esta seccion se van a realizar distintas simulaciones para evaluar las prestaciones de los
sistemas de guiado disenados en este capıtulo. Aunque los dos sistemas desarrollados son com-
plementarios, y estan disenados para operar de forma conjunta, las distintas simulaciones se
van a plantear de forma comparativa. Ası, se van a establecer distintos escenarios, en los cuales
se simulara el comportamiento del avion operando tanto con el sistema de guiado predictivo
como con el guiado proporcional basado en fuerzas.
En todos los casos se usara el modelo de avion no lineal descrito en el capıtulo 2, operando con
4.4. RESULTADOS DE SIMULACION 123
los sistemas de control de actitud mostrados en el capıtulo 3 (concretamente, para la velocidad
aerodinamica se usara la ley de control 4, mientras que para el angulo de trayectoria se empleara
ley de control 6), ademas del controlador lateral-direccional del apendice B.
Por otra parte, para evaluar las prestaciones de estos sistemas, se va a proponer la siguiente
baterıa de simulaciones:
Considerando una mision nominal, se analizara el comportamiento del avion con cada sistema
de guiado. Se evaluara el seguimiento de la referencia, ası como la sincronizacion temporal
con la misma.
Posteriormente, se analizara la respuesta del sistema volando la misma trayectoria de refe-
rencia, e incluyendo ademas viento variable y simulando errores en el sistema de navegacion.
Se comprobara ası la robustez del sistema en un escenario adverso mas realista.
Por ultimo, para evaluar el comportamiento de los sistemas de guiado ante cambios agresivos
en la trayectoria de referencia (como podrıa ocurrir al abortar una mision), se va a analizar
la respuesta del sistema ante un viraje de 180o, en presencia de viento y errores en el sistema
de navegacion.
La mision nominal que se va a considerar en primer lugar consiste en un patron de reconoci-
miento alrededor de la base de operaciones de la aeronave, la cual ha sido obtenida mediante el
generador de trayectorias descrito en [Vale 11]. En la figura 4.14, se muestra el perfil horizontal
de la mision, mientras que en la figura 4.15 se puede ver un esquema tridimensional de la misma.
Como se puede constatar, se trata de una mision poco suave, con numerosos cambios de rumbo
y de altura.
Considerando en primer lugar el sistema de guiado proporcional basado en fuerzas exclusiva-
mente (denotado en las figuras por GPBF), en la figura 4.16 se puede ver la vista en planta
de la mision y del camino seguido por la aeronave. En lıneas generales, se puede ver que el
seguimiento es bastante bueno, manteniendo una trayectoria practicamente indistinguible de la
referencia durante la mayor parte del vuelo. Se puede ver tambien como se hacen los virajes
excesivamente interiores, ya que el sistema de guiado “ve anticipadamente” el viraje del blanco
movil virtual.
Si se analiza ahora el seguimiento en el perfil vertical (figura 4.17), se aprecia un buen se-
guimiento de los tramos de vuelo a nivel constante (salvo pequenos errores producidos por los
efectos de los virajes), aunque muestra un error mas notable en el seguimiento de los ascensos
y descensos. De nuevo esto es debido al efecto del blanco virtual, que hace que la aeronave se
anticipe a los cambios, perdiendo la senda de subida/descenso.
No obstante, como se puede ver en la figura 4.18 donde se tiene una vision tridimensional
de la mision, hay que decir que la respuesta de este sistema es muy satisfactoria, ya que con
una ley simple y facil de implementar, se consigue un seguimiento adecuado de la mision de
referencia.
124 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
−1000 −800 −600 −400 −200 0 200 400 600 800 1000−1000
−800
−600
−400
−200
0
200
400
600
800
1000
y [m]
x [m
]
Figura 4.14: Vista en planta de la mision de referencia.
−1000−500
0500
1000
−1000−800−600−400−200020040060080020
30
40
50
60
70
80
y [m]x [m]
h [m
]
Figura 4.15: Vista tridimensional de la mision de referencia considerada.
Como es de esperar, donde se observan peores prestaciones del sistema de guiado proporcional
es en la sincronizacion temporal con la referencia. Debido a su diseno, la velocidad comandada
por el sistema de guiado proporcional es la del punto movil de seguimiento, por lo que este
sistema no ofrece mecanismos de sincronizacion adecuados. En la figura 4.19 se puede ver la
evolucion temporal de las coordenadas espaciales del avion, en relacion con la trayectoria de
referencia. Se puede comprobar que el avion es capaz de seguir el perfil de la mision, pero
va acumulando retrasos, que hacen que la trayectoria del avion este desfasada respecto de la
4.4. RESULTADOS DE SIMULACION 125
−800 −600 −400 −200 0 200 400 600 800−1000
−800
−600
−400
−200
0
200
400
600
800
1000
y [m]
x [m
]
Referencia GPBF Inicio
Figura 4.16: Vista en planta del camino seguido por el avion, usando el sistema de guiadoproporcional. No se han considerado perturbaciones.
referencia. Ası, en el instante de llegada a la base, se puede medir un retraso de 30 segundos
con respecto a un tiempo total de mision de 500 segundos.
Pasando a evaluar la respuesta del avion usando el sistema de guiado predictivo (denotado
en las figuras por GMPC), en la figura 4.20 se muestra de nuevo la vista en planta del camino
seguido por el avion. Se aprecia ahora un excelente seguimiento de la referencia, diferenciandose
del caso anterior en las visibles mejoras que se pueden ver en los virajes, donde la trayectoria
del avion se mantiene en todo momento mucho mas cerca de la referencia. Se puede constatar
ası el efecto de la estrategia de control predictivo, ya que a diferencia del caso anterior, donde
unicamente se buscaba la interceptacion de un blanco movil adelantado, ahora se esta tratando
de optimizar el seguimiento de la referencia durante todo el horizonte de prediccion, lo cual se
traduce en maniobras mas cenidas y ajustadas a la referencia.
La mejora introducida por el sistema de guiado predictivo puede verse tambien en el se-
guimiento de la referencia en el perfil vertical (figura 4.21). Se aprecia ahora como el guiado
predictivo permite seguir fielmente los tramos de ascenso y descenso (notese la diferencia con
la figura 4.17). Como se puede ver en la figura 4.22 (donde se muestra una vista tridimensional
de la maniobra), unicamente se producen ligeros errores en altura durante los virajes (tengase
en cuenta que durante los virajes se produce una inclinacion de la sustentacion, dando lugar a
un desequilibrio transitorio de las fuerzas verticales que se encarga de compensar el controlador
de angulo de trayectoria).
126 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
−1000 −500 0 500 100020
30
40
50
60
70
80
90
x [m]
h [m
]
−1000 −500 0 500 100020
30
40
50
60
70
80
90
y [m]
h [m
]
Referencia GPBF Inicio
Figura 4.17: Perfil vertical del camino seguido por el avion, usando el sistema de guiado pro-porcional. No se han considerado perturbaciones.
−1000−500
0500
1000
−1000−500
0500
100020
30
40
50
60
70
80
90
y [m]x [m]
h [m
]
Referencia
GPBF
Inicio
Figura 4.18: Vista tridimensional del camino seguido por el avion, usando el sistema de guiadoproporcional. No se han considerado perturbaciones.
4.4. RESULTADOS DE SIMULACION 127
0 50 100 150 200 250 300 350 400 450 500−1000
0
1000
x [m
]
0 50 100 150 200 250 300 350 400 450 500−1000
0
1000
y [m
]
0 50 100 150 200 250 300 350 400 450 5000
50
100
Tiempo [s]
h [m
]
Referencia GPBF
Figura 4.19: Evolucion temporal de la posicion del avion usando el sistema de guiado propor-cional. No se han considerado perturbaciones.
−800 −600 −400 −200 0 200 400 600 800−1000
−800
−600
−400
−200
0
200
400
600
800
1000
y [m]
x [m
]
Referencia GMPC Inicio
Figura 4.20: Vista en planta del camino seguido por el avion, usando el sistema de guiadopredictivo. No se han considerado perturbaciones.
128 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
−1000 −500 0 500 100020
30
40
50
60
70
80
90
x [m]
h [m
]
−1000 −500 0 500 100020
30
40
50
60
70
80
90
y [m]
h [m
]
Referencia GMPC Inicio
Figura 4.21: Perfil vertical del camino seguido por el avion, usando el sistema de guiado pre-dictivo. No se han considerado perturbaciones.
−1000
−500
0
500
1000
−1000−500
0500
100020
30
40
50
60
70
80
90
y [m]x [m]
h [m
]
Referencia
GMPC
Inicio
Figura 4.22: Vista tridimensional del camino seguido por el avion, usando el sistema de guiadopredictivo. No se han considerado perturbaciones.
Donde sin duda se puede ver la mejora del sistema de guiado predictivo es en el seguimiento
temporal de la referencia. En la figura 4.23 se representan las evoluciones temporales de las
coordenadas x, y y de la altura h de la aeronave usando este sistema de guiado. Se puede ver
claramente como el guiado propuesto aquı es capaz de seguir fielmente la trayectoria, a la vez
4.4. RESULTADOS DE SIMULACION 129
0 50 100 150 200 250 300 350 400 450 500−1000
−500
0
500
1000
x [m
]
0 50 100 150 200 250 300 350 400 450 500−1000
−500
0
500
1000
y [m
]
0 50 100 150 200 250 300 350 400 450 5000
50
100
Tiempo [s]
h [m
]
Referencia GMPC
Figura 4.23: Evolucion temporal de la posicion del avion usando el sistema de guiado predictivo.No se han considerado perturbaciones.
que permite una sincronizacion con la misma, cumpliendo los tiempos de paso con desfases
medios inferiores a un segundo.
A continuacion se va a analizar la respuesta en un entorno mas realista. Para ello, se van a
introducir en el sistema errores asociados al sistema de navegacion, lo cual hara que tanto el
sistema de guiado como el de control de actitud de bajo nivel perciban ruido en las medidas de
posicion, velocidad y actitud.
Como se detallara en el capıtulo 6, el sistema de navegacion del avion es en esencia un filtro
de Kalman que incorpora las medidas de la Unidad de Medidas Inerciales (IMU) y del GPS.
Lo que hace este filtro es compensar la deriva que van adquiriendo las medidas de la IMU
(debido a la integracion de las medidas de los acelerometros), con las medidas de posicion
y velocidad del GPS, que, aunque esta exento de deriva, sus medidas siguen teniendo cierta
incertidumbre.
Con todo esto, se va a considerar que los errores del sistema de navegacion se pueden modelar
como un proceso estocastico, de modo que se anadira ese ruido a las respectivas variables
de estado que se obtienen al integrar las ecuaciones del movimiento del avion. El modelo el
proceso estocastico se puede ver en la figura 4.24. Como se puede ver, se trata de un ruido
gaussiano de media nula y varianza similar a la que ofrecen la IMU o el GPS, el cual es
integrado para dar lugar a la senal de error. Ademas, se han incorporado saturaciones en la
130 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
integracion, seleccionadas de acuerdo con la precision del GPS, para que durante el proceso de
integracion no se adquiera una deriva demasiado grande (con esto se modela el efecto del filtro
de Kalman, que elimina la deriva de las medidas obtenidas de los acelerometros, usando el GPS
para compensar).
noise
1
Integrator
1
sGaussian Noise
Generator
Gaussian
1
> 0
Figura 4.24: Modelo del proceso estocastico usado para modelar los errores introducidos por elsistema de navegacion.
Ademas, se va a simular el avion en unas condiciones con viento severo, de velocidad y direccion
variable. Se va a considerar un viento horizontal velocidad media del 20% de la velocidad de
vuelo nominal del avion, lo cual supone un importante reto para los sistemas de guiado. Ademas,
al igual que se hizo con las perturbaciones del sistema de navegacion, se anadira a la velocidad
y direccion del viento una senal de error (modelada por un proceso estocastico), consiguiendo
simular una condicion de vuelo mas real, con viento irregular.
En la figura 4.25 se puede ver la evolucion temporal de las componentes del modulo de la
velocidad del viento, ası como de la direccion hacia donde sopla. Teniendo en cuenta que la
velocidad nominal de vuelo del avion ronda los 20m/s, puede decirse que se trata de una
perturbacion importante, alcanzandose en algunos momentos rachas de viento que suponen el
25% de la velocidad de vuelo.
Entrando a analizar el comportamiento del sistema en presencia de estas perturbaciones, a
continuacion se van a mostrar los resultados obtenidos usando el sistema de guiado desarrollado
en esta disertacion. Para no alargar excesivamente esta seccion, unicamente se van exponer los
resultados obtenidos con el sistema de guiado predictivo.
En primer lugar, en la figura 4.26 se muestra la vista en planta de la trayectoria seguida por
la aeronave. Se puede ver el enorme parecido con la trayectoria en condiciones de simulacion
nominales, mostrandose al igual que en el caso anterior un excelente seguimiento. Donde pueden
apreciarse mas los efectos de las perturbaciones es sin duda en la figura 4.27, donde se refleja el
perfil vertical de la mision. Puede verse ahora un aumento de las oscilaciones en los tramos a ni-
vel constante, las cuales son debidas al ruido introducido por el sistema de navegacion. Ademas,
el efecto del viento se deja notar en los tramos mas agresivos, en los que se producen ascensos
y virajes al mismo tiempo. Ası, en la figura 4.28, donde se muestra una vista tridimensional de
la mision, se puede ver como existe un ascenso en viraje al final del patron de reconocimiento,
4.4. RESULTADOS DE SIMULACION 131
0 50 100 150 200 250 300 350 400 450 5002
3
4
5
|Vw
| [m
/s]
0 50 100 150 200 250 300 350 400 450 50010
15
20
25
30
35
Dire
ccio
n [d
eg]
tiempo [s]
Figura 4.25: Evolucion temporal de la velocidad y direccion del viento.
−800 −600 −400 −200 0 200 400 600 800−1000
−800
−600
−400
−200
0
200
400
600
800
1000
y [m]
x [m
]
Referencia GMPC Inicio
Figura 4.26: Vista en planta del camino seguido por el avion, usando el sistema de guiadopredictivo. Se han considerado errores del sistema de navegacion, ası como el modelo de vientode la figura 4.25.
en el que la trayectoria del avion acumula mas errores de seguimiento.
Finalmente, la sincronizacion con la trayectoria de referencia se muestra en la figura 4.29. Se
puede ver como a pesar de las condiciones de vuelo adversas, el sistema de guiado es capaz de
mantener la sincronizacion con una precision excelente. Se aprecia por tanto el efecto del esti-
132 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
−1000 −500 0 500 100020
30
40
50
60
70
80
90
x [m]
h [m
]
−1000 −500 0 500 100020
30
40
50
60
70
80
90
y [m]h
[m]
Referencia GMPC Inicio
Figura 4.27: Perfil vertical de la trayectoria seguida por el avion, usando el sistema de guiadopredictivo. Se han considerado errores del sistema de navegacion, ası como el modelo de vientode la figura 4.25.
−1000
−500
0
500
1000
−1000−500
0500
100020
30
40
50
60
70
80
90
y [m]x [m]
h [m
]
ReferenciaGMPCInicio
Figura 4.28: Vista tridimensional de la trayectoria seguida por el avion, usando el sistema deguiado predictivo. Se han considerado errores del sistema de navegacion, ası como el modelo deviento de la figura 4.25.
mador de perturbaciones, capaz de detectar los cambios en la velocidad del viento, permitiendo
al guiado predictivo hacer las correcciones necesarias.
Por ultimo, se va a ensayar el sistema de guiado en una condicion de vuelo mas severa. Ası, en
4.4. RESULTADOS DE SIMULACION 133
0 50 100 150 200 250 300 350 400 450 500−1000
−500
0
500
1000
x [m
]
0 50 100 150 200 250 300 350 400 450 500−1000
−500
0
500
1000
y [m
]
0 50 100 150 200 250 300 350 400 450 5000
50
100
Tiempo [s]
h [m
]
Referencia GMPC
Figura 4.29: Evolucion temporal de la posicion del avion usando el sistema de guiado predictivo.Se han considerado errores del sistema de navegacion, ası como el modelo de viento de la figura4.25.
lugar de proponer una trayectoria suave con angulos de virajes que pueden ser llevados a cabo
sin problemas, se va a exigir que la aeronave realice un viraje de 180o. Notese que se trata de un
cambio de referencia bastante exigente, que implica llevar a la aeronave a sus limitaciones en
viraje. Por otra parte, tambien supone un reto para cualquier estrategia de guiado predictivo.
Hay que tener en cuenta que las ecuaciones del movimiento son no lineales en el rumbo, y lo
que se esta imponiendo aquı es un cambio radical en el rumbo requerido, lo cual pondrıa en
apuros a cualquier algoritmo de optimizacion debido a la dificultad para encontrar soluciones
factibles del problema. En cambio, con la estrategia propuesta aquı, se hace un calculo de una
solucion inicial factible haciendo uso de una ley de guiado con una robustez comprobada, como
es el guiado proporcional.
El resultado de esta simulacion puede verse en la figura 4.30, donde se muestra la vista en
planta de la trayectoria seguida por el avion. Como es de esperar, se alcanzan errores visibles, ya
que la referencia impuesta es sencillamente imposible de volar, sin embargo el sistema de guiado
es capaz de desarrollar un viraje cerrado (satisfaciendo las limitaciones fısicas de la aeronave),
que devuelve el avion a la trayectoria de referencia.
Con todas estas simulaciones, se pueden apreciar las principales contribuciones del sistema de
guiado propuesto en esta disertacion. Ası, basandose en el seguimiento en condiciones nominales,
puede verse como la estrategia de control predictivo permite un seguimiento mucho mas cenido
134 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
−10 0 10 20 30 40 50 60 70−200
0
200
400
600
800
1000
1200
1400
y [m]
x [m
]
Viraje 180 deg
Figura 4.30: Maniobra con viraje de 180
de la referencia, sobre todo en los virajes, donde supera claramente a las estrategias clasicas de
guiado basadas en el seguimiento de blancos virtuales.
Por otra parte, el diseno propuesto del guiado predictivo permite una excelente sincronizacion
con la trayectoria de referencia, garantizando errores mınimos en los puntos de paso durante la
mayor parte de la mision. Ademas, el propio diseno del sistema hace que esta sincronizacion se
consiga sin sacrificar en ningun momento el seguimiento de la referencia.
Ademas, otra de las grandes ventajas de este sistema es que resuelve el problema de encon-
trar soluciones factibles, inherente al control predictivo no lineal. Ası, existen otros trabajos
en los que se desarrollan sistemas de guiado basados en control predictivo, como por ejemplo
[Kang 09]. Sin embargo, en la mayorıa de estos casos se ataca el problema proponiendo metodos
de optimizacion no lineales, que no tienen por que garantizar soluciones factibles. Por el contra-
rio, la estrategia propuesta aquı parte siempre de una solucion factible del problema, calculada
con una ley que da lugar a una trayectoria no optimizada, pero que garantiza la disponibilidad
de una solucion para cumplir la mision.
Ademas, todas estas ventajas se han conseguido con una ley simple, ya que toda la linealizacion
respecto a la secuencia de control nominal es explıcita, de forma que unicamente tiene que
resolverse un problema de optimizacion cuadratica en cada iteracion.
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 135
4.5. Aplicaciones del Control Predictivo para el Guiado
de Vehıculos Espaciales
En esta seccion se va a mostrar una aplicacion de los metodos de guiado predictivo descritos
anteriormente para tratar un problema de guiado de vehıculos espaciales. Concretamente, se
va a estudiar la maniobra de rendezvous (es decir, el encuentro controlado en orbita) entre un
vehıculo perseguidor activo y un blanco pasivo. Como se menciono en la introduccion de este
capıtulo se trata de una maniobra crıtica, en la que se debe guiar con precision el vehıculo
perseguidor hasta un punto de atraque en un vehıculo objetivo, garantizando en todo momento
que la maniobra se lleva a cabo sin colisiones, y minimizando en la medida de lo posible el
consumo de combustible.
Se trata pues de un problema idoneo para usar una estrategia de control predictivo, ya que
se pueden incorporar de manera natural las restricciones y la optimizacion del consumo en el
controlador de trayectoria, al mismo tiempo que las ecuaciones que describen el movimiento
orbital permiten una prediccion precisa del movimiento relativo entre vehıculos.
Por otra parte, hay que tener en cuenta que aunque el problema de guiado de vehıculos
espaciales se salga del ambito de los sistemas de control y guiado de aviones, los metodos
de control desarrollados en esta seccion (los cuales han sido publicados en [Gavi 10, Gavi 12,
Vazq 11]) han servido de punto de partida para el diseno del sistema de guiado predictivo
mostrado en la seccion 4.3.
Antes de comenzar a tratar el problema, se va a hacer una breve revision del estado del arte,
ya que la revision de la literatura realizada en la introduccion se centro fundamentalmente en
el problema de guiado de aviones. Ası, en primer lugar hay que decir que el rendezvous de
vehıculos espaciales es un problema recurrente en la astronautica, existiendo numerosas pro-
puestas para resolverlo, con resultados desiguales7. Ademas, es un problema que sigue abierto,
especialmente el rendezvous automatico, lo cual hace que sea campo de investigacion activo
en muchos organismos y universidades, existiendo numerosa literatura al respecto, como por
ejemplo [Rich 03], [Wang 03], [Gell 06], o [Breg 08]. Ademas, hay que decir que el rendezvous
automatico es especialmente atractivo para pequenos satelites, que pretendan llevar a cabo
rendezvous con vehıculos mas grandes, como por ejemplo estaciones espaciales.
En la literatura se pueden encontrar diversos trabajos relacionados con el control predictivo
robusto de vehıculos espaciales. Por ejemplo, en [How 01] se formula un controlador predictivo
robusto para vuelo en formacion, en el que se consideran los posibles errores debidos a las me-
didas de las velocidades de los vehıculos. Se consigue generar un controlador capaz de satisfacer
las restricciones del problema para el peor escenario posible de perturbaciones.
En la mayorıa de estos trabajos, la clave esta en tener en cuenta de forma explıcita las
7Se puede consultar [Woff 08] para tener una vision historica, o [Fehs 03] para conocer las bases del problema.
136 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
perturbaciones del sistema, optimizando la funcion objetivo bajo las peores perturbaciones
posibles. Para ello, es fundamental conocer las propiedades estadısticas de las perturbaciones
(como la media o la varianza). En este sentido, en [Rich 04], se proponen algunos metodos de
estimacion aplicables a estos casos.
En esta tesis, se propone una estrategia de control robusta que busque la satisfaccion de
las restricciones de la maniobra con un determinado nivel de confianza estadıstica, haciendo
uso de una formulacion de control predictivo en la que las restricciones se expresan en un
sentido probabilıstico (mas conocida como Chance-Constrained Model Predictive Control). Esta
tecnica permite incorporar las perturbaciones como variables estadısticas, lo cual implica que
las restricciones del problema no pueden ser expresadas como meras desigualdades, sino que
deben ser consideradas en sentido probabilıstico. Para solucionar el problema, se propone un
metodo para transformar estas restricciones en ecuaciones algebraicas, lo cual se hace fijando
la probabilidad de violacion de las mismas (la cual es usada como un parametro de diseno
del controlador). En este sentido, se pueden encontrar algunos ejemplos anteriores de chance-
constrained MPC, sobre todo en aplicaciones relacionadas con la industria quımica (como [Li 00]
o [Schw 99], en los que se describe la planta a traves de un modelo de respuesta en escalon, cuyos
parametros son considerados como variables aleatorias con propiedades estadısticas conocidas a
priori); sin embargo, en este trabajo se ha conseguido extender la formulacion al rendezvous de
vehıculos espaciales, incorporando ademas un estimador en lınea de perturbaciones, que permite
a este sistema de guiado adaptarse a condiciones de operacion cambiantes.
El metodo de guiado descrito en el parrafo anterior se basa en un modelo lineal del movimiento
del vehıculo, lo cual permite que las senales de control puedan ser calculadas mediante procesos
de optimizacion cuadratica, los cuales pueden ser resueltos con la suficiente rapidez como para
que puedan ser implementados en tiempo real. Sin embargo, presenta la desventaja de considerar
que los impulsores existentes en el vehıculo permiten un control preciso en la fuerza ejercida
(control tipo PAM), lo cual no suele ser frecuente, ya que la mayorıa de los impulsores para el
control de maniobras de vehıculos espaciales solo admiten un modo de operacion TODO/NADA
(control tipo PWM). Ası unicamente se pueden controlar los tiempos de encendido de los
actuadores, durante los cuales producen un nivel de empuje constante.
El principal inconveniente de usar los tiempos de encendido como senal de control, es que
el modelo del sistema pasa a ser no lineal, lo cual complica los problemas de optimizacion,
dificultando ademas la implementacion practica debido al incremento de la demanda compu-
tacional. Para solucionar este problema, es posible combinar el controlador MPC con un filtro
PAM/PWM, capaz de transformar de forma optima las senales PAM generadas por el contro-
lador en senales PWM compatibles con los actuadores. Se pueden encontrar algunos ejemplos
de este filtro en las referencias [Shie 96, Bern 98, Ieko 99].
En [Gavi 10] se muestra la aplicacion de estas tecnicas de filtrado al problema del rendezvous,
de manera que se consigue adaptar la estrategia de control descrita en parrafos anteriores (basa-
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 137
da en senales de control PAM), a un vehıculos con actuadores PWM. El empleo de estos filtros
evita la necesidad de incorporar procesos de optimizacion no lineales para tratar el problema
de guiado de vehıculos con actuadores TODO/NADA, pudiendo resolverlo con una estrategia
de control predictivo lineal que permite un gran ahorro en la demanda computacional.
Por otra parte, hay que decir que aunque el empleo de estos filtros permiten una extension
sencilla de los metodos de control PAM a problemas con actuadores PWM, no hay que olvidar
que en realidad se trata de un metodo aproximado, que por ejemplo, no ofrece garantıas de
satisfaccion de las restricciones (ya que no se realiza la prediccion del movimiento del vehıculo
con las senales de control PWM calculadas).
Para tratar este problema, en [Vazq 11] se propone un metodo alternativo que permite aplicar
tecnicas de control predictivo al guiado de vehıculos espaciales accionados por actuadores PWM,
sin necesidad de resolver problemas de optimizacion no lineal. Como se vera mas adelante, al
modelar el movimiento del vehıculo espacial con actuadores TODO/NADA, aparecen terminos
no lineales asociados al control. Esto permite linealizar las ecuaciones del movimiento en torno a
una secuencia de senales de control inicial, resolviendo un problema de optimizacion lineal para
calcular los incrementos de las senales de control (respecto a la solucion inicial) que optimicen el
consumo de combustible, a la vez que se satisfacen las restricciones del problema. Este proceso
puede realizarse iterativamente, linealizando en cada paso las ecuaciones del movimiento en
torno a la ultima secuencia de senales de control calculada, lo cual permite resolver el problema
de optimizacion no lineal mediante la resolucion iterativa de problemas simples, a la vez que se
dispone en todo momento de una solucion factible (aunque suboptima) que puede ser aplicada
en caso de que se llegue al tiempo de calculo maximo permitido sin alcanzar el optimo del
problema.
Para que este metodo de buenos resultados, la clave esta en disponer de una solucion inicial
factible. Para ello, se resuelve en primer lugar el problema de guiado suponiendo que el vehıculo
dispone de actuadores PAM, lo cual permite usar las tecnicas de control predictivo robusto
descritas en parrafos anteriores. La solucion generada por este controlador inicial es tratada con
un filtro PAM/PWM para generar una secuencia de senales de control PWM que aproximen de
forma optima la trayectoria estimada del vehıculo calculada con controles PAM (la cual permite
alcanzar el rendezvous satisfaciendo las restricciones del problema).
Este metodo permite tratar de forma sencilla las no linealidades del problema de guiado de
vehıculos espaciales con actuadores PWM, garantizando la satisfaccion de restricciones, con
una estrategia de control que no demanda una excesiva carga computacional.
Entrando en la estructura de esta seccion, en primer lugar se va a tratar el problema del
guiado de vehıculos espaciales durante la maniobra de rendezvous (considerando que se dispo-
nen de actuadores PAM) empleando una estrategia de chance-constrainded MPC. Ası, en la
seccion 4.5.1 se va a mostrar el modelo empleado para describir el movimiento relativo entre
vehıculos, estableciendo al mismo tiempo las restricciones del problema. Seguidamente, en la
138 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
seccion 4.5.2 se planteara el problema de prediccion del estado inherente a la formacion del
controlador predictivo, pasando en la seccion 4.5.3 plantear la funcion objetivo del problema de
optimizacion.
Como se puede ver en la seccion 4.5.4, donde se formaliza el problema de calculo de las senales
de control, las restricciones del problema estan formuladas en funcion de las perturbaciones
del sistema, las cuales se consideran variables aleatorias, por lo que no puede resolverse el
problema de optimizacion de forma convencional. Ası, en la seccion 4.5.5 se propone un metodo
para transformar la formulacion probabilıstica de las restricciones en ecuaciones puramente
algebraicas, lo cual se hace asumiendo que las perturbaciones siguen una distribucion normal
con media y covarianza conocidas. De este modo, para cerrar el problema, en la seccion 4.5.6
se propone un estimador en lınea de estas propiedades estadısticas de las perturbaciones.
Finalmente, en la seccion 4.5.7 se muestran algunos resultados de simulacion de la maniobra
de rendezvous usando esta estrategia de control, mostrandose como este sistema de guiado es
capaz de llevar a cabo la maniobra de forma robusta y eficiente.
Una vez cerrado el problema de calculo de un controlador PAM para la maniobra de rendez-
vous, en la seccion 4.5.8 se va a proponer un metodo para extenderlo a vehıculos con control
PWM. Ası, tras plantear las ecuaciones no lineales del movimiento con control PWM, se va a
plantear la linealizacion explıcita del problema en torno a una secuencia de senales de control
inicial, la cual se calculara a partir del controlador PAM, haciendo uso de un filtro PAM/PWM.
A partir de esta solucion inicial, se formula un proceso de optimizacion iterativo, para resolver
el problema sin acudir a algoritmos de optimizacion no lineales. Al final de esta seccion se
mostraran algunos resultados de la aplicacion de este metodo a la planificacion de maniobras
de rendezvous de vehıculos espaciales.
4.5.1. Modelo del problema de rendezvous
A continuacion se van a formular las ecuaciones que describen el movimiento relativo entre el
vehıculo perseguidor y el objetivo durante la maniobra de rendezvous.
Ası, hay que decir que en la literatura pueden encontrarse numerosos modelos matematicos
de este sistema, dependiendo del tipo de escenario considerado (en [Cart 98] se puede encontrar
una revision de estos modelos). En esta tesis, se va a suponer que el vehıculo objetivo mantiene
una orbita circular, por lo que las ecuaciones generales del movimiento relativo entre vehıculos
pueden escribirse de la siguiente manera (ver [Wie 98])
x = 2ny + n2(R + x)− µ R+x
[(R+x)2+y2+z2]32
+ ux,
y = −2nx+ n2y − µ y
[(R+x)2+y2+z2]32
+ uy,
z = −µ z
[(R+x)2+y2+z2]32
+ uz.
(4.85)
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 139
donde x, y, y z denotan la posicion del vehıculo perseguidor, expresada en un sistema de
referencia conocido como LVLH por sus siglas en ingles (local–vertical/local–horizontal). Como
puede verse en la figura 4.31, este sistema esta centrado en el centro de masas del vehıculo
objetivo, de manera que el plano yz define la horizontal local, mientras que el eje x lleva la
direccion del radiovector que une el centro de atraccion gravitatoria con el vehıculo objetivo.
Por otra parte, las componentes de la velocidad del vehıculo perseguidor en el sistema LVLH
vienen dadas por x, y, y z; mientras que ux, uy, y uz denotan las aceleraciones que ejercen los
impulsores del vehıculo perseguidor en el sistema LVLH. Finalmente, R denota el radio de la
orbita del vehıculo objetivo, n =√
µR3 es la velocidad angular orbital y µ es el parametro de
gravitacion terrestre µ = 398600,4 km3/s2.
Ademas, hay que tener en cuenta que si el vehıculo perseguidor esta cerca del objetivo (como
es el caso que se esta considerando aquı), la ecuacion (4.85) puede linealizarse en torno a la
posicion de rendezvous, dando lugar al modelo linealizado de Hill-Clohessy-Wiltshire (HCW),
introducido en [Hill 78] y [Cloh 60], que permite una prediccion precisa del movimiento relativo
entre los dos vehıculos.
Por otra parte, hay que senalar que existen algunas situaciones en las que el modelo HCW no
es valido, por ejemplo si el objetivo describe una orbita elıptica (ver [Inal 02]), o si existen per-
turbaciones orbitales (ver [Humi 08]). Sin embargo, como se vera mas adelante, la formulacion
robusta de este controlador, basada en el modelo HCW, permite llevar a cabo la maniobra en
este tipo de situaciones distintas de la nominal.
Entrando en la linealizacion del problema, si se supone que las senales de control son constantes
durante cada instante de muestreo T , se puede utilizar la siguiente version discreta de las
ecuaciones HCW
xk+1 = Axk +Buk + δk, (4.86)
donde se ha anadido un vector desconocido δk para contabilizar el efecto de las perturbacio-
nes.
En la ecuacion (4.86), xk, uk y δk denotan el estado (posicion y velocidad), la senal de control
(fuerza propulsiva) y la perturbacion durante el instante de tiempo k, donde
x = [x y z x y z]T , u = [ux uy uz]T , (4.87)
δ = [δx δy δz δx δy δz]T . (4.88)
donde δx, δy, δz, δx, δy, y δz representan las perturbaciones introducidas en el sistema, expresadas
en el sistema LVLH.
140 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
Órbita del objetivo
Figura 4.31: Sistema de referencia LVLH.
Las matrices A y B de la ecuacion (4.86) pueden escribirse de la siguiente manera
A =
4− 3C 0 0 Sn
2(1−C)n
0
6(S − nT ) 1 0 −2(1−C)n
4S−3nTn
0
0 0 C 0 0 Sn
3nS 0 0 C 2S 0
−6n(1 − C) 0 0 −2S 4C − 3 0
0 0 −nS 0 0 C
, (4.89)
B =
1−Cn2
2nT−2Sn2 0
2(S−nT )n2 −3T 2
2+ 41−C
n2 0
0 0 1−Cn2
Sn
21−Cn
02(C−1)
n−3T + 4S
n0
0 0 Sn
, (4.90)
donde S = sinnT y C = cosnT . Las perturbaciones son desconocidas, por lo que δk se modela
como una variable aleatoria con seis dimensiones, de media δ y matriz de covarianzas Σ, que
en principio son desconocidas. Dichas perturbaciones pueden provenir de errores de alineacion
en los impulsores o de perturbaciones orbitales no modeladas en el modelo HCW.
4.5.1.1. Restricciones del problema
Se requiere que el interceptor permanezca siempre en una linea de vision (LOS—Line of Sight)
con respecto al blanco, por razones de seguridad y con el objeto de ser detectado por sus sensores
(ver por ejemplo [Breg 08]). Teniendo en cuenta que el objetivo puede rotar respecto al sistema
de referencia LVLH, la region segura debe ser formulada usando un sistema de referencia fijo al
cuerpo del vehıculo objetivo (ver figura 4.32). En este sistema de referencia, se pueden definir
la region LOS mediante las ecuaciones y ≥ cx(x − x0), y ≥ −cx(x + x0), y ≥ cz(z − z0),
y ≥ −cz(z + z0) y y ≥ 0; tal como se muestra en la figura 4.32.
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 141
Figura 4.32: Region LOS.
Las restricciones asociadas a la region LOS, pueden definirse de forma compacta como
ALxBk ≤ bL, donde
AL =
0 −1 0 0 0 0
cx −1 0 0 0 0
−cx −1 0 0 0 0
0 −1 cz 0 0 0
0 −1 −cz 0 0 0
, (4.91)
bL =[
0 cxx0 cxx0 czz0 czz0
]T
. (4.92)
y xBk denota el vector de estados expresado en el sistema de referencia fijo al cuerpo del
objetivo.
Para incluir estas restricciones en el problema, es necesario transformar esta formulacion
del sistema fijo en el cuerpo del vehıculo objetivo al sistema de referencia LVLH. Ası, usando
conceptos de geometrıa proyectiva (ver [Hart 03]), pueden obtenerse las matrices de restricciones
anteriores en el sistema LVLH.
Usando coordenadas homogeneas, se pueden escribir las ecuaciones de un conjunto de n planos
de la forma
π(n×4)
x
y
z
1
= 0, (4.93)
142 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
donde cada fila de π, denotada por πi, define un plano. Ası, los planos que definen la region
LOS pueden ser expresados de la forma
0 −1 0 0
cx −1 0 −cxx0−cx −1 0 −cxx00 −1 cz −czz00 −1 −cz −czz0
x
y
z
1
= 0. (4.94)
Se puede demostrar que bajo una transformacion proyectiva x′ = Hx (donde x denota el
vector de coordenadas homogeneas de un punto), un plano se transforma de la siguiente mane-
ra
π′i = πiH
T , (4.95)
donde H es la matriz de transformacion en coordenadas homogeneas.
Para el caso de transformaciones euclıdeas (que son las que se estan considerando en este
caso), se puede reescribir H de la forma
H =
(
R3×3 t3×1
01×3 1
)
, (4.96)
donde R es una matriz de rotacion y t es un vector de traslacion.
A modo de ejemplo, si se considera que el vehıculo objetivo esta rotando alrededor del eje
zLV LH con velocidad angular Ω, la matriz de transformacion H se define de la siguiente mane-
ra
H =
CΩ SΩ 0 0
−SΩ CΩ 0 0
0 0 1 0
0 0 0 1
, (4.97)
donde CΩ = cos(Ωt) y SΩ = sin(Ωt). De este modo, la transformacion de la region LOS al
sistema LVLH se puede calcular de la forma
−SΩ −CΩ 0 0
cxCΩ − SΩ −cxSΩ − CΩ 0 −cxx0
−cxCΩ − SΩ cxSΩ − CΩ 0 −cxx0
−SΩ −CΩ cx −cxz0
−SΩ −CΩ cz −czz0
x
y
z
1
=0. (4.98)
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 143
De este modo, las matrices de restricciones asociadas a la region LOS pueden escribirse de la siguiente
manera
AL =
−SΩ −CΩ 0
cxCΩ − SΩ −cxSΩ − CΩ 0
−cxCΩ − SΩ cxSΩ − CΩ 0 Θ5×3
−SΩ −CΩ cz
−SΩ −CΩ cz
,
bL =[
0 cxx0 cxx0 czz0 czz0
]T. (4.99)
Notese que en esta situacion aparece una dependencia temporal en AL y bL.
Tratando ahora las restricciones relacionadas con las senales de control, se va a asumir que se tienen
niveles maximos y mınimos del empuje de los distintos actuadores, por lo que se puede escribir
umin ≤ uk ≤ umax, (4.100)
notese que en este caso uk puede tomar cualquier valor dentro de este intervalo, lo cual implica que las
valvulas de los impulsores pueden ser abiertas parcialmente para producir el nivel deseado de empuje
(control PAM).
4.5.2. Prediccion del estado
El estado en el instante k+ j, dado el estado en k y las senales de control y perturbaciones desde el
instante k hasta el instante k + j − 1 se calcula aplicando recursivamente (4.86)
xk+j = Ajxk +
j−1∑
i=0
Aj−i−1Buk+i +
j−1∑
i=0
Aj−i−1δk+i. (4.101)
Se define xS(k), uS(k), δS(k) como la agrupacion (“apilando” los vectores unos sobre otros) de Np
estados, senales de control, y perturbaciones, desde k hasta k + Np, donde Np es el horizonte de
prediccion.
xS(k) =
xk+1
xk+2
...
xk+Np
, uS(k) =
uk
uk+1
...
uk+Np−1
, δS(k) =
δk
δk+1
...
δk+Np−1
.
144 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
Ası, la ecuacion (4.101) se puede reescribir como
xS(k) =
Axk +Buk + δk
A2xk +1∑
i=0A1−i (Buk+i + δk+i)
...
ANpxk +Np−1∑
i=0ANp−1−i (Buk+i + δk+i)
, (4.102)
o lo que es lo mismo
xS(k) = Fxk +GuuS(k) +GδδS, (4.103)
donde Gu y Gδ son matrices triangulares inferiores (por bloques), cuyos elementos no nulos vienen
dados por (Gu)ij = Ai−jB y (Gδ)ij = Ai−j , mientras que la matriz F se define como
F =
A
A2
...
ANp
. (4.104)
4.5.3. Definicion de la funcion objetivo
Tomando esperanza matematica, se define xk+j|k = E[xk+j ], el valor esperado de xk+j dado xk.
Igualmente xS(k + j|k) = E[xS(k + j)]. Para la formulacion del MPC se usa la siguiente funcion de
coste
J(k) =
Np∑
i=1
[
xTk+i|kR(k + i)xk+i|k
]
+
Np∑
i=1
[
uTk+i−1Id3×3uk+i−1
]
, (4.105)
donde la matriz R(k) se define como
R(k) = γh(k − ka)
[
Id3×3 Θ3×3
Θ3×3 Θ3×3
]
. (4.106)
En (4.106), h es la funcion escalon, ka es el tiempo de llegada deseado, γ es un escalar grande, y Id3×3,
Θ3×3 son respectivamente la matriz identidad y la matriz nula, ambas de dimensiones 3 por 3.
La razon por la que se ha seleccionado (4.105) es que se desea llegar al destino en el instante ka
(permaneciendo ahı), minimizando al mismo tiempo el esfuerzo de control, de manera que no importa
la trayectoria seguida para alcanzar el rendezvous siempre que se cumplan las restricciones.
Usando (4.103), y teniendo en cuenta E[δ(k + i)] = δ, la ecuacion (4.105) se puede reescribir co-
mo
J(k) = (GuuS(k) + Fxk +GδδS)TRS(GuuS(k) + Fxk +GδδS)
+uSTQSuS, (4.107)
donde δS es un vector pila con δ repetido Np veces, QS = Id6Np×6Np y RS es una matriz diagonal
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 145
por bloques, definida de la siguiente forma
RS =
R(k + 1). . .
R(k +Np)
. (4.108)
Usando la notacion desarrollada y las restricciones antes formuladas, las ecuaciones de las restriccio-
nes LOS para el estado se pueden escribir como
AcxS ≤ bc, (4.109)
donde Ac y bc vienen dadas por
Ac =
AL(k + 1). . .
AL(k +Np)
,
bc =[
bL(k + 1) · · · bL(k +Np)]T. (4.110)
Igualmente, mediante (4.103), se pueden reformular las restricciones LOS de la siguiente forma
AcGuuS ≤ bc −AcFxk −AcGδδS, (4.111)
y de la misma forma es posible escribir (4.100) como
umin ≤ uS ≤ umax. (4.112)
4.5.4. Calculo de las senales de control
Para calcular la senal de control en el instante k, se busca el valor de la senal de control que minimiza
la funcion de coste en el horizonte de prediccion, satisfaciendo las restricciones. Esto es
mınuS
J(xk,uS, δS), (4.113)
s.a. AcGuuS ≤ bc −AcFxk −AcGδδS ∀δS,umin ≤ uS ≤ umax.
Puesto que la funcion de coste es cuadratica y las restricciones son lineales, si las perturbaciones
futuras fueran conocidas (por ejemplo, si fueran cero) entonces (4.113) se puede resolver facilmente. En
tal caso u(k) se fija como las primeras tres coordenadas de uS, y se repite el calculo en cada instante
de tiempo. Este es el concepto de horizonte deslizante.
No obstante si las perturbaciones son desconocidas es necesario modificar (4.113), como se explicara
en la seccion siguiente.
146 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
4.5.5. Satisfaccion robusta de las restricciones
Para eliminar las perturbaciones de (4.111), se va a acotar el termino −AcGδδS, garantizando ası
la satisfaccion de las restricciones en presencia de perturbaciones.
En [Gavi 09] se propuso un metodo para acotar −AcGδδS si se suponen conocidos los valores
maximos y mınimos de las componentes de las perturbaciones, de manera que las componentes de las
perturbaciones satisfacen (δx)mın ≤ δx ≤ (δx)max. Esto implica que las perturbaciones estan contenidas
en un politopo descrito por la desigualdad AδδS ≤ cδ.
Ası, es posible eliminar las perturbaciones de (4.111) si se sustituye el termino −AcGδδS por una
cota superior, esto es
AcGuuS ≤ bc −AcFxk −AcGδδS
≤ bc −AcFxk + bδ(k), (4.114)
donde bδ(k) es un vector columna, de manera que cada una de sus componentes (bδ(k))i se define de
la siguiente manera
(bδ(k))i = mınδS aiδS, (4.115)
s.a. AδδS ≤ cδ,
donde ai es la iesima fila de la matriz −AcGδ. Notese que la funcion objetivo de este problema es
lineal, y que la region factible esta contenida en un politopo, por lo que la minimizacion puede ser
realizada facilmente.
En la ecuacion (4.114) se describen las restricciones del problema calculadas para el peor caso
posible de las perturbaciones. Ası, el cumplimiento de (4.114) garantizara que las restricciones reales
del problema (4.109) se cumplen para cualquier valor posible de las perturbaciones (dentro de los
lımites considerados).
El problema de este metodo de satisfaccion robusta de las restricciones es que requiere un cono-
cimiento preciso de sus cotas, lo cual no tiene por que ser siempre posible. De este modo, se va a
proponer un metodo alternativo que evita el calculo de estas cotas.
Si se modelan las perturbaciones como un vector aleatorio, la desigualdad bδ(k) ≤ −AcGδδS solo
podra ser satisfecha con cierto valor de probabilidad. Este valor debera ser cercando a la unidad, lo
cual permitirıa el cumplimiento de las restricciones del problema para casi todas las perturbaciones
posibles.
Asumiendo que las perturbaciones tienen una distribucion normal (δ ∼ N6(δ,Σ)), y que su media
(δ) y matriz de covarianza (Σ) con conocidas, es posible escribir (ver referencia [Renc 98])
δ ∼ N6(δ,Σ) ⇒(
δ − δ)T
Σ−1(
δ − δ)
∼ χ2(6), (4.116)
donde χ2(6) es una distribucion de probabilidad chi-cuadrado con 6 grados de libertad.
Si las propiedades estadısticas de las perturbaciones son invariantes en el tiempo, la ecuacion (4.116)
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 147
es valida para las perturbaciones en todos los instantes k + j para j = 0, . . . , Np − 1
(
δk+j − δ)T
Σ−1(
δk+j − δ)
∼ χ2(6),
j = 0, . . . , Np − 1. (4.117)
De este modo, hallando α para la ecuacion
P(
χ2(6) ≤ α)
= p, (4.118)
se garantiza con probabilidad p que
(
δk+j − δ)T
Σ−1(
δk+j − δ)
≤ α. (4.119)
Se tiene entonces que p es un parametro de diseno del controlador, cuyo valor debera ser cercano a la
unidad.
Dividiendo la desigualdad por α, se puede determinar bδ(k) resolviendo el siguiente problema de
minimizacion para cada fila de AcGδ
(bδ(k))i = mınδS aiδS, (4.120)
s.a.(
δk+j − δ)T
(αΣ)−1(
δk+j − δ)
≤ 1,
j = 0, . . . , Np − 1,
donde ai y (bδ(k))i son la iesima fila de la matriz −AcGδ y del vector bδ(k), respectivamente.
Separando el vector pila δS en cada una de sus componentes δk hasta δk+Np−1, es posible escribir
aiδS =∑Np−1
j=0 aijδk+j. De este modo, el problema de minimizacion queda como sigue
(bδ(k))i = mınδk+j
∑Np−1j=0 aijδk+j, (4.121)
s.a.(
δk+j − δ)T
(αΣ)−1(
δk+j − δ)
≤ 1,
j = 0, . . . , Np − 1.
Haciendo z(j) = H1
2
(
δk+j − δ)
, donde H = (αΣ)−1, se puede reescribir (4.121) como
(bδ)i = mınz(j)
Np−1∑
j=0
(
aijH− 1
2 z(j) + aij δ)
, (4.122)
s.a. z(j)T z(j) ≤ 1, j = 0, . . . , Np − 1,
o bien
(bδ)i =
Np−1∑
j=0
(
mınz(j)
(
aijH− 1
2 z(j))
+ aij δ
)
,
s.a. z(j)T z(j) ≤ 1, (4.123)
j = 0, . . . , Np − 1.
148 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
El problema (4.123) se puede resolver explıcitamente, alcanzandose el mınimo en
z∗(j) = −H− 1
2 aTij√
aijH−1aTij
. (4.124)
Sustituyendo en (4.123) las filas del vector bδ(k) quedan
(bδ(k))i =
Np−1∑
j=0
−√
aijH−1aTij + aij δ. (4.125)
Una vez que se ha determinado el vector bδ(k) (usando la ecuacion (4.125)), se puede calcular la
senal de control en el instante k de la siguiente forma:
mınuS
J(xk,uS, δS), (4.126)
sujeto a: AcGuuS ≤ bc −AcFxk + bδ(k),
umin ≤ uS ≤ umax,
donde ahora todos los terminos son conocidos, excepto el vector de senales de control que se obtendra
al resolver el problema.
4.5.6. Estimador en lınea de perturbaciones
El metodo de satisfaccion robusta de las restricciones que se ha presentado requiere el conocimiento de
ciertas propiedades estadısticas de las perturbaciones. Sin embargo, es frecuente que las perturbaciones
sean totalmente desconocidas y por tanto hay que obtener sus propiedades en lınea.
Para ello, se parte de la hipotesis de que las perturbaciones estan distribuidas segun una normal de
media δ y matriz de covarianzas Σ, es decir, δ ∼ N6(δ,Σ).
En cada instante k, se estiman δ y Σ teniendo en cuenta las perturbaciones pasadas, que se pueden
calcular de forma exacta a posteriori usando
δi = xi+1 −Axi −Bui, (4.127)
para i = 1, ..., k − 1.
Sean δk y Σk las estimaciones de δ y Σ en el instante k, basadas en las perturbaciones hasta el
instante k − 1. Estas vienen dadas por
δk =
∑k−1i=0 e−λ(k−i)δi∑k−1
i=0 e−λ(k−i), (4.128)
Σk =
∑k−1i=0 e−λ(k−i)
(
δi − δk
)(
δi − δk
)T
∑k−1i=0 e−λ(k−i)
, (4.129)
donde se ha usado un coeficiente (“peso”) eλi para ponderar la perturbacion en el instante i, δi; siendo
el parametro λ > 0 un “factor de olvido”. La ponderacion se realiza para tener en cuenta la posibilidad
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 149
de que las propiedades de las perturbaciones cambien con el tiempo, es decir, que sean procesos
estocasticos; el factor de olvido permite descartar valores remotos de las perturbaciones (que ya no
tienen efecto en las perturbaciones actuales) y enfatizar los valores recientes.
Sea γk =∑k−1
i=0 e−λ(k−i). Usando la suma de la progresion geometrica,
γk =e−λ
(
1− e−λk)
1− e−λ. (4.130)
se pueden definir formulas recursivas para (4.128)–(4.129) como sigue
δk =e−λ
γk
(
γk−1δk−1 + δk−1
)
, (4.131)
Σk =e−λ
γk
(
γk−1Σk−1 +(
δk−1 − δk
)(
δk−1 − δk
)T)
, (4.132)
con δ0 = 0, Σ0 = 0.
Estas formulas permiten ahorrar capacidad de almacenamiento, y solo requieren almacenar las ulti-
mas estimaciones de media y covarianza.
Una vez que se conoce la media y la covarianza, se puede llevar a cabo el proceso de satisfaccion
robusta de las perturbaciones de la seccion anterior.
4.5.7. Resultados de simulacion
Entrando en el modelo de simulacion, lo primero que hay que mencionar es que aunque el controlador
se haya formulado a partir de las ecuaciones lineales HCW, en todas las simulaciones se han hecho
considerando las ecuaciones no lineales del movimiento relativo (4.85).
Ademas, como se vera mas adelante, en algunas simulaciones se ha ensayado el controlador en
situaciones en las que el vehıculo objetivo tiene una orbita elıptica, de forma que el modelo (4.85)
no es aplicable. Para simular esta situacion, se han modelado por separado los movimientos de los
dos vehıculos usando las ecuaciones generales de la orbita kepleriana (ver [Wie 98]), obteniendo las
coordenadas del movimiento relativo como diferencia de las posiciones de los vehıculos calculadas
separadamente.
Para aumentar el realismo de la simulacion, se ha tenido en cuenta que los impulsores del vehıculo
no son sistemas perfectos capaces de producir exactamente el empuje deseado. Ası, se ha considerado
que el empuje real ureal =[
ux uy uz
]Tviene dado por
ureal = T(δθ) (u+ δ1) , (4.133)
donde u es el empuje calculado por la ley de control, δ1 es un vector de variables aleatorias y T(δθ)
es una matriz de rotacion, cuyos angulos estan contenidos en el vector δθ (se consideraran angulos
pequenos).
De este modo, se estan introduciendo en el sistema unas perturbaciones del tipo δ =
150 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
B ((T(δθ)− Id)u+T(δθ)δ1), que como se puede ver, no son estrictamente perturbaciones aditi-
vas.
Este esquema de perturbaciones pretende modelar varios aspectos fısicos. En primer lugar, hay que
tener en cuenta que el control de actitud del vehıculo perseguidor no es perfecto, por lo que los errores
de alineacion hacen que no se obtengan las componentes de la fuerza deseadas en el sistema LVLH
(recuerdese que los actuadores estan fijos en el vehıculo, y por lo tanto participan de su movimiento de
rotacion). Por otra parte, con el termino δ1 se pretende modelar las variaciones en el nivel de empuje
que pueden sufrir los impulsores.
Durante las simulaciones, las variables δ1 y δθ se consideraran normalmente distribuidas, con media
y varianza dadas.
Entrando en los resultados de simulacion, en primer lugar se va ver el efecto que tendrıan las per-
turbaciones del sistema en un controlador predictivo convencional (sin considerar la estrategia de
satisfaccion robusta de las restricciones), el cual viene dado por el problema (4.113), suponiendo nulo
el vector de perturbaciones.
De este modo, se van a ensayar dos casos. En primer lugar se considerara una situacion ideal, en la
que las perturbaciones del sistema son nulas. A continuacion se ensayara el mismo controlador en un
escenario con los siguientes valores de las perturbaciones:
δ1 : δi = 5 · 10−5,√Σii = 1 · 10−5, (4.134)
δθ : δi = 0,0436,√Σii = 0,0436. (4.135)
El resultado de esta comparacion puede verse en la figura 4.33. Se aprecia como en el caso ideal, el
controlador predictivo convencional es capaz de llevar a cabo la maniobra. Sin embargo, al introducir
perturbaciones en el sistema, este controlador no es capaz de compensarlas, y se acaban violando las
restricciones asociadas a la lınea de vision del problema (denotadas por las lıneas rojas). Esto justifica
el empleo de una estrategia de control robusta para esta maniobra.
Considerando ahora el controlador robusto de la seccion 4.5.5, en la figura 4.34 se muestra una
maniobra de rendezvous en presencia de perturbaciones. Se puede ver en la imagen de la izquierda como
el vehıculo perseguidor permanece en todo momento en la zona segura, cumpliendo ası las restricciones
del problema. Por otra parte, en la imagen de la derecha se pueden ver las senales de control calculadas
(lınea continua), y las senales de control reales, obtenidas al considerar las perturbaciones (las cuales
se representan con lıneas punteadas). Se puede apreciar que las perturbaciones consideradas tienen un
notable sesgo y desviacion tıpica, pese a lo cual el sistema de guiado desarrollado aquı es capaz de
ejecutar la maniobra.
Por otra parte, en la figura 4.35 aparece reflejada la evolucion temporal del vector de estados du-
rante esta maniobra. Se puede constatar como el controlador predictivo es capaz de llevar a cabo el
rendezvous en el tiempo deseado, tras lo cual mantiene al vehıculo en torno a la posicion de atraque
a pesar de las perturbaciones.
Teniendo en cuenta que las perturbaciones introducidas en el sistema son variables aleatorias, resulta
interesante realizar un analisis de Monte Carlo para tener mas garantıas de que el sistema de guiado
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 151
−5 0 5 10 15 20
0
5
10
15
20
x [m]
y[m]
Trayectoria en el plano XY
Punto inicial
Docking
Zona prohibida
MPC no robusto.
Simulación sin
perturbaciones
MPC no robusto.
Simulación con
perturbaciones
Violación de
restricciones
Figura 4.33: Controlador predictivo no robusto en una simulacion sin perturbaciones (lınea con-tinua) y con perturbaciones (lınea discontinua). Para una mayor claridad en la representacion,solo se muestra el movimiento en el plano XY del sistema de referencias LVLH.
−20
−10
0
10
20 0
20
40
60
−20
−15
−10
−5
0
5
10
15
20
y [m]
Trayectoria 3D del vehículo perseguidor
x [m]
z[m
]
Punto inicial
Docking
Restricciones LOS
Zona segura
Áreaprohibida 0 500 1000 1500 2000 2500 3000 3500
−0.2
0
0.2
u x/u
max
Empuje
0 500 1000 1500 2000 2500 3000 3500−0.2
0
0.2
u y/u
max
0 500 1000 1500 2000 2500 3000 3500−0.05
0
0.05
u z/u
max
Tiempo [s]
Figura 4.34: Controlador robusto en presencia de perturbaciones (δ1 : δ = [0,2592 0,8065 −0,0533] · 10−4,
√Σii = 1 · 10−5; δθ : δi = 0,0436,
√Σii = 0,0436). Se han considerado los
siguientes parametros del controlador: Np = 60, γ = 1000, ka = 60, p = 0,95, λ = 0,23. En laimagen de la derecha, la senal de control calculada se representa con lınea continua, mientrasque la lınea discontinua representa la senal de control real.
152 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
0 500 1000 1500 2000 2500 3000 3500
−5
0
5x
0 500 1000 1500 2000 2500 3000 3500−50
0
50
y
0 500 1000 1500 2000 2500 3000 3500−5
0
5
z
0 500 1000 1500 2000 2500 3000 3500
−0.01
0
0.01
dx/d
t
0 500 1000 1500 2000 2500 3000 3500−0.04−0.02
00.020.04
dy/d
t
0 500 1000 1500 2000 2500 3000 3500−5
0
5x 10
−3
dz/d
t
t [s]
Tiempo de llegada
Figura 4.35: Evolucion temporal de las variables de estado durante el rendezvous.
propuesto permite llevar a cabo la mision con mınima probabilidad de violacion de las restricciones.
Ası, se han realizado 1220 simulaciones, considerando tanto el controlador robusto como la version
no robusta (usando exactamente las mismas perturbaciones en ambos casos). Estas simulaciones se
llevaron a cabo con los siguientes parametros Np = 60, γ = 1000, ka = 60, p = 0,975, λ = 0,1 y
T = 40 s.
En cuanto a las perturbaciones, se ha comprobado que el parametro que tienen mayor influencia en
el cumplimiento satisfactorio de la mision es el sesgo de δ1. De este modo, el analisis de Monte Carlo se
ha realizado seleccionando el valor de la media de δ1 en el intervalo δi ∈ [−0,05umax, 0,05umax] m/s
(con probabilidad constante). Por otra parte, la desviacion tıpica de esta variable se ha fijado en√Σii = 0,01umax. Por ultimo, se han fijado los mismos valores de las propiedades estadısticas de δθ
que se usaron en la figura 4.34.
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 153
El resultado de este analisis puede verse en la tabla 4.1. Se aprecia la enorme ventaja que supone
usar el controlador con satisfaccion robusta de las restricciones, ya que se obtiene el 100% de exito
en todos los escenarios simulados, guiando al vehıculo perseguidor a una distancia final del objetivo
inferior a 20 centımetros (notese que en la tabla 4.1, d denota la distancia al objetivo en el tiempo de
llegada deseado).
Por otra parte, puede verse como el controlador no robusto solo alcanza el rendezvous sin violar
las restricciones en el 40.9% de las simulaciones, con un coste medio de mision sensiblemente mayor.
MPC norobusto
MPCrobusto
Violacion de restricciones 59% 0%d ≤ 0,2m 19% 100%0,2m ≤ d ≤ 0,5m 22% 0%0,5m ≤ d 0% 0%Coste medio (m/s) de las misionessatisfactorias
0.2444 0.2039
Cuadro 4.1: Resumen de los resultados obtenidos tras una baterıas de 1220 simulaciones consi-derando distintos valores de las propiedades estadısticas de las perturbaciones. d representa ladistancia al objetivo en el momento deseado de llegada.
Atendiendo al coste de la mision, se puede ver que el controlador robusto permite ademas una
mayor eficiencia durante el rendezvous. Ası, a la izquierda de la figura 4.36 se representa el coste
total obtenido en cada una de las simulaciones sin violacion de restricciones (considerando tanto del
controlador robusto como el no robusto), frente a la norma L1 de la media del vector de perturbaciones
δ1. Se puede comprobar como en general el coste va aumentando a medida que son mas intensas las
perturbaciones (el controlador debe sobreponerse a ellas), pero en la gran mayorıa de los casos el coste
de mision con el controlador robusto es inferior al no robusto. Ası, en el lado derecho de la figura se
puede ver el coste diferencial de cada mision usando ambos controladores (no robusto menos robusto),
constatandose que en la mayorıa de las situaciones este balance es favorable al controlador robusto (es
decir, positivo).
Finalmente, se va a simular la maniobra de rendezvous el caso en el que el vehıculo objetivo describe
una orbita de excentricidad e, usando las estrategias de control predictivo mostradas anteriormente
(usando tanto la version robusta como la no robusta), y sin considerar las perturbaciones asociadas
a los actuadores. Ası, en este caso las perturbaciones vendran dadas por la dinamica no modelada
asociada a la orbita elıptica del vehıculo objetivo.
El resultado de este analisis puede verse en la figura 4.37, de manera que la imagen de la derecha
muestra la trayectoria seguida por el vehıculo haciendo uso del controlador no robusto, mientras que
a la derecha se muestra el caso robusto. Se puede apreciar como la dinamica no modelada introduce
suficientes perturbaciones como para que el controlador no robusto viole las restricciones impuestas, lo
cual no ocurre si se usa la version robusta del controlador mostrada aquı (pese a que se ha formulado
considerando nula la excentricidad de la orbita del vehıculo objetivo).
154 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
0 0.5 1 1.5
x 10−4
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
| δ1 |
Cos
te d
e m
isio
n [m
/s]
0 0.5 1 1.5
x 10−4
−0.04
−0.02
0
0.02
0.04
0.06
0.08
0.1
0.12
| δ1 |
1 [m/s]
Dife
renc
ia e
n co
ste
de m
isio
n (M
PC
rob
usto
− M
PC
no
robu
sto)
[m/s
]
Figura 4.36: Evolucion del coste de la mision obtenido en las distintas simulaciones, representadofrente a la norma L1 del vector de perturbaciones δ1.
x [m]
y [m
]
Docking
e = 0.05
e = 0.1
e = 0.25
e = 0.2
e = 0.15
x [m]
y [m
]
Docking
e = 0.2
e = 0.25
e = 0.05
e = 0.15
e = 0.1
0.25
0.2
0.15
0.1
0.05
Zona prohibida
Punto Incial
Restricción
Figura 4.37: Maniobra de rendezvous en torno a un vehıculo objetivo describiendo una or-bita elıptica de excentricidad e, considerando el controlador robusto (derecha) y no robusto(izquierda). Los parametros del controlador son Np = 60, γ = 1000, ka = 60 y T = 45 s.
4.5.8. Extension del MPC a sistemas con no linealidades en los ter-
minos de control
En esta seccion se va a proponer un algoritmo que permite el uso de tecnicas de control predictivo
en sistemas con no linealidades asociadas a las senales de control. En el contexto del rendezvous de
vehıculos espaciales, se va a describir la aplicacion de este metodo a un problema de planificacion de
una maniobra de rendezvous, en la que el vehıculo perseguidor dispone de actuadores PWM (en lugar
de los impulsores PAM considerados anteriormente).
Como se ha mencionado en la introduccion, el problema de usar este tipo de motores es que las
ecuaciones que describen el movimiento relativo pasan a ser no lineales (concretamente aparecen
no linealidades en los terminos asociados al control), de manera que el control predictivo planteado
anteriormente no puede ser empleado directamente, ya que (4.126) se transformarıa en un problema
de optimizacion no lineal, difıcil de resolver en lınea.
Lo que se va a hacer aquı es proponer un algoritmo que permita emplear tecnicas de control predictivo
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 155
para resolver el problema, el cual se basa en una linealizacion de las ecuaciones del movimiento en
torno a una secuencia de senales de control de referencia (calculada de manera que este cercana a
una posible solucion del problema). De este modo, se pueden calcular las variaciones de las senales
de control respecto de la referencia haciendo uso de un problema de optimizacion lineal similar a
(4.126). Calculada la nueva secuencia de senales de control, se puede volver a linealizar el problema,
estableciendo ası un proceso iterativo que permita calcular la secuencia de senales de control final que
lleve a cabo la maniobra de forma eficiente y satisfaciendo las restricciones impuestas.
La clave del procedimiento descrito aquı es que la linealizacion del problema se puede escribir de
forma explıcita, requiriendo una mınima demanda computacional, por lo que el proceso iterativo puede
ser llevado a cabo con rapidez. Ademas, hay que tener en cuenta que cada paso de iteracion genera
una solucion factible (aunque no tiene por que ser optima), por lo que en caso de llegar al tiempo
lımite de calculo sin haber llegado a la solucion final, se puede interrumpir el proceso e implementar
la ultima solucion factible calculada.
4.5.8.1. Modelo del vehıculo con impulsores PWM
A continuacion se van a desarrollar las ecuaciones del movimiento relativo entre el vehıculo objetivo
y el perseguidor, estando este controlado por actuadores PWM. Como se ha mencionado antes, estos
actuadores solo pueden producir dos valores de empuje, de manera que cuando estan activos producen
el impulso maximo (umax), mientras que el empuje es cero cuando se desactivan. Unicamente se puede
controlar el tiempo que esta activo cada actuador.
Por otra parte, se va a considerar que por cada eje del vehıculo se tienen dos actuadores con orien-
taciones opuestas, de manera que se puede producir empuje en ambos sentidos. Se denotara por u+i y
u−i al empuje ejercido por los actuadores del eje i en la direccion positiva y negativa, respectivamente.
Ademas, tambien se va a considerar que cada impulsor solo puede ser accionado una vez durante cada
tiempo de muestreo.
De este modo, la senal de control PWM en cada intervalo k puede ser definida mediante dos nuevas
variables de control para cada par de impulsores (de cada eje): el ancho de pulso κ+i (k) y el tiempo
de inicio del pulso τ+i (k), del actuador orientado en sentido positivo del eje i; y similarmente κ−i (k) y
τ−i (k) para el actuador negativo del eje i. Ası, para t ∈ [kT, (k + 1)T ], tiene
u+i (t) =
0, t ∈[
kT, kT + τ+i (k)]
,
u+imax, t ∈
[
kT + τ+i (k), kT + τ+i (k) + κ+i (k)]
,
0, t ∈[
kT + τ+i (k) + κ+i (k), (k + 1)T]
,
(4.136)
lo cual puede ser escrito de la misma forma para los actuadores orientados en sentido negativo. Ademas,
las nuevas variables de control deben verificar κ+i (k) > 0, τ+i (k) > 0 y τ+i (k) + κ+i (k) < T , ya que de
lo contrario el pulso se desbordarıa al siguiente intervalo de tiempo.
Definiendo el vector de control PWM como uP(k)
uP(k) =[
τ+1 κ+1 τ−1 κ−1 τ+2 κ+2 τ−2 κ−2 τ+3 κ+3 τ−3 κ−3
]
, (4.137)
156 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
donde se entiende que τ±i y κ±i son las variables que definen el pulso de los actuadores del eje i en el
instante k.
Por otra parte, hay que tener en cuenta que el modelo linealizado HCW sigue siendo aplicable (ya
que unicamente requiere que la orbita del objetivo se circular, y que la distancia relativa sea pequena),
sin embargo, la discretizacion mostrada anteriormente ya no es valida, ya que se basaba en considerar
que el impulso de los motores era constante durante cada intervalo de tiempo T .
De este modo, se puede ver que las ecuacion de evolucion del sistema se puede escribir en el caso de
actuadores PWM de la siguiente manera.
x(k + 1) = Ax(k) +BPWM (uP(k))umax, (4.138)
donde
BPWM (uP(k)) =
AT−τ+1(k)−κ+
1(k)b
1κ+1(k)
AT−τ−1(k)−κ−
1(k)b
1κ−1(k)
AT−τ+2(k)−κ+
2(k)b
2κ+2(k)
AT−τ−2(k)−κ−
2(k)b
2κ−2(k)
AT−τ+3(k)−κ+
3(k)b
3κ+3(k)
AT−τ−3(k)−κ−
3(k)b
3κ−3(k)
T
, umax =
u+1max
−u−1max
u+2max
−u−2max
u+3max
−u−3max
, (4.139)
donde las matrices vienen bit definidas por
b1t =
1−Cn2
2(S−nt)n2
0Sn
2(C−1)n
0
, b2t =
2nt−2Sn2
−3t2
2 + 41−Cn2
0
21−Cn
−3t+ 4Sn0
, b3t =
0
01−Cn2
0
0Sn
, (4.140)
donde ahora se ha definido S = sinnt y C = cosnt. Notese que estos vectores se corresponden con
las columnas de la matriz B mostrada en (4.90), sustituyendo el tiempo de muestreo T por un tiempo
generico t.
Se puede ver como el modelo del problema (4.138) es ahora no lineal en las variables PWM
uP(k).
Formulacion compacta
Al igual que se hizo con el controlador PAM, se puede establecer una formulacion compacta para
escribir la prediccion del vector de estados a lo largo del horizonte de prediccion. Ası, de forma analoga
a (4.103), se puede escribir
xS = Fx0 +GPWM(uPS)umaxS
, (4.141)
donde uPSes un vector pila con todas las senales PWM, y GPWM es una matriz diagonal inferior por
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 157
bloques, con sus elementos no nulos definidos de la forma (GPWM(uPS))ij = Ai−jBPWM (uP(j− 1)),
y el vector constante umaxSes
umaxS=
umax
umax
...
umax
Nveces. (4.142)
Restricciones del problema
Se van a considerar las mismas restricciones al vector de estados que se mostraron en la seccion
4.5.1.1, esto es, se supone que el vehıculo perseguidor debe permanecer en todo momento en una
region LOS que evite la colision con el objetivo.
Por otra parte, se va a establecer una restriccion adicional que obligue al vehıculo a llegar al punto
de atraque en el tiempo deseado, esto es x(Np) = 0. Ası, definiendo Aeq como
Aeq =
0. . .
0
Id6×6
, (4.143)
se puede escribir la siguiente restriccion de igualdad
AeqxS = 0. (4.144)
Respecto a las senales de control PWM, las restricciones que se imponen ahora son:
Solo puede existir un impulso de cada actuador por intervalo de tiempo de control.
La duracion del impulso no puede ser superior al tiempo de muestreo T .
esto se traduce en
κ±i (k) > 0, (4.145)
τ±i (k) > 0, (4.146)
τ±i (k) + κ±i (k) < T. (4.147)
Objetivo de optimizacion
En este caso, el objetivo del problema de optimizacion va a ser minimizar el tiempo total que los
actuadores permanecen activos, lo cual se relaciona directamente con el consumo de propulsante. Ası,
158 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
se puede escribir la siguiente funcion objetivo
JPWM =
Np∑
k=0
3∑
i=1
(
u+imaxκ+i (k) + u−imax
τ−i (k))
. (4.148)
4.5.8.2. Calculo de la secuencia de senales de control PWM
Teniendo en cuenta que las ecuaciones HCW para el caso PWM son no lineales en las senales de
control, la optimizacion de (4.148) implicarıa la resolucion de un problema de optimizacion no lineal.
Esto dificultarıa la posible implementacion practica del controlador resultante, ya que el problema
serıa difıcil de resolver y requerirıa una importante carga computacional.
De esta forma, para encontrar una secuencia de senales de control optima, sin tener que recurrir a
algoritmos convencionales de optimizacion no lineal, se propone la siguiente estrategia:
Paso 1. En primer lugar, se resuelve el problema considerando que el vehıculo perseguidor dispone de
actuadores PAM, lo cual puede hacerse usando los metodos basados en control predictivo mostrados
en la seccion anterior.
Paso 2. Se usa un filtro PAM/PWM para convertir la senal de control PAM obtenida en el paso
anterior a una secuencia de senales PWM, de manera que el efecto producido en el vehıculo por
ambas senales de control sea lo mas parecido posible.
Paso 3. Se linealizan las ecuaciones del sistema (4.141) en torno a la secuencia de senales de control
obtenida al aplicar el filtro del paso anterior. De este modo, el problema de optimizacion pasa
a ser lineal, lo que permite que pueda ser resuelto facilmente, dando como resultado una mejor
aproximacion a la solucion real del problema.
Paso 4. Se repite la linealizacion el paso anterior en torno a la nueva secuencia de senales de control
calculada, optimizando de nuevo para mejorar la solucion obtenida. Se realiza iterativamente este
proceso hasta que se produzca la convergencia de la solucion final.
A continuacion, se pasa a describir detalladamente cada uno de los pasos anteriores:
Calculo de las senales de control PAM
Considerando que el vehıculo dispone de actuadores PAM, se pueden aplicar los metodos mostrados
en la seccion anterior para encontrar la secuencia de controles PAM inicial. Concretamente, para el
caso de planificacion que se esta tratando aquı, esta secuencia puede obtenerse resolviendo el siguiente
problema de optimizacion
mınuS
JPAM (uS) (4.149)
sujeto a: AcGuS ≤ bc −AcFx0
AeqGuS = −AeqFx0
umin ≤ uS ≤ umax.
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 159
Notese que tanto la funcion de coste como las restricciones son lineales, lo cual permite una rapida
solucion del problema anterior.
Filtro PAM/PWM
La formulacion de este filtro puede encontrarse en referencias como [Bern 98, Shie 96], donde se pro-
ponen diversos metodos para transformar senales de control PAM a PWM, seleccionando optimamente
las duraciones y los tiempos de inicio de los impulsos. Estos metodos permiten, dadas las senales de
control PAM de un sistema, calcular las senales de control PWM equivalentes tales que la salida del
sistema se aproxime a la inicial de forma optima.
Siguiendo estas referencias, una senal de control PAM puede ser optimamente aproximada siguiendo
las siguientes reglas:
1. La duracion del pulso se calcula mediante el Principio de las Areas Equivalentes, esto es
κ±i (k) = T|ui(k)|u±imax
, (4.150)
donde u±imaxes el maximo impulso (positivo o negativo) que pueden producir los actuadores del eje
i.
Se puede comprobar que el pulso PWM definido de esta forma tiene la misma area que la senal de
control PAM de partida.
2. Solo se va a permitir un impulso por tiempo de muestreo, estando este ubicado en el centro del
intervalo de muestreo:
τ±i (k) =1
2(T − κ±i (k)), (4.151)
donde τi(k) es el tiempo en el intervalo k en el que se enciende el impulsor.
Las senales PWM uP(k) generadas mediante este metodo generan una respuesta del sistema muy
parecida a la que se obtendrıa si se pudieran aplicar directamente las senales PWM. Sin embargo,
esto no garantiza que la secuencia PWM obtenida sea optima, e incluso podrıa darse el caso en el
que esta secuencia no satisfaga las restricciones del problema. De este modo, esta solucion se va a
emplear unicamente como una solucion inicial para el algoritmo de optimizacion que se describe a
continuacion.
Linealizacion del sistema PWM
Teniendo en cuenta que los terminos no lineales que aparecen en las ecuaciones (4.138) son de la
forma cosnt o sinnt, donde n es la velocidad angular orbital, y teniendo en cuenta ademas que nt≪ 1,
se puede aproximar (4.138) linealizando BPWM(uP(k)) en torno a uP(k). De este modo, el modelo
del sistema se puede escribir de la forma
x(k + 1) = Ax(k) +BPWM(uP(k))umax +B∆(uP(k))∆(k), (4.152)
160 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
donde
B∆=
−A′T−τ+
1−κ+
1
b1κ+1
u+1max(
−A′T−τ+
1−κ+
1
b1κ+1
+AT−τ+1−κ+
1
b1′
κ+1
)
u+1max
A′T−τ−
1−κ−
1
b1κ−1
u−1max(
A′T−τ−
1−κ−
1
b1κ−1
−AT−τ−1−κ−
1
b1′
κ−1
)
u−1max
−A′T−τ+
2−κ+
2
b2κ+2
u+2max(
−A′T−τ+
2−κ+
2
b2κ+2
+AT−τ+2−κ+
2
b2′
κ+2
)
u+2max
A′T−τ−
2−κ−
2
b2κ−2
u−2max(
A′T−τ−
2−κ−
2
b2κ−2
−AT−τ−2−κ−
2
b2′
κ−2
)
u−2max
−A′T−τ+
3−κ+
3
b3κ+3
u+3max(
−A′T−τ+
3−κ+
3
b3κ+3
+AT−τ+3−κ+
3
b3′
κ+3
)
u+3max
A′T−τ−
3−κ−
3
b3κ−3
u−3max(
A′T−τ−
3−κ−
3
b3κ−3
−AT−τ−3−κ−
3
b3′
κ−3
)
u−3max
T
, (4.153)
y donde se han usado los valores de las variables κ y τ en el instante k. La variable ∆(k) representa
el incremento o decremento respecto a uP(k)
∆(k)=[
∆τ+1 ∆κ+1 ∆τ−1 ∆κ−1 ∆τ+2 ∆κ+2 ∆τ−2 ∆κ−2 ∆τ+3 ∆κ+3 ∆τ−3 ∆κ−3
]
,
(4.154)
donde se entiende que ∆τ±i y ∆κ±i son las variables que definen el incremento del pulso los actuadores
del eje i en el instante k. Las matrices usadas en (4.153) se pueden definir de la forma
A′t =
3nS 0 0 C 2S 0
6n(C − 1) 0 0 −2S 4C − 3 0
0 0 −nS 0 0 C
3n2C 0 0 −nS 2nC 0
−6n2S 0 0 −2nC −4nS 0
0 0 −n2C 0 0 −nS
, (4.155)
b1′
t =
Sn
2(C−1)n
0
C
−2S
0
, b2′
t =
2−2Cn
−3t+ 4Sn0
2S
−3 + 4C
0
, b3′
t =
0
0Sn
0
0
C
. (4.156)
Ası, la ecuacion (4.152) se puede reescribir de la siguiente forma compacta
xS = Fx0 +G∆(uPS)∆S +GPWM(uPS
)umaxS, (4.157)
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 161
donde G∆(uPS) es una matriz triangular inferior por bloques, siendo sus elementos no nulos
(G∆(uPS))ij = Ai−jB∆(uP(Np − j − 1)); mientras que ∆S es un vector pila con los incrementos
en las variables PWM ∆(k). Por otra parte, las restricciones LOS (4.111) se puede reformular en
funcion de las variables PWM de la siguiente manera
AcG∆∆S ≤ bc −AcFx0 −AcGPWMumaxS, (4.158)
donde, por simplicidad, se ha omitido la dependencia de uPSde las matrices GPWM(uPS
) y
G∆(uPS).
De forma similar, se pueden escribir las restricciones de igualdad de la siguiente manera
AeqG∆∆S = −AeqFx0 −AeqGPWMumaxS. (4.159)
Las restricciones de las senales de control se pueden escribir ahora en funcion de ∆(k) de la siguiente
manera
−∆κ±i (k) ≤ κ±i (k), (4.160)
−∆τ±i (k) ≤ τ±i (k), (4.161)
∆τ±i (k) + ∆κ±i (k) ≤ T − τ±i (k) − κ±i (k), (4.162)
lo cual puede ser expresado de la siguiente forma compacta
A∆(k)∆S(k) ≤ b∆(k). (4.163)
Con todo esto, se puede escribir la funcion objetivo del problema como una funcion de las variables
PWM y de los incrementos de estas variables, es decir, J(uPS,∆S) = JPWM (uPS
) + J∆(∆S), donde
se ha definido
J∆(∆S) =
Np∑
k=0
3∑
i=1
(
u+imax∆κ+i (k) + u−imax
∆τ−i (k))
. (4.164)
Todo esto permite establecer el siguiente problema de optimizacion lineal para encontrar los incre-
mentos de las senales PWM
mın∆S
J∆(∆S) (4.165)
s. a.: AcG∆∆S ≤ bc −AcFx0 −AcGPWMumaxS,
AeqG∆∆S = −AeqFx0 −AeqGPWMumaxS,
A∆∆S ≤ b∆.
Una vez resuelto este problema, la solucion obtenida (∆S) puede usarse para reconstruir la nueva
secuencia de senales de control PWM de la siguiente manera
uNEW
PS= uPS
+∆S. (4.166)
162 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
De este modo, la nueva secuencia de senales de control uNEW
PSpuede ser usada para linealizar de
nuevo el modelo (4.141), sin mas que recalcular las matrices que aparecen en (4.165).
Esto permite establecer un proceso iterativo, resolviendo un problema de optimizacion lineal en cada
paso, de manera que la solucion se va mejorando hasta encontrar el valor optimo. En la siguiente seccion
se mostraran algunas simulaciones donde se comprueba el funcionamiento de este algoritmo.
4.5.8.3. Simulaciones
Para no alargar excesivamente la seccion, se va a mostrar un ejemplo simple de planificacion de una
maniobra de rendezvous, sin perturbaciones.
Se ha seleccionado un valor del horizonte de prediccion Np = 50, mientras que los valores de u±imax
se han fijado en 10−4 km/s2 para todos los instantes. Ademas, la condicion inicial de la maniobra se
ha fijado en
x0 = [0,2 0,6 0,2 0,0015 0,002 − 0,001]T . (4.167)
En la figura 4.38 puede verse la proyeccion en el plano xy de la trayectoria calculada por el algoritmo
expresado aquı. Se puede apreciar la trayectoria inicial, calculada suponiendo que el vehıculo dispone
de actuadores PAM, y aplicando posteriormente el filtro PAM/PWM. Esta solucion es usada para
iniciar el algoritmo iterativo descrito anteriormente, pudiendo apreciarse en la misma figura como
va evolucionando la trayectorias del perseguidor a lo largo del proceso de optimizacion. Notese la
apreciable diferencia entre la solucion inicial proporcionada por el filtro, y la solucion final alcanzada
tras el proceso iterativo.
Atendiendo al coste de la mision, en la figura 4.39 se muestra el valor de la funcion objetivo del
problema a lo largo del proceso iterativo. En rojo aparece marcado el coste de la mision resultante de
aplicar la trayectoria inicial obtenida con el filtro PAM/PWM, mientras que los puntos azules muestran
el coste de cada una de las iteraciones del algoritmo descrito en esta seccion. Puede comprobarse como
efectivamente este algoritmo permite mejorar el coste de la mision, llegando a ahorrar un 2.45% en
tan solo 6 iteraciones. Por otra parte, se aprecia como el algoritmo tiene una buena velocidad de
convergencia, alcanzandose el mınimo en 8 iteraciones. Ademas, a esto hay que anadirle el hecho de
que el tiempo empleado por simulacion es inferior a un segundo (tengase en cuenta que el tiempo
de muestreo seleccionado es 60 segundos), realizando la optimizacion mediante la funcion linprog de
MATLAB.
Finalmente, en la figura 4.40 aparece representada la secuencia de pulsos de los actuadores, obtenida
tras finalizar el proceso de optimizacion (se han incluido ademas lıneas discontinuas verticales para
marcar los intervalos de muestreo del algoritmo predictivo).
4.5. APLICACIONES AL GUIADO DE VEHICULOS ESPACIALES 163
−50 0 50 100 150 200 250 300 350
0
100
200
300
400
500
600
700
x [m]
y[m
]
Filtro PAM/PWMRestriccion LOSIteracion 1Iteracion 2Iteracion 3Iteracion 4
Restriccion
Punto Inicial
Docking
Figura 4.38: Trayectorias planificadas para la maniobra de rendezvous. La lınea verde representala trayectoria obtenida con las senales de control calculadas con el filtro PAM/PWM, mientrasque las lıneas azules muestran las trayectorias obtenidas en cada una de las iteraciones delalgoritmo descrito en esta seccion. No se representan las trayectorias a partir de la cuartaiteracion, ya que las variaciones resultan indistinguibles.
0 1 2 3 4 5 6 7 8 9 105.1
5.15
5.2
5.25
5.3x 10
−3
Iteraciones
Cos
te [m
/s]
TendenciaFiltro PAM/PWMIteraciones PWM
Figura 4.39: Valor de la funcion objetivo a durante el proceso iterativo.
164 CAPITULO 4. DISENO DE SISTEMAS DE GUIADO
0 500 1000 1500 2000 2500 3000−2
−1
0
1
2x 10
−4
u x [m/s
]
0 500 1000 1500 2000 2500 3000−2
−1
0
1
2x 10
−4
u y [m/s
]
0 500 1000 1500 2000 2500 3000−2
−1
0
1
2x 10
−4
u z [m/s
]
Tiempo [s]
Figura 4.40: Secuencia de pulsos de los actuadores obtenida al final del proceso de optimizacion
Capıtulo 5
Diseno del Sistema de Datos
Aerodinamicos
5.1. Introduccion
En este capıtulo se va a tratar el diseno de un sistema de medida de datos aerodinamicos adaptado
a las necesidades del Cefiro UAV.
Como se puede comprobar en la seccion 1.2, donde se trata la arquitectura general del sistema
de control de vuelo del avion, resulta fundamental disponer de un sistema de datos aerodinamicos
que provea al sistema de control de actitud de medidas de la velocidad aerodinamica, ası como de
los angulos de ataque y de resbalamiento (que definen la orientacion del avion respecto a la corriente
incidente). Ademas, como se detalla en el capıtulo 6, donde se aborda el sistema de navegacion, resulta
util de disponer medidas de la altitud barometrica que complementen a las medidas proporcionadas
por el GPS. Hay que tener en cuenta que estos datos son fundamentales para cerrar los bucles de
control mostrados en los capıtulos 3 y 4, por lo que resulta necesario disponer de un sistema de datos
aerodinamicos que proporcione estas medidas con la precision adecuada.
Entrando en el contenido de este capıtulo, se va a comenzar con la seccion 5.1.1, donde se hara
una breve descripcion del problema de anemometrıa en aviones. Seguidamente, en la seccion 5.1.2
se describiran las restricciones que tienen los aviones no tripulados desde el punto de vista de la
instalacion de sistemas de anemometrıa convencionales, lo que permitira justificar la necesidad de
incluir este capıtulo con un sistema de datos aerodinamicos especıfico para el avion con el que se esta
trabajando en esta tesis. En base a esto, en las secciones 5.2 y 5.3 se realizara un estudio de los sistemas
de medidas de presiones y de angulos de orientacion de la corriente. Integrando estos dos subsistemas,
en la seccion 5.4 se mostrara el diseno final del sistema de anemometrıa adoptado en este trabajo.
Finalmente, en la seccion 5.5 se testeara el funcionamiento del sistema en ensayos realizados en tunel
de viento.
165
166 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
5.1.1. Introduccion a la anemometrıa
Desde los inicios de la aviacion, se ha considerado el sistema de datos aerodinamicos como uno de
los sistemas mas crıticos del avion, ya que en el se basan dos de los instrumentos fundamentales que
deben estar presentes en la cabina, como son el altımetro y el anemometro.
La manera mas usual de medir tanto la altitud como la velocidad de vuelo es a traves de la presion
estatica y dinamica de la corriente exterior al avion. Como se mostro en la seccion 2.1.3, la Atmosfera
Estandar Internacional establece un modelo que permite relacionar la presion estatica de la corriente
exterior al avion con la altitud de vuelo (dando lugar a la conocida como altitud-presion). Ası, para
la troposfera, se puede obtener la siguiente relacion entre presion (p) y altitud (z)
p
psl= (
Tsl − αz
Tsl)
gRgα , (5.1)
donde psl = 101325Pa es la presion estandar a nivel del mar, Tsl = 288,15K es la temperatura estandar
a nivel del mar, α = 6,5K/m es el gradiente termico en la troposfera estandar, g = 9,80655m/s2 es
la aceleracion de la gravedad, Rg = 287 J/(kgK) y γ = 1,4 son la constante y el cociente entre calores
especıficos del aire.
Como se puede apreciar, se trata de un modelo obtenido suponiendo condiciones atmosfericas estan-
dar, por lo que el valor de altitud obtenido no tiene por que coincidir de forma exacta con la altitud
geometrica sobre el nivel del mar. Esto no supone ningun problema en el caso de vuelo en ruta, ya
que todos los aviones miden la altitud usando el mismo modelo, de manera que el error asociado a las
variaciones en las condiciones atmosfericas afectarıa por igual a todos los aviones, garantizandose las
distancias de separacion vertical.
En el caso de fases de vuelo terminales, el modelo ISA puede ser corregido con la presion local del
aeropuerto en ese instante (dato que se conoce como QFE). Este ajuste permite adaptar la Atmosfera
Estandar Internacional a las condiciones atmosfericas locales, de manera que el altımetro barometrico
pasarıa a proporcionar directamente la medida de la altura respecto al aeropuerto. Esta configuracion
del altımetro resulta bastante util para aviones no tripulados de corto alcance (como es el caso que se
esta tratando aquı), permitiendo obtener una buena aproximacion de la altura de vuelo, complemen-
taria con el valor proporcionado por el GPS.
Por otra parte, el metodo mas usual para medir la velocidad aerodinamica es mediante un tubo de
Pitot, estando este sistema presente en la gran mayorıa de los aviones existentes. Como se puede ver
en la figura 5.1, este dispositivo consiste en una sonda que permite captar la diferencia entre la presion
de remanso y la presion estatica de la corriente exterior. En regimen incompresible, esta diferencia
de presiones, conocida como presion dinamica, se puede relacionar con la velocidad de vuelo de la
siguiente manera
pt − p = q =1
2ρV 2. (5.2)
5.1. INTRODUCCION 167
Presión estática
Presión dinámica
Figura 5.1: Esquema tubo de Pitot.
Hay que senalar, que para obtener una medida de la velocidad aerodinamica verdadera (conocida
como TAS, True AirSpeed) a partir de la ecuacion (5.2) es necesario conocer tanto la presion dinamica,
como el valor de la densidad del aire. Usando la ecuacion de estado de los gases perfectos, se puede
obtener un valor aproximado de la densidad a partir de una medida de la presion estatica y de la
temperatura de la corriente
ρ =p
RgT, (5.3)
siendo Rg la constante del aire y T la temperatura estatica del flujo.
Ademas, se puede ver que todas las fuerzas y momentos aerodinamicos se definen en funcion de
la presion dinamica de vuelo, por lo que todas las limitaciones aerodinamicas (como por ejemplo la
entrada en perdida) tambien se expresan en terminos de este parametro. Ası, se puede introducir el
concepto de velocidad equivalente (EAS, Equivalent AirSpeed), de la forma
VEAS =
√
2q
ρsl⇒ VEAS =
√
ρ
ρslVTAS. (5.4)
donde q es la presion dinamica (que para regimen incompresible es q = pt−p0) y ρsl es la densidad del
aire estandar a nivel del mar. Notese que a diferencia de la TAS, la EAS solo depende de la presion
dinamica de vuelo, la cual puede obtenerse directamente mediante el sistema de Pitot y estatica.
Ademas, hay que decir que para vuelos a baja altitud, ambas velocidades seran muy parecidas, ya que
no se produciran variaciones significativas de la densidad del aire.
Entrando en los sensores para medir la orientacion del avion respecto a la corriente incidente, hay
que decir que al contrario de lo que ocurre con la velocidad y altitud barometrica, no existe un sistema
de medida unico para los angulos de ataque y resbalamiento de un avion. Ası, en la practica existen
distintos tipos de sensores que se basan en distintos principios fısicos para proporcionar sus medidas.
Describiendo los sensores mas habituales que se suelen encontrar, se pueden citar los siguientes:
1. Sensores de veleta y potenciometro. Son los sistemas mas habituales, los cuales consisten en una
veleta acoplada a un potenciometro (aunque existen algunos modelos que emplean encoders opticos
en lugar de potenciometros). Este tipo de sensores presenta un coste reducido, y funciona bien en
cualquier avion. Como desventaja hay que mencionar que se pueden inducir errores en la medida
por tener un angulo de flotacion no nulo (aunque estos efectos pueden mitigarse con un correcto
centrado de las veletas).
2. Sensores de presion diferencial. Se basan en la diferencia de presiones que hay en las diferentes
partes de un cuerpo axisimetrico que se desplaza por un medio a angulo de ataque no nulo (ver
168 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
Figura 5.2: Instalacion de un sensor de angulo de resbalamiento de veleta en AV-8B Harrier II.Fuente www.airliners.net.
figura 5.3–izquierda). Dicha diferencia de presiones depende de la geometrıa del tubo, del angulo de
ataque, y en menor medida del numero de Mach y del numero de Reynolds, por lo que a partir de
ella se podrıa obtener una medida del angulo de ataque. Su calibracion es compleja, y deben estar
fabricados con gran precision, lo que ha llevado a que no sean muy populares.
Figura 5.3: Izquierda: Esquema de sensor de angulo de ataque basado en presion diferencial.Derecha: Esquema de un sensor buscador de diferencia de presion nula. Fuente [Grac 58].
3. Sensor buscador de diferencia de presion nula1. Estos sistemas disponen de un tubo giratorio con
dos ranuras en la direccion axial, separadas un determinado angulo (ver figura 5.3). El giro del tubo
esta controlado por un sistema que se encarga de orientarlo hasta que la diferencia de presiones
detectadas entre ambas ranuras sea nula (lo cual ocurrira cuando estas se dispongan simetricamente
respecto a la corriente incidente). De este modo, se puede medir el angulo de ataque a traves de la
posicion angular del tubo.
La ventaja frente al sensor de presion diferencial es que las ranuras pueden disenarse para un rango
1Mas conocidos por su denominacion en ingles Null seeking pressure tubes.
5.1. INTRODUCCION 169
de medidas mucho menor, ya que se espera que siempre esten funcionando a angulos de ataque
pequenos (gracias al sistema de control de giro), consiguiendo ası mayor precision. Sin embargo,
como desventaja, hay que tener en cuenta que este tipo de sensores presenta un aumento de la
complejidad y del coste asociado. La gran mayorıa de aviones de caza y ataque occidentales tienen
este tipo de sensores, que se suele encontrar a un lado del morro. Se puede ver un ejemplo de esto
en la figura 5.4.
Figura 5.4: Instalacion de un sensor de angulo de ataque buscador de diferencia de pre-sion nula, junto con una veleta de angulo de resbalamiento en un AV-8B Harrier II. Fuentewww.airliners.net.
Para entender la problematica que presentan los sistemas de anemometrıa, de los parrafos anteriores
se desprende que para tener una buena medida de la velocidad de vuelo y de la altitud barometrica, es
necesario medir con precision la presion estatica y de remanso de la corriente exterior al avion, ademas
de la temperatura de la corriente. Sin embargo, hay que tener en cuenta que no existen medidas
perfectas de estas presiones, ya que tanto la sonda de presion como el propio avion, alteran el campo
de presiones, de manera que la medida de presion obtenida se vera afectada por errores debidos a
estos efectos. Ademas, estos errores no son constantes, ya que las condiciones de vuelo, y sobre todo la
orientacion del avion respecto a la corriente incidente, influyen visiblemente en las medidas obtenidas,
ya que se producen alteraciones del flujo alrededor de las tomas de presion. El mismo razonamiento
puede hacerse para los sensores de angulo de ataque y resbalamiento.
De este modo, se puede decir que estos errores van a depender fuertemente tanto del diseno de las
sondas de medida, como de la instalacion del sistema de anemometrıa en el avion. Para minimizarlos,
sera necesario estudiar la geometrıa del sistema, de forma que sea lo mas insensible posible respecto
de las variaciones en las condiciones de vuelo; a la vez que habra que ubicarlo en zonas del avion en las
que no se tengan excesivas perturbaciones debidas a la interferencia aerodinamica del mismo.
No obstante, por mas que se intenten minimizar los errores de medida, resulta imposible suprimirlos
totalmente. Esto hace que en aviones convencionales sea necesario realizar una calibracion del sistema
de anemometrıa una vez instalado en el avion, de manera que se puedan contabilizar los errores
introducidos por los sensores y por las condiciones de vuelo, y puedan ser compensados para ofrecer
al piloto una medida con la precision adecuada.
170 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
5.1.2. Sistemas de datos aerodinamicos en UAVs ligeros
Desde el punto de vista de la aviacion convencional (tripulada), puede decirse que el diseno de
sistemas de anemometrıa adecuados es un problema resuelto, existiendo numerosas empresas que
comercializan dispositivos para la gran mayorıa de aviones existentes. Sin embargo, considerando
aviones no tripulados, no resulta tan trivial encontrar sistemas de anemometrıa adecuados. En el caso
de UAVs de gran tamano, pueden emplearse sin problemas los sistemas desarrollados para aviones
convencionales; sin embargo, al tratar con UAVs ligeros (como es el caso de esta disertacion), se tiene
una considerable deficiencia en este campo, ya que en la mayorıa de los casos no pueden emplearse los
sistemas tradicionales debido a restricciones de tamano, peso o coste.
Ademas, hay que decir que aunque en el mercado se pueden hallar algunos sistemas de anemome-
trıa para aviones no tripulados ligeros, resulta muy difıcil encontrar un compromiso adecuado entre
precision y coste.
En este sentido, pueden citarse por ejemplo los dispositivos de Space Age Control, empresa que
comercializa lanzas de anemometrıa de gran precision2 para todo tipo de aeronaves (incluyendo UAVs
ligeros). Sin embargo, su elevado coste (en torno a 6000 e, sin sensores de presion), hace que este
dispositivo sea prohibitivo en esta tesis.
En el otro extremo pueden encontrarse algunos dispositivos de bajo coste, desarrollados fundamen-
talmente en el campo del aeromodelismo, consistentes unicamente en sondas de presion estatica y de
remanso en miniatura, realizadas sin ningun tipo de estudio de errores en las medidas obtenidas. El
resultado son sistemas de muy bajo coste (por ejemplo el fabricante Eagle Tree Systems comercializa
sistemas completos por solo 50 $), pero que carecen de la precision adecuada, debido a que no tienen
en cuenta ni la influencia del avion ni las condiciones de vuelo.
Por otra parte, en cuanto a la medida de la orientacion del avion respecto a la corriente incidente, los
pocos sistemas que pueden encontrarse en el mercado se basan en veletas y potenciometros, como es
el caso de los sistemas comercializados por la empresa Space Age Control anteriormente mencionada,
los cuales alcanzan costes inasumibles en este trabajo.
Cabe destacar ademas el sistema propuesto en [Par 08], donde se muestra el desarrollo de un sistema
de medida de angulo de ataque para UAVs ligeros, basado en el sistema buscador de presion diferencial
nula introducido en la seccion anterior. En dicho trabajo se realizan ensayos del sensor (aislado) en
el tunel aerodinamico, mostrando una buena precision en las medidas; sin embargo, a la hora de su
implementacion practica hay que tener en cuenta que debe ser ubicado en el fuselaje, por lo que se
vera influenciado por la interferencia aerodinamica que genera este.
Con estos condicionantes, se ha fijado como objetivo disenar un sistema de anemometrıa propio
para el avion con el que se esta trabajando en esta tesis, de forma que con un adecuado estudio de la
configuracion del sistema y de su instalacion en el avion se puedan obtener medidas con una precision
aceptable, sin recurrir a equipos con un coste excesivo. Concretamente, se va a tratar el diseno de
2Se trata de una configuracion del sistema de anemometrıa en la que se instalan los sensores en una pertigaque sobresale del avion. Con esta configuracion se busca alejar todo lo posible los sensores de la influenciaaerodinamica del mismo, para evitar que su interferencia falsee las medidas.
5.2. SISTEMA DE MEDIDA DE LA PRESION TOTAL Y ESTATICA 171
un sistema de Pitot y estatica, junto con un sistema de veletas para medir la orientacion del avion
respecto a la corriente. Estos elementos permitiran obtener la velocidad aerodinamica equivalente3, la
altitud barometrica, y los angulos de ataque y de resbalamiento.
A fin de minimizar la interferencia aerodinamica del avion, se ha optado por integrar todo el sistema
de datos aerodinamicos en una lanza de anemometrıa montada en el morro del avion, de manera que
se puedan alejar las tomas de presion y las veletas de angulo de ataque y resbalamiento de los efectos
perjudiciales de dicha interferencia, mejorando la precision del sistema. Como contrapartida, esta
solucion da lugar a un sistema pesado y voluminoso. No obstante, este sistema puede verse como un
sistema de anemometrıa de referencia que sirva para calibrar otros dispositivos mas pequenos situados
en otras zonas del avion
Por ejemplo, se podrıa pensar incluso en emplear sistemas de Pitot y estatica de bajo coste como el
mencionado anteriormente. Ası, si se monta este sistema junto con la lanza de anemometrıa desarro-
llada aquı (usada como sistema de referencia), se podrıan hacer vuelos de calibracion para contabilizar
los errores introducidos por el sistema de bajo coste en funcion de las condiciones de vuelo. Una vez
realizada la calibracion, se puede retirar la lanza de anemometrıa, de manera que el avion quedarıa
con un sistema pequeno y de bajo coste, que a su vez ofrecerıa una precision aceptable gracias a la
calibracion realizada.
En base a los objetivos anteriores, a lo largo de las secciones siguientes se va a tratar el diseno de
un sistema de datos aerodinamicos especıfico para el Cefiro UAV. Se realizara un diseno a medida,
realizando un estudio de los errores debidos a la geometrıa del sensor y a su instalacion, de manera
que el sistema resultante tenga una precision adecuada para los requisitos de este trabajo, a la vez que
el coste final permanezca dentro de los margenes asumibles.
5.2. Sistema de medida de la presion total y estatica
5.2.1. Errores asociados a la configuracion del sistema
Para seleccionar la configuracion adecuada del sistema de medida de presiones de esta tesis, es
necesario realizar estudios de errores en las medidas debidos tanto al diseno del dispositivo como a
su instalacion en el avion. Estos analisis se han basado en algunas publicaciones de la NASA (y de
su predecesor, el NACA), en las cuales se muestran los resultados de ensayos en tunel de distintas
configuraciones de sistemas de Pitot y estatica, analizando los errores obtenidos en funcion de la
geometrıa y de las condiciones de operacion.
A continuacion, se detallan los estudios realizados tanto para el sistema de presion de remanso como
para las tomas de presion estatica.
3La cual se va a tomar como una aproximacion de la velocidad aerodinamica del avion, ya que debidoa las restricciones operativas de este tipo de aviones no tripulados, no son esperables cambios de densidadsignificativos.
172 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
5.2.1.1. Subsistema de presion de remanso
Para un buen diseno del sistema de presion de remanso, es deseable encontrar una configuracion que
permita obtener una medida precisa independientemente de la condicion de vuelo del avion. Teniendo
en cuenta que uno de los factores que influye de forma mas notable en la precision de la medida de
la presion de remanso es el angulo de ataque que ve la sonda, resulta de interes estudiar el rango de
insensibilidad de la misma, el cual se define como el rango de angulos en que la presion medida tiene
un error menor del 1% respecto de la presion real.
En los ensayos realizados por el NACA (los cuales se recogen en [Grac 80]) se estudiaron tubos de
cabezas cilındricas, conicas y ojivales a numeros de Mach entre 0,26 y 2,4 y a angulos de inclinacion
respecto al flujo de hasta 67. Las principales variables de diseno aparte de la forma exterior del tubo
resultaron ser la forma del orificio de toma de presion y el tamano relativo de dicho orificio frente al
diametro del tubo. Para un tamano exterior de tubo dado, resulta de interes estudiar el efecto del
tamano de la apertura frontal. En este sentido, en [Grac 80] se recogen algunos resultados realizados
de los tubos de las figuras 5.5 y 5.6 a Mach 0,26.
Figura 5.5: Ensayo de insensibilidad de tubo de pequena apertura.
Figura 5.6: Ensayo de insensibilidad de tubo de pequena apertura.
Como puede apreciarse, con el tubo de pequena apertura se consigue un rango de insensibilidad
5.2. SISTEMA DE MEDIDA DE LA PRESION TOTAL Y ESTATICA 173
de tan solo ±11, mientras que el de gran apertura (tambien llamado de pared delgada) tiene un
rango de ±23. Por tanto, a mayor tamano relativo del orificio, mayor rango de insensibilidad frente
a variaciones en angulo de ataque o resbalamiento.
En otro ensayo se probo un tubo de pared delgada, con su frontal biselada a un angulo de 10. El
rango de insensibilidad quedo alterado (ver figura 5.7) en este tubo hasta +32 y −13, frente a los
±23 del tubo sin bisel. Se deduce que el efecto del bisel es desplazar el rango de insensibilidad en
tantos grados como se le den al bisel. Frente a angulos de resbalamiento, la insensibilidad del tubo
biselado fue igual que la del tubo sin bisel, ±23.
Figura 5.7: Ensayo de insensibilidad del tubo con boca biselada, a M = 0,26.
Figura 5.8: Cabeza semiesferica ensayada por el NACA.
Tambien se estudio el efecto del cambio de la forma interna del orificio. Cambiar la entrada a una
forma semiesferica (figura 5.8) incremento el rango de insensibilidad unos 3. Se ensayo tambien un
tubo con una entrada conica, con 50 de angulo de generatriz. Este tubo no mostro mejoras frente al
tubo con entrada cilındrica de pared delgada. Sin embargo, al bajar el angulo de la generatriz a 30,
(figura 5.9) se incremento el rango de insensibilidad sensiblemente, ±30.
174 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
Figura 5.9: Ensayo de insensibilidad del tubo con entrada conica a 30.
5.2.1.2. Subsistema de toma de presion estatica
El sistema de presion estatica debe disenarse de forma que la presion captada sea lo mas parecida
posible a la presion de la corriente exterior. A diferencia de la toma de presion de remanso, los orificios
de presion estatica se ubican a lo largo de la lanza de anemometrıa, de manera que son mucho mas
sensibles a las perturbaciones aerodinamicas que produce el propio cuerpo de la lanza. Esto hace que
en general, sea mas complicado conseguir un sistema de medida de presion estatica con la misma
precision que la sonda de presion de remanso.
Para minimizar estos errores, resulta de interes estudiar la influencia de algunos parametros geo-
metricos de la toma de presion estatica, como son el tamano, numero, acabado y distribucion de los
orificios de presion estatica, ası como la posicion de la seccion donde se ubiquen los agujeros respecto
de la cabeza del tubo y del final de este. Este analisis servira para obtener la configuracion del sistema
de presion estatica mas adecuada.
Al igual que se hizo en el caso anterior, el analisis de los errores introducidos por las distintas
configuraciones se va a basar en algunos estudios realizados por el NACA, los cuales se pueden encontrar
en [Grac 57].
Error debido a la posicion de los orificios a lo largo del tubo
El error que se produce en la medida de estatica viene en parte determinado por la posicion que
ocupan los orificios a lo largo de este. Esto viene dado por la influencia de los campos de presiones
asociados a la cabeza y a la base del tubo. Para tubos alineados con la corriente, en el NACA obtuvieron
los resultados experimentales de la figura 5.10.
En el caso subsonico, tras el punto de remanso de la cabeza, la presion registrada se hace menor que
la de la corriente no perturbada. Tras esa zona, la presion aumenta, hasta hacerse igual que la de la
corriente no perturbada tras a una distancia de la cabeza de algo mas de 5 diametros.
5.2. SISTEMA DE MEDIDA DE LA PRESION TOTAL Y ESTATICA 175
Figura 5.10: Distribuciones de presiones, representado como la desviacion o error frente a lacorriente en el infinito, a lo largo de un tubo alineado con la corriente. Resultados para flujosubsonico y supersonico.
Por tanto, si se fija una distancia de 6 diametros desde el comienzo del tubo, se asegura que la
medida que se obtenga va a estar libre de este error.
El error producido por la base del tubo se manifiesta de forma similar. Los resultados muestran
(figura 5.11) que cuanto mas alejados esten los orificios de la base del tubo, menor es el error debido
al campo de presiones producido por la base aguas arriba de esta.
A una distancia de 3,2 diametros de la base, el efecto de esta en la medida es muy pequeno, menor
de un 1%. A 8,8 diametros, el efecto es despreciable. Este efecto sera menor cuanto mas parecidos
sean los diametros del tubo y la base (a iguales diametros, el error es nulo). Los resultados del NACA
son para un cociente entre diametros del tubo y la base de d tubo/D base = 0,203.
Error debido a la posicion angular de los orificios de toma de presion estatica
Como en el diseno del subsistema de presion de remanso, es deseable maximizar la insensibilidad
frente a cambios en α y β.
En el momento en que un tubo se aparta de la condicion de orientacion perfecta con la corriente
incidente, el problema se puede separar en un problema axial y un problema de flujo cruzado o perpen-
dicular al eje del tubo. A priori puede resultar intuitivo realizar una serie de orificios equiespaciados,
sin embargo, los ensayos realizados por el NACA sugieren que pueden resultar mas interesantes otras
configuraciones no simetricas. Ası, si se considera una configuracion con orificios equiespaciados, se
puede observar que para angulos de inclinacion del tubo de ±5 se tienen errores atribuibles a la
distribucion de orificios del 1% sobre el valor real de la presion estatica.
Pasando a estudiar configuraciones no equiespaciadas, hay que tener presente que parte del error de
los diferentes orificios viene dado por la distribucion de presiones producida flujo cruzado alrededor
176 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
Figura 5.11: Efecto de la base del tubo en la medida de estatica para orificios situados adiferentes distancias de la base.
de un cilindro esbelto (la cual se muestra en la figura 5.12). Dado que este campo de presiones no es
uniforme, la lectura de una toma de estatica situada en un angulo φ tendra un error asociado a su
posicion. En la figura 5.12 se puede apreciar que en torno a φ = 30, el error debido al flujo cruzado
es nulo. Para profundizar en este efecto, se ensayaron los errores que proporcionaban tubos con tomas
de estatica en varias posiciones, mostrandose los resultados de los ensayos en la figura 5.13.
De estos datos se puede concluir que el error inducido por el campo de presiones asociado al flujo
transversal aumenta segun lo hace el numero de Mach. Ademas, si los orificios estan situados a φ =
37,5, el error asociado a este efecto es nulo (ya que la figura 5.12 indica que en esa posicion angular
el incremento de presiones debido al flujo cruzado es nulo). Parecerıa ideal entonces realizar solo dos
orificios de estatica en esas dos posiciones, con lo que se garantizarıa una gran insensibilidad frente al
angulo de ataque. Sin embargo, esta configuracion tiene dos importantes inconvenientes:
1. No se puede confiar en solo dos orificios. La probabilidad de acabar con todos los orificios obstruidos
por residuos es mayor cuanto menor es el numero de orificios.
2. No es razonable esperar que esta configuracion se comporte de forma adecuada frente al angulo de
resbalamiento.
Con estos inconvenientes, para obtener una mejor solucion de compromiso, se ha considerado la si-
guiente distribucion de orificios
1. Cuatro orificios cilındricos rectos equiespaciados a 20, de 1,09mm, en la parte superior del tubo.
2. Seis orificios cilındricos rectos equiespaciados a 30, de 1,09mm, en la parte inferior del tubo.
En la referencia [Grac 57] se pueden ver los resultados de los ensayos realizados con esta configuracion
(de ese trabajo se ha extraıdo la figura 5.14, en la que se muestra la variacion del error con el angulo
5.2. SISTEMA DE MEDIDA DE LA PRESION TOTAL Y ESTATICA 177
Figura 5.12: Distribucion de presiones alrededor de un cilindro infinito a un angulo de ataquede 45, a M = 0,2. Las dos distribuciones de presiones corresponden a ensayos realizados anumeros de Reynolds por encima y por debajo del Reynolds crıtico.
de ataque), registrandose unos rangos de insensibilidad a M = 0,2 de −10 a +22 en α y de ±5 en
β.
Notese que este diseno favorece la insensibilidad respecto a variaciones en el angulo de ataque, en
detrimento de la insensiblidad en el angulo de resbalamiento. Esto es totalmente logico ya que en
condiciones normales de operacion el avion mantiene un vuelo simetrico (con resbalamiento aproxi-
madamente cero).
Error debido al tamano y forma de los orificios
Ademas de la ubicacion de los orificios, el tamano y la forma de estos tambien condicionan la precision
de la medida que pueden proporcionar. Estudiar el flujo en el interior del orificio serıa complicado,
por lo que de nuevo se recurre a ensayos. El NACA proporciono los resultados de las figuras (5.15) y
(5.16).
En la figura 5.16 se puede ver que es posible jugar con el acabado de los agujeros para conseguir
una correccion en un sentido u otro de la lectura de estatica. Es decir, se podrıa desarrollar un tubo
todavıa mas preciso si se decidiera usar el acabado que produce una lectura inferior a la real en las
posiciones del tubo que proporcionan un error positivo, y viceversa. No obstante, jugar con el acabado
para intentar corregir los errores de posicion angular de los orificios puede conducir a mayores errores
en configuraciones de flujo cruzado. Es mas, para conseguir exactamente el acabado deseado serıa
178 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
Figura 5.13: Errores en lectura de presion estatica de tubos con orificios en varias posicionesentre ±30 y ±40, a α = 12, frente al numero de Mach.
necesario hacer agujeros lo bastante grandes como para permitir trabajar su acabado. Y como se
puede observar, el error que se obtiene al aumentar el tamano del orificio es considerable. Por tanto,
es mas prudente limitarse a hacer agujeros de seccion cilındrica pura del menor diametro posible. Los
agujeros no deben ser microscopicos, ya que debe ser posible realizar una inspeccion visual antes de
cada vuelo. Decidirse por unos agujeros de 1mm (0,0399 in) asegura, en regimen incompresible, que
el error propio de los orificios va a ser menor que ∆p/q = 0,005, es decir, menores de un 0,5%.
Error debido a la instalacion en el avion
Hasta ahora se ha hablado de los errores producidos por el propio diseno del tubo y por la geometrıa
de los elementos inmediatos a el. No obstante, el campo de presiones producido por el propio avion
tambien influye. Hay numerosos ensayos que tratan los errores producidos por una instalacion en el
borde de ataque del ala, en el intrados de esta, en el borde de ataque de la deriva, en el morro,
etc.
Como se ha comentado en la introduccion, la configuracion idonea para Cefiro es la de tubo montado
en el morro. Los resultados de [Grac 80] para tubos montados en morro, y diferentes morros de
revolucion, a M=0.21 se muestran en la figura 5.17. En el caso de instalar el tubo en el morro de
Cefiro, y poniendo las tomas de estatica a x = 2 · Dmorro, se obtendrıa un error por interferencia
con el morro de ∆P/qc ≃ 0,01. Parece claro que alargar el tubo no va a proporcionar resultados
significativamente mejores por la poca pendiente de la curva en torno a x/D = 2.
5.2. SISTEMA DE MEDIDA DE LA PRESION TOTAL Y ESTATICA 179
Figura 5.14: Variacion del error en lectura de estatica frente al angulo de ataque del diseno con10 orificios.
Figura 5.15: Errores en lectura de presion estatica para diferentes diametros de los orificios demedida.
5.2.2. Seleccion de la configuracion del sistema de Pitot y estati-
ca
Despues de estudiar los resultados de los ensayos del NACA se esta en condiciones de decidir una con-
figuracion para el sistema de Pitot-estatica. Las caracterısticas que se han juzgado optimas son:
1. Una cabeza de seccion exterior recta y seccion de entrada conica con generatriz a 15. El diametro
de la cabeza estara en torno a 20mm, por ser un tamano manejable y tambien ser similar al tamano
base usado en los estudios.
2. Orificios de toma de presion estatica a x1 = 2 · Dmorro del vertice del morro de Cefiro, a x2 =
9 · Dextremo, tubo del extremo del tubo, y a x3 = 3 · Dtubo, raiz del collar de adaptacion entre las
secciones de diferente diametro del tubo, si las hubiera.
3. Estos orificios se dispondran segun lo descrito en la figura 5.14, es decir, cuatro orificios arriba y
180 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
Figura 5.16: Errores en lectura de presion estatica para diferentes acabados de los orificios demedida.
Figura 5.17: Variacion de los errores en lectura de presion estatica frente a la distancia delextremo del morro del avion, para diferentes morros. En azul, la mas aproximada a la geometrıadel morro de Cefiro.
seis abajo, con un diametro en torno a 1mm, y seran cilındricos de seccion recta con el acabado de
la arista mas afilado posible.
Figura 5.18: Esquema representativo de las decisiones de diseno derivadas de los ensayos de[Grac 80].
Con esta configuracion se tendra un intervalo de insensibilidad de −10,+20 en α y ±5 en β. El
error derivado de las decisiones de diseno se estima que estara en torno a:
5.2. SISTEMA DE MEDIDA DE LA PRESION TOTAL Y ESTATICA 181
Errores previstos
Del sistema de toma de presion totalDebido a la forma de la cabeza ∆pt/qc ≃ 0Del sistema de toma de presion estaticaDebido a la posicion respecto del morro del avion ∆p/qc ≃ 0,01Debido al tamano de los orificios ∆p/qc ≃ 0,005Debido al acabado de los orificios ∆p/qc ≃ 0Error de la configuracion en servicio (incluye los dos anteriores) ∆p/qc ≃ 0,005Error debido a la presencia del collar adaptador ∆p/qc ≃ 0,005Error total (posicion respecto avion, configuracion de orificios, y collar) ∆p/qc ≃ 0,02
Cuadro 5.1: Errores previstos en la instalacion de anemometrıa.
5.2.3. Sensores de presion
De los sensores de presion que se utilicen dependera la calidad de los datos de velocidad y altitud
que se obtengan. Tras estudiar la oferta del mercado, se opto por los sensores de la serie ASDX de
Honeywell, de elemento sensor piezorresistivo.
Este tipo de sensores permiten un encapsulado reducido, con un area inferior a 2 cm2 y un peso de
varios gramos, lo cual los hace ideales para ser instalados en aviones no tripulados ligeros. Sin embargo,
hay que decir que la precision no es excesivamente alta (±2%), aunque tienen un buen comportamiento
lineal que permite que puedan ser calibrados para obtener medidas mas precisas. Ademas, en cualquier
caso hay que tener en cuenta que son porcentajes de error similares a los introducidos por la propia
instalacion del tubo de Pitot y estatica.
Dentro de la familia ASDX, Honeywell ofrece sensores de presion absoluta y diferencial, con diferentes
rangos de medida. Cuanto mas ajustado este este rango a la variable que se desea medir, mayor
resolucion se tendra en la medida. Los rangos se determinan facilmente dadas las actuaciones previstas
del avion.
1. Sensor de presion estatica: es el sensor de tipo absoluto. Segun la atmosfera estandar, y suponiendo
que el techo maximo operativo de Cefiro es de 3000m, las presiones esperables se hallan en el
intervalo que va de 701 hPa (10,168 psi) en el techo a 1013 hPA (14,69 psi) a nivel del mar. El sensor
cuyo rango es de 0− 15 psi es el mas adecuado, ya que no se esperan presiones mucho mayores que
1013 hPa.
2. Sensor de presion dinamica: es el sensor de tipo diferencial, una de sus entradas sera la toma de
presion de remanso y la otra la de presion estatica. La presion dinamica a medir va desde los 0Pa
que se tienen con el avion en reposo y sin viento, a la que corresponde a la velocidad maxima de
diseno a nivel del mar, donde la densidad es mayor. La velocidad maxima de crucero a nivel del
mar es 140 km/h, (39m/s). Considerando ademas una velocidad maxima de diseno de 200 km/h
(55,5m/s) el nivel maximo de presion dinamica esperado es 18,528 kPa (0,268 psi), por lo que se ha
seleccionado el sensor de menor rango disponible, de 0− 1 psi.
182 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
Un aspecto interesante que cabe mencionar sobre la precision de este sistema de medida, es que la
precision de la velocidad aerodinamica proporcionada va creciendo con la velocidad de vuelo. Hay que
tener en cuenta que los sensores de presion son medidores digitales, por lo que el dato de salida no
es una senal continua, sino que tiene una resolucion determinada (llamada paso de cuantizacion). Por
ejemplo, el sensor diferencial es incapaz de detectar variaciones de presion por debajo de 5,16Pa.
Teniendo en cuenta que la presion dinamica es una funcion cuadratica de la velocidad, el error
en velocidad introducido por una variacion de presion dinamica de 5,16Pa tendra distinto efecto a
distintas velocidades (ver figura 5.19). Por ejemplo, la mınima velocidad que se podra detectar vendra
dada precisamente por la correspondiente a una presion dinamica igual al paso de cuantizacion del
sensor, que a nivel del mar viene dada por Vmin =√
2 · 5,16/ρsl = 2,9m/s.
Notese que esto supone un error importante, sin embargo, hay que tener en cuenta que durante la
operacion normal del avion no se alcanzaran esas velocidades tan bajas, ya que la velocidad equivalente
de entrada en perdida de la aeronave se situa en torno a Vstall = 13m/s (que es equivalente a una
presion dinamica de 103,51Pa). En estas condiciones, el error en velocidad introducido por el paso
de cuantizacion es ∆V =√
2 · (103,51 + 5,16) /ρsl − 13 = 0,31m/s. Se trata de un error bastante
mas reducido (2.5%), que ira disminuyendo progresivamente al aumentar la velocidad de vuelo de la
aeronave.
Figura 5.19: Variacion del efecto del error del sensor en la medicion de velocidad aerodinamica.
5.3. Sistema de medida del angulo de ataque y angulo
de resbalamiento
De los sistemas normalmente usados para medir la orientacion del avion respecto a la corriente
incidente (los cuales se introdujeron en la seccion 5.1.1), la opcion mas adecuada para el avion con el
que se esta trabajando es la que se basa en veletas y potenciometros.
Entre las razones que permiten decantarse por esta opcion, cabe decir que se trata de un sistema
sencillo, con peso y coste reducido y de facil instalacion. Ademas, estas veletas pueden ser integradas
facilmente en la lanza de anemometrıa propuesta en la seccion anterior, de manera que se pueden alejar
de la influencia aerodinamica del avion, lo que permite conseguir mayor precision en las medidas.
5.3. SISTEMA DE MEDIDA DE ANGULO DE ATAQUE Y RESBALAMIENTO 183
Ademas, otro factor que hay que tener en cuenta es que el sistema de medida basado en veletas es
el de mas facil calibracion. Ası, si se considera despreciable la influencia aerodinamica del morro4 y
se supone una operacion ideal en la que las veletas estan perfectamente alineadas con la corriente,
unicamente serıa necesario un transportador de angulos para relacionar las tensiones medidas con el
potenciometro con las deflexiones de las veleta. De este modo, con esta sencilla operacion de calibracion
se tendrıa una primera estimacion de los angulos ataque y resbalamiento del avion.
Por contra, si se hubieran considerado sensores de orientacion del avion basados en diferencias de
presiones (como los descritos en la introduccion), se hubiera necesitado realizar una calibracion mas
exhaustiva para comenzar a obtener medidas satisfactorias. Por su ubicacion en el fuselaje del avion,
estos sistemas se ven mas influenciados por la interferencia aerodinamica que genera este. De este
modo, como se puede ver en [Grac 58] Para obtener lecturas correctas, es necesario realizar ensayos
en tunel aerodinamico, junto con ensayos en vuelo.
El problema radica en que con los medios de los que se dispone en esta tesis, no se pueden realizar
ensayos en vuelo de calibracion (ya que no se dispone de otro sistema de medida de angulos de orienta-
cion con el que comparar), ni tampoco se pueden realizar ensayos adecuados en el tunel aerodinamico,
ya que, hasta la fecha, no se dispone de la capacidad para instalar un modelo del avion en el tunel y
realizar barridos en angulos de orientacion.
Por otra parte, tambien hay que decir que al contrario de lo que ocurre con los sistemas de Pitot
y estatica, en la literatura no se disponen de estudios tan detallados que permitan predecir el error
previsible en funcion de la geometrıa de las veletas o de la instalacion del avion.
A falta de esta base teorica, se va a proponer un diseno de las veletas basado en el sistema de
anemometrıa propuesto por el NACA en [Rich 59]. En este sentido, en la figura 5.20 puede verse la
geometrıa adoptada por estos elementos. La base del sistema es una pieza que permite el acoplamiento
a la lanza de anemometrıa, en la que se instala el potenciometro para medir angulos5. Para separar la
veleta de la interferencia aerodinamica de propia lanza, se ha incorporado un tubo, en cuyo interior
se encuentra en eje de rotacion de cada veleta.
Para minimizar los posibles errores, se ha equilibrado la veleta para que tenga su centro de gravedad
lo mas cercano posible al eje de rotacion. Esto permitira evitar que se produzcan angulos de flotacion,
por lo que las veletas permaneceran alineadas con la direccion local de la corriente incidente.
En cuanto a la interferencia aerodinamica del fuselaje, en [Grac 58] se presentan algunos resultados
en los que se muestra como varıa el angulo de ataque local en funcion de lo adelantada que se coloque
la veleta en la lanza de anemometrıa. De este trabajo se ha extraıdo la figura 5.21, donde puede verse
que si la veleta se situa a una distancia superior a 1.5 diametros del fuselaje, el efecto del fuselaje en
el angulo de ataque local que ve la veleta es muy pequeno.
4Como se vera mas adelante, las veletas se ubican en la lanza de anemometrıa suficientemente alejadas delmorro del avion, por lo que la interferencia aerodinamica es pequena.
5Se han usado potenciometros multivuelta de lamina resistiva, con montaje en divisor de tension. A la horade su seleccion, se ha buscado la mayor linealidad posible, con el fin de mitigar en la medida de lo posible loserrores debidos a este sensor.
184 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
Cuerpo principal
Eje
Potenciómetro
Carcasa del ejey rodamientos
Figura 5.20: Esquema de una de las veletas empleadas en el sistema de datos aerodinamicos
Figura 5.21: Variacion del angulo de ataque local con la distancia al fuselaje. Datos obtenidospara un morro ojival, con punta redondeada, a M = 0,8.
5.4. Diseno de la lanza de anemometrıa
En base a todas las consideraciones anteriores, a continuacion se va a mostrar la configuracion final
del sistema de datos aerodinamicos disenado para el avion con el que se esta trabajando en esta
tesis.
5.4. DISENO DE LA LANZA DE ANEMOMETRIA 185
Como se ha comentado antes, se ha optado por ubicar tantos las sondas de presion como las veletas
de angulo de ataque y resbalamiento en una lanza de anemometrıa. Esto permite alejar todos estos
sensores de la interferencia aerodinamica producida por el propio avion, en el fin de tener una medida
con la mayor precision posible.
A continuacion, se resumen las decisiones de diseno que han dado lugar al sistema de anemometrıa
final, algunas de las cuales ya han sido descritas en secciones anteriores:
Veletas de angulo de ataque y resbalamiento. Se han disenado segun la figura 5.20. Para evitar la
interferencia aerodinamica del fuselaje, deberan colocarse a 1.5 diametros del comienzo del morro.
Los potenciometros deberan instalarse dentro del tubo principal de la lanza de anemometrıa, lo
que limitara la seccion mınima de dicho tubo (se ha considerado aceptable un tubo de 30 mm de
diametro exterior).
Toma de presion de remanso. Cabeza de seccion exterior recta, con una entrada conica de angulo
de generatriz de 15. Tanto la toma de estatica como la de remanso se han fabricado en un tubo
de 20 mm de diametro, lo que obliga a instalar un cuello adaptador para acoplarlo con la seccion
principal de la lanza de anemometrıa donde se instalan las veletas.
Toma de presion de estatica. Para evitar la interferencia aerodinamica de la cabeza de la lanza,
del morro y del cuello adaptador, se han ubicado los orificios de la toma de presion estatica segun
lo dispuesto en la figura 5.18. En cuanto a los orificios, se han realizado 10 taladros de 1 mm de
diametro, dispuestos segun la figura 5.14, con el fin de ampliar la insensibilidad ante cambios en el
angulo de ataque.
El resultado del proceso de diseno es el que puede verse en la figura 5.22, donde se muestra una pa-
noramica de la lanza de anemometrıa completa. Una vision mas detallada se muestra en la figura 5.25,
en la que se muestra el despiece completo del sistema, con todos los elementos que lo constituyen. Por
otra parte, en la figura 5.23, puede ver una instantanea del anclaje del sistema de datos aerodinamicos
en el fuselaje del avion, donde se han instalado ademas los circuitos con los sensores de presion y la
adaptacion de senales de los potenciometros.
Ademas, para ubicar el sistema de anemometrıa dentro del diseno del avion, en la figura 5.24 se
presenta una vista del Cefiro UAV, con la lanza de anemometrıa instalada en el morro. Se puede
apreciar aquı el tamano relativo del sistema de anemometrıa respecto al avion en su conjunto, al
mismo tiempo que permite ver la distancia caracterıstica entre las tomas de presion y el cuerpo del
avion.
Finalmente, hay que mencionar que de acuerdo con los objetivos establecidos en la introduccion de
este capıtulo, todo el sistema de anemometrıa ha sido desarrollado y construido en el Laboratorio de
Ingenierıa Aeroespacial, lo cual ha permitido disponer de un sistema de datos aerodinamicos con la
precision adecuada y con un coste dentro de las limitaciones de esta tesis. Este proceso de diseno y
construccion ha sido recogido en el Proyecto Fin de Carrera [Andr 10], dirigido por el autor de esta
disertacion.
186 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
Figura 5.22: Vista general del diseno de lanza de anemometrıa.
Figura 5.23: Imagen del punto de anclaje del sistema de anemometrıa, donde se aprecia ademasla instalacion de los sensores de presion y al placa de interfaz de los potenciometros.
5.4. DISENO DE LA LANZA DE ANEMOMETRIA 187
Figura 5.24: Vista del Cefiro UAV con el sistema de anemometrıa instalado
188 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
Figura 5.25: Despiece del diseno de lanza de anemometrıa.
5.5. ENSAYOS EN TUNEL AERODINAMICO 189
5.5. Ensayos en tunel aerodinamico
Para garantizar la precision del sistema de anemometrıa, es necesario realizar una campana de
ensayos que permita identificar las condiciones de operacion en las que las medidas del sistema son
aceptables. Al mismo tiempo, esto puede servir para estimar los errores introducidos en funcion de las
condiciones de vuelo, de manera que se pueda realizar una calibracion del sistema de anemometrıa,
compensando dichos errores para obtener una precision aun mayor.
Desde el punto de vista de los sistemas de anemometrıa convencionales, las pruebas de calibracion
requieren un campana exhaustiva de ensayos, tanto en tunel de viento como en vuelo. Sin embargo,
teniendo en cuenta las particularidades de esta tesis, la capacidad de ensayos es limitada. Ası, por un
lado no resulta posible realizar ensayos en vuelo, ya que se carecen de los elementos necesarios para
ejecutarlos (no se dispone de aviones perseguidores o de otros sistemas de anemometrıa auxiliares
como los que se suelen emplear en la calibracion de los sistemas convencionales).
Por otro lado, aunque en el Departamento de Ingenierıa Aeroespacial y Mecanica de Fluidos se
dispone de un tunel de viento con un rango de velocidades acorde con las necesidades de Cefiro, las
opciones de ensayo fueron limitadas durante el desarrollo de esta tesis, debido a restricciones de la
camara de ensayo y a limitaciones de disponibilidad del tunel.
Pese a estas limitaciones, se han podido hacer algunos ensayos para comprobar las caracterısticas
del sistema de datos aerodinamicos que se ha desarrollado. Ası, por un lado, para garantizar que los
rangos de insensibilidad estimados en la seccion 5.2.1 se cumplen en la realidad, se realizo un montaje
de la seccion de toma de presiones en el tunel, realizando una campana de ensayos para comprobar la
influencia de los angulos de orientacion de la corriente, ası como de la velocidad de vuelo.6
Por otra parte, para comprobar la integracion avion – sistema de anemometrıa, se planteo otro
ensayo en el que se instalo el morro de la aeronave con el sistema de anemometrıa en la camara de
ensayos, realizando ensayos a distintas velocidades. Este ensayo permite instalar en la bodega del avion
toda la avionica utilizada en los vuelos reales, de manera que permite usar tanto los sensores como los
sistemas de adquisicion embarcados. Esto permite calcular la funcion de calibracion real que permite
relacionar las tensiones medidas de los sensores con la velocidad real de la aeronave.
5.5.1. Ensayos de insensibilidad del sistema de Pitot y estatica
Como se ha mencionado anteriormente, uno de los problemas que presenta el diseno de tomas de
presion en sistemas de anemometrıa de aviones es la variabilidad en el angulo de incidencia respecto
a la corriente que puede tener el avion. Hay que tener en cuenta que las sondas de presion estan fijas
en el avion, por lo que tendran la misma orientacion respecto a la corriente exterior que la propia
aeronave. Por tanto, para tener una buena medida de la velocidad y de la altitud-presion en cualquier
condicion de vuelo, es necesario asegurarse que el error cometido en la medida de estas presiones al
6Por restricciones de la camara de ensayos del tunel en el momento de realizar las mediciones, no se pudoinstalar la lanza de anemometrıa completa (lo cual hubiera servido para ver ademas el comportamiento de lasveletas). Por tanto, se deja esta tarea en la lista de trabajos futuros a llevar a cabo para mejorar el sistema.
190 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
variar los angulos de ataque y resbalamiento, se mantiene dentro de unos margenes aceptables.
Esta insensibilidad respecto a angulos de ataque y resbalamiento ha sido uno de los condicionantes
de diseno de la lanza de anemometrıa descrita en la seccion anterior, para lo cual se realizo un analisis
de errores previstos en funcion de la configuracion adoptada, los cuales se basaban estudios publicados
por el NACA. No obstante, para tener constancia de que se ha alcanzado este objetivo, en esta seccion
se van a presentar algunos ensayos realizados en tunel de viento en los que se sometio el sistema de
Pitot y estatica construido en esta tesis a distintas condiciones de vuelo.
Hay que decir que por restricciones del tunel de viento, no se pudo instalar el morro del avion con la
lanza de anemometrıa completa (ya que en esas condiciones no se podıa variar el angulo de ataque del
montaje), por lo que se tuvo que ensayar la seccion de medida de presiones (ver figura 5.25) de forma
aislada. No obstante, en base a los estudios publicados por el NACA, la distancia entre las tomas
de presion y el fuselaje es suficientemente grande como para considerar que los errores debidos a la
interferencia seran pequenos.
Figura 5.26: Montaje realizado en el ensayo de insensibilidad del sistema de Pitot y estatica. Ala izquierda se puede ver el montaje de las sondas de presion sobre un sistema rotatorio paracontrolar la inclinacion respecto a la corriente incidente. En el lado derecho se muestra unapanoramica general de la camara de ensayos del tunel, pudiendo apreciarse en la parte superiorel sistema de Pitot y estatica del tunel, usado como referencia.
Entrando en el montaje empleado, en el lado izquierdo de la figura 5.26 se puede apreciar la ins-
talacion en el tunel de la seccion de tomas de presiones de la lanza de anemometrıa, ubicada en una
plataforma giratoria que permite controlar el angulo de ataque que ve la sonda de presiones. Por otra
parte, en el lado derecho de la figura se aprecia una panoramica general de la camara de ensayos del
tunel, observandose el sistema de Pitot y estatica de referencia, instalado en la parte superior de la
camara de ensayos.
Ademas, para realizar las medidas, se empleo el sistema de medida de presiones incorporado en el
tunel, ya que ofrece mayor precision que los sensores de presion embarcados. Se consigue ası eliminar
los errores introducidos por estos sensores, centrando el analisis en caracterizar la insensibilidad del
sistema de medida de presiones ante cambios en el angulo de ataque y de resbalamiento.
5.5. ENSAYOS EN TUNEL AERODINAMICO 191
A la hora de ejecutar los ensayos, se plantearon dos tandas de medidas. En primer lugar, se analizo
el efecto del angulo de ataque, recogiendo muestras con velocidades correspondientes al 40%, 60%
y 80% de potencia del tunel7, de manera que para cada velocidad del tunel, se recogieron datos a
angulos de ataque que van desde −20 a 20, en incrementos de 5. Es importante senalar que la
falta de simetrıa en la distribucion de los orificios de la toma de presion estatica de la configuracion
empleada (ver figura 5.14), hace que sea necesario explorar el comportamiento tanto a angulos de
ataque positivos como negativos.
Del mismo modo, a continuacion se giro la sonda 90 para poder analizar el comportamiento de la
misma ante variaciones del angulo de resbalamiento, realizando medidas para los mismos regımenes
de funcionamiento del tunel, y para angulos de resbalamiento de 0, 5, 10 y 15. Notese que en este
caso la distribucion de orificios de presion estatica sı es simetrica, lo cual permite reducir el numero
de situaciones exploradas.
A la hora de ensayar cada una de las configuraciones descritas en los parrafos anteriores, para
cada condicion de ensayo (velocidad y angulo de orientacion), se tomaron 100 muestras de presiones
espaciadas 0.3 segundos. A la hora de la representacion, se escogio el valor medio de cada secuencia
de muestreo tomada en cada configuracion.
Entrando a comentar los resultados obtenidos, en la figura 5.27 puede verse el error relativo en
presion dinamica respecto a la medida de referencia del sistema de Pitot y estatica del tunel, en
funcion del angulo de ataque y de velocidad del tunel. Comparando los resultados con la tabla 5.1,
puede verse como los errores obtenidos entran dentro del rango esperado debido al diseno del sistema
de anemometrıa, manteniendose el error por debajo del 2% en el rango de angulos de ataque que cabe
esperar durante la operacion normal de la aeronave.
Por otra parte, tambien es destacable el efecto de la distribucion de orificios en la toma de presion
estatica, desplazando el rango de insensibilidad hacia angulos de ataque positivos. Esto permite una
mejor estimacion de la velocidad aerodinamica en condiciones de vuelo a baja velocidad, en las que se
incrementa el angulo de ataque.
Del mismo modo, en la figura 5.28 puede verse como varıa el error relativo en la presion estatica
en funcion del angulo de ataque al que se encuentre la lanza de anemometrıa. Al igual que en caso
anterior, los errores obtenidos en el rango de angulos de ataque de operacion permanecen por debajo
del 2%, al mismo tiempo que el rango de insensibilidad se desplaza de la misma forma hacia la zona
de angulos de ataque positivos.
Pasando a comprobar el comportamiento ante variaciones en el angulo de resbalamiento, pueden
verse en las figuras 5.29 y 5.30 los errores relativos en la presion dinamica y en la presion estatica
respectivamente, ante variaciones en este angulo de orientacion. Como se ha mencionado antes, solo
se representan angulos de resbalamiento positivos debido a la simetrıa del problema.
En general, se aprecia como el rango de insensibilidad se ha visto disminuido, de manera que los
errores permanecen acotados hasta angulos de resbalamiento de 5, creciendo notablemente a partir
de ahı. Este comportamiento es debido a la distribucion de orificios de la toma de presion estatica
7En las figuras que se mostraran a continuacion se vera la velocidad media correspondiente a cada potencia.
192 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
−20 −15 −10 −5 0 5 10 15 200
0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
0.09
Angulo de ataque [deg]
∆ p
/ q
V
mean = 13.6 m/s
Vmean
= 17.8 m/s
Vmean
= 22 m/s
Figura 5.27: Error de la presion dinamica medida por el sistema de anemometrıa respecto altubo de Pitot calibrado del tunel en funcion del angulo de ataque.
−20 −15 −10 −5 0 5 10 15 20−0.1
−0.09
−0.08
−0.07
−0.06
−0.05
−0.04
−0.03
−0.02
−0.01
Angulo de ataque [deg]
∆ p
/ q
Vmean
= 13.6 m/s
Vmean
= 17.8 m/s
Vmean
= 22 m/s
Figura 5.28: Error de la presion estatica medida por el sistema de anemometrıa respecto al tubode Pitot calibrado del tunel en funcion del angulo de ataque.
5.5. ENSAYOS EN TUNEL AERODINAMICO 193
que se ha adoptado. Ası, al ubicar orificios unicamente en las zonas superior e inferior de la toma
de presion estatica, se favorece la precision ante cambios en el angulo de ataque, pero se empeora el
comportamiento ante variaciones en el angulo de resbalamiento.
No obstante, hay que tener en cuenta que en condiciones normales de operacion, la aeronave mantiene
un vuelo simetrico, lo cual se traduce en angulos de resbalamiento casi nulos.
A la vista de estos resultados, puede concluirse que el diseno de las tomas de presiones ha resultado
satisfactorio, mostrando una precision adecuada en el rango de velocidades, angulos de ataque y angulos
de resbalamiento que pueden encontrarse durante la operacion normal de la aeronave.
5.5.2. Ensayo del sistema completo integrado en el morro
Una vez comprobado el buen funcionamiento de las tomas de presion frente a variaciones en los
angulos de ataque y resbalamiento, se decidio realizar en el tunel una prueba funcional de todo el
sistema en su conjunto (avion y sistema de anemometrıa). Esto permite realizar una simulacion del
comportamiento todo el sistema de lectura de datos aerodinamicos (lanza de anemometrıa, sensores y
computador de vuelo para la adquisicion de datos) en condiciones de operacion similares a las de un
vuelo real.
Como se puede ver en la figura 5.31, se instalo el morro del Cefiro UAV (incluyendo el sistema de
anemometrıa) en una bancada instalada en la camara de ensayos del tunel. En la bodega de carga de
la aeronave se instalaron tanto los circuitos con los sensores de presion y acondicionadores de senales
de los potenciometros (ver figura 5.23), como el computador de vuelo encargado de la adquisicion de
datos para su posterior analisis (en el capıtulo 7 se profundizara en el desarrollo de este sistema).
Ası, a diferencia de los experimentos de la seccion anterior, en esta ocasion son los sensores de pre-
sion embarcados en el avion los encargados de realizar las medidas correspondientes. En este caso,
se implemento ademas en el computador de vuelo la lectura de una nueva senal de entrada, corres-
pondiente a la salida del sistema de medida de presiones instalado en el tunel (el cual proporciona
una salida analogica lineal con la presion medida, la cual se uso para que el computador embarcado
pudiera registrar en tiempo real la velocidad medida por el tunel).
Con este montaje, se realizo un barrido con distintas velocidades del tunel de viento, registrando
muestras correspondientes a distintos puntos de operacion. Hay que comentar que debido a las restric-
ciones del montaje, no se pudo realizar un barrido en angulo de ataque y resbalamiento, de manera
que todas las muestras se tomaron con el fuselaje alineado con la corriente incidente. No obstante,
a la vista de los resultados de insensibilidad mostrados en la seccion anterior, cabe esperar que el
comportamiento mostrado con este ensayo sea extrapolable a angulos de orientacion dentro de las
zonas de insensibilidad descritas anteriormente.
Entrando a comentar los resultados obtenidos, en la figura 5.32 se puede ver como en general, el
sistema de anemometrıa disenado en este capıtulo proporciona medidas adecuadas de la velocidad de
vuelo, las cuales se aproximan a las que indica el sistema de Pitot y estatica de referencia instalado
en el tunel. Puede verse como la precision de las medidas se va incrementando con la velocidad del
194 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
0 2 4 6 8 10 12 14 16 18 200
0.02
0.04
0.06
0.08
0.1
0.12
0.14
0.16
Angulo de resbalamiento [deg]
∆ p
/ q
Vmean
= 13.6 m/s
Vmean
= 17.8 m/s
Vmean
= 22 m/s
Figura 5.29: Error de la presion dinamica medida por el sistema de anemometrıa respecto altubo de Pitot calibrado del tunel en funcion del angulo de resbalamiento. Debido a la simetrıadel sistema de Pitot y estatica, solo se han ensayado angulos de resbalamiento positivos.
0 2 4 6 8 10 12 14 16 18 20−0.16
−0.14
−0.12
−0.1
−0.08
−0.06
−0.04
−0.02
0
Angulo de resbalamiento [deg]
∆ p
/ q
V
mean = 13.6 m/s
Vmean
= 17.8 m/s
Vmean
= 22 m/s
Figura 5.30: Error de la presion estatica medida por el sistema de anemometrıa respecto al tubode Pitot calibrado del tunel en funcion del angulo de resbalamiento. Debido a la simetrıa delsistema de Pitot y estatica, solo se han ensayado angulos de resbalamiento positivos.
5.5. ENSAYOS EN TUNEL AERODINAMICO 195
Figura 5.31: Montaje del conjunto sistema de anemometrıa – fuselaje del avion en tunel aero-dinamico.
tunel, efecto achacable al comportamiento discreto de los sensores de presion anteriormente mencio-
nados.
En este sentido, se aprecia como las medidas de velocidad con el tunel parado tienen un error notable,
mostrandose lecturas del orden de los 3m/s, lo cual esta dentro de rango de error a baja velocidad
que se produce debido al paso de cuantizacion de los sensores de presion.
Para constatar este aumento de la precision del sistema con la velocidad de vuelo, en la figura 5.33
se muestra el error relativo de las medidas obtenidas por el sistema de anemometrıa disenado aquı,
respecto a las medidas proporcionadas por el sistema de Pitot y estatica de referencia instalado en el
tunel. Para una representacion mas clara, se han obviado las muestras obtenidas con el tunel parado,
ya que en ese caso carece de sentido definir el error relativo.
Al hilo de lo que se comentaba antes, se puede ver como el error relativo a bajas velocidades es
considerable, superando el 30% en algunas muestras. Sin embargo, a medida que se va aumentando
la velocidad (llegando al regimen de velocidades operativas del avion), se aprecia como este error se
va reduciendo considerablemente, de manera que a partir de los 9m/s se mantiene en una banda de
±3%, valor esperable teniendo la precision de los sensores empleados y el estudio de la configuracion
del sistema de medida de presiones de la seccion 5.2.
196 CAPITULO 5. DISENO DEL SISTEMA DE DATOS AERODINAMICOS
0 2 4 6 8 10 12 14 160
2
4
6
8
10
12
14
16
VE
AS
,Cef
iro [m
/s]
VEAS,tunel
[m/s]
MuestrasCalibracion ideal
Figura 5.32: Velocidad medida por el sistema de anemometrıa en funcion de la velocidad captadapor el sistema de Pitot y estatica del tunel. La lınea continua representa la recta de calibracionideal, en la que ambas medidas coincidirıan.
0 2 4 6 8 10 12 14 16−0.35
−0.3
−0.25
−0.2
−0.15
−0.1
−0.05
0
0.05
VEAS,tunel
[m/s]
∆ V
EA
S /
VE
AS
,tune
l
Figura 5.33: Error relativo de la velocidad medida por el sistema de anemometrıa respecto a lavelocidad de referencia del tunel, en funcion de la velocidad del tunel.
Capıtulo 6
Diseno del Sistema de Navegacion
6.1. Introduccion
Se define la navegacion como el conjunto de tecnicas para desplazarse de forma ordenada entre
dos puntos conocidos, origen y destino, siguiendo una cierta trayectoria. Dentro de estas tecnicas, es
crucial el desarrollo de sistemas que permitan obtener (o siendo mas precisos, estimar) la posicion,
velocidad y actitud de la aeronave en cualquier instante. Estos sistemas son los denominados sistemas
de navegacion, y su tarea es realizar dicha estimacion a partir de las medidas que se obtienen de los
sensores disponibles en la aeronave.
La historia de los sistemas de navegacion se remonta a tiempos remotos. Los navegantes de la
Antiguedad eran capaces de estimar la latitud tomando medidas de astros en el cielo (por ejemplo, la
elevacion de la estrella polar o del Sol a mediodıa); este tipo de navegacion es conocida como navegacion
astronomica, pero no permitıa determinar la longitud debido a la ausencia de relojes que tuvieran la
precision adecuada (lo que tuvo que esperar casi hasta el siglo XIX). Otra tecnica de navegacion (que
empleo Cristobal Colon) es la navegacion a estima, una version primitiva de la navegacion inercial que
se basa en medir la velocidad y el rumbo para estimar el desplazamiento. En el siglo XX fue cuando
se produjeron los mayores avances en navegacion, con el desarrollo de las primeras IMUs (despues
de la Segunda Guerra Mundial) y los primeros sistemas de navegacion satelitales (a partir de los
anos 70). Pero no fue sino hasta la decada de los 90 cuando se produjo una autentica explosion en el
campo, fundamentalmente debido a la disponibilidad de sensores de muy bajo coste tales como IMUs
desarrolladas con tecnologıa de sistemas microelectromecanicos (MEMS).
En la actualidad, cualquier aeronave (y muchos otros dispositivos, como telefonos moviles) dispone
de una gran diversidad de sensores, que pueden emplearse para obtener total o parcialmente las
variables de que debe estimar el sistema de navegacion. Por ejemplo, a partir de las medidas de la
IMU (y empleando un modelo adecuado de Tierra y un modelo gravitatorio) es posible, mediante los
algoritmos de la navegacion inercial (que en esencia consisten en integrar las ecuaciones de la mecanica
del vuelo), y a partir de una estimacion inicial, obtener posicion, velocidad y actitud en todo momento.
Igualmente, los sistemas de navegacion satelitales (como el GPS) son capaces de proporcionar la
197
198 CAPITULO 6. DISENO DEL SISTEMA DE NAVEGACION
posicion y la velocidad, e incluso la actitud si se dispone de varias antenas en diferentes puntos de la
aeronave (si bien esto ultimo no es sencillo desde un punto de vista tecnologico). Se dispone tambien
de otros sensores que pueden aportar informacion parcial sobre las variables de estado. Por ejemplo,
mediante anemometrıa se puede estimar la altitud a partir de la presion (como se describio en el
capıtulo anterior). Igualmente, un magnetometro permite conocer la direccion del Norte magnetico
respecto a la aeronave.
No obstante, cada una de estas soluciones de navegacion tiene tambien sus inconvenientes. La na-
vegacion inercial permite obtener una estimacion casi continua (debido al alto ancho de banda de la
IMU), que no depende de senales externas. Sin embargo, acumula deriva con el tiempo, ya que se basa
en integrar las ecuaciones del movimiento, de forma que los pequenos errores de medida y modelado se
van acumulando. Por otro lado, la navegacion GPS tiene un error pequeno y acotado (siempre que sean
visibles suficientes satelites, lo que siempre sucede en la practica salvo que el entorno presente muchos
obstaculos), pero el ancho de banda es bajo (especialmente para receptores de bajo coste).
Con todo esto, el objetivo del sistema de navegacion es obtener una unica solucion de navegacion
(estimacion de posicion, velocidad y actitud) fusionando toda la informacion que se obtiene de los
sensores. Idealmente, este procedimiento de fusion permitira obtener todas las ventajas de los diferentes
sensores (alto ancho de banda, error pequeno y acotado en el tiempo) sin los inconvenientes de los
sistemas individuales. Para llevar a cabo este proceso es necesario usar un algoritmo de filtrado (es
decir, un observador para estimar la solucion de navegacion a partir de las medidas de los sensores).
Los primeros algoritmos (efectivos) de este tipo fueron desarrollados en los anos 60 para misiones
espaciales y su uso en la actualidad es ubicuo, ya que permiten desarrollar sistemas de navegacion con
precisiones muy razonables empleando sensores de bajo coste.
En este capıtulo se detalla un algoritmo de navegacion para llevar a cabo la fusion de sensores a
bordo de la aeronave, el Filtro Extendido Multiplicativo de Kalman (MEKF) en su version discreta,
que ha sido desarrollado teniendo en cuenta los sensores disponibles (descritos en la seccion 1.2). En la
seccion 6.2 se realiza una breve revision de la literatura de algoritmos de filtrado para poner en contex-
to la contribucion del algoritmo desarrollado. Posteriormente, en la seccion 6.3 se revisa el algoritmo
tradicional del Filtro de Kalman (KF) y su version extendida (EKF), ası como la descripcion de la
actitud mediante cuaterniones. A continuacion, en la seccion 6.4 se describe el Filtro Extendido Mul-
tiplicativo de Kalman discreto desarrollado en esta disertacion. Se finaliza en la seccion 6.5 mostrando
el buen funcionamiento del filtro en simulaciones.
6.2. Antecedentes y contribucion
Existe una inmensa cantidad de publicaciones dedicada a los sistemas de navegacion y a los algoritmos
de filtrado, tanto a la teorıa como a su implementacion, por lo que solo se realizara una revision somera
de la literatura.
En particular, en lo que se refiere a los algoritmos de navegacion, se pueden destacar diversos libros
modernos, como por ejemplo [Roge 01], que se centra en los sistemas de navegacion inercial y en el
6.2. ANTECEDENTES Y CONTRIBUCION 199
estudio del error; el libro [Kapl 06] que describe en detalle la teorıa del sistema GPS; o referencias
mas generales como [Grew 07], [Beki 07] o [Biez 99] que estudian ambos sistemas y su integracion.
En lo que se refiere a implementacion, se puede citar [Titt 05] que analiza los sensores usados en
la navegacion inercial moderna, o [Kayt 97] que describe los sistemas desde el punto de vista de la
avionica.
Entrando en los algoritmos de filtrado, el primer filtro efectivo, el filtro de Kalman (KF), fue desarro-
llado por Rudolph E. Kalman, un ingeniero hungaro nacionalizado estadounidense. Presento su filtro
a la NASA en 1960, y publico sus resultados ese mismo ano (ver [Kalm 60]), aunque posteriormente
desarrollo mas la teorıa con ayuda de Bucy (ver [Kalm 61]), razon por la cual a veces el filtro se
denomina de Kalman-Bucy. El KF se caracteriza por ser un estimador optimo (en el sentido de que
minimiza la covarianza del error) y recursivo (no requiere almacenar toda la historia de las medidas
realizadas sino simplemente la ultima estimacion y la covarianza estimada del error).
No obstante, el KF, tal como se planteo originalmente, solo sirve para sistemas lineales. Ası, puesto
que muchos sistemas reales son no lineales (como es el caso de las ecuaciones que describen la nave-
gacion aerea), se han desarrollado multitud de extensiones no lineales, como el Filtro Extendido de
Kalman (EKF) (ver por ejemplo [Ande 79]). Aunque el EKF es la version no lineal del KF mas utiliza-
da, existen muchos otros desarrollos, como filtros de particulas (PFs), filtros de Kalman “unscented”,
filtros adaptativos, o filtros recursivos exactos (ver por ejemplo [Daum 05]). El principal problema de
estos algoritmos es que se pierden las buenas propiedades del KF y no se garantiza la convergencia de
la solucion de navegacion a su valor real; por ello, la implementacion de este tipo de algoritmos no es
sencilla, si bien existe mucha literatura al respecto (vease, por ejemplo, la referencia [Grew 01]).
En esta disertacion se ha optado por un EKF adaptado a un tipo muy concreto de representacion
de actitud, como es la representacion mediante cuaterniones (ver [Hans 06] o [Hugh 04]). Este tipo de
representacion tiene muchas ventajas respecto a la representacion mediante angulos de Euler descrita
en el capıtulo 2, como por ejemplo la ausencia de singularidades o la ausencia de funciones trigo-
nometricas en las ecuaciones diferenciales cinematicas (que se transforman en ecuaciones bilineales),
con el unico inconveniente de tratarse de una representacion matematica y abstracta que necesita ser
transformada al final en angulos de Euler para poder interpretarse. Por tanto la tendencia moderna es
trabajar con cuaterniones internamente y solo usar angulos de Euler en la representacion final.
Como se describe en la seccion 6.3, los cuaterniones de actitud son cuaternas de numeros con la ca-
racterıstica de que la suma de sus cuadrados (es decir, el modulo del cuaternion) tiene valor unidad. Si
se formula el EKF de la forma tradicional (linealizando en torno a la estimacion con un error aditivo),
el cuaternion de actitud, en general, dejarıa de tener modulo unidad y por tanto no serıa una represen-
tacion valida de actitud. Si bien tıpicamente se soluciona este problema renormalizando, es preferible
utilizar el llamado Filtro Extendido Multiplicativo de Kalman (MEKF) que formula la linealizacion
de una forma multiplicativa en vez de aditiva, utilizando el producto de cuaterniones. Este filtro fue
formulado por primera vez en el contexto de estimacion de actitud de vehıculos espaciales [Mark 03],
pero ya se han desarrollado aplicaciones a aeronaves [Bijk 08]. Recientemente, se han desarrollado este
tipo de filtros multiplicativos en el contexto de los llamados “Symmetry-Preserving Observers” (ver las
referencias [Bonn 08, Bonn 09]), es decir observadores que preservan la simetrıa del sistema (en este
200 CAPITULO 6. DISENO DEL SISTEMA DE NAVEGACION
caso, el hecho de que el cuaternion invariante tenga modulo unidad, es una simetrıa del sistema). En
la referencia [Mart 10] se estudian las propiedades de convergencia de este tipo de filtros aplicados a
aeronaves.
La contribucion original de este capıtulo es el desarrollo de un MEKF totalmente discreto (los
desarrollos de MEKF previos son fundamentalmente continuos, si bien la implementacion siempre
ha de ser discreta), en el que se aprovecha el hecho de que es posible obtener de forma analıtica el
cuaternion resultante en cada instante de muestreo si se supone la velocidad angular constante durante
dicho instante de muestreo. Esta formulacion permite obtener todas las matrices necesarias para el
MEKF de forma analıtica eliminando la necesidad de realizar una integracion numerica, lo cual es
una ventaja a la hora de implementar el filtro. El autor de esta disertacion no ha encontrado en la
literatura este resultado o ninguna formulacion discreta equivalente.
6.3. Filtro de Kalman. Cuaterniones
En esta seccion se describen los elementos basicos del MEKF discreto. En primer lugar se descri-
be el KF, algoritmo que se usa sobre la linealizacion del sistema. En segundo lugar se describe la
representacion de actitud mediante cuaterniones que se usa en el MEKF.
6.3.1. KF para sistemas lineales
En el filtro de Kalman discreto para sistemas lineales se considera el siguiente modelo discreto de
un sistema (tradicionalmente llamado proceso)
~xk+1 = Ak~xk +Bk~ξk, (6.1)
donde ~xk = ~x(tk) es un proceso gaussiano con dimension nx, Ak es una matriz (que puede cambiar
en cada instante de tiempo tk) de dimension nx × nx, ~ξk es ruido blanco gaussiano de dimension nξ y
varianza Qk (el ruido del proceso), y Bk es una matriz (que puede cambiar en cada instante de tiempo
tk) de dimension nx × nξ.
En cada instante tambien se considera que se realiza una medida, representada por ~zk, y definida de
la siguiente forma
~zk+1 = Hk+1~xk+1 + ~νk+1, (6.2)
donde ~z es la medida, de dimension nz, Hk es una matriz (que puede cambiar en cada instante de
tiempo tk) de dimension nz × nx, y ~νk es ruido blanco gaussiano de dimension nν y varianza Rk (el
ruido de medida).
Finalmente se realiza la hipotesis de que ~νk y ~ξk son independientes, y que la condicion inicial de ~x
es conocida y descrita por una gaussiana de la siguiente forma: ~x(t0) ∼ Nnx(x0, P0).
6.3. FILTRO DE KALMAN. CUATERNIONES 201
Todo esto se puede resumir en el siguiente conjunto de ecuaciones
~xk+1 = Ak~xk +Bk~ξk,
~zk+1 = Hk+1~xk+1 + ~νk+1,
E[~ξk] = E[~νk] = ~0,
E[~ξk~ξTj ] = δkjQk,
E[~νk~νTj ] = δkjRk,
E[~ξk~νTj ] = 0,
~x0 ∼ Nnx(x0, P0).
Por otra parte, se define la estimacion en tk de ~xk como ~xk, mientras que la covarianza del error de
estimacion es Pk = E[(~xk − ~xk)(~xk − ~xk)T ].
Ası, el objetivo del filtro de Kalman es, empleando el conocimiento de las ecuaciones arriba formu-
ladas, y a partir de las medidas ~zk, obtener la mejor estimacion posible, es decir, el valor de ~xk
que minimiza Pk.
Bajo las hipotesis anteriores se tiene que el proceso ~xk tiene una distribucion normal
~xk ∼ Nnx(~xk, Pk), donde la media ~xk y la covarianza Pk verifican las siguientes ecuaciones
~xk+1 = Ak~xk,
Pk+1 = AkPkATk +BkQkB
Tk .
Si no se tuvieran medidas adicionales se podrıa tomar ~xk como estimacion, pero el problema es que la
covarianza siempre crece con el tiempo. La idea de Kalman es tomar ~xk como estimacion valida justo
antes de tomar la medida ~zk+1. Se va a denotar dicha estimacion “a priori” como ~x−k+1 y su covarianza
como P−k+1.
Si la estimacion fuera perfecta y la medida no tuviera error, se tendrıa que ~zk+1 = Hk+1~x−k+1. Como
no es ası, se actualiza la estimacion (“a posteriori”) de forma proporcional a la discrepancia
~x+k+1 =~x−k+1 +Kk+1(~zk+1 −Hk+1
~x−k+1). (6.3)
donde Kk+1 es la ganancia de Kalman. Esta se determina para garantizar que la covarianza de
~x+k+1, es decir P+k+1, sea la menor posible. Se puede demostrar que el valor de Kk+1 con esta propiedad
es
Kk+1 = P−k+1H
Tk+1
(
Hk+1P−k+1H
Tk+1 +Rk+1
)−1, (6.4)
y que el valor de la covarianza a posteriori que se ha minimizado es
P+k+1 = (I −Kk+1Hk+1)P
−k+1. (6.5)
Resumiendo, el algoritmo KF es como sigue:
202 CAPITULO 6. DISENO DEL SISTEMA DE NAVEGACION
1. En el instante de tiempo tk+1, se supone que se dispone de la anterior estimacion que incluyo
tambien la ultima medida: ~x+k y su covarianza P+k . Para k = 0 se toma ~x+0 = ~x0 y P+
0 = P0.
2. En la fase de propagacion, se usa la ecuacion del sistema dinamico para calcular la estimacion a
priori
~x−k+1 = Ak~x+k ,
P−k+1 = AkP
+k A
Tk +BkQkB
Tk .
3. Antes de tomar la nueva medida, calculamos la ganancia de Kalman de la forma
Kk+1 = P−k+1H
Tk+1
(
Hk+1P−k+1H
Tk+1 +Rk+1
)−1.
4. Se toma la nueva medida, calculando la estimacion a posteriori
~x+k+1 = ~x−k+1 +Kk+1(~z(tk+1)−Hk+1~x−k+1),
P+k+1 = (I −Kk+1Hk+1)P
−k+1.
5. Se repite este proceso iterativamente para los siguientes valores de k.
Observese que si en algun instante de tiempo tk no se producen medidas basta con tomar Hk nulo,
lo que en la practica es igual a solo efectuar la fase de propagacion.
6.3.2. Cuaterniones
En primer lugar se va a definir desde el punto de vista matematico que es un cuaternion y el algebra de
cuaterniones, es decir las operaciones matematicas que se pueden realizar con ellos. Posteriormente se
explica su uso como representacion de la actitud de una aeronave y finalmente se definira el cuaternion
de error que se usa en el MEKF. El material contenido en esta seccion se ha extraıdo de [Hugh 04] y
de [Mark 03].
6.3.2.1. Definicion y algebra de cuaterniones
Se define un cuaternion1 q como una terna de cuatro elementos
q =
q0
q1
q2
q3
, (6.6)
1Existen algunos autores que denominan a los cuaterniones como parametros de Euler.
6.3. FILTRO DE KALMAN. CUATERNIONES 203
donde q0 es la parte escalar del cuaternion y ~q =[
q1 q2 q3
]Tes la parte vectorial. De este modo,
usando la notacion por bloques, se puede escribir
q =
[
q0
~q
]
. (6.7)
Dados dos cuaterniones, q y q′, se define el producto de ambos como
q ⋆ q′ =
[
q′0q0 − ~q · ~q′q′0~q + q0~q′ + ~q × ~q′
]
, (6.8)
donde × es el producto vectorial y · el escalar. Este producto, que no es conmutativo, se puede expresar
matricialmente de dos formas
q ⋆ q′ =
q′0 −q′1 −q′2 −q′3q′1 q′0 q′3 −q′2q′2 −q′3 q′0 q′1
q′3 q′2 −q′1 q′0
q0
q1
q2
q3
=
q0 −q1 −q2 −q3q1 q0 −q3 q2
q2 q3 q0 −q1q3 −q2 q1 q0
q′0
q′1
q′2
q′3
. (6.9)
Observese que el cuaternion
[
1
~0
]
es la identidad multiplicativa, es decir
q ⋆
[
1
~0
]
=
[
1
~0
]
⋆ q = q. (6.10)
Se define como el conjugado de un cuaternion q (el cual se escribe como q∗) al cuaternion se obtiene
de la siguiente expresion
q∗ =
[
q0
−~q
]
. (6.11)
Ademas, el modulo de un cuaternion se define como ‖q‖ =√
q20 + q21 + q22 + q23. De este modo, el
producto de un cuaternion por su conjugado queda
q ⋆ q∗ = q∗ ⋆ q =
[
‖q‖2~0
]
. (6.12)
6.3.2.2. Representacion de actitud mediante cuaterniones
Existen diversas representaciones matematicas de la actitud, entre las cuales se tiene la matriz de
cosenos directores, los angulos de Euler y los cuaterniones.
Los cuaterniones parten de una representacion menos conocida, que se basa en el Teorema de Euler:
el movimiento mas general posible de un solido rıgido con un punto fijo es un unico giro centrado en
204 CAPITULO 6. DISENO DEL SISTEMA DE NAVEGACION
dicho punto. Por tanto la actitud se puede representar como un unico angulo θ (llamado angulo de
Euler) y un eje de giro ~e (un vector unitario llamado eje de Euler).
Esta representacion usando el angulo y eje de Euler no es demasiado util ya que presenta una
singularidad en la identidad (cuando el giro es cero). Sin embargo, se puede utilizar un cuaternion
para codificar el angulo de Euler θ y el eje de Euler ~e de la siguiente forma:
q =
[
cos θ/2
~e sin θ/2
]
. (6.13)
Definido de esta forma, se cumple ‖q‖ = 1, es decir, todo cuaternion de actitud tiene modulo unidad.
Igualmente, todo cuaternion de modulo unidad representa una actitud. Esta representacion de la
actitud tiene muchas propiedades utiles.
Por ejemplo, la relacion entre la variacion del cuaternion con el tiempo y la velocidad angular ~ω
(ecuaciones diferenciales cinematicas) es muy simple y viene dada por
q =1
2
q0 −q1 −q2 −q3q1 q0 −q3 q2
q2 q3 q0 −q1q3 −q2 q1 q0
0
ω1
ω2
ω3
, (6.14)
resultando en un sistema de ecuaciones diferenciales bilineales, que no presentan ninguna singularidad
(a diferencia de las ecuaciones cinematicas angulares basadas en angulos de Euler que se mostraron en
la seccion 2.2). Ademas, se puede observar que definiendo un “cuaternion de rotacion” igual a
[
0
~ω
]
se cumple que
q =1
2q ⋆
[
0
~ω
]
. (6.15)
Por simplicidad, se define el producto entre en cuaternion y un vector, q ⋆ ~v como el producto q ⋆ qv
donde qv tiene como parte escalar cero y como parte vectorial ~v, de manera que se puede escribir
q = 12q ⋆ ~ω.
Ademas, usando la definicion de angulo y eje de Euler, es posible resolver la ecuacion (6.14) de forma
exacta para el caso de ~ω constante durante un tiempo T , suponiendo que se parte de una actitud inicial
dada por el cuaternion q0. En tal caso, se puede calcular a partir de ~ω un eje y angulo de Euler (~e, θ)
dados por ~e = ~ω|~ω| y θ = T |~ω|. A partir de este angulo y eje de Euler se forma facilmente un cuaternion
que expresa la rotacion que supone ~ω como qω = [cos θ/2 sin θ/2~e]T , es decir,
qω =
[
cos |~ω|T2
sin |~ω|T2 · ~ω
|~ω|
]
, (6.16)
6.3. FILTRO DE KALMAN. CUATERNIONES 205
y finalmente se obtiene el cuaternion resultante q tras un tiempo T como
q = q0 ⋆ qω. (6.17)
Una ultima propiedad de interes es la siguiente. Dado un cuaternion de actitud q se puede obtener
la matriz de cambio de base que representa dicha actitud, C(q), como
C(q) = (q20 − ~qT ~q)Id + 2~q~qT − 2q0~q× (6.18)
donde el operador ~v× es la matriz antisimetrica asociada al producto vectorial, es decir
v1
v2
v3
×
=
0 −v3 v2
v3 0 −v1−v2 v1 0
(6.19)
Se puede comprobar que el producto q∗ ⋆ ~v ⋆ q representa un giro del vector ~v dado por el cuaternion
q. Este giro tambien se puede representar como C(q)~v donde C(q) es la matriz de giro equivalente a
q definida mas arriba.
6.3.2.3. Cuaternion de error
Para definir un cuaternion de error δq respecto a una estimacion q de la actitud (que se supone
cercana a la realidad pero posiblemente inexacta), se puede hacer una analogıa con x = x + δx
(teniendo en cuenta que el cambio de actitud se define ahora como un producto de cuaterniones), de
manera que se puede definir
q = q ⋆ δq. (6.20)
Puesto que tanto q como q deben tener modulo unidad, se deduce que el cuaternion de error tambien
tiene modulo unidad, por lo que realmente solo tiene 3 grados de libertad. Como ademas debe ser
“pequeno” en algun sentido, es tıpico representar el cuaternion de error usando el parametro ~aq (que
tambien sera pequeno) que lo define de la siguiente forma:
δq(~aq) =1
√
4 + ‖~aq‖
[
2
~aq
]
. (6.21)
Observese que, definido de esta forma, el cuaternion de error tiene modulo unidad.
Aproximando la anterior expresion en serie de Taylor hasta el primer orden:
δq(~aq) ≈
1
~aq2
. (6.22)
Como se vera mas adelante, esta expresion sera de utilidad en el MEKF.
206 CAPITULO 6. DISENO DEL SISTEMA DE NAVEGACION
6.4. Filtro Extendido Multiplicativo de Kalman discreto
para UAVs
Como modelo del sistema se parte de una evolucion continua del estado, a partir de la aceleracion
~a (en ejes cuerpo) y la velocidad angular ~ω, con las mismas hipotesis generales consideradas en el
capıtulo 2, esto es
Tierra plana, despreciando la rotacion de la Tierra. Esto hace que el sistema de ejes topocentrico
sea inercial.
Gravedad constante ~g0.
Se va a considerar que la actitud del avion viene descrita por el cuaternion q, el cual proporcio-
na la orientacion de los ejes cuerpo con respecto al sistema de ejes topocentrico (en la bibliografıa
relacionada, se suele denominar a este sistema de referencia como ejes navegacion).
De este modo, puede escribirse el siguiente modelo dinamico que describe la posicion y la actitud de
la aeronave
~x = ~v, (6.23)
~v = q∗ ⋆ ~a ⋆ q + ~g0, (6.24)
q =1
2q ⋆ ~ω. (6.25)
Estas ecuaciones representan una formulacion alternativa del modelo dinamico mostrado en el capı-
tulo 2, en la que en lugar de considerar las fuerzas aerodinamicas y propulsivas externas, se tienen
en cuenta las aceleraciones que estas producen. Ademas, se usan los cuaterniones para describir la
actitud, en lugar de los angulos de Euler. Se puede consultar [BL S 03] para obtener una descripcion
mas detallada de como se llega a este modelo.
Si pudieran medirse la aceleracion lineal y la velocidad angular con total precision, podrıa integrarse
el sistema anterior de forma exacta, por lo que el problema de determinacion de la posicion y actitud
estarıa resuelto. Sin embargo, en la practica se tiene que los valores de ~a y ~ω (los cuales son proporcio-
nados por la unidad de medidas inerciales), contienen sesgos (“bias”) y ruido. De esta forma, el modelo
anterior debe sustituirse por otro mas realista que contenga un modelo basico de la IMU, el cual se
resume en
~x = ~v, (6.26)
~v = q∗ ⋆(
~am − ~ab +Ma~ξa
)
⋆ q + ~g0, (6.27)
~ab = Mab~ξab , (6.28)
q =1
2q ⋆(
~ωm − ~ωb +Mq~ξω
)
, (6.29)
~ωb = Mωb~ξωb, (6.30)
donde ~am y ~ωm son la aceleracion y velocidad angular medidas por la IMU, ~ab y ~ωb los respectivos
sesgos, y los diferentes ξ ruidos blancos gaussianos premultiplicados por matrices que contienen su
6.4. MEKF DISCRETO PARA UAVS 207
varianza.
Ademas de la IMU, la aeronave dispone de un receptor GPS a bordo que proporciona en paralelo
medidas de la posicion y velocidad (aunque desafortunadamente, estas medidas no estan sincronizadas
con las de la IMU). Concretamente, como se detalla en el capıtulo 7, el GPS embarcado obtiene medidas
de todas las componentes de la posicion y las dos primeras de la velocidad (debido a la perdida de
precision en el canal vertical, el dispositivo usado no proporciona la velocidad vertical de la aeronave),
de forma que si se denota por z el estado (con 16 componentes)
z =
~x
~v
q
~ab
~ωb
, (6.31)
se tendra que la medida GPS sera yGPS = HGPSz, donde se define la matriz diagonal HGPS de la
forma
HGPS = diag([
1 1 1 1 1 011
])
, (6.32)
donde 011 designa a un vector fila de 11 ceros. Tambien se podrıa tener una medida de altitud ba-
rometrica que se escribirıa de forma analoga a la del GPS, pero por simplicidad se omite en esta
seccion.
Por otro lado se tendra una medida del magnetometro de forma que se mide el norte magnetico
~N en ejes cuerpo, por lo que sera necesario traducirla a los ejes navegacion. Como se mostro en la
seccion 6.3.2.2, se puede hacer un cambio de sistema de referencia de un vector a partir del cuaternion
asociado al giro de la siguiente manera
yMAG = q∗ ⋆ ~N ⋆ q. (6.33)
Mas adelante se escribira esta medida linealizada.
Para simplificar los calculos a bordo y evitar tener que aplicar un metodo de integracion numerica
de las ecuaciones diferenciales que describen la dinamica del sistema, se puede formular un modelo
discretizado, en el que se supone que durante cada intervalo de muestreo de duracion T , las cantidades
permanecen constantes. Integrando las ecuaciones diferenciales
~xk+1 = ~xk + T~vk +T 2
2q∗k ⋆
(
~amk− ~abk +Ma
~ξa
)
⋆ qk +T 2
2~g0, (6.34)
~vk+1 = ~vk + Tq∗k ⋆(
~amk− ~abk +Ma
~ξa
)
⋆ qk + T~g0, (6.35)
~abk+1= ~abk + TMab
~ξab , (6.36)
qk+1 = qk ⋆ qωk, (6.37)
~ωbk+1= ~ωbk + TMωb
~ξωb, (6.38)
208 CAPITULO 6. DISENO DEL SISTEMA DE NAVEGACION
donde todas las ecuaciones han sido obtenidas trivialmente excepto la ecuacion de los cuaterniones,
para la que se ha aplicado la ecuacion (6.17). Para dicha ecuacion qωkse calcula como
qωk=
cos|~ωmk
−~ωbk+Mq
~ξω |T
2
sin|~ωmk
−~ωbk+Mq
~ξω |T
2 · ~ωmk−~ωbk
+Mq~ξω
|~ωmk−~ωbk
+Mq~ξω |
. (6.39)
6.4.1. Estimacion a priori
La estimacion a priori, siguiendo el algoritmo EKF, se lleva a cabo con las medidas de aceleracion
y velocidad angular que se tienen disponibles, ası como con las anteriores estimaciones de sesgo de
acelerometros y giroscopos, es decir
~xk+1 = ~xk + T~vk +T 2
2q∗k ⋆
(
~amk− ~abk
)
⋆ qk +T 2
2~g0, (6.40)
~vk+1 = ~vk + T q∗k ⋆(
~amk− ~abk
)
⋆ qk + T~g0, (6.41)
~abk+1= ~abk , (6.42)
qk+1 = qk ⋆ qωk, (6.43)
~ωbk+1= ~ωbk , (6.44)
donde el cuaternion qωkque define el giro entre la actitud en el instante k y la del instante k+1 viene
dado por
qωk=
cos|~ωmk
−~ωbk|T
2
sin|~ωmk
−~ωbk|T
2 · ~ωmk−~ωbk
|~ωmk−~ωbk
|
. (6.45)
Observese que algunas de las ecuaciones son no lineales (concretamente aquellas en las que participan
los cuaterniones), por lo que posteriormente seran linealizadas. Ademas, al igual que en el algoritmo
KF, para el algoritmo EKF se emplean las ecuaciones del sistema sin ruido (ya que el ruido no es
medible).
6.4.2. Variables de error. Covarianza
La idea principal del algoritmo EKF es que se trabaja con las ecuaciones del error entre el estado real
y el estado estimado. Estas ecuaciones pueden ser linealizadas, de manera que al sistema resultante se
le puede aplicar el Filtro de Kalman lineal.
Por este motivo, es necesario conocer la dinamica del error a partir de la cual se estudiara tambien
la evolucion de la covarianza del error. Para ello se definen los siguientes errores: δ~xk = ~xk − ~xk,
δ~vk = ~vk − ~vk, δ~abk = ~abk − ~abk , δ~ωbk = ~ωbk − ~ωbk .
Por otra parte, el error en cuaterniones se define de forma multiplicativa como se explico en la
seccion 6.3.2.3, y despejando δq de la ecuacion (6.20) se obtiene δqk = q∗k ⋆ qk. Ademas, utilizando el
parametro ~aq al igual que se hizo en la ecuacion (6.22) se obtiene la siguiente aproximacion de primer
6.4. MEKF DISCRETO PARA UAVS 209
orden
δq(~aq) ≈
11
2~aq
. (6.46)
Del mismo modo, tambien se puede linealizar a primer orden la siguiente expresion, la cual sera de
utilidad mas adelante, cuando se linealicen las ecuaciones de la dinamica del error.
δq(~aq)∗ ⋆
[
p0
~p
]
⋆ δq(~aq) ≈
1
−~aq2
⋆
[
p0
~p
]
⋆
1
~aq2
=
[
p0 +12~aq · ~p
~p− 12p0~aq − 1
2~aq × ~p
]
⋆
1
~aq2
≈[
p0
~p− ~aq × ~p
]
=
[
p0
~p
]
−[
0
~aq × ~p
]
. (6.47)
6.4.2.1. Dinamica del error
Tomando la diferencia del sistema real con la estimacion, se tienen las ecuaciones de evolucion del
error para todas las variables excepto para los cuaterniones. Ası, se puede escribir
δ~xk+1 = δ~xk + Tδ~vk
+T 2
2
(
q∗k ⋆(
~amk− ~abk +Ma
~ξa
)
⋆ qk − q∗k ⋆(
~amk− ~abk
)
⋆ qk
)
, (6.48)
δ~vk+1 = δ~vk + T(
q∗k ⋆(
~amk− ~abk +Ma
~ξa
)
⋆ qk − q∗k ⋆(
~amk− ~abk
)
⋆ qk
)
, (6.49)
δ~abk+1= δ~abk + TMab
~ξab , (6.50)
δ~ωbk+1= δ~ωbk + TMωb
~ξωb, (6.51)
y recordando la definicion del cuaternion de error, se tendrıa que qk = qk ⋆δqk en la primera y segunda
ecuacion, eso es
δ~xk+1 = δ~xk + Tδ~vk
+T 2
2
(
δq∗k ⋆ q∗k ⋆(
~amk− ~abk +Ma
~ξa
)
⋆ qk ⋆ δqk − q∗k ⋆(
~amk− ~abk
)
⋆ qk
)
, (6.52)
δ~vk+1 = δ~vk + T(
δq∗k ⋆ q∗k ⋆(
~amk− ~abk +Ma
~ξa
)
⋆ qk ⋆ δqk − q∗k ⋆(
~amk− ~abk
)
⋆ qk
)
. (6.53)
Finalmente para los cuaterniones se podra escribir
δqk+1 = q∗k+1 ⋆ qk+1
= q∗ωk⋆ q∗k ⋆ qk ⋆ qωk
= q∗ωk⋆ δqk ⋆ qωk
. (6.54)
210 CAPITULO 6. DISENO DEL SISTEMA DE NAVEGACION
6.4.2.2. Dinamica del error linealizada
Para obtener la dinamica del error linealizada, hay que tener en cuenta que unicamente es necesario
linealizar las ecuaciones en las que aparecen los cuaterniones, ya que las otras ya estan linealizadas.
De este modo, en primer lugar se comienza linealizando la magnitud
δq∗k ⋆ q∗k ⋆(
~amk− ~abk +Ma
~ξa
)
⋆ qk ⋆ δqk − q∗k ⋆(
~amk− ~abk
)
⋆ qk, (6.55)
de manera que usando la expresion (6.47) se llega a la siguiente aproximacion
q∗k ⋆(
~amk− ~abk +Ma
~ξa
)
⋆ qk − q∗k ⋆(
~amk− ~abk
)
⋆ qk − ~aqk ×[
q∗k ⋆(
~amk− ~abk +Ma
~ξa
)
⋆ qk
]
≈ −q∗k ⋆(
δ~abk −Ma~ξa
)
⋆ qk − ~aqk ×[
q∗k ⋆(
~amk− ~abk
)
⋆ qk
]
= −C(qk)δ~abk + C(qk)Ma~ξa +
[
q∗k ⋆(
~amk− ~abk
)
⋆ qk
]×~aqk . (6.56)
Por tanto se obtiene
δ~xk+1 = δ~xk + Tδ~vk +T 2
2
(
C(qk)Ma~ξa − C(qk)δ~abk +
[
q∗k ⋆(
~amk− ~abk
)
⋆ qk
]×~aqk
)
, (6.57)
δ~vk+1 = δ~vk + T
(
C(qk)Ma~ξa − C(qk)δ~abk +
[
q∗k ⋆(
~amk− ~abk
)
⋆ qk
]×~aqk
)
. (6.58)
Con esto ya se tienen linealizadas las ecuaciones de la dinamica del error en posicion y velocidad.
Falta ahora linealizar la ecuacion de la dinamica del cuaternion de error, esto es
δqk+1 = q∗ωk⋆ δqk ⋆ qωk
, (6.59)
la cual se puede transformar en la siguiente expresion
δqk+1 = q∗ωk⋆ δqk ⋆ qωk
⋆ q∗ωk⋆ qωk
≈ q∗ωk⋆ qωk
+1
2C(qωk
)~aqk ⋆ q∗ωk⋆ qωk
. (6.60)
Entrando en la linealizacion del primer termino de la ecuacion anterior, un producto del tipo q∗ωk⋆qωk
,
donde ambos cuaterniones tienen modulo 1, se puede escribir de la siguiente forma[
p0(x)
~p(x)
]∗
⋆
[
p0(x)
~p(x)
]
=
[
p0(x)p0(x) + ~p(x) · ~p(x)−p0(x)~p(x) + p0(x)~p(x)− ~p(x)× ~p(x)
]
≈[
p20(x) + ~p(x) · ~p(x) + (p′0(x)p0(x) + ~p ′(x) · ~p(x))∆xp0(x)~p(x)− p0(x)~p(x)− ~p(x)× ~p(x) + (−p′0(x)~p(x) + p0(x)~p
′(x)− ~p(x)× ~p ′(x))∆x
]
=
[
1
0
]
+
[
0
(−p′0(x)~p(x) + p0(x)~p′(x)− ~p(x)× ~p ′(x))∆x
]
=
[
1
(−p′0(x)~p(x) + p0(x)~p′(x)− ~p(x)× ~p ′(x))∆x
]
, (6.61)
donde ∆x = x− x, y se ha usado que el cuaternion es de modulo uno, es decir p20(x) + ~p(x) · ~p(x) = 1
y la derivada de esta cantidad es cero, es decir p′0(x)p0(x) + ~p ′(x) · ~p(x) = 0.
6.4. MEKF DISCRETO PARA UAVS 211
Puesto que
qωk=
cos|~ωmk
−~ωbk+Mq
~ξω|T
2
sin|~ωmk
−~ωbk+Mq
~ξω |T
2 · ~ωmk−~ωbk
+Mq~ξω
|~ωmk−~ωbk
+Mq~ξω|
, qωk
=
cos|~ωmk
−~ωbk|T
2
sin|~ωmk
−~ωbk|T
2 · ~ωmk−~ωbk
|~ωmk−~ωbk
|
.
(6.62)
es posible escribir
p0 = cos|~ωmk
− ~ωbk +Mq~ξω|T
2= cos θ/2,
~p = sin|~ωmk
− ~ωbk +Mq~ξω|T
2· ~ωmk
− ~ωbk +Mq~ξω
|~ωmk− ~ωbk +Mq
~ξω|= sin θ/2~e.
Introduciendo esto en la expresion (6.61), se puede escribir
− p′0(x)~p(x) + p0(x)~p′(x)− ~p(x)× ~p ′(x) =
θ′
2sin2 θ/2~e+
θ′
2cos2 θ/2~e+ cos θ/2 sin θ/2~e ′
− sin2 θ/2~e× ~e ′
=θ′
2~e+
sin θ
2~e ′ − sin2 θ/2~e× ~e ′. (6.63)
Dandose cuenta de que θ = |~u|T y ~e = ~u|~u| , donde ~u = ~ωmk
− ~ωbk , si se toma la derivada se puede ver
que θ′ = T ~u|~u| = T~e y ~e ′ = 1
|~u| Id− ~u~uT
|~u|3= T
θ
(
Id− ~e~eT)
. Sustituyendo, se llega a
− p′0(x)~p(x) + p0(x)~p′(x)− ~p ′(x)× ~p ′(x) =
T
2~e~eT + T
sin θ
2θ
(
Id− ~e~eT)
− Tsin2 θ/2
θ~e×.(6.64)
Por tanto, se obtiene
q∗ωk⋆ qωk
≈
1(
T2 ~e~e
T + T sin θ2θ
(
Id− ~e~eT)
− T sin2 θ/2θ ~e×
)(
−δ~ωbk +Mq~ξω
)
. (6.65)
Finalmente se obtiene la version linealizada de la evolucion del cuaternion de error
~aqk+1= C(qωk
)~aqk + M(
−δ~ωbk +Mq~ξω
)
, (6.66)
con la matriz M = T~e~eT + T sin θθ
(
Id− ~e~eT)
− T 2 sin2 θ/2θ ~e×, donde θ = |~u|T y ~e = ~u
|~u| , siendo ademas
~u = ~ωmk− ~ωbk .
Con todo esto, ya se tienen las ecuaciones de la dinamica de los errores linealizadas. Escribiendo
matricialmente estas ecuaciones, se llega al siguiente resultado para la dinamica del error (15 esta-
dos)
δ~xk+1
δ~vk+1
~aqk+1
δ~abk+1
δ~ωbk+1
=
Id IdT T 2
2
[
q∗k ⋆(
~amk− ~abk
)
⋆ qk
]×−T 2
2 C(qk) 0
0 Id T[
q∗k ⋆(
~amk− ~abk
)
⋆ qk
]×−TC(qk) 0
0 0 C(qωk) 0 −M
0 0 0 Id 0
0 0 0 0 Id
δ~xk
δ~vk
~aqk
δ~abk
δ~ωbk
212 CAPITULO 6. DISENO DEL SISTEMA DE NAVEGACION
+
T 2
2 C(qk)Ma 0 0 0
TC(qk)Ma 0 0 0
0 MMq 0 0
0 0 TMab 0
0 0 0 TMωb
~ξa~ξω~ξab~ξωb
. (6.67)
Este sistema se puede escribir de forma compacta si se introducen los vectores de error y de ruido de
la forma
δzk =
δ~xk
δ~vk
~aqk
δ~abk
δ~ωbk
, ~ξ =
~ξa~ξω~ξab~ξωb
. (6.68)
Ası, se puede escribir la ecuacion (6.67) de la siguiente forma compacta
δzk+1 = Akδzk +Bk~ξ. (6.69)
Con esta, se pueden obtener las ecuaciones de propagacion de la covarianza del error, las cuales
se obtienen bajo las hipotesis usuales de que los ruidos son ruidos blancos gaussianos independientes
entre sı y de potencia unitaria
Pk+1 = AkPkATk +BkB
Tk . (6.70)
El valor de la covarianza del error (matriz de 15 por 15) es fundamental en el calculo de la ganancia
de Kalman.
Finalmente, hay que constatar que si ~u = ~ωmk− ~ωbk esta cerca de cero, el calculo de la matriz M y
del cuaternion qωkpuede complicarse al estar cerca de una singularidad evitable. En tal caso se pueden
usar las aproximaciones siguientes
qωk≈ 1√
4 + ‖~ωmk− ~ωbk‖
[
2
~ωmk− ~ωbk
]
, M ≈ T Id− T 2
2(~ωmk
− ~ωbk)×. (6.71)
6.4.3. Medidas linealizadas
Para cerrar la formulacion del EKF, es necesario proporcionar expresiones linealizadas para el error
en la medida del GPS y del magnetometro.
Respecto al GPS, la medida obtenida yGPSkes ya una medida lineal. Expresandola en terminos del
error, e incluyendo ruido de sensores, se tiene
EGPSk= yGPSk
− yGPSk= HGPSδzk +MGPS~νGPS, (6.72)
6.4. MEKF DISCRETO PARA UAVS 213
donde
HGPS =
1 0 0 0 0 010
0 1 0 0 0 010
0 0 1 0 0 010
0 0 0 1 0 010
0 0 0 0 1 010
. (6.73)
Por otro lado se tendra una medida del magnetometro de forma que se mide el norte magnetico ~NB
en ejes cuerpo. Por definicion ~NB = q ⋆ ~N ⋆ q∗ serıa el norte magnetico real en ejes cuerpo, pero la
medida tendra una cierta corrupcion en forma de ruido: yMAGk= q∗νMAG
⋆ ~NB ⋆ qνMAG. Se supondra
que qνMAGes un cuaternion de error descrito por un vector ~aqνMAG
= MMAG~νMAG, donde ~νMAG es
un ruido blanco y MMAG determina la covarianza del sensor. Por otro lado la medida esperada serıa
yMAG = q ⋆ ~N ⋆ q∗. De esta forma, se puede escribir
EMAGk= yMAGk
− yMAGk
= q∗νMAG⋆ ~NB ⋆ qνMAG
− qk ⋆ ~N ⋆ q∗k
= q∗νMAG⋆ qk ⋆ ~N ⋆ q∗k ⋆ qνMAG
− qk ⋆ ~N ⋆ q∗k
= q∗νMAG⋆ qk ⋆ δqk ⋆ ~N ⋆ δq∗k ⋆ q
∗k ⋆ qνMAG
− qk ⋆ ~N ⋆ q∗k
≈ qk ⋆ ~N ⋆ q∗k − ~aqνMAG×(
qk ⋆ ~N ⋆ q∗k
)
+ qk ⋆(
~aqk × ~N)
⋆ q∗k − qk ⋆ ~N ⋆ q∗k
= −~aqνMAG×(
C(q∗k)~N)
+ C(q∗k)~aqk × ~N
=(
C(q∗k)~N)×
~aqνMAG− C(q∗k)
~N×~aqk
= HMAGkδzk +
(
C(q∗k)~N)×
MMAG~νMAG, (6.74)
donde HMAGk=[
03×6 −C(q∗k)~N× 03×6
]
.
6.4.4. Filtro de Kalman Extendido Multiplicativo Discreto
Con todo lo establecido en la seccion anterior, ya se esta en condiciones de aplicar el Filtro de Kalman.
Para ello, se suponen unas condiciones iniciales conocidas ~x0, ~v0, ~q0, ~ab0 , ~ωb0 , y una estimacion de la
covarianza inicial del error P0. A continuacion, se resume el proceso de estimacion a priori y a posteriori
de las variables de estado.
6.4.4.1. Estimacion a priori
Mientras no se tengan medidas de sensores independientes de la IMU, simplemente se hace evolu-
cionar la estimacion de acuerdo con el comportamiento del sistema sin ruido. Ası, cada vez que se
recibe un dato con medidas del vector de aceleracion y de la velocidad angular, se realiza la siguiente
prediccion
~x−k+1 = ~x+k + T~v+k +T 2
2q∗
+
k ⋆(
~amk− ~a+bk
)
⋆ q+k +T 2
2~g0, (6.75)
214 CAPITULO 6. DISENO DEL SISTEMA DE NAVEGACION
~v−k+1 = ~v+k + T q∗+
k ⋆(
~amk− ~a+bk
)
⋆ qk + T~g0, (6.76)
~a−bk+1= ~a+bk , (6.77)
q−k+1 = q+k ⋆ qωk, (6.78)
~ω−bk+1
= ~ω+bk, (6.79)
donde el cuaternion de error qωkpuede calcularse de la forma
qωk=
cos|~ωmk
−~ω+
bk|T
2
sin|~ωmk
−~ω+
bk|T
2 ·~ωmk
−~ω+
bk
|~ωmk−~ω+
bk|
. (6.80)
Simultaneamente se debe ir haciendo evolucionar la covarianza del error de acuerdo a la dinamica
hallada:
P−k+1 = AkP
+k A
Tk +BkB
Tk . (6.81)
6.4.4.2. Estimacion a posteriori
Obtencion de medidas:
Cuando se tiene una medida, se calcula la ganancia de Kalman y se corrige el estado. Teniendo en
cuenta los distintos sensores presentes en el avion, se consideran tres posibilidades: solo una medida
del magnetometro, solo una medida del GPS, o ambas medidas simultaneas.
Medida del magnetometro: se calcula la diferencia entre la medida real y la esperada Ek =
EMAGk= ~NB − yMAGk
= yMAGk− q−k ⋆
~N ⋆ q∗−
k . Hk = HMAGk=[
03×6 −C(q∗−
k ) ~N× 03×6
]
,
Rk =(
C(q∗−
k ) ~N)×
MMAG.
Medida del GPS: se calcula la diferencia entre la medida real y la esperada: Ek = EGPSk=
yGPSk− yGPSk
. Hk = HGPS, Rk =MGPS.
Ambas medidas: en este caso, se define
Ek =
[
EMAGk
EGPSk
]
, Hk =
[
HMAGk
HGPS
]
, Rk =
(
C(q∗−
k ) ~N)×
MMAG 0
0 MGPS
. (6.82)
Correccion:
Una vez recibida la medida externa, se aplica la formula del filtro de Kalman. Entonces δz+k =
KkEk, donde la ganancia de Kalman se calcula de Kk = P−k H
Tk (HkP
−k H
Tk +Rk)
−1. De este modo, la
covarianza a posteriori queda P+k = (Id−KkHk)P
−k .
Definiendo el vector de error estimacion a posteriori de la misma forma que se hizo con δzk, se
6.5. SIMULACIONES 215
tiene
δz+k =
δ~x+kδ~v+k~a+qkδ~a+bkδ~ω+
bk
. (6.83)
De esta forma, se pueden aplicar las correcciones directamente a todas las variables de estado del filtro
excepto a las correspondientes a los cuaterniones, esto es
~x+k = ~x−k + δ~x+k , (6.84)
~v+k = ~v−k + δ~v+k , (6.85)
~a+bk = ~a−bk + δ~a+bk , (6.86)
~ω+bk
= ~ω−bk
+ δ~ω+bk, . (6.87)
Para los cuaterniones, la estimacion a posteriori viene dada por
δq+k =1
√
4 + ‖~a+qk‖
[
2
~a+qk
]
, (6.88)
y finalmente
q+k = q−k ⋆ δq+k . (6.89)
Realizando este proceso iterativamente, se obtienen las medidas de la posicion y actitud proporcio-
nadas por el MEKF desarrollado en este capıtulo.
6.5. Simulaciones
A continuacion se va a mostrar un ejemplo simple que permita comprobar, en simulacion, que el
filtro de Kalman desarrollado en este capıtulo no diverge. Para ello, se va a considerar un movimiento
sencillo, dado por una secuencia de aceleraciones lineales y velocidades angulares, que se definen de la
siguiente forma
~a =
2 sin(2t)
3 cos(t)
10
, (6.90)
~ω =
0,1 sin(2t)
0,1 cos(3t)
0,2 sin(t)
. (6.91)
216 CAPITULO 6. DISENO DEL SISTEMA DE NAVEGACION
Para simular el comportamiento de los sensores, a estas medidas se les ha anadido un ruido y un sesgo,
con las siguientes propiedades estadısticas
Ma = Id3, Mq = Id3, Mab = 10−2 · Id3, Mωb= 10−2 · Id3, (6.92)
MGPS =
[
5 · Id3 0
0 Id2
]
MMAG = 0,1 · Id3, (6.93)
Ademas, las matrices de sintonizacion del Filtro de Kalman son las siguientes
Ma = 1,7 · Id3, Mq = 0,6 · Id3, Mab = 0,7 · 10−2 · Id3, Mωb= 0,5 · 10−2 · Id3, (6.94)
MGPS =
[
10 · Id3 0
0 2 · Id2
]
MMAG = 0,03 · Id3. (6.95)
Notese que se han supuesto desconocidas las propiedades estadısticas de los ruidos de los sensores,
aunque se ha mantenido el mismo orden de magnitud.
El resultado puede verse en las figuras 6.1–6.3, donde se muestran los valores de la posicion, velocidad
y cuaterniones, considerando la situacion real (lınea azul), el Filtro de Kalman desarrollado aquı (lınea
roja) y una integracion simple de las medidas de los acelerometros y giroscopos (lınea verde). En la
figura 6.4 se muestra el sesgo estimado de la aceleracion, mientras que en la figura 6.5 se muestra la
estimacion del sesgo de la velocidad angular.
Se puede ver como la version discreta del Filtro Extendido Multiplicativo de Kalman desarrollada
en este capıtulo es capaz de proporcionar medidas adecuadas de la posicion y de la actitud de este
sistema de ejemplo. En contraposicion, se puede ver como en caso de usar un sistema de navegacion
basado unicamente en la integracion de las medidas de los acelerometros y los giroscopos, se acumula
una deriva considerable, haciendo que las estimaciones proporcionadas se alejen de la realidad (notese
como con el paso del tiempo estas estimaciones se salen de escala en las figuras 6.1 y 6.2, las cuales se
han centrado en los valores de posicion y velocidad reales).
Ademas de esto, la formulacion discreta del Filtro permite que sea muy facil de implementar, a la
vez que su diseno multiplicativo evita los procesos de renormalizacion de los cuaterniones existentes en
filtros similares formulados de forma aditiva (en los que el cuaternion de error se calcula como diferencia
de cuaterniones). Se consigue evitar ası la perdida de precision en la estimacion de la actitud debido
a estos procesos de renormalizacion.
Finalmente, hay que decir que este capıtulo se ha centrado en realizar una contribucion teorica al
desarrollo de un Filtro de Kalman adaptado a las particularidades del problema de determinacion
de actitud y posicion de un avion no tripulado. Sin embargo, para cerrar el diseno del sistema de
navegacion del avion con el que se esta trabajando en esta tesis, se debe implementar este filtro en
el computador de a bordo del avion, con el fin de poder realizar vuelos en los que se pueda poner a
prueba el MEKF de este capıtulo. Debido a la imposibilidad de realizar estos vuelos hasta la fecha, se
deja esta tarea como una lınea de trabajo futura.
6.5. SIMULACIONES 217
0 10 20 30 40 50 60 70 80 90 100
0
50
100
x [m
]
0 10 20 30 40 50 60 70 80 90 100−10
−5
0
5
10
y [m
]
0 10 20 30 40 50 60 70 80 900
200
400
600
800
z [m
]
Tiempo [s]
Real F. Kalman Integracion pura
Figura 6.1: Componentes del vector de posicion.
0 10 20 30 40 50 60 70 80 90 100−5
0
5
Vx [m
/s]
0 10 20 30 40 50 60 70 80 90 100−10
−5
0
5
10
Vy [m
/s]
0 10 20 30 40 50 60 70 80 90 100
0
10
20
Vz [m
/s]
Tiempo [s]
Real F. Kalman Integracion pura
Figura 6.2: Componentes del vector velocidad.
218 CAPITULO 6. DISENO DEL SISTEMA DE NAVEGACION
0 10 20 30 40 50 60 70 80 90 100
0.8
1
q 0
0 10 20 30 40 50 60 70 80 90 100−0.5
0
0.5
q 1
0 10 20 30 40 50 60 70 80 90 100−1
0
1
q 2
0 10 20 30 40 50 60 70 80 90 100−0.5
0
0.5
q 3
Tiempo [s]
Real F. Kalman Integracion pura
Figura 6.3: Cuaterniones.
0 10 20 30 40 50 60 70 80 90 100−6
−4
−2
0
2
4
6x 10
−3
Tiempo [s]
a b
ab,x
ab,y
ab,z
Figura 6.4: Componentes del sesgo de la aceleracion medida por la IMU.
6.5. SIMULACIONES 219
0 10 20 30 40 50 60 70 80 90 100−2
−1
0
1
2
3
4
5
6
7x 10
−3
Tiempo [s]
ωb
ωb,x
ωb,y
ωb,z
Figura 6.5: Componentes del sesgo de la velocidad angular medida por la IMU.
Pagina en blanco
220
Capıtulo 7
Desarrollo del Computador de Vuelo
7.1. Introduccion
En este capıtulo se va a plantear el desarrollo de un computador de vuelo (FC) con todas las
funcionalidades necesarias para implementar los sistemas de control y guiado desarrollados en esta tesis.
Se entiende este capıtulo como una implementacion de la seccion 1.2, donde se realizo un desarrollo
conceptual de la arquitectura del sistema de control de vuelo descrito en esta tesis. Ası, partiendo
de esa arquitectura conceptual, se va a tratar tanto la implementacion hardware como software de
todos los sistemas avionicos que hagan posible llevar a la practica las leyes de control y guiado de los
capıtulos 3 y 4, y el sistema de navegacion del capıtulo 6.
Entrando en la justificacion de por que es necesario desarrollar sistemas avionicos especıficos para
aviones no tripulados, lo primero que hay que tener en cuenta es que debido a la enorme variedad que
presentan estos aviones resulta difıcil el empleo de sistemas avionicos estandares, los cuales pueden
ser encontrados con facilidad en el mercado. Ası, hay que tener en cuenta que los sistemas de control
de vuelo llevan muchos anos funcionando con exito en la aviacion tripulada, lo que ha dado lugar al
desarrollo computadores de vuelo y demas sistemas estandarizados que permiten la implementacion
de las leyes de control de vuelo de un avion convencional. Sin embargo, el gran problema de estos
sistemas comerciales es que estan disenados y certificados para aeronaves tripuladas, lo cual ha dado
lugar a sistemas con tamanos, pesos y costes que hacen que sean imposibles de instalar en aviones no
tripulados ligeros.
No obstante, hay que tener en cuenta que con el auge que han experimentado los UAVs, han nacido
algunas empresas que comercializan sistemas de control de vuelo que implementan todos los sistemas y
sensores necesarios para el vuelo autonomo, en modulos con tamanos y pesos compatibles con el avion
con el que se esta trabajando en esta tesis. Uno de estos sistemas comerciales, que han alcanzado gran
exito es Piccolo, desarrollado por CloudCap [Clou]. Esta empresa permite construir un sistema avionico
modular, en funcion de las necesidades concretas de la aeronave, ofreciendo ademas un software que
permite sintonizar las leyes de control.
Otra aproximacion similar es AP04 de UAV Navigation [UAV ]. Este sistema permite el control de
221
222 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
aviones no tripulados ligeros haciendo uso de un modulo de reducido tamano y consumo. Hay que
mencionar que ha alcanzado gran exito operando en aviones utilizados como blancos aereos, entre
otras aplicaciones.
Estos sistemas de control de vuelo tienen la ventaja de que pueden ser adaptados con facilidad a
distintos tipos de aviones, ya que se comercializan listos para enchufar y volar. Sin embargo, desde el
punto de vista de la investigacion sobre leyes de control de vuelo, presentan el grave inconveniente de
ser sistemas cerrados, que unicamente disponen de algunos parametros de configuracion para ajustar
las ganancias de las leyes de control implementadas. Ademas, su coste es relativamente elevado.
Para superar el hermetismo y precio de los autopilotos comerciales, han surgido algunos proyectos
basados en la idea de software libre, que tratan de desarrollar sistemas avionicos para aviones no
tripulados con arquitecturas abiertas, que pueden ser modificados y adaptados a las necesidades con-
cretas de cada avion. Uno de estos ejemplos es el proyecto Paparazzi [Papa], el cual nacio como un
trabajo de investigacion en la Ecole Nationale de l’Aviation Civile (ENAC). Este proyecto se abrio a
la comunidad, permitiendo que un gran numero de desarrolladores hayan contribuido al diseno tanto
del hardware del computador de vuelo y de los distintos sensores, como del software que implementa
las leyes de control, los drivers de comunicaciones con los sensores, o la propia estacion de tierra. El
resultado es un gran repositorio donde pueden encontrarse tanto planos de circuitos, como codigos
fuente de los distintos sistemas del autopiloto.
Otro ejemplo de sistema de bajo coste para la implementacion de leyes de control y guiado en aviones
no tripulados es Ardupilot [Ardu], el cual se basa en la conocida plataforma de desarrollo Arduino para
generar una tarjeta de bajo coste que dispone de un microprocesador, sensores de presion y sensores
inerciales, que permiten programar de forma rapida leyes de control sencillas.
Aunque estos sistemas son abiertos y ofrecen la posibilidad de implementar leyes de control especıficas
para cada caso, hay que tener en cuenta que se basan en microcontroladores de bajo coste, que no
permiten demasiada potencia computacional. Por ejemplo, la ultima version de Paparazzi se basa en
el microcontrolador ARM7 LPC2148 [NXP ], con una velocidad de reloj de 60 MHz, y una memoria
de 32 KB, valores claramente inferiores a las posibilidades que ofrecen los procesadores convencionales
que se pueden encontrar en los ordenadores personales. Estas prestaciones pueden ser adecuadas para
leyes de control simples, pero resultan insuficientes para implementar leyes avanzadas, como puede ser
el sistema de guiado del capıtulo 4.
Otra caracterıstica comun de estos sistemas es que se han desarrollado con un gran nivel de integra-
cion. Esto permite conseguir computadores con tamanos y pesos muy reducidos, a la vez que consiguen
disminuir sensiblemente el consumo de potencia electrica. Esto supone una ventaja para implementar
leyes de control y guiado cerradas. Sin embargo, de cara al desarrollo de nuevas leyes de control de vue-
lo puede llegar a ser un inconveniente, ya que el computador embarcado puede resultar excesivamente
rıgido, siendo difıcil adaptarlo a las necesidades de nuevas leyes de control de vuelo.
Para una revision mas exhaustiva tanto de estos sistemas open-source como de los autopilotos co-
merciales descritos anteriormente, se puede consultar [Chao 07], donde se hace una comparacion de
las prestaciones de cada uno de ellos.
7.1. INTRODUCCION 223
Ademas de estos trabajos, en la literatura cientıfica pueden encontrarse algunas implementaciones
de sistemas de control de vuelo, con un diseno abierto que permiten la programacion de nuevas leyes
de control y guiado, a la vez ofrecen una mayor capacidad computacional. Por ejemplo en [Jang 02] se
presenta el diseno y la implementacion de los sistemas avionicos del DragonFly UAV, desarrollado en
la Universidad de Stanford. Se propone una arquitectura del sistema modular, basada en el estandar
PC104 [PC10 08b]. Esto permite hacer uso de procesadores con mayor capacidad computacional, a la
vez que se vuelve un diseno mucho mas flexible, permitiendo anadir o modificar los distintos modulos
del bus PC104 en funcion de las necesidades.
Concretamente, la arquitectura propuesta en dicho trabajo se basa en una placa base con el proce-
sador AMD K6-2e a 266 MHz y con 128 MB de memoria. Ademas, se incorporan al bus PC104 una
tarjeta de adquisicion de datos analogicos, y otra de comunicaciones con varios puertos RS-232 que
son usados para conectar al sistema la IMU y el receptor GPS. Por otra parte, el incremento de las
capacidades del procesador hace posible usar un sistema operativo en tiempo real (concretamente en
dicho trabajo se propone QNX Neutrino [Krte 99]), lo cual facilita enormemente la programacion de
funciones mas sofisticadas.
En otro trabajo como [Chri 04] puede encontrarse otra arquitectura para el computador de vuelo,
en la cual se integra un DSP1 y una FPGA2 para conseguir aumentar potencia de calculo del sistema.
Esta arquitectura se detalla en [Chri 06], donde se puede ver que se propone el uso de la FPGA para
sintetizar en ella un microcontrolador que implemente las comunicaciones con los sensores de presion,
IMU, GPS, etc (los cuales son integrados dentro del propio sistema). Adicionalmente, se usa un bus
dedicado para la comunicacion entre el microcontrolador sintetizado en la FPGA y el DSP, en el cual
se implementan las leyes de control de vuelo. Ademas, teniendo en cuenta las limitaciones del DSP, se
emplea un sistema operativo en tiempo real como es MicroC/OS-II (ver [Labr 03]), el cual se adapta
adecuadamente a sistemas empotrados como es este caso. El resultado de dicho trabajo es un compu-
tador de vuelo altamente integrado, cuyo procesador principal (DSP) se ha liberado de las labores de
gestion de la comunicacion con los distintos sensores gracias al empleo de la FPGA, que permite con-
centrar la informacion de los sensores y enviarla al procesador principal a traves de un bus dedicado a
alta velocidad cuando este lo requiera. Ademas, otra importante ventaja es que cuenta con un sistema
operativo en tiempo real (en una version reducida), lo que facilita considerablemente el desarrollo de
las leyes de control, a la vez que permite extender el computador de vuelo a otras funcionalidades. El
elevado nivel de integracion permite generar un sistema de dimensiones considerablemente reducidas.
Se muestran en estas referencias aplicaciones de este sistema en helicopteros no tripulados.
Como se desprende de los parrafos anteriores, pueden encontrarse en la practica numerosos compu-
1Un procesador digital de senales (conocido por sus siglas inglesas DSP) es un microcontrolador disenadoespecıficamente para tareas de procesado digital de senales. A diferencia de los microcontroladores de propositogeneral, que no estan especializados en ninguna tarea en particular, los DSP se disenan especıficamente parasoportar tareas de altas prestaciones, repetitivas y numericamente intensas, lo que les permite acelerar loscalculos matematicos implicados en el procesado de senales en tiempo real.
2Una FPGA (Field Programmable Gate Array) es un circuito integrado que contiene miles de bloques logicoscuyas interconexiones y funcionalidades son configurables. Usando un lenguaje de descripcion de hardware (comoVHDL), se pueden sintetizar en estos dispositivos infinidad de funciones logicas, tanto combinacionales comosecuenciales, las cuales permiten implementar desde elementos simples (como un multiplexor), hasta elementosde gran complejidad (como un microprocesador).
224 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
tadores de vuelo, con caracterısticas visiblemente distintas. Sin embargo hay que decir que ninguno de
ellos permite satisfacer completamente todos los objetivos impuestos a la hora de llevar a cabo esta
tesis.
En primer lugar, hay que tener en cuenta que se esta abordando aquı un problema de investigacion
y desarrollo de nuevas leyes de control y guiado, para lo cual se necesita una plataforma de desarrollo
flexible y facil de adaptar a nuevas situaciones. Esto hace desaconsejable emplear algunos de los
sistemas integrados que se han descrito anteriormente, ya que en caso de presentarse nuevos requisitos
hardware para llevar a cabo las leyes de control y guiado, serıa costoso adaptar el computador de vuelo
para satisfacerlos.
Por otra parte es necesario contar con gran capacidad computacional, que permita prototipar nuevas
leyes de control y guiado sin tener restricciones de capacidad de calculo en tiempo real3. Esto hace
aconsejable acudir a un sistema basado en microprocesadores convencionales (similares a los usados en
los ordenadores personales), de mayor potencia que los microcontroladores empleados en algunos de
los sistemas descritos en los parrafos anteriores. Con este incremento de la potencia de calculo tambien
se abre la puerta a usar el propio FC para gestionar posibles modulos de carga de pago embarcados
en el avion, lo cual aumentarıa la versatilidad del sistema.
Otro aspecto fundamental que hay que tener en cuenta es que el FC debe encargarse de gestionar
las comunicaciones con los distintos sensores y actuadores del avion, lo cual supone controlar un flujo
considerable de datos. Ası, resulta util disponer de un modulo de gestion de estos sistemas avionicos,
de forma que se pueda liberar al procesador de estas tareas (ganando ası capacidad computacional).
En este sentido resulta interesante la arquitectura propuesta en [Chri 04] (anteriormente comentada),
pero cuenta con el inconveniente de plantear un sistema altamente integrado, lo que hace que sea difıcil
realizar modificaciones en el hardware.
Hay que decir ademas que para el proceso de desarrollo de leyes de control y guiado, es importante
contar con un buen modelo de la aeronave con la que se esta trabajando. Ası, para realizar una
identificacion realista de dicho modelo, resulta bastante util disponer de la capacidad de realizar
vuelos en “modo manual” (esto es, con un piloto en tierra controlando el avion), durante los cuales se
pueden recoger todas las variables de estado del avion, incluidas las senales de control comandadas
por el piloto (para lo cual el FC necesitarıa disponer de un lector de senales PWM provenientes de
la radio). Sin embargo, ninguno de los computadores de vuelo descritos anteriormente incorpora un
lector de senales PWM que permita realizar estos vuelos de identificacion.
Por ultimo, hay que tener en cuenta que todos los objetivos anteriores deben poder satisfacerse dentro
de las limitaciones presupuestarias de esta tesis, y que el sistema resultante debe ser los suficientemente
robusto como para garantizar la seguridad del vuelo.
Con todos estos requisitos, se ha considerado conveniente desarrollar un FC adaptado a los obje-
tivos de esta tesis. Ası, entrando en la arquitectura propuesta, se va a disenar un sistema modular,
basando el computador de vuelo en el estandar PC-104+4. El uso de este formato permite incorpo-
3Notese que una vez desarrolladas, estas leyes podrıan ser optimizadas e implementadas en un procesadormas reducido, acorde con los requisitos finales.
4Como se puede ver en [PC10 08a], se trata de una extension del estandar PC104 original, mediante la cual
7.1. INTRODUCCION 225
rar un microprocesador de potencia notablemente superior a los microcontroladores presentes en los
sistemas integrados descritos anteriormente, lo cual permite instalar un sistema operativo en tiempo
real que facilite la labor de desarrollo de leyes de control de vuelo, a la vez que permita extender las
funcionalidades del ordenador de a bordo a otras tareas.
Sobre la placa procesadora, haciendo uso del bus PC-104+, se ha desarrollado un sistema de gestion
de sensores y actuadores del avion, que permite al microprocesador operar los sensores y actuadores
de forma transparente, sin dedicar mas recursos que simples transacciones de datos mediante el bus
PCI104 (notese que este bus opera a una velocidad de transferencia de 132 Mbytes/s, lo cual permite
acceder a los sensores y actuadores de forma casi instantanea).
Para conseguir estas funcionalidades, se ha desarrollado el modulo de control de sensores y actuadores
a partir de una FPGA, en la cual se implementan todos los protocolos especıficos de comunicaciones
con los sensores y actuadores. La FPGA siempre permanece capturando los datos enviados por los
sensores, los cuales son interpretados y almacenados en posiciones de memoria a las que puede acceder
el microprocesador cuando los requiera. Esto permite descargar considerablemente la CPU del sistema,
que ya no tiene por que interrumpir ninguna tarea en ejecucion para atender a los datos que los sensores
envıan de forma asıncrona.
Ademas, otra consecuencia de emplear esta arquitectura es que hace el sistema de control de vuelo
considerablemente mas versatil. Ası, una de las grandes ventajas de esta arquitectura es que permite
aislar todos los elementos avionicos presentes en un avion no tripulado en un modulo compatible con el
estandar PCI-104. Este modulo puede ser instalado en cualquier placa base, lo que permite seleccionar
el microprocesador del sistema de acuerdo con las necesidades especıficas de cada avion.
Se puede ver esta arquitectura como un punto intermedio entre la propuesta mostrada en [Jang 02]
y la que se puede ver [Chri 06]. Ası, en la primera de ellas se presenta un sistema modular, en el que
el microprocesador debe encargarse de gestionar todas las comunicaciones con los sensores; mientras
que en la segunda se propone un sistema altamente integrado, en el que la FPGA interna gestiona
todos los sensores incorporados, liberando al microprocesador principal (en este caso un DSP) de estas
labores. El principal inconveniente de la primera aproximacion es que se dedican demasiados recursos
de la CPU a gestionar las comunicaciones con los sensores y actuadores, los cuales suelen enviar los
datos de forma asıncrona y suele se necesario incluir tiempos de espera durante los que se desaprovecha
capacidad computacional.5 Por otro lado, la segunda aproximacion permite conseguir un sistema muy
reducido, pero es difıcilmente adaptable a nuevas necesidades, ya que el microprocesador principal esta
integrado en el, por lo que si se requiriese mayor capacidad computacional, serıa necesario redisenar
por completo el sistema para incluir un nuevo microprocesador.
Estas desventajas son superadas por la arquitectura propuesta en esta tesis. Ası, se mantiene una
estructura modular que permite evolucionar con facilidad el sistema, al mismo tiempo que se libera
se anade un bus PCI en paralelo al bus ISA del estandar PC104.5En [Chri 06] se hace enfasis en que hay que ser muy cuidadoso a la hora de atender la comunicacion
asıncrona de los sensores, ya que si no se atiende el buffer de entrada con la adecuada frecuencia, se puedenproducir desbordamientos, lo que puede dar lugar a corrupcion de datos (en este caso, se comenta que estacorrupcion de datos puede producir efectos indeseables en el sistema de navegacion). Esto no ocurre con elsistema propuesto aquı, ya que existe un modulo de la FPGA dedicado a tratar estas comunicaciones y aguardar cada dato recibido en la posicion correspondiente.
226 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
al microprocesador de las labores de gestion de los sistemas, ya que el modulo de control de sensores
y actuadores basado en la FPGA permite realizar todas estas tareas en paralelo. Ademas, el uso
de la FPGA, facilita enormemente las labores de programacion, ya que la gestion de los sensores y
actuadores es totalmente transparente.
El resultado es un sistema modular, facilmente adaptable a nuevas necesidades y con una capaci-
dad computacional adecuada para implementar leyes de control y guiado complejas. Ademas, permite
abaratar costes, ya que se puede usar una placa base multiproposito, a la vez que el hardware sinte-
tizado en la FPGA permite ahorrar en perifericos auxiliares para controlar los sensores y actuadores
(como tarjetas de comunicacion serie, generadores de senales PWM, dispositivos conmutadores ma-
nual/automatico, etc). De esta forma, se dispone de un computador capaz de responder a los objetivos
que se fijaron anteriormente.
Como inconveniente, hay que decir que el tamano del computador propuesto es mayor que el de los
sistemas integrados descritos anteriormente. Sin embargo, se ha optado por pagar este precio para
conseguir un sistema mucho mas flexible, que facilite la tarea de desarrollo de nuevas leyes de control
de vuelo.
Entrando en la estructura de este capıtulo, en la seccion 7.2 se va a tratar la implementacion hard-
ware del computador de vuelo. Se mostrara una vision detallada de todo el sistema en su conjunto,
pasando posteriormente a comentar los detalles de cada subsistema por separado. Por otra parte, en
la seccion 7.3 se hara una descripcion del software desarrollado para este sistema.
7.2. Implementacion hardware del sistema de control de
vuelo
7.2.1. Arquitectura general
En la figura 7.1 se muestra una vision general de la arquitectura del sistema. Como se puede ver, la
implementacion del FC se basa en dos modulos principales: la placa base del sistema, que contiene el
microprocesador, los conversores analogico-digitales (conocidos como ADC, por sus siglas en ingles) y
la conexion a la estacion de tierra; y la placa FPGA, donde se han sintetizado modulos que permiten
gestionar las comunicaciones con los sensores, los generadores de senales PWM usados para controlar
los mandos de vuelo, y un conmutador manual-automatico, que permite a un piloto de seguridad en
tierra tomar el control de la aeronave en caso de ser necesario. Como se puede apreciar en la figura,
estos dos modulos estan unidos por el bus PCI-104.
A continuacion se va a hacer una descripcion pormenorizada de cada uno de estos modulos.
7.2.2. Placa base
El nucleo del sistema reside en la placa base HERCULES II. Se trata de un computador empotrado,
con arquitectura Intel x86, que dispone de un procesado VIA Mark CoreFusion operando a 800MHz, y
7.2. IMPLEMENTACION HARDWARE 227
FPGA
EntradasAnalógica
DatosAerodinámicos
EstadoBaterías
RS-232
RS-232
Radiomódem
Cablemódem
nulo
Bus PCI 104
CPU
HERCULES IIHERCULES II
SensorHall
Entradas/Salidas
Configurables
ReceptorGPS
IMU
GPIO
Módulo FPGA
RPM
GPS
IMU
Puente PCI
LectorPWM
GeneradorPWM
ConmutadorMan/Auto
Receptorradio
Servos
Reloj InternoLEDs Estatus
Bus
Inte
rno
Figura 7.1: Arquitectura general del computador de vuelo.
228 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
con una memoria de 512 MB (ver figura 7.2). En este sistema se ha instalado un sistema operativo Linux
basado en el kernel 2.6.23, parcheado con la version 3.8 de RTAI6 para generar un sistema operativo
en tiempo real estricto (posteriormente se ofreceran mas detalles sobre el sistema operativo).
Figura 7.2: Placa base HERCULES II.
Ademas de la unidad procesadora (CPU), la HERCULES II dispone de conversores analogico-
digitales integrados, los cuales son gestionados por una FPGA interna en la que se programan los
distintos parametros de lectura de los canales analogicos, a la vez que almacena las medias obteni-
das por estos para ser enviados a la CPU a traves de un bus interno cuando esta lo requiera. Estos
conversores tienen una resolucion de 16 bits, y disponen de calibracion interna y de compensacion de
temperatura, lo cual permite obtener medidas precisas de los sensores analogicos de los que dispone
el avion.
Como se puede ver en la figura, los sensores conectados a estos ADC son las sondas de presion para
medir la presion estatica y dinamica, junto con los potenciometros de las veletas de angulo de ataque
y resbalamiento. Ademas, se ha incorporado un sistema de monitorizacion de baterıas que permite
medir la tension e intensidad que proporcionan las baterıas principales del avion en cada instante. Esto
permite conocer la potencia consumida y ofrecer una estimacion del tiempo de vuelo restante.
Es importante mencionar que aunque tanto el sistema de datos aerodinamicos como el sistema de
6Real-Time Application Interface [RTAI] es una extension del kernel de Linux que permite dotarlo de ca-pacidades de tiempo real estricto. La clave esta en que RTAI instala un micro-kernel entre el hardware delsistema y el propio kernel de Linux. Eso permite tratar los procesos de Linux como tareas de menos prioridadque las tareas en tiempo real programadas. Se hara una descripcion mas detallada del software instalado en laseccion 7.3.
7.2. IMPLEMENTACION HARDWARE 229
monitorizacion de baterıas entrarıan dentro de lo que antes se llamaron los sistemas avionicos (es decir,
aquellos sensores y actuadores especıficos de un avion no tripulado), se han conectado directamente a
la placa base en lugar de hacerlo a la FPGA (que se encarga del resto de sensores y actuadores). La
razon esta es que estos sistemas son analogicos, por lo que precisan los conversores analogico digitales
que se han mencionado antes. Ası, teniendo en cuenta que la placa HERCULES II ya dispone de
un sistema de adquisicion de datos analogicos de precision, se opto por esta opcion en lugar de usar
ADCs adicionales conectados a la FPGA. Ademas, esto tampoco supone una merma en la capacidad
computacional, ya que la propia placa base dispone de una FPGA que se encarga de gestionar dichos
convertidores.7
Por otra parte, la placa base dispone de varios puertos RS-232, los cuales son usados para conectar el
FC a la estacion de tierra. Ası, en uno de los puertos se ha instalado un radio-enlace Digi XBee-PRO
868 MHz que permite un alcance de 40 km en campo abierto, lo cual se ajusta a las necesidades del
avion. Este radio-enlace ofrece una comunicacion a traves del puerto serie totalmente transparente, de
manera que desde el PC de tierra se puede abrir un terminal virtual como si estuviese conectado al FC
a traves de un cable de modem nulo. Esto permite tener el control total del FC de forma inalambrica,
siempre que la aeronave este dentro del alcance especificado.
El inconveniente de este radio-enlace es que para obtener ese excelente alcance, debe sacrificar
bastante ancho de banda (el enlace serie soporta una velocidad maxima de 2.4 kbps), lo cual limita el
flujo de telemetrıa que se puede enviar. En este sentido, se estudio incluir otro tipo de comunicacion
inalambrica que ofreciera una tasa de transferencia mayor, como es el caso de WiFi. Sin embargo,
esta tecnologıa ofrece un alcance bastante limitado, llegando hasta los 400 metros en campo abierto,
lo cual resulta insuficiente para monitorizar la aeronave durante el vuelo.
Para permitir una conexion mas rapida al FC cuando el avion este en tierra, se ha usado otro puerto
RS-232 de la placa base para instalar una conexion serie mediante un cable de modem nulo. Al igual
que el radio-enlace, esta conexion permite abrir en el PC de tierra una terminal virtual con la que se
puede tomar el control del FC. La diferencia es que el enlace fısico permite alcanzar velocidades de
transferencia considerablemente mayores.
7.2.3. Placa FPGA
Como se puede ver en la figura 7.1, la arquitectura propuesta incorpora una FPGA que permite
gestionar los distintos sensores del avion, a la vez que permite generar las senales PWM usadas para
controlar los mandos de vuelo.
Tal y como se ha mencionado antes, una FPGA es un dispositivo logico programable, compuesto por
miles de bloques logicos cuyas funcionalidades y conexiones pueden ser programados8, permitiendo
realizar funciones logicas especıficas. Ası, mediante un lenguaje de descripcion de hardware (en este
7En cualquier caso, si se decidiera usar una placa base sin estos conversores, unicamente serıa necesarioincorporar elementos ADC a la placa FPGA, conectando sus salidas digitales a cualquiera de las entradas/salidasmultiproposito (GPIO) que se han dejado libres en la FPGA (ver figura 7.1).
8Notese en este caso el termino “programar”no se refiere a instalar en la FPGA un software especıfico, sinoa sintetizar a nivel hardware un conjunto de funciones logicas en la propia FPGA.
230 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
caso se ha usado VHDL), se puede sintetizar en ella cualquier funcion logica deseada. Esta capacidad
para sintetizar hardware“a medida” en la FPGA, supone una enorme ventaja, ya que permite integrar
en un unico dispositivo todos los elementos necesarios para gestionar los sensores y actuadores del
avion, lo cual supone un notable ahorro de coste, peso y complejidad del sistema.
Para ilustrar este efecto, considerese el caso de un computador de vuelo estandar, basado un mi-
crocontrolador que se encarga de gestionar todos los sistemas avionicos. En este caso, ademas del
procesador, se necesitarıan los siguientes elementos:
Sistema de generacion de senales PWM. Aunque existen microcontroladores con salidas PWM,
resulta muy difıcil encontrar alguno que posea el numero de canales necesarios en esta tesis. Ademas,
las salidas PWM suelen ser compartidas con otras salidas potencialmente necesarias, como puertos
serie, o entradas analogicas. Esto hace que en la practica sea necesario incluir una placa auxiliar con
otro elemento (como puede ser otro microcontrolador) dedicado a la generacion de senales PWM.
Lector de senales PWM. Si se quisieran leer todos los canales PWM con el procesador principal,
serıa necesario dedicar una lınea de interrupcion y un contador a cada canal PWM (para detectar
el comienzo el pulso y contabilizar su duracion). Puesto que no se tienen microcontroladores con
tantas lıneas de interrupcion ni contadores disponibles, es necesario usar un periferico externo que
implemente estas funciones.
Conmutador manual/automatico. Se debe incorporar un multiplexor externo junto con un circuito
que contenga logica de decision para comandar el modo manual o el modo automatico en funcion
de una senal de control gestionada por el piloto.
Placa de comunicaciones. Si se incorporan los tres perifericos anteriores, junto con la IMU, el GPS,
o las senales que provienen de los ADC, es muy probable que el microcontrolador no disponga
de suficientes puertos de entrada, lo que implicarıa anadir ademas un concentrador de puertos de
comunicaciones.
Con la aproximacion planteada en esta tesis, todos estos perifericos se van a sintetizar en la propia
FPGA, lo que permite obtener un sistema mucho mas integrado, con menor consumo y coste.
La FPGA usada es el modelo Xilinx Spartan-3 XC3S400, contenida en una placa de desarrollo
Enterpoint Hollybush 1 HB1-400. En la figura 7.3 se puede ver una imagen de esta placa de desarrollo,
con los distintos componentes.
Este modulo se conecta a la CPU a traves del bus PCI-104, el cual es uno de los buses presentes en
el estandar PC-104+. Esto permite conectar este modulo de gestion de sensores del avion a cualquier
placa base compatible con este estandar, lo cual hace que el computador de vuelo sea mucho mas
versatil, pudiendo ampliar la capacidad computacional sin mas que sustituir la placa base por otra
version mas potente.
Por otro lado, hay que decir que otra de las ventajas de usar una FPGA para gestionar los distintos
sensores es que permite atender en todo momento a estos sistemas de forma simultanea, recibiendo
todos los datos que estos envıan de forma asıncrona, y almacenando cada dato en una posicion concreta
7.2. IMPLEMENTACION HARDWARE 231
Bus PCI104
FPGA XilinxSpartan-3
RS-232
Conetor JTAGProgamación
Entradas/Salidasprogramables
Entradas/Salidasprogramables
Figura 7.3: Placa Hollybush 1 HB1-400.
de la memoria interna del sistema. De este modo, cuando la CPU requiera un dato concreto, solo debe
ejecutar una operacion de lectura de una posicion de memoria conocida, lo cual se realiza de forma
casi instantanea9.
Hollybush 1
LEDs
Multiplexoresmanual/automático
Alimentación
Alimentación
RS-232 IMU
Conector PCI-104
Salida PWM(hacia los servos)
Entrada PWM(desde el receptor)
GPIO: GPS y RPM.
Figura 7.4: Interfaz exterior del modulo FPGA.
Por otra parte, hay que decir que la placa Hollybush 1 mostrada en la figura 7.3 no es por sı misma
un componente funcional, ya que se trata de una tarjeta con entradas y salidas genericas, a la que no
pueden ser conectados directamente los distintos sensores del avion. Ası, es necesario disenar una placa
de interfaz que permita llevar las lıneas de datos digitales a los puertos de entrada/salida de la FPGA,
9Tengase en cuenta que el bus PCI104 trabaja a una frecuencia de 33 MHz. Como se puede ver en [Shan 99],una transaccion de lectura de una palabra de 32 bits (que es el tamano de una variable tipo float) requiere 4ciclos de reloj, lo que implica que dicha transaccion se realizarıa en 120 ns aproximadamente, valor despreciablefrente al tiempo de muestreo de 20 ms al que operan los servos del sistema (y por tanto el control de actituddel avion).
232 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
al mismo tiempo que provea de la alimentacion adecuada a cada sensor. Todo ello teniendo en cuenta
que cada sensor se conecta al FC mediante un unico conector que integra las lıneas de alimentacion,
tierra y datos.
En la figura 7.4 puede verse la placa de interfaz desarrollada especıficamente en esta tesis. Como
se puede apreciar, esta placa se superpone sobre la Hollybush 1 (conectandose a las lıneas de en-
trada/salida), y sobre ella se han dispuesto distintos conectores para ubicar los sistemas que debe
gestionar la FPGA. El diseno de la placa de interfaz permite llevar las lıneas de datos de cada sensor
conectado a los correspondientes puertos de entrada/salida de la FPGA, a la vez que gestiona las
lineas de alimentacion y tierra para proporcionarle la potencia adecuada10.
Describiendo los elementos dispuestos en la placa de interfaz, por un lado pueden verse dos conectores
DB-44, de manera que a uno de ellos se conectan los distintos canales PWM generados por la radio (la
cual recibe las ordenes del piloto de tierra), mientras que al conector de salida se conectan directamente
los mandos de vuelo (asociados a cada canal)11. De esta forma, la funcion que realiza este modulo de
interfaz es recibir las senales de la radio, derivando los canales de senal a los puertos de entrada de la
FPGA para que puedan ser registradas las acciones del piloto.
Por otra parte, estos canales son enviados a los multiplexores mostrados en la figura 7.4, a los cuales
tambien llegan las senales PWM generadas por el FC. Para decidir la salida del sistema (esto es, cual
de las entradas del multiplexor se envıan a los mandos de vuelo a traves conector DB-44 de salida),
el piloto dispone de un canal de radio que es interpretado por la FPGA, la cual gestiona la senal de
conmutacion de los multiplexores.12
En la figura 7.4 se puede ver tambien la presencia de una serie de puertos de entrada/salida genericos,
dos de los cuales son usados para conectar el GPS y el sensor de RPM (dejando libre el resto para
futuras ampliaciones). Se trata de grupos de puertos con alimentacion a 3.3V y 5V (que son las
tensiones mas comunes en los sistemas digitales) con comunicacion unidireccional o bidireccional. La
placa de interfaz se encarga de proveer de alimentacion a estos puertos, ası como de adaptar las
tensiones de las lıneas digitales de 5V para ser enviadas a la FPGA (ya que la tension maxima a la
entrada de esta es de 3.3V).
Como se describira posteriormente, el protocolo de comunicaciones de la IMU es RS-232 (cuyos
niveles de tension no son soportados por la FPGA), ademas de estar alimentada a 9V. Ası, se ha
ubicado un conector dedicado que le proporciona la tension adecuada, a la vez que lleva las lıneas de
datos a un integrado MAX-232 que funciona como puente entre los niveles logicos de la FPGA y del
protocolo RS-232.
Todas las lıneas de datos que llegan a la placa de interfaz son enviadas a la FPGA, en la cual se
implementan los distintos protocolos de comunicaciones. La arquitectura que se ha sintetizado en la
FPGA, se puede resumir en la figura 7.5. Como se puede apreciar, se tiene un driver del bus PCI, que
10Notese que se disponen de varios conectores de alimentacion, de manera que la placa de interfaz dispone delıneas internas a 3.3V, 5V y 9V; por lo que se puede proporcionar potencia a cualquier sensor que opere a unade estas tensiones.
11Como se describira posteriormente, cada canal que controla cada mando de vuelo consta de un cable tierra,otro de alimentacion y otro con una senal PWM cuyo ancho de pulso indica la posicion de los servos.
12Se han incorporado dos circuitos multiplexores debido al elevado numero de canales.
7.2. IMPLEMENTACION HARDWARE 233
se conecta directamente al puerto de expansion PCI-104 de la placa base, en el cual se implementa
el protocolo de comunicaciones propio de este bus. Al mismo tiempo, este controlador gestiona el bus
interno del sistema, compuesto por dos buses de datos (uno de para lectura y otro para escritura),
junto con un bus de direcciones.
Estos buses internos van conectados a cada uno de los distintos modulos, en los cuales se han
sintetizado diversas funciones, como la gestion de los protocolos de comunicaciones con la IMU y el
GPS, la medida de las revoluciones a partir de los pulsos generados por el sensor de efecto Hall del
motor, la lectura y generacion de senales PWM, o el controlador de los multiplexores que permiten
establecer el modo manual o automatico del avion.
Todos estos modulos operan de forma simultanea e independiente, de manera que la CPU no tiene
que dedicar ningun recurso a gestionarlos, mas alla de establecer las consignas correspondientes (en
el caso de los lectores PWM) o de leer la informacion que contienen los modulos (en el caso de los
sensores).
En este sentido, los modulos que gestionan sensores del avion disponen de una memoria interna (con
un mapa definido), de manera que cada dato se guarda en una posicion concreta. Para que la CPU
pueda acceder a cada dato, debe acceder a la posicion de memoria correspondiente (lo cual se hace a
traves de un driver desarrollado para el sistema operativo instalado en la placa base). El modulo PCI
interpreta esta direccion y la traslada al bus de direcciones, de manera que el modulo seleccionado
puede identificar la peticion, cargando el dato correspondiente en un bus de salida.
Este dato se dirige a un multiplexor, donde se recogen las salidas de todos los modulos. En funcion
de la direccion de la transaccion, se puede determinar a que modulo concreto se esta seleccionando, por
lo que el multiplexor establece como salida la entrada que le esta llegando desde ese modulo concreto.
Finalmente, la salida del multiplexor es recogida por el controlador PCI, que se encarga de trasladarla
al bus PCI-104 para que pueda ser leıda por la CPU.
Una vez hecha esta vision general del funcionamiento del sistema, se va ha hacer una descripcion
mas detallada de cada modulo implementado en la FPGA. Sera una descripcion cualitativa, ya que las
restricciones de espacio en este documento impiden escribir a fondo los distintos protocolos, ası como
la implementacion en VHDL de los mismos (pude consultarse [Payo 11] para ver la implementacion
en detalle de algunos de los modulos que se van a describir).
PCI Core
Este modulo sirve de driver de comunicaciones entre la FPGA y la CPU del sistema. Teniendo en
cuenta que el bus PCI se implementa mediante un protocolo complejo, no resulta eficiente implementar
dicho protocolo en cada uno de los modulos descritos en la figura 7.5, por lo que se ha optado por este
driver de comunicaciones centralizado. Ası, se ha disenado el PCI Core para que actue como puente
entre el bus PCI y los buses internos de datos y direcciones que permiten la comunicacion con el resto
de modulos.
Ademas, implementa otra funcionalidad fundamental de todo dispositivo PCI, como es el protocolo
de autoconfiguracion del sistema. Ası, durante el inicio del computador de vuelo, la placa base accede
234 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
VendorID
DeviceID
ClassCode
SubClassCode
ProgIF
RevisionIF
PCI CORE
MU
LTIP
LEXO
R
D_out
IMU
IMU_TX
Memoria
Intenra
IMU_RX
SENSOR
RPMSensor
Hall
Memoria
Intenra
GPS
GPS_TX
Memoria
Intenra
GPS_RX
Core
Version
Reloj
Interno
MAN /
AUTO
PW
M_out
1
PW
M_out
2
PW
M_out
3
PW
M_out
4
PW
M_out
5
PW
M_out
6
PW
M_out
7
PW
M_out
8
PW
M_out
9
PW
M_out
10
PW
M_out
11
PW
M_out
12
PW
M_out
13
PW
M_out
14
PW
M_out
1
PW
M_out
2
PW
M_out
3
PW
M_out
4
PW
M_out
5
PW
M_out
6
PW
M_out
7
PW
M_out
8
PW
M_out
9
PW
M_out
10
PW
M_out
11
PW
M_out
12
PW
M_out
13
PW
M_out
14
PWM_in 1
PWM_in 2
PWM_in 3
PWM_in 4
PWM_in 5
PWM_in 6
PWM_in 7
PWM_in 8
PWM_in 9
PWM_in 10
PWM_in 11
PWM_in 12
PWM_in 13
PWM_in 14
Control
Multiplexor
XILINX
SPARTAN-3
SENSOR
RPM
GENERADOR PWM
LEC
TO
R
PW
M
D_in Ad
BUS PCI104
Memoria
Intenra
Memoria
Intenra
Memoria
Intenra
Figura 7.5: Arquitectura implementada en la FPGA.
7.2. IMPLEMENTACION HARDWARE 235
a este modulo para conocer las caracterısticas basicas del dispositivo PCI conectado, al mismo tiempo
que este informa a la CPU de la cantidad de memoria interna que necesita reservar en el mapa general
de memoria del sistema.
Bus Interno
Se trata de un conjunto de tres buses (dos de datos y uno de direcciones) que permiten la comuni-
cacion de los modulos con el bus PCI, a traves del PCI Core. Se compone de un bus de direcciones,
Ad de 11 bits (tamano que permite direccionar 2048 posiciones de memoria, lo cual es suficiente para
almacenar toda la informacion que gestionan los sensores y actuadores del avion); un bus de datos de
entrada de 32 bits, D in, que transfiere datos del bus PCI hacia los modulos; y otro bus de datos,
D out, de 32 bits, que comunica los modulos con el bus PCI.
Con esta informacion se puede tener una idea del tamano de memoria que ocupara la FPGA en el
mapa de memoria de la HERCULES II. Con un bus de direcciones de 11 bits, y con un bus de datos
de 32 bits, se demandara una zona de memoria de 8 KB, mas que suficiente para implementar todas
las funcionalidades requeridas.
Multiplexor
El bus de datos de salida, D out, es un recurso compartido en el que todos los modulos escriben.
La escritura de mas de un modulo en un mismo bus debe de ser controlada para evitar que dos
modulos escriban al mismo tiempo en el. Eso provocarıa un cortocircuito, haciendo que el sistema no
se comporte correctamente.
Para evitar ese conflicto, se introduce un multiplexor entre los buses de salida de los modulos y el
bus D out. Cuando un modulo requiera el uso del bus, lo comunicara a traves de una senal interna y
se le conectara en exclusiva al bus. Un modulo sabra que es el destino de una transaccion por los bits
mas significativos del bus Ad.
Core Version
Este modulo implementa una memoria ROM y en ella se almacena la version y la fecha del ultimo
diseno realizado. A la HERCULES II le podra servir para confirmar que la comunicacion con la FPGA
es correcta.
Reloj Interno
En este modulo se implementa un contador de tiempo, con una resolucion de un milisegundo, que se
anadira como “timestamp” (o marca de tiempo) a cada lectura que hagan los modulos de sus sensores
para tener una secuenciacion temporal de cada dato recogido por la FPGA.
236 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
Generador PWM
Para que FC pueda gobernar el avion, es necesario que disponga de un modulo capaz de generar
las senales PWM que controlan tanto los servos de las superficies aerodinamicas como el controlador
electronico de velocidad del motor.
Como se puede ver en la figura 7.6, para controlar un servo, es necesario proporcionar una senal
periodica (normalmente a 50 Hz, aunque existen algunos modelos que admiten frecuencias superiores),
de manera que cada periodo comienza con un pulso cuya anchura varıa entre 500 µs y 2500 µs. La
posicion alcanzada por el servo es proporcional a esta anchura de pulso.
500 us
1500 us
2500 us0 500 us
1500 us
2500 us0
20 ms (50Hz) ·····
·····
····
·
0
500
1500
2500
0 40002000 Valor
Anchura(us)
Figura 7.6: Senales PWM en servos radio control (izquierda). Relacion valor-anchura del gene-rador PWM (derecha)
La funcion de este modulo es generar en paralelo las distintas senales PWM que gobiernan cada
mando de vuelo del avion, a partir de las consignas envidadas por la CPU. Ası, este modulo dispone
de 14 registros internos (uno por cada canal PWM), en los que la CPU puede escribir un valor entero
correspondiente a la posicion de cada servo. Como se aprecia en el lado derecho de la figura 7.6, este
modulo convierte el valor entre 0 y 4000 escrito en el registro, en una senal PWM con una anchura de
pulso comprendida entre 500 µs y 2500 µs, con una resolucion de 0.5 µs (lo que se corresponde con el
0.025% del recorrido del servo).
Ademas, hay que resenar que una vez que la CPU escribe en el correspondiente registro, el modulo
mantiene la senal PWM en el tiempo, de manera que la CPU no tiene que dedicar ningun recurso
adicional, mas que actualizar el registro cuando requiera un cambio de posicion del servo.
Lector PWM
De forma analoga al caso anterior, la funcion de este modulo es interpretar los distintos canales
PWM provenientes de la radio del avion, de manera que el FC pueda registrar las acciones que el
piloto de tierra esta realizando. Como se menciono en la introduccion, este modulo abre la puerta a
realizar ensayos en vuelo para identificar el modelo aerodinamico del avion.
Con esta premisa, se ha incorporado en la FPGA un modulo capaz de interpretar las senales PWM
de todos los canales de la radio, de manera que se puedan registrar en todo momento las acciones del
piloto.
7.2. IMPLEMENTACION HARDWARE 237
El funcionamiento de este modulo es el inverso al del Generador PWM. Ası, se disponen de 14
contadores internos que permiten medir en paralelo las anchuras de los pulsos de los 14 canales de
radio. Cada vez que se registra una medida de un canal, se guarda en una posicion especıfica de la
memoria, junto con la marca de tiempo (generada por el Reloj Interno) en el que fue registrado. La
posicion de memoria en la que se registra la medida de cada servo es fija, de manera que la CPU
unicamente debe realizar una operacion de lectura (que se lleva a cabo en aproximadamente 120 ns)
para conocer la informacion de un canal de la radio.
Conmutador Manual/Automatico
Se trata de un mecanismo de seguridad incorporado para evitar que se pierda el control de la aeronave
en caso de que se produzca un mal funcionamiento del FC durante el vuelo. Ası, uno de los canales
del receptor de radio esta asociado a un interruptor que posee el piloto, de manera que este puede
controlar desde tierra si toma los mandos o deja que opere el computador de vuelo.
Para implementar esta funcionalidad, todas las senales del receptor de radio (generadas por el piloto),
junto con las senales PWM generadas por el FC, van a los multiplexores de la placa de interfaz
descritos anteriormente. La salida de estos multiplexores se conecta directamente a los mandos de
vuelo, mientras que la senal de conmutacion (que se encarga de decidir cual de las dos entradas es
traducida a la salida), la gestiona el modulo que se esta describiendo aquı.
Ası, este modulo es en esencia un lector de senales PWM como los descritos anteriormente, que se
encarga de interpretar el canal de conmutacion de la radio, generando la senal de control adecuada
para configurar los multiplexores en modo manual o automatico en funcion de la senal recibida (la
cual es generada del piloto de seguridad).13
Este modulo es en esencia un lector de senales PWM similar a los que existen en el modulo descrito
anteriormente. Sin embargo, se le ha incorporado logica adicional para interpretar la senal PWM
de entrada, decidiendo si el avion debe operar en modo automatico (de manera que es el FC quien
gobierna los mandos de vuelo, o es un piloto en tierra el que controla el avion).
IMU
El Cefiro esta provisto de un sensor de medidas inerciales, que contiene acelerometros, giroscopos
y magnetometros en los tres ejes. Se trata de uno de los pilares basicos del sistema de navegacion
descrito en el capıtulo 6, el cual hace uso de estos tres sensores, junto con las medidas proporcionadas
por el GPS para estimar con mayor precision la posicion y velocidad de la aeronave.
La unidad seleccionada es el 3DM-GX1 de Microstrain. Este dispositivo dispone de un procesador
interno con sus correspondientes conversores analogico digitales calibrados, el cual realiza un filtra-
do de las medidas obtenidas directamente de los sensores, al mismo tiempo que tiene internamente
implementado un Filtro de Kalman para proporcionar valores de la velocidad y actitud del vehıculo.
13En este momento se ha configurado el conmutador para que se situe en modo manual por defecto, de maneraque siempre predomina la accion del piloto de seguridad. Esto resulta util para los primeros ensayos del sistemade control de vuelo, en los que se espera mantener el avion en todo momento en la lınea de vision del piloto.
238 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
La salida de la IMU es digital, enviando los datos por un puerto RS-232 de acuerdo al protocolo de
comunicaciones descrito en [3DM 10].
Debido a la gran cantidad de datos que puede proporcionar la IMU, esta no facilita ninguna infor-
macion por defecto, sino que lo hace bajo peticion de un controlador externo (en este caso la FPGA),
el cual especifica el tipo de dato de salida requerido. En la figura 7.7 se muestra un ejemplo de peti-
cion de datos y de respuesta de la IMU. Como se puede apreciar, el controlador envıa el comando de
peticion de numero de serie (en este caso 0xF1) mediante el puerto RS-232. Una vez recibido, la IMU
emplea cierto tiempo en procesarlo (el cual depende del comando requerido) tras el cual devuelve la
respuesta segun el formato mostrado en la figura (en este caso, se devuelve primero un byte con la
peticion realizada, seguido por dos bytes con el numero de serie y otros dos bytes con un “checksum”
del mensaje que permite comprobar errores).
0xF1
Serial MSB
Serial LSB
CheckSum MSB
CheckSum LSB
0xF1
Figura 7.7: Envıo y respuesta de la IMU. Numero de serie.
Por otra parte, tambien hay que senalar que la IMU tiene dos modos de operacion en funcion de como
envıa su respuesta: el modo Continuo y el modo Polled. En modo Polled, cada vez que se requiera una
respuesta de la IMU, es necesario enviarle previamente el comando correspondiente (una respuesta por
cada comando). Por el contrario, si se configura la IMU en modo continuo, esta se pasa a transmitir
periodicamente el comando seleccionado, enviando los datos con una frecuencia que depende del tipo
informacion requerida. Este sera el modo de funcionamiento durante el vuelo, de manera que durante la
inicializacion se configurara la IMU para que devuelva de forma continua los cuaterniones, velocidades
y aceleraciones lineales, velocidades y aceleraciones angulares, y medidas del campo magnetico.
De este modo, la funcion del modulo implementado en la FPGA sera gestionar estas comunicaciones,
de manera que la CPU no tenga que dedicar recursos a atender el puerto serie, interrumpiendo sus
procesos cada vez que se detecte un envıo de la IMU.14
14Hay que senalar que aunque la transaccion de la figura 7.7 sea trivial, durante la operacion normal del avionse incrementa notablemente el flujo de datos. Ası, como se ha comentado antes, durante el vuelo se configurarala IMU en modo continuo, de forma que esta proporcionara periodicamente medidas de los cuaterniones, veloci-dades y aceleraciones lineales y velocidades y aceleraciones angulares, sumando un total de 31 bytes por paquetea una frecuencia de 76.26 Hz. Si se usase la CPU para gestionar este flujo de datos, requerirıa una atencionconstante para evitar que se produjeran desbordamientos del buffer de entrada que dieran lugar a corrupcionde datos.
7.2. IMPLEMENTACION HARDWARE 239
Ası, se ha sintetizado una UART15 que permite establecer la comunicacion serie con la IMU, a la
vez que se tiene una logica de decision para implementar el protocolo de comunicaciones. Para enviar
un comando a la IMU, la CPU unicamente debe escribir el codigo del comando correspondiente en un
registro de la memoria interna de la FPGA. Cuando el modulo de la IMU detecta una escritura en
este registro, procede a enviar el comando seleccionado.
En paralelo, el hilo de recepcion de la UART esta atendiendo continuamente las respuestas enviadas
por la IMU. Cuando se detecta una transaccion, el modulo de recepcion identifica el tipo de dato
enviado por la IMU16 y guarda el paquete recibido en una posicion especıfica de la memoria interna de
la FPGA, la cual es unica para cada tipo de paquete de respuesta de la IMU. De este modo, cuando
la CPU necesite leer un tipo de dato, unicamente debera acceder a una zona especıfica de la memoria,
donde encontrara la informacion ya formateada. Notese que esta operacion requiere un tiempo de
procesador muy reducido, a la vez que se garantiza que no se pierde informacion, ya que el buffer de
entrada esta constantemente atendido.
Ademas, presenta otra notable ventaja, ya que cada vez que la FPGA recibe un paquete de la IMU
y lo almacena, le incorpora una marca de tiempo (haciendo uso del Reloj Interno). Esto permite a la
CPU conocer exactamente en que momento se genero la medida, lo cual ayuda a la implementacion
del sistema de navegacion.
GPS
Este es el modulo se encarga de implementar el protocolo de comunicaciones del GPS, de manera
que pueda atender de forma autonoma los datos enviados por este, almacenandolos en la memoria
interna de la FPGA para que puedan ser usados por la CPU cuando los necesite.
Se trata del otro pilar basico para implementar el sistema de navegacion del capıtulo 6, mediante
el cual se obtienen medidas complementarias de la posicion y la velocidad en el plano horizontal del
vehıculo (debido a la perdida de precision en el canal vertical, los receptores GPS de bajo coste no
proporcionan medidas de la componente vertical de la velocidad).
El modulo GPS usado en el Cefiro UAV es el modelo GT-310F de RF Solutions. Como la mayorıa
de los modulos del mercado usa el protocolo de comunicaciones establecido en la especificacion NMEA
0182 [Asso 08].17
Entrando en el modo de funcionamiento del GPS, hay que decir que a diferencia de la IMU, su
operacion no requiere interaccionar con un controlador externo. Ası, cuando se enciende el dispositivo,
comienza a enviar por el puerto serie distintos paquetes de datos con informacion acerca de los los
satelites detectados, la posicion del dispositivo, su velocidad, etc; estando estos datos encapsulados
segun el protocolo NMEA 0182.
15UART son las siglas de “Universal Asynchronous Receiver-Transmitter”. Se trata de un dispositivo (que eneste caso esta implementado en la FPGA) que permite enviar y recibir datos mediante comunicacion serie.
16Cada respuesta de la IMU comienza con un byte de cabecera que indica el tipo de paquete que se va aenviar a continuacion.
17Se trata una combinacion de especificaciones electricas y de datos utilizada no solo por receptores GPS sinotambien por sonars, anemometros o brujulas giroscopicas.
240 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
La estructura de los mensajes enviados es de la forma
$GPGSV, 3, 3, 11, 29, 09, 301, 24, 16, 09, 020, , 36, , , ∗76
donde se muestra un ejemplo de datagrama enviado por el GPS. Como se puede apreciar, el protocolo
NMEA 0182 codifica la informacion usando caracteres ASCII. Ası, cada mensaje comienza con el
caracter $ (el cual no puede ser repetido durante el resto del mensaje), seguido de un codigo que
identifica el tipo de datagrama que se esta enviando (en este caso GPGSV, el cual indica que es un
mensaje con informacion acerca de los satelites detectados). Tras la cabecera del mensaje, se envıa
una secuencia de datos separados por comas, en formato ASCII. El mensaje finaliza con el identificador
*, el cual es seguido de una suma de verificacion para detectar errores.
El modulo GPS sintetizado en la FPGA se encarga de escuchar constantemente los datos enviados
por el dispositivo. Cuando recibe un datagrama nuevo, realiza la identificacion del tipo de paquete
enviado, guardando la informacion en una zona de la memoria especıfica para cada tipo de datagrama
(se registra ademas una marca de tiempo, para saber en que instante llego a la FPGA cada datagra-
ma). La CPU dispone del mapa de memoria donde se guarda cada paquete, de manera que cuando
necesita alguna informacion, solo debe realizar una lectura de una region concreta de la memoria del
dispositivo.
RPM
Para implementar el controlador de velocidad del vehıculo, es necesario disponer de un sensor de
revoluciones que permita conocer el regimen de giro del motor. Ası, se ha disenado un sensor de
revoluciones basado en un dispositivo de efecto Hall.
Sensor de efecto
Hall
Imanes
Rotor del motor
Figura 7.8: Montaje del motor del avion.
Como se puede ver en la figura 7.8, se ha acoplado al rotor del motor una pletina con dos imanes de
neodimio, al mismo tiempo que en la bancada se ha instalado un sensor de efecto Hall (concretamente
es el circuito integrado A1121 de Allegro MicroSystems). El dispositivo de efecto Hall funciona como
un interruptor controlador por el cambo magnetico detectado. Ası, si el flujo magnetico que lo atraviesa
sobrepasa un cierto umbral (lo cual ocurre cuando un iman se situa justo delante del sensor, como se
7.3. IMPLEMENTACION SOFTWARE 241
puede ver en la figura 7.8), la tension de salida del mismo es cero; mientras que esta tension es igual
a la de alimentacion si el flujo detectado no sobrepasa el umbral de conmutacion.
Durante la operacion del motor, esto se traducira en una secuencia de pulsos detectados cada vez
que uno de los dos imanes pase delante del sensor. Ası, midiendo el tiempo entre dos flancos de bajada
consecutivos de la senal de salida del sensor, se obtendra el semiperiodo de giro del motor, a partir
del cual resulta trivial conocer la frecuencia de giro. De este modo, se ha sintetizado en la FPGA un
contador de 32 bits con una frecuencia de incremento de 2 MHz18, el cual se reseteara cada vez que
se la FPGA detecte un flanco de bajada, registrando el valor resultante del contador en una posicion
especıfica de la memoria interna (junto con la marca de tiempo en el que fue registrado el dato).
7.3. Implementacion software
En esta seccion se va a proporcionar una descripcion del software implementado en computador
de vuelo desarrollado en esta tesis, abarcando desde el sistema operativo hasta las aplicaciones de
usuario.
A la hora de plantearse el desarrollo del software embarcado en el FC, es necesario tener presente
las funcionalidades que se requiere que tenga este sistema. Concretamente, el computador embarcado
en el avion debe encargarse de las siguientes tareas:
Control de actitud y guiado. Para permitir el vuelo autonomo, deben implementarse las leyes
de control y guiado de los capıtulos 3 y 4. Para ello, es necesario incorporar tareas periodicas (a la
frecuencia de trabajo del sistema de control de actitud y del sistema de guiado) en las que se realice
una medida de las variables de estado del avion, se obtengan las senales de control generadas por
las leyes de control y guiado, y se envıen estas consignas a los mandos de vuelo del avion. Esta tarea
es crıtica, ya que de ella depende la seguridad del vuelo, por lo que debera tener prioridad absoluta
en el computador de vuelo.
Sistema de navegacion. Para obtener medidas fiables de la posicion y de la actitud del avion
(las cuales son requeridas por las leyes de control y guiado), es necesario implementar el sistema
de navegacion que se describio en el capıtulo 6. Al igual que se menciono en el punto anterior, este
algoritmo debe ejecutarse de forma periodica, garantizando que no existen retardos significativos
que pongan en peligro la seguridad del vuelo debido a una medida imprecisa de estas variables de
estado.
Registro de datos en vuelo. A la hora de realizar ensayos en vuelo, resulta fundamental disponer
de un registro de todas las variables de estado del avion, de manera que pueda ser descargado en
tierra para el analisis exhaustivo del vuelo. Ası, todas variables de interes son enviadas continuamente
a un proceso que se encarga de registrarlas en el disco duro embarcado.
18Lo cual conseguir una resolucion de 0.5 µs en la medida del semiperiodo. A un regimen de vueltas tıpico de3000 rpm, esto se traduce en una resolucion de 0,075 rpm.
242 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
Envıo de telemetrıa. Ademas de registrar todos los datos de interes en un disco interno, es
necesario enviar periodicamente informacion a una estacion de tierra para poder monitorizar el
vuelo.
Gestion de la carga de pago. Aparte de todas estas funciones especıficas del sistema de control
de vuelo, resulta util usar la capacidad sobrante del procesador embarcado para gestionar otros
dispositivos externos.
Entrando en la seleccion del sistema operativo adecuado para el computador de vuelo de esta tesis, lo
primero que hay que tener en cuenta es que, como se ha mencionado antes, existen algunas tareas (como
las relacionadas con el sistema de control y guiado, y con el sistema de navegacion) que resultan crıticas
para la seguridad del vuelo, siendo fundamental garantizar que no existen retrasos en la ejecucion
de este tipo de funciones. Esta restriccion hace que no sea viable incorporar un sistema operativo
convencional, ya que no ofrecen garantıas acerca del cumplimiento de los tiempos de ejecucion de
tareas programadas.
Para tener garantıas de que las funciones crıticas para la seguridad del vuelo se realizan en el momento
adecuado y tienen prioridad absoluta sobre cualquier otro proceso del sistema, es necesario emplear
un sistema operativo en tiempo real (denominados RTOS, por sus siglas en ingles).
En el mercado existen numerosos RTOS, tanto comerciales como libres, que ofrecen garantıas de
tiempo real estricto. Entre los sistemas comerciales mas destacados pueden citarse VxWorks o QNX,
pudiendo encontrarse numerosos ejemplos de aplicacion de estos sistemas en UAVs [Jang 02, Ma 08,
Chan 10, Tang 11]. Se trata de sistemas operativos sobradamente probados, que ademas tienen detras
empresas que comercializan entornos de desarrollo que facilitan considerablemente el desarrollo del
software. No obstante, su coste es elevado y por tanto no son adecuados para los objetivos plantea-
dos.
Otras opciones libres para dotar al FC de un sistema operativo en tiempo real son RTAI [RTAI]
o Xenomai [Xeno]. Estas opciones no constituyen por sı mismas un sistema operativo completo (al
contrario de lo que ocurrıa con QNX o VxWorks), ya que en realidad son adaptaciones (conocidas
como parches) del kernel estandar de Linux para dotarlo de capacidades de tiempo real estricto.
Ası, ambas aproximaciones se basan en incluir un microkernel entre el hardware del sistema y el
kernel Linux estandar. Este microkernel permite tratar al kernel de Linux como una tarea mas del
sistema, dotandola de una prioridad inferior a cualquier aplicacion en tiempo real que se programe
en el sistema. Ademas, hay que decir que Xenomai y RTAI son bastante similares (en realidad ambos
nacieron del mismo proyecto), aunque RTAI evoluciono para buscar las mejores prestaciones de tiempo
real posibles, mientras que Xenomai se centro en la portabilidad del software. Se puede encontrar una
comparativa de las prestaciones de estos sistemas, junto con VxWorks en [Barb 08].
Por razones de coste y prestaciones, se escogio el kernel Linux 2.6.23, parcheado con RTAI 3.8.
Ademas, para gestionar los componentes especıficos del sistema de control de vuelo, es necesario incluir
modulos adicionales al kernel de este sistema operativo. De este modo, por un lado se ha incluido el
modulo del kernel facilitado por el fabricante de la placa base HERCULES II, el cual implementa el
driver para gestionar los conversores analogico-digitales del sistema (entre otras funciones).
7.3. IMPLEMENTACION SOFTWARE 243
Por otro lado, ha sido necesario generar un driver propio que permita a las aplicaciones de usuario
acceder a la memoria interna de la FPGA, ya que el mapa global de memoria no es fijo (depende de
la memoria interna instalada y del orden de los dispositivos conectados a la placa base), por lo que no
puede se puede acceder directamente a dicha memoria. Ası, a partir de la referencia [Corb 05], se ha
creado un modulo del kernel que permite gestionar este dispositivo PCI. Conociendo el identificador de
dispositivo sintetizado en el PCI Core de la FPGA, este driver permite identificar la zona de memoria
en la que se ubica la FPGA, reservandola para que no pueda ser accedida por ningun otro elemento del
sistema. Ademas, para permitir a las aplicaciones de usuario acceder a esta region de la memoria, se
registra un “character device” (en este caso /dev/cefiro), al mismo tiempo que se realiza un “mapeo”
de la memoria de la FPGA en este fichero.
Como resultado de este proceso, para que una aplicacion pueda acceder a la FPGA, solo debe abrir el
fichero /dev/cefiro, al cual se asocia una region de memoria del mismo tamano que la de la FPGA y su
direccion base es conocida. Cualquier acceso a una posicion de la memoria de este fichero es traducido
por el kernel a un acceso a la posicion equivalente de memoria en la FPGA, permitiendo ası a las
aplicaciones de usuario un mecanismo para leer y escribir en la memoria interna de la misma.
Completado el kernel del sistema operativo instalado en el FC, se pueden desarrollar las aplicaciones
de usuario que implementen las funciones que debe realizar el computador de vuelo. Por restricciones
de espacio en este documento, no se va a detallar el codigo con la implementacion en el lenguaje de
programacion usado (en este caso ANSI C) de las distintas funciones necesarias para hacer operativo el
sistema de control de vuelo. En lugar de esto, se va a realizar una descripcion funcional de la estructura
del software desarrollado, cuya vision general se muestra en la figura 7.9.
HERCULES II FPGA
Linux - RTAI
Céfiro Driver
DSCUD
ADC Sensores/Actuadores
EspacioKernel
EspacioHardware
EspacioUsuario
Tiempo Real
- Sensores- Sist Navegación- Control y Guiado- Actuadores
Mailboxes
Telemetría
Buffers FIFO FlightData
Recorder
RTA
I -
LX
RT
Figura 7.9: Estructura del software embarcado.
A continuacion se describe someramente el “espacio de usuario” del software desarrollado. Como
se puede apreciar, las aplicaciones de usuario se han dividido en tres modulos basicos, los cuales se
interconectan mediante“buzones de datos”que permiten la comunicacion entre los procesos que tienen
244 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
lugar en dichos bloques.
Entrando en la descripcion de estos tres bloques, de forma destacada se tiene el modulo de tiempo
real, en el cual se implementan las funciones de control y guiado, ası como el sistema de navegacion.
De forma periodica, este proceso realiza una lectura de todos los sensores del avion, en base a los
cuales se calculan las consignas que deben enviarse a los mandos de vuelo del avion para llevar a cabo
la mision requerida.
Como se puede intuir, es crucial que esta tarea se ejecute con un tiempo de muestreo totalmente
estable, ya que un retraso excesivo podrıa dar lugar a la perdida del avion. De este modo, este bloque
se ha implementado como una tarea de tiempo real estricto, haciendo uso de la API LXRT que pro-
porciona RTAI.19. Por otra parte, este proceso es el responsable de acceder a los sensores y actuadores
del avion, por lo que toma el control del fichero /dev/cefiro, de manera que ningun otro proceso
puede acceder a el (es decir, solo este proceso puede acceder al mapa de memoria de la FPGA para
leer los sensores o controlar los actuadores).
Para que las variables de estado del avion puedan ser usadas para otros fines ajenos a las labores de
control y guiado, se han habilitado distintos “mailboxes” que permiten la comunicacion entre distintos
procesos del sistema. Estos elementos son esencialmente buffers FIFO (First In First Out) con un
tamano de determinado, de manera que por un lado se tiene un emisor que va escribiendo datos en
el (en este caso el proceso de tiempo real), y por otro existe uno o varios procesos receptores de
informacion, que pueden acceder a los “mailboxes” para obtener el dato mas antiguo presente en el
buffer (el primero que entro). Esto permite una comunicacion asıncrona entre los distintos procesos
del sistema, que es usada para establecer una clara separacion entre el modulo de tiempo real y el
resto de procesos del sistema.
Gracias a estos “mailboxes” se ha implementado un proceso para realizar las funciones de “Flight
Data Recorder” (FDR), de manera que permite registrar en el disco duro todas las variables de estado
de interes, pudiendo ser descargadas en tierra para realizar un analisis del vuelo. Teniendo en cuenta
que este proceso no puede acceder directamente a los sensores del avion, se tienen distintos mailboxes
dedicados en los que la aplicacion de tiempo real escribe toda la informacion que tenga disponible. En
el otro extremo, el FDR se encarga de almacenar en disco todos los datos existentes en los buzones,
quedando suspendido cuando se complete esta tarea a la espera de que se registren datos nuevos.
Por otra parte, hay que senalar que resulta fundamental separar el control del avion y el FDR en dos
tareas distintas. Esto permite asignar una prioridad mayor a las tareas de control y guiado, de manera
que la CPU unicamente se dedicara a registrar datos en la unidad de almacenamiento (en este caso
es una memoria flash) cuando no necesite ser usada para otra tarea mas urgente. Hay que tener en
cuenta que el almacenamiento de datos en disco es un proceso relativamente lento que puede generar
retardos (tengase en cuenta que la velocidad de escritura en el disco es sensiblemente menor que en
19LXRT es una API (Aplication Programming Interface) de RTAI que permite desarrollar aplicaciones detiempo real estricto en entorno de usuario, en lugar de hacerlo programando directamente en espacio kernel. Laventaja de usar LXRT es que las aplicaciones gozan de la proteccion de memoria que ofrece el kernel de Linux,al mismo tiempo que se tienen las herramientas estandares para el desarrollo de software. Por contra, hay quedecir que LXRT ofrece peores prestaciones desde el punto de vista del tiempo de respuesta, comparado conun modulo de tiempo real desarrollado en espacio kernel. Como se vera mas adelante, la respuesta del sistemausando LXRT es aceptable, lo que justifica la eleccion de este entorno de programacion.
7.3. IMPLEMENTACION SOFTWARE 245
la RAM del sistema). Esto se ve agravado con el paso del tiempo, ya el tamano de los archivos en los
que se almacenan los datos va creciendo notablemente, de manera que el sistema operativo tendra que
realizar labores de gestion del disco que consumen un tiempo apreciable de la CPU. Si no se realizara
la separacion entre el proceso asociado al FDR y el proceso de tiempo real, las tareas asociadas a la
gestion del disco podrıan bloquear la CPU, impidiendo calcular a tiempo las consignas de los mandos
de vuelo, lo cual pondrıa en peligro la seguridad del vuelo.
Finalmente, en un tercer bloque se implementan las funciones de telemetrıa. Debido al reducido ancho
de banda del radio-modem empleado, unicamente es posible enviar un reducido numero de variables
de estado, a una frecuencia de 1 Hz. Concretamente, la aplicacion desarrollada permite enviar al PC
de tierra la posicion GPS (latitud, longitud y altitud), la velocidad aerodinamica, los angulos de Euler,
el regimen de revoluciones del motor y la potencia consumida por este. Estos son los datos principales
que permiten monitorizar el vuelo, ası como detectar si existe alguna anomalıa que ponga en peligro
la mision para ordenar la vuelta a la base.
Al igual que ocurre con el FDR, el proceso de envıo de datos por telemetrıa no tiene acceso directo a
las lecturas de los sensores, por lo que se implementa de nuevo un buzon que permite la comunicacion
entre la tarea de tiempo real y el proceso de envıo de datos por telemetrıa. Como particularidad, hay
que decir que este buzon se ha disenado con una capacidad que unicamente le permite almacenar un
unico paquete de datos de telemetrıa. Ası, el proceso de tiempo real esta constantemente realizando
envıos al buzon (sobrescribiendo cualquier dato existente), lo que permite que cuando el proceso de
telemetrıa acceda a el, siempre este disponible la ultima medida capturada.
7.3.1. Ensayos de respuesta en tiempo real
En esta seccion, se van a exponer algunos resultados obtenidos tras realizar pruebas de funciona-
miento del sistema, sobre todo en lo referente a tiempos de respuesta para tener garantıas que el
proceso de tiempo real no sufre retardos relevantes.
Ası, se ha puesto en funcionamiento el computador de vuelo durante un tiempo de 20 minutos,
haciendo un muestreo intensivo de las variables de estado del avion. De este modo, se asigno un
periodo de 3 ms a la tarea de tiempo real20, de manera que en cada instante de muestreo se hace una
lectura de todos los sensores analogicos y se comprueba si existe un dato nuevo en cualquiera de los
sensores digitales que gestiona la FPGA.
Todos los datos que recoge el proceso de tiempo real son enviados mediante los buzones descritos
anteriormente a un registrador de datos, que permite almacenar en disco todas las medidas recogidas.
Al mismo tiempo, se tiene otro buzon que permite enviar las variables de estado de interes al proceso
que gestiona el envıo de datos por telemetrıa.
Para analizar la respuesta temporal del sistema, en la figura 7.10 se puede ver cual fue el intervalo
de tiempo entre dos ejecuciones consecutivas del proceso de tiempo real. Como se puede apreciar, los
20Tengase en cuenta que se trata de una frecuencia de muestreo (333.33 Hz) considerablemente mas elevadaa la que se usarıa durante la operacion normal del sistema de control de vuelo, la cual serıa de 50 Hz.
246 CAPITULO 7. DESARROLLO DEL COMPUTADOR DE VUELO
0 0.5 1 1.5 2 2.5 3 3.5
x 105
0
1
2
3
4
5
6
Muestreo
Tie
mpo
de
mue
stre
o [m
s]
Figura 7.10: Tiempo medido entre dos ejecuciones consecutivas del proceso de tiempo real.
2.6 2.8 3 3.2 3.4 3.6 3.80
5
10
15
20
25
30
35
Por
cent
aje
de m
uest
ras
Tiempo de muestreo [ms]
Figura 7.11: Histograma de los tiempos medidos entre dos ejecuciones consecutivas del procesode tiempo real.
7.3. IMPLEMENTACION SOFTWARE 247
tiempos de ejecucion se disponen en una estrecha banda en torno al tiempo de muestreo establecido
(3 ms), estando la gran mayorıa en una banda de ±130µs.
Esto puede verse con mas claridad en la figura 7.11, donde se expone el histograma de los tiempos de
muestreo obtenidos. Como se puede apreciar, un 46.68% de las ejecuciones se realizaron con tiempos de
muestreo comprendidos entre 2.99 y 3.01 ms, mientras que un 96.96% de las ejecuciones tuvieron lugar
con tiempos de muestreo comprendidos entre 2.85 y 3.15 ms. Finalmente, es tambien de destacar que
en ningun caso se produjo un desfase una variacion en el tiempo de muestreo superior a 300 µs.
Estos resultados permiten tener garantıas de que el computador se comportara adecuadamente
durante la operacion en vuelo, ejecutando las tareas crıticas de tiempo real sin retrasos significati-
vos.
Pagina en blanco
248
Capıtulo 8
Conclusiones y trabajos futuros
El objetivo fundamental de esta tesis era avanzar en el desarrollo de sistemas de control y guiado para
aviones no tripulados. En este sentido, se ha considerado un enfoque integral del problema, investigando
tanto en algoritmos y leyes de control, como en la definicion general de la arquitectura del avion
y su implementacion fısica. Teniendo en cuenta que se ha avanzado en campos bien diferenciados,
a continuacion se van analizar separadamente las conclusiones extraıdas y los trabajos futuros que
podrıan derivarse de cada uno de los temas tratados en testa tesis. Se finalizara este capıtulo con
algunas conclusiones globales de esta disertacion, indicando al mismo tiempo las lıneas de trabajo
generales que podrıan llevarse a cabo.
Sistemas de Control de Actitud
Se han conseguido avances en tecnicas de control adaptativo no lineales aplicadas a aviones no
tripulados (las cuales han sido publicadas en congresos internacionales de primer nivel). Ası, se ha
hecho uso del conocimiento de la fısica del avion para disenar leyes longitudinales con la mınima
informacion sobre el modelo aerodinamico del mismo, obteniendo controladores adaptativos generales,
validos para estabilizar el avion en todo su rango operativo. Esta estructura adaptativa hace que
dichos sistemas de control sean facilmente portables a otras aeronaves similares, sin mas que sintonizar
ligeramente algunas ganancias, ya que las diferencias en el modelo aerodinamicos son compensadas
por los mecanismos de adaptacion (se consiguen ası leyes de control “plug & play”). En este sentido,
se han realizado pruebas ensayando estas leyes de control en otros aviones similares (cuyos modelos
estaban disponibles en el Area de Ingenierıa Aeroespacial), consiguiendo buenos resultados incluso con
las mismas ganancias que se han empleado en esta disertacion.
Por otra parte, se ha dividido la dinamica longitudinal del avion en el problema de control de veloci-
dad y en el problema de control de angulo de trayectoria, realizando el diseno de ambos controladores
separadamente. Ademas, se han usado tecnicas clasicas de control para disponer de un controlador
lateral-direccional que permita cerrar el control de actitud del avion. Se ha observado como esta sepa-
racion ha resultado satisfactoria, obteniendose buenos resultados en simulaciones realizadas con todos
los controladores operando conjuntamente.
249
250 CAPITULO 8. CONCLUSIONES Y TRABAJOS FUTUROS
Al hilo de esta separacion de controladores, resultarıa interesante abrir una lınea de trabajo futuro
que aborde el problema del estudio de la estabilidad de la aeronave con los controladores anteriores
operando de forma acoplada. Ası, se podrıan emplear tecnicas de separacion de escalas de tiempo para
proporcionar algunas garantıas matematicas (aparte de la evidencia practica) del funcionamiento de
los controladores operando de forma acoplada.
Otra conclusion que puede extraerse de este capıtulo es la necesidad de incluir los efectos de las
saturaciones en el controlador de velocidad aerodinamica. Como se ha comprobado, la dinamica de
la velocidad es relativamente lenta, debido a la inercia de la aeronave y al limitado nivel de empuje.
Esto hace que cuando se demandan cambios bruscos en la velocidad de referencia se incurren en
saturaciones del mando de motor que pueden provocar oscilaciones importantes en la respuesta si no
se toman medidas. En este sentido, en esta disertacion se han propuesto mecanismos para que las leyes
de adaptacion consideren estos efectos, consiguiendo un excelente seguimiento de consigna.
Se ha podido comprobar tambien la eficacia de los command filters en el control de velocidad. Estos
elementos permiten incluir facilmente limitaciones en la magnitud de la senal de control, ası como en
su tasa de cambio, mostrando buenos resultados en simulacion. No obstante, el precio a pagar por
estas ventajas es la ausencia de demostracion formal de estabilidad.
En este sentido, otra tarea que podrıa abordarse como continuacion de este trabajo es la incorporacion
de las saturaciones en el sistema de control de angulo de trayectoria. Debido a su peculiar formulacion,
en la que algunos efectos aerodinamicos se modelan a traves de una funcion desconocida (en lugar
de usar el clasico modelo de incertidumbre parametrica), no resulta trivial aplicar las tecnicas para
incorporar las saturaciones que se emplearon con el controlador de velocidad. Ası, aunque se ha
comprobado que el sistema disenado presenta una respuesta satisfactoria en presencia de saturaciones,
serıa interesante explorar nuevos mecanismos para dar garantıas matematicas de la estabilidad del
controlador de angulo de trayectoria en presencia de dichas limitaciones.
Siguiendo con las lıneas de trabajo futuro, serıa interesante tratar de eliminar algunas de las hipotesis
realizadas en la formulacion de las leyes de control, para lo que se necesitarıa desarrollar tecnicas que
permitan alcanzar los objetivos propuestos sin necesidad de realizar algunas de las simplificaciones
mostradas en esta tesis. Otro aspecto que se podrıa abordar es el estudio de las prestaciones de
las leyes de control en caso de producirse fallos que impliquen cambios sustanciales en el modelo
aerodinamico del avion. De este modo, se podrıa usar el caracter adaptativo de las leyes propuestas
para generar un sistema fault tolerant con capacidad para adaptarse a cambios bruscos en el modelo
del avion.
Sistemas de Guiado
En este campo se puede identificar uno de los grandes avances de esta tesis. Ası, se ha desarrollado
un nuevo sistema de guiado basado en una estructura multicapa, la cual combina una ley de guiado
clasica de bajo nivel (robusta y facil de implementar), que asegura la disponibilidad de soluciones
factibles al problema, a la vez que sirve como solucion inicial para la estrategia de guiado avanzada
situada en un nivel superior, la cual se basa en tecnicas de control predictivo. Esta estrategia de
nivel superior incorpora un mecanismo de optimizacion no lineal, que permite encontrar soluciones
251
de guiado que aumentan la eficiencia de la mision, a la vez que satisfacen las restricciones impuestas.
Se ha comprobado que esta combinacion de tecnicas resulta de gran utilidad, ya que por un lado se
incrementa la seguridad del vuelo (al garantizarse la presencia de soluciones de guiado factibles en
cada instante), a la vez que se aceleran considerablemente los procesos de optimizacion, ya que la
solucion inicial proporcionada por el sistema de bajo nivel es una buena primera aproximacion para
encontrar una solucion optimizada del problema (se facilita ası la implementacion de este algoritmo en
tiempo real). Se ha comprobado como esta solucion basada en metodos de control predictivo mejora
notablemente a las leyes de guiado clasicas.
Ademas, se ha constatado la utilidad de incluir un mecanismo de estimacion en lınea de perturbacio-
nes. Ası, en las simulaciones realizadas se ha visto que este elemento mejora notablemente la solucion
de la ley de guiado basada en control predictivo en entornos con viento, o en presencia de otras pertur-
baciones no modeladas (como por ejemplo el ruido introducido por el sistema de navegacion).
Otra conclusion interesante que puede extraerse es que los algoritmos desarrollados son aplicables a
otros problemas mas alla del control de vuelo de aeronaves. De esta forma, se ha mostrado como estos
metodos pueden ser empleados para resolver problemas de guiado de vehıculos espaciales, considerando
en particular la maniobra de “rendezvous”, en la que se controla la aproximacion de un vehıculo
perseguidor para acoplarse a un vehıculo objetivo, en presencia de restricciones asociadas a la seguridad
de la maniobra, y empleando actuadores PWM.
Entrando en las lıneas de trabajo futuras, hay que tener en cuenta que el uso de los metodos de control
predictivo abre un notable abanico de posibilidades para mejorar este sistema de guiado con nuevas
funcionalidades. Por ejemplo, se podrıa estudiar la posibilidad de incluir restricciones adicionales al
problema, las cuales podrıan tener en cuenta aspectos como la presencia de zonas de exclusion (en las
que no se permite volar), o la existencia de puntos con tiempo de paso obligado. Al mismo tiempo,
tambien se podrıa estudiar el uso de los metodos de optimizacion asociados al control predictivo para
realizar el calculo de la trayectoria de referencia de la mision en el propio computador embarcado,
en lugar de hacerlo en tierra, en un generador de trayectorias externo. Otro aspecto de interes serıa
incorporar en la estrategia de control predictivo la capacidad de coordinacion con otras aeronaves,
componiendo un sistema de control distribuido. Esto permitirıa abordar problemas de gran interes en
la actualidad, como son el vuelo en formacion, o la resolucion de conflictos para evitar colisiones entre
aviones en espacios aereos con gran densidad de trafico.
Finalmente, aunque se han obtenido buenos resultados en simulacion, serıa deseable realizar un
estudio que permitiera demostrar la estabilidad del sistema de guiado propuesto. Para ello, siguien-
do algunas aproximaciones propuestas en la literatura, se podrıa comenzar considerando situaciones
simplificadas, como el seguimiento de una recta, o un patron de vuelo circular; dejando para eta-
pas futuras esta demostracion en un caso mas general, con trayectorias arbitrarias y en presencia de
restricciones.
252 CAPITULO 8. CONCLUSIONES Y TRABAJOS FUTUROS
Sistemas de Datos Aerodinamicos
Durante el desarrollo de los sistemas de control de actitud, se ha constatado que es imperativo disponer
de medidas precisas de la velocidad aerodinamica, del angulo de ataque y del angulo de resbalamiento
del avion, ya que estas magnitudes condicionan notablemente las fuerzas y momentos aerodinamicos
que actuan sobre la aeronave. Teniendo en cuenta la ausencia en el mercado de sistemas con una
relacion precision-coste adecuada, se ha optado por desarrollar un sistema de anemometrıa adaptado
a las necesidades del avion con el que se esta trabajando. Ası, se ha comprobado por medio de ensayos
en tunel de viento, que con un adecuado estudio de configuracion se puede conseguir un sistema con
un buen nivel de precision, a un coste razonable.
Queda como trabajo futuro la realizacion de una campana mas exhaustiva de experimentacion en
el tunel aerodinamico. Ası, serıa necesario realizar un montaje que permitiera ensayar la lanza de
anemometrıa instalada en un modelo del morro del avion, con el fin de cuantificar los errores intro-
ducidos por la interferencia aerodinamica, midiendo ademas sus variaciones con los angulos de ataque
y resbalamiento. Estos ensayos permitirıan obtener un mapa de calibracion, que puede ser usado en
vuelo para corregir por software las medidas obtenidas en tiempo real, lo cual se traducirıa en una
mayor precision del sistema.
Hay que tener en cuenta que una vez obtenida la calibracion correcta del sistema de datos aerodina-
micos instalado en el avion, se puede utilizar esta lanza de anemometrıa como sistema de referencia
para realizar calibraciones en vuelo de otras unidades que se instalen en la aeronave. Esto abrirıa la
puerta a emplear sistemas de datos aerodinamicos de dimensiones mucho mas reducidas, que tienen
un peso y un coste sensiblemente menor. Ası, si se tiene en cuenta que el problema de estos sistemas
reducidos es el error que cometen debido a que se ven influenciados por la interferencia aerodinami-
ca del avion, se podrıan realizar vuelos de calibracion operando de forma conjunta con la lanza de
anemometrıa disenada en esta tesis, cuantificando el error introducido en funcion de las condiciones de
vuelo. Esto permitirıa obtener una curva de calibracion que harıa que el sistema de bajo coste tuviera
una precision aceptable operando de forma independiente.
Sistemas de Navegacion
En esta tesis se ha proporcionado una nueva version del Filtro Multiplicativo Extendido de Kalman
para obtener estimaciones de la posicion y actitud mediante la integracion de las medidas de los
sensores inerciales y del GPS. La utilizacion de los cuaterniones para describir la actitud, ası como el
uso de tecnicas matematicas asociadas a ellos, ha permitido desarrollar una version discreta de este
filtro que no requiere realizar ni integraciones ni renormalizaciones. Esto facilita la implementacion
del algoritmo en el computador de vuelo, a la vez que se obtiene una mejora de la precision.
A partir del desarrollo realizado, serıa necesario realizar experimentos en los que se pueda comprobar
la precision del sistema en la practica. Ademas, estos experimentos permitirıan estimar las propiedades
de los errores de los sensores, con las que se podrıa realizar un reajuste fino de las matrices de
sintonizacion del filtro desarrollado. Por otra parte, para mejorar la precision del filtro, resultarıa de
interes disponer de otras medidas complementarias al magnetometro que proporcionen una direccion
253
espacial conocida, ayudando ası a estabilizar estimacion de la actitud. En este sentido, se podrıan
explorar tecnicas que identifiquen los tramos de vuelo rectilıneo uniforme de la aeronave, durante los
cuales se podrıa emplear la medida indirecta de la gravedad que proporcionan los acelerometros para
estimar la direccion de la vertical local.
Computador de Vuelo
En esta tesis se ha abordado el diseno de un computador adecuado a las necesidades de la aeronave
con la que se esta trabajando (se han tenido en cuenta restricciones relacionadas con el peso, el volumen,
el coste y la capacidad de calculo). Se ha realizado un diseno modular, de manera que el computador
de vuelo se sustenta en dos bloques principales. Ası, se tiene la una placa base procesadora, sobre
la que se ha construido un modulo que integra el hardware de gestion de los sensores y actuadores
especıficos en este tipo de aviones no tripulados. Ambos bloques estan unidos mediante el bus PCI-104
(perteneciente al estandar PC-104+), el cual puede encontrarse en multitud de equipos electronicos
destinados a sistemas embebidos. Ademas, el hecho de usar un bus estandar aumenta la versatilidad del
sistema, ya que abre la posibilidad de incluir nuevos elementos hardware (comerciales o desarrollados
a medida), sin mas que conectarlos al bus compartido.
El uso de una FPGA en el modulo de gestion de sensores y actuadores permite liberar al procesador
principal de la aeronave de las tareas asociadas a las comunicaciones con estos elementos. Notese que
los sensores envıan la informacion al computador de vuelo de forma asıncrona, por lo que es necesario
muestrear constantemente las lıneas de entrada para atender una posible llegada de paquetes de
datos. El hardware sintetizado en la FPGA permite atender a todos los sensores simultaneamente,
almacenando los datos de entrada para ponerlos a disposicion del procesador principal cuando este los
requiera.
Se ha constatado que esta aproximacion presenta notables ventajas. Ası, se obtiene un aumento
del tiempo de calculo disponible para tareas especıficas del control de vuelo, como son los algoritmos
de control de actitud, guiado o navegacion; ya que el procesador no se encarga de la gestion de los
sensores y actuadores. Ademas, se eliminan los tiempos de espera asociados a la lectura de los mismos,
ya que cuando el procesador necesita una nueva medida, unicamente debe realizar una operacion
de lectura de una posicion de memoria (lo cual se realiza en un tiempo muy reducido), en lugar
de esperar a que llegue un nuevo dato por uno de los puertos de entrada. Notese que esto supone
tambien un aumento de la robustez de las comunicaciones, ya que ahora no existe el peligro de que
se produzca un desbordamiento de algun buffer de entrada de datos por quedar desatendido, ya que
la FPGA monitoriza continuamente (y en paralelo) todas estas lıneas. Tambien hay que destacar que
ha conseguido una gran integracion del hardware de gestion de sensores y actuadores, disminuyendo
peso, volumen y consumo. Ası, ahora no es necesario incluir elementos hardware adicionales para leer o
generar senales PWM (asociadas a los mandos de vuelo avion), o para interpretar los pulsos generados
por el lector de revoluciones, ya que estas funcionalidades han sido sintetizadas especıficamente dentro
de la FPGA.
Entrando en las lıneas de trabajos futuras que se podrıan abrir para mejorar las prestaciones de este
computador de vuelo, se podrıa estudiar el uso de la FPGA realizar tareas de control de actitud o
254 CAPITULO 8. CONCLUSIONES Y TRABAJOS FUTUROS
para implementar el algoritmo del sistema de navegacion. Para ello, se puede explorar la posibilidad
de sintetizar en la propia FPGA microcontroladores especıficos para realizar estas labores, lo cual
redundarıa en un aumento global de la robustez del sistema, al mismo tiempo que se obtiene un
aumento de la capacidad de calculo, ya que se liberarıa una considerable carga computacional del
procesador principal, que puede ser usada para aumentar las capacidades del sistema de guiado.
Conclusiones globales
Analizando ahora el trabajo realizado en esta tesis desde un punto de vista global, hay que resaltar
que se ha abordado el diseno de un sistema de control de vuelo de forma integral, esto es, en base a
una arquitectura general, se ha considerado tanto el desarrollo de las leyes de control y guiado como
de los sistemas auxiliares que proporcionan las medidas de los estados que necesitan estos bucles de
control. Esto ha permitido mejorar la integracion de dichos sistemas, a la vez que se ha llegado a una
solucion global con un coste reducido.
Ademas, se ha constatado que resulta adecuado emplear una arquitectura multicapa en la que se
separan los problemas de guiado y de control de actitud. Esta separacion permite abordar ambos
problemas con tecnicas distintas, adaptadas a la problematica especıfica de cada uno de ellos, lo cual
redunda en un aumento de las prestaciones de las soluciones adoptadas, lo que se traduce en una
mejora global del sistema de control de vuelo.
Al finalizar esta tesis, se disponen de todos los elementos hardware necesarios, ası como de las leyes
de control y guiado, junto con el sistema de navegacion; los cuales abren la puerta al desarrollo de una
de las principales lıneas de trabajo futuro, como es la experimentacion en vuelo. En primer lugar, serıa
necesario realizar una campana de ensayos para la validacion de los modelos de avion considerados.
Ası, habrıa que realizar distintos vuelos de prueba en modo manual (esto es, con un piloto en tierra
controlando el avion), monitorizando todas las variables de estado del avion, ası como las acciones
de control realizadas por el piloto (esto permitirıa utilizar tecnicas de identificacion para validar los
modelos desarrollados en el capıtulo 2). Una vez validado el modelo, el siguiente paso en la campana
de ensayos serıa realizar distintos vuelos para testear el sistema de control de actitud. Ası, en lugar
de usar el sistema de guiado descrito en esta tesis, se podrıan enviar desde tierra las consignas en
velocidad, angulo de trayectoria y angulo de balance, con el fin de evaluar las prestaciones del sistema
de control de actitud aislado. En un tercer nivel, se podrıan comenzar las pruebas con el sistema de
control y guiado operando de forma integrada. Serıa necesario realizar distintas misiones de prueba
(con un piloto de seguridad en tierra) que permitieran evaluar las prestaciones globales del sistema en
una situacion real.
Ademas de esta campana de ensayos en vuelo, serıa de gran utilidad disponer de la capacidad de
realizar simulaciones hadware in the loop. Ası, con el fin de simular el comportamiento de todo el
sistema de control de vuelo (tanto desde un punto de vista hardware como software), serıa necesario
emplear un simulador de vuelo con capacidad para generar las senales que los sensores envıan al
computador embarcado durante un vuelo real, al mismo tiempo que permita interpretar las senales
PWM que controlan los mandos de vuelo. De esta forma, el simulador reproducirıa el movimiento del
avion, enviando las correspondientes medidas de las variables de estado al computador de vuelo, en el
255
cual se implementan las leyes de control y guiado. Esto permitirıa ensayar nuevas leyes de control y
guiado en unas condiciones muy realistas, antes de comenzar con la campana de ensayos en vuelo, lo
cual disminuye el riesgo de fallo (y por tanto de perdida del avion).
Finalmente, para concluir esta disertacion, hay que resaltar que a pesar de que existen multitud de
grupos dedicados a la investigacion sobre aviones no tripulados, se ha comprobado que se trata de un
campo todavıa abierto. Ası, se han podido realizar avances respecto al estado del arte en los distintos
temas tratados en esta tesis. Ademas, se ha constatado que el desarrollo de sistemas de control de vuelo
requiere un perfil investigador multidisciplinar, ya que aparecen involucrados aspectos tanto teoricos
(como el desarrollo de nuevas leyes de control a partir de modelos matematicos), como practicos (que
involucran la implementacion hardware y software de los sistemas disenados, ası como la realizacion
de ensayos en vuelo y en tunel aerodinamico). En este sentido, el autor de esta disertacion se ha
beneficiado enormemente de la colaboracion con investigadores de distinto perfil para llevar a cabo
esta tesis de caracter multidisciplinar.
Pagina en blanco
256
Bibliografıa
[3DM 10] 3DM-GX1 - Data Communications Protocol. Version 3.1.02. Microstrain, Inc, 2010.
[Abot 59] I. H. Abot and A. E. Von Doenhoff. Theory of wings and sections. Dover, 1959.
[Adam 94] R. J. Adams, J. M. Buffington, and S. S. Banda. “Design of nonlinear control laws for
high-angle-of-attack flight”. Journal of Guidance, Control, and Dynamics, Vol. 17, No. 4,
pp. 737–746, 1994.
[Adle 56] F. Adler. “Missile guidance by three-dimensional proportional navigation”. Journal of
Applied Physics, Vol. 27, No. 5, pp. 500–507, 1956.
[Alex 05] F. Alexander, A. Boris, S. Alexander, T. Antonios, and W. B. A. “Combined adaptive
controller for UAV guidance”. European Journal of Control, Vol. 11, No. 1, pp. 71–81,
2005.
[Ande 79] B. D. O. Anderson and J. B. Moore. Optimal Filtering. Prentice-Hall, Englewood Cliffs,
New Jersey, 1979.
[Ande 90] B. D. O. Anderson and J. B. Moore. Optimal Control. Linear Quadratic Methods. Prentice
Hall, 1990.
[Andr 10] Andres Fernandez Luecena. “Diseno, fabricacion, integracion y pruebas de uns sistema de
anemometrıa para UAVs.”. Proyecto Fin de Carrera. ETSI, Universidad de Sevilla, 2010.
Tutor: Francisco Gavilan Jimenez.
[Ardu] “Ardupilot Website”. http://www.ardupilot.co.uk/.
[Asso 08] N. M. E. Association. “NMEA 0183 Version 4.00”. Disponible en http://www.nmea.org/,
November 2008.
[B Et 96] B. Etkin and L. D. Reid. Dynamics of Flight. Stability and Control. John Wiley and Sons,
Inc, Third Ed., 1996.
[Bail 78] J. E. Bailey. “Mini-RPV Engine-Propeller Wind Tunnel Tests”. In: Proceedings of theNa-
tional Free Flight Society Annual Symposium. 1978.
[Barb 08] A. Barbalace, A. Luchetta, G. Manduchi, M. Moro, A. Soppelsa, and C. Taliercio. “Per-
formance comparison of VxWorks, Linux, RTAI, and Xenomai in a hard real-time appli-
cation”. IEEE Transactions on Nuclear Science, Vol. 55, No. 1, pp. 435–439, 2008.
257
258 BIBLIOGRAFIA
[Bear 05] R. Beard, D. Kingston, M. Quigley, D. Snyder, R. Christiansen, W. Johnson, T. McLain,
and M. Goodrich. “Autonomous vehicle technologies for small fixed-wing UAVs”. Journal
of Aerospace Computing, Information and Communication, pp. 92–108, 2005.
[Beki 07] E. Bekir. Introduction to modern navigation systems. World Scientific, 2007.
[Bela 07] J. Belanger, A. Desbiens, and E. Gagnon. “UAV Guidance with Control of Arrival Time”.
In: Proceedings of the 2007 American Control Conference. 2007.
[Bern 98] F. Bernelli-Zazzera, P. Mantegazza, and V. Nurzia. “Multi-pulse-width modulated control
of linear systems”. Journal of Guidance, Control, and Dynamics, Vol. 21, No. 1, pp. 64–70,
1998.
[Biez 99] D. J. Biezad. Integrated navigation and guidance systems. AIAA, 1999.
[Bijk 08] J. Bijker and W. Steyn. “Kalman Filter Configurations for a Low-Cost Loosely Integrated
Inertial Navigation System on an Airship”. Control Engineering Practice, Vol. 16, No. 12,
pp. 1509–1518, 2008.
[BL S 03] B.L. Stevens and F.L. Lewis. Aircraft Control and Simulation. John Wiley and Sons, Inc,
Second Ed., 2003.
[Blak 85] W. B. Blake. “Prediction of Fighter Aircraft Dynamic Derivatives Using Digital Datcom”.
In: Proceedings of the AlAA 3rd Applied Aerodynamics Conference. 1985.
[Blak 91] J. H. Blakelock. Automatic control of aircraft and missiles. John Wiley & Sons, Second
Ed., 1991.
[Bonn 08] S. Bonnabel, P. Martin, and P. Rouchon. “Symmetry-Preserving Observers”. IEEE Tran-
sactions on Automatic Control, Vol. 53, No. 11, pp. 2514–2526, 2008.
[Bonn 09] S. Bonnabel, P. Martin, , and P. Rouchon. “Non-Linear Symmetry-Preserving Observers
on Lie Groups”. IEEE Transactions on Automatic Control, Vol. 54, No. 7, pp. 1709–1713,
2009.
[Bosc 10] P. J. Boschetti, E. M. Cardenas, and A. Amerio. “Stability of an Unmanned Airplane
using a Low-Order Panel Method”. In: Proceedings of the AIAA Guidance, Navigation,
and Control Conference. 2010.
[Boyl 99] D. Boyle and G. Chamitoff. “Autonomous maneuver tracking for self-piloted vehicles”.
Journal of Guidance, Control, and Dynamics, Vol. 22, No. 1, pp. 58–67, 1999.
[Breg 08] L. Breger and J. P. How. “Safe trajectories for autonomous rendezvous of spacecraft”.
Journal of Guidance, Control and Dynamics, Vol. 31, No. 5, pp. 1478–1489, 2008.
[Cama 04] E. Camacho and C. Bordons. Model Predictive Control. Springer-Verlag, 2004.
[Cama 94] E. Camacho, M. Berenguel, and C. Bordons. “Adaptive Generalized Predictive Control of
a Distributed Collector Field”. IEEE Transactions on Control Systems Technology, Vol. 2,
pp. 462–468, 1994.
BIBLIOGRAFIA 259
[Cao 11] L. Cao, S. Zhang, X. Li, Y. Liu, and Y. Liu. “Nonlinear adaptive block backstepping con-
trol using command filter and neural networks approximation”. Information Technology
Journal, Vol. 10, No. 12, pp. 2284–2291, 2011.
[Cart 98] T. E. Carter. “State Transition Matrices for Terminal Rendezvous Studies: Brief Survey
and New Example”. Journal of Guidance, Control and Dynamics, Vol. 21, No. 1, pp. 148–
155, 1998.
[Chan 10] V. Chandhrasekaran and E. Choi. “Fault tolerance system for UAV using hardware in
the loop simulation”. In: NISS2010 - 4th International Conference on New Trends in
Information Science and Service Science. pp. 293–300, 2010.
[Chao 07] H. Chao, Y. Cao, and Y. Chen. “Autopilots for small fixed-wing unmanned air vehicles:
A survey”. In: Proceedings of the 2007 IEEE International Conference on Mechatronics
and Automation, ICMA 2007. pp. 3144–3149, 2007.
[Chri 04] H. Christophersen, W. Pickell, A. Koller, S. Kannan, and E. Johnson. “Small adaptive
flight control systems for UAVs using FPGA/DSP technology”. In: Collection of Technical
Papers - AIAA 3rd Unmanned-Unlimited Technical Conference, Workshop, and Exhibit.
pp. 780–787, 2004.
[Chri 06] H. Christophersen, R. Pickell, J. Neidhoefer, A. Koller, S. Kannan, and E. Johnson. “A
compact guidance, navigation, and control system for unmanned aerial vehicles”. Journal
of Aerospace Computing, Information and Communication, Vol. 3, No. 5, pp. 187–213,
2006.
[Cloh 60] W. H. Clohessy and R. S. Wiltshire. “Terminal guidance systems for satellite rendezvous”.
Journal of the Aerospace Sciences, Vol. 27, No. 9, pp. 653–658, 1960.
[Clou] “Cloud Cap Technology Official Website”. http://www.cloudcaptech.com/.
[Corb 05] J. Corbet, A. Rubini, and G. Kroah-Hartman. Linux Device Drivers. O’Reilly Media,
2005.
[Daum 05] F. Daum. “Nonlinear filters: beyond the Kalman filter”. IEEE Aerospace and Electronic
Systems Magazine, Vol. 20, pp. 57–69, 2005.
[Dong 12] W. Dong, J. Farrell, M. Polycarpou, V. Djapic, and M. Sharma. “Command filtered
adaptive backstepping”. IEEE Transactions on Control Systems Technology, Vol. 20,
No. 3, pp. 566–580, 2012.
[Farr 03] J. Farrell, M. Polycarpou, and M. Sharma. “Adaptive backstepping with magnitude, rate,
and bandwidth constraints: Aircraft longitude control”. In: Proceedings of the American
Control Conference. pp. 3898–3904, 2003.
[Farr 05] J. Farrell, M. Sharma, and M. Polycarpou. “Backstepping-based flight control with adapti-
ve function approximation”. Journal of Guidance, Control, and Dynamics, Vol. 28, No. 6,
pp. 1089–1102, 2005.
260 BIBLIOGRAFIA
[Farr 06] J. A. Farrell and M. M. Polycarpou. Adaptive approximation based control. Unifying
neural, fuzzy and traditional adaptive approximation approaches. Wiley-Interscience, 2006.
[Farr 09] J. Farrell, M. Polycarpou, M. Sharma, and W. Dong. “Command filtered backstepping”.
IEEE Transactions on Automatic Control, Vol. 54, No. 6, pp. 1391–1395, 2009.
[Fehs 03] W. Fehse. Automated Rendezvous and Docking of Spacecraft. Cambridge University Press,
Cambridge, UK, 1st Ed., 2003. pp. 171–215.
[Finc 60] R. D. Finck. USAF Stability and Control Datcom. Air Force Wright Aeronautical Labo-
ratories, october 1960. AFWAL-TR-83-3048.
[Gavi 09] F. Gavilan, R. Vazquez, and E. F. Camacho. “Robust Model Predictive Control for
Spacecraft Rendezvous with Online Prediction of Disturbance Bounds”. In: IFAC Aeros-
pace Guidance, Navigation and Flight Control Systems (AGNFCS’09) Workshop. Samara
(Russia). 2009.
[Gavi 10] F. Gavilan, R. Vazquez, and E. F. Camacho. “Control Predictivo Robusto Aplicado a
Rendezvous de Vehıculos Espaciales”. In: Comunicaciones en las XXXI Jornadas de
Automatica. Jaen. CEA-IFAC, 2010.
[Gavi 11a] F. Gavilan, J. A. Acosta, and R. Vazquez. “Control of the longitudinal flight dynamics of
an UAV using adaptive backstepping”. In: IFAC World Congress. Milano. 2011.
[Gavi 11b] F. Gavilan, R. Vazquez, and J. A. Acosta. “Output-Feedback Control of the Longitudinal
Flight Dynamics Using Adaptative Backstepping”. In: CDC/ECC Orlando, Florida. 2011.
[Gavi 12] F. Gavilan, R. Vazquez, and E. Camacho. “Chance-constrained model predictive control
for spacecraft rendezvous with disturbance estimation”. Control Engineering Practice,
Vol. 20, No. 2, pp. 111–122, 2012.
[Gell 06] D. Geller. “Linear Covariance Techniques for Orbital Rendezvous Analysis and Autono-
mous Onboard Mission Planning”. Journal of Guidance, Control and Dynamics, Vol. 29,
No. 6, pp. 1404–1414, 2006.
[Grac 57] W. Gracey. “Measurement of Static Preassure on Aircraft”. Tech. Rep., NACA TN 1364,
1957.
[Grac 58] W. Gracey. “Summary of Methods of Measuring Angle of Attack on Aircraft”. Tech. Rep.,
NACA TN 4351, 1958.
[Grac 80] W. Gracey. “Measurement of Aircraft Speed and Altitude”. Tech. Rep., NASA Reference
Publication 1046, 1980.
[Grew 01] M. S. Grewal and A. P. Andrews. Kalman Filtering: Theory and Practice. Wiley, 2001.
[Grew 07] M. S. Grewal, L. R. Weill, and A. P. Andrews. Global Positioning Systems, Inertial
Navigation and Integration. Wiley, 2007.
BIBLIOGRAFIA 261
[Gugl 11] G. Guglieri, F. Quagliotti, and G. Speciale. “Optimal Trajectory Tracking for an Auto-
nomous UAV”. Automatic Control in Aerospace Journal, march 2011.
[Hans 06] A. J. Hanson. Visualizing quaternions. Morgan Kauffman, 2006.
[Hark 03] O. Harkegard. Backstepping and Control Allocation with Applications to Flight Control.
PhD thesis, Linkoping Universtity, 2003.
[Hart 03] R. Hartley and A. Zisserman. Multiple View Geometry in Computer Vision. Cambridge
University Press, Cambridge, UK, 2nd Ed., 2003. pp. 26–36.
[Hens 98] M. A. Henson. “Nonlinear model predictive control: current status and future directions”.
Computers & Chemical Engineering, Vol. 23, No. 2, pp. 187 – 202, 1998.
[Hill 78] G. Hill. “Researches in lunar theory”. American Journal of Mathematics, Vol. 1, No. 3,
pp. 5–26, 129–147, 245–260, 1878.
[Houg] E. L. Houghton and P. W. Carpenter. Aerodynamics for Engineering Students.
Butterworth-Heinemann, Fifth Ed.
[How 01] J. How and M. Tillerson. “Analysis of the impact of sensor noise on formation flying
control”. In: American Control Conference. pp. 3986–3991, 2001.
[Hugh 04] P. C. Hughes. Spacecraft Attitude Dynamics. Dover, 2004.
[Hull 07] D. G. Hull. Fundamentals of Airplane Flight Mechanics. Springer-Verlag, 2007.
[Humi 08] M. Humi and T. Carter. “Orbits and Relative Motion in the Gravitational Field of an
Oblate Body”. Journal of Guidance, Control and Dynamics, Vol. 31, No. 3, pp. 522–532,
2008.
[Ieko 99] T. Ieko, Y. Ochi, and K. Kanai. “New design method for pulse-width modulation control
systems via digital redesign”. Journal of Guidance, Control, and Dynamics, Vol. 22, No. 1,
pp. 123–128, 1999.
[Inal 02] G. Inalhan, M. Tillerson, and J. P. How. “Relative Dynamics and Control of Spacecraft
Formations in Eccentric Orbits”. Journal of Guidance, Control and Dynamics, Vol. 25,
No. 1, pp. 48–59, 2002.
[ISO 75] ISO 2533-1975. May 1975. Standard Atmosphere.
[Jack 08] S. Jackson, J. Tisdale, M. Kamgarpour, B. Basso, and J. Hedrick. “Tracking controllers
for small UAVs with wind disturbances: Theory and flight results”. In: Proceedings of the
IEEE Conference on Decision and Control. pp. 564–569, 2008.
[Jang 02] J. S. Jang and C. Tomlin. “Design and Implementation of a Low Cost, Hierarchical and
Modular Avionics Architecture for the DragonFly UAVs”. In: AIAA Guidance, Naviga-
tion, and Control Conference and Exhibit. Monterey, California. 2002.
262 BIBLIOGRAFIA
[Joel 11] E. Joelianto, E. Sumarjono, A. Budiyono, and D. Penggalih. “Model predictive control
for autonomous unmanned helicopters”. Aircraft Engineering and Aerospace Technology,
Vol. 83, No. 6, pp. 375–387, 2011.
[Kalm 60] R. E. Kalman. “A new approach to linear filtering and prediction problems”. Trans.
ASME J. Basic Eng., Vol. 82, pp. 35–45, 1960.
[Kalm 61] R. E. Kalman and R. S. Bucy. “New results in linear filtering and prediction theory”.
Trans. ASME J. Basic Eng., Vol. 83, pp. 95–108, 1961.
[Kami 98] I. Kaminer, A. Pascoal, E. Hallberg, and C. Silvestre. “Trajectory tracking for autonomous
vehicles: An integrated approach to guidance and control”. Journal of Guidance, Control,
and Dynamics, Vol. 21, No. 1, pp. 29–38, 1998.
[Kang 09] Y. Kang and J. Hedrick. “Linear tracking for a fixed-wing UAV using nonlinear model
predictive control”. IEEE Transactions on Control Systems Technology, Vol. 17, No. 5,
pp. 1202–1210, 2009.
[Kapl 06] E. D. Kaplan and C. J. Hegarty. Understanding GPS. Artech House, 2006.
[Kayt 97] M. Kayton and W. R. Fried. Avionics navigation systems. John Wiley and Sons, 1997.
[Kevi 06] T. Keviczky and G. Balas. “Receding horizon control of an F-16 aircraft: A comparative
study”. Control Engineering Practice, Vol. 14, No. 9, pp. 1023–1033, 2006.
[Khal 02] H. Khalil. Nonlinear Systems. Prentice-Hall, 3rd Ed., 2002.
[Kim 02] H. Kim, D. Shim, and S. Sastry. “Nonlinear model predictive tracking control for
rotorcraft-based unmanned aerial vehicles”. In: Proceedings of the American Control Con-
ference. pp. 3576–3581, 2002.
[Kimb 03] R. D. Kimberlin. Flight Testing Of Fixed-Wing Aircraft. AIAA Education Series, 2003.
[Klei 06] V. Klein and E. A. Morelli. Aircraft system identification : theory and practice. AIAA
Education Series, 2006.
[Krst 95a] M. Krstic, I. Kanellakopoulos, and P. Kokotovic. Nonlinear and Adaptive Control Design.
John Wiley, 1995.
[Krst 95b] M. Krstic and P. V. Kokotovic. “Lean backstepping design for a jet engine compressor
model”. In: IEEE Conference on Control Applications. pp. 1047–1052, 1995.
[Krte 99] R. Krten. Getting Started with QNX Neutrino 2: A Guide for Realtime Programmers.
Parse Software Devices, 1999.
[Labr 03] J. J. Labrosse. MircoC/OS-II, The Real-Time Kernel. CMP Books, 2003.
[Li 00] P. Li, M. Wendt, and G. Wozny. “Robust model predictive control under chance cons-
traints”. Computers and Chemical Engineering, Vol. 24, No. 2-7, pp. 829–834, 2000.
BIBLIOGRAFIA 263
[Loui 98] Louis V. Schmidt. Introduction to Aircraft Flight Dynamics. AIAA Education Series,
1998.
[Ma 08] X. Ma, J. Fang, and W. Sheng. “Development of an onboard software system for mini un-
manned aerial vehicle based on VxWorks”. Lecture Notes in Computer Science (including
subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics),
Vol. 5314 LNAI, No. PART 1, pp. 362–370, 2008.
[Mark 03] F. Markley. “Attitude Error Representations for Kalman Filtering”. Journal of Guidance,
Control and Dynamics, Vol. 26, No. 2, pp. 311–317, 2003.
[Mart 10] P. Martin and E. Salaun. “Generalized Multiplicative Extended Kalman Filter for Aided
Attitude and Heading Reference System”. In: AIAA Guidance, Navigation, and Control
Conference. 2010.
[McGe 06] T. McGee and J. Hedrick. “Path planning and control for multiple point surveillance
by an unmanned aircraft in wind”. In: Proceedings of the American Control Conference.
pp. 4261–4266, 2006.
[McLe 90] D. McLean. Automatic Flight Control Systems. Prentice Hall, 1990.
[McRu 73] D. McRuer, I. Ashkenas, and D. Graham. Aircraft Dynamics and Automatic Control.
Princeton University Press, 1973.
[Nich 93] R. A. Nichols, R. T. Reichert, and W. J. Rugh. “Gain scheduling for H∞ controllers: A
flight control example”. IEEE Trans. Contr. Syst. Tech., Vol. 1, No. 2, pp. 69–78, 1993.
[NIMA 00] NIMA TR8350.2. Department of Defense World Geodetic System 1984, Third Ed., Ja-
nuary 2000. Amendment 1.
[NXP ] “NXP LPC2148 Datasheet”. Disponible en:
http://www.nxp.com/products/microcontrollers/arm7/lpc2100/.
[Ochi 91] Y. Ochi and K. Kanai. “Design of restructurable flight control systems using feedback
linearization”. Journal of Guidance, Control, and Dynamics, Vol. 14, No. 5, pp. 903–911,
1991.
[Ol 08] M. Ol, C. Zeune, and M. Logan. “Analytical - Experimental comparison for small electric
unmanned air vehicle propellers”. In: Collection of Technical Papers - AIAA Applied
Aerodynamics Conference. 2008.
[Pama 98] B. Pamadi. Performance, Stability, Dynamics, and Control of Airplanes. AIAA Education
Series, 1998.
[Papa] “Paparazzi Official Website”. http://paparazzi.enac.fr/.
[Par 08] M. Par, S. Kim, C. Ryoo, K. Choi, and C. Park. “Development of Alpha Sensor for
Unmanned Aerial Systems”. In: SICE Annual Conference. Society of Instrument and
Control Engineers, 2008.
264 BIBLIOGRAFIA
[Park 04] S. Park, J. Deyst, and J. P. How. “A new nonlinear guidance logic for trajectory tracking”.
In: Proceedings of Guidance, Navigation and Control Conference, AIAA 2004-4900. 2004.
[Park 07] S. Park, J. Deyst, and J. How. “Performance and lyapunov stability of a nonlinear path-
following guidance method”. Journal of Guidance, Control, and Dynamics, Vol. 30, No. 6,
pp. 1718–1728, 2007.
[Payo 11] V. Payo. “Diseno e implementacion de un Figlth Data Recorder para un avion no tripu-
lado.”. Proyecto Fin de Carrera. ETSI, Universidad de Sevilla, 2011. Tutor: Francisco
Gavilan Jimenez.
[PC10 08a] PC/104 Embedded Consortium. “PC/104-plus Specification. Version 2.3”. Disponible en
http:/www.pc104.org/, October 2008.
[PC10 08b] PC/104 Embedded Consortium. “PC/104 Specification. Version 2.6”. Disponible en
http:/www.pc104.org/, October 2008.
[Pedd 08] I. K. Peddle. Acceleration Based Manoeuvre Flight Control System for Unmanned Aerial
Vehicles. PhD thesis, Stellenbosch University, December 2008.
[Phil 09] W. F. Phillips. Mechanics of Flight. Wiley, Second Ed., 2009.
[Ren 04] W. Ren and R. Beard. “Trajectory tracking for unmanned air vehicles with velocity and
heading rate constraints”. IEEE Transactions on Control Systems Technology, Vol. 12,
No. 5, pp. 706–716, 2004.
[Renc 98] A. C. Rencher. Multivariate Statistical Inference and Applications. Wiley, New York, 1st
Ed., 1998. pp. 40–42.
[Rich 02] A. Richards, T. Schouwenaars, J. P. How, and E. Feron. “Spacecraft Trajectory Plan-
ning with Avoidance Constraints Using Mixed-Integer Linear Programming”. Journal of
Guidance, Control, and Dynamics, Vol. 25, No. 4, pp. 755–764, 2002.
[Rich 03] A. G. Richards and J. How. “Performance evaluation of rendezvous using model predictive
control”. AIAA Paper 2003-5507, 2003.
[Rich 04] A. G. Richards. Robust Constrained Model Predictive Control. PhD thesis, Massachusetts
Institute of Technology, Cambridge, MA, 2004. pp. 27–77.
[Rich 59] N. R. Richardson and A. O. Pearson. “Wind-tunnel calibrations of a combined pitot-static
tube vane-type flow-direction transmitter, and stagnation-temperature element at mach
numbers from 0.60 to 2.87”. Tech. Rep., NACA TN D-192, 1959.
[Rick 90] N. Ricker. “Model predictive control with state estimation”. Industrial and Engineering
Chemistry Research, Vol. 29, No. 3, pp. 374–382, 1990.
[Roge 01] R. M. Rogers. Applied mathematics in integrated navigation systems. AIAA, 2001.
[Rosk 95] J. Roskam. Airplane Flight Dynamics and Automatic Flight Controls - Part II. DARCor-
poration, 1995.
BIBLIOGRAFIA 265
[RTAI] “RTAI Official Website”. https://www.rtai.org/.
[Rugh 00] W. Rugh and J. Shamma. “Research on gain scheduling”. Automatica, Vol. 36, No. 10,
pp. 1401–1425, 2000.
[Savk 03] A. Savkin, P. Pathirana, and F. Faruqi. “Problem of precision missile guidance: LQR
and H∞ control frameworks”. IEEE Transactions on Aerospace and Electronic Systems,
Vol. 39, No. 3, pp. 901–910, 2003.
[Schw 99] A. Schwarm and M. Nikolaou. “Chance-constrained model predictive control”. AIChE
Journal, Vol. 45, No. 8, pp. 1743–1752, 1999.
[Shan 99] T. Shanley and D. Anderson. PCI System Architecture. Mindshare, 1999.
[Shie 96] L. S. Shieh, W. M. Wang, and J. Sunkel. “Design of PAM and PWM controllers for
sampled-data interval systems”. ASME Journal of Dynamic Systems, Measurement and
Control, Vol. 118, No. 4, pp. 673–681, 1996.
[Shne 98a] N. A. Shneydor. Missile Guidance and Pursuit: Kinematics, Dynamics and Control.
Woodhead Publishing, 1998.
[Shne 98b] N. Shneydor. Missile Guidance and Pursuit. Horwood Publishing, 1998.
[Slat 97] R. Slattery and Y. Zhao. “Trajectory synthesis for air traffic automation”. Journal of
Guidance, Control, and Dynamics, Vol. 20, No. 2, pp. 232–238, 1997.
[Sleg 06] N. Slegers, J. Kyle, and M. Costello. “Nonlinear model predictive control technique for
unmanned air vehicles”. Journal of Guidance, Control, and Dynamics, Vol. 29, No. 5,
pp. 1179–1188, 2006.
[Sonn 07] L. Sonneveldt, Q. Chu, and J. Mulder. “Nonlinear flight control design using constrained
adaptive backstepping”. Journal of Guidance, Control, and Dynamics, Vol. 30, No. 2,
pp. 322–336, 2007.
[Sonn 09] L. Sonneveldt, E. Van Oort, Q. Chu, and J. Mulder. “Nonlinear adaptive trajectory control
applied to an F-16 model”. Journal of Guidance, Control, and Dynamics, Vol. 32, No. 1,
pp. 25–39, 2009.
[Sonn 10] L. Sonneveldt. Adaptive Backstepping Flight Control for Modern Fighter Aircraft. PhD
thesis, Delft University of Techonolgy, 2010.
[Tang 11] Y.-R. Tang and Y. Li. “The software architecture of a reconfigurable real-time onboard
control system for a small UAV helicopter”. In: URAI 2011 - 2011 8th International
Conference on Ubiquitous Robots and Ambient Intelligence. pp. 228–233, 2011.
[Titt 05] D. Titterton and J. Weston. Strapdown inertial navigation technology. IEEE, 2005.
[Torn] “Tornado Vortex Lattice Website”. http://www.redhammer.se/tornado/.
266 BIBLIOGRAFIA
[Tsou 11] A. Tsourdos, B. White, and M. Shanmugavel. Cooperative Path Planning of Unmanned
Aerial Vehicles. John Wiley & Sons, 2011.
[UAV ] “UAV Navigation Official Website”. http://uavnavigation.org/.
[Vale 11] A. Valenzuela, D. Rivas, F. Gavilan, and R. Vazquez. “Optimal Trajectory Generation for
UAVs Using Dynamic Trajectory Modeling”. In: Proceedings of the Research, Development
and Education on Unmanned Aerial Systems Workshop (RED-UAS). 2011.
[Vazq 11] R. Vazquez, F. Gavilan, and E. F. Camacho. “Trajectory Planning for Spacecraft Ren-
dezvous with On/Off Thrusters”. In: IFAC World Congress. Milano. 2011.
[Wang 03] P. Wang, M. Mokuno, and F. Hadaegh. “Formation Flying of multiple spacecraft with
automatic rendezvous and docking capability”. AIAA Paper 2003-5363, 2003.
[Wie 98] B. Wie. Space vehicle dynamics and control. AIAA Education Series, 1998.
[Will 79] J. E. Williams and S. R. Vukelich. “The USAF stability and control DATCOM. Volume
I, users manual”. Tech. Rep., Air Force Wright Aeronautical Laboratories, april 1979.
[Woff 08] D. C. Woffinden and D. K. Geller. “Navigating the road to autonomous orbital rendez-
vous”. Journal of Spacecraft and Rockets, Vol. 44, No. 4, pp. 898–909, 2008.
[Xeno] “Xenomai Official Website”. http://www.xenomai.org/.
[Yama 07] T. Yamasaki, H. Sakaida, K. Enomoto, H. Takano, and Y. Baba. “Robust Trajectory-
Tracking Method for UAV Guidance Using Proportional Navigation”. In: Proceedings of
the International Conference on Control, Automation and Systems 2007. 2007.
Apendice A
Sistemas de Referencia
En este apendice se van a detallar los distintos sistemas de referencia usados en los distintos modelos
de aeronave.
Sistema de ejes tierra FE
Se trata de un sistema de referencia fijo en el centro de la Tierra y que participa de su movimiento de
rotacion. Resulta de gran utilidad, por ser el sistema de referencia base para expresar las coordenadas
GPS. Se considerara inercial.
Se define de la siguiente forma:
Origen (OE): centro de la Tierra.
xE : en el plano ecuatorial, hacia un punto de referencia de la superficie terrestre.
zE : en el eje polar, apuntando hacia el norte.
yE: completando el triedro a derechas.
Otra forma de expresar una posicion en este sistema de referencia es mediante coordenadas geodeti-
cas, que se definen sobre el elipsoide WGS84. En particular, estas son las coordenadas que emplea el
sistema de navegacion por satelite GPS.
Las coordenadas geodeticas de un punto se definen de la siguiente forma:
Longitud λ: angulo formado entre el meridiano determinado por la perpendicular al elipsoide que
pasa por el punto y el meridiano de Greenwich, medido hacia el este.
Latitud φ: angulo formado entre el plano del Ecuador y la perpendicular al elipsoide que pasa por
el punto, medido hacia el norte.
Altitud h: distancia del punto al elipsoide WGS84, medida sobre la perpendicular al elipsoide que
pasa por el punto.
267
268 APENDICE A. SISTEMAS DE REFERENCIA
La relacion entre las coordenadas geodeticas de un punto y sus coordenadas cartesianas expresadas
en ejes Tierra es la siguiente:
x =
(
h+re
√
1− f(2− f) sin2 φ
)
cosφ cos λ, (A.1)
y =
(
h+re
√
1− f(2− f) sin2 φ
)
cosφ sinλ, (A.2)
z =
(
h+re(1− f)2
√
1− f(2− f) sin2 φ
)
sinφ. (A.3)
En estas ecuaciones aparecen los parametros del elipsoide WGS84 re y f , que son respectivamente su
radio ecuatorial y aplanamiento, siendo sus valores
re = 6378, 137 km, (A.4)
f =1
298, 257224. (A.5)
Sistema topocentrico FT
Se considerara inercial (hipotesis de Tierra Plana). Se usara para expresar la posicion de la aeronave
respecto a un punto fijo en tierra.
Origen (OT ): cualquier punto de la superficie terrestre.
xT : en el plano horizontal local, hacia el norte.
yT : en el plano horizontal local, hacia el este.
zT : formando un triedro a derechas.
Sistema de ejes cuerpo FB
Se usara para expresar las fuerzas y momentos que actuansobre el avion.Origen (OB): en el centro de gravedad del avion.xB: en el plano de simetrıa, segun una lınea de referen-cia hacia el morro.zB: en el plano de simetrıa, perpendicular a xB, haciaabajo.yB: formando un triedro a derechas (hacia el ala dere-cha).
A.1. MATRICES DE TRANSFORMACION 269
Sistema de ejes horizonte local FH
Se usara como referencia para expresar la actitud de la aeronave. Resulta de trasladar el sistema de
ejes topocentrico al centro de gravedad del avion.
Origen (OH): en el centro de gravedad del avion.
xH en el plano horizontal local, hacia el norte.
yH en el plano horizontal local, hacia el este.
zH completando el triedro a derechas.
Sistema de ejes viento FW
Se trata del sistema de referencia sobre el que expresan de forma natural las fuerzas y momentos
aerodinamicos.
Origen (OW ): en el centro de gravedad del avion.
xW : misma direccion y sentido que el vector velocidad aerodinamica del avion.
zW : en el plano de simetrıa, perpendicular a xW , hacia abajo.
yW : formando un triedro a derechas.
Sistema de ejes estabilidad FS
Resulta util para linealizar las ecuaciones del movimiento del avion.
Origen (OS): en el centro de gravedad del avion.
xS : coincide con la proyeccion del vector velocidad de referencia sobre el plano de simetrıa del avion.
yS : perpendicular al plano de simetrıa, segun el ala derecha.
zS : formando un triedro a derechas.
A.1. Matrices de transformacion
A continuacion se van a exponer las distinas matrices de transformacion entre los sistemas de refe-
rencia que se acaban de describir.
Hay que tener en cuenta que las matrices que se van a mostrar son ortonormales, por lo que la matriz
de transformacion inversa sera la transpuesta.
270 APENDICE A. SISTEMAS DE REFERENCIA
Sistema de ejes tierra a sistema topocentrico
La transformacion se realiza mediante los angulos de latitud (φ) y longitud (λ):
RTE =
− sinφ cosλ − sinφ sinλ cosφ− sinλ cosλ 0
− cos φ cosλ − cosφ sinλ − sin φ
(A.6)
Sistema horizonte local a sistema de ejes cuerpo
La transformacion de FH a FB viene definido por la siguiente secuencia de rotaciones:
FHψ−−→zH
FX1
θ−−→yX1
FX2
φ−−→xX2
FB (A.7)
donde θ es el angulo de cabeceo, φ es el angulo de balance y ψ es el angulo de guinada.
Definiendo esta secuencia mediante operaciones matriciales:
[x]B = RBH [x]H ; RBH = RBX2RX2X1RX1H
RBH =
cos θ cosψ cos θ sinψ − sin θ
sin θ sinφ cosψ − sinψ cosφ sinψ sin θ sinφ+ cosψ cosφ sinφ cos θ
sin θ cosφ cosψ + sinψ sinφ sin θ cosφ sinψ − cosψ sinφ cosφ cos θ
(A.8)
Sistema de ejes viento a sistema de ejes cuerpo
La transformacion se define mediante el angulo de ataque (α) y el angulo de resbalamiento (β).
RBW =
cosα cos β − cosα sin β − sinα
sin β cos β 0
sinα cosβ − sinα sin β cosα
(A.9)
Apendice B
Sistema basico de control
lateral-direccional
En este apendice se va a mostrar el controlador lateral-direccional usado para cerrar el problema de
control de actitud del avion. Como se ha mencionado en el capıtulo 3, la contribucion de esta tesis se
centra en la dinamica longitudinal, ya que su fuerte dependencia del punto de operacion hace que se
obtengan visibles ventajas al usar un controlador adaptativo no lineal.
Sin embargo, para cerrar el problema de control de actitud, es necesario proporcionar un controlador
lateral-direccional. En este sentido, aunque esto no suponga una contribucion original, se va obtener
en este apendice un controlador LQR con un termino integral que permita seguir consignas en angulo
de balance, a la vez que mantenga el angulo de resbalamiento del avion nulo.
B.1. Modelo linealizado de la dinamica lateral-
direccional
Teniendo en cuenta que se esta proponiendo una tecnica de control lineal, es necesario obtener
un modelo linealizado de la dinamica lateral-direccional. Como puede verse en referencias clasicas
de Mecanica del Vuelo (por ejemplo [B Et 96]), las ecuaciones correspondientes a la dinamica lateral-
direccional (2.21), (2.23), (2.25) y (2.29) pueden linealizarse en torno a una condicion de vuelo rectilıneo
uniforme (en este caso se ha seleccionado como velocidad de referencia us = 19m/s) de la siguiente
manera
2µdβ
dt= CYββ + CYp p+ (CYr − 2µ) r − CZsφ+ CYδr δr, (B.1)
Ixdp
dt− Ixz
dr
dt= Clββ + Clp p+ Clr r + Clδa δa + Clδr δr, (B.2)
Izdr
dt− Ixz
dp
dt= Cnβ
β + Cnpp+ Cnr
r + Cnδaδa + Cnδr
δr, (B.3)
dφ
dt= p, (B.4)
271
272 APENDICE B. SISTEMA BASICO DE CONTROL LATERAL-DIRECCIONAL
donde µ = 2mρSb , p =
pb2us
y r = rb2us
. Ademas los parametros Ix, Iz y Ixz representan las correspondientes
inercias Ix, Iz y Ixz normalizadas por ρS(
b2
)3. Finalmente, los coeficientes C(·) son las derivadas de
estabilidad del avion, las cuales resultan de linealizar el modelo aerodinamico (2.43)–(2.48) en torno a
la condicion de vuelo de referencia. Concretamente, para este caso se obtienen las siguientes derivadas
de estabilidad:
- CY Cl Cnβ −0,5829 −0,1035 0,2021p −0,1136 −0,4638 −0,0326r 0,4431 0,0716 −0,2194δa − 0,1731 −0,0073δr −0,3134 −0,0361 0,1576
Cuadro B.1: Derivadas de estabilidad laterales-direccionales del Cefiro UAV.
Con esta linealizacion, se pueden escribir las ecuaciones del movimiento laterales-direccionales de la
forma
~x = A~x+B~u, (B.5)
donde los vectores de estados y de control vienen dados por
~x = [β p r φ]T , ~u = [δa δr]T . (B.6)
B.2. Controlador LQR con termino integral
Para obtener un controlador LQR estandar, a partir del sistema lineal expresado en espacio de
estados (B.5), se calcula una ley de realimentacion lineal ~u = K~x, de forma que se minimiza una
funcion de coste cuadratica
J =
∫ ∞
0
(
~xT (τ)Q~x(τ) + ~uT (τ)R~u(τ))
dτ. (B.7)
Seleccionando los valores adecuados de las matrices de ponderacion Q y R, se pueden obtener las
propiedades deseadas del sistema en bucle cerrado, estableciendo el compromiso adecuado entre segui-
miento de la referencia y potencia de control usada.
Ademas, es importante resaltar que la ley de control resultante se escribe como ~u = K~x, donde K
es una matriz constante que se puede calcular con facilidad, ya que se demuestra lo siguiente (ver
[Ande 90])
K = −R−1BTP, (B.8)
B.2. CONTROLADOR LQR CON TERMINO INTEGRAL 273
donde P es la matriz solucion de la ecuacion de Riccati:
ATP + PA− PBR−1BTP +Q = 0, (B.9)
que solo se tiene que resolver una unica vez, fuera de lınea.
El problema de esta formulacion clasica del control LQR es que al carecer de efecto integral, no
permite eliminar completamente el error en regimen permanente durante el seguimiento de la consigna.
Al trabajar con un modelo linealizado, los propios errores de modelado pueden hacer que se incurran
en estos errores durante la operacion del controlador.
Para eliminar este problema, se va a hacer uso de una formulacion alternativa del control LQR, la
cual permite incluir terminos integrales en la ley de control que ayuden a compensar estos errores. Ası,
siguiendo [McLe 90], en primer lugar se parte del sistema linealizado en el espacio de estados
~x = A~x+B~u, (B.10)
~y = C~x+D~u.
En este caso, se tiene ~x = [β p r φ]T , ~y = [β φ]T y ~u = [δa δr]T . En base a esto, las matrices A, B,
C y D se deducen facilmente de las ecuaciones linealizadas (B.1)–(B.4). Se define ademas la siguiente
variable
~ξ =
[
~y
~η
]
=
[
C
L
]
~x = T~x, (B.11)
donde ~y es el vector con las variables de salida que se quieren controlar, y ~η es un vector de variables
de estado internas, seleccionadas adecuadamente para que ~ξ tenga las mismas dimensiones que ~x y T
sea invertible. Como se ha comentado antes, en este caso se elige ~η = [p r]T .
La dinamica de ~ξ se puede escribir de la forma
~ξ = T (A~x+B~u) = TAT−1~ξ + TB~u = F~ξ +H~u, (B.12)
o lo que es lo mismo
~y = F11~y + F12~η +H1~u, (B.13)
~η = F21~y + F22~η +H2~u. (B.14)
Introduciendo el error de seguimiento ~e = ~yref − ~y (donde la consigna ~yref se considera constante),
se puede definir el nuevo juego de variables
~σ1 = ~e, ~σ2 = ~e, ~σ3 = ~η, (B.15)
las cuales tienen que cumplir la siguiente dinamica
~σ1 = σ2, (B.16)
~σ2 = −F11~y − F12~η −H1~u,
~σ3 = F21~y + F22~η +H2~u.
274 APENDICE B. SISTEMA BASICO DE CONTROL LATERAL-DIRECCIONAL
Reescribiendo el vector de estados ~φ = [σ1 σ2 σ3]T , y el vector de control ~v = ~u, se puede expresar
el sistema (B.16) de la siguiente forma compacta
~φ = Φ~φ+ Γ~v, (B.17)
donde se ha definido
Φ =
0 I 0
0 F11 −F12
0 −F21 F22
, Γ =
0
−H1
H2
. (B.18)
Ahora se puede calcular una ley de control optima para el sistema (B.17), usando la misma formu-
lacion vista para el control LQR estandar, lo cual da lugar a la siguiente ley de control
~v = K~φ = [K1 K2 K3]
~σ1
~σ2
~σ3
siendo K = −R−1BTP, (B.19)
donde P se obtiene resolviendo la ecuacion de Riccati
ΦTP + PΦ− PΓR−1ΓTP +Q = 0. (B.20)
Por ultimo, la ley de control (B.19) se puede reescribir en variables fısicas de la siguiente forma
~u = K1
∫
(~yref − ~y) dt+K2 (~yref − ~y) +K3~η. (B.21)
Como se puede comprobar, en esta ley de control aparece explıcitamente el error de las variables
de salida respecto a sus referencias, ademas de otras variables de estado (que son medibles). Ademas,
la formulacion utilizada la lugar a la aparicion de un termino integral en la ley de control, el cual se
encargara de eliminar los errores en regimen permanente que puedan aparecer.
Aplicando este procedimiento, se han obtenido las siguientes matrices del control lateral-
direccional.
K1 =
[
−0,0026 0,1365
−0,3053 −1,1672
]
, K2 =
[
−0,7104 2,2181
−43,0448 −17,7209
]
, K3 =
[
−2,3301 −1,5493
13,1087 −37,4582
]
.
(B.22)
Teniendo en cuenta que esta ley de control no es un tema central de esta tesis, no se va a alargar mas
este apendice incluyendo resultados de simulacion usando este controlador clasico. Las prestaciones
del mismo pueden apreciarse en el capıtulo 3, donde se realizan simulaciones con el sistema de control
de la dinamica longitudinal funcionando de forma acoplada.
Apendice C
Aproximacion lineal a la ecuacion de
prediccion del estado.
En este apendice se va a detallar el calculo de la aproximacion lineal al vector f de la seccion
4.3.2.
Como se detalla en esta seccion, la ecuacion de prediccion del estado viene dada por
xk+1 = fk(Vk, γk, κk, κk−1, . . . , κ0, χ0) + xk, (C.1)
donde se ha definido el vector fk de la forma
fk =
2Vk cos γkTs
κkcos(κk2
+∑i=k−1
i=0 κi + χ0
)
sinκk2
2Vk cos γkTs
κksin(κk2
+∑i=k−1
i=0 κi + χ0
)
sinκk2
−Vk sin γkTsκk
. (C.2)
Este modelo de prediccion puede ser linealizado en torno a una secuencia de senales de control de
referencia de la siguiente forma
xk+1 =i=k∑
i=0
(
fi(uS, χ0) +∂fi∂uS
(uS, χ0)∆uS
)
+ x0, (C.3)
donde la matriz∂fi∂uS
(uS, χ0) viene dada por
∂fi∂uS
(uS, χ0) =
[
Θ4×2∂fi∂κ0
| Θ4×2∂fi∂κ1
| · · · | ∂fi∂Vi
∂fi∂γi
∂fi∂κi
| Θ4×(Np−1−i)
]
,
(C.4)
275
276 APENDICE C. APROXIMACION DE LA ECUACION DEL PREDICCION
siendo sus vectores columna
∂fk∂Vk
=
2cos γkTsκk
cos( κk2
+∑i=k−1
i=0 κi + χ0
)
sinκk2
2cos γkTsκk
sin( κk2
+∑i=k−1
i=0 κi + χ0
)
sinκk2
− sin γkTs
0
, (C.5)
∂fk∂γk
=
−2Vk sin γkTs
κkcos( κk2
+∑i=k−1
i=0 κi + χ0
)
sinκk2
−2Vk sin γkTs
κksin( κk2
+∑i=k−1
i=0 κi + χ0
)
sinκk2
−Vk cos γkTs0
, (C.6)
∂fk∂κk
=
Vk cos γkTs
(
κk cos (κk + χk)− sin (κk + χk) + sin χkκ2k
)
Vk cos γkTs
(
κk sin (κk + χk) + cos (κk + χk)− cos χkκ2k
)
0
1
, (C.7)
∂fk∂κi
=
−2Vk cos γkTs
κksin( κk2
+ χk
)
sinκk2
2Vk cos γkTs
κkcos( κk2
+ χk
)
sinκk2
0
0
, i < k, (C.8)
donde χk =∑i=k−1
i=0 κi + χ0.
Como se puede ver, al calcular los vectores (C.5)–(C.8) en segmentos de vuelo rectilıneo (con para-
metro de curvatura κk = 0) se presentan problemas numericos debido a las divisiones por cero que
aparecen. Sin embargo, como se va a mostrar a continuacion, el lımite de todas las componentes de
los vectores (C.5)–(C.8) es finito (son funciones continuas y derivables de κk).
Ası, para solventar los problemas de implementacion que aparecen en estas situaciones, se va a
proporcionar una aproximacion lineal de (C.5)–(C.8) en torno a κk = 0, la cual sera usada el lugar de
las expresiones originales para valores muy cercanos a cero del parametro de curvatura.
De forma general, para valores pequenos del parametro de curvatura (concretamente |κ| ≤ 10−4), se
van a considerar las siguientes aproximaciones
fk ≈(
lımκk→0
fk
)
+
(
lımκ→0
∂fk∂κ
)
κ, (C.9)
∂fk∂(·) ≈
(
lımκk→0
∂fk∂(·)
)
+
(
lımκk→0
∂2fk∂κ∂(·)
)
κ. (C.10)
277
Entrando en el calculo de los terminos de (C.9)–(C.10), se tienen las siguientes expresiones
lımκk→0
fk =
Vk cos γkTs cos χk
Vk cos γkTs sin χk
−Vk sin γkTs0
, (C.11)
lımκk→0
∂fk∂κk
=
−Vk cos γkTs sin χk
2
Vk cos γkTscos χk
2
0
1
, (C.12)
lımκk→0
∂fk∂Vk
=
cos γkTs cos χk
cos γkTs sin χk
− sin γkTs
0
, (C.13)
lımκk→0
∂fk∂γk
=
−Vk sin γkTs cos χk−Vk sin γkTs sin χk
−Vk cos γkTs0
, (C.14)
lımκk→0
∂fk∂κi
=
−Vk cos γkTs sin χkVk cos γkTs cos χk
0
0
. (C.15)
Ademas, los lımites de las derivadas segundas de (C.10) vienen dados por:
lımκk→0
∂fk∂κk∂Vk
=
− cos γkTssin χk
2
cos γkTscos χk
2
0
0
, (C.16)
lımκk→0
∂fk∂κk∂γk
=
Vk sin γkTssin χk
2
−Vk sin γkTs cos χk
2
0
0
, (C.17)
lımκk→0
∂fk∂κk∂κi
=
Vk cos γkTscos χk
2
−Vk cos γkTs sin χk
2
0
0
, (C.18)
lımκk→0
∂fk∂κk∂κk
=
−Vk cos γkTs cos χk
3
−Vk cos γkTs sin χk
3
0
0
. (C.19)
278 APENDICE C. APROXIMACION DE LA ECUACION DEL PREDICCION