Tesis Master GuilhermeRaffo
-
Upload
daniel-garcia -
Category
Documents
-
view
18 -
download
0
description
Transcript of Tesis Master GuilhermeRaffo
GUILHERME VIANNA RAFFO
MODELADO Y CONTROL DE UNHELICOPTERO QUADROTOR
SEVILLA2007
UNIVERSIDAD DE SEVILLA
PROGRAMA OFICIAL DE POSGRADO ENINGENIERIAS
MODELADO Y CONTROL DE UNHELICOPTERO QUADROTOR
Tesis presentada en la Universidad de Sevillacomo uno de los requisitos para la obtencion del grado de
Master en Automatica, Robotica y Telematica.
POR
GUILHERME VIANNA RAFFO
Sevilla, Diciembre de 2007.
i
ii
MODELADO Y CONTROL DE UN HELICOPTEROQUADROTOR
Guilherme Vianna Raffo
Esta Tesis se juzgo adecuada para la obtencion del Tıtulo de Master en Automatica,Robotica y Telematica, Area de Conocimiento en Ingenierıa de Sistemas y Automatica,y aprobada en su forma final por el Programa Oficial de Posgrado en Ingenierıas de la
Universidad de Sevilla.
Prof. D. Francisco Rodrıguez Rubio, Dr. Prof. D. Manuel Gil Ortega Linares, Dr.
Director Director
Prof. D. Francisco Rodrıguez Rubio, Dr.Coordinador del Master en Automatica, Robotica y Telematica de la Universidad de Sevilla
Tribunal Examinador:
Prof. D. Anibal Ollero Baturone, Dr.
Prof. D. Teodoro Alamo Cantarero, Dr.
Prof. D. Francisco Salas Gomez, Dr.
iii
iv
A mi novia Clarice y a mis Padres.
v
AGRADECIMENTOS
Agradezco a mis padres, Paulo Eduardo y Ana Maria, por haberme incentivado a venira estudiar en Espana.
A mi novia, Clarice, por haberme apoyado mismo de lejos, por la paciencia y por venira vivir bien cerca de mi.
Agradezco a mis queridos abuelos, Adalberto y Maria Suzana el estımulo y por hablarconmigo casi todos los dıas, que me hace que la nostalgia sea un poco menor.
A mis hermanos Marcelo y Gustavo y mis hermanas Daniela y Paula el apoyo desdeBrasil. A mi sobrina Isabela por las muchas conversaciones que ya tuvimos.
Me gustarıa agradecer a mis directores de tesis, Prof. Francisco Rodrıguez Rubio yProf. Manuel Gil Ortega Linares, la ayuda y dedicacion en estos dos primeros anos deldoctorado.
Agradezco a mis amigos Jorn Klaas Gruber y Antonio Ferramosca las muchas ayudasprestadas durante mi estancia en Sevilla, por las correcciones de ingles en los artıculos ypor tener un oıdo para mi todos los dıas.
Me gustarıa agradecer a Prof. Julio Elias Normey Rico el companerismo, amistad ydedicacion ofrecida.
Agradezco a los Prof. Manuel Vargas y Prof. Francisco Salas el apoyo ofrecido en laelaboracion de esta tesis.
Agradezco a Isabel Jurado las traducciones y correcciones realizadas en este trabajo.
Agradezco, tambien, al Departamento de Ingenierıa de Sistemas y Automatica, por laoportunidad de desarrollar mi investigacion en la Universidad de Sevilla. Al Ministeriode Educacion y Ciencia, MEC, por la concesion de la beca FPI y a los profesores delDepartamento.
A todos los amigos que hice durante estos dos anos en Sevilla. Agradezco a los cole-gas del curso de master en Automatica, Robotica y Telematica la ayuda concedida paraconcluir mi tesis..
vi
Resumen de la Tesis presentada en la Universidad de Sevilla como uno de los requisitosnecesarios para la obtencion del grado de Master en Automatica, Robotica y Telematica.
MODELADO Y CONTROL DE UN HELICOPTERO QUADROTOR
Guilherme Vianna Raffo
Diciembre/2007
Directores: Prof. D. Francisco Rodrıguez Rubio, Dr.
Prof. D. Manuel Gil Ortega Linares, Dr.
Area de Concentracion: Ingenierıa de Sistemas y Automatica
Palabras-clave: Vehıculo Aereo Autonomo, Modelado, Control H∞ Lineal,Control H∞ No Lineal, Backstepping, Control Robusto,Control Predictivo, Seguimiento de Trayectorias
Numero de Paginas:
En este trabajo se ha realizado el modelado y desarrollo de estrategias de control pa-ra solucionar el problema de seguimiento de referencia de un vehıculo aereo autonomo:un helicoptero miniatura quadrotor. Para comprender el funcionamiento del helicopteroquadrotor, se ha realizado un estudio del sistema, y posteriormente se ha modelado, com-pletando y corrigiendo algunos modelos publicados anteriormente. El modelo dinamicose ha obtenido vıa dos formulaciones matematicas distintas: la de Newton-Euler y la deLagrange-Euler. El control de seguimiento de trayectoria del helicoptero se ha llevado acabo mediante cinco estrategias de control, de forma que se garantice la robustez anteperturbaciones e incertidumbres parametricas del sistema. Para la sıntesis de los contro-ladores se ha utilizado teorıas como control mediante linealizacion por realimentacion,Backstepping, H∞ lineal y no lineal, y control predictivo basado en modelo. La validez delas estructuras de control presentadas fueron corroboradas mediante resultados de simu-lacion en presencia de incertidumbres en los parametros del modelo y de perturbacionesen los movimientos de traslacion y rotacion. Para realizar ensayos experimentales se hapuesto en marcha una plataforma de pruebas compuesta por un helicoptero quadrotor co-mercial en escala miniatura, una unidad de medicion inercial inalambrica y un ordenadorde tierra. Se ha desarrollado un interfaz entre el ordenador y el helicoptero bajo la aplica-cion LabViewr. Se han realizado experimentos preliminares con la plataforma de pruebasempezando con controladores basicos para la estabilizacion del helicoptero quadrotor, ymostrando la eficacia del sistema desarrollado.
vii
Abstract of Thesis presented to Universidad de Sevilla as a partial fulfillment of therequirements for the degree of Master in Automatica, Robotic and Telematic.
MODELLING AND CONTROL OF A QUADROTOR HELICOPTER
Guilherme Vianna Raffo
December/2007
Advisors: Prof. D. Francisco Rodrıguez Rubio, Dr.
Prof. D. Manuel Gil Ortega Linares, Dr.
Area of Concentration: Automation and Systems Engineering
Keywords: Unmanned Aerial Vehicle, Modelling, Linear H∞ Control,Nonlinear H∞ Control, Backstepping Approach, RobustControl, Predictive Control, Path Tracking
Number of Pages:
In this work the modeling and development of strategies to solve tracking problem for anunmanned aerial vehicles, the quadrotor helicopter, is presented. The system is studied,to understand how it works, and then it is modeled, completing and revising some modelspreviously published. The dynamic modeled is obtained by means of two different mathe-matical formulations: the Newton-Euler one and the Lagrange-Euler one. The helicoptertracking control is carried out using five control strategies, so that robustness in presen-ce of disturbances and parametric uncertainties is fulfilled. The controllers synthesis iscarried out basing on theories like feedback linearization, Backstepping, linear and nonlinear H∞, and model predictive control. The validation of the presented control stra-tegies is corroborated using results of some simulations in presence of model parametricuncertainties and disturbances in translation and rotation movements. A testing platformis started up to make experimental tests. This platform is composed by a commercialquadrotor helicopter, a wireless inercial sensor and a desktop PC. An interface betweenthe PC and the helicopter is developed using a LabViewr environment. Some tests usingbasic controllers to stabilize the quadrotor helicopter have been made, showing systemefficacy.
viii
Indice general
Indice general IX
Indice de Figuras XII
Indice de Tablas XVIII
Lista de Abreviaturas XXI
Lista de Sımbolos XXIII
1. Introduccion 1
1.1. Motivacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3. Organizacion del trabajo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2. Descripcion y Modelado del Helicoptero QuadRotor 9
2.1. Descripcion del UAV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2. Modelado del UAV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3. Orientacion del helicoptero . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.4. Formulacion de Newton-Euler . . . . . . . . . . . . . . . . . . . . . . . . . 15
x Indice general
2.5. Formulacion de Lagrange-Euler . . . . . . . . . . . . . . . . . . . . . . . . 20
3. Estructuras de Control 29
3.1. Control con desacoplamiento entrada-salida y linealizacion exacta por re-
alimentacion dinamica (Mistler et al., 2001) . . . . . . . . . . . . . . . . . 31
3.1.1. Resultados de simulacion . . . . . . . . . . . . . . . . . . . . . . . . 37
3.2. Control basado en Backstepping (Bouabdallah y Siegwart, 2005) . . . . . . 42
3.2.1. Control Backstepping del sub-sistema de rotacion . . . . . . . . . . 44
3.2.2. Control Backstepping del sub-sistema de traslacion . . . . . . . . . 45
3.2.3. Resultados de simulacion . . . . . . . . . . . . . . . . . . . . . . . . 46
3.3. Control Backstepping/H∞ no lineal (Raffo et al., 2008a) . . . . . . . . . . 51
3.3.1. Control H∞ no lineal . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.3.2. Resultados de simulacion . . . . . . . . . . . . . . . . . . . . . . . . 56
3.4. CPBM con control H∞ no lineal (Raffo et al., 2008b) . . . . . . . . . . . . 62
3.4.1. Estrategia de CPBM para seguimiento de trayectoria . . . . . . . . 62
3.4.2. Resultados de simulacion . . . . . . . . . . . . . . . . . . . . . . . . 69
3.5. Control robusto H∞ de los seis grados de libertad . . . . . . . . . . . . . . 75
3.5.1. Control H∞ lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
3.5.2. Control H∞ con realimentacion de estados vıa lmis . . . . . . . . . 78
3.5.3. Control H∞ de los movimientos de traslacion . . . . . . . . . . . . 80
3.5.4. Resultados de simulacion . . . . . . . . . . . . . . . . . . . . . . . . 84
4. Descripcion del Equipo 89
xi
4.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
4.2. Helicoptero en miniatura quadrotor . . . . . . . . . . . . . . . . . . . . . . 90
4.3. Unidad de medicion inercial . . . . . . . . . . . . . . . . . . . . . . . . . . 92
4.3.1. Protocolo de comunicacion . . . . . . . . . . . . . . . . . . . . . . . 93
4.4. Tarjeta de adquisicion de datos . . . . . . . . . . . . . . . . . . . . . . . . 94
4.5. Interfaz ordenador-helicoptero quadrotor . . . . . . . . . . . . . . . . . . . 94
4.5.1. Lectura y escritura de la IMU . . . . . . . . . . . . . . . . . . . . . 95
4.5.2. Generador del tren de pulsos . . . . . . . . . . . . . . . . . . . . . . 97
4.5.3. Lazo de control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.6. Resultados experimentales . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
5. Conclusiones 105
Bibliografıa 111
xii Indice general
Indice de figuras
2.1. Esquema de funcionamiento del helicoptero quadrotor. . . . . . . . . . . . . 9
2.2. Esquema del helicoptero quadrotor. . . . . . . . . . . . . . . . . . . . . . . 10
2.3. Rotacion de los angulos de Tait-Bryan del sistema de coordenadas inercialal sistema de coordenadas fijado al helicoptero (Space y Spazio, 1997). . . . 13
2.4. Sistema dinamico dividido en dos sub-sistemas interconectados. . . . . . . 27
3.1. Diagrama de Bloques para el control con linealizacion por realimentaciondel helicoptero quadrotor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.2. Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia decontrol con linealizacion por realimentacion dinamica sin perturbacionesexternas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.3. Evolucion temporal de la posicion cuando se aplica la estrategia de controlcon linealizacion por realimentacion dinamica sin perturbaciones externas. 38
3.4. Evolucion temporal de la orientacion cuando se aplica la estrategia de con-trol con linealizacion por realimentacion dinamica sin perturbaciones ex-ternas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
3.5. Evolucion temporal de la entrada de control cuando se aplica la estrategiade control con linealizacion por realimentacion dinamica sin perturbacionesexternas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.6. Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia decontrol con linealizacion por realimentacion dinamica con perturbacionesexternas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.7. Evolucion temporal de la posicion cuando se aplica la estrategia de controlcon linealizacion por realimentacion dinamica con perturbaciones externas. 40
xiv Indice de figuras
3.8. Evolucion temporal de la orientacion cuando se aplica la estrategia de con-trol con linealizacion por realimentacion dinamica con perturbaciones ex-ternas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.9. Evolucion temporal de la entrada de control cuando se aplica la estrategiade control con linealizacion por realimentacion dinamica con perturbacionesexternas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.10. Estructura de control Backstepping. . . . . . . . . . . . . . . . . . . . . . . 43
3.11. Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia decontrol utilizando la tecnica de Backstepping sin perturbaciones externas. . 46
3.12. Evolucion temporal de la posicion cuando se aplica la estrategia de controlutilizando la tecnica de Backstepping sin perturbaciones externas. . . . . . 47
3.13. Evolucion temporal de la orientacion cuando se aplica la estrategia de con-trol utilizando la tecnica de Backstepping sin perturbaciones externas. . . . 47
3.14. Evolucion temporal de las entradas de control cuando se aplica la estrategiade control utilizando la tecnica de Backstepping sin perturbaciones externas. 48
3.15. Evolucion temporal de la posicion cuando se aplica la estrategia de controlutilizando la tecnica de Backstepping con perturbaciones externas. . . . . . 48
3.16. Evolucion temporal de la orientacion cuando se aplica la estrategia de con-trol utilizando la tecnica de Backstepping con perturbaciones externas. . . 49
3.17. Evolucion temporal de las entradas de control cuando se aplica la estrategiade control utilizando la tecnica de Backstepping con perturbaciones externas. 49
3.18. Estructura de control Backstepping/H∞ no lineal. . . . . . . . . . . . . . . 51
3.19. Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia decontrol utilizando Backstepping/H∞ no lineal sin perturbaciones externas. 57
3.20. Evolucion temporal de la posicion cuando se aplica la estrategia de controlutilizando Backstepping/H∞ no lineal sin perturbaciones externas. . . . . . 58
3.21. Evolucion temporal de la orientacion cuando se aplica la estrategia de con-trol utilizando Backstepping/H∞ no lineal sin perturbaciones externas. . . 58
3.22. Evolucion temporal de las entradas de control cuando se aplica la estrategiade control utilizando Backstepping/H∞ no lineal sin perturbaciones externas. 59
Indice de figuras xv
3.23. Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia decontrol utilizando Backstepping/H∞ no lineal con perturbaciones externas. 59
3.24. Evolucion temporal de la posicion cuando se aplica la estrategia de controlutilizando Backstepping/H∞ no lineal con perturbaciones externas. . . . . 60
3.25. Evolucion temporal de la orientacion cuando se aplica la estrategia de con-trol utilizando Backstepping/H∞ no lineal con perturbaciones externas. . . 60
3.26. Evolucion temporal de las entradas de control cuando se aplica la estrategiade control utilizando Backstepping/H∞ no lineal con perturbaciones externas. 61
3.27. Estructura de control CPBM con H∞ no lineal. . . . . . . . . . . . . . . . 62
3.28. Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia decontrol utilizando cpbm y H∞ no lineal sin perturbaciones externas. . . . . 70
3.29. Evolucion temporal de la posicion cuando se aplica la estrategia de controlutilizando cpbm y H∞ no lineal sin perturbaciones externas. . . . . . . . . 70
3.30. Evolucion temporal de la orientacion cuando se aplica la estrategia de con-trol utilizando cpbm y H∞ no lineal sin perturbaciones externas. . . . . . 71
3.31. Evolucion temporal de las entradas de control cuando se aplica la estrategiade control utilizando cpbm y H∞ no lineal sin perturbaciones externas. . . 71
3.32. Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia decontrol utilizando cpbm y H∞ no lineal con perturbaciones externas. . . . 72
3.33. Evolucion temporal de la posicion cuando se aplica la estrategia de controlutilizando cpbm y H∞ no lineal con perturbaciones externas. . . . . . . . . 72
3.34. Evolucion temporal de la orientacion cuando se aplica la estrategia de con-trol utilizando cpbm y H∞ no lineal con perturbaciones externas. . . . . . 73
3.35. Evolucion temporal de las entradas de control cuando se aplica la estrategiade control utilizando cpbm y H∞ no lineal con perturbaciones externas. . . 73
3.36. Estructura de control robusto H∞ de los seis grados de libertad. . . . . . . 75
3.37. Formulacion General del problema de control (Ortega y Rubio, 2004). . . . 76
3.38. Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia decontrol robusto para los seis grados de libertad sin perturbaciones externas. 84
xvi Indice de figuras
3.39. Evolucion temporal de la posicion cuando se aplica la estrategia de controlrobusto para los seis grados de libertad sin perturbaciones externas. . . . . 85
3.40. Evolucion temporal de la orientacion cuando se aplica la estrategia de con-trol robusto para los seis grados de libertad sin perturbaciones externas. . . 85
3.41. Evolucion temporal de las entradas de control cuando se aplica la estrategiade control robusto para los seis grados de libertad sin perturbaciones externas. 86
3.42. Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia decontrol robusto para los seis grados de libertad con perturbaciones externas. 86
3.43. Evolucion temporal de la posicion cuando se aplica la estrategia de controlrobusto para los seis grados de libertad con perturbaciones externas. . . . . 87
3.44. Evolucion temporal de la orientacion cuando se aplica la estrategia de con-trol robusto para los seis grados de libertad con perturbaciones externas. . 87
3.45. Evolucion temporal de las entradas de control cuando se aplica la estrate-gia de control robusto para los seis grados de libertad con perturbacionesexternas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
4.1. Estructura de control del helicoptero quadrotor. . . . . . . . . . . . . . . . 89
4.2. Helicoptero Draganflyer V Ti Pro R/C. . . . . . . . . . . . . . . . . . . . . 90
4.3. Camara de vıdeo inalambrica ccd. . . . . . . . . . . . . . . . . . . . . . . 91
4.4. Electronica embebida en el helicoptero. . . . . . . . . . . . . . . . . . . . . 91
4.5. Unidad de medicion inercial Inertia-Linkr. . . . . . . . . . . . . . . . . . . 92
4.6. Pantalla principal del controlador del helicoptero en LabViewr. . . . . . . 95
4.7. Pantalla de la imu Inertia-Linkr. . . . . . . . . . . . . . . . . . . . . . . . 96
4.8. Pantalla del generador de tren de pulsos. . . . . . . . . . . . . . . . . . . . 97
4.9. Tren de pulsos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
4.10. Pantalla para determinar los valores de referencia y habilitar la estimacionde la posicion xyz. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
4.11. Control de orientacion para el helicoptero quadrotor. . . . . . . . . . . . . . 100
Indice de figuras xvii
4.12. Oscilaciones experimentales. . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4.13. Oscilaciones simuladas. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
4.14. Senales de control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.15. Orientacion del helicoptero quadrotor. . . . . . . . . . . . . . . . . . . . . . 103
xviii Indice de figuras
Indice de cuadros
2.1. Principales efectos fısicos actuantes sobre un helicoptero (Bouabdallah etal., 2004a). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
xx Indice de cuadros
Lista de Abreviaturas
CAS Control Augmentation SystemsCCD Charge Coupled DeviceCPBM Control Predictivo Basado en ModeloDOF Degrees Of FreedomDSP Digital Signal ProcessorFM Frequency ModulationGPC Generalized Predictive ControllerGPS Global Positioning SystemHJBI Hamilton-Jacobi-Bellman-IsaacsIMU Inertial Measurement UnitLMI Linear Matrix InequalityLQ Linear QuadraticLQI Link Quality IndicationMEMS Micro-Eletrical Mechanical SystemsMIMO Multiple Input Multiple OutputNCS Networked Control SystemPDE Partial Differential EquationPID Proporcional - Integral - DerivativoPD Proporcional - DerivativoR/C Remote ControlRSSI Receive Signal Strength IndicatorSAS Stability Augmentation SystemsSISO Single Input Single OutputUAV Unmanned Aerial VehicleVTOL Vertical Take-Off and Landing
xxii Lista de Abreviaturas
Lista de Sımbolos
Sımbolos
x vector de orden n compuesto de los elementos xi, i = 1 . . . n, x ∈ ℜn
xT vector traspuesto de xx derivada temporal de xx0 condicion inicial de xxref valor de referencia de la variable xx vector del error, x = x − xref
k instante de muestreoI matriz identidad de dimension apropiada
Notacion usada en los controladores
V (x) funcion de Lyapunov con respecto a la variable xHωz(s) funcion de transferencia entre la senal de entrada ω y la senal de
salida z‖Hωz(s)‖∞ norma H∞ de la funcion de transferencia Hωz(s)W matriz de ponderacion para el controlador H∞ no linealL2 ganancia de la norma L2
ω1 ponderacion del error de velocidad en el control H∞ no linealω2 ponderacion del error de posicion en el control H∞ no linealω3 ponderacion de la integral del error de posicion en el control H∞
no linealωu ponderacion del esfuerzo de control en el control H∞ no lineal‖x‖2
Q norma-2 de la variable x ponderada de Q, x′QxN1 inicio del horizonte de prediccion de los estadosN2 final del horizonte de prediccion de los estadosNu horizonte de controlN horizonte de prediccionQ matriz de ponderacion del error de los estadosR matriz de ponderacion del esfuerzo de controlJ funcion objetivo del cpbmy(k + j|k) valor de y en el instante k + j predicho en el instante kPx, Hx matrices de prediccion para el estadoP, H matrices de prediccion para la salida∆ operador diferencia, ∆ = 1 − z−1
xxiv Lista de Sımbolos
Notacion usada en el modelo
S(.) matriz anti-simetricaRI matriz de rotacion del cuerpo rıgido con respecto al sistema inercialRB matriz de rotacion expresada en el sistema de coordenadas
del cuerpo rıgidoI = (~x, ~y, ~z) sistema de coordenadas cartesianas inercialB = (~xL, ~yL, ~zL) sistema de coordenadas cartesianas locales del cuerpo rıgidoF vector de fuerzas de traslacion aplicadas al modeloFξ vector de fuerzas de traslacion aplicadas al modelo expresado
en el sistema de coordenadas globalesFd vector de perturbaciones de traslacion aplicadas al modeloτ vector de pares aplicados al modeloτη vector de pares de control aplicadas al modelo expresado
en el sistema de coordenadas globalesτd vector de perturbaciones de pares aplicadas al modeloL funcion lagrangianaEc energıa cinetica totalEp energıa potencial totalqi coordenada generalizadairj punto en el sistema de coordenadas j expresado en el sistema
de coordenadas iivj velocidad del punto jrj expresado en el sistema de coordenadas iWη Jacobiano expresado en coordenadas localesJ Jacobiano expresado en coordenadas globalesM(η) matriz de inercia del sub-sistema de rotacionC(η, η) matriz de los terminos de Coriolis y centrıpetos del sub-sistema
de rotacion
Capıtulo 1
Introduccion
1.1. Motivacion
Los sistemas de control de vuelo han despertado un gran interes en los ultimos anos,
debido al reto que supone tanto conseguir vehıculos aereos totalmente autonomos, o no
tripulados (en ingles nombrados uav’s - Unmanned Aerial Vehicles), como por poder
ayudar a un pilotaje mas sencillo e intuitivo de los mismos.
Este tipo de vehıculo puede verse tanto en el ambito militar como en el civil, con apli-
caciones desarrolladas para tareas de busqueda y rescate, vigilancia comercial, espionaje,
filmacion cinematografıa, inspeccion en situaciones donde se realicen vuelos en condiciones
hostiles (Pallet y Ahmad, 1991), ası como la realizacion de maniobras acrobaticas, entre
otras.
Hasta hace poco tiempo, desarrollar un vehıculo aereo en escala miniatura y controlado
de manera autonoma era un sueno de muchos investigadores, los cuales estaban limitados
por las restricciones impuestas por el hardware hasta entonces existente. Lo que hizo
posible la construccion de robots aereos autonomos fue los recientes avances tecnologicos
en actuadores y sensores en escala reducida (mems - Micro Electromechanical Systems),
ası como en el almacenamiento de energıa y en el procesamiento de datos.
Ademas, el desarrollo de sistemas de control para este tipo de vehıculos no es trivial,
debido principalmente a la dinamica tan compleja inherente en los sistemas aerodinamicos,
los cuales son multivariables, subactuados y ademas presentan diversas caracterısticas no
lineales. Esto significa que las leyes clasicas de control lineales y monovaribales pueden
tener muy limitada su cuenca de atraccion, provocando inestabilidades cuando se opera en
condiciones no muy lejanas a las de equilibrio. Por otra parte, las tecnicas desarrolladas
2 1 Introduccion
para robots totalmente actuados tampoco se aplican directamente al caso de sistemas
mecanicos no lineales subactuados (Fantoni y Lozano, 1995).
Para aumentar tanto la fiabilidad como las prestaciones de estos sistemas, se suele
requerir estrategias de control avanzadas que permitan tener en cuenta, por una parte,
la complejidad de estos sistemas, y por otra, las incertidumbres propias de cualquier
modelado. Tales requisitos pueden ser posibles utilizando tecnicas de modelado no lineal
y de teorıa de control no lineal moderna, lo que permite alcanzar un alto desempeno
en vuelos autonomos (Castillo et al., 2005), y en distintas condiciones de vuelo (vuelo
estacionario, vuelo en punto fijo, aterrizaje/despegue, ...).
Los objetivos de un sistema de control de vuelo pueden clasificarse en tres fases, en
funcion de la autonomıa que alcance el sistema:
Sistema para incrementar la estabilidad (del ingles sas: Stability Augmentation Sys-
tems): Este tipo de sistemas persigue ayudar al pilotaje del vehıculo, estabilizando
el sistema con un control de bajo nivel. Ası se evita que el piloto deba actuar en base
al comportamiento dinamico de un sistema, que una vez alejado de cierto punto de
equilibrio, deja de ser intuitivo para el razonamiento humano;
Sistemas para incrementar el comportamiento (del ingles cas: Control Augmenta-
tion Systems): Estos sistemas estan en un nivel jerarquico superior a los sas. Ası,
ademas de estabilizar al vehıculo, estos sistemas deben ser capaces de proporcio-
nar una respuesta con ciertas prestaciones a referencias que de el piloto, como por
ejemplo, el seguimiento del angulo de cabeceo;
Sistemas de pilotaje automatico (del ingles Autopilots): Constituyen el nivel de con-
trol jerarquicamente superior. Son sistemas de control totalmente automaticos que
son capaces de realizar por sı solos ciertos tipos de maniobras, como por ejemplo, el
despegue, el aterrizaje, o vuelo estacionario a cierta altura.
En el ambito del control de vuelo, uno de los sistemas mas estudiados han sido los
aviones. Sin embargo, uno de los conceptos que normalmente se utilizan para desarrollar
leyes de control aplicadas a un uav es el vtol (Vertical Take-Off and Landing). Un tipo
de aeronave que actualmente esta siendo muy referenciada en el ambito de control es el
helicoptero en la configuracion quadrotor. En comparacion con los aeroplanos, este tipo
de aeronave posee una mayor agilidad para maniobrar. Sin embargo, su control se hace
mucho mas complejo, entre otros motivos, por la mayor inestabilidad de su dinamica.
Segun Castillo et al. (2005), este tipo de helicoptero consigue un vuelo estacionario
estable y preciso a traves del balance de las fuerzas de propulsion ejercidas por las cuatro
helices accionadas por sus respectivos motores electricos.
1.1 Motivacion 3
Son muchas las ventajas que tienen este tipo de helicoptero con respecto a las de uno
convencional, entre ellas se pueden citar las siguientes:
El aumento de la capacidad de carga debido a la suma de los empujes generados
por los cuatro rotores;
La alta maniobrabibilidad, lo cual permite el despegue y el aterrizaje, ası como
vuelos en entornos complicados;
La sencillez del diseno mecanico, lo cual proporciona el control del movimiento
a traves de accionamiento directo de los rotores variando sus velocidades. En un
helicoptero convencional, la velocidad de giro de las helices suele ser constante,
controlando el movimiento mediante la variacion de los angulos de ataque de las
palas (cıclico y colectivo). Esto requiere transmisiones entre los rotores, ademas de
elementos mecanicos de precision para poder variar los mencionados angulos;
Los motores electricos en lugar de motores de combustion, lo cual hacen de estos
helicopteros un vehıculo especialmente interesante para su uso en el interior de
edificios, ya que no contaminan el aire con residuos de la combustion.
Como desventajas, este tipo de helicoptero presenta un aumento de peso y un aumento
en el consumo de energıa debido a los motores extras.
Desde el punto de vista de control, la construccion de este tipo de helicoptero miniatura
esta lejos de simplificar el problema: mas bien sucede lo contrario. Esto se debe a que los
pares y fuerzas necesarios para controlar el sistema son aplicados no solo a traves de
efectos aerodinamicos, sino tambien a traves del efecto de acoplamiento que aparece entre
la dinamica de los rotores y la del cuerpo de la maqueta, como consecuencia del principio
de accion-reaccion originado en la aceleracion y desaceleracion de los grupos motor-helice
(efecto que no sucede en el control con velocidad de helices constantes).
Estos efectos de acoplamiento tienen implicaciones en el control de la dinamica del
sistema. Por ejemplo, si se consideran como salidas a controlar la posicion y el angulo
de guinada, una linealizacion por realimentacion estatica de la dinamica completa del
helicoptero quadrotor da lugar a una matriz singular haciendo que el desacoplamiento
entrada-salida sea inviable, por lo que no se puede emplear esta tecnica directamente
(Mistler et al., 2001). Este hecho, unido con las incertidumbres de modelado, especialmente
en el rango de alta frecuencia, hace que el sistema sea incluso mas difıcil de controlar que
un helicoptero convencional, al menos empleando tecnicas basicas de control.
Ası que, el interes por el desarrollo de controladores para el helicoptero quadrotor en
escala reducida esta demostrado en diversas publicaciones que han sido realizadas en los
ultimos anos. En Mistler et al. (2001) se utilizo un modelo no lineal que representa tanto la
4 1 Introduccion
cinematica como la dinamica del vehıculo, y a traves de las Leyes de Newton se obtuvo las
ecuaciones dinamicas para el helicoptero quadrotor. En este modelo se considero las fuerzas
y momentos aerodinamicos actuantes en el uav. Para realizar la tarea de seguimiento
de trayectoria se demostro que no se pueden desacoplar las salidas por linealizacion por
realimentacion estatica, y se propuso un controlador con desacoplamiento entrada-salida y
linealizacion exacta por realimentacion dinamica, siendo corroborado mediante simulacion,
donde se han considerado todos los estados medibles. Esta estrategia se mostro estable y
robusta en presencia de viento y de incertidumbres parametricas.
En Bouabdallah et al. (2004a) se presento el diseno de un quadrotor para laboratorio,
ası como una estrategia de control para el mismo, basada en la estabilizacion del sub-
sistema de rotacion mediante funciones de Lyapunov, junto con un control de la altura
mediante linealizacion por realimentacion.
En Bouabdallah et al. (2004b), lo mismos autores presentaron un modelo dinamico
para el helicoptero quadrotor a traves de la formulacion de Lagrange-Euler, considerando
ademas las dinamicas de los rotores. En este artıculo se realizo una comparacion entre dos
tecnicas de control: pid y lq. Para el diseno del controlador pid se considero el modelo
linealizado en torno al origen y para el diseno del control LQ se uso una estructura bi-
lineal. Se presentaron resultados experimentales donde el control pid se mostro mas eficaz
que el control optimo por considerar las dinamicas de los rotores.
En Mederreg et al. (2004) se mostraron resultados de simulacion para un control ba-
sado en tecnicas de Backstepping utilizando un observador del estado, mientras que en
Mahony y Hamel (2004) se combino esta tecnica con un control basado en Lyapunov. En
Bouabdallah y Siegwart (2005) se describio de nuevo la misma plataforma utilizada en los
artıculos anteriores, pero en este, el modelo dinamico del helicoptero quadrotor se obtuvo
a traves del formalismo de Newton-Euler. Para el diseno del controlador, las ecuaciones
del sistema fueron escritas en variables de estado y divididas en dos sub-sistemas: el de
rotacion angular y el de traslacion lineal. Se presentaron dos tecnicas de control: Backs-
tepping y Sliding-Mode. En primer lugar se controlo el sub-sistema de rotacion angular
utilizando funciones de Lyapunov, con el objetivo de estabilizar el helicoptero en una po-
sicion deseada. Posteriormente se controlo la altura y el movimiento lineal en el plano xy.
Se emplearon simulaciones para sintonizar los controladores, los cuales se validaron con
resultados experimentales en el sistema real. Otros trabajos, como (Madani y Benellegue,
2006a,b), tambien han utilizado la tecnica de Backstepping para controlar el helicoptero
quadrotor.
Trabajos mas recientes pueden encontrarse en Rong y Ozguner (2006), donde se sinteti-
zo un controlador basado en modos deslizantes; en Lara et al. (2006), donde se presentaron
nuevos resultados para calcular los margenes de robustez del sistema de control para un
quadrotor utilizando un pd multivariable para estabilizar la posicion del vehıculo; o en
Castillo et al. (2005, 2007), donde se disenaron controladores no lineales para la esta-
1.1 Motivacion 5
bilizacion del sistema basados en analisis de Lyapunov y en la tecnica de saturaciones
anidadas.
Adicionalmente al control inercial, el helicoptero quadrotor ha sido tambien controlado
mediante realimentacion por vision artifical. En Metni et al. (2005), se considera un mo-
delo dinamico mecanico general del uav apto para realizar vuelos casi estacionarios. La
estimacion de la posicion y orientacion se realizo a traves de vision utilizando una tecnica
de control servo visual basada en homografıas. Ası, se dedujo una ley de control basada
en Backstepping que fuerza la trayectoria a seguir a traves de una secuencia de imagenes
pre-grabadas en entornos desconocidos. La trayectoria deseada se obtiene a traves de un
operador que ensena cada paso preliminarmente, siendo comparadas la imagen actual y la
imagen deseada a una imagen de referencia por las matrices homograficas en cada paso.
Para determinar el vector de traslacion se estima la informacion de la profundidad de
referencia usando una ley de control adaptativa. En Altug et al. (2002) y Tournier et al.
(2006) se ha utilizado una camara en tierra para obtener la posicion y orientacion del
helicoptero, y una camara montada sobre el vehıculo utilizando patrones de Moire para
obtener una estimacion de los seis grados de libertad, respectivamente.
Como se deduce de lo anteriormente expuesto, se han aplicado diversas estrategias de
control al helicoptero quadrotor. Sin embargo, la mayorıa de ellas no considera la presencia
de perturbaciones externas y ni incertidumbres en los parametros del modelo.
Por lo tanto, una de las propuestas de este trabajo es utilizar la teorıa de control H∞,
introducida por van der Schaft en su prominente artıculo (van der Schaft, 1992), para
mejorar el desempeno del sistema frente a perturbaciones e incertidumbres (Ortega et al.,
2005).
El objetivo de la teorıa de control H∞ es limitar (minimizar) la relacion entre la energıa
de la senal de error y la energıa de la senal de perturbacion. En un planteamiento general,
la tecnica no lineal para esta teorıa considera dos ecuaciones en derivadas parciales de
Hamilton-Jacobi-Bellman-Isaacs (HJBI PDEs), las cuales sustituyen a las ecuaciones de
Riccati en el caso de la formulacion del control H∞ lineal. El principal problema en el
caso no lineal es que no existe un metodo general para resolver estas ecuaciones (HJBI
PDEs).
En Ortega et al. (2005) se propuso una estrategia para sistemas mecanicos conside-
rando la ecuacion dinamica del error. En tal estrategia se aplica un control H∞ no lineal
formulado vıa teorıa de juegos, la cual provee, a traves de una solucion analıtica, una
ganancia constante similar a los resultados obtenidos con procedimientos de linealizacion
por realimentacion.
El helicoptero quadrotor ha sido controlado usando controladores H∞ lineales basa-
dos en modelos linealizados. En Chen y Huzmezan (2003), por ejemplo, se presento un
6 1 Introduccion
modelo no lineal simplificado para el movimiento del UAV. El problema de seguimiento
de trayectoria se dividio en dos partes: en primer lugar se busco la estabilizacion de las
velocidades angulares y de la velocidad vertical a traves de un controlador H∞ de 2DOF
utilizando la tecnica de loop shaping. La misma tecnica se ha utilizado para controlar, en
un bucle externo a este, las velocidades longitudinal y lateral, el angulo de guinada y la
altura. Para resolver el problema de seguimiento se diseno un cpbm (Control Predictivo
Basado en Modelo) lineal basado en un modelo que agrega los bucles internos y el modelo
del helicoptero.
En Park et al. (2005) se utilizo un algoritmo de compensacion de la dinamica para el
control del sistema, y en Mokhtari et al. (2005) se presentaron resultados de simulacion
con la aplicacion de una linealizacion por realimentacion junto con un controlador H∞
lineal externo.
Ademas de las incertidumbres parametricas y posibles perturbaciones que afectan el
sistema, muchas de estas aplicaciones de control asumen que los valores calculados nunca
alcanzaran los limites de saturacion de los actuadores, aunque en la practica esto no es
verdad. Por lo tanto, el cpbm viene a ser un metodo de control que presenta caracterısticas
muy interesantes cuando se trata de controlar sistemas mecanicos y para realizar segui-
miento de trayectoria. Por ejemplo, cuando el vehıculo esta muy lejos de su destino, las
senales de control generadas son normalmente mas altas que las admisibles. Sin embargo,
los vehıculos estan dotados de partes mecanicas y electronicas, las cuales estan sujetas a
limitaciones fısicas del sistema.
Ası, cuando las restricciones pueden ser consideradas, los algoritmos de cpbm se pre-
sentan como una interesante eleccion. El cpbm calcula acciones de control para un de-
terminado horizonte de tiempo futuro, de tal manera que la prediccion de la salida de la
planta siga cerca de la referencia, minimizando una determinada funcion de coste mul-
tiobjetivo respecto a determinadas variables de decision y considerando un conjunto de
restricciones (Camacho y Bordons, 1998). Para hacer esto, los valores de las salidas pre-
dichas son calculadas como una funcion de valores pasados de las entradas y salidas, y de
senales de control futuras, haciendo uso de un modelo explıcito del proceso y sustituyendo
en la funcion de coste, obteniendo una expresion cuya minimizacion conduce a los valores
deseados. Se puede obtener una solucion analıtica para una funcion de coste cuadratica,
si el modelo es lineal y no existen restricciones; en caso contrario se deben usar metodos
iterativos de optimizacion (Camacho y Bordons, 1998).
Debido a su formulacion, el cpbm tambien permite el uso de referencias previamente
conocidas para el calculo de la ley de control (Normey-Rico et al., 1999). Dado que las
trayectorias son normalmente conocidas y usando una adecuada instrumentacion en el
vehıculo que informe sobre su desplazamiento y localizacion, o bien con informacion del
entorno donde se encuentra (usando, por ejemplo, gps, mapas digitales, etc), el controla-
dor predictivo se presenta como una tecnica muy apropiada para esta tarea. Ademas de
1.2 Objetivos 7
conducir el vehıculo suavemente, esta tecnica permite mejorar la autonomıa del mismo,
aparte de de ser facilmente extendido a sistemas multivariables. Como desventaja se puede
considerar el elevado coste computacional introducido, que puede hacer que sea imposible
realizar aplicaciones reales.
En este trabajo, ademas de presentar diversos algoritmos de control propuestos en la
literatura, se desarrollaran tres estrategias de control para seguimiento de trayectoria del
helicoptero quadrotor. Las estrategias seran presentadas en un orden de comprehension
del sistema a ser controlado y mejorıa de las prestaciones propuestas. Ası, en la primera
estructura desarrollada por el autor se utiliza una ley de control basada en Backstepping
para los movimientos de traslacion y un controlador H∞ no lineal para estabilizacion
de los movimientos de rotacion. En la segunda estrategia se realiza el seguimiento de
referencia a traves de un controlador predictivo basado en el modelo de error obtenido
vıa linealizaciones sucesivas, y la estabilizacion se realiza a traves del controlador H∞ no
lineal. Para finalizar, en la tercera estructura se ha disenado un controlador robusto para
los movimientos de de traslacion vıa sıntesis de control H∞ con realimentacion de estados
usando lmis. Para la estabilizacion del helicoptero quadrotor se mantuvo el controlador
H∞ no lineal.
1.2. Objetivos
Este trabajo tiene como objetivo principal el desarrollo e implementacion de algoritmos
de control robusto y predictivo para resolver el problema de seguimiento de trayectoria de
un vehıculo aereo autonomo. El uav que sera utilizado es un helicoptero de cuatro rotores
en escala reducida.
Inicialmente, se realizara un estudio de modelos basados en leyes fısicas del helicoptero
quadrotor propuestos en la literatura, con la finalidad de obtener un modelo que represente
el comportamiento del vehıculo en presencia de diversas formas de perturbaciones y que
sea adecuado al prototipo utilizado en este trabajo.
A partir de estos modelos, se desarrollaran tecnicas de control de forma que se garantice
la robustez en el problema de seguimiento de trayectoria que ha de realizar el helicoptero
quadrotor.
Los resultados de simulacion seran utilizados para realizar pruebas comparativas entre
las distintas estrategias de control desarrolladas en este trabajo y tecnicas de control
propuestas en la literatura.
Finalmente, una vez desarrolladas las estrategias de control, estas seran implementadas
8 1 Introduccion
en el helicoptero quadrotor utilizando un sistema de control remoto, donde un ordenador
en tierra se comunica con la aeronave vıa comunicacion inalambrica.
1.3. Organizacion del trabajo
Este trabajo esta dividido como sigue:
En el Capıtulo 2 se describe el helicoptero quadrotor, comentando algunas caracterıs-
ticas de funcionamiento, y luego se realiza el modelado de un helicoptero miniatura
en la configuracion de cuatro rotores. Inicialmente, se presenta la matriz de rota-
cion del vehıculo, ası como sus ecuaciones cinematicas. Despues, se presentaran las
ecuaciones dinamicas para los movimientos de rotacion y traslacion a traves de dos
formulaciones matematicas: Newton-Euler y Lagrange-Euler. Tales modelos seran
presentados tambien en formas adecuadas para el diseno de los controladores.
El Capıtulo 3 presenta cinco estructuras de control para resolver el problema de
seguimiento de trayectorias. Primero se describe una estrategia basada en el des-
acoplamiento entrada-salida con linealizacion por realimentacion dinamica. Despues
se desarrollara una estrategia basada en la tecnica de Backstepping. La estrate-
gia siguiente utiliza la estructura de Backstepping para el control de la traslacion,
mientras que para la estabilizacion del sub-sistema de rotacion se desarrolla una
estructura de control H∞ no lineal. La cuarta y quinta estructuras de control uti-
lizan el controlador H∞ no lineal para estabilizacion del helicoptero, mientras para
seguimiento de trayectorias se desarrollan una ley de control predictivo basado en
el modelo de error con linealizaciones sucesivas, y una ley de control H∞ lineal
vıa LMIs, suponiendo los estados del sub-sistema de rotacion parametros inciertos.
Cada estrategia de control se corrobora a traves de resultados de simulacion, mien-
tras los resultados experimentales son presentados solo para los controladores de
estabilizacion del sistema.
En el Capıtulo 4 se presenta el equipo utilizado, describiendo las caracterısticas
del helicoptero, las instrumentacion utilizada, ası como los programas desarrollados
para controlar el uav de forma remota, y resultados preliminares obtenidos experi-
mentalmente .
El Capıtulo 5 finaliza con las conclusiones del trabajo y las perspectivas futuras de
investigacion.
Capıtulo 2
Descripcion y Modelado delHelicoptero QuadRotor
2.1. Descripcion del UAV
El vehıculo aereo utilizado en este trabajo es un helicoptero en miniatura en la confi-
guracion de cuatro rotores coplanarios (quadrotor), como presentado en la Figura 2.1. El
movimiento del uav se origina a partir de los cambios de velocidad de los rotores. Cada
rotor consta de un motor electrico de corriente continua, un mecanismo de engranaje y un
rotor de palas. Para lograr movimiento hacia adelante la velocidad del rotor trasero debe
ser aumentada y, simultaneamente, la velocidad del rotor delantero debe ser disminuida.
El desplazamiento lateral se ejecuta con el mismo procedimiento, pero usando los roto-
res de la derecha y de la izquierda. El movimiento de guinada (yaw) se obtiene a partir
de la diferencia en el par de torsion entre cada par de rotores, o sea, se acelera los dos
rotores con sentido horario mientras se desacelera los rotores con sentido anti-horario, y
vice-versa.
F 1
F 4
F 2
F 3
U 4
U 1
U 3 U 2
Figura 2.1: Esquema de funcionamiento del helicoptero quadrotor.
10 2 Descripcion y Modelado del Helicoptero QuadRotor
2.2. Modelado del UAV
En esta seccion se desarrollara el modelado basado en leyes fısicas que describan la
posicion y orientacion del helicoptero quadrotor. El modelo dinamico del helicoptero se
presenta bajo dos formulaciones matematicas: la de Newton-Euler y la de Lagrange-Euler.
Para obtener tal modelo dinamico se supone el vehıculo como un cuerpo rıgido en el
espacio, sujeto a una fuerza principal (empuje) y tres momentos (pares). En la figura 2.2
se muestra las fuerzas que ejercen las distintas helices para generar el movimiento del
vehıculo.
ψ
φ
θ
ξ
z
y
x
Lx
Ly Lz
Figura 2.2: Esquema del helicoptero quadrotor.
El par para generar un movimiento de balanceo o de roll (angulo φ) se realiza mediante
un desequilibrio entre las fuerzas f2 y f4 (ver figura 2.2). Para el movimiento de cabeceo
o de pitch (angulo θ), el desequilibrio se realizara entre las fuerzas f1 y f3. El movimiento
en el angulo de guinada o de yaw (angulo ψ) se realizara por el desequilibrio ente los
conjuntos de fuerzas (f1, f3) y (f2, f4). Este movimiento sera posible ya que los rotores 1 y
3 giran en sentido contrario a los rotores 2 y 4. Finalmente, el empuje total, que hara que
el helicoptero se desplace perpendicularmente al plano de los rotores, se obtendra como
suma de las cuatro fuerzas que ejercen los rotores.
Estos tipos de vehıculos son sistemas de vuelo de estructura ligera, por lo que el modelo
dinamico debe incluir los efectos giroscopicos resultantes tanto del cuerpo rıgido rotando
en el espacio, como de la rotacion de las cuatro helices (Bouabdallah et al., 2004a). En
la Tabla 2.1 se describen tales efectos, donde C representan terminos constantes, Ω es la
velocidad del rotor, JR es el momento de inercia rotacional del rotor alrededor de su eje,
l es la distancia del centro de masa a los rotores, J es el momento de inercia del cuerpo
rıgido y φ, θ y ψ son los angulos de Tait-Bryan.
2.3 Orientacion del helicoptero 11
Cuadro 2.1: Principales efectos fısicos actuantes sobre un helicoptero (Bouabdallah et al.,
2004a).
Efectos Fuentes Formulacion
Efectos Aerodinamicos - Rotacion de los rotores
- Giro de helices CΩ2
Pares Inerciales Opuestos - Cambio en la velocidad rotacion de
los rotores JRΩ
Efectos de la Gravedad - Posicion del centro de masa l
Efectos Giroscopicos - Cambio en la orientacion del cuerpo
rıgido Jθψ
- Cambio en la orientacion del plano
de los rotores JRΩθ, φ
Friccion - Todos los movimientos del helicoptero Cφ, θ, ψ
Por otra parte, un helicoptero es un sistema mecanico subactuado con 6 grados de
libertad y solamente 4 entradas de control. Debido a las diversas complejidades presen-
tadas, se realizaran algunas consideraciones para desarrollar el modelado, tal como se
sugiere en Koo y Sastry (1999). Ası, se despreciaran los efectos de los momentos causados
por el cuerpo rıgido sobre las dinamicas traslacionales, ası como el efecto suelo. El centro
de masa se asume coincidente con el origen del sistema de coordenadas fijo al helicoptero,
y se supone que la estructura del helicoptero es simetrica, lo que resulta en la matriz de
inercia diagonal.
2.3. Orientacion del helicoptero
Antes de obtener el modelo dinamico del helicoptero, se presentara como estimar la
posicion y orientacion del vehıculo con respecto a un sistema de coordenadas de referencia
inercial.
El helicoptero, como solido rıgido, esta caracterizado por un sistema de coordenadas
ligado a el y con origen en su centro de masa (ver Figura 2.2). Este sistema se define
considerando B = ~xL, ~yL, ~zL como el sistema de coordenadas fijo al helicoptero, donde
el eje ~xL es la direccion normal de ataque del helicoptero, ~yL es ortogonal a ~xL y es
positivo hacia estribor en el plano horizontal, mientras que ~zL esta orientado en sentido
ascendiente y ortogonal al plano ~xLO~yL. El sistema de coordenadas inercial I = ~x, ~y, ~z
12 2 Descripcion y Modelado del Helicoptero QuadRotor
se considerara fijo con respecto a la tierra.
En este trabajo se designara el vector ξ = x, y, z como la posicion del centro de masa
del helicoptero con respecto al sistema inercial I. Ası mismo, la orientacion del vehıculo
se supondra dada por una matriz de rotacion RI : B → I, donde RI ∈ SO(3) es una
matriz de rotacion ortonormal (Fantoni y Lozano, 1995).
La rotacion de un UAV o, en lıneas mas generales, la de un cuerpo rıgido puede ser
obtenida utilizando diversos metodos como, por ejemplo: angulos de Euler, cuaternios, etc.
A traves de 12 definiciones independientes de los angulos de Euler se puede representar la
orientacion relativa de dos sistemas de coordenadas. Los mas populares son la convencion-
x (giro alrededor de z, x′, z′′), convencion-y (giro alrededor de z, y′, z′′) y convencion-xyz
(giro alrededor de x, y′, z′′). Esta ultima convencion es muy utilizada para aplicaciones
de ingenierıa aeroespacial y se nombra angulos de Tait-Bryan, tambien conocidos por
“angulos Cardano” (Space y Spazio, 1997; Dziugys y Peters, 2001; Bouabdallah et al.,
2006).
Por lo tanto, los angulos de Tait-Bryan son tres angulos usados para describir una
rotacion general en el espacio Euclideo tridimensional a traves de tres rotaciones sucesivas
en torno de ejes del sistema movil en el cual estan definidos. Ası, en este trabajo se usaran
los angulos de Tait-Bryan para describir la orientacion de un helicoptero.
Ası, la configuracion de la rotacion de un cuerpo rıgido en el espacio es realizada a
traves de tres rotaciones sucesivas:
1. Rotacion segun ~x de φ: el primer giro es el correspondiente al angulo de roll o de
balanceo, φ, y se realiza alrededor del eje ~x.
x1
y1
z1
=
1 0 00 cosφ − sinφ0 sin φ cosφ
xLyLzL
(2.1)
2. Rotacion segun ~y de θ: el segundo giro se realiza alrededor del eje ~y a partir del
nuevo eje ~yL, con el angulo pitch o angulo de cabeceo, θ para dejar el eje ~zL en su
posicion final.
x2
y2
z2
=
cosθ 0 sin θ0 1 0
−sinθ 0 cos θ
x1
y1
z1
(2.2)
3. Rotacion segun ~z de ψ: el tercer giro y ultima rotacion corresponde al angulo de gui-
nada o yaw, ψ, alrededor del eje ~z a partir del nuevo eje ~zL para llevar el helicoptero
a su posicion final.
xyz
=
cosψ −sinψ 0sinψ cosψ 0
0 0 1
x2
y2
z2
(2.3)
2.3 Orientacion del helicoptero 13
Esta representacion sufre de una singularidad en θ = ±pi/2. Sin embargo, en φ y ψ se
permite un giro de 360. La Figura 2.3 representa las tres rotaciones.
Z
y
Z
Y1
1
Y
z
φψ
φ
ψ
θ
θ
centro de masa
X X2x
θ
ψ
φ
Figura 2.3: Rotacion de los angulos de Tait-Bryan del sistema de coordenadas inercial al
sistema de coordenadas fijado al helicoptero (Space y Spazio, 1997).
A partir de las rotaciones presentadas anteriormente, se definen las matrices de rotacion
que representan la orientacion del cuerpo rıgido rotando alrededor de cada eje como sigue:
R (x, φ) =
1 0 00 cos φ −senφ0 senφ cosφ
, R (y, θ) =
cos θ 0 senθ0 1 0
−senθ 0 cos θ
,
R (z, ψ) =
cosψ −senψ 0senψ cosψ 0
0 0 1
(2.4)
La matriz de rotacion completa de B respecto a I, llamada Matriz Coseno Directa,
viene dada por (Bouabdallah et al., 2006):
RI = R (z, ψ) · R (y, θ) ·R (x, φ)
RI =
cosψ −senψ 0senψ cosψ 0
0 0 1
·
cos θ 0 senθ0 1 0
−senθ 0 cos θ
·
1 0 00 cosφ −senφ0 senφ cosφ
RI =
cosψ cos θ cosψsenθsenφ− senψcosφ cosψsenθcosφ+senψsenφsenψ cos θ senψsenθsenφ+ cosψcosφ senψsenθcosφ− cosψsenφ−senθ cos θsenφ cos θcosφ
(2.5)
14 2 Descripcion y Modelado del Helicoptero QuadRotor
La matriz de rotacion expresada en el sistema de coordenadas B es la traspuesta de
RI , debido su propiedad de ortonormalidad, y viene dada por:
RB =
cosψ cos θ senψ cos θ −senθcosψsenθsenφ− senψcosφ senψsenθsenφ+ cosψcosφ cos θsenφcosψsenθcosφ+senψsenφ senψsenθcosφ− cosψsenφ cos θcosφ
A partir de la matriz de rotacion (2.5) generada por las tres rotaciones sucesivas y su
propiedad de ortonormalidad, relacionando la derivada de la matriz ortonormal con una
cierta matriz anti-simetrica (Craig, 1989), se puede obtener las ecuaciones cinematicas de
rotacion del vehıculo que establecen las relaciones entre las velocidades angulares.
Sea una matriz ortonormal R, donde:
RTR = In (2.6)
y su derivada en el tiempo es:
RTR + RT R = 0n (2.7)
Definiendo:
S = RT R (2.8)
se obtiene a partir de (2.7) que:
ST + S = 0n (2.9)
donde S una matriz anti-simetrica. La relacion entre la derivada de la matriz ortonormal
y la matriz anti-simetrica es la siguiente:
S = R−1R (2.10)
Por lo tanto, las ecuaciones cinematicas para determinar la postura del helicoptero,
suponiendo la matriz de rotacion (2.5), vienen dadas por:
RI = RI · S(ω) (2.11)
donde ω = [p q r]T son las velocidades angulares en el sistema de coordenadas fijado al
cuerpo rıgido y S(ω) (S(ω)(·) = ω× ·) es la siguiente matriz anti-simetrica (Olfati-Saber,
2001):
S(ω) =
0 −r qr 0 −p−q p 0
(2.12)
Ası, manipulando matematicamente la ecuacion (2.11) se obtiene la siguiente relacion:
φ
θ
ψ
=
1 sinφ tan θ cosφ tan θ0 cosφ − sinφ0 sinφ sec θ cos φ sec θ
pqr
(2.13)
2.4 Formulacion de Newton-Euler 15
La variacion de los angulos de Tait-Bryan (φ, θ, ψ) es una funcion discontinua. Estas
derivadas son distintas de las velocidades angulares en el sistema de coordenadas del
cuerpo rıgido (p, q, r) las cuales son fısicamente medibles con giroscopos, por ejemplo.
Normalmente, se utilizan Unidades de Medicion Inercial (en ingles: Inertial Measurement
Unit - imu) para medir las rotaciones y calcular directamente los angulos de Tait-Bryan
(Bouabdallah et al., 2006).
La relacion entre las velocidades angulares en el sistema fijado al cuerpo y la variacion
en el tiempo de los angulos de Tait-Bryan se obtiene a traves de la inversion del Jacobiano
de (2.13), y viene dada por:
pqr
=
1 0 − sin θ0 cosφ sin φ cos θ0 − sinφ cosφ cos θ
φ
θ
ψ
(2.14)
El movimiento rotacional del helicoptero viene dado por las componentes de las velo-
cidades angulares en los tres ejes: velocidad angular de balanceo (p), velocidad angular
de cabeceo (q), y velocidad angular de guinada (r), sobre los ejes ~xL, ~yL y ~zL respectiva-
mente. Estas velocidades rotacionales son debidas a los pares ejercidos sobre el sistema
ligado al cuerpo del helicoptero producidas por las fuerzas externas, las cuales definen los
diferentes momentos en los tres ejes: momento de balanceo (L), momento de cabeceo (M),
y momento de guinada (N) sobre los ejes ~xL, ~yL y ~zL respectivamente (Esteban, 2005).
El movimiento de traslacion viene dado por las componentes de la velocidad v =
[u0 v0 w0]T en los tres ejes inerciales con relacion a la velocidad absoluta del helicoptero
expresada en B, V = [uL vL wL]T . Las velocidades v y V estan relacionadas por la
expresion:
v = RI · V (2.15)
2.4. Formulacion de Newton-Euler
En esta seccion se obtendran las ecuaciones dinamicas del helicoptero mediante la
formulacion de Newton-Euler.
Las ecuaciones dinamicas de un cuerpo rıgido sujeto a fuerzas externas aplicadas al
centro de masa y expresadas en el sistema de coordenadas ligado al cuerpo se pueden
obtener a traves de la formulacion de Newton-Euler como sigue:
[
mI3×3 00 J
] [
Vω
]
+
[
ω ×mVω × Jω
]
=
[
F + Fd
τ + τd
]
(2.16)
16 2 Descripcion y Modelado del Helicoptero QuadRotor
donde J ∈ ℜ3×3 es la matriz de inercia, I3×3 ∈ ℜ3×3 es la matriz identidad, V es el vector
velocidad traslacional (en B), ω es el vector velocidad angular (en B) y m es la masa total
del helicoptero.
De acuerdo con la suposiciones realizadas al inicio del capıtulo, la matriz de inercia de
puede suponer diagonal:
J =
Ixx 0 00 Iyy 00 0 Izz
(2.17)
Considerando el vector de estado[
ξ v η ω]T
donde ξ y v ∈ ℜ3 representan
respectivamente la posicion y velocidad lineal expresadas en I, η = [φ θ ψ] y ω ∈ ℜ3
la velocidad angular expresada en B, se pueden escribir las ecuaciones de movimiento de
un cuerpo rıgido como sigue:
ξ = vmv = RIFb
RI = RIS(ω)Jω = −ω × Jω + τb
(2.18)
donde ξ = v = RIV y S(ω) = RTI RI .
Tal como se expuso en la introduccion del capıtulo, el helicoptero quadrotor es un
sistema mecanico subactuado con 6 grados de libertad y solo 4 actuadores (la fuerza
principal y los tres momentos actuantes sobre el producidos por las cuatro helices).
Por otra parte, Fb ∈ B y τb ∈ B son las fuerzas y pares externos aplicados al cuerpo
del helicoptero, y consisten en su propio peso, en el vector de fuerzas aerodinamicas, en el
empuje y en los pares desarrollados por los cuatro motores. Estas fuerzas y pares pueden
ser expresados de la siguiente forma:
RIFb = −mg · E3 + RIE3
(
4∑
i=1
bΩ2i
)
+ AT
τb = −4∑
i=1
JR (ω × E3) · Ωi + τa + AR
(2.19)
Con las ecuaciones de fuerzas y pares (2.19), el modelo dinamico (2.18) se puede
reescribir como sigue:
ξ = v
v = −g ·E3 + RIE3
b
m
(
4∑
i=1
Ω2i
)
+AT
m
RI = RIS(ω)
Jω = −ω × Jω −4∑
i=1
JR (ω × E3) · Ωi + τa + AR
(2.20)
donde:
2.4 Formulacion de Newton-Euler 17
Los vectores AT = [Ax Ay Az]T y AR = [Ap Aq Ar]
T son las fuerzas y pares
aerodinamicos que actuan sobre el helicoptero, y son calculados a partir de los
coeficientes aerodinamicos Ci como Ai = 12ρaireCiW
2 (ρaire es la densidad del aire,
W es la velocidad del helicoptero con respecto al aire) (Mistler et al., 2001).
g es la constante gravitacional (g = 9,81m/s2).
JR es el momento de inercia rotacional del rotor alrededor de su eje.
b es el coeficiente de empuje aplicado por los rotores.
Ωi es la velocidad angular del i -enesimo rotor.
El sumatorio de fuerzas traslacionales que actuan sobre el helicoptero, tal como se
presenta en la ecuacion (2.19), esta compuesto por el empuje total generado por la suma
de los cuatro rotores, por la fuerza gravitacional y por la fuerza aerodinamica. La fuerza
principal U1, o entrada principal de control, aplicada al helicoptero viene dada por (Castillo
et al., 2005):
U1 =
(
4∑
i=1
fi
)
=
(
4∑
i=1
bΩ2i
)
(2.21)
donde fi es la fuerza de empuje generada por cada rotor.
El par τa en la ecuacion (2.19) es el vector de pares de control aplicados al helicoptero.
Este se obtiene a traves del esfuerzo de torsion τMigenerado por cada motor electrico
considerando la dinamica de cada disco del motor como un sistema desacoplado en la
variable generalizada Ωi, que denota la velocidad angular de un motor alrededor de su
eje. El esfuerzo de tension del motor es opuesto a la friccion aerodinamica del motor
τdrag = kτΩ2i , donde kτ > 0 es una constante. Ası, a traves de la segunda Ley de Newton
se obtiene (Castillo et al., 2005):
JRΩi = −τdrag + τMi(2.22)
Cuando Ωi = 0 se tiene que:
τMi= τdrag = kτΩ
2i (2.23)
El momento aplicado en el cuerpo rıgido a lo largo de un eje es la diferencia entre el
momento generado por cada motor en el otro eje. Como ya ha sido comentado anterior-
mente, el movimiento de cabeceo (pitch) se obtiene debido a la diferencia de empuje entre
el rotor frontal y el rotor trasero, mientras el movimiento de balanceo (roll) se obtiene
mediante la diferencia de empuje entre el rotor de la izquierda y el rotor de la derecha. El
movimiento de guinada (yaw) se obtiene por la diferencia de pares entre los dos rotores
que giran en sentido horario y los dos rotores que giran en sentido anti-horario. Estos
18 2 Descripcion y Modelado del Helicoptero QuadRotor
movimientos deben ser logrados con la fuerza principal constante (Castillo et al., 2005).
Ası, el par de control aplicado en los tres ejes viene dado por:
τa =
(f2 − f4) l(f3 − f1) l
4∑
i=1
τMi
=
lb (Ω22 − Ω2
4)lb (Ω2
3 − Ω21)
kτ (Ω21 + Ω2
3 − Ω22 − Ω2
4)
l · U2
l · U3
U4
(2.24)
donde l es la distancia entre los motores y el centro de gravedad.
Cada motor se puede considerar como un disco rıgido rotando alrededor de su eje ~z
con una velocidad Ωi. El eje de rotacion del motor se mueve con la velocidad angular del
eje de referencia, lo cual produce los siguientes movimientos giroscopicos:
τGa= −
4∑
i=1
JR (ω × E3) · Ωi (2.25)
donde JR es el momento de inercia del motor alrededor de su eje.
Ası, usando la ecuaciones (2.14), (2.15), (2.21) y (2.24), y definiendo el nuevo vector
de estados como (Mistler et al., 2001):
ζ = [x y z u0 v0 w0 φ θ ψ p q r ]T (2.26)
la ecuacion del movimiento (2.20) se puede reescribir en la siguiente forma:
ζ =
x = u0
y = v0
z = w0
u0 =1
m(cosψ sin θ cosφ+ sinψ sinφ) · U1 +
Ax
m
v0 =1
m(sinψ sin θ cosφ− cosψ sinφ) · U1 +
Ay
m
w0 = −g +1
m(cos θ cosφ) · U1 +
Az
m
φ = p+ q sinφ tan θ + r cosφ tan θ
θ = q cosφ− r sinφ
ψ = q sinφ sec θ + r cosφ sec θ
p =(Iyy − Izz)
Ixxqr − JRΩ
Ixxq +
l
IxxU2 +
Ap
Ixx
q =(Izz − Ixx)
Iyypr +
JRΩ
Iyyp+
l
IyyU3 +
Aq
Iyy
r =(Ixx − Iyy)
Izzpq +
1
IzzU4 +
Ar
Izz
(2.27)
La ecuacion diferencial no lineal (2.27) se puede escribir en una forma mas compacta,
como:
ζ = f (ζ) +4∑
i=1
gi (ζ)Ui (2.28)
2.4 Formulacion de Newton-Euler 19
donde:
f (ζ) =
u0
v0
w0
Ax
mAy
m
−g +Az
m
p+ q sinφ tan θ + r cosφ tan θ
q cosφ− r sinφ
q sinφ sec θ + r cosφ sec θ
(Iyy − Izz)
Ixxqr − JRΩ
Ixxq +
Ap
Ixx(Izz − Ixx)
Iyypr +
JRΩ
Iyyp+
Aq
Iyy(Ixx − Iyy)
Izzpq +
Ar
Izz
,
g1 (ζ) =[
0 0 0 g41 g5
1 g61 0 0 0 0 0 0
]T
g2 (ζ) =
[
0 0 0 0 0 0 0 0 0l
Ixx0 0
]T
g3 (ζ) =
[
0 0 0 0 0 0 0 0 0 0l
Iyy0
]T
g4 (ζ) =
[
0 0 0 0 0 0 0 0 0 0 01
Izz
]T
con
g41 =
1
m(cosψ sin θ cos φ+ sinψ sin φ)
g51 =
1
m(sinψ sin θ cosφ− cosψ sinφ)
g61 =
1
m(cos θ cos φ)
El modelo matematico (2.28) puede asumirse como suficientemente preciso en la re-
presentacion de todos movimientos funcionales de un vehıculo aereo autonomo (Mistler
et al., 2001). Sin embargo, no es adecuado para diseno de control porque este depende de
fuerzas y momentos aerodinamicos, los cuales son desconocidos en la presencia de vien-
tos y turbulencias imprevisibles, y de efectos giroscopicos que se consideran desconocidos
debido a que no se tiene acceso a las velocidades de los motores. En consecuencia, estos
terminos seran despreciados durante la fase de diseno de control y seran considerados
como perturbaciones externas.
20 2 Descripcion y Modelado del Helicoptero QuadRotor
2.5. Formulacion de Lagrange-Euler
Las ecuaciones de movimiento del helicoptero se pueden expresar mediante la aplica-
cion directa de la formulacion de Lagrange-Euler, la cual esta basada en el concepto de
energıa mecanica (cinetica y potencial):
Γi =d
dt
(
∂L
∂qi
)
− ∂L
∂qi(2.29)
L = Ec −Ep
donde:
L es la funcion lagrangiana
Ec es la energıa cinetica total
Ep es la energıa potencial total
qi es la coordenada generalizada
qi es la primera derivada respecto al tiempo de la coordenada generalizada
Γi son las fuerzas/pares generalizados dados por fuerzas/pares no conservativos
Para desarrollar las ecuaciones de Lagrange-Euler, se vuelve a considerar el sistema
de coordenadas inercial I = [~x ~y ~z] y el sistema de coordenadas ligado al helicoptero
B = [~xL ~yL ~zL].
Para un cuerpo rıgido evolucionando en el espacio tridimensional, las coordenadas
generalizadas se pueden escribirse como (Castillo et al., 2007):
q = [x y z φ θ ψ]T ∈ ℜ6
donde ξ = [x y z]T ∈ ℜ3 es la posicion del centro de masa del helicoptero expresada
en I, y η = [φ θ ψ]T ∈ ℜ3 son los angulos de Tait-Bryan descritos en el Apartado 2.3.
El Lagrangiano para el helicoptero viene dado por:
L(q, q) = EcTrans+ EcRot
− Ep (2.30)
donde EcTranses la energıa cinetica traslacional y EcRot
es la energıa cinetica rotacional.
Inicialmente, se va a desarrollar el termino de la energıa cinetica traslacional, lo cual
requiere el conocimiento de la velocidad de cada coordenada generalizada. La velocidad
2.5 Formulacion de Lagrange-Euler 21
lineal viene dada por la ecuacion (2.15), donde ξ = v, y por lo tanto el cuadrado de la
velocidad es:
ξ2 (x, y, z) = (x2 + y2 + z2) = ξT ξ
Ası, la energıa cinetica traslacional puede ser escrita mediante la siguiente expresion:
EcTrans=
1
2
∫
ξ2 (x, y, z) dm =m
2ξ2 (x, y, z) =
m
2ξT ξ
Para desarrollar el termino de la energıa cinetica rotacional, considerese un puntoBrB fijo y en reposo en el sistema de coordenadas B. Sea IrB el mismo punto BrB con
respecto al sistema de coordenadas inercial I, y RI la matriz de rotacion que relaciona
el desplazamiento espacial del sistema de coordenadas B con respecto a I. El vector IrBvendra dado por (Fu et al., 1987):
IrB = RIBrB
IrBx = (cosψ cos θ)xL + (cosψsenθsenφ− senψcosφ)yL + (cosψsenθcosφ+senψsenφ)zLIrBy = (senψ cos θ)xL + (senψsenθsenφ+ cosψcosφ)yL + (senψsenθcosφ− cosψsenφ)zLIrBz = (−senθ)xL + (cos θsenφ)yL + (cos θcosφ)zL
Ası, la velocidad de BrB expresada en I se obtiene por la derivada con respecto al
tiempo de IrB como sigue:
IvB =d
dt
(
IrB)
=d
dt
(
RI · BrB)
= RI · BrB
IvBx =(
− sinψ cos θψ − cosψ sin θθ)
xL+(
− sinψ sin θ sinφψ + cosψ cos θ sinφθ + cosψ sin θ cosφφ
− cosψ cosφψ + sinψ sinφφ)
yL+(
− sinψ sin θ cosφψ + cosψ cos θ cosφθ − cosψ sin θ sinφφ
+ cosψ sinφψ + sinψ cosφφ)
zL
IvBy =(
cosψ cos θψ − sinψ sin θθ)
xL+(
cosψ sin θ sinφψ + sinψ cos θ sinφθ + sinψ sin θ cosφφ
− sinψ cosφψ − cosψ sinφφ)
yL+(
cosψ sin θ cosφψ + sinψ cos θ cosφθ − sinψ sin θ sinφφ
+ sinψ sinφψ − cosψ cosφφ)
zL
IvBz =(
−cos θθ)
xL+(
− sin θ sinφθ + cos θ cosφφ)
yL+(
− sin θ cosφθ − cos θ sinφφ)
zL
22 2 Descripcion y Modelado del Helicoptero QuadRotor
Tras obtener la velocidad del punto IrB, se puede calcular la energıa cinetica de rota-
cion. Sea EcRotla energıa cinetica de rotacion en B expresada en I, y sea dEcRot
la energıa
cinetica de una partıcula con masa diferencial dm en B, entonces (Fu et al., 1987):
dEcRot=
1
2
(
Iv2B
)
dm =1
2
(
Iv2Bx + Iv
2
By + Iv2
Bz
)
dm (2.31)
Ası, el cuadrado de la velocidad del punto IvB es:
Iv2B =
(
Iv2Bx + Iv
2
By + Iv2
Bz
)
Iv2B = x2
L
(
ψ2cos2 θ + θ2)
+
y2L
(
ψ2(
sin2 θ + cos2 θcos2 φ)
+ ψ(
−2φ sin θ − 2θ cosφ sinφ cos θ)
+ θ2 sin2 φ+ φ2)
+
z2L
(
ψ2(
sin2 θ + cos2 θsin2 φ)
+ ψ(
−2φ sin θ + 2θ cosφ sin φ cos θ)
+ θ2 cos2 φ+ φ2)
+
2xLyL
(
ψ2 cos θ sin θ sinφ+ ψ(
θ sin θ cosφ− φ cos θ sinφ)
− θφ cosφ)
+
2xLzL
(
ψ2 cos θ sin θ cosφ+ ψ(
−θ sin θ sinφ− φ cos θ cosφ)
+ θφ sinφ)
+
2yLzL
(
−ψ2 cos2 θ sinφ cosφ+ ψ(
θ cos θ − 2θ cos θ cos2 φ)
+ θ2 sinφ cosφ)
Reescribiendo la ecuacion anterior se tiene:
Iv2B = (y2
L + z2L)(
ψ2 sin2 θ − 2ψφ sin θ + φ2)
+
(x2L + z2
L)(
ψ2 sin2 φ cos2 θ + 2ψθ cosφ sinφ cos θ + θ2 cos2 φ)
+
(x2L + y2
L)(
ψ2 cos2 φ cos2 θ − 2ψθ cosφ sinφ cos θ + θ2 sin2 φ)
+
2xLyL
(
ψ2 cos θ sin θ sinφ+ ψ(
θ sin θ cos φ− φ cos θ sin φ)
− θφ cosφ)
+
2xLzL
(
ψ2 cos θ sin θ cosφ+ ψ(
−θ sin θ sin φ− φ cos θ cosφ)
+ θφ sinφ)
+
2yLzL
(
−ψ2 cos2 θ sinφ cosφ+ ψ(
θ cos θ − 2θ cos θ cos2 φ)
+ θ2 sin φ cosφ)
Por tanto, resolviendo la ecuacion (2.31) con el cuadrado de la velocidad se obtiene la
energıa cinetica de rotacion como sigue:
EcRot=
1
2
∫
Iv2Bdm
2.5 Formulacion de Lagrange-Euler 23
EcRot=
1
2
∫
(
y2L + z2
L
)
dm(
ψ2 sin2 θ − 2ψφ sin θ + φ2)
+
1
2
∫
(
x2L + z2
L
)
dm(
ψ2 sin2 φ cos2 θ + 2ψθ cosφ sinφ cos θ + θ2 cos2 φ)
+
1
2
∫
(
x2L + y2
L
)
dm(
ψ2 cos2 φ cos2 θ − 2ψθ cosφ sinφ cos θ + θ2 sin2 φ)
+
∫
xLyLdm(
ψ2 cos θ sin θ sinφ+ ψ(
θ sin θ cosφ− φ cos θ sinφ)
− θφ cosφ)
+
∫
xLzLdm(
ψ2 cos θ sin θ cosφ+ ψ(
−θ sin θ sinφ− φ cos θ cosφ)
+ θφ sinφ)
+
∫
yLzLdm(
−ψ2 cos2 θ sinφ cosφ+ ψ(
θ cos θ − 2θ cos θ cos2 φ)
+ θ2 sinφ cos φ)
(2.32)
A partir de las hipotesis realizadas anteriormente, los terminos de los productos cru-
zados de la matriz de inercia pueden ser considerados nulos y la matriz de inercia es
diagonal:Ixx =
∫
(y2L + z2
L) dmIyy =
∫
(x2L + z2
L) dmIzz =
∫
(x2L + y2
L) dmIxy =
∫
(xLyL)dm = 0Ixz =
∫
(xLzL)dm = 0Iyz =
∫
(yLzL)dm = 0
La energıa cinetica puede ser reescrita de la siguiente forma:
EcRot=
1
2Ixx
(
φ− ψ sin θ)2
+1
2Iyy
(
θ cosφ+ ψ sinφ cos θ)2
+1
2Izz
(
θ sinφ− ψ cosφ cos θ)2
(2.33)
o de una forma mas compacta utilizando las ecuaciones (2.14) y (2.17):
EcRot=
1
2Ixxp
2 +1
2Iyyq
2 +1
2Izzr
2 =1
2ωTJω (2.34)
Denominando Wη como el Jacobiano que relaciona ω con η en la ecuacion (2.14), se
puede definir la siguiente matriz:
J = J (η) = WηTJWη (2.35)
por lo que la ecuacion de la energıa cinetica (2.34) se puede reescribir en funcion de
coordenadas generalizadas η como sigue:
EcRot=
1
2ηTJ η (2.36)
24 2 Descripcion y Modelado del Helicoptero QuadRotor
La energıa potencial Ep expresada en terminos de las coordenadas generalizadas viene
dada por:
Ep = mgz (2.37)
Las ecuaciones del movimiento completo se obteniene a partir del Lagrangiano (2.30)
y se obtendran a partir de la siguiente expresion:[
Fξ
τη
]
=d
dt
(
∂L
∂qi
)
− ∂L
∂qi(2.38)
donde τη ∈ ℜ3 representa los momentos de balanceo, cabeceo y guinada, y Fξ = RIF es
la fuerza traslacional aplicada al helicoptero debido principalmente a la entrada de control
principal U1 en la direccion del eje z, con
RIF = RIE3U1 + AT
Puesto que el Lagrangiano no contiene terminos en la energıa cinetica combinando ξ
con η, las ecuaciones de Lagrange-Euler pueden ser divididas en la dinamica de traslacion
y la dinamica de rotacion, siendo la ecuacion de Lagrange-Euler para el movimiento de
traslacion:
L(ξ, ξ) = EcTras− Ep
∂L(
ξ, ξ)
∂ξ= −mgE3 ,
∂L(
ξ, ξ)
∂ξ= mξ ,
d
dt
∂L(
ξ, ξ)
∂ξ
= mξ
d
dt
∂L(
ξ, ξ)
∂ξ
−∂L(
ξ, ξ)
∂ξ= Fξ (2.39)
mξ +mgE3 = Fξ (2.40)
Reescribiendo (2.40) en funcion del vector de estados ξ se tiene:
x = 1m
(cosψ sin θ cosφ+ sinψ sinφ)U1 + Ax
m
y = 1m
(sinψ sin θ cos φ− cosψ sinφ)U1 + Ay
m
z = −g + 1m
(cos θ cosφ)U1 + Az
m
(2.41)
Para las coordenadas de η las ecuaciones de Lagrange-Euler son:
d
dt
(
∂L (η, η)
∂η
)
− ∂L (η, η)
∂η= τη
d
dt
(
∂L (η, η)
∂φ
)
− ∂L (η, η)
∂φ= τφ ,
d
dt
(
∂L (η, η)
∂θ
)
− ∂L (η, η)
∂θ= τθ ,
d
dt
(
∂L (η, η)
∂ψ
)
− ∂L (η, η)
∂ψ= τψ
2.5 Formulacion de Lagrange-Euler 25
Resolviendo las ecuaciones arriba se obtiene:
∂L (η, η)
∂φ= Iyy
(
−ψθ cos θ sin2 φ+ ψθ cos θ cos2 φ+ ψ2 sinφ cos φ cos2 θ − θ2 sinφ cosφ)
+Izz
(
−ψ2 sinφ cosφ cos2 θ + ψθ cos θ sin2 φ− ψθ cos θ cos2 φ+ θ2 sinφ cosφ)
∂L (η, η)
∂θ= Ixx
(
−ψφ cos θ + ψ2 cos θ sin θ)
+ Iyy
(
−θψ sinφ cos φ sin θ − ψ2 sin2 φ cos θ sin θ)
+Izz
(
−ψ2 sin θ cos θ cos2 φ+ ψθ sin θ sinφ cosφ)
∂L (η, η)
∂ψ= 0
∂L (η, η)
∂φ= Ixx
(
φ− ψ sin θ)
∂L (η, η)
∂θ= θ
(
Iyy cos2 φ+ Izz sin2 φ)
+ ψ (Iyy cosφ sinφ cos θ − Izz cosφ sinφ cos θ)
∂L (η, η)
∂ψ= −φIxx sin θ + θ ((Iyy − Izz) cosφ sinφ cos θ)
+ψIxx sin2 θ + ψIyy sin2 φ cos2 θ + ψIzz cos2 φ cos2 θ
Y por lo tanto:
d
dt
(
∂L (η, η)
∂φ
)
= Ixx
(
φ− ψ sin θ − φψ cos θ)
d
dt
(
∂L (η, η)
∂θ
)
= Iyy
(
θ cos2 φ− 2θφ cosφ sinφ+ ψ cosφ sinφ cos θ − ψφ sin2 φ cos θ
+ψφ cos2 φ cos θ − ψθ cosφ sinφ sin θ)
+Izz
(
θ sin2 φ+ 2θφ cosφ sinφ− ψ cosφ sinφ cos θ + ψφ sin2 φ cos θ
−ψφ cos2 φ cos θ + ψθ cosφ sinφ sin θ)
d
dt
(
∂L (η, η)
∂ψ
)
= Ixx
(
−φ sin θ − φθ cos θ + ψ sin2 θ + 2ψθ sin θ cos θ)
+Iyy
(
θ cosφ sinφ cos θ − θφ sin2 φ cos θ + θφ cos2 φ cos θ − θ2 cosφ sin φ sin θ
+ ψ sin2 φ cos2 θ + 2ψφ sinφ cosφ cos2 θ − 2ψθ sin2 φ cos θ sin θ)
+Izz
(
−θ cosφ sinφ cos θ + θφ sin2 φ cos θ − θφ cos2 φ cos θ + θ2 cosφ sinφ sin θ
+ ψ cos2 φ cos2 θ − 2ψφ cosφ sin φ cos2 θ − 2ψθ cos θ sin θ cos2 φ)
26 2 Descripcion y Modelado del Helicoptero QuadRotor
y ası, se reescribe las ecuaciones de Lagrange-Euler para el movimiento de rotacion como
sigue:d
dt
(
∂L (η, η)
∂η
)
− ∂L (η, η)
∂η= τη
d
dt
(
∂L (η, η)
∂φ
)
− ∂L (η, η)
∂φd
dt
(
∂L (η, η)
∂θ
)
− ∂L (η, η)
∂θd
dt
(
∂L (η, η)
∂ψ
)
− ∂L (η, η)
∂ψ
=
τφτθτψ
El modelo matematico se puede presentar en la forma general, donde (Castillo et al.,
2007):
M(η)η + C(η, η)η = τη (2.42)
con M(η) = J (η), o sea:
M(η) =
Ixx 0 −Ixx sin θ
0 Iyy cos2 φ+ Izz sin2 φ (Iyy − Izz) cosφ sin φ cos θ
−Ixx sin θ (Iyy − Izz) cosφ sinφ cos θ Ixx sin2 θ + Iyy sin2 φ cos2 θ + Izz cos2 φ cos2 θ
(2.43)
y
C (η, η) =
c11 c12 c13c21 c22 c23c31 c32 c33
donde
c11 = 0
c12 = (Iyy − Izz)(
θ cosφ sinφ+ ψ sin2 φ cos θ)
+ (Izz − Iyy) ψ cos2 φ cos θ − Ixxψ cos θ
c13 = (Izz − Iyy) ψ cosφ sinφ cos2 θ
c21 = (Izz − Iyy)(
θ cosφ sinφ+ ψ sin2 φ cos θ)
+ (Iyy − Izz) ψ cos2 φ cos θ + Ixxψ cos θ
c22 = (Izz − Iyy) φ cosφ sinφ
c23 = −Ixxψ sin θ cos θ + Iyyψ sin2 φ cos θ sin θ + Izzψ cos2 φ sin θ cos θ
c31 = (Iyy − Izz) ψ cos2 θ sinφ cosφ− Ixxθ cos θ
c32 = (Izz − Iyy)(
θ cosφ sinφ sin θ + φ sin2 φ cos θ)
+ (Iyy − Izz) θ cos2 φ cos θ
+Ixxψ sin θ cos θ − Iyyψ sin2 φ sin θ cos θ − Izzψ cos2 φ sin θ cos θ
c33 = (Iyy − Izz) φ cosφ sinφ cos2 θ − Iyy θ sin2 φ cos θ sin θ − Izzθ cos2 φ cos θ sin θ
+Ixxθ cos θ sin θ
Ası, las ecuaciones del movimiento de rotacion del helicoptero obtenidas a partir de
la formulacion de Lagrange-Euler pueden ser reescritas mediante la siguiente expresion
2.5 Formulacion de Lagrange-Euler 27
matricial:
η = M(η)−1(τη −C(η, η)η) (2.44)
Para finalizar, en la figura 2.4 se muestra como el sistema puede ser dividido en dos
subsitemas interconectados:
ψψθθφφ
&
&
&
zzyyxx
&
&
&
ψθφ ,,
Subsistema de rotación
Subsistema de traslación
4
3
2
UUU
1U
Figura 2.4: Sistema dinamico dividido en dos sub-sistemas interconectados.
El sub-sistema de rotacion, cuyas salidas seran los tres angulos de Tait-Bryan que
fijan la orientacion del vehıculo, y cuyas entradas seran los tres pares (U2, U3 y U4)
que permiten girarlo.
El sub-sistema de traslacion, cuyas salidas (posicion x, y y z del vehıculo en el
espacio) dependeran del empuje total, U1, ademas de la orientacion del sistema.
28 2 Descripcion y Modelado del Helicoptero QuadRotor
Capıtulo 3
Estructuras de Control
En este capıtulo se utilizan cinco estrategias de control para resolver el problema
de seguimiento de trayectoria, siendo dos de ellas presentadas en Mistler et al. (2001);
Bouabdallah y Siegwart (2005). Se buscan, como objetivos de desempeno de los controla-
dores, error nulo de seguimiento y robustez en presencia de incertidumbres parametricas
y perturbaciones externas que puedan afectar al helicoptero.
La primera estrategia esta basada en Mistler et al. (2001), donde se utiliza una ley
de control con desacoplamiento entrada-salida y linealizacion exacta por realimentacion
dinamica. En esta estrategia se utiliza el modelo dinamico que se obtuvo a partir de la
formulacion de Newton-Euler.
La segunda estructura de control utilizada fue presentada en Bouabdallah y Siegwart
(2005). Esta se basa en la tecnica de Backstepping y supone que el helicoptero ya es-
ta en vuelo estacionario, de modo que se permite simplificar el modelo a traves de la
aproximacion de pequeno angulo.
La tercera estrategia de control que se desarrolla en este trabajo, se basa en una
estructura de control descentralizada, donde se disena un controlador para la estabilizacion
del helicoptero utilizando tecnicas de control H∞ no lineal para sistemas mecanicos. Para
controlar los movimientos de traslacion se utiliza el controlador propuesto en Bouabdallah
y Siegwart (2005), que usa funciones de Lyapunov, basado en la tecnica de Backstepping.
La cuarta estrategia de control se plantea a partir de la estructura anterior, donde
se utiliza el mismo controlador H∞ no lineal para los movimientos de rotacion. El pro-
blema de seguimiento de trayectoria se soluciona a traves de un controlador predictivo,
donde se permite utilizar trayectorias futuras conocidas, una caracterıstica de gran rele-
vancia para el control de robots moviles. El cpbm fue desarrollado utilizando la tecnica
de linealizaciones sucesivas y basado en el modelo del error.
30 3 Estructuras de Control
Para la quinta estructura de control se disena un controlador con el objetivo de garanti-
zar la robustez del sub-sistema de traslacion en presencia de incertidumbres parametricas
en los terminos de masa y inercia del helicoptero y cuando se aplican vientos mantenidos
sobre el vehıculo. Para esto se utiliza la sıntesis de control H∞ lineal con realimentacion de
estados vıa lmis, suponiendo la posicion angular del quadrotor como parametros inciertos
del sub-sistema de traslacion. La estabilizacion del uav se obtiene a partir del controlador
H∞ no lineal.
A continuacion se presentan cada una de las estrategias, ası como los resultados de
simulacion, y resultados experimentales de la estabilizacion del sistema.
3.1 Control con desacoplamiento entrada-salida y linealizacion exacta por realimentaciondinamica (Mistler et al., 2001) 31
3.1. Control con desacoplamiento entrada-salida y li-
nealizacion exacta por realimentacion dinamica
(Mistler et al., 2001)
En este apartado se presenta el controlador desarrollado en Mistler et al. (2001), el
cual trata de una ley de control por realimentacion dinamica y un cambio de variables
en el espacio de estados con el objetivo de transformar el sistema no lineal descrito por
la ecuacion (2.28) en un sistema lineal y controlable. Este problema es conocido como
linealizacion exacta por realimentacion (Mistler et al., 2001). Ademas, se reduce el sistema
por el enfoque entrada-salida para trabajar con un conjunto de sistemas siso (single input-
single output) independientes, siendo este el problema de desacoplamiento entrada-salida.
En Mistler et al. (2001) se demuestra que utilizando una ley de control por realimen-
tacion estatica no es posible resolver estos dos problemas para el sistema (2.28). Siendo
ası, se propone una ley de control por realimentacion dinamica.
Inicialmente, se prueba que, utilizando una ley de control por realimentacion estatica,
el sistema en bucle cerrado no es realizable. Ası, en el primer paso, para no complicar
el problema de control, se elige el numero de salidas igual al numero de entradas, con-
siderando las variables ξ = [x y z]T y el angulo de guinada (yaw), ψ, como variables
controladas del sistema. Por lo tanto, el vector de salidas es γ(ζ) = h(ζ) = [x y z ψ]T .
Se asume tambien que todo el vector de estados, ζ , del sistema es medible y se propone
una ley de control con realimentacion de estados estatica de la siguiente forma:
U = α(ζ) + β(ζ)v (3.1)
donde v es un vector de entrada de referencia externa, α(ζ) = [α1(ζ) α2(ζ)
α3(ζ) α4(ζ)]T y β(ζ) ∈ ℜ4x4.
En el segundo paso, se define el grado relativo del sistema, donde r1, r2, r3, r4 es el
vector de grado relativo para el sistema (2.28). Esto estipula exactamente el numero de
veces que hay que diferenciar una salida i para que en el ultimo componente aparezca
explıcitamente el vector de entradas U. Ası, usando derivadas de Lie, se tiene:
ri =(
infk, ∃j, 1 ≤ j ≤ 4, LgjLk−1
f hi 6= 0)
y
γ(r1)1
γ(r2)2
γ(r3)3
γ(r4)4
= b(ζ) + ∆(ζ)U
32 3 Estructuras de Control
donde
∆(ζ) =
Lg1Lr1−1
f h1(ζ) · · · Lg4Lr1−1
f h1(ζ)...
. . ....
Lg1Lr4−1
f h4(ζ) · · · Lg4Lr4−1
f h4(ζ)
(3.2)
b(ζ) =
Lr1f h1(ζ)...
Lr4f h4(ζ)
(3.3)
El principal resultado sobre el problema de desacoplamiento entrada-salida es que
este problema tiene solucion si, y solo si, la matriz ∆(ζ) es no singular. En este caso, la
realimentacion de estados estatica (3.1) con (Mistler et al., 2001):
α(ζ) = −∆−1(ζ)b(ζ)
β(ζ) = ∆−1(ζ)(3.4)
transforma el sistema en bucle cerrado en lineal y desacoplado desde el punto de vista de
entrada-salida, proporcionando y(ri) = vi para todo i, 1 ≤ i ≤ 4.
Sin embargo, para el sistema no lineal (2.28) el grado relativo es r1 = r2 = r3 = r4 = 2.
3.1 Control con desacoplamiento entrada-salida y linealizacion exacta por realimentaciondinamica (Mistler et al., 2001) 33
Por lo tanto, la matriz ∆(ζ) se calcula como sigue:
∆11 = Lg1L1
fh1(ζ) =∂
∂ζ
(
∂h1
∂ζ· f (ζ)
)
· g1 (ζ) =(cosψ cosφ sin θ + sin φ sinψ)
m
∆12 = Lg2L1
fh1(ζ) =∂
∂ζ
(
∂h1
∂ζ· f (ζ)
)
· g2 (ζ) = 0
∆13 = Lg3L1
fh1(ζ) =∂
∂ζ
(
∂h1
∂ζ· f (ζ)
)
· g3 (ζ) = 0
∆14 = Lg4L1
fh1(ζ) =∂
∂ζ
(
∂h1
∂ζ· f (ζ)
)
· g4 (ζ) = 0
∆21 = Lg1L1
fh2(ζ) =∂
∂ζ
(
∂h2
∂ζ· f (ζ)
)
· g1 (ζ) =(sinψ cos φ sin θ − sin φ cosψ)
m
∆22 = Lg2L1
fh2(ζ) =∂
∂ζ
(
∂h2
∂ζ· f (ζ)
)
· g2 (ζ) = 0
∆23 = Lg3L1
fh2(ζ) =∂
∂ζ
(
∂h2
∂ζ· f (ζ)
)
· g3 (ζ) = 0
∆24 = Lg4L1
fh2(ζ) =∂
∂ζ
(
∂h2
∂ζ· f (ζ)
)
· g4 (ζ) = 0
∆31 = Lg1L1
fh3(ζ) =∂
∂ζ
(
∂h3
∂ζ· f (ζ)
)
· g1 (ζ) =(cos θ cos φ)
m
∆32 = Lg2L1
fh3(ζ) =∂
∂ζ
(
∂h3
∂ζ· f (ζ)
)
· g2 (ζ) = 0
∆33 = Lg3L1
fh3(ζ) =∂
∂ζ
(
∂h3
∂ζ· f (ζ)
)
· g3 (ζ) = 0
∆34 = Lg4L1
fh3(ζ) =∂
∂ζ
(
∂h3
∂ζ· f (ζ)
)
· g4 (ζ) = 0
∆41 = Lg1L1
fh4(ζ) =∂
∂ζ
(
∂h4
∂ζ· f (ζ)
)
· g1 (ζ) = 0
∆42 = Lg2L1
fh4(ζ) =∂
∂ζ
(
∂h4
∂ζ· f (ζ)
)
· g2 (ζ) = 0
∆43 = Lg3L1
fh4(ζ) =∂
∂ζ
(
∂h4
∂ζ· f (ζ)
)
· g3 (ζ) =(l sin φ sec θ
Iyy
∆44 = Lg4L1
fh4(ζ) =∂
∂ζ
(
∂h4
∂ζ· f (ζ)
)
· g4 (ζ) =(cosφ sec θ
Izz
y entonces:
∆(ζ) =
∆11 0 0 0∆21 0 0 0∆31 0 0 00 0 ∆43 ∆44
Como se muestra, la matriz ∆(ζ) es singular para todo ζ y, por lo tanto, el problema
de desacoplamiento entrada-salida no se resuelve para el sistema (2.28) a traves de una ley
de control estatica de realimentacion de estados (Mistler et al., 2001). La matriz ∆(ζ) es
siempre singular porque las derivadas γ(2)1 , γ
(2)2 y γ
(2)3 estan todas afectadas por la entrada
U1 y ninguna por U2, U3, U4. Para solucionar este problema, se propone encontrar γ(2)1 ,
γ(2)2 y γ
(2)3 independientes de U1, esto es, retrasar la aparicion de U1 para las derivadas de
orden superior de γ(2)1 , γ
(2)2 y γ
(2)3 y esperar que las otras entradas aparezcan antes. Para
34 3 Estructuras de Control
lograr este resultado, se elige U1 igual a un doble integrador dado por U1:
U1 = κκ = εε = U1
(3.5)
y por consistencia de notacion, se define:
U2 = U2
U3 = U3
U4 = U4
Ahora la entrada U1 ya no es una entrada para el sistema (2.28), pero se transforma en
el estado interno κ para el nuevo sistema dinamico (3.6), que es definido como sigue:
˙ζ = f(ζ) + g(ζ , U) (3.6)
donde
ζ = [x y z u0 v0 w0 φ θ ψ κ ǫ p q r ]T
y
f(
ζ)
=
u0
v0
w0
Axm
+ g41(φ, θ, ψ)κ
Aym
+ g51(φ, θ, ψ)κ
−g +Azm
+ g61(φ, θ, ψ)κ
p+ q sin φ tan θ + r cosφ tan θq cosφ− r sinφ
q sin φ sec θ + r cos φ sec θǫ0
(Iyy − Izz)
Ixxqr − JRΩ
Ixxq +
ApIxx
(Izz − Ixx)
Iyypr +
JRΩ
Iyyp+
AqIyy
(Ixx − Iyy)
Izzpq +
ArIzz
,
g1(ζ) =[
0 0 0 0 0 0 0 0 0 0 1 0 0 0]T
g2(ζ) =
[
0 0 0 0 0 0 0 0 0 0 0l
Ixx0 0
]T
g3(ζ) =
[
0 0 0 0 0 0 0 0 0 0 0 0l
Iyy0
]T
g4(ζ) =
[
0 0 0 0 0 0 0 0 0 0 0 0 01
Izz
]T
Con el nuevo sistema se puede resolver el problema de desacoplamiento entrada-salida
para el sistema (2.28) a traves de una ley de control de realimentacion dinamica si este
3.1 Control con desacoplamiento entrada-salida y linealizacion exacta por realimentaciondinamica (Mistler et al., 2001) 35
problema se resuelve por realimentacion estatica para el sistema extendido (3.6). El vector
de grado relativo para el sistema (3.6) esta dado por:
r1 = r2 = r3 = 4; r4 = 2
y se tiene:
γ(r1)1
γ(r2)2
γ(r3)3
γ(r4)4
= b(ζ) + ∆(ζ)U
donde ∆(ζ) y b(ζ) son calculados usando las ecuaciones (3.2) y (3.3).
La matriz ∆(ζ) esta dada por:
∆(ζ) =
cos(φ) cos(ψ) sin(θ)+sin(φ) sin(ψ)m
−κ (sin(φ) cos(ψ) sin(θ)−cos(φ) sin(ψ))dmIx
κ cos(ψ) cos(θ)dmIy
0
cos(φ) sin(ψ) sin(θ)−sin(φ) cos(ψ)m
−κ (sin(φ) sin(ψ) sin(θ)+cos(φ) cos(ψ))dmIx
κ sin(ψ) cos(θ)dmIy
0
cos(φ) cos(θ)m
− sin(φ) cos(θ)κdmIx
−κ sin(θ)dmIy
0
0 0 sin(φ)dcos(θ)Iy
cos(φ)cos(θ)Iz
Se ve que la matriz ∆(ζ) es no singular en cualquier punto caracterizado por κ 6= 0,
−π/2 < φ < π/2, −π/2 < θ < π/2. Por lo tanto, el problema de desacoplamiento entrada-
salida se resuelve para el sistema (2.28) a traves de una ley de control por realimentacion
dinamica dada por:
U = α(ζ) + β(ζ)v (3.7)
con α(ζ) y β(ζ) calculados a partir de (3.4).
Ademas, como el sistema extendido (3.6) tiene dimension n = 14, la condicion
r1 + r2 + r3 + r4 = n se cumple y, por tanto, el sistema puede ser transformado por
realimentacion dinamica en un sistema que, en coordenadas adecuadas, es completamente
lineal y controlable. El cambio de coordenadas λ = Φ(ζ) se da por:
λ1 = h1
(
ζ)
= x λ8 = L3fh2
(
ζ)
= y(3)
λ2 = Lfh1
(
ζ)
= x λ9 = h3
(
ζ)
= zλ3 = L2
fh1
(
ζ)
= x λ10 = Lfh3
(
ζ)
= z
λ4 = L3fh1
(
ζ)
= x(3) λ11 = L2fh3
(
ζ)
= zλ5 = h2
(
ζ)
= y λ12 = L3fh3
(
ζ)
= z(3)
λ6 = Lfh2
(
ζ)
= y λ13 = h4
(
ζ)
= ψ
λ7 = L2fh2
(
ζ)
= y λ14 = Lfh4
(
ζ)
= ψ
En las nuevas coordenadas, el sistema se escribe como:
λ = Aλ+ Bvγ = Cλ
(3.8)
36 3 Estructuras de Control
donde
A =
A1 0 0 00 A1 0 00 0 A1 00 0 0 A2
, B =
B1
B2
B3
B4
, C =
C1 0 0 00 C1 0 00 0 C1 00 0 0 C2
A1 =
0 1 0 00 0 1 00 0 0 10 0 0 0
, A2 =
[
0 10 0
]
, B1 =
0 0 0 00 0 0 00 0 0 01 0 0 0
B2 =
0 0 0 00 0 0 00 0 0 00 1 0 0
, B3 =
0 0 0 00 0 0 00 0 0 00 0 1 0
, B4 =
[
0 0 0 00 0 0 1
]
C1 =[
1 0 0 0]
, C2 =[
1 0]
Para controlar el sistema (3.8), los autores proponen la siguiente ley de control por
realimentacion:
v1 = x(4)d − c3
(
x(3) − x(3)d
)
− c2 (x− xd) − c1 (x− xd) − c0 (x− xd)
v2 = y(4)d − c3
(
y(3) − y(3)d
)
− c2 (y − yd) − c1 (y − y) − c0 (y − yd)
v3 = z(4)d − c3
(
z(3) − z(3)d
)
− c2 (z − zd) − c1 (z − zd) − c0 (z − z)
v4 = ψd − c5
(
ψ − ψd
)
− c4 (ψ − ψd)
donde los coeficientes ci son los parametros de ajuste del controlador y (xd, yd, zd, ψd) es
la trayectoria deseada.
En la Figura 3.1 se representa el diagrama de bloques completo de la estructura de
control presentada.
kappau1
u2
u3
u4
(x,y,z)
(dx,dy,dz)
(phi,theta,psi)
(p,q,r)
lambda
MATLABFunction
Varible lambda
var_zref
xrdot4
yrdot4
zrdot4
psiddot
Trayectoriade Referencia
Atras
PerturbaciónTraslacional
Arot
PerturbaciónRotacional
1s
1s
K*u
Gain
MATLABFunction
Exact Linearization
du/dt
du/dt
Demux
draganfly_Mistler_Mod
DRAGANFLY
Figura 3.1: Diagrama de Bloques para el control con linealizacion por realimentacion del
helicoptero quadrotor.
3.1 Control con desacoplamiento entrada-salida y linealizacion exacta por realimentaciondinamica (Mistler et al., 2001) 37
3.1.1. Resultados de simulacion
Se realizaron varias simulaciones para evaluar el controlador propuesto en Mistler et
al. (2001). La trayectoria de referencia utilizada es una helicoidal vertical dada por las
siguientes ecuaciones:
xd = 12cos(
t2
)
, yd = 12sin(
t2
)
, zd = 1 + t10, ψd = π
3
Se supone que el helicoptero empieza en la posicion (x, y, z) = (0,0,0.5)m ,con orien-
tacion (φ, θ, ψ) = (0,0,0.5)rad. Los parametros del modelo utilizados aquı, y durante todo
el trabajo, fueron los del artıculo (Mistler et al., 2001), y son: m = 0,7kg, l = 0,3m,
g = 9,81m/s2 y Ixx = Iyy = Izz = 1,2416.
Se presentan dos resultados, en el primero se considera una incertidumbre de ±20 %
en los parametros de inercia del modelo y sin tener en cuenta perturbaciones externas. La
segunda simulacion se realizo solo con el modelo nominal, pero se consideraron perturba-
ciones externas, que fueron escalones mantenidos en los momentos aerodinamicos, o sea,
en t = 5s se introdujo Ar = 5Nm, en t = 15s se afecto al sistema con Ap = 10Nm, y
en t = 25s se aplico la ultima perturbacion con amplitud Aq = 10Nm. Las ganancias del
controlador son las siguientes: c0 = 625, c1 = 500, c2 = 150, c3 = 20, c4 = c5 = 4.
Las resultados de ambas simulaciones se presentan en las Figuras 3.2 - 3.9.
−0.5
0
0.5
−0.5
0
0.50.5
1
1.5
2
2.5
3
3.5
4
4.5
xy
z
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.2: Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia de
control con linealizacion por realimentacion dinamica sin perturbaciones externas.
38 3 Estructuras de Control
0 5 10 15 20 25 30−0.5
0
0.5x
0 5 10 15 20 25 30−0.5
0
0.5y
0 5 10 15 20 25 300
2
4
6
tiempo [s]
z
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.3: Evolucion temporal de la posicion cuando se aplica la estrategia de control
con linealizacion por realimentacion dinamica sin perturbaciones externas.
0 5 10 15 20 25 30−0.06
−0.04
−0.02
0
0.02φ
0 5 10 15 20 25 30−0.1
0
0.1
0.2
0.3
θ
0 5 10 15 20 25 300
0.5
1
1.5
tiempo [s]
ψReferenciaInercia nominalInercia +20%Inercia −20%
Inercia NominalInercia +20%Inercia −20%
Inercia NominalInercia +20%Inercia −20%
Figura 3.4: Evolucion temporal de la orientacion cuando se aplica la estrategia de control
con linealizacion por realimentacion dinamica sin perturbaciones externas.
3.1 Control con desacoplamiento entrada-salida y linealizacion exacta por realimentaciondinamica (Mistler et al., 2001) 39
0 10 20 306
6.5
7
7.5
8
8.5
tiempo [s]
u1
0 10 20 30−5
0
5
10
15
20
tiempo [s]
u2
0 10 20 30−50
0
50
100
150
200
tiempo [s]
u3
0 10 20 30−1
0
1
2
3
4
tiempo [s]
u4
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Figura 3.5: Evolucion temporal de la entrada de control cuando se aplica la estrategia de
control con linealizacion por realimentacion dinamica sin perturbaciones externas.
−2
−1
0
1
2
−2
−1
0
1
20.5
1
1.5
2
2.5
3
3.5
4
xy
z
ReferenciaInercia nominal
Figura 3.6: Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia de
control con linealizacion por realimentacion dinamica con perturbaciones externas.
40 3 Estructuras de Control
0 5 10 15 20 25 30−2
−1
0
1
2x
0 5 10 15 20 25 30−2
−1
0
1
2y
0 5 10 15 20 25 300
1
2
3
4
tiempo [s]
z
ReferenciaInercia nominal
ReferenciaInercia nominal
ReferenciaInercia Nominal
Figura 3.7: Evolucion temporal de la posicion cuando se aplica la estrategia de control
con linealizacion por realimentacion dinamica con perturbaciones externas.
0 5 10 15 20 25 30−0.5
0
0.5
1
1.5φ
Inercia nominal
0 5 10 15 20 25 30−0.5
0
0.5
1θ
Inercia nominal
0 5 10 15 20 25 300
50
100
150
tiempo [s]
ψ
ReferenciaInercia nominal
Figura 3.8: Evolucion temporal de la orientacion cuando se aplica la estrategia de control
con linealizacion por realimentacion dinamica con perturbaciones externas.
3.1 Control con desacoplamiento entrada-salida y linealizacion exacta por realimentaciondinamica (Mistler et al., 2001) 41
0 10 20 306
7
8
9
10
11
12
tiempo [s]
u1
Inercia nominal
0 10 20 30−800
−600
−400
−200
0
200
tiempo [s]
u2
Inercia nominal
0 10 20 30−600
−400
−200
0
200
tiempo [s]
u3
Inercia nominal
0 10 20 30−1000
−800
−600
−400
−200
0
200
tiempo [s]
u4
Inercia nominal
Figura 3.9: Evolucion temporal de la entrada de control cuando se aplica la estrategia de
control con linealizacion por realimentacion dinamica con perturbaciones externas.
Se puede percibir a traves de las graficas que este controlador es robusto frente a incer-
tidumbres parametricas, pero cuando se aplican perturbaciones externas en los momentos
aerodinamicos, que pueden interpretarse como acciones de vientos que causan rotacion
del helicoptero, el controlador no fue capaz de rechazarlas. Esto se debe a que en la ley
de control no se considera el efecto integral en los terminos de rotacion.
En la parte de traslacion, sı se considera el efecto integral, y como se muestra en
Mistler et al. (2001), se rechazan vientos mantenidos, que se pueden considerar como
fuerzas aerodinamicas.
42 3 Estructuras de Control
3.2. Control basado en Backstepping (Bouabdallah
y Siegwart, 2005)
La estrategia de control que se presenta en este apartado fue elaborada en Bouabda-
llah y Siegwart (2005). Se trata de utilizar la tecnica de Backstepping para controlar el
helicoptero quadrotor con objetivos de estabilizacion y seguimiento de trayectoria.
Primero, se considera el modelo del helicoptero cuando este ejecuta vuelo estacionario,
o sea, se supone que la variacion de los angulos de Tait-Bryan es pequena. Ası, utilizando
las ecuaciones de movimiento obtenidas a traves de la formulacion de Lagrange-Euler,
aislando las aceleraciones y aplicando la aproximacion del pequeno angulo al sistema de
rotacion (cosφ ≈ cos θ ≈ cosψ ≈ 1, sinφ ≈ φ, sin θ ≈ θ, sinψ ≈ ψ) se obtiene el siguiente
modelo:
x = 1m
(cosψ sin θ cosφ+ sinψ sinφ)U1 + Ax
m
y = 1m
(sinψ sin θ cos φ− cosψ sinφ)U1 + Ay
m
z = −g + 1m
(cos θ cosφ)U1 + Az
m
φ = (Iyy−Izz)Ixx
θψ − JRΩIxx
θ + lIxxU2 + Ap
Ixx
θ = (Izz−Ixx)Iyy
φψ + JRΩIyy
φ+ lIyyU3 + Aq
Iyy
φ = (Ixx−Iyy)Izz
θφ+ 1IzzU4 + Ar
Izz
(3.9)
Para disenar el controlador se reescribe el sistema (3.9) en la forma de espacio de
estados X = f(X,U) introduciendo X = (x1 . . . x12) como el vector de estados del sistema,
siendo:
x1 = φ x7 = z
x2 = x1 = φ x8 = x7 = zx3 = θ x9 = x
x4 = x3 = θ x10 = x9 = xx5 = ψ x11 = y
x6 = x5 = ψ x12 = x11 = y
A partir de (3.9) y con el nuevo vector de estados se puede escribir el sistema de la
3.2 Control basado en Backstepping (Bouabdallah y Siegwart, 2005) 43
siguiente forma:
X = f (X,U) =
x2
x4x6a1 + x4a2Ω + b1U2
x4
x2x6a3 + x2a4Ω + b2U3
x6
x4x2a5 + b3U4
x8
−g + (cosx1 cosx3)U1
m
x10
uxU1
m
x12
uyU1
m
(3.10)
con:a1 = (Iyy − Izz)/Ixx b1 = l/Ixxa2 = −JR/Ixx b2 = l/Iyya3 = (Izz − Ixx)/Iyy b3 = 1/Izza3 = JR/Iyya5 = (Ixx − Iyy)/Izz
(3.11)
ux = (cosx5 sin x3 cos x1 + sin x5 sin x1)uy = (sin x5 sin x3 cosx1 − cosx5 sin x1)
(3.12)
Esto es util para ver que el sistema de rotacion no depende de las componentes de tras-
lacion, como ya se habıa comentado anteriormente. Por otro lado, las traslaciones depen-
den de los angulos. Se puede imaginar el sistema completo descrito por (3.10) constituido
por dos sub-sistemas, el de rotaciones angulares y el de traslaciones lineales, conforme
Figura 3.10.
ψψθθφφ
z
z
y
y
x
x
ψθφ ,,
Subsistema de rotación
Subsistema de traslación
1U
2U
3U
4U
BacksteppingTraslación
rrr zyx ,,rr θφ ,
ψθφ ,,
zyx ,,
Quad-Rotor
rψG.Tray.
BacksteppingRotación
Figura 3.10: Estructura de control Backstepping.
44 3 Estructuras de Control
3.2.1. Control Backstepping del sub-sistema de rotacion
Utilizando la tecnica de Backstepping se puede disenar la ley de control forzando al
sistema a seguir la trayectoria de referencia. Para ello, como primer paso se define el error
de seguimiento como sigue (Bouabdallah y Siegwart, 2005):
z1 = x1d− x1 (3.13)
Segun el teorema de Lyapunov, y considerando que la funcion Lyapunov V (z1) pre-
sentada a continuacion es definida positiva y su derivada con respecto al tiempo es semi-
definida negativa:
V (z1) =1
2z21 (3.14)
V (z1) = z1(x1d− x2) (3.15)
la estabilizacion de z1 puede ser obtenida introduciendo la siguiente entrada de control
virtual x2:
x2 = x1d+ α1z1 (3.16)
con α1 > 0.
La derivada de la funcion de Lyapunov se escribe como:
V (z1) = −α1z21 (3.17)
permitiendo proseguir con un cambio de variables realizando:
z2 = x2 − x1d− α1z1 (3.18)
Para anular este nuevo error, se realizara un segundo paso considerando la siguiente
funcion de Lyapunov aumentada:
V (z1, z2) =1
2(z2
1 + z22) (3.19)
donde su derivada temporal viene dada por:
V (z1, z2) = z2(a1x4x6 + a2x4Ω + b1U2) − z2(x1d− α1(z2 + α1z1)) − z1z2 − α1z
21 (3.20)
Por lo tanto, si se considera la referencia en aceleracion nula (x1d= 0), se obtiene la
siguiente senal de control U2, satisfaciendo V (z1, z2) < 0:
U2 =1
b1(z1 − a1x4x6 − a2x4Ω − α1(z2 + α1z1) − α2z2) (3.21)
con
z1 = x1d− x1
z2 = x2 − x1d− α1z1
3.2 Control basado en Backstepping (Bouabdallah y Siegwart, 2005) 45
que estabiliza el sistema aumentado, ya que con esta senal de control se obtiene que:
V (z1, z2) = −α1z21 − α2z
22 < 0 (3.22)
Notese como el termino α2z2 con α2 > 0 se anade para estabilizar z1.
Se realizan los mismos pasos para obtener U3 y U4:
U3 =1
b2(z3 − a3x2x6 − a4x2Ω − α3(z4 + α3z3) − α4z4) (3.23)
U4 =1
b3(z5 − a5x2x4 − α5(z6 + α5z5) − α6z6) (3.24)
con
z3 = x3d− x3
z4 = x4 − x3d− α3z3
z5 = x5d− x5
z6 = x6 − x5d− α5z5
3.2.2. Control Backstepping del sub-sistema de traslacion
Control de altura
La entrada de control de la altura U1 se logra usando la misma tecnica presentada en
la seccion anterior:
U1 =m
cosx1 cosx3
(z7 + g − α7(z8 + α7z7) − α8z8) (3.25)
con
z7 = x7d− x7
z8 = x8 − x7d− α7z7
Control del movimiento lineal en el plano xy
El modelo (3.9) refleja que el movimiento a traves de los ejes x e y depende de la
entrada de control U1. De hecho U1 es el vector de empuje total, disenado para obtener
el movimiento lineal deseado. Si se considera ux y uy las orientaciones de U1 responsables
del movimiento a traves de los ejes x e y, respectivamente, se puede sacar de (3.12) los
angulos de balanceo, φ, y de cabeceo, θ, necesarios para calcular las senales de control uxy uy, satisfaciendo V (z1, z2) < 0.
ux =m
U1(z9 − α9(z10 + α9z9) − α10z10) (3.26)
uy =m
U1(z11 − α11(z12 + α11z11) − α12z12) (3.27)
46 3 Estructuras de Control
3.2.3. Resultados de simulacion
Los resultados presentados en este apartado sirven para analizar la estrategia de control
propuesta en Bouabdallah y Siegwart (2005). La trayectoria de referencia, condiciones
iniciales y parametros del helicoptero son los mismos presentados en el caso anterior.
Se presentan nuevamente dos resultados, en el primero se considera la incertidumbre
de ±20 % en los parametros de inercia del modelo, sin tener en cuenta perturbaciones
externas. La segunda simulacion se realizo tambien considerando incertidumbres parame-
tricas, y ademas, se consideraron perturbaciones externas, donde se aplicaron escalones
mantenidos en los momentos aerodinamicos, o sea, en t = 5s se introdujo Ar = 5Nm y
en t = 15s se afecto al sistema con Ap = 10Nm. Los parametros de los controladores
se ajustaron con los siguientes valores: α1 = 100, α2 = 1, α3 = 100, α4 = 1, α5 = 100,
α6 = 1, α7 = 100, α8 = 3, α9 = 15, α10 = 3, α11 = 15 y α12 = 3.
En las Figuras 3.11-3.17 se presentan los resultados obtenidos para la estrategia de
control en cuestion.
−1
−0.5
0
0.5
1
−1
−0.5
0
0.5
10
1
2
3
4
5
6
xy
z
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.11: Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia de
control utilizando la tecnica de Backstepping sin perturbaciones externas.
3.2 Control basado en Backstepping (Bouabdallah y Siegwart, 2005) 47
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1x
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1y
0 5 10 15 20 25 30 35 400
2
4
6
tiempo [s]
z
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.12: Evolucion temporal de la posicion cuando se aplica la estrategia de control
utilizando la tecnica de Backstepping sin perturbaciones externas.
0 5 10 15 20 25 30 35 40−0.2
0
0.2
0.4
0.6φ
0 5 10 15 20 25 30 35 40−0.5
0
0.5
1
1.5θ
0 5 10 15 20 25 30 35 400
0.5
1
1.5
tiempo [s]
ψ
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.13: Evolucion temporal de la orientacion cuando se aplica la estrategia de control
utilizando la tecnica de Backstepping sin perturbaciones externas.
48 3 Estructuras de Control
0 10 20 30 400
20
40
60
80
100
120
tiempo [s]
u1
0 10 20 30 40−1000
−500
0
500
1000
1500
2000
2500
tiempo [s]
u2
0 10 20 30 40−2000
0
2000
4000
6000
8000
tiempo [s]
u3
0 10 20 30 40−200
0
200
400
600
tiempo [s]
u4
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Figura 3.14: Evolucion temporal de las entradas de control cuando se aplica la estrategia
de control utilizando la tecnica de Backstepping sin perturbaciones externas.
0 5 10 15 20 25 30 35 40−4000
−2000
0
2000x
0 5 10 15 20 25 30 35 40−15000
−10000
−5000
0
5000y
0 5 10 15 20 25 30 35 400
2
4
6
tiempo [s]
z
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.15: Evolucion temporal de la posicion cuando se aplica la estrategia de control
utilizando la tecnica de Backstepping con perturbaciones externas.
3.2 Control basado en Backstepping (Bouabdallah y Siegwart, 2005) 49
0 5 10 15 20 25 30 35 40−2
−1
0
1
2φ
0 5 10 15 20 25 30 35 40−0.5
0
0.5
1
1.5θ
0 5 10 15 20 25 30 35 400
2
4
6
8
tiempo [s]
ψ
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.16: Evolucion temporal de la orientacion cuando se aplica la estrategia de control
utilizando la tecnica de Backstepping con perturbaciones externas.
0 10 20 30 400
20
40
60
80
100
120
tiempo [s]
u1
0 10 20 30 40−2000
−1000
0
1000
2000
3000
tiempo [s]
u2
0 10 20 30 40−2
−1.5
−1
−0.5
0
0.5
1
1.5x 10
4
tiempo [s]
u3
0 10 20 30 40−600
−400
−200
0
200
400
600
tiempo [s]
u4
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Figura 3.17: Evolucion temporal de las entradas de control cuando se aplica la estrategia
de control utilizando la tecnica de Backstepping con perturbaciones externas.
A traves de las graficas obtenidas con la estrategia de control presentada en este apar-
tado se observa un buen funcionamiento del helicoptero para el problema de seguimiento
de trayectoria cuando se consideran incertidumbres en los parametros del sistema. Sin
embargo, cuando se aplicaron perturbaciones externas mantenidas, el controlador no fue
capaz de rechazarlas.
50 3 Estructuras de Control
Como se muestra en las Figuras 3.15-3.17, el helicoptero se hace inestable y diverge
de la trayectoria de referencia. Cabe destacar que las perturbaciones introducidas en la
simulacion son momentos aerodinamicos. No se consideraron perturbaciones en el sub-
sistema de traslacion.
3.3 Control Backstepping/H∞ no lineal (Raffo et al., 2008a) 51
3.3. Control Backstepping/H∞ no lineal (Raffo et al.,
2008a)
En este apartado se desarrolla una estrategia de control que tiene como objetivo es-
tabilizar de forma robusta el subsistema de rotacion, siendo capaz de mantener el buen
funcionamiento del helicoptero cuando este esta sujeto a perturbaciones que generan mo-
mentos aerodinamicos.
Para ello se utiliza una ley de control H∞ no lineal que es robusta ante la presencia
de incertidumbres y capaz de rechazar perturbaciones mantenidas. Una vez estabilizado
el subsistema de rotacion, se implementara el controlador del subsistema de traslacion
lineal desarrollado en el Apartado 3.2.2. En el diagrama de bloques de la Figura 3.18 se
representa la estructura de control en cuestion.
H∞
Figura 3.18: Estructura de control Backstepping/H∞ no lineal.
Para desarrollar el controlador se utiliza el modelo obtenido vıa la formulacion de
Lagrange-Euler presentado en el capıtulo 2.
A continuacion se expone una breve introduccion de la teorıa de control H∞ no lineal
aplicada a sistemas mecanicos totalmente actuados, y despues se presenta el controlador
desarrollado para la estabilizacion del helicoptero quadrotor.
52 3 Estructuras de Control
3.3.1. Control H∞ no lineal
La ecuacion dinamica de un sistema mecanico suave de orden n, que se ve afectado
por una perturbacion desconocida, puede ser la siguiente:
x = f(x, t) + g(x, t)u + k(x, t)ω , (3.28)
donde u ∈ ℜp es el vector de entradas de control, ω ∈ ℜq es el vector de perturbaciones
externas y x ∈ ℜn es el vector de estados. El desempeno puede ser definido usando la
variable de coste z ∈ ℜ(m+p) dada por la expresion:
z = W
[
h(x)u
]
, (3.29)
donde h(x) ∈ ℜm representa el vector objetivo cuya magnitud se desea controlar, y
W ∈ ℜ(m+p)×(m+p) es una matriz de ponderacion. Si los estados x son accesibles, entonces
se puede formular el problema H∞ optimo de la forma (van der Schaft, 1992):
Hallar el mınimo valor de γ∗ ≥ 0 tal que para cualquier γ ≥ γ∗ exista una realimenta-
cion de estado u = u(x, t), tal que la ganancia L2 de ω a z sea menor o igual que γ, esto
es:∫ T
0
‖z‖22dt ≤ γ2
∫ T
0
‖ω‖22dt . (3.30)
El termino interno de la integral de la izquierda en la desigualdad (3.30) puede ser
escrito como:
‖z‖22 = zTz =
[
hT (x) uT]
WTW
[
h(x)u
]
y la matriz simetrica definida positiva WTW puede ser particionada como:
WTW =
[
Q SST R
]
(3.31)
Las matrices Q y R son simetricas y definidas positivas y el hecho de que WTW > 0
garantiza que Q − SR−1ST > 0.
Bajo estas hipotesis, se puede calcular una senal de control optima u∗(x, t) para el
sistema (3.28) si existe una solucion suave V (x, t), con V (x0, t) ≡ 0 para t ≥ 0, para la
siguiente ecuacion de HJBI (van der Schaft, 2000):
∂V
∂t+∂TV
∂xf(x, t) +
1
2
∂TV
∂x
[
1
γ2k(x, t)kT (x, t)−g(x, t)R−1gT (x, t)
]
∂V
∂x−
−∂TV
∂xg(x, t)R−1STh(x) +
1
2hT (x)
(
Q − SR−1ST)
h(x) = 0
(3.32)
3.3 Control Backstepping/H∞ no lineal (Raffo et al., 2008a) 53
para cada γ >√
σmax(R) ≥ 0, donde σmax significa el maximo valor singular. En tal caso,
la ley de control optimo por realimentacion de estados se obtiene como sigue (W. Feng
and I. Postlethwaite , 1994):
u∗ = −R−1
(
STh(x) + gT (x, t)∂V (x, t)
∂x
)
. (3.33)
Control H∞ no lineal del sub-sistema de rotacion
El controlador H∞ no lineal se utiliza el modelo dinamico para los movimientos de
rotacion (2.42) obtenido a partir de la formulacion de Lagrange-Euler en el Capıtulo 2,
donde τη representa los pares de control y perturbaciones externas. En aras de la claridad,
τη se puede redefinir como:
τη = τηa+ τηd
donde τηarepresenta el vector de pares de control respecto a los momentos de balanceo,
cabeceo y guinada, y τηdrepresenta el resto de la perturbaciones a las cuales esta sujeto
el sistema.
Como primer paso para disenar la ley de control, se define el vector del error de
seguimiento de la siguiente forma:
x =
˙ηη
∫
ηdt
=
η − ηd
η − ηd∫ (
η − ηd)
dt
(3.34)
donde ηd y ηd ∈ ℜn representa la posicion de la trayectoria deseada y la velocidad de
la misma, respectivamente. Notese que en el vector del error se ha incluido un termino
integral que permitira lograr un error nulo en regimen permanente ante perturbaciones
mantenidas aplicadas al sistema (Ortega et al., 2005).
Para el sub-sistema de rotacion se propone la siguiente ley de control:
τηa= M(η)η + C(η, η)η − T1
−1(
M(η)T ˙x + C(η, η)Tx)
+ T1−1u (3.35)
Esta ley de control se puede separar en tres partes: la primera de ellas, consistente en los
dos primeros terminos de la ecuacion, esta destinada a compensar la dinamica del sistema
(2.42). La segunda parte consiste en los terminos que incluyen el vector del error x y su
derivada, ˙x. En caso de que τηd≡ 0, estos dos terminos de la ley de control permitirıan un
seguimiento perfecto, lo cual significa que ellos representan el esfuerzo de control principal
necesario para ejecutar la tarea. Finalmente, el tercer termino incluye un vector u que
representa el esfuerzo de control adicional necesario para rechazar perturbaciones (Ortega
et al., 2005).
54 3 Estructuras de Control
En este punto hay que hacer notar que, a pesar de que la ley de control anterior pueda
parecer un sistema mal planteado, posteriormente se mostrara (ver ecuacion (3.42)) que el
par que se calcula no depende de la aceleracion de las coordenadas generalizadas, aunque
sı de la referencia de aceleracion.
La matriz T en (3.35) se puede dividir en los siguientes terminos:
T =[
T1 T2 T3
]
con T1 = ρI, donde ρ es un escalar positivo e I es la matriz identidad de orden n.
Sustituyendo la ecuacion de la ley de control (3.35) en la ecuacion de Lagrange-Euler
que representa al sistema (2.42), y definiendo ω = M(η)T1M−1(η)τηd
, se tiene:
M(η)T ˙x + C(η, η)Tx = u + ω (3.36)
Esta ecuacion representa la ecuacion dinamica del error del sistema. Teniendo en
cuenta esta ecuacion no lineal, el problema de control H∞ no lineal se puede formular
como sigue:
“Hallar una ley de control u(t) tal que la relacion entre la energıa de la variable de
coste z = W[
hT(x) uT]T
y la energıa de las senales de perturbacion ω sea menor que
un nivel de atenuacion preestablecido γ”.
Teniendo en cuenta la definicion del vector de error, x, y la definicion de la variable
de coste, z, se consideran las siguientes estructuras para las matrices Q y S en (3.31):
Q =
Q1 Q12 Q13
Q12 Q2 Q23
Q13 Q23 Q3
, S =
S1
S2
S3
.
Para aplicar los resultados teoricos presentados en el Apartado 3.3.1 es necesario re-
escribir la ecuacion dinamica no lineal del error (3.36) en la forma normal del problema
H∞ no lineal (vease ecuacion (3.28)). Esto puede ser realizado mediante las siguientes
transformaciones:˙x = f(x, t) + g(x, t)u + k(x, t)ω , (3.37)
f (x, t) = T0−1
−M(η)−1C(η, η) 0 0T1
−1 I − T1−1T2 −I + T1
−1(T2 − T3)0 I −I
T0,
g (x, t) = k (x, t) = T0−1
M(η)−1
00
3.3 Control Backstepping/H∞ no lineal (Raffo et al., 2008a) 55
donde I es la matriz identidad, 0 una matriz de ceros, ambos de orden n, y
T0 =
T1 T2 T3
0 I I0 0 I
. (3.38)
Como se expuso en el Apartado 3.3.1, la solucion de la ecuacion de HJBI depende
de la eleccion de la variable de coste, z, y particularmente de la eleccion de la funcion
h(x) (ver (3.29)). En este trabajo, esta funcion se considera igual al vector de error, esto
es, h(x) = x. Una vez elegida esta funcion, para calcular la ley de control, u, hay que
encontrar la solucion, V (x, t), para la ecuacion de HJBI (3.32) planteada en el apartado
anterior. El siguiente teorema ayudara a hallar esta solucion.
Teorema: Sea V (x, t) la funcion escalar:
V (x, t) =1
2xTT0
T
M(η) 0 0
0 Y X− Y
0 X− Y Z + Y
T0x , (3.39)
donde X, Y y Z ∈ ℜn×n son matrices constantes, simetricas, y definidas positivas tal que
Z− XY−1X + 2X > 0, y T0 es como definido en (3.38). Sea T =[
T1 T2 T3
]
la
matriz que aparece en (3.36). Si estas matrices verifican la siguiente ecuacion:
0 Y X
Y 2X Z + 2X
X Z + 2X 0
+ Q +1
γ2TTT −
(
ST + T)T
R−1(
ST + T)
= 0 (3.40)
entonces, la funcion V (x, t) constituye una solucion para la ecuacion de HJBI (3.32), para
un valor suficientemente alto de γ.
La demostracion de este teorema puede encontrarse en Ortega et al. (2005).
⋄
La matriz T =[
T1 T2 T3
]
puede ser calculada resolviendo algunas ecuaciones
algebraicas de Riccati (ver (Ortega et al., 2005)).
Una vez calculada la matriz T, sustituyendo V (x, t) en (3.33), la ley de control u∗
correspondiente al ındice optimo γ, segun el criterio de la ganancia L2, viene dada por la
expresion:
u∗ = −R−1(
ST + T)
x (3.41)
56 3 Estructuras de Control
Finalmente, si se sustituye la ley de control (3.41) en (3.35), y tras realizar algunas
manipulaciones matematicas, la ley de control optima puede ser reescrita como:
τ ∗ηa= M(η)ηd + C(η, η)η − M(η)
(
KD˙η + KP η − KI
∫
ηdt
)
(3.42)
donde:
KD = T1−1(
T2 + M(η)−1C(η, η)T1 + M(η)−1R−1(
S1T + T1
))
KP = T1−1(
T3 + M(η)−1C(η, η)T2 + M(η)−1R−1(
S2T + T2
))
KI = −T1−1(
M(η)−1C(η, η)T3 + M(η)−1R−1(
S3T + T3
))
Se puede obtener un caso particular cuando las submatrices de ponderacion que com-
ponen WTW verifiquen (Ortega et al., 2005):
Q1 = ω21I, Q2 = ω2
2I, Q3 = ω23I, R = ω2
uI, (3.43)
Q12 = Q13 = Q23 = 0, S1 = S2 = S3 = 0.
En este caso, se obtienen las siguientes expresiones analıticas para las distintas ganan-
cias:
KD =
√
ω22 + 2ω1ω3
ω1
I + M(η)−1
(
C(η, η) +1
ω2u
I
)
,
KP =ω3
ω1I +
√
ω22 + 2ω1ω3
ω1M(η)−1
(
C(η, η) +1
ω2u
I
)
,
KI =ω3
ω1
M(η)−1
(
C(η, η) +1
ω2u
I
)
.
Estas ecuaciones tienen una propiedad importante: las expresiones de las ganancias
no dependen del parametro γ. Por lo tanto, para este caso particular, se dispone de
expresiones analıticas para calcular la solucion optima (Ortega et al., 2005).
Finalmente, es conveniente senalar que el controlador presentado en este trabajo puede
ser interpretado como un esquema de control de par calculado, con un controlador H∞
no lineal externo.
3.3.2. Resultados de simulacion
Para corroborar la eficacia de la estructura de control propuesta utilizando el con-
trolador basado en la tecnica Backstepping junto con el controlador H∞ no lineal para
3.3 Control Backstepping/H∞ no lineal (Raffo et al., 2008a) 57
el problema de seguimiento de trayectoria, considerando la presencia de perturbaciones
externas e incertidumbres parametricas, se han realizado dos conjuntos de simulaciones,
como para los casos anteriores.
La trayectoria de referencia, condiciones iniciales, parametros del helicoptero y tasas
de incertidumbres en los parametros son los mismos que se utilizaron en los demas casos
previamente presentados.
La primera simulacion se ha realizada sin considerar perturbaciones externas. En la
segunda simulacion se ha considerado perturbaciones externas, donde se han aplicado
escalones mantenidos en los momentos aerodinamicos, o sea, en t = 5s se introdujo Ar =
5Nm, en t = 15s se afecto al sistema con Ap = 10Nm, y en t = 25s se aplico la ultima
perturbacion con amplitud de Aq = 10Nm. Los parametros del controlador descrito en
el Apartado 3.2.2 se han ajustado con los siguientes valores: α7 = 100, α8 = 3, α9 = 15,
α10 = 3, α11 = 15 y α12 = 3. Mientras el controlador H∞ no lineal se ha sintonizado con
las siguientes ganancias: ω1 = 1,9, ω2 = 3,0, ω3 = 2,5 y ωu = 0,02
En las Figuras 3.19-3.26 se presentan los resultados obtenidos para la estrategia de
control propuesta.
−0.6−0.4
−0.20
0.20.4
0.6
−0.5
0
0.5
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
5.5
x [m]y [m]
z [m]
ReferenciaInercia Nominal Inercia +20%Inercia −20%
Figura 3.19: Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia de
control utilizando Backstepping/H∞ no lineal sin perturbaciones externas.
58 3 Estructuras de Control
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1x
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1y
0 5 10 15 20 25 30 35 400
2
4
6
tiempo [s]
z
ReferenceNominal inertiaInertia +20%Inertia −20%
ReferenceNominal inertiaInertia +20%Inertia −20%
ReferenceNominal inertiaInertia +20%Inertia −20%
Figura 3.20: Evolucion temporal de la posicion cuando se aplica la estrategia de control
utilizando Backstepping/H∞ no lineal sin perturbaciones externas.
0 5 10 15 20 25 30 35 40−0.2
0
0.2
0.4
0.6φ [rad]
0 5 10 15 20 25 30 35 40−0.5
0
0.5
1
1.5θ [rad]
0 5 10 15 20 25 30 35 400
0.5
1
1.5
tiempo [s]
ψ [rad]
ReferenciaInercia Nominal Inercia +20%Inercia −20%
ReferenciaInercia Nominal Inercia +20%Inercia −20%
ReferenciaInercia Nominal Inercia +20%Inercia −20%
Figura 3.21: Evolucion temporal de la orientacion cuando se aplica la estrategia de control
utilizando Backstepping/H∞ no lineal sin perturbaciones externas.
3.3 Control Backstepping/H∞ no lineal (Raffo et al., 2008a) 59
0 10 20 30 400
20
40
60
80
100
120
tiempo [s]
u1
0 10 20 30 40−2000
0
2000
4000
6000
8000
10000
12000
tiempo [s]
u2
0 10 20 30 40−1
0
1
2
3
4x 10
4
tiempo [s]
u3
0 10 20 30 40−1000
0
1000
2000
3000
4000
tiempo [s]
u4
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Figura 3.22: Evolucion temporal de las entradas de control cuando se aplica la estrategia
de control utilizando Backstepping/H∞ no lineal sin perturbaciones externas.
−0.6−0.4
−0.20
0.20.4
0.6
−0.6−0.4
−0.20
0.20.4
0.60
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
5.5
x [m]y [m]
z [m]
ReferenciaInercia NominalInercia +20%Inercia −20%
Figura 3.23: Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia de
control utilizando Backstepping/H∞ no lineal con perturbaciones externas.
60 3 Estructuras de Control
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1x
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1y
0 5 10 15 20 25 30 35 400
2
4
6
tiempo [s]
z
ReferenciaInercia Nominal Inercia +20%Inercia −20%
ReferenciaInercia Nominal Inercia +20%Inercia −20%
ReferenciaInercia Nominal Inercia +20%Inercia −20%
Figura 3.24: Evolucion temporal de la posicion cuando se aplica la estrategia de control
utilizando Backstepping/H∞ no lineal con perturbaciones externas.
0 5 10 15 20 25 30 35 40−0.2
0
0.2
0.4
0.6φ [rad]
0 5 10 15 20 25 30 35 40−0.5
0
0.5
1
1.5θ [rad]
0 5 10 15 20 25 30 35 400
0.5
1
1.5
tiempo [s]
ψ [rad]
ReferenciaInercia Nominal Inercia +20%Inercia −20%
ReferenciaInercia Nominal Inercia +20%Inercia −20%
ReferenciaInercia Nominal Inercia +20%Inercia −20%
Figura 3.25: Evolucion temporal de la orientacion cuando se aplica la estrategia de control
utilizando Backstepping/H∞ no lineal con perturbaciones externas.
3.3 Control Backstepping/H∞ no lineal (Raffo et al., 2008a) 61
0 10 20 30 400
20
40
60
80
100
120
tiempo [s]
u1
0 10 20 30 40−2000
0
2000
4000
6000
8000
10000
12000
tiempo [s]
u2
0 10 20 30 40−1
0
1
2
3
4x 10
4
tiempo [s]
u3
0 10 20 30 40−1000
0
1000
2000
3000
4000
tiempo [s]
u4
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Figura 3.26: Evolucion temporal de las entradas de control cuando se aplica la estrategia
de control utilizando Backstepping/H∞ no lineal con perturbaciones externas.
Se puede notar que la estrategia de control propuesta utilizando el controlador H∞
no lineal en el sub-sistema de rotacion presenta un buen desempeno cuando el helicopte-
ro recibe vientos permanentes actuando como momentos sobre el mismo. La estructura
aplicada mantuvo la robustez, presentada en la estrategia anterior, ante incertidumbres
parametricas.
62 3 Estructuras de Control
3.4. CPBM con control H∞ no lineal (Raffo et al.,
2008b)
En este apartado se desarrolla una estructura de control para el problema seguimiento
de trayectoria del helicoptero quadrotor utilizando una estrategia de control predictivo
basado en modelo para el sub-sistema de traslacion, en cascada con el controlador H∞ no
lineal para el sub-sistema de rotacion, presentado en el Apartado 3.3.1 (vease la Figura
3.27).
H∞
Figura 3.27: Estructura de control CPBM con H∞ no lineal.
El control del sub-sistema de traslacion lineal se realiza mediante una estrategia de
control predictivo lineal que utiliza linealizaciones sucesivas para obtener el modelo del
error en cada paso de muestreo. Esta estrategia es ventajosa cuando el helicoptero recorre
un trayecto previamente calculado, ası, como se destaca en Camacho y Bordons (1998),
el control predictivo es bastante favorable en robotica y en procesos en lote, cuando la
trayectoria de referencia futura es conocida a priori.
A continuacion se presenta el controlador predictivo utilizado para el seguimiento de
trayectoria aplicado al helicoptero quadrotor.
3.4.1. Estrategia de CPBM para seguimiento de trayectoria
El controlador que se desarrolla aquı utiliza el metodo de cpbm lineal en espacio de
estados a traves del modelo del error, el cual se obtiene realizando linealizaciones sucesivas
3.4 CPBM con control H∞ no lineal (Raffo et al., 2008b) 63
a lo largo de la trayectoria de referencia.
Se sintetizan dos controladores predictivos para el sub-sistema de traslacion. En el
primer paso se controla la altura a traves de la entrada U1, mientras que en el segundo
paso se utiliza esta senal como parametro variante con el tiempo para calcular las entradas
virtuales para el movimiento lineal en el plano xy.
Antes de desarrollar el controlador para el helicoptero se introduce el concepto del
metodo de cpbm lineal en espacio de estados.
Control predictivo utilizando espacio de estados
Considerando que la referencia es conocida en cualquier instante futuro de la tra-
yectoria, es posible, a traves de linealizaciones sucesivas a lo largo de la trayectoria de
referencia, obtener una descripcion lineal y variante en el tiempo del modelo del sistema
(Raffo, 2005). Ası, el modelo en espacio de estados discreto y variante en el tiempo usado
por el algoritmo en cuestion para obtener las predicciones futuras esta dado por:
x(k + 1) = A(k) · x(k) + B(k) · u(k)y(k) = C(k) · x(k) . (3.44)
Por lo tanto, considerando el sistema de arriba y los horizontes de prediccion, N2, y de
control, Nu, las predicciones de los estados estan descritas como sigue (Rossiter, 2003):
x = Px(k|k) · x(k|k) + Hx(k|k) · uy = P(k|k) · x(k|k) + H(k|k) · u , (3.45)
con
x∆=
x(k + 1|k)x(k + 2|k)
...x(k +N2 − 1|k)x(k +N2|k)
, y∆=
y(k + 1|k)y(k + 2|k)
...y(k +N2 − 1|k)y(k +N2|k)
, u∆=
u(k|k)u(k + 1|k)
...u(k +Nu− 2|k)u(k +Nu− 1|k)
y
Px(k|k) ∆=
A (k |k )A (k |k )A (k + 1 |k )
...α(k, 0, 2)α(k, 0, 1)
,
Hx(k|k) ∆=
B(k|k) 0 · · · 0A(k + 1|k) · B(k|k) B(k + 1|k) · · · 0
......
. . ....
α(k, 1, 2) · B(k|k) α(k, 2, 2) · B(k + 1|k) · · · 0α(k, 1, 1) · B(k|k) α(k, 2, 1) · B(k + 1|k) · · · B(k +Nu− 1|k)
,
64 3 Estructuras de Control
donde α(k, j, l) esta definido como:
α(k, j, l)∆=
N2−l∏
i=j
A(k + i|k) . (3.46)
Estas ecuaciones de prediccion no consideran el modelo de perturbacion de forma
explıcita. Sin embargo, la accion integral puede ser incluida en el modelo para garantizar
error nulo en regimen permanente de la siguiente manera:
u = −K(x − xr) + ur , (3.47)
donde xr y ur son, respectivamente, los valores de referencia calculados fuera de lınea de
los estados y entradas de control, y estan definidos por:
xr∆=
xr(k + 1|k)xr(k + 2|k)
...xr(k +N2 − 1|k)xr(k +N2|k)
, ur∆=
ur(k|k)ur(k + 1|k)
...ur(k +Nu − 2|k)ur(k +Nu − 1|k)
.
Ası, dada una ley de control que garantice que
lımk→∞
x(k) = xr(k)u(k) = ur(k)
,
entonces y(k) = yr(k), donde yr es la trayectoria de referencia.
Usando la ecuacion de prediccion (3.45) y considerando que los estados y entradas de
referencia son conocidos se puede asegurar que el mınimo de la funcion de coste, dada por
(3.48), es consistente con error cero de seguimiento (Rossiter, 2003), donde se minimiza
la funcion de coste en forma de una norma-2 ponderada por Q y R:
J =N2∑
j=1
‖yr(k + j|k) − y(k + j|k)‖2Q +
Nu−1∑
j=0
‖u(k + j|k) − ur(k + j|k)‖2R . (3.48)
Se acepta frecuentemente que la funcion de coste es consistente con error cero de
seguimiento, teniendo que Q agrega terminos de la forma C′C, donde yr−y = C(xr−x).
La funcion de coste (3.48) puede ser escrita y optimizada de la siguiente forma:
mınuJ = [x − xr]
′ Q [x − xr] + [u − ur]′ R [u− ur] , (3.49)
la cual penaliza los desvıos a partir del valor de regimen permanente. Esta difiere de
la funcion del gpc (Generalized Predictive Control), pues optimiza la distancia de las
3.4 CPBM con control H∞ no lineal (Raffo et al., 2008b) 65
entradas al valor de regimen permanente, al reves de los incrementos de la senal de control.
Las matrices de ponderacion de los estados, Q, y de las entradas, R, son positivas definidas
y diagonales (Rossiter, 2003).
En ausencia de restricciones en los estados y en el control, la ley de control puede ser
obtenida de forma algebraica minimizando la funcion de coste (3.49), la cual resulta ser
una realimentacion de estados, dada por:
u = [H′x ·Q · Hx + R]
−1 · [H′x · Q · (xr −Px · x(k)) + R · ur] . (3.50)
Debido a la caracterıstica de horizonte deslizante del cpbm, solamente u(k) es necesario
en cada instante k (Camacho y Bordons, 1998).
CPBM utilizando modelo del error para movimiento lineal en el plano xy
En el primer paso se define el modelo del error para las dinamicas de traslacion del
helicoptero quadrotor. Para obtenerlo se considera la existencia de un helicoptero de re-
ferencia virtual sobre la trayectoria a seguir, la cual sera descrita por el mismo modelo
del vehıculo, en el caso, el modelo de traslacion. Para esto, se considera que la trayectoria
de referencia se obtiene fuera de lınea y varıa con el tiempo. El objetivo de utilizar esta
estrategia, para entradas de referencia no-nulas, es calcular una ley de control lineal que
haga que el error entre el vehıculo y la referencia sea nulo (Nelson y Cox, 1988).
Como el controlador predictivo sera usado solo para el control de los movimientos de
traslacion, se utiliza el modelo descrito por la ecuacion (2.41) considerando las fuerzas
aerodinamicas nulas. Este sub-sistema se reescribe de la forma del espacio de estados˙x(t) = f(x(t), u(t)), donde x(t) = [z(t) w0(t) x(t) u0(t) y(t) v0(t)]
T .
A traves de un cambio de variables se suponen entradas virtuales de control para el
movimiento lineal en el plano xy, y el sistema (2.41) con el nuevo vector de estados se
puede escribir de la siguiente forma:
˙x(t) = f(x(t), u(t)) =
w0(t)
−g + (cos θ(t) cosφ(t))U1(t)
mu0(t)
ux(t)U1(t)
mv0(t)
uy(t)U1(t)
m
(3.51)
con:ux(t) = (cosψ(t) sin θ(t) cosφ(t) + sinψ(t) sinφ(t))uy(t) = (sinψ(t) sin θ(t) cosφ(t) − cosψ(t) sinφ(t))
(3.52)
66 3 Estructuras de Control
A partir de (2.41) se puede ver que el movimiento a traves de los ejes x y y dependen de
la entrada U1. De hecho, U1 es el vector de empuje total designado a obtener el movimiento
de traslacion deseado. Ası, ux y uy se puede considerar como las orientaciones de U1
responsables de los movimientos a traves de los ejes x y y, respectivamente.
Para obtener el modelo del error se define un robot de referencia con el mismo modelo
del vehıculo:
˙xref (t) = f(xref (t), uref (t)) =
w0ref(t)
−g + (cos θ(t) cos φ(t))U1ref
(t)
mu0ref
(t)
uxref(t)U1(t)
mv0ref
(t)
uyref(t)U1(t)
m
(3.53)
donde ˙xref(t) = [zref(t) w0ref(t) xref (t) u0ref
(t) yref(t) v0ref(t)]T y uref (t) =
[U1refuxref
uyref]T son los estados y las entradas de control de referencia, respectiva-
mente.
Como se puede ver, en las dinamicas de xref y yref no se utiliza la senal de control
U1ref, pues con el procedimiento utilizado, que sera presentado a continuacion, la senal
de control U1 viene dada por el controlador de la altura y se considera en este paso como
un parametro variante con el tiempo. Lo mismo se considera para los angulos φ(t), θ(t),
ψ(t), los cuales se suponen parametros variantes con el tiempo.
El modelo linealizado puede ser obtenido a traves de un modelo del error entre el
sistema (3.51) y el sistema de referencia (3.53). Para ello, se expande el termino derecho
de la ecuacion (3.51) a traves de Series de Taylor en torno a un punto de operacion de la
trayectoria de referencia y se desprecian los terminos de orden superior. Ası, se tiene:
˙x(t) = f(xref (t), uref (t), t) +∂f(x(t), u(t), t)
∂x(t)
∣
∣
∣
∣ x=xrefu=uref
· (x(t) − xref (t))
+∂f(x(t), u(t), t)
∂u(t)
∣
∣
∣
∣ x=xrefu=uref
· (u(t) − uref (t)). (3.54)
Sustrayendo la ecuacion (3.53) de la (3.54) se obtiene el modelo del error de traslacion
para el helicoptero propuesto:
˙x(t) =∂f(x(t), u(t), t)
∂x(t)
∣
∣
∣
∣ x=xrefu=uref
· x(t) +∂f(x(t), u(t), t)
∂u(t)
∣
∣
∣
∣ x=xrefu=uref
· u(t) , (3.55)
donde x(t) = x(t) − xref (t) representa el error con respecto al modelo de referencia y
3.4 CPBM con control H∞ no lineal (Raffo et al., 2008b) 67
u(t) = u(t) − uref (t) es la perturbacion de la entrada de control. Ası, como:
A(t) =∂f(x(t), u(t), t)
∂x(t)
∣
∣
∣
∣ x=xrefu=uref
=
0 1 0 0 0 00 0 0 0 0 00 0 0 1 0 00 0 0 0 0 00 0 0 0 0 10 0 0 0 0 0
(3.56)
B(t) =∂f(x(t), u(t), t)
∂u(t)
∣
∣
∣
∣ x=xrefu=uref
=
0 0 01
mcos θ(t) cosφ(t) 0 0
0 0 0
0U1(t)
m0
0 0 0
0 0U1(t)
m
, (3.57)
son los jacobianos de (3.51) con respecto a x(t) y u(t), respectivamente, calculados en
torno al punto (xref (t), uref (t), t). El modelo del error dado por (3.55) se puede escribir
de la siguiente manera:˙x(t) = A(t) · x(t) + B(t) · u(t) . (3.58)
A traves del metodo de discretizacion de Euler, se tiene el siguiente modelo discreto
lineal variante con el tiempo:
x(k + 1) = A(k) · x(k) + B(k) · u(k) , (3.59)
con
A(k) =
1 T 0 0 0 00 1 0 0 0 00 0 1 T 0 00 0 0 1 0 00 0 0 0 1 T0 0 0 0 0 1
(3.60)
B(k) =
0 0 0T
mcos θ(t) cosφ(t) 0 0
0 0 0
0TU1(t)
m0
0 0 0
0 0TU1(t)
m
, (3.61)
donde T es el perıodo de muestreo y, como la senal de control es actualizada solamente
en los instantes de tiempo tk = kT , siendo k el instante de muestreo, se denota de forma
simplificada como x(k) = x(kT ) y u(k) = u(kT ).
68 3 Estructuras de Control
A partir de este analisis, el problema de seguimiento de trayectoria para un helicoptero
autonomo puede ser entendido como: encontrar las entradas de control, dentro de un
intervalo de valores posibles, de tal forma que permitan llevar los estados del sistema
(3.58) de una condicion inicial x0 hasta el origen (Sun, 2005), esto es:
limt→∞
x = 0 .
Por consiguiente, para calcular el controlador predictivo basado en el modelo del error
(3.55), teniendo en cuenta que las dinamicas de traslacion dependen solo de la fuerza de
empuje, U1, este se divide en dos sub-sistemas: el del error de altura y el del error de
movimiento en el plano xy, y son dados por:
xz (k + 1) =
[
1 10 T
] [
z(k)w0(k)
]
+
[
0Tm
cos θref(k) cosφref(k)
]
U1(k) (3.62)
xxy(k + 1) =
1 T 0 00 1 0 00 0 1 T0 0 0 1
x(k)u0(k)y(k)v0(k)
+
0 0TmU1(k) 00 00 T
mU1(k)
[
ux(k)uy(k)
]
(3.63)
Ası, utilizando el modelo de la altura , se reescribe primero la ley de control predictivo
descrita en (3.50) en funcion de (3.62):
U1 = [Hz′ · Qz · Hz + Rz]
−1 ·[
Hz′ · Qz · (xzr
− Pz · xz(k)) + Rz · U1r
]
, (3.64)
con los errores de los estados de referencia calculados como la diferencia del valor de la
referencia futura en relacion al actual y, los errores de las entradas de referencia como la
diferencia del valor futuro en relacion al valor en el paso anterior. Por lo tanto, se tiene:
xzr
∆=
xzr(k + 1|k) − xzr
(k|k)xzr
(k + 2|k) − xzr(k|k)
...xzr
(k +N2 − 1|k) − xzr(k|k)
xzr(k +N2|k) − xzr
(k|k)
;
U1ref
∆=
U1ref(k|k) − U1ref
(k − 1|k)U1ref
(k + 1|k) − U1ref(k − 1|k)
...U1ref
(k +Nu − 2|k) − U1ref(k − 1|k)
U1ref(k +Nu − 1|k) − U1ref
(k − 1|k)
.
A partir de (3.64) se obtiene U1(k) = U1(k) + U1ref(k), y con esto se pasa al proximo
paso, donde se calculan las entradas virtuales de control para el movimiento en el plano
3.4 CPBM con control H∞ no lineal (Raffo et al., 2008b) 69
xy. La ley de control se obtiene con el procedimiento anterior, utilizando el modelo del
error (3.63), y esta dada por:
uxy = [Hxy′ · Qxy · Hxy + Rxy]
−1 ·[
Hxy′ · Qxy ·
(
xxyr−Pxy · xxy(k)
)
+ Rxy · uxyr
]
,
(3.65)
donde uxy = [ux(k) uy(k)]T , y
[
ux(k)uy(k)
]
=
[
ux(k)uy(k)
]
+
[
uxref(k)
uyref(k)
]
Los estados y entradas de control del error de referencia se obtienen de la misma
manera que para el caso del controlador de la altura.
A partir de ux(k) y uy(k), y con la relacion dada por (3.52) se obtiene la referencia
de los angulos de balanceo (roll), φ(k), y cabeceo (pitch), θ(k), que son utilizados como
referencia por el controlador H∞ no lineal en los movimientos de rotacion del helicoptero.
3.4.2. Resultados de simulacion
Para comprobar el desempeno de esta estrategia de control en la tarea de seguimien-
to de trayectoria, teniendo en cuenta perturbaciones externas e incertidumbres en los
parametros, se han realizado diversas simulaciones.
Nuevamente se utilizo el mismo protocolo para presentar los resultados, utilizando la
misma trayectoria de referencia, condiciones iniciales, parametros del helicoptero y tasas
de incertidumbres de los casos anteriores. Ası que, la primera simulacion se ha realizado
sin considerar perturbaciones externas, ası como, la segunda simulacion se consideraron
perturbaciones externas, donde se aplicaron escalones mantenidos en los momentos aero-
dinamicos, o sea, en t = 5s se introdujo Ar = 5Nm, en t = 15s se afecto el sistema con
Ap = 10Nm, y en t = 25s se aplico la ultima perturbacion con amplitud de Aq = 10Nm. Se
utilizaron las mismas ganancias del controlador H∞ no lineal del caso anterior: ω1 = 0,05,
ω2 = 0,5, ω3 = 3,5 y ωu = 0,02. Para el cpbm se ajustaron los parametros como sigue:
N2z= Nuz
= 3Inz , Qz =
[
1 00 1
]
, Rz = 0,01
N2xy= Nuxy
= 3Inxy , Qxy =
5 0 0 00 1 0 00 0 5 00 0 0 1
, Rxy =
[
150 00 150
]
y se considero un periodo de muestreo de T = 0,1s.
Las Figuras 3.28 - 3.35 presentan los resultados logrados a partir de la estructura de
control con cpbm y H∞ no lineal.
70 3 Estructuras de Control
−1
−0.5
0
0.5
1
−1
−0.5
0
0.5
10.5
1
1.5
2
2.5
3
3.5
4
4.5
5
xy
z
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.28: Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia de
control utilizando cpbm y H∞ no lineal sin perturbaciones externas.
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1x
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1y
0 5 10 15 20 25 30 35 400
2
4
6
tiempo [s]
z
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.29: Evolucion temporal de la posicion cuando se aplica la estrategia de control
utilizando cpbm y H∞ no lineal sin perturbaciones externas.
3.4 CPBM con control H∞ no lineal (Raffo et al., 2008b) 71
0 5 10 15 20 25 30 35 40−0.04
−0.02
0
0.02φ
0 5 10 15 20 25 30 35 40−0.05
0
0.05
0.1
0.15θ
0 5 10 15 20 25 30 35 400
0.5
1
1.5
tiempo [s]
ψ
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.30: Evolucion temporal de la orientacion cuando se aplica la estrategia de control
utilizando cpbm y H∞ no lineal sin perturbaciones externas.
0 10 20 30 400
5
10
15
20
25
tiempo [s]
u1
0 10 20 30 40−500
0
500
1000
tiempo [s]
u2
0 10 20 30 40−1000
−500
0
500
1000
1500
2000
tiempo [s]
u3
0 10 20 30 40−0.5
0
0.5
1
1.5
2
2.5x 10
4
tiempo [s]
u4
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Figura 3.31: Evolucion temporal de las entradas de control cuando se aplica la estrategia
de control utilizando cpbm y H∞ no lineal sin perturbaciones externas.
72 3 Estructuras de Control
−1
−0.5
0
0.5
1
−1
−0.5
0
0.5
10.5
1
1.5
2
2.5
3
3.5
4
4.5
5
xy
z
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.32: Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia de
control utilizando cpbm y H∞ no lineal con perturbaciones externas.
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1x
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1y
0 5 10 15 20 25 30 35 400
2
4
6
tiempo [s]
z
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.33: Evolucion temporal de la posicion cuando se aplica la estrategia de control
utilizando cpbm y H∞ no lineal con perturbaciones externas.
3.4 CPBM con control H∞ no lineal (Raffo et al., 2008b) 73
0 5 10 15 20 25 30 35 40−0.04
−0.02
0
0.02
0.04φ
0 5 10 15 20 25 30 35 40−0.05
0
0.05
0.1
0.15θ
0 5 10 15 20 25 30 35 400
0.5
1
1.5
tiempo [s]
ψ
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
ReferenciaInercia nominalInercia +20%Inercia −20%
Figura 3.34: Evolucion temporal de la orientacion cuando se aplica la estrategia de control
utilizando cpbm y H∞ no lineal con perturbaciones externas.
0 10 20 30 400
5
10
15
20
25
tiempo [s]
u1
0 10 20 30 40−1500
−1000
−500
0
500
1000
tiempo [s]
u2
0 10 20 30 40−1500
−1000
−500
0
500
1000
1500
2000
tiempo [s]
u3
0 10 20 30 40−0.5
0
0.5
1
1.5
2
2.5x 10
4
tiempo [s]
u4
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Inercia nominalInercia +20%Inercia −20%
Figura 3.35: Evolucion temporal de las entradas de control cuando se aplica la estrategia
de control utilizando cpbm y H∞ no lineal con perturbaciones externas.
Se puede ver que la estrategia de control propuesta utilizando el controlador H∞ no
lineal en el sub-sistema de rotacion mantuvo el buen desempeno del caso anterior cuando
el helicoptero recibe vientos permanentes actuando como momentos sobre el mismo. En
el control de los movimientos de traslacion el cpbm presento un seguimiento de la tra-
yectoria mas suave, principalmente en el inicio del trayecto, donde el helicoptero parte de
74 3 Estructuras de Control
una condicion distinta de la trayectoria. Esto se puede justificar porque tal controlador
considera, en el calculo de la senal de control, la referencia futura, y ası, intenta prede-
cir el camino suavizando el desplazamiento. Ademas, esta estructura de control tambien
tiene una buena robustez ante incertidumbres parametricas, al igual que la estrategia
presentada anteriormente.
3.5 Control robusto H∞ de los seis grados de libertad 75
3.5. Control robusto H∞ de los seis grados de libertad
En este apartado se presenta una estrategia de control robusto de los seis grados
de libertad utilizando la teorıa de control H∞ para resolver el problema de seguimiento
de trayectoria. Con esta estructura se busca que el sistema sea robusto ante cualquier
tipo de perturbacion, inclusive la mantenida, y considerando todos los parametros con
incertidumbres.
Al igual que en el apartado anterior, en este se desarrolla solamente el controlador
para los movimientos de traslacion lineal del helicoptero. Para esto se propone un contro-
lador H∞ lineal con realimentacion de estados vıa formulacion de lmis, y disenado para
sistemas inciertos. Para la estabilizacion de los movimientos rotacionales se ha utilizado
el controlador H∞ no lineal vıa teorıa de juegos presentado en el Apartado 3.3 (vease la
Figura 3.36).
H∞
H∞
Figura 3.36: Estructura de control robusto H∞ de los seis grados de libertad.
A continuacion se hace una breve introduccion del control H∞ lineal y su formulacion
vıa lmis para realimentacion de estados. Para finalizar, se presentan algunos resultados
de simulacion.
3.5.1. Control H∞ lineal
Se pueden describir un gran numero de controladores de importancia practica usando
diagramas de bloques como se presenta en la Figura 3.37. El problema de diseno del
76 3 Estructuras de Control
controlador puede ser formulado como un problema de optimizacion H∞. En esta figura,
P (s) es la planta generalizada, K(s) es el controlador, u son las senales de control, v las
variables medibles, ω las senales exogenas y z son las variables de error de interes.
Figura 3.37: Formulacion General del problema de control (Ortega y Rubio, 2004).
La norma H∞ de la funcion de transferencia en bucle cerrado de ω a z, Hωz, se define
como la mayor ganancia de su respuesta en frecuencia. Una de las maneras de determinar la
norma H∞ de un sistema nominal es a traves de su respuesta en frecuencia. Para sistemas
siso se puede utilizar el diagrama de Bode para obtener la maxima ganancia del sistema
con respecto a todas las frecuencias. Por otra parte, en el caso mimo la idea de modulo no
se aplica y debe ser sustituida por la norma espectral de la matriz de transferencia, donde
la respuesta frecuencial puede ser obtenida a traves de la nocion de la descomposicion en
valores singulares. Ası, para sistemas siso la norma H∞ puede ser descrita como el pico
de resonancia de la respuesta en frecuencia, que es la mayor ganancia que el sistema es
capaz de ofrecer a la senal de entrada,
‖Hωz(s)‖∞ = maxω
|H(jω)| = Mr . (3.66)
y para sistemas mimo, a traves de un diagrama de Bode que se puede obtener para la
funcion ‖Hωz(jω)‖∞ = σHωz(jω), la norma H∞ del sistema corresponde al maximo
pico de resonancia de esa funcion dando origen a la funcion:
‖Hωz(s)‖∞ = supω
σ Hωz(jω) (3.67)
Como ya se ha dicho, la norma H∞ de un sistema representa la mayor ganancia de
su respuesta en frecuencia y tambien puede verse como la mayor ganancia en terminos
de energıa que el sistema puede ofrecer a una senal de entrada. Esta interpretacion es
bastante util y provee una definicion alternativa para la norma H∞. Por el teorema de
Parseval se tiene:
‖w(t)‖22 =
1
2π
∫ ∞
0
W (jω) ∗W (jω)dω , ‖z(t)‖22 =
1
2π
∫ ∞
0
Z(jω) ∗ Z(jω)dω
donde W (jω), Z(jω) son las transformadas de Fourier de las senales ω(t), z(t). Como
3.5 Control robusto H∞ de los seis grados de libertad 77
Z(jω) = Hωz(jω)W (jω) se tiene:
‖z(t)‖22 =
1
2π
∫ ∞
0
W (jω) ∗Hwz(jω) ∗W (jω) ∗Hwz(jω)dω
≤ 1
2π
∫ ∞
0
(σ Hwz(jω))2W (jω) ∗W (jω)dω
≤(
supω
σ Hwz(jω))2
1
2π
∫ ∞
0
W (jω) ∗W (jω)dω
(3.68)
Esta ultima expresion se puede escribir en la siguiente forma:
‖z(t)‖2 ≤ ‖Hwz(s)‖∞ ‖w(t)‖2
donde se nota que la norma H∞ de un sistema tambien puede verse como la mayor
ganancia en terminos de energıa que el sistema puede ofrecer a una senal de entra-
da. Si se elige la senal de entrada W (jω) adecuadamente puede tenerse la igualdad
‖z(t)‖2 = ‖Hwz(s)‖∞ ‖w(t)‖2. Para ello basta elegir ω(t) = V0sen(ω0t)GT (t) donde V0
es el autovector de Hwz(jω0)∗Hwz(jω0) correspondiente a su mayor autovalor, ω0 es la
frecuencia donde se da el supω σ Hωz(jω) y GT (t) es la funcion puerta que define el
truncamiento de la senal para T suficientemente grande. Los elementos del vector V0 son
las amplitudes de los senos de cada componente del vector ω(t). A partir de esta relacion
se puede definir la version en el dominio del tiempo de la norma H∞ como (Trofino et al.,
2003):
‖Hwz(s)‖∞ = supw 6=0
‖z(t)‖2
‖w(t)‖2
(3.69)
El problema de control H∞ optimo con esta configuracion consiste en calcular un
controlador que minimice la tasa γ entre la energıa de la variable de coste z y la energıa
del vector de los senales exogenos ω. Este problema optimo no esta resuelto aun, pero
la solucion existe para el problema sub-optimo (Ortega y Rubio, 2004), donde una idea
muy comun consiste en determinar numericamente un lımite superior γ para ‖Hωz(s)‖∞utilizando la definicion (3.69), o sea, se busca un escalar positivo tal que:
‖Hwz(s)‖∞ < γ . (3.70)
Se limita el tratamiento a los controladores sub-optimos, ya que encontrar controlado-
res H∞ optimos es una tarea difıcil, y en la practica, esos controladores pueden presentar
propiedades indeseables y los calculos pueden conducir a problemas numericos (Sanchez-
Pena y Sznaier, 1998).
Ası, para el problema H∞ sub-optimo la tasa de energıa γ puede ser calculada como la
norma H∞ de la matriz de transferencia en bucle cerrado de ω para z, Hωz(s), buscando
78 3 Estructuras de Control
el mınimo a traves de un proceso iterativo (Ortega et al., 2006). Este problema se puede
resolver de distintas maneras, como por ejemplo por la ecuacion de Riccati, por la matriz
Hamiltoniana o por lmi (Trofino et al., 2003).
En este trabajo se resuelve el problema H∞ sub-optimo a traves de la formulacion por
lmis, que sera presentada a continuacion.
3.5.2. Control H∞ con realimentacion de estados vıa lmis
Inicialmente, se presenta como determinar la norma H∞ vıa lmi (Trofino et al., 2003).
Observese que la condicion deseada:
‖Hwz(s)‖∞ = supw 6=0
‖z(t)‖2
‖w(t)‖2
= supw 6=0
√
∫ ∞
0
z(t)′z(t)
w(t)′w(t)dt < γ , (3.71)
se puede reescribir como ya se presento para el caso no lineal, de la siguiente forma:∫ ∞
0
z(t)′z(t)dt < γ2
∫ ∞
0
w(t)′w(t)dt . (3.72)
Como el sistema es exponencialmente estable y las condiciones iniciales son nulas, se
considera el problema de determinar una funcion de Lyapunov V (x) = x(t)′Px(t), donde
la matriz P es una matriz simetrica definida positiva, tal que:
V (x) + z(t)′z(t) − γ2w(t)′w(t) < 0 , (3.73)
donde V (x) es la derivada de V (x) para las trayectorias del sistema. Observese que si se
encuentra V (x) que satisfaga la condicion (3.73) entonces se satisface (3.71) por tanto
(3.72). El interes de la condicion anterior es que se puede expresar como una lmi.
Ası, para la sıntesis de un controlador H∞ con realimentacion de estados vıa lmis se
considera el siguiente sistema lineal:
x (t) = Ax (t) +Bu (t) +Bωω (t)z (t) = Czx (t) +Duzu (t) +Dωzω (t)u(t) = Kx(t)
(3.74)
donde x(t) ∈ ℜn representa el vector de estados, u(t) ∈ ℜm la senal de control, A, Bu y
Bω son matrices del sistema con dimensiones apropiadas, Cz, Duz y Dωz son matrices de
ponderacion con dimensiones apropiadas y K es una matriz de ganancia del controlador
a ser determinada.
En bucle cerrado el sistema (3.74) se queda:
x (t) = (A+BK)x (t) +Bωω (t)z (t) = (Cz +DuzK)x (t) +Dωzω (t)
(3.75)
3.5 Control robusto H∞ de los seis grados de libertad 79
Utilizando la expresion (3.73), poniendo el sistema (3.75) en esta formulacion, utili-
zando el complemento de Schur y algunos cambios de variables, entonces la norma H∞
del sistema (3.75) esta dada por el siguiente problema de optimizacion:
mınQ,Y
γ :
Q > 0,
AQ+QA′ +BY + Y ′B′ Bω QC ′z + Y ′D′
ωz
B′ω −γInω
D′ωz
CzQ+DωzY Dωz −γInz
< 0(3.76)
El resultado anterior se resume a traves del siguiente teorema.
Teorema: Considere el sistema lineal en (3.75). Suponga que las matrices Q = Q′ y
Y de dimensiones apropiadas y el escalar γ sean la solucion del problema de optimizacion
definido en (3.76).
Entonces el sistema (3.75) con K = Y Q−1 es asintoticamente estable y la norma H∞
del sistema en bucle cerrado satisface ‖Hωz(s)‖∞ ≤ √γ.
La formulacion del control H∞ con realimentacion de estados para un sistema incierto
se presenta a continuacion. Debe considerarse que las incertidumbres estan confinadas
en un politopo de vertices conocidos, pues en las lmis aquı presentadas las matrices del
sistema aparecen de forma afın en las expresiones. Este hecho permite utilizar propiedades
de convexidad para trabajar con los vertices del politopo.
Considere el sistema incierto:
x (t) = A (δ) x (t) +Bu (δ)u (t) +Bw (δ)w (t)z (t) = Cz (δ) x (t) +Duz (δ) u (t) +Dwz (δ)w (t)u(t) = Kx(t) δ ∈ ∆
(3.77)
donde δ ∈ ℜq es el vector de los parametros con incertidumbres y ∆ = Cov1, . . . , v2q es
un politopo de vertices vi conocidos. Las matrices A (δ), Bu (δ), Bω (δ), Cz (δ), Duz (δ),
Dωz (δ) son funciones afines de δ. Los demas vectores son los mismos definidos anterior-
mente. Ası, se tiene:
mınQ,P
γ :
Q > 0,
A(δ)Q+QA(δ)′ +B(δ)Y + Y ′B(δ)′ ∗ ∗Bω(δ)
′ −γInz∗
Cz(δ)Q+Dωz(δ)Y Dωz(δ) −γInz
< 0(3.78)
donde ∗ representa los terminos que pueden ser deducidos por simetrıa. Ademas, debido
80 3 Estructuras de Control
a la convexidad, las lmis anteriores son equivalentes al conjunto de 2q lmis:
mınPγ :
Q > 0,
A(v1)Q+QA(v1)′ +B(v1)Y + Y ′B(v1)
′ ∗ ∗Bω(v1)
′ −γInω∗
Cz(v1)Q+Dωz(v1)Y Dωz(v1) −γInz
< 0
...
A(v2q)Q+QA(v2q )′ +B(v2q)Y + Y ′B(v2q)′ ∗ ∗Bω(v2q)′ −γInω
∗Cz(v2q)Q+Dωz(v2q)Y Dωz(v2q) −γInz
< 0
(3.79)
obtenidos de (3.78) con δ = vi para i = 1, . . . , 2q, donde vi son los vertices del politopo ∆.
3.5.3. Control H∞ de los movimientos de traslacion
Para disenar el controlador de los movimientos de traslacion se utiliza el modelo del
error (3.55), presentado en el Apartado 3.4. Sin embargo, para obtener una ley de control
robusta, este modelo considera las perturbaciones aerodinamicas de traslacion que afec-
tan el helicoptero quadrotor. Ası, el modelo del error de traslacion obtenido a partir del
sub-sistema (2.41), reescrito a traves del mismo procedimiento utilizado anteriormente y
considerando el vector de perturbaciones ω(t) = [Az Ax Ay]T esta dado por:
˙x(t) =∂f(x(t), u(t), ω(t), t)
∂x(t)
∣
∣
∣
∣ x=xrefu=uref
· x(t) +∂f(x(t), u(t), ω(t), t)
∂u(t)
∣
∣
∣
∣ x=xrefu=uref
· u(t)
+∂f(x(t), u(t), ω(t), t)
∂ω(t)
∣
∣
∣
∣ x=xrefu=uref
· ω(t)
,
(3.80)
donde x(t), u(t), xref (t) y uref (t) son los mismos vectores definidos en el apartado anterior,
y ωref (t) = [AzrefAxref
Ayref]T = 0 son las perturbaciones externas de referencia. Ası,
las matrices A(t) y Bu(t) son los jacobianos con respecto a x(t) y u(t) definidos en (3.56)
y (3.57), respectivamente, y:
Bω(t) =∂f(x(t), u(t), ω(t), t)
∂ω(t)
∣
∣
∣
∣ x=xrefu=uref
=
0 0 01
m0 0
0 0 0
01
m0
0 0 0
0 01
m
, (3.81)
es el jacobiano con respecto a ω(t), todos calculados en torno al punto (xref (t),
uref (t), ωref (t), t). El modelo del error dado por (3.80) considerando los terminos de per-
3.5 Control robusto H∞ de los seis grados de libertad 81
turbacion se puede escribir de la siguiente manera:
˙x(t) = A(t) · x(t) + Bu(t) · u(t) + Bω(t) · ω(t) . (3.82)
Siendo ası, a partir del modelo del error de traslacion (3.82) y utilizando la sıntesis de
control H∞ con realimentacion de estados para sistemas inciertos vıa lmis se calcula la
ley de control para resolver el problema de seguimiento de trayectoria de forma robusta.
Como se realizo para el caso del cpbm, se divide el modelo del error de los movimientos
de traslacion en dos sub-sistemas. Ası, se disenan dos controladores H∞ lineales para el
sub-sistema de traslacion. El primero controla la altura a traves de la entrada U1, mientras
el segundo utiliza esta senal como parametro variante con el tiempo para calcular las
entradas virtuales para el movimiento lineal en el plano xy.
Por otro lado, utilizando el modelo del error (3.82) para disenar un controlador por
realimentacion de estados no serıa posible rechazar perturbaciones externas mantenidas.
Ası, para tener esto en cuenta, se considera el siguiente vector del error aumentado:
x =
zw0∫
zxu0∫
xyv0∫
y
=
z − zrefw0 − w0ref∫
(z − zref)dtx− xrefu0 − u0ref
∫
(x− xref)dty − yrefv0 − v0ref
∫
(y − yref)dt
(3.83)
Notese que en el vector del error se ha incluido un termino integral. Este termino
permitira lograr un error nulo en regimen permanente cuando se apliquen perturbaciones
mantenidas al sistema (Ortega et al., 2005).
Por consiguiente, para calcular los controladores basados en el modelo del error (3.82)
y con el vector del error aumentado se tienen los siguientes modelos:
xz (t) =
0 1 00 0 01 0 0
[
z(t)w0(t)
]
+
01m
cos θ(t) cosφ(t)0
U1(1) (3.84)
xxy(t) =
0 1 0 0 0 00 0 0 0 0 01 0 0 0 0 00 0 0 0 1 00 0 0 0 0 00 0 0 1 0 0
x(t)u0(t)y(t)v0(t)
+
0 01mU1(t) 00 00 00 1
mU1(t)
0 0
[
ux(k)uy(k)
]
(3.85)
82 3 Estructuras de Control
En primer lugar se realiza el control de la altura. Para ello se reescribe el modelo
del error de la altura (3.62) de la forma del sistema incierto (3.77), donde se tienen las
siguiente matrices:
Az(δ(t)) =
0 1 00 0 01 0 0
Buz(δ(t)) =
01m
cos θ(t) cosφ(t)0
Bωz(δ(t)) =
01m
0
Czz(δ(t)) =
2 0 00 2 00 0 5
Duzz(δ(t)) =
010
Dωzz(δ(t)) =
011
(3.86)
donde δ(t) = [φ(t) θ(t)]′ es el vector de parametros inciertos. Los posibles valores para
los parametros estan dentro de un conjunto compacto definido por δ(t) ∈ [−45, 45] ×[−45, 45]. ∆ = Co v1, . . . , v4 es un politopo de vertices vi conocidos.
El sistema en bucle cerrado entre la variable de interes z y la perturbacion ω es:
˙xz = (A(δ) + Bu(δ)Kz) xz + Bωωz = (Czz
+ DuzzKz) xz + Dωzz
ω(3.87)
La sıntesis del controlador H∞ se realiza conforme a la formulacion presentada en
el Apartado 3.5.2 minimizando la expresion (3.76). Para el sistema (3.86) se obtiene la
siguiente ley de control por realimentacion de estados:
Kz = YQ−1
U1 = Kzxz
(3.88)
Para resolver este problema se ha utilizado el toolbox Linear Matrix Inequalities de
MatLabr. El valor mınimo de atenuacion encontrado fue de γ = 1,4205. La matriz Kz se
obtuvo con los siguientes valores:
Kz = 1e3 ∗ [−2,5315 − 0,9752 − 2,9480]
A partir de (3.88) se obtiene U1(t) = U1(t) + U1ref(t), y con esto se pasa al proximo
paso, donde se calculan las entradas virtuales de control para el movimiento en el plano
xy. El modelo del error del movimiento en el plano xy se reescribe con las siguientes
3.5 Control robusto H∞ de los seis grados de libertad 83
matrices:
Axy(δ(t)) =
0 1 0 0 0 00 0 0 0 0 01 0 0 0 0 00 0 0 0 1 00 0 0 0 0 00 0 0 1 0 0
Buxy(δ(t)) =
0 01mU1(t) 00 00 00 1
mU1(t)
0 0
Bωxy(δ(t)) =
0 01m
00 00 00 1
m
0 0
Czxy(δ(t)) =
15 0 0 0 0 00 5 0 0 0 00 0 10 0 0 00 0 0 15 0 00 0 0 0 5 00 0 0 0 0 10
Buzxy(δ(t)) =
0 01 010 00 00 10 10
Dωzxy(δ(t)) =
0 01 01 00 00 10 1
(3.89)
donde δ(t) = [U1(t)]′ es el vector de parametros inciertos. Para este controlador se con-
sidero solamente el valor de U1 en vuelo con velocidad vertical constante, que es de
U1 = m ∗ g = 6,867N . Ası que, solo dos lmis se usan en la optimizacion.
La ley de control se obtiene a traves del mismo procedimiento anterior, utilizando el
modelo del error (3.89), y esta dada por:
Kxy = YQ−1
uxy1 = Kxyxxy
(3.90)
donde uxy(t) = [ux(t) uy(t)]T , y
[
ux(t)uy(t)
]
=
[
ux(t)uy(t)
]
+
[
uxref(t)
uyref(t)
]
El valor de atenuacion mınimo encontrado fue de γ = 1,4155. La matriz Kxy se obtuvo
con los siguientes valores:
Kxy =
[
−5,1856 −1,8603 −3,2612 0 0 00 0 0 −5,1856 −1,8603 −3,2612
]
A partir de ux(t) y uy(t), y con la relacion dada por (3.52) se obtiene la referencia
de los angulos de balanceo (roll), φ(t), y cabeceo (pitch), θ(t), que son utilizados como
referencia por el controlador H∞ no lineal en los movimientos de rotacion del helicoptero.
84 3 Estructuras de Control
3.5.4. Resultados de simulacion
Se comprobo el desempeno de esta estrategia de control para la tarea de seguimiento
de trayectoria mediante resultados de simulacion, donde se han tenido en cuenta pertur-
baciones externas e incertidumbres en los parametros
La trayectoria de referencia utilizada es la misma utilizada para los controladores
anteriores. Ademas, se busco presentar resultados con el sistema partiendo de las mismas
condiciones iniciales y con los mismos valores nominales de los parametros.
Se presentan dos resultados, en el primero se considera incertidumbre de ±20 % en los
parametros de inercia y masa del modelo, y sin tener en cuenta perturbaciones externas.
En la segunda simulacion se consideraron perturbaciones externas, donde se han aplicado
escalones mantenidos en las fuerzas y momentos aerodinamicos de la siguiente manera: en
t = 5s se introdujo Ar = 5Nm, en t = 10s se aplico Az = −10N , en t = 15s se afecto al
sistema con Ap = 10Nm, en t = 20s se aplico Ax = 5N , en t = 25s se aplico Aq = 10Nm,
y en t = 30s se aplico la ultima perturbacion con amplitud de Ay = 5Nm.
En las Figuras 3.38 - 3.45 se presentan los resultados logrados a partir de la estructura
de control con H∞ vıa realimentacion de estados para el sub-sistema de traslacion y H∞
no lineal para el sub-sistema de rotacion.
−1
−0.5
0
0.5
1
−1
−0.5
0
0.5
10
1
2
3
4
5
6
xy
z
ReferenciaMasa nominalMasa +20%Masa −20%
Figura 3.38: Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia de
control robusto para los seis grados de libertad sin perturbaciones externas.
3.5 Control robusto H∞ de los seis grados de libertad 85
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1x
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1y
0 5 10 15 20 25 30 35 400
2
4
6
tiempo [s]
z
ReferenciaMasa nominalMasa +20%Masa −20%
ReferenciaMasa nominalMasa +20%Masa −20%
ReferenciaMasa nominalMasa +20%Masa −20%
Figura 3.39: Evolucion temporal de la posicion cuando se aplica la estrategia de control
robusto para los seis grados de libertad sin perturbaciones externas.
0 5 10 15 20 25 30 35 40−0.5
0
0.5
1φ
0 5 10 15 20 25 30 35 40−1
0
1
2θ
0 5 10 15 20 25 30 35 400
0.5
1
1.5
tiempo [s]
ψ
ReferenciaMasa nominalMasa +20%Masa −20%
ReferenciaMasa nominalMasa +20%Masa −20%
ReferenciaMasa nominalMasa +20%Masa −20%
Figura 3.40: Evolucion temporal de la orientacion cuando se aplica la estrategia de control
robusto para los seis grados de libertad sin perturbaciones externas.
86 3 Estructuras de Control
0 10 20 30 405
10
15
20
25
tiempo [s]
u1
0 10 20 30 40−4000
−2000
0
2000
4000
6000
tiempo [s]
u2
0 10 20 30 40−2.5
−2
−1.5
−1
−0.5
0
0.5x 10
6
tiempo [s]
u3
0 10 20 30 40−1000
0
1000
2000
3000
4000
tiempo [s]
u4
Masa nominalMasa +20%Masa −20%
Masa nominalMasa +20%Masa −20%
Masa nominalMasa +20%Masa −20%
Masa nominalMasa +20%Masa −20%
Figura 3.41: Evolucion temporal de las entradas de control cuando se aplica la estrategia
de control robusto para los seis grados de libertad sin perturbaciones externas.
−1
−0.5
0
0.5
1
−1
−0.5
0
0.5
10.5
1
1.5
2
2.5
3
3.5
4
4.5
5
xy
z
ReferenciaMasa nominalMasa +20%Masa −20%
Figura 3.42: Trayectoria xyz del helicoptero quadrotor cuando se aplica la estrategia de
control robusto para los seis grados de libertad con perturbaciones externas.
3.5 Control robusto H∞ de los seis grados de libertad 87
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1x
0 5 10 15 20 25 30 35 40−1
−0.5
0
0.5
1y
0 5 10 15 20 25 30 35 400
2
4
6
tiempo [s]
z
ReferenciaMasa nominalMasa +20%Masa −20%
ReferenciaMasa nominalMasa +20%Masa −20%
ReferenciaMasa nominalMasa +20%Masa −20%
Figura 3.43: Evolucion temporal de la posicion cuando se aplica la estrategia de control
robusto para los seis grados de libertad con perturbaciones externas.
0 5 10 15 20 25 30 35 40−0.5
0
0.5
1φ
0 5 10 15 20 25 30 35 40−1
0
1
2θ
0 5 10 15 20 25 30 35 400
0.5
1
1.5
tiempo [s]
ψ
ReferenciaMasa nominalMasa +20%Masa −20%
ReferenciaMasa nominalMasa +20%Masa −20%
ReferenciaMasa nominalMasa +20%Masa −20%
Figura 3.44: Evolucion temporal de la orientacion cuando se aplica la estrategia de control
robusto para los seis grados de libertad con perturbaciones externas.
88 3 Estructuras de Control
0 10 20 30 405
10
15
20
25
tiempo [s]
u1
0 10 20 30 40−3
−2
−1
0
1
2x 10
4
tiempo [s]
u2
0 10 20 30 40−2.5
−2
−1.5
−1
−0.5
0
0.5x 10
6
tiempo [s]
u3
0 10 20 30 40−1000
0
1000
2000
3000
4000
tiempo [s]
u4
Masa nominalMasa +20%Masa −20%
Masa nominalMasa +20%Masa −20%
Masa nominalMasa +20%Masa −20%
Masa nominalMasa +20%Masa −20%
Figura 3.45: Evolucion temporal de las entradas de control cuando se aplica la estrategia
de control robusto para los seis grados de libertad con perturbaciones externas.
Se puede ver que la estrategia de control propuesta utilizando el controlador H∞ lineal
vıa realimentacion de estados para el sub-sistema de traslacion presento buen desempeno
cuando el helicoptero recibe vientos permanentes actuando como fuerzas aerodinamicas y
como momentos. Ademas, la estructura aplicada fue robusta ante incertidumbres de los
parametros de masa ye inercia.
Ası, la estrategia presentada aquı garantiza robustez para todos los tipos de perturba-
ciones externas actuantes sobre el helicoptero, cuando este funcione dentro del conjunto
convexo determinado para la optimizacion de las lmis.
Capıtulo 4
Descripcion del Equipo
4.1. Introduccion
En este capıtulo se describe el equipo utilizado. Se trata de un helicoptero en miniatura
propulsado por cuatro rotores y dotado de una instrumentacion capaz de proveer y recibir
datos a traves de un ordenador de tierra vıa comunicacion inalambrica. El esquema de
control utilizado se representa en el diagrama de la Figura 4.1.
Figura 4.1: Estructura de control del helicoptero quadrotor.
El ordenador de tierra recibe informacion de las aceleraciones lineales, velocidades an-
gulares y posicion angular a traves de una unidad de medicion inercial (en ingles Inertial
Measurement Unit - imu) que esta acoplada al helicoptero. Basandose en estas informa-
ciones, un programa, desarrollado sobre la plataforma LabViewr, calcula las senales de
control necesarias para desplazar el helicoptero y las envıa al vehıculo autonomo mediante
90 4 Descripcion del Equipo
un mando a distancia (en ingles Remote Control - r/c) que esta conectado al ordenador
de tierra mediante una tarjeta de adquisicion de datos de la marca National InstrumentTM.
En lo que sigue se presenta el helicoptero quadrotor en escala miniatura, conocido
como Draganflyer V Ti R/C, de la marca comercial Draganfly Innovations Inc.. Luego
se describen la unidad de medicion inercial y la tarjeta de adquisicion de datos que se
han utilizado. Por fin, se comenta la estructura del programa desarrollado para proveer
de autonomıa al helicoptero.
4.2. Helicoptero en miniatura quadrotor
El helicoptero Draganflyer V Ti Pro R/C (Figura 4.2) es un vehıculo aeropropulsado
a traves de cuatro helices acopladas a motores electricos mediante engranajes. A traves
de este grupo propulsor el helicoptero puede alcanzar una velocidad de aproximadamente
9,44m/s.
Figura 4.2: Helicoptero Draganflyer V Ti Pro R/C.
El Draganflyer V Ti Pro R/C trae de fabrica una micro camara de vıdeo inalambrica
ccd (del ingles Charge Coupled Device) de 1/4” (Figura 4.3), con resolucion de 430 lıneas,
que esta sujetada a la estructura del helicoptero por un sistema que aumenta la resistencia
y reduce vibraciones. El transmisor de vıdeo opera a una frecuencia de 2.4GHz y a una
potencia de 50mW. Una antena circular polarizada, conectada a un sistema receptor,
capta las senales enviadas por el transmisor de la camara y las envıa al ordenador remoto.
Ademas, el helicoptero quadrotor posee una electronica embebida (Figura 4.4) que esta
4.2 Helicoptero en miniatura quadrotor 91
Figura 4.3: Camara de vıdeo inalambrica ccd.
constituida por 4 sensores termicos, tres giroscopos, un receptor fm (del ingles Frequency
Modulation) de doble conversion a 72MHz y un dsp (del ingles Digital Signal Processor)
que se encarga de comunicarse con el mando a distancia, controlar la velocidad de los
motores basandose en la cantidad de aceleracion y velocidades angulares que requiera el
piloto, y estabilizar el helicoptero cuando sean activados los sensores termicos.
Figura 4.4: Electronica embebida en el helicoptero.
El mando remoto que acompana el Draganflyer V Ti Pro R/C es un transmisor fm
digital a 72MHz, de seis canales de la marca comercial Hitecr.
Los motores electricos, la electronica embebida y el sistema de vision son energizados
a traves de una baterıa de polımero de litio compuesta de tres celulas y provee 11.1 voltios
con 1320mAh. Con esta baterıa se tiene una autonomıa de vuelo de entre 12 y 15 minutos.
92 4 Descripcion del Equipo
La estructura del helicoptero es de fibra de carbono y nylon, y las helices son moldeadas
por inyeccion de nylon de alta resistencia. El helicoptero mide 76cm de diametro, y sin
considerar la unidad de medicion inercial, presenta una masa de 525g.
4.3. Unidad de medicion inercial
La unidad de medicion inercial utilizada en este proyecto es de la marca comercial
MicroStrainr, cuyo modelo elegido es el Inertia-Linkr (Figura 4.5), que ademas es un
giroscopio vertical. Este utiliza tecnologıa de sensores miniatura, nombrada mems, com-
binando un acelerometro triaxial, giroscopo triaxial, sensores de temperatura y un proce-
sador embebido ejecutando un algoritmo de fusion de sensores (MicroStrain Inc., 2006).
Figura 4.5: Unidad de medicion inercial Inertia-Linkr.
Inertia-Linkr ofrece un rango de datos de salida a partir de medidas inerciales plena-
mente calibradas para calcular estimaciones de orientacion del sensor. Todas las medidas
son compensadas por temperatura y corregidas para la desalineacion del sensor. Las me-
didas de velocidad angular son ademas corregidas por sensibilidad-G1 y por un factor de
1Sensibilidad-G (en ingles: G-sensitivity es una medida de sensibilidad para la aceleracion. Esta rela-
cionada con la sensibilidad de vibracion, pero es generalmente mas baja, ya que es una medida estatica
de variacion. El test mas notable es el Two G Tip-over. Aquı la sensibilidad-G se mide permitiendo al
oscilador estabilizarse y, ası, medir la frecuencia. El oscilador es, por lo tanto, girado al reves, 180, y la
frecuencia es medida nuevamente. Este test se repite para cada eje principal del oscilador. La diferencia en
frecuencia es dividida por 2, produciendo la sensibilidad-G estatica, normalmente expresada en unidades
de 1E-9/g Valpey Fisher (2007).
4.3 Unidad de medicion inercial 93
escala no lineal del giroscopo.
La interfaz de comunicacion de la imu esta contenida en un modulo separado y puede,
por lo tanto, ser facilmente configurable. Actualmente, la comunicacion esta hecha a traves
de un transmisor inalambrico, con una tasa de transmision de datos de 1 a 250Hz y ancho
de banda del sensor de 1 a 100Hz, ambos configurables. La comunicacion inalambrica
esta basada en la norma IEEE 802.15.4 (2.45GHz). Posee 16 canales entre 2.450GHz y
2.490GHz (MicroStrain Inc., 2006).
4.3.1. Protocolo de comunicacion
La comunicacion de la imu esta basada en el protocolo 3DM-GX2TM Data Communi-
cation Protocol (MicroStrain Inc., 2007). Este es un conjunto de comandos y respuestas en
serie disenados especıficamente para sensores de orientacion de MicroStrainr. La estruc-
tura de comandos utilizada en este trabajo es para el caso de sensores inalambricos. Todas
las comunicaciones con el sensor son realizadas usando un puerto serie patron “COM”. De
tal forma, que para todas las opciones del interfaz proporcionadas por el fabricante (RS-
232, RS-485, RS-422, USB y inalambrica (802.15.4)), la comunicacion con el ordenador
de tierra se realiza solamente con un puerto serie “COM”. Lo anterior se consigue gracias
a un controlador del dispositivo que hace que el sensor aparezca para el ordenador como
un puerto serie.
Como el sensor en cuestion utiliza comunicacion inalambrica, requiere ciertas conside-
raciones a la hora de comunicarse con la estacion base. A pesar de que la comunicacion de
este sensor se hace a traves de un puerto serie virtual, los datos transmitidos entre el sensor
y el ordenador deben ser realizados como en la version empaquetada del protocolo. Esto
se debe a la informacion adicional necesaria para diferenciar el sensor, el cual puede estar
compartiendo un canal de radio con otros sensores. La estacion base inalambrica-USB
utiliza esta informacion para encaminar los datos hacia el sensor inalambrico correcto.
Los comandos empaquetados difieren de los no empaquetados en que son precedidos por
un paquete de cabecera y seguido por un paquete de final de mensaje (ver MicroStrain
Inc. (2007)).
En general estos sensores poseen la misma configuracion para el puerto serie COM,
donde la tasa de transmision es siempre 115.2K baudios.
En este protocolo el ordenador remoto controla que datos salen del sensor emitiendo
uno o mas comandos (en algunos casos, los bytes adicionales de datos deben seguir al
byte de comando). Cada comando enviado a la imu hara que esta transmita un dato
o un numero fijo de bytes. El sensor puede operar segun dos modos de comunicacion,
94 4 Descripcion del Equipo
uno muestreado y otro continuo. En el modo muestreado, un unico dato es transmitido
para cada byte de comando recibido. Por otra parte, en el modo continuo, se guarda un
byte de comando en la memoria del sensor y el dato correspondiente se esta enviando
continuamente por la imu sin necesidad de intervencion del ordenador. En este trabajo
se implemento solamente el modo muestreado. Los comandos y demas datos sobre el
protocolo de comunicacion del sensor Inertia-Linkr se pueden encontrar en la referencia
MicroStrain Inc. (2007).
4.4. Tarjeta de adquisicion de datos
Para comunicar el ordenador de tierra con el mando a distancia, con el fin de transmitir
al helicoptero las senales de control, se ha utilizado la tarjeta de adquisicion de datos NI
USB-6251 de la marca comercial National InstrumentsTM.
La tarjeta tiene dos salidas analogicas, lo cual es suficiente puesto que la senal de
control se envıa multiplexada por una de las salidas.
Las salidas analogicas de esta tarjeta pueden alcanzar una velocidad de transmision de
2.86MHz, que es necesaria para conseguir generar el tren de pulsos que codifica la senal
de control en cada tiempo de muestro.
Adicionalmente, la tarjeta dispone de un buffer de 4096 bytes que puede ser utilizado
para almacenar una forma de onda determinada, y gestionar el vaciado del buffer hacia la
salida analogica segun la tasa de muestreo seleccionada. Esta funcionalidad de la tarjeta
es utilizada para recibir y almacenar en un solo envıo el tren de pulsos de la senal de
control previamente programada, siendo la tarjeta la encargada de gestionar el tiempo de
salida de los datos del buffer.
4.5. Interfaz ordenador-helicoptero quadrotor
Para convertir el helicoptero quadrotor en un vehıculo aereo autonomo, se ha optado
por implementar una plataforma de control remota, como se ha comentado anteriormente.
El programa que supervisa y controla el helicoptero se ha desarrollado en LabViewr y
esta dividido en tres lazos principales: el que envıa y recibe datos de la imu, el que calcula
las senales de control, y el que, basandose en las senales de control, genera un tren de
pulsos y lo envıa a la tarjeta de adquisicion de datos, que esta conectada al mando a
distancia. Estos tres lazos se ejecutan de forma concurrente en la plataforma LabViewr,
4.5 Interfaz ordenador-helicoptero quadrotor 95
donde se asigna a cada lazo un valor de prioridad y el periodo de ejecucion de cada ciclo.
En la Figura 4.6 se presenta la pantalla principal del programa.
Figura 4.6: Pantalla principal del controlador del helicoptero en LabViewr.
A continuacion se describen las principales funciones del programa.
4.5.1. Lectura y escritura de la IMU
El controlador desarrollado en LabViewr para comunicar el ordenador de tierra con
la imu se ha implementado de manera que los comandos descritos en el protocolo 3DM-
GX2TM Data Communication Protocol sean ejecutados segun el modo muestreado. Ası
que, la escritura y lectura de datos del sensor se realiza por medio del ordenador de tierra
en cada ciclo del programa. En la Figura 4.7 se expone la pantalla del programa referente
a la unidad de medicion inercial.
En el programa actual se han implementado las siguientes funciones proporcionadas
por el sensor: Aceleracion y Velocidad Angular ; ∆Angulo y ∆Velocidad ; Matriz de Rota-
cion; Aceleracion, Velocidad Angular y Angulos de Euler ; Angulos de Euler ; y Velocidad
Angular y Angulos de Euler. Se han implementado tambien funciones para monitorizar
96 4 Descripcion del Equipo
la tasa transmision de datos, las senales de lqi (Link Quality Indication) y rssi (Receive
Signal Strength Indicator), ası como la medicion del ancho de banda.
Figura 4.7: Pantalla de la imu Inertia-Linkr.
La rutina que se ha implementado para monitorizar el sensor inercial empieza ha-
bilitando el puerto serie en que se ha conectado la estacion base inalambrica-USB. La
configuracion del puerto serie se realiza en la carpeta Signal Data, donde tambien se tiene
acceso a informaciones de la calidad de la senal. Hecho esto, se habilita un lazo continuo y
se empieza a realizar la comunicacion entre el ordenador de tierra y el sensor. Dentro del
lazo, primero se emite un paquete haciendo al sensor la peticion de los datos elegidos (por
ejemplo, los datos de aceleracion y velocidad angular en el instante actual), seguido de un
bloque que lee el puerto serie. En este bloque se realizan una serie de intentos para lograr
la lectura de los datos. Si la lectura de los datos se realiza con exito, estos son convertidos
de valores en hexadecimal a valores en el formato IEEE 754, los cuales son tratados y
expresados en unidades fısicas. Las informaciones obtenidas se representan a traves de
graficas y se ponen a disposicion del lazo de control en el caso de que las necesite.
4.5 Interfaz ordenador-helicoptero quadrotor 97
4.5.2. Generador del tren de pulsos
Como se comento anteriormente, el ordenador de tierra envıa senales de control al
helicoptero mediante el mando a distancia. Este recibe las senales a traves de un puerto
de entrenamiento que se habilita con una llave en el propio mando. El tipo de senal que
hay que enviar a este puerto resulta ser un tren de pulsos, donde cada pulso representa
un canal del mando, y el ancho del pulso informa sobre lo que hay que aplicar en cada
canal.
Siendo ası, se ha desarrollado un programa que genere tal tren de pulsos. La pantalla
donde se configura el generador del tren de pulsos e informa sobre su estado, se exhibe en
la Figura 4.8.
Figura 4.8: Pantalla del generador de tren de pulsos.
En el primer paso se configura la frecuencia del tren de pulsos, ası como su amplitud.
En esta etapa tambien se define la configuracion de la tarjeta de adquisicion de datos,
fijando la salida analogica que se utilizara, los lımites inferior y superior de la tension de
salida, y el tamano del buffer utilizado por la tarjeta.
El tren de pulsos se genera cada 22, 5ms, teniendo cada pulso un ancho de banda de
800µs cuando el ciclo de trabajo esta al 100 %. Un canal tiene una duracion mınima de
98 4 Descripcion del Equipo
920µs y maxima de 2120µs. Siendo los primeros 400µs un tiempo muerto entre el final
del pulso del canal anterior y el inicio del pulso del canal actual. Cada canal puede ser
ajustado independientemente, utilizando la funcion Trimmer, si es necesario compensar
algun desequilibrio del helicoptero. Ademas, cada canal puede ser habilitado de manera
aislada, haciendo que la accion generada por el lazo de control no sea enviada al mando,
y ası, se mantiene el valor de defecto. En la Figura 4.9 se presenta un ejemplo del tren de
pulsos.
Figura 4.9: Tren de pulsos.
Realizada la configuracion del tren de pulsos, ası como la de la tarjeta analogica, se
inicia el lazo de generacion de la forma de onda que se repite, como ya se ha comentado,
cada 22, 5ms. Basandose en el valor de accion de control, se calcula el tiempo de inicio de
cada pulso, el desfase entre ellos y el ciclo de trabajo de cada uno con respecto al tiempo
del tren de pulsos. Cada pulso se genera de forma independiente de los otros utilizando la
funcion Waveform Buffer Generation DAQ de Labviewr, y al final se suman todos ellos
dando origen a la forma de onda necesaria, la cual se envıa a la tarjeta de adquisicion de
datos. Para finalizar el lazo se traza la grafica del tren de pulsos.
4.5.3. Lazo de control
El lazo de control se ejecuta a un nivel superior que el de los dos anteriores. En cada
ciclo se leen los datos suministrados por el sensor, y basandose en estos, se ejecutan los
controladores desarrollados, los cuales suministran las senales de control enviadas al lazo
de generacion del tren de pulsos. En la Figura 4.6 se presenta, ademas de la portada
principal del programa, la interfaz de los controladores disponibles.
Antes de ejecutar el lazo de control, se requieren algunas configuraciones del programa,
como elegir en que archivo, con extension .m, se almacenaran los datos del experimento,
los valores de referencia de las salidas para los controladores y el periodo de muestreo,
4.5 Interfaz ordenador-helicoptero quadrotor 99
entre otras cosas. La Figura 4.10 muestra la pantalla en la que se determinan los valores
de referencia, se habilita y dibuja la estimacion de la posicion en el triedro xyz basada
en las medidas de aceleraciones lineales del sensor, y en la que se traza la grafica de las
senales de control aplicadas.
Figura 4.10: Pantalla para determinar los valores de referencia y habilitar la estimacion
de la posicion xyz.
Una vez realizados todos los tramites iniciales, se pasa a la etapa de eleccion del
controlador a utilizar. El programa esta pensado para que se pueda trabajar tanto en
bucle abierto como en bucle cerrado. En bucle abierto se han programado dos funciones,
una donde se aplican escalones a las entradas de control del helicoptero, y otra donde se
generan entradas senoidales con amplitud y frecuencia ajustables.
Para trabajar en bucle cerrado se ha dividido el sistema en dos sub-sistemas, donde se
realizan el bucle de control de los movimiento de rotacion y el bucle de control de los movi-
mientos de traslacion lineal. Para lograr la estabilizacion del sistema se han implementado
cuatro controladores: proporcional, pid (Proporcional-Derivativo-Integral), Backstepping
y H∞ no lineal. Las dos ultimas leyes de control se presentan en este trabajo en el Capıtulo
3. Los controladores se han programado en lenguaje C generandose un archivo .dll.
El bucle de control de los movimientos de traslacion tiene implementado, para es-
100 4 Descripcion del Equipo
te trabajo, un controlador pid. Para trabajos futuros se implementaran las leyes aquı
desarrolladas. La manera en la que este programa esta pensado es ventajosa debido a su
caracter generico, pudiendo implementarse facilmente otros controladores a partir de un
archivo .dll.
4.6. Resultados experimentales
En esta seccion se exponen resultados experimentales obtenidos con el equipamiento
anterior.
Debido a que aun no se dispone de realimentacion de la posicion del vehıculo (la
imu solo provee informacion fiable de la orientacion del sistema), en los experimentos
realizados solo se ha utilizado el control de orientacion. Por lo tanto, el empuje principal
(unica senal de control que no gestiona este controlador) sera modificada manualmente
desde la computadora de tierra.
En la figura 4.11 se muestra el esquema de la estrategia de control utilizada para la
realizacion de experimentos.
Figura 4.11: Control de orientacion para el helicoptero quadrotor.
Para realizar una estimacion de los parametros del sistema se han pesado y medido
las distintas partes del equipo. Sin embargo, dado que el sistema no permite tener un
acceso directo al control de la velocidad de los motores, se han realizado experimentos de
identificacion en bucle cerrado para determinar la relacion entre los pares ejercidos por la
propulsion de las helices y las senales de control Ui que se envıan desde la computadora
de tierra.
4.6 Resultados experimentales 101
En los experimentos se ha controlado al sistema con un control proporcional, consi-
guiendo que el sistema real oscile con una cierta frecuencia y amplitud. En la figura 4.12
se muestran los resultados de estos experimentos.
0 1 2 3 4 5 6 7 8 9 10−20
−10
0
10
20φ
0 1 2 3 4 5 6 7 8 9 10−20
−10
0
10
20θ
0 1 2 3 4 5 6 7 8 9 10−4
−2
0
2
4
tiempo [s]
ψ
Figura 4.12: Oscilaciones experimentales.
A partir de estos datos, se ha ajustado mediante simulacion la ganancia de un con-
trolador proporcional que consiga que el sistema simulado oscile aproximadamente con la
misma frecuencia y amplitud. En la figura 4.13 se muestran los resultados de simulacion.
0 1 2 3 4 5 6 7 8 9 10−20
−10
0
10
20φ
0 1 2 3 4 5 6 7 8 9 10−20
−10
0
10
20θ
0 1 2 3 4 5 6 7 8 9 10−20
−10
0
10
20
tiempo [s]
ψ
Figura 4.13: Oscilaciones simuladas.
102 4 Descripcion del Equipo
La relacion de ganancias resultantes ha sido del orden de 3.5 veces mayor la senal de
control del modelo frente a la senal de control del sistema real.
En las figuras 4.14 y 4.15 se muestran algunos resultados experimentales preliminares
logrados con controladores bascicos. Como puede verse, tras aplicar un escalon en U1
(figura 4.14) el resto de senales de control actuan de manera que los angulos de Tait-
Bryan (figura 4.15) se mantengan en un valor cercano al cero, controlando la orientacion
del sistema.
El helicoptero se deja de controlar a los 45 segundos aproximadamente (vease senal
de control U1). Como puede observarse en las graficas de los resultados, a partir de este
instante los angulos aumentan debido a que el helicoptero se ha inestabilizado.
10 15 20 25 30 35 40 45 50 5520
40
60
80
U1
[%]
10 15 20 25 30 35 40 45 50 550
50
100
U2
[%]
10 15 20 25 30 35 40 45 50 5520
40
60
80
U3
[%]
10 15 20 25 30 35 40 45 50 5540
50
60
tiempo (s)
U4
[%]
Figura 4.14: Senales de control.
4.6 Resultados experimentales 103
10 15 20 25 30 35 40 45 50 55−20
−10
0
10
20
φ (º
)
10 15 20 25 30 35 40 45 50 55−20
−10
0
10
20
θ (º
)
10 15 20 25 30 35 40 45 50 55−10
−5
0
5
10
tiempo (s)
ψ (
º)
Figura 4.15: Orientacion del helicoptero quadrotor.
104 4 Descripcion del Equipo
Capıtulo 5
Conclusiones
Este trabajo se ha dedicado al modelado y desarrollo de estrategias de control para
solucionar el problema de seguimiento de referencia de vehıculos aereos autonomos, para
el caso concreto de un helicoptero miniatura quadrotor. Se considero el control de los
movimientos de traslacion lineal y de rotaciones angulares en presencia de perturbaciones
externas e incertidumbres parametricas.
Para comprender el funcionamiento del helicoptero quadrotor, se realizo un estudio de
su modelado, donde fueron completados y corregidos algunos modelos publicados ante-
riormente. Se comenzo deduciendo los movimientos de rotacion y traslacion considerando
solo un punto en el espacio, lo que permitio obtener las ecuaciones cinematicas de un
cuerpo rıgido con movimientos tridimensionales. Los angulos de rotacion del cuerpo fue-
ron obtenidos a partir de tres rotaciones sucesivas, y se distinguieron los angulos de Euler
de los angulos de Tait-Bryan.
A partir de la matriz de rotacion y de las ecuaciones cinematicas obtenidas, se modelo la
dinamica del helicoptero basada en dos formulaciones matematicas: la de Newton-Euler y
la de Lagrange-Euler. Se definieron las fuerzas y pares actuantes sobre el sistema, teniendo
en cuenta las perturbaciones generadas por efectos giroscopicos debido a los rotores y por
vientos, los cuales fueron caracterizados como fuerzas y pares aerodinamicos.
Para realizar ensayos reales se ha desarrollado una plataforma de pruebas compuesta
por un helicoptero quadrotor comercial en escala miniatura. Tal plataforma utiliza una
unidad de medicion inercial para informar de la posicion angular y aceleraciones lineales a
un ordenador de tierra vıa comunicacion inalambrica. Este calcula las acciones de control
y las envıa a traves de un mando a distancia que esta conectado al ordenador de tierra
mediante una tarjeta de adquisicion de datos. El programa que trata los datos recibidos
del sensor y calcula los valores de fuerza y pares a aplicar al helicoptero fue desarrollado
bajo la plataforma LabViewr.
106 5 Conclusiones
Basandose en los modelos obtenidos, se presentaron y desarrollaron cinco estructuras
de control, las cuales han presentado un buen desempeno en el seguimiento de referencia,
manteniendo la robustez ante incertidumbres parametricas y perturbaciones externas.
La manera en la que fueron presentados los controladores esta basada en la evolucion del
desempeno que se ha planteado. Las dos primeras estrategias utilizadas fueron presentadas
en Mistler et al. (2001); Bouabdallah y Siegwart (2005), y tuvieran como objetivo principal
alcanzar un buen entendimiento del sistema.
En la primera se utilizo una ley de control con desacoplamiento entrada-salida y linea-
lizacion exacta por realimentacion dinamica, y el controlador que se desarrollo esta basado
en el modelo de Newton-Euler. Se pudo ver por los resultados presentados que, sin tener
en cuenta las perturbaciones externas en los terminos de rotacion, el helicoptero siguio
la referencia con bastante exactitud y senales de control suaves. Sin embargo, cuando se
aplicaron las perturbaciones externas el sistema se hizo inestable.
La segunda estrategia que se ha simulado esta basada en la tecnica de Backstepping,
y se calcularon las leyes de control a traves de funciones de Lyapunov. Se utilizo una
estructura desacoplada de los terminos de rotacion y traslacion debido a las caracterıs-
ticas del modelo utilizado, el cual estaba basado en la formulacion de Lagrange-Euler,
suponiendo para los movimientos de rotacion la aproximacion por pequeno angulo. Las
simulaciones realizadas han demostrado que esta estrategia es eficaz para realizar segui-
miento de trayectoria considerando incertidumbres en los parametros del modelo y cuando
no se consideran perturbaciones externas. Nuevamente, el helicoptero se vuelve inestable
en presencia de tales perturbaciones.
Como estas dos estructuras no presentaron robustez ante perturbaciones mantenidas
en los movimientos de rotacion, se planteo un controlador que las rechazara. Siendo ası,
se diseno un controlador, basado en estos resultados, utilizando la teorıa de control H∞
para sistemas mecanicos no lineales totalmente actuados. Esto garantiza robustez tanto
considerando incertidumbres parametricas como en presencia de perturbaciones externas.
Se ha aplicado este controlador en el sub-sistema de rotacion, teniendo en cuenta las
perturbaciones utilizadas. Ası, en esta tercera estrategia de control se utilizo el control
basado en la tecnica de Backstepping para controlar el sub-sistema de traslacion y, para el
sub-sistema de rotacion se aplico el controlador H∞ no lineal. Se han presentado resultados
que corroboran la robustez de la estructura y el buen desempeno en el seguimiento de
trayectorias.
Alcanzada la robustez del sub-sistema de rotacion, y con bastante exito, se busco lo-
grar un controlador eficaz para los movimientos de traslacion. Siendo ası, en una cuarta
estrategia se propuso un controlador predictivo debido a sus caracterısticas que permite
el uso de trayectorias futuras conocidas, el cual genera entradas de control suaves y con-
sidera restricciones en el momento del calculo de la ley de control, a pesar de que en este
trabajo no fueron utilizados ningun tipo restricciones. El algoritmo de cpbm lineal utili-
107
zado considera que el vehıculo sigue un helicoptero virtual de referencia sobre el camino
deseado, originando el modelo del error. El modelo del error es no lineal y variante con
el tiempo, por lo tanto, se han realizado linealizaciones sucesivas a lo largo de la trayec-
toria de referencia. Esta estructura de cpbm utiliza el modelo del sistema en espacio de
estados, y como ya se ha comentado, se ha implementado para controlar los movimientos
de traslacion. Se disenaron dos controladores predictivos, uno para el control de la altura,
y otro, a traves de un cambio de variables y considerando entradas virtuales de control,
para el movimiento lineal en el plano (x, y).
Para los movimientos de rotacion se utilizo el controlador H∞ no lineal desarrollado
en la estrategia anterior. Otra vez los resultados obtenidos mostraron que la estrategia de
control utilizando el controlador H∞ no lineal provee robustez al sistema. Las simulaciones
tambien confirmaron que el uso del cpbm para solucionar el problema de seguimiento de
trayectoria es eficaz y proporciona senales de control mas suaves.
Sin embargo, cuando fueron aplicadas perturbaciones permanentes en el sub-sistema
de traslacion, ni el controlador Backstepping y tampoco el cpbm propuesto fueron capaces
de rechazarlas. Ante este problema, se planteo una estrategia de control que fuera robusta
en presencia de perturbaciones mantenidas en los seis grados de libertad. Ası que, en la
quinta estructura de control se utilizo nuevamente el controlador H∞ no lineal para los
movimientos de rotacion, mientras que para la dinamica traslacional del helicoptero se
utilizo un controlador robusto vıa sıntesis de control H∞ con realimentacion de estados
para sistemas con incertidumbres en los parametros. Se ha buscado un buen desempeno en
el seguimiento de referencia en presencia de fuerzas y momentos aerodinamicos mantenidos
y robustez ante incertidumbres en todos los parametros del modelo.
A traves de simulaciones se pudo corroborar la estrategia de control propuesta, donde
el helicoptero ha logrado seguir la trayectoria de referencia de forma robusta cuando se
han considerado incertidumbres en los parametros de masa e inercia, y en presencia de
todos los tipos de perturbaciones externas existentes en el modelo, cuando son aplicadas
sucesivamente y de forma mantenida.
Finalmente, controladores basicos fueron implementados en la plataforma de pruebas
y resultados preliminares han sido obtenidos experimentalmente para la estabilizacion del
helicoptero. Siendo ası, se ha comprobado la aplicacion propuesta y, como proximo trabajo
a ser realizado con el helicoptero esta la implementacion de los controladores presentados
en esta tesis.
Debido a la reciente obtencion de los resultados de este trabajo, aun no se ha tenido la
posibilidad de seren publicados. No obstante, ya han sido enviados los siguientes artıculos
para su posible publicacion:
108 5 Conclusiones
(Raffo et al., 2008a)
G.V. Raffo, M.G. Ortega, F.R. Rubio. Backstepping/Nonlinear H∞ Control for Path
Tracking of a QuadRotor Unmanned Aerial Vehicle. American Control Conference
2008 (ACC’08). Seattle, Washington (USA), 2008 (Submission number: 1238).
(Raffo et al., 2008b)
G.V. Raffo, M.G. Ortega, F.R. Rubio. MPC with Nonlinear H∞ Control for Path
Tracking of a Quad-Rotor Helicopter. 17th IFAC World Congress on Automatic
Control. Seoul (Korea), 2008 (Submission number: 2578).
Ademas de estos artıculos, a lo largo del master se han publicado los siguientes traba-
jos:
(Raffo et al., 2007b)
G.V. Raffo, M.G. Ortega y F.R. Rubio. Nonlinear H∞ Control Applied to the Per-
sonal Pendulum Car. In Proc. of the European Control Conference. ECC’07, Kos,
Grecia, Julio 2007.
(Raffo et al., 2007a)
G.V. Raffo, J.E. Normey-Rico y F.R. Rubio. Control Predictivo de la Dinamica de
un Vehıculo Autonomo. XXVIII Jornadas de Automatica - Universidad de Huelva.
Huelva, Espana, 5 - 8 Septiembre 2007.
(Raffo et al., 2006)
G.V. Raffo, M.G. Ortega y F.R. Rubio. Control H∞ Multivariable de un Modelo
de Helicoptero. XXVIII Jornadas de Automatica, JAL06, pag. 854-859. Almerıa,
Espana, 6 - 8 Septiembre 2006.
Para finalizar, se detallan posibles lıneas de continuacion del trabajo expuesto en esta
tesis:
Robustificacion de leyes de control en funcion de cotas de incertidumbres del modelo.
Normalmente los controladores (sobre todo los no lineales) disenados para este tipo
de sistemas estan basados en modelo; y como es bien sabido, los modelos conllevan
incertidumbres asociadas. Se propone, por tanto, utilizar metodos como el presen-
tado en Ortega et al. (2005) para robustificar leyes de control, investigando nuevos
metodos para la resolucion de la ecuacion de Hamilton-Jacobi resultante (como por
ejemplo, soluciones basadas en el metodo de Galerkin).
109
Adaptacion de controladores H∞ no lineales para sistemas subactuados al problema
de comportamiento del helicoptero. Para ello, se propone partir de la estructura de
control propuesta en Raffo et al. (2007b). Con ello se pretende que el vehıculo sea
capaz de realizar ciertas maniobras preestablecidas.
Estudiar el problema de regiones fronteras para garantizar estabilidad de sistemas
con dinamica completa. Normalmente los controladores de este sistema se basan
en las ecuaciones de su parte mecanica. Sin embargo, las fuerzas de propulsion no
vienen dadas por motores como en los sistemas electromecanicos, sino que su origen
es de tipo aerodinamico a traves del movimiento de helices. Es habitual utilizar
la separacion de escalas de tiempo, disenando de forma independiente el control
de la mecanica y el del movimiento de las helices, suponiendo este ultimo mucho
mas rapido que el anterior. Sin embargo, aun esta por explorar en que condiciones se
pueden disenar controladores que garanticen estabilidad teniendo en cuenta tambien
la dinamica rapida del sistema.
Combinacion del control con angulo de palas variables y con velocidad del rotor
variable. En helicopteros convencionales se suelen utilizar como variables de control
los angulos de ataque de las palas (cıclico y colectivo), implementando un lazo
interno de control para regular la velocidad de giro del rotor (esto es, se controla
con velocidad del rotor constante) Raffo et al. (2006). Sin embargo, en helicopteros
en miniatura, la filosofıa de las senales de control suele ser justo la contraria. Debido
a que ambos enfoques tienen sus ventajas e inconvenientes, se propone estudiar la
posibilidad de realizar un control de aeronaves donde se utilicen ambas filosofıas
simultaneamente.
Control de aeronaves mediante realimentacion visual. En este apartado, se pretende
hacer uso del sistema de vision disponible en el helicoptero quadrotor, no meramen-
te para transmitir las imagenes que van siendo capturadas durante el vuelo, sino
para poner en marcha algoritmos de control visual que permitan dirigir al aparato
autonomamente a partir de dichas imagenes.
El trabajo debe desarrollarse en dos ambitos: por un lado en tecnicas de seguimiento
visual y por otro en tecnicas de control con realimentacion visual (“visual tracking”
y “visual servoing”, respectivamente, de acuerdo con la terminologıa anglosajona) o
alternativamente en tecnicas que integren ambos aspectos (Malis, E, Benhimane, S.,
2005).
Estudio e implementacion de algoritmos de generacion de caminos optimos. Una vez
controlado el sistema, se propone profundizar en algoritmos que especifiquen cami-
nos que optimicen algun tipo de criterio representativo de la calidad del recorrido
(tiempo de recuperacion de la posicion, velocidad de recuperacion, etc.).
Realizacion de estudios preliminares sobre sistemas controlados a traves de redes
(ncs). En caso de que las aeronaves sean controladas desde tierra (por ejemplo,
110 5 Conclusiones
mediante sistemas de mando a distancia), existe la posibilidad de que se pierdan
paquetes en la transmision de datos, tanto en el envıo de senales de control como
en el de senales medidas para realimentacion. A este problema hay que sumarle la
perdida de informacion por la codificacion/decodificacion de las senales transmitidas,
ası como la tasa de envıo de datos. Estos problemas son especialmente interesantes
para estos tipos de sistemas teniendo en cuenta su caracter inestable.
Bibliografıa
E. Altug, J. P. Ostrowski, y R. Mahony. Control of a Quadrotor Helicopter Using Vi-
sual Feedback. In Proc. of the 2002 IEEE International Conference on Robotics and
Automation, pages 72–77, Washington, DC, 2002.
S. Bouabdallah y R. Siegwart. Backstepping and Sliding-mode Techniques Applied to
an Indoor Micro Quadrotor. In Proc. IEEE Int. Conf. on Robot. and Automat., pages
2259–2264, Barcelona, Spain, 2005.
S. Bouabdallah, P. Murrieri, y R. Siegwart. Design and Control of an Indoor Micro
Quadrotor. In Proc. IEEE Int. Conf. on Rob. and Automat., volume 5, pages 4393–
4398, New Orleans, USA, 2004a.
S. Bouabdallah, A.Noth, y R. Siegwart. PID vs LQ Control Techniques Applied to an
Indoor Micro Quadrotor. In Proc. IEEE Int. Conf. on Intelligent Robots and Systems,
volume 3, pages 2451–2456, Sendai, Japan, 2004b.
S. Bouabdallah, A.Noth, y R. Siegwart. Dynamic Modelling of UAVs. Technical Report
Version 2.0, Autonomous Systems Laboratory - EPFL, May 2006.
E. F. Camacho y C. Bordons. Model Predictive Control. Springer-Verlag, New York, 1998.
P. Castillo, R. Lozano, y A. E. Dzul. Modelling and Control of Mini-Flying Machines.
Springer-Verlag, London, UK, 2005.
P. Castillo, P. Garcıa, R. Lozano, y P. Albertos. Modelado y Estabilizacion de un Helicop-
tero con Cuatro Rotores. RIAI Revista Iberoamericana de Automatica e Informatica
Industrial, 4(1):41–57, Jan 2007.
M. Chen y M. Huzmezan. A Combined MBPC / 2DOF H∞ Controller for a Quad Rotor
UAV. In Proc. AIAA, 2003.
J. J. Craig. Introduction to Robotics - Mechanics y Control. Addison-Wesley Publishing
Company, Inc., USA, 2nd edn edition, 1989.
A. Dziugys y B. Peters. An approach to simulate the motion of spherical and non-spherical
fuel particles in combustion chambers. Granular Matter, 3(4):231–266, 12 2001.
112 Bibliografıa
S. Esteban. Control Nolineal en Tres Escalas de Tiempo de un Helicoptero de Ra-
dio/Control sobre una Plataforma. Technical report, Universidad de Sevilla, Sevilla,
ES, 2005.
I. Fantoni y R. Lozano. Nonlinear Control for Underactuated Mechanical Systems. TS-
pringer Verlag, London, 1995.
K. S. Fu, R. C. Gonzalez, y C. S. G. Lee. Robotics: control, sensing, vision, and intelligence.
McGraw-Hill Book, New York, 1987.
T. J. Koo y S. Sastry. Output tracking control design of a helicopter model based on
approximate linearization. In Proc. of the CDC, Florida, USA, 1999.
D. Lara, G. Romero, A. Sanchez, y R. Lozano. Parametric Robust Stability Analysis for
Attitude Control of a Four-rotor mini-rotorcraft. In Proc. of 45th IEEE Conference on
Decision and Control, 2006, pages 4957–4962, San Diego, CA, 2006.
T. Madani y A. Benellegue. Backstepping Control for a Quadrotor Helicopter. In Proc.
of the IEEE/RSJ International Conference on Intelligent Robots and Systems, 2006,
pages 3255–3260, 2006a.
T. Madani y A. Benellegue. Control of a Quadrotor Mini-Helicopter via Full State Ba-
ckstepping. In Proc. of 45th IEEE Conference on Decision and Control, 2006, pages
1515–1520, San Diego, CA, 2006b.
R. Mahony y T. Hamel. Robust trajectory tracking for a scale model autonomous
helicopter. International journal of robust and nonlinear control, 14, 2004.
Malis, E, Benhimane, S. A unified approach to visual tracking and servoing. Robotics and
Autonomous Systems, 52(1):39–52, 2005.
L. Mederreg, F. Diaz, y N. K. M’Sirdi. Nonlineal Backstepping Control with Onsrever
Design for a 4 Rotors Helicopter. In Proc. of the IFAC International Conference on
Advances in Vehicle Control and Safety (AVXS’04), 2004.
N. Metni, T. Hamel, y F. Derkx. Visual Tracking Control of Aerial Robotic Systems with
Adptive Depth Estimation. In Proc. of the CDC/ECC, pages 6078–6084, Seville, Spain,
2005.
MicroStrain Inc. 3DM-GX2TM Data Communication Proto-
col. Technical Report Version 1.08, MicroStrain, Inc., Willis-
ton, VT, Mar 2007. URL http://www.microstrain.com/pdf/3DM-
GX2_Data_Communications_Protocol_V1.08.pdf.
MicroStrain Inc. Technical Product Overview - Inertia-Linkr: Inertia Measurement
Unit and Vertical Gyro, 2006. URL http://www.microstrain.com/pdf/Inertia-
Link %20datasheet %20- %20v %201.pdf.
Bibliografıa 113
V. Mistler, A. Benallegue, y N. K. M’Sirdi. Exact linearization and noninteracting control
of a 4 rotors helicopter via dynamic feedback. In Proc. IEEE Int. Workshop on Robot
and Human Inter. Communic., 2001.
A. Mokhtari, A. Benallegue, y B. Daachi. Robust Feedback Linearization and GH∞
Controller for a Quadrotor Unmanned Aerial Vehicle. In Proc. of the IEEE/RSJ In-
ternational Conference on Intelligent Robots and Systems, 2005. (IROS 2005), pages
1009–1014, 2005.
W. L. Nelson y I. J. Cox. Local Path Control for an Autonomous Vehicle. In Proc.
of the IEEE International Conference on Robotics and Automation, pages 1504–1510,
Philadelphia, USA, 1988.
J. E. Normey-Rico, J. Gomez-Ortega, y E. F. Camacho. A Smith-Predictor-Based Gene-
ralised Predictive Controller for Mobile Robot Path-Tracking. In Control Engineering
Practice, volume 7, pages 729–740, London, England, 1999.
R. Olfati-Saber. Nonlinear Control of Underactuated Mechanical Systems with Application
to Robotics and Aerospace Vehicles. PhD thesis, Massachusetts Institute of Technology,
2001.
M. G. Ortega y F. R. Rubio. Systematic design of weighting matrices for the H∞ mixed
sensitivity problem. Journal of Process of Control, 14:89–98, 2004.
M. G. Ortega, M. Vargas, C. Vivas, y F. R. Rubio. Robustness Improvement of a Nonlinear
H∞ Controller for Robot Manipulators via Saturation Functions. Journal of Robotic
Systems, 22(8):421–437, 2005.
M. G. Ortega, M. Vargas, F. Castano, y F. R. Rubio. Improved Design of the Weighting
Matrices for the S/KS/T Mixed Sensitivity Problem - Application to a Multivariable
Thermodynamic System. IEEE Transactions on Control Systems Technology, 14(1):
82–90, 2006.
T. J. Pallet y S. Ahmad. Real-Time Helicopter Flight Control: Modelling and Control by
Linearization and Neural Networks. Technical Report TR-EE 91-35, School of Electrical
Engineering - Purdue University, West Lafayette, Indiana, August 1991.
S. Park, D. H. Won, M. S. Kang, T. J. Kim, H. Lee, y S. J. Kwon. RIC(Robust Internal-
loop Compensator) Based Flight Control of a Quad-Rotor Type UAV. In Proc. of the
IEEE/RSJ International Conference on Intelligent Robots and Systems, 2005. (IROS
2005), pages 3542–3547, 2005.
G. V. Raffo. Algoritmos de Controle Preditivo para Seguimento de Trajetorias de Veıculos
Autonomos. Master’s thesis, Univesidade Federal de Santa Catarina, Programa de Pos-
Graduacao em Engenharia Eletrica, Florianopolis, SC, 2005. in portuguese.
114 Bibliografıa
G. V. Raffo, M. G. Ortega, y F. R. Rubio. Control H∞ Multivariable de un Modelo
de Helicoptero. In XXVIII Jornadas de Automatica, JAL06, pages 854–859, Almerıa,
Spain, Sept. 2006.
G. V. Raffo, J. E. Normey-Rico, y F. R. Rubio. Control Predictivo de la Dinamica de
un Vehıculo Autonomo. In XXVIII Jornadas de Automatica - University of Huelva,
Huelva, Spain, Sep 2007a.
G. V. Raffo, M. G. Ortega, y F. R. Rubio. Nonlinear H∞ Control Applied to the Personal
Pendulum Car. In Proc. of the European Control Conference. ECC’07, Kos, Greece,
July 2007b.
G. V. Raffo, M. G. Ortega, y F. R. Rubio. Backstepping/Nonlinear H∞ Control for Path
Tracking of a QuadRotor Unmanned Aerial Vehicle. In Proc. of the American Control
Conference - ACC2008, 2008a. Submitted.
G. V. Raffo, M. G. Ortega, y F. R. Rubio. MPC with Nonlinear H∞ Control for Path
Tracking of a Quad-Rotor Helicopter. In Proc. of the IFAC World Congress 2008,
2008b. Submitted.
X. Rong y U. Ozguner. Sliding Mode Control of a Quadrotor Helicopter. In Proc. of
45th IEEE Conference on Decision and Control, 2006, pages 4957–4962, San Diego,
CA, 2006.
J. A. Rossiter. Model-Based Predictive Control: A Practical Approach. CRC Press, New
York, 2003.
R. S. Sanchez-Pena y M. Sznaier. Robust Systems - Theory and Applications. Wiley
Interscience, New York, USA, 1998.
M. M. Space y A. Spazio. The Hipparcos and Tycho Catalogues - The Hipparcos Satellite
Operations, Volume 2. Technical Report ESA SP-1200, European Space Agency, 1997.
S. Sun. Designing Approach on Trajectory-Tracking Control of Mobile Robot. Robotics
and Computer-Integrated Manufacturing, 21(1):81–85, 2005.
G. P. Tournier, M. Valenti, J. P. How, y E. Feron. Estimation and Control of a Quadrotor
Vehicle Using Monocular Vision and Moire Patterns. In Proc. of the AIAA Guidance,
Navigation, and Control Conference and Exhibit, August 2006.
A. Trofino, D. Coutinho, y K. A. Barbosa. Sistemas Multivariaveis - Uma abordagem via
LMIs. Technical report, Universidade Federal de Santa Catarina, Florianopolis, BR,
Agosto 2003.
Valpey Fisher. Valpey fisher homepage, 2007. URL http://www.valpeyfisher.com/
ContentDisplay.aspx?ContentCode=Glossary.
Bibliografıa 115
A. van der Schaft. L2-Gain and Passivity Techniques in Nonlinear Control. Springer-
Verlag, New York, 2000.
A. van der Schaft. L2-Gain Analysis of Nonlinear Systems and Nonlinear State Feedback
Control. IEEE Trans. Automat. Control, 37(6):770–784, 1992.
W. Feng and I. Postlethwaite . Robust Nonlinear H∞/Adaptative Control of Robot
Manipulator Motion. Proc. Instn. Mech. Engrs., 208:221–230, 1994.