Centro Nacional de Investigación y Desarrollo Tecnológico

Anuncio
cnológico
Subsecretaría de Educación Superior
Dirección General de Educación Superior Tecnológica
Coordinación Sectorial Académica
Dirección de Estudios de Posgrado e Investigación
Centro Nacional de Investigación
y Desarrollo Tecnológico
Subdirección Académica
Departamento de Ingeniería Electrónica
TESIS DE MAESTRÍA EN CIENCIAS
Control Tolerante a Fallas de un sistema Lineal Por Pedazos
Aplicado un Avión
presentada por
Ing. José Luis Jaimes Maldonado
como requisito para la obtención del grado de
Maestro en Ciencias en Ingeniería Electrónica
Director de tesis
Dr. Manuel Adam Medina
Codirector de tesis
Dr. Luis Gerardo Vela Valdés
Cuernavaca, Morelos, México. Febrero de 2014.
“La grandeza del hombre radica en su propia capacidad de hacer que las cosas sucedan, en levantarse
después de un tropiezo, en hacerse más fuerte aprendiendo de sus errores y en convertirse en una
leyenda a medida de la huella que ha plasmado en la tierra.”
J.L.J.M.
Resumen
E
n el siguiente trabajo de investigación se presenta el procedimiento de diseño del Control tole-
rante a fallas de un sistema lineal por pedazos, se establecen las bases teóricas del control tolerante
a fallas y de los sistemas que son modelados mediante aproximaciones lineales, así como el análisis
de estabilidad, observabilidad y controlabilidad, la generación de modos (subsistemas) y posteriormente el diseño de los controladores multivariables por retroalimentación dinámica del estado y
lineal cuadrático con tolerancia a fallas, así como el diseño del esquema de diagnóstico y aislamiento
de fallas (FDI) utilizando como generadores de residuos bancos generalizados de observadores tipo
Luenberguer y de entradas desconocidas (generación robusta de residuos). En resumen se desarrollaron seis subsistemas lineales (6-PWLS) que rigen cierto comportamiento dinámico del sistema
en puntos de operación específicos en particular para el modelo del avión caza F16 presentando los
resultados en simulación para una tarea de vuelo específica, conservando la trayectoria aún con falla
en los sensores de altitud y velocidad respectivos del avión.
En general un sistema lineal por pedazos (PWLS) es en esencia un sistema lineal conmutado, el cual
consiste en un número finito de subsistemas y una ley que coordina las conmutaciones entre esta
familia. Este tipo de sistemas proporcionan un marco que une a los sistemas lineales y los sistemas
complejos no lineales. Los sistemas lineales por pedazos pertenecen a una clase especial de sistemas
de control híbrido que comprende un conjunto de subsistemas descritos por dinámicas lineales (diferenciales/ecuaciones en diferencias), junto con una regla o señal de conmutación dependiente por lo
general del tiempo, del estado, entradas exógenas o de salida del sistema que rige el comportamiento entre los subsistemas. Tales sistemas pueden usarse para describir una amplia gama de sistemas
físicos y de ingeniería en la práctica. En primer lugar, se pueden utilizar para sistemas con modelos
sujetos a variaciones de parámetros conocidos o desconocidos tales como sistemas lineales de conmutación sincrónica, redes con conmutaciones periódicamente variables y por el cambio repentino
de las estructuras del sistema debido a la falla de un componente. Un buen ejemplo es el sistema de
control híbrido para sistemas no holónomos que no son estabilizables por medio de cualquier controlador único continuo por retroalimentación del estado. Para sistemas simples lineales e invariantes
en el tiempo (LTI), el rendimiento (respuesta transitoria) se puede mejorar a través de controladores/compensadores conmutados. Los sistemas lineales por pedazos no sólo representan un reto para la
investigación académica, sino que también sirve de puente entre el tratamiento de sistemas lineales
y los sistemas de alta complejidad. Estos sistemas son relativamente fáciles de manejar con muchas
herramientas poderosas de análisis lineal y multilineal aplicables o extensibles para hacer frente a
los sistemas no lineales. Por otra parte, el estudio de sistemas de conmutación lineal proporciona
una visión adicional con algunos problemas de alto y sofisticado entendimiento, como el control
inteligente y el control adaptativo. Dada la estructura de cada subsistema individual, el comportamiento global del sistema está determinado por la señal de conmutación. Recientemente, los PWLS
han tomado importancia en la comunidad científica tanto de control como de computación, debido
a su gran capacidad para representar la dinámica continua y discreta de sistemas complejos (redes
biológicas, sistemas tolerantes a fallas, sistemas de transporte aéreo, terrestre, entre otros). Como
consecuencia, la necesidad de estudiar sus propiedades fundamentales, tales como observabilidad,
controlabilidad y estabilidad, se ha convertido en un tema importante. Una parte de análisis importante de estudiar es la propiedad de observabilidad de PWLS, la cual permite calcular el estado
completo del sistema a partir de las variables medibles, mediante un observador. Esta propiedad es
útil, por ejemplo, en el diseño de controladores por retroalimentación de estados y diagnosticadores
de fallas que son utilizados ampliamente en este trabajo de investigación.
Abstract
In the following research work presents the design procedure for the fault tolerant control of
a piecewise linear system, establishes the theoretical control and fault tolerant systems that are
modeled by linear approximations and as the analysis of stability, controllability and observability,
generating modes (subsystems) and then the design of dynamic feedback multivariable controllers
for linear quadratic state and fault-tolerant and schema design diagnostic and fault isolation (FDI)
to generate residuals using generalized observers banks Luenberguer type and unknown inputs (robust generation of residuals). In summary, we developed six sub linear systems (6-PWLS) governing
certain dynamic system behavior in specific operating points particularly for the F16 fighter jet
model presenting the simulation results for a specific flight task, keeping the trajectory still failure
in altitude and speed sensors respective of the aircraft.
Overall a piecewise linear system (PWLS) is essentially a switched linear system, which consists of
a finite number of subsystems and a law that coordinates the switching between this family. Such
systems provide a framework that unites the linear and nonlinear complex systems. Piecewise linear
systems belong to a special class of hybrid control systems comprising a set of subsystems described
by linear dynamics (differential / difference equations), together with a rule or dependent switching
signal usually time, the state , exogenous input or output of the system that governs the behavior
between the subsystems. Such systems can be used to describe a wide range of physical and engineering systems in practice. First, it can be used for linear models subject to variations of known or
unknown parameters such as synchronous switching linear systems, periodically switching networks
with variables and by the sudden change of system structures due to component failure. A good
example is the hybrid holonomous control systems which are not stabilizable by any continuous
single controller status feedback.
For simple systems and linear time invariant (LTI), performance (transient response) can be improved through controllers / compensators switched. Piecewise linear systems represent a challenge not
only for academic research, but also serves as a bridge between the treatment of linear and highly
complex systems. These systems are relatively easy to use with many powerful tools of linear and
multilinear analysis applicable or extendable to deal with nonlinear systems. Moreover, the study
of linear switching systems provides additional insight to some problems of high and sophisticated
understanding as intelligent control and adaptive control. Given the structure of each individual
subsystem, overall system performance is determined by the switching signal. Recently, PWLS have
become important in the scientific community both control and computing, due to its ability to
represent continuous and discrete dynamics of complex systems (biological networks, fault tolerant
systems, systems of air, land, between other). As a result, the need to study its fundamental properties such as observability, controllability and stability has become an important issue. A part
of analysis is important to study the observability property PWLS, which allows to calculate the
complete state of the system from measurable variables by an observer. This property is useful, for
example, in the design of state feedback controllers and fault diagnosers that are used extensively
in this research.
Agradecimientos
Gracias sobre todo a Dios mi creador por darme la fortaleza, sabiduría, el entendimiento, la salud
y demás cosas que día a día me permitieron llegar hasta este momento...
A mis Padres, Gracias, por sus oraciones, sus consejos y por el amor tan grande que me tienen...
A Uli y Karl, por el valioso apoyo que recibí de su parte, espero disculpen todas las molestias
ocasionadas...
A Silvia C., por ser fuente de inspiración y coraje para continuar siempre adelante, y a su familia por el apoyo siempre incondicional, Dios los bendiga...
A mi Abuela, tíos y primos en general por que siempre me dieron aliento para continuar, se que soy
orgullo para ustedes...
Al Dr. Manuel A. M. Por haber confiado en mi a pesar de estar un poco empolvado, y por su
apoyo siempre...
Al Dr. Luis Gerardo Vela, Alejandro Rodríguez, Andrés Blanco y en general todos los catedráticos del CENIDET que hicieron posible mi formación profesional...
A mis amigos incondicionales Maza, Julius, Cornelio, Felipe, Beto, Toca, por mencionar algunos
de la enorme lista que gracias a Dios tengo...
A Profesor Ing. T. Pablo Ocampo Solano, por su apoyo, gracias...
Al M.I. Gabriel Segura, Ing. Ismael Sandoval y Empresa por apoyarme en mi titulación...
Al CENIDET por haberme abierto sus puertas para concluir mi formación de posgrado...
Al CONACyT por el apoyo económico brindado durante la maestría...
vi
Índice general
Resumen
iii
abstract
v
Agradecimientos
vii
Lista de Figuras
xi
Lista de Tablas
xiii
Abreviaciones
xiv
Lista de Constantes
xvii
Simbología
xviii
1. Introducción
1.1. Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2. Justificación . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3. Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3.1. Objetivo general . . . . . . . . . . . . . . . . . . . .
1.3.2. Objetivos específicos . . . . . . . . . . . . . . . . . .
1.4. Procedimiento/Método . . . . . . . . . . . . . . . . . . . . .
1.5. Estado del arte . . . . . . . . . . . . . . . . . . . . . . . . .
1.5.1. Sistemas Lineales por Pedazos. . . . . . . . . . . . .
1.5.2. Observabilidad, controlabilidad, estabilidad y control
1.5.3. Control Tolerante a Fallas de PWLS. . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
1
1
2
3
3
4
4
5
5
6
7
2. Sistemas Conmutados
2.1. Sistemas Lineales Por Pedazos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1.1. Análisis elemental de sistemas Lineales por Pedazos . . . . . . . . . . . . . .
2.1.2. Señal de conmutación dependiente del estado. . . . . . . . . . . . . . . . . . .
8
8
10
11
vii
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .
de PWLS.
. . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Contents
2.1.3. Señal de conmutación dependiente del tiempo. . .
2.2. Estabilidad y Estabilizabilidad . . . . . . . . . . . . . . .
2.2.1. Estabilizabilidad de sistemas lineales por pedazos.
2.3. Observabilidad y Reconstructibilidad . . . . . . . . . . . .
2.3.1. Analisis Elemental de Observabilidad para PWLS .
2.4. Controlabilidad y Alcanzabilidad . . . . . . . . . . . . . .
viii
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
13
15
19
22
25
26
3. Control Tolerante a Fallas
3.1. Esquemas de detección y aislamiento de fallas basado en observador
3.2. Estructura del Aislamiento de Fallas . . . . . . . . . . . . . . . . . .
3.3. Observador de Luenberguer Generalizado . . . . . . . . . . . . . . .
3.4. Observador de Entradas Desconocidas de Orden Completo . . . . . .
3.5. Control por Retroalimentación de Estados . . . . . . . . . . . . . . .
3.6. Fundamentos del Control LQR . . . . . . . . . . . . . . . . . . . . .
3.6.1. Formulación General del Control LQR . . . . . . . . . . . . .
3.6.2. Obtención de la Matriz K(t). Ecuación de Riccati . . . . . .
3.6.3. LQR en Régimen Permanente . . . . . . . . . . . . . . . . . .
3.6.4. Elección de las Matrices Q y R . . . . . . . . . . . . . . . . .
3.6.5. Robustez del Controlador LQR . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
31
32
33
36
38
40
42
42
43
44
44
45
4. Modelo no lineal del Avión
4.1. Dinámica del Avión . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1.1. Marco de Referencia . . . . . . . . . . . . . . . . . . . . .
4.1.2. Variables del Avión . . . . . . . . . . . . . . . . . . . . . .
4.1.3. Ecuaciones de movimiento para el avión de cuerpo rígido .
4.1.4. Ecuaciones de Fuerza . . . . . . . . . . . . . . . . . . . . .
4.1.5. Ecuaciones de Momentos . . . . . . . . . . . . . . . . . .
4.1.6. Resumen de las ecuaciones de movimiento . . . . . . . . .
4.1.6.1. Ecuaciones de Fuerza en Ejes de Viento . . . . .
4.2. Variables de Control y Modelado del Motor . . . . . . . . . . . .
4.3. Geometría y Datos Aerodinámicos . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
46
46
46
47
49
49
51
52
55
55
56
.
.
.
.
.
60
61
62
63
67
72
5. Resultados del Trabajo de Investigación
5.1. Planteamiento del Problema . . . . . . . . . . . . . . . . . . .
5.1.1. Propuesta de Solución y Estructura del Controlador .
5.2. Diseño del Sistema Lineal por Pedazos . . . . . . . . . . . . .
5.3. Simulación del Sistema Lineal por Pedazos . . . . . . . . . . .
5.4. Simulación del control tolerante a fallas aplicado al modelo no
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
. . . . . . . . . . . .
lineal del avión F16
6. Conclusiones
77
6.1. Logros Obtenidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
6.2. Trabajos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
Contents
ix
A. Modelos Lineales Por Pedazos
79
B. Diagramas De Bloques de los Programas Implementados
81
C. Algoritmos
83
Bibliografía
105
Índice de figuras
2.1. Diagrama de un sistema conmutado . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2. las curvas gruesas indican las superficies de conmutación, las curvas finas con flechas
indican las porciones continuas de la trayectoria, y las líneas de trazos simbolizan los
saltos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3. Señal de conmutación dependiente del tiempo . . . . . . . . . . . . . . . . . . . . . .
2.4. Efecto de la ley de conmutación en la estabilidad de un sistema conmutado . . . . .
2.5. Estabilidad en el sentido de Lyapunov. . . . . . . . . . . . . . . . . . . . . . . . . . .
12
14
16
16
3.1.
3.2.
3.3.
3.4.
3.5.
3.6.
3.7.
3.8.
3.9.
32
33
34
38
39
40
41
42
43
Clasificación del Control Tolerante a Fallas. . . . . . . . . . . . .
Procedimiento de Diseño del Control Tolerante a Fallas. . . . . .
Banco de Observadores Generalizados para FDI en Sensores. . . .
Observador de Luenberguer Generalizado. . . . . . . . . . . . . .
Observador de Entradas Desconocidas de Orden Completo. . . .
Esquema de Control por Retroalimentación de Estados. . . . . .
Esquema Dinámico de Control por Retroalimentación de Estados.
Control por Retroalimentación de Estados con Acción Integral. .
Diagrama de Bloques del Control Lineal Cuadrático. . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
4.1. Ejes de cuerpo en un F-16, (x, y y z) L momento de giro, M momento de cabeceo, N
momento de viraje, p velocidad angular de alabeo, q velocidad angular de cabeceo, r
velocidad angular de viraje. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2. Ángulos de orientación del avión φ, θ y ψ, ángulos aerodinámicos α y β, y velocidades
angulares p, q y r. Todos positivos en la figura. . . . . . . . . . . . . . . . . . . . . .
4.3. Coeficientes Aerodinámicos Obtenidos en el Túnel de Viento Para el F-16. . . . . . .
5.1. Esquema de Control Propuesto Para el Modelo del Avión Falcon F-16. . . . . . . . .
5.2. Algoritmo para la Generación del Sistema Lineal por Pedazos del Modelo del Avión
Falcon F-16. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3. Respuesta del modo 1 en los sensores de h, v, θ, α, q y Respuesta estimada con el
observador. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4. Respuesta del modo 1 en los sensores de altitud y velocidad con falla simple en Sh
del tipo escalón f = +20 %, t = 20 s, y Respuesta con observador. . . . . . . . . . . .
5.5. Respuesta de las señales restantes con falla simple f = +20 %, t = 20 s, y Respuesta
con observador. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.6. Respuesta del modo 1 en los sensores de altitud y velocidad con falla múltiple tipo
escalón f = −20 %, t = 30 s, y Respuesta con observador. . . . . . . . . . . . . . . .
x
9
47
48
57
63
65
68
69
70
71
List of Figures
5.7. Respuesta de las señales restantes con falla múltiple f = −20 %, t = 30s, y Respuesta
con observador. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.8. Respuesta del sistema en las señales de altura y velocidad, con falla múltiple fSh,v =
+5 %, tfh = 10 s, tfv = 100 s, Zoom del instante de falla. . . . . . . . . . . . . . . . .
5.9. Respuesta del sistema no lineal con FTC óptimo para los sensores de altitud y velocidad presentando falla múltiple fSh,v = +10 %, tfh = 80 s, tfv = 120 s, Zoom del
instante de falla. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.10. Respuesta de las variables N pos, Epos, φ, θ, ψ α, β, p, q, r, nx, ny, nz, mach, Pe , Pd .
B.1. Diagrama de bloques para la simulaciÃşn y diseÃśo de los controladores lineales por
pedazos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
B.2. Diagrama de bloques para la simulación del esquema completo de control tolerante
a fallas lineal por pedazos aplicado al modelo no lineal. . . . . . . . . . . . . . . . . .
xi
71
73
74
76
81
82
Índice de cuadros
4.1. Valores Máximos y Mínimos de las Variables de Control. . . . . . . . . . . . . . . . .
56
5.1.
5.2.
5.3.
5.4.
5.5.
5.6.
65
67
67
69
70
Valores Aceptables para las Condiciones de Vuelo y Linealización. . . . . . . . . . . .
Procedimiento Sistemático para el Diseño del FTC. . . . . . . . . . . . . . . . . . . .
Puntos de operación para la generación de modelos lineales. . . . . . . . . . . . . . .
Matriz de fallas del sistema lineal por pedazos con falla simple a los 20 s. . . . . . . .
Matriz de fallas del sistema lineal por pedazos con falla múltiple t = 30 s. . . . . . .
Índices de desempeño de los controladores con tolerancia a fallas acerca del error de
regulación. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.7. Comparación de atributos de los controladores con tolerancia a fallas. . . . . . . . . .
xii
72
72
Abreviaciones
GC
Centro de Gravedad
MC
Centro de Masa
DOF
Grados de libertad
ODE
Ecuaciones Diferenciales Ordinarias
CLF
Función común de Lyapunov
PLC
Control Lineal por Pedazos
SS
Sistema Conmutado
SLS
Sistema Lineal Conmutado
FTC
Control Tolerante a Fallas
FDI
Diagnóstico y Aislamiento de Fallas
PWLS
Sistemas Lineales por Pedazos
VN
Vuelta a Nivel
VRN
Vuelo Recto y Nivelado
LQR
Regulador Cuadrático Lineal
m.a.c.
Cuerda aerodinámica media
MLF
Función Múltiple de Lyapunov
L
Sustentación
l
Momento de guiñada
m
Momento de cabeceo
n
Momento de alabeo
T
Propulsión
gD
Aceleración debida a la gravedad
m
Masa del avión
xiii
Abreviaciones
xiv
D
Resistencia
Fb
Marco de referencia fijo en el cuerpo rígido del vehículo
Fi
Marco de referencia inercial
vCM/e
Velocidad del CM en Fe
vCM/i
Velocidad del CM en Fi
vCm/i
Velocidad del centro de masa del vehículo con respecto a Fi
FA,T
Vector suma de las fuerzas aerodinámicas y de propulsión en el centro de masa
MA,T
Suma de los momentos aerodinámicos y de propulsión en el centro de masa
pCM/O
Posición del CM relativo al origen del marco de referencia inercial
ωb/i
Velocidad angular de Fb con respecto a Fi
ωx/y
Velocidad angular del marco x con respecto al marco y
R
Conjunto de los números reales
C
Conjunto de los números complejos
N
Conjunto de los números naturales
CFT 1 ...CFT 3
Derivadas de la fuerza de propulsión
CL
Derivadas del torque de Giro
CM
Derivadas del torque de Cabeceo
CN
Derivadas del torque de Viraje
a
Gradiente de temperatura
b
Envergadura
Cab
Matriz de dirección coseno transformada de (a) a (b)
Dp
Diámetro de la propela
Ib
Matriz de inercia del avión en ejes de cuerpo
J
Radio de propulsión
Lb
Torque de giro en dirección xb
m
Masa del avión
Mb
Torque de cabeceo en dirección yb
M
Vector de torque externo que afecta el cuerpo rígido
Nb
Torque de viraje en dirección zb
p
Velocidad angular de alabeo
q
Velocidad angular de cabeceo
Abreviaciones
xv
r
Velocidad angular de viraje
q̄
Presión dinámica
Lista de Constantes
g
=
32,17 f t/s2
m
=
18,726 lb
l
=
49 f t
Altura
H
=
16 f t
Envergadura
E
=
31 f t
Área total
S
=
300 f t2
Fuerza debida a la gravedad
Masa del avión F-16
Longitud
xvi
Simbología
α
Ángulo de ataque
φ, θ, ψ
Ángulos de Euler
φ
Ángulo de alabeo
θ
Ángulo de cabeceo
ψ
Ángulo de viraje
αe
Ángulo de ataque en equilibrio
β
Ángulo de deslizamiento lateral
δa
Deflexión del Alerón
δe
Deflexión del Elevador
δr
Deflexión del Timón
δt
Propulsión
h
Altitud a nivel del mar
XE
Posición Este desde el centro de gravedad del avión
XN
Posición Norte desde el centro de gravedad del avión
τn
Constante de tiempo de aceleración del motor
ω
Componente de velocidad inercial
γ
Ángulo de la trayectoria de vuelo
ŷ
Dato estimado basado en modelo
y(t)
Dato medible
φmax
Ángulo máximo de giro permisible
Rmin
Radio mínimo de viraje
τroll
Tiempo de giro debido a φmax
xvii
Para mi Familia y Amigos/Silvia Cristina D.C.A./Con todo mi Corazón. . .
xviii
Capítulo 1
Introducción
1.1.
Antecedentes
L
os beneficios que se obtienen de realizar el análisis y diseño de controladores basados en el
modelado lineal de los sistemas no lineales, se exploran actualmente nuevas alternativas que hagan
frente a las limitaciones del control lineal para sistemas donde se desea abarcar una dinámica no
lineal mucho más amplia. Una de las limitantes es, el hecho de que la descripción lineal de un sistema tiene solución únicamente en una vecindad de los puntos de equilibrio o puntos de operación,
alrededor del cual ha sido diseñado el sistema de control lineal. Para dar solución a este problema
sin emplear el control no lineal se han estudiado técnicas donde se utilizan múltiples sistemas lineales, los cuales son gobernados por una ley o señal de conmutación para el diseño de controladores
que son relativamente de fácil diseño e implementación. Ejemplos que emplean esta técnica son: el
control por ganancias programadas, control por multi-modelos, control lineal por pedazos, entre otros.
El control lineal por pedazos se fundamenta principalmente en la partición de la dinámica del
sistema no lineal en regiones lineales, donde en cada región, o punto de operación, se tiene asociado un modelo lineal mediante linealización utilizando la técnica adecuada, obteniendo al final un
conjunto (familia) de sistemas lineales en los que se lleva a cabo el diseño de los controladores para
cierta dinámica deseada. Dichos modelos lineales son utilizados para el diseño de un controlador
específico para esa región de operación, y como se menciona anteriormente, para que este conjunto
de controladores gobiernen el comportamiento del sistema no lineal se requiere de un supervisor
que indique cúal es el controlador que debe estar activo dependiendo de la cercanía de un punto
de equilibrio a otro. Este supervisor genera algo conocido como la ley de conmutación o señal de
conmutación, esta señal definirá que controlador estará activo dependiendo de algunos factores como
1
Capítulo 1. Introducción
2
el estado, el tiempo, salidas, entradas exógenas o de una combinación. Particularmente, como caso
de estudio se propone el diseño de una ley de conmutación conocida y dependiente del tiempo para
un sistema (familia) de controladores lineales con tolerancia a fallas que será aplicado al modelo
del avión en sensores de altitud y velocidad, el cual gobernará la dinámica global del avión F16
aún en condiciones de falla en dichos sensores utilizando la técnica de control multivariable por
retroalimentación de estados y lineal cuadrático por ganancias programadas, así como el diseño de
un esquema de detección y aislamiento de fallas.
El modelo del avión es complejo, ya que en su dinámica influyen diversos factores que hacen difícil su representación matemática, tales como perturbaciones atmosféricas (turbulencias), errores de
modelado, entre otros. Uno de los factores que más impactan la dinámica del avión son las restricciones de movimiento. Un avión es un sistema no holónomo de manera que no puede desplazarse
de manera directa hacia todas partes con la acción de la entrada de control debido a que posee
seis grados de libertad correspondientes a los desplazamientos longitudinales y rotacionales, en el
modelo más general, solo cuatro entradas de control. Las entradas de control de un avión son la
fuerza de tracción o propulsión, las deflexiones del elevador, del alerón y del timón. Es importante
notar también que el describir la dinámica del sistema mediante aproximaciones lineales requiere
que las divisiones lineales de la dinámica sean congruentes con la tarea de vuelo, es decir, que cada
condición de vuelo posea al menos un modelo lineal que lo describa y que la unión de todas las
particiones conformen una tarea global. En este trabajo de investigación el modelo no lineal será
linealizado en torno a puntos de operación dependientes de la altitud y velocidad en lugar de puntos
de equilibrio, bajo ciertas condiciones iniciales. Esta característica permite describir los comportamientos deseados como función de las variables con las que se desee trabajar, además del diseño de
un esquema con tolerancia a fallas activo por ganancias programadas para los sensores de altitud y
velocidad.
1.2.
Justificación
E
n general el control de un avión requiere de técnicas adecuadas y eficientes, robustas o adap-
tables, en especial cuando el modelo en cuestión se mueve de un régimen de operación a otro y las
condiciones que soporta la estructura propia así como la exigencia de los controladores son extremas,
o bien, cuando el sistema opera en condiciones donde exhibe fuertes no linealidades. Cuando existen cambios entre cada régimen de operación surgen características particulares debido a cambios
abruptos en la dinámica del avión debido a perturbaciones y variaciones atmosféricas; por lo tanto
si el modelo dinámico es estable y posee un buen desempeño en cierta condición de vuelo puede
Capítulo 1. Introducción
3
volverse inestable, o al menos tener un desempeño pobre al cambiar hacia otra condición de vuelo
[39, 53]. Otra característica del sistema en cuestión es que presenta no linealidades en su dinámica
debido a las fuerzas y momentos aerodinámicos presentes en el vuelo, que están intrínsecamente
relacionados con el ángulo de ataque, una de las variables más importantes. Además, el avión se
encuentra en movimiento dentro de un fluido, razón por la cual el número de Reynolds, la altitud,
velocidad, temperatura, el movimiento de cuerpo rígido, las restricciones geométricas, de navegación,
los coeficientes aerodinámicos que varían en relación al número de Mach al que está sometido el avión
son factores que juegan un papel importante en las mencionadas fuerzas y momentos aerodinámicos.
Sin embargo gracias al avance de la tecnología, las técnicas de control actuales proporcionan un
marco para la operación de este tipo de sistemas aceptable, logrando rechazar condiciones de vuelo
críticas para el controlador, aunado a esto, se diseñan controladores con tolerancia a fallas que además de operar al sistema nominal tienen la capacidad de compensar desperfectos o degradaciones
en los instrumentos del avión. No obstante, el uso de controladores no lineales pone a prueba las
capacidades computacionales debido al procesamiento de datos, por ello la importancia de reducir
al máximo esta problemática. Para mitigar en gran medida el dilema anterior se recurre a las técnicas actuales en particular de control lineal por pedazos adaptable con ganancias programadas,
obteniendo resultados favorables.
1.3.
Objetivos
P
ara el desarrollo de este trabajo de investigación partimos desde el objetivo general hasta los
objetivos específicos a resolver, enunciándolos a continuación...
1.3.1.
Objetivo general
E
l objetivo general de este trabajo de investigación es diseñar una estrategia de control con
tolerancia a fallas activo en sensores de altura y velocidad para el modelo no lineal del avión F16,
que asegure un funcionamiento aceptable del sistema en la trayectoria de navegación aún cuando
este presente alguna anomalía (falla) en dichos sensores, modelando dicho sistema no lineal como
un sistema lineal por pedazos para el diseño de los controladores y haciendo uso de una ley de
conmutación conocida y dependiente del tiempo, presentando los resultados en simulación.
Capítulo 1. Introducción
1.3.2.
4
Objetivos específicos
X Estudiar y dominar las técnicas del modelado de sistemas lineales por pedazos, esquemas de
diagnóstico y aislamiento de fallas y técnicas de control tolerante a fallas.
X Dividir la dinámica del sistema no lineal del avión F16 en secciones lineales, para posteriormente diseñar los controladores.
X Llevar a cabo el análisis de estabilidad, controlabilidad y observabilidad del sistema lineal por
pedazos.
X Definir el criterio de conmutación entre los controladores con base a los preceptos a analizar.
X Establecer con base en un desempeño deseado, los eigenvalores requeridos del sistema en lazo
cerrado para cada controlador.
X Ubicar los valores característicos del sistema de manera que se garantice la estabilidad y el
desempeño deseado aún con la ley de conmutación y posible falla en alguno de los sensores de
altura o velocidad.
X Diseñar el esquema de FDI para el sistema lineal por pedazos.
X Evaluar el desempeño del sistema tolerante a fallas propuesto en lazo cerrado para el sistema
no lineal del avión F16.
1.4.
Procedimiento/Método
P
ara el cumplimiento de los objetivos antes mencionados, se requiere seguir el procedimiento
específico que se describe a continuación:
1. Estudio bibliográfico de sistemas lineales por pedazos y control tolerante a fallas aplicado a
este tipo de sistemas, análisis y procedimientos.
i) Comprensión del modelo no lineal del sistema así como su análisis para su posterior partición.
La finalidad es conocer los problemas derivados de las no linealidades y singularidades del caso
de estudio propuesto en este trabajo de tesis para analizar la manera de afrontarlos, comprender
las características del comportamiento dinámico y estático del sistema facilita en parte el diseño del
controlador.
Capítulo 1. Introducción
5
ii) Linealización del sistema alrededor de puntos de operación.
De acuerdo a la tarea específica deseada, se linealiza el modelo no lineal alrededor de puntos de
operación bien definidos para dar paso a una familia de subsistemas lineales para el diseño de los
diferentes controladores que se uniran mediante una ley de conmutación dependiente del tiempo
adecuada para formar el sistema de control tolerante a fallas lineal por pedazos.
2. Análisis de estabilidad, controlabilidad y observabilidad del sistema lineal por pedazos (estructura
del sistema).
Determinación de estabilidad, controlabilidad y observabilidad del sistema por cada región de equilibrio o en su defecto en la vecindad del punto de equilibrio donde se realizó la linealización.
3. Definición de los criterios de conmutación.
El definir un criterio de conmutación de manera adecuada garantiza el correcto funcionamiento
del sistema de control lineal por pedazos para asegurar que el sistema no lineal se aproxime con
presición al comportamiento deseado.
4. Diseño de la estrategia de control tolerante a fallas activo.
Realizar la evaluación del esquema de FDD ó FDI del PWLS, posteriormente el diseño del sistema de control tolerante a fallas activo por acomodación utilizando controladores multivariable.
5. Simulación del sistema de control tolerante a fallas activo lineal por pedazos para el modelo
del avión no lineal F16.
6. Evaluación y reporte de las técnicas de FTC aplicadas en simulación.
1.5.
1.5.1.
E
Estado del arte
Sistemas Lineales por Pedazos.
n 1956 nace la idea de modelar los sistemas no lineales mediante particiones lineales [52], donde
Capítulo 1. Introducción
6
los autores presentan a los PWLS como una necesidad para un modelado adecuado de circuitos
eléctricos y dan una noción física que introduce la idea de esta clase de sistemas. Posteriormente,
en [26] tratan a los sistemas no lineales en el enfoque de redes resistivas no lineales y basan el análisis de estos sistemas mediante linealidad por pedazos, además, se estudian a detalle la condición
de Lipschitz y el homeomorfismo global. Finalmente, la formalización matemática de los PWLS la
realiza Eduardo D. Sontag en [50] donde comienza con la terminología de particiones en espacios
poliédricos, además se estudian algunos problemas de control característicos de los sistemas lineales
existentes en los PWLS como son la realimentación de estados y realimentación de la salida, observadores y el cálculo de inversibilidad del sistema. Los trabajos reportados en relación a los PWLS
han sido diversos. Uno de ellos realiza un estudio de la identificación de PWLS mediante la identificación por subespacios [54]. Otras investigaciones tratan sobre el estudio de las características
de los PWLS y el análisis de los puntos de equilibrio mediante la construcción de las funciones de
Lyapunov cuadráticas en el espacio de estado [31] y en la superficie de conmutación asociado con
el sistema [28].
1.5.2.
Observabilidad, controlabilidad, estabilidad y control de PWLS.
S
e han estudiado también la observabilidad, tanto en PWLS [4] como en sistemas híbridos y
conmutados [5], [18], [14] que algunos autores los consideran también PWLS. En [22, 28, 32] se
realizan estudios de la estabilidad. Otra característica importante que se aborda en la literatura es
la controlabilidad, propiedad que se estudia en [29] para los sistemas híbridos lineales por pedazos y
en [34] para los sistemas lineales conmutados. Se ha profundizado en el diseño de observadores [19],
[33] y controladores para los PWLS basados en H∞ [25], [20], mediante realimentación de estados
[23], usando control robusto [20] y usando un enfoque de la dinámica del error [9]. Se han analizado
también metodologías compactas de modelado de PWLS [8]. Pueden encontrarse algunas aplicaciones de los PWLS en otras áreas, tales como teoría de circuitos [47], en aplicaciones biológicas [28],
en electrónica de potencia [42], máquinas [9], entre otras.
En los trabajos de Alessandri, 2001 [1] se propone un observador Luenberger para una clase de
sistemas conmutados y un diseño basado en un método de proyección para minimizar el error de
estimación es dado en los modos del sistema conocidos a priori. Feng propone un enfoque de diseño
de observadores para un clase de sistemas PWL y presenta dos métodos de diseños de filtros para los
sistemas de la misma clase donde se supone que las particiones se definen en términos de la salida
del sistema por lo que el estimador de la planta y el estado siempre cambia al mismo tiempo a la
misma partición. Para la estimación de los estados no sincronizados, Rubensson y Lennartson 2002
[47], dan un nuevo esquema de filtrado usando la trayectoria más probable estimada y un cambio de
Capítulo 1. Introducción
7
transformación. Su trabajo puede ser utilizado para estimar los sistemas PWL. Peleties y DeCarlo,
1992 [43] presentan una solución para detectar el instante de tiempo de conmutación y el modo
activo correspondiente mediante el uso de una estructura de observación separados con condiciones
muy restrictivas.
Entrando a detalle con lo relativo al control, hay algunas referencias útiles tal como [25] donde
se muestra un método sintetizado de control por H∞ para PWLS basado en una función de Lyapunov suave por pedazos. En este artículo se menciona que para diseñar un control, se debe cumplir la
propiedad de controlabilidad para cada modelo local. Posteriormente, se diseña un controlador de
forma que garantice la atenuación de un nivel prescrito de perturbaciones y buscar que el sistema
en lazo cerrado sea globalmente estable. Dentro del análisis de la bibliografía de los PWLS no se
puede dejar de lado lo referente al análisis de estabilidad. En este aspecto, es usual considerar la
conmutación arbitraria dentro de un sistema lineal conmutado (SLS) y es deseable poder garantizar
estabilidad pese a las conmutaciones; además, el asumir que todos los subsistemas son estables no
es una condición suficiente para garantizar estabilidad ante conmutación arbitraria. Para esta limitante, diversos autores [37], [40], [15] han establecido que si existe una función común de Lyapunov
(CLF por las siglas en inglés de Common Lyapunov Function) para todos los subsistemas de un
sistema conmutado, entonces el sistema es estable pese a las conmutaciones arbitrarias. Otro análisis
de estabilidad propuesto en [43] y expandido en [11] analizan la estabilidad del sistema conmutado
mediante el empleo de una función múltiple de Lyapunov (MLF por las siglas en inglés de Multiple
Lyapunov Function ). Una limitante de estos análisis es que se fundamentan en la hipótesis que
todos los subsistemas tienen un punto de equilibrio común, condición que no siempre se cumple.
Para esto, recientemente, los autores en [46] proponen el concepto de la región de estabilidad para
sistemas lineales conmutados aplicable sobre sistemas conmutados cuyos subsistemas poseen puntos
de equilibrio diferentes. Ahí garantizan la estabilidad por regiones del sistema lineal conmutado.
1.5.3.
Control Tolerante a Fallas de PWLS.
P
ara el caso particular de estudio en el área del control tolerante a fallas activo para un sistema
lineal por pedazos, los artículos existentes [45], [55], [38] y [21] dedican casos de estudio para PWLS
afines, en modos deslizantes, por retroalimentación de la salida en tiempo discreto asumiendo un
FDD en línea y tiempo real utilizando técnicas LMI, control reconfigurable en línea no lineal afin
aproximado.
Capítulo 2
Sistemas Conmutados
2.1.
Sistemas Lineales Por Pedazos
E
n general, un sistema conmutado está compuesto por una familia de subsistemas y una ley
de conmutación que gobierna el modo de actuar de cada uno de estos sea esta ley conocida y
arbitraria o desconocida y arbitraria con base en el tiempo, estados, salidas o entradas exógenas
[57]. Matemáticamente y de manera general está descrita por la siguiente ecuación:
ẋ(t) = fσ (x(t), u(t), d(t))
x(t0 ) = 0
(2.1)
y(t) = gσ (x(t), w(t))
donde x(t) es el estado, u(t) es la entrada o señal de referencia, y(t) es la salida medible, d(t) y
w(t) se refieren a señales externas tales como perturbaciones todas las variables de dimensiones
apropiadas, σ es una señal de conmutación constante por pedazos que toma valores de un conjunto
índice M = {1, · · · , m}, fk para k ∈ M son campos vectoriales, y gk , k ∈ M son funciones vectoriales, para el caso discreto tenemos que el operador derivativo cambia a ecuaciones en sumatorias
sucesivas (i.e., ẋ = x(t + 1)). La figura 2.1 ilustra el diagrama de la arquitectura de un sistema lineal
por pedazos. Es claro que un sistema conmutado es por naturaleza multi-modelo. Cada modelo
individual para k ∈ M es denominado subsistema o modo del sistema conmutado:
ẋ(t) = fk (x(t), u(t), d(t))
y(t) = gk (x(t), w(t))
8
x(t0 ) = 0
(2.2)
Capítulo 2. Sistemas Conmutados
9
Además de los subsistemas, el sistema conmutado consiste también en un dispositivo o elemento de
conmutación llamado supervisor. El supervisor produce una regla de conmutación σ denotando así
la señal de conmutación o ley de conmutación, que establece el modo e instante en que opera cada
uno de los subsistemas de la familia. Generalmente se habla de que los subsistemas representan
el bajo nivel dinámico local diferencial convencional y/o de ecuaciones en diferencias de manera
opuesta el supervisor es el coordinador de alto nivel produciendo las conmutaciones alrededor de la
dinámica local. La dinámica global del sistema es determinada por ambos, la familia de subsistemas
y la ley de conmutación. La ley de conmutación depende por lo general del tiempo, el estado, la
Figura 2.1: Diagrama de un sistema conmutado.
salida, y/o posiblemente una señal externa.
σ(t+) = ϕ(t, x(t), y(t), z(t)),
∀t
(2.3)
Donde z(t) es una señal externa producida por otros dispositivos ajenos al sistema de dimensión
apropiada, σ(t+) = lims↓t σ(s) es una señal de conmutación dependiente del tiempo, note que σ
es continua por la derecha en todo el conjunto índice bajo el supuesto que si no se garantiza la
continuidad de la ley de conmutación, no es posible garantizar que el sistema conmutado exhiba
continuidad en los instantes de conmutación. De manera particular y para ser concisos se denota al
sistema lineal por Σ(Ci , Ai , Bi )M . similarmente se denota Σ(Ai , Bi )M , Σ(Ci , Ai )M , y Σ(Ai )M al
sistema conmutado sin entradas, salidas o sin ambas. Para denotar al sistema en tiempo continuo
y discreto respectivamente, se realiza especificandolo en el subíndice de Sigma (d) para el caso
discreto. De acuerdo a las definiciones anteriores, se enfocará nuestra atención a los sistemas lineales
por pedazos cuyos subsistemas son LTI y las señales de conmutación son gobernadas por procesos
Capítulo 2. Sistemas Conmutados
10
determinísticos, de manera general:
ẋ = Aσ x + Bσ u + Eσ z,
x(t0 ) = x0
(2.4)
y = Cσ x + Dσ u + Gσ w
σ = ϕ(t, x, y, z)
Donde Ak , Bk , Ck , Dk , Ek , Gk son matrices lineales de dimensiones adecuadas mapeadas en espacios
apropiados, el sistema nominal es aquel libre de perturbaciones, esto es:
ẋ = Aσ x + Bσ u
(2.5)
y = Cσ x + Dσ u
σ = ϕ(t, x, y)
Para el caso de sistema no forzados:
ẋ = Aσ x
(2.6)
y = Cσ x
σ = ϕ(t, x, y)
Para el caso de estudio los controladores para cada modo fueron diseñados con base en las ecuaciones
2.4, debido a que se trata de un sistema sensible al ruido y perturbaciones.
2.1.1.
Análisis elemental de sistemas Lineales por Pedazos
Considere el siguiente sistema lineal conmutado:
ẋ(t) = Aσ x(t) + Bσ u(t)
(2.7)
y(t) = Cσ x(t)
Dado un estado inicial x(0) = x0 , una entrada u y una trayectoria de conmutación σ [0, tf ] 7→ M ,
la solución del sistema lineal por pedazos 2.7 esta dada por:
Capítulo 2. Sistemas Conmutados
11
x(t) = φ(t; t0 , x0 , u, σ) = eAik (t−tk ) eAik −1 (t−tk−1 )
(2.8)
...eAi0 (t1−t0 ) x0 + eAik (t−tk )
Z t1
eAi0 (t1 −τ ) Bi0 u(τ )dτ + ...
...eAi1 (t2 −t1 )
0
Z tk
eAik −1 (tk −τ ) Bik −1 u(τ )dτ + ...
+ eAik (t−tk )
tk −1
Z
t
+
eAik (t−τ ) Bik u(τ )dτ
tk
De manera similar para el caso de sistemas discretos:
ẋk+1 (t) = Aσ xk (t) + Bσ uk (t)
(2.9)
yk (t) = Cσ xk (t)
La solución del sistema es:
xk = Aσ(k+1) ...Aσ(1) Aσ(0) x0 + Aσ(k−1)
(2.10)
...Aσ(1) Bσ(0) u0 + ...Aσ(k−1) Bσ(k−2) uk−2 + Bσ(k−1) uk−1
La matriz de transición es:
Φ(k1 , k2 , σ) = Aσ(k1 −1) ...Aσ(k2 )
k1 > k2
(2.11)
Por lo que la solución puede ser reescrita como:
xk = Φ(k, 0, σ)x0 +
k−1
X
Φ(k, j, σ)uj
(2.12)
j=0
2.1.2.
Señal de conmutación dependiente del estado.
S
uponga que el espacio de estados continuo Rn es particionado en un numero finito o infinito
de regiones operativas referidas a una familia de superficies de conmutación o guardas, en cada
una de estas regiones existe un sistema dinámico en tiempo continuo [35] (descrito por ecuaciones
diferenciales con o sin control). Siempre que la trayectoria del sistema golpea una superficie de conmutación, el estado continuo salta instantáneamente a un nuevo valor especificado por un mapa de
restablecimiento. En el caso más simple, este es un mapa cuyo dominio es la unión de las superficies
Capítulo 2. Sistemas Conmutados
12
de conmutación y cuyo recorrido es el espacio del estado completo, posiblemente, excluyendo las
superficies de conmutación (también pueden considerarse mapas de restablecimiento más generales
como se explica a continuación). El sistema estará especificado por:
La familia de superficies de conmutación y de las regiones de operación resultantes;
La familia de subsistemas continuos en el tiempo, uno por cada región de operación;
El mapa de restablecimiento.
Los saltos instantáneos del estado continuo se refieren a veces como efectos de impulso. Un caso
especial es cuando los efectos de tales impulsos están ausentes, es decir, el mapa de reposición es
la identidad. Esto significa que la trayectoria de estado es continua en todas partes, aunque en
general pierde diferenciabilidad cuando pasa a través de una superficie de conmutación (figura 2.2).
Se restringe la atención a los sistemas sin efectos de impulso. Otra de las cuestiones que se ignoran
por el momento es la posibilidad de que algunas trayectorias puedan atascarse en la superficie de
conmutación. Se podría argumentar que el modelo del sistema conmutado descrito anteriormente
Figura 2.2: las curvas gruesas indican las superficies de conmutación, las curvas finas con flechas
indican las porciones continuas de la trayectoria, y las líneas de trazos simbolizan los saltos.
(conmutación dependiente del estado sin saltos) es en realidad híbrido, porque a pesar de que es
posible pensar en el conjunto de las regiones de operación como el espacio de estado discreto del
sistema esto es simplemente una discontinuidad del mismo cuya descripción no implica dinámicas
discretas. En otras palabras, su evolución está determinada únicamente por el estado continuo. El
sistema se vuelve verdaderamente híbrido si las transiciones discretas explícitamente dependen del
valor del estado discreto (es decir, la dirección desde la que se aproxima una superficie de conmutación). Existe también la posibilidad de reglas de conmutación dependientes del estado aún más
Capítulo 2. Sistemas Conmutados
13
complicadas, por ejemplo, las regiones de operación pueden superponerse, y una superficie de conmutación puede ser reconocida por el sistema sólo en algunos estados discretos. Un paradigma que
lleva a este tipo de comportamiento es la conmutación de histéresis1 .
Dada una familia parametrizada de campos vectoriales fm : Rn → Rn
m ∈ M y una señal
de conmutación constante por pedazos σ : [0, ∞) → M , tenemos un conjunto admisible de pares
(σ, x) con σ una señal conmutada y x una señal en Rn :
S := {(σ, x) : Nσ (τ, t) ≤ 1 + supS∈(t,τ ) kx(s)k(t − τ ), ∀t > τ ≥ 0}
para cada x solamente algún σ puede ser admisible;
(σ, x) ∈ S
ẋ = fσ (x)
Una solución para el sistema conmutado es cualquier (σ, x) ∈ S para:
todo intervalo abierto en el cual σ es constante, y x es solución para ẋ = fσ(t) (x)
todo intervalo de conmutación t, x(t) = ρ(σ(t), σ − (t), x− (t))
2.1.3.
Señal de conmutación dependiente del tiempo.
S
uponga que tenemos una familia fm , m ∈ M de funciones mapeadas de Rn a Rn , donde M es
algún conjunto índice (típicamente, M es un subconjunto de un espacio vectorial lineal dimensional
finito). Esto da lugar a una familia de subsistemas
ẋ = fm (x) m ∈ M
(2.13)
En el espacio Rn . Las funciones fm se asumen suficientemente regulares (localmente Lipschitz). El
caso más sencillo a analizar es cuando todos los subsistemas son lineales:
fm (x) = Am x,
Am ∈ Rnxn , m ∈ M
(2.14)
y el conjunto índice M finito: M = {1, 2, ..., m}. Para definir un sistema conmutado generado por
la familia de subsistemas, se necesita la noción de señal conmutada. Esta es una función constante
por pedazos σ : [0, ∞) −→ M , tal función σ tiene un número finito de discontinuidades las cúales
denominamos tiempos de conmutación para todos los intervalos de tiempo acotados y toma un valor
1
refierase para más información a D. Liberzon (2003) switching in systems and control
Capítulo 2. Sistemas Conmutados
14
constante para todo intervalo entre dos tiempos de conmutación consecutivos.
El objetivo de la señal σ es especificar, a cada instante de tiempo t, el indice σ(t) ∈ M del subsistema activo, esto es, el subsistema de la familia 2.13 para el índice indicado por la señal de
conmutación. Para concretar se asume que σ es continua por la derecha para todo el conjunto índice: σ(t) = limτ →t+ σ(τ ) para cada τ ≥ 0. Un ejemplo de esta señal de conmutación para el caso en
que M = {1, 2, 3} se muestra a continuación:
Figura 2.3: Señal de conmutación dependiente del tiempo.
Así de forma general un sistema conmutado con una señal de conmutación dependiente del tiempo
puede ser descrito por la siguiente ecuación:
ẋ = fσ(t) x(t)
Para el caso de estudio:
ẋ = Aσ(t) x(t)
De manera resumida para los sistemas lineales por pedazos, tenemos el siguiente planteamiento:
Considere el sistema no lineal:
ẋ(t) = f (x(t), u(t)),
(2.15)
Donde x(t) ∈ Rn es el vector de estado, u(t) ∈ Rm es el vector de entrada, y f (·) es una función
vectorial no lineal de dimensión n. Considere Ω ⊂ Rn+m como la región de interés para cualquier
posible vector de estado y entrada de un sistema (x, u), y denotemos x0i y u0i , i ∈ I , {1, 2, ..., l},
como un conjunto de puntos operativos localizados alrededor de un punto o puntos de equilibrio
(propiamente separados) dentro del conjunto Ω. Introducimos un conjunto de l regiones Ωi en el
centro de los puntos de operación elegidos (x0i , u0i ), y denotamos sus interiores como Ωi0 , i ∈ I, tal
que Ωj0 ∩ Ωk0 = {∅} para algún j 6= k, y ∪li=1 Ωi = Ω. Con xi (t) = x(t) − x0i y ui (t) = u(t) − u0i ,
Capítulo 2. Sistemas Conmutados
15
con lo que obtenemos un conjunto de modelos lineales invariantes en el tiempo. Para i ∈ I por
ejemplo, tenemos:
ẋi (t) = Ai xi (t) + Bi ui (t),
(x(t), u(t)) ∈ Ωi
(2.16)
Con
Ai =
∂f
|x ,u ,
∂x 0i 0i
Bi =
∂f
|x ,u
∂u 0i 0i
Note que para cada instante de tiempo t, los estados y la entrada corresponden a solo ese subespacio.
2.2.
Estabilidad y Estabilizabilidad
D
ada una familia de sistemas lineales [22] el sistema conmutado es asintóticamente estable
para cada señal de conmutación si los subsistemas individuales tienen el origen como un punto
de equilibrio común fp (0) = 0 para todas las p ∈ P . Claramente, una condición necesaria para
estabilidad (asintótica) bajo conmutación arbitraria es que todos los subsistemas individuales sean
estables (asintóticamente), si el enésimo sistema es inestable para algunos p ∈ P , entonces el sistema
conmutado es inestable para σ(t) = p. Uno de los principales problemas que se tiene con los PWLS
con respecto a la estabilidad del sistema, es que no solo se debe realizar el análisis de estabilidad
a un sistema lineal, sino a la familia de subsistemas en general [37]. Además, el garantizar la
estabilidad de todos los subsistemas de manera independiente no es suficiente para garantizar la
estabilidad global del sistema ante conmutaciones desconocidas y arbitrarias. Para comprender esto,
considere como ejemplo la Figura 2.4(a) donde se muestran las trayectorias de dos sistemas aleatorios
asintóticamente estables [35]. Si se considera la unión de estos dos sistemas y una ley de conmutación
que gobierne su comportamiento se tendría entonces un sistema conmutado. Ahora, si se considera
una conmutación arbitraria ese sistema conmutado puede, o no, ser estable, esto dependerá de los
instantes de conmutación tal como se ilustra en la Figura 2.4(b).
La mayoría de los criterios conocidos proporcionan condiciones suficientes pero no necesarias, y
además no suelen ser métodos sistemáticos. Para el caso de sistemas conmutados, el Teorema de
Lyapunov de estabilidad tiene extensión directa que proporciona una herramienta básica para el
estudio de la estabilidad uniforme de sistemas conmutados. Esta extensión se obtiene al exigir la
existencia de una sola función de Lyapunov cuya derivada a lo largo de las soluciones de todos
los sistemas de la familia, satisfaga las desigualdades adecuadas. Particularmente es de interés la
obtención de una condición de Lyapunov para la estabilidad GUAS (globalmente uniforme asintóticamente estable) [57], para ello se debe tener especial cuidado en la formulación de una contraparte
de la desigualdad, que asegure una tasa uniforme en la convergencia. Para la estabilidad en el sentido
Capítulo 2. Sistemas Conmutados
16
Figura 2.4: Efecto de la ley de conmutación en la estabilidad de un sistema conmutado. (a) Dos
subsistemas aleatorios estables de un sistema conmutado. (b) Instantes de conmutación que hacen
el sistema conmutado estable (izquierda) e inestable (derecha).
general de Lyapunov, se tiene; dada la siguiente ecuación vectorial diferencial descrita por:
ẋ = f (t, x),
x(0) = x0
(2.17)
Donde x(t) ∈ Rn , y f : R+ xRn → Rn es suave por pedazos y globalmente Lipschitz. Adicionalmente
se asume que el origen es un punto de equilibrio, esto es que f (t, 0) = 0, para t ≥ 0. Dada φ(t; t0 , x0 )
como la solución de 2.17 correspondiente a la condición inicial x(t0 ) = x0 evaluada en un tiempo t.
En lo concerniente a la estabilidad, la solución o trayectoria del sistema estable se refiere a cuando
x0 6= 0 pero esta cerca del origen, Gráficamente se posible expresar lo anterior como se ilustra en la
figura 2.5.
Figura 2.5: Estabilidad en el sentido de Lyapunov.
De manera algebraica:
∀ > 0, ∃δ > 0 : kx(t0 ) − xeq k ≤ δ =⇒ kx(t) − xeq k ≤ , ∀t ≥ t0 ≥ 0
Definición 2.1. [57] El punto de equilibrio f (t, 0) = 0 es declarado:
(2.18)
Capítulo 2. Sistemas Conmutados
17
estable si, para cada > 0 y cada t0 ≥ 0, existe un δ = δ(, t0 ) tal que
kx0 k < δ = δ(, t0 ) =⇒ kφ(t; t0 , x0 )k < ∀t ≥ t0
uniformemente estable si, para cada > 0 y cada t0 ≥ 0, existe un δ = δ() tal que
kx0 k < δ = δ()
t0 ≥ 0 =⇒ kφ(t; t0 , x0 )k < ∀t ≥ t0
atractivo si para cada t0 ≥ 0, existe δ = δ(t0 ) > 0 tal que
kx0 k < δ, (t0 ) =⇒ kφ(t0 + t; t0 , x0 )k −→ 0
cuando t −→ ∞
asintóticamente estable si es ambos, estable y atractivo;
uniformemente asintóticamente estable si es uniformemente estable y uniformemente atractivo; y
exponencialmente estable si existen constantes reales (r, α, β) > 0 tales que
φ(t0 + t; t0 , x0 ) ≤ βe−αt kx0 k
t, t0 ≥ 0 kx0 k < r
Tales conceptos de estabilidad son locales, lo que sucede solo en vecindades del punto de equilibrio.
Para la estabilidad global podemos definir las propiedades atractivas reteniendolas en este mismo
sentido. Si la solución es radialmente lineal:
φ(t; t0 , λx0 ) = λφ(t; t0 , x0 ) ∀λ ∈ R t ≥ t0
x0 ∈ Rn
entonces el concepto de estabilidad local es equivalente al correspondiente global. Esto es precisamente
para el caso de los sistemas lineales por pedazos, por lo tanto, no es necesario distinguir entre los
conceptos de estabilidad local y global respectivamente. Se dice entonces que el sistema dinámico es
estable si el origen es un punto de equilibrio estable. La aproximación para el análisis de estabilidad
en el sentido de Lyapunov provee un método riguroso, por lo que solo se realiza el análisis para los
PWLS.2
Teorema 2.2. [57] Una condición necesaria y suficiente para garantizar estabilidad de un sistema
lineal conmutado es la existencia de una función suave de Lyapunov del estado la cual es una función
común de Lyapunov para toda la familia de subsistemas.
2
Z.Sun and S.S.Ge "Switched linear systems", control and design.
Capítulo 2. Sistemas Conmutados
18
Garantizar estabilidad para este tipo de sistemas significa que el sistema es estable aún con una
señal de conmutación arbitraria, esto es, ante cualquier trayectoria de conmutación σ[0,∞) ∈ M el
sistema invariante en el tiempo
ẋ(t) = Aσ(t) x(t) t ≥ 0
(2.19)
es estable si existe una función cuadrática común de Lyapunov V (x) = xT P x para todos los subsistemas:
ATi P + P Ai ≤ 0 i ∈ M
(2.20)
x(k + 1) = Aσ x(k) k ∈ N+
(2.21)
Para el sistema LTI discreto
en este caso especial la teoría de Lyapunov es muy completa y se puede asegurar el siguiente teorema:
Teorema 2.3. [57] Para el sistema lineal e invariante en el tiempo descrito por la ecuación 2.19,
las siguientes afirmaciones son equivalentes:
el sistema es asintóticamente estable;
el sistema es exponencialmente estable;
la matriz A es Hurwitz;
la ecuación de Lyapunov
ATi P + P Ai = −Qi
(2.22)
tiene única solución P > 0 para cualquier Qi > 0; y
la ecuación 2.22 tiene única solución P > 0 para alguna Qi > 0
La anterior afirmación establece la existencia de una función cuadrática de Lyapunov donde P es
simétrica y definida positiva.
V (x) = xT P x
(2.23)
se establece un resultado semejante a su homólogo:
Teorema 2.4. [57] Para el sistema lineal e invariante en el tiempo descrito por la ecuación 2.21,
las siguientes afirmaciones son equivalentes:
el sistema es asintóticamente estable;
el sistema es exponencialmente estable;
Capítulo 2. Sistemas Conmutados
19
la matriz Ai es Schur;
la ecuación en diferencias de Lyapunov tiene única solución P > 0 para cualquier Qi > 0
P − ATi P Ai = Qi
(2.24)
Otro tipo de análisis de estabilidad para los sistemas lineales conmutados es la estabilidad conmutada. Suponga que la señal de conmutación dada es conocida, por ejemplo;
σ(t) = ψ(t, t0 , x0 )
(2.25)
donde ψ es una función conocida, como se mencionó anteriormente es posible asumir que t0 = 0
siempre sin pérdida de generalidad. Para un x0 fijo, se define:
f (t, x) = Aψ(t,0,x0 ) x
(2.26)
ẋ = fσ (t, x(t)) x(0) = x0
(2.27)
el sistema conmutado es dado por:
El sistema conmutado 2.26 con la señal específica de conmutación 2.25 es llamado sistema conmutado
estable (asintóticamente, exponencialmente, etc.), si el sistema 2.27 es estable (asintóticamente,
exponencialmente, etc.) como lo establece la Definición 2.1
2.2.1.
Estabilizabilidad de sistemas lineales por pedazos.
Dado un sistema en cual el rango del par (A, B) = b < n, existe una matriz transformación de
similaridad x̃ = T−1 x, en que las nuevas matrices de estado tienen la forma:
à = T−1 AT =
"
#
Ãc Ã12
0
"
−1
B̃ = T
B=
Ãnc
B̃c
0
#
(2.28)
Capítulo 2. Sistemas Conmutados
20
donde Ãc tiene dimensión k y el par (Ãc , B̃c ) es completamente controlable. Este resultado establece
que estados pueden y cuáles no ser llevados a cero. Expresemos el estado y la salida de la forma:
"
# " #
#"
# "
B̃c
x̃c
Ãc Ã12
x̃˙ c
u
+
=
˙x̃nc
0
0 Ãnc x̃nc
h
y = C̃c
C̃nc
#
"
i x̃
c
x̃nc
(2.29)
+ Du
El subespacio controlable del modelo en variables de estado está compuesto por todos los estados
generados como combinación de los estados en x̃c . La estabilidad de este subespacio está determinada por la ubicación de los valores propios de la matriz Ãc . Por otra parte, el subespacio no
controlable esta formado por todos los estados generados como combinación lineal de los estados
en x̃nc , y su estabilidad queda determinada por los autovalores de la matriz Ãnc . De esta forma, la
entrada no tiene efecto alguno sobre el subespacio no controlable, por lo que se puede esperar que
este subespacio fuera al menos estable de manera que sus estados decaigan naturalmente al origen.
En este caso el modelo en variables de estado se denomina estabilizable. Una consecuencia clave
de la descripción dada por 2.29 es el hecho que la función de transferencia esta dada por:
H(s) = C̃c (sI − Ãc )−1 B̃c + D
(2.30)
La ecuación 2.30 establece que los autovalores del subespacio no controlable no aparecen como polos
de la función de transferencia. Esto implica que existe una cancelación de los polos correspondientes
a las raíces de det(sI − Ãnc ). Ahora para la estabilizabilidad de sistemas lineales por pedazos
[15, 28, 43] Considere el sistema: Σ(Ci , Ai , Bi )M y una secuencia de conmutación constante por
pedazos dada por σ = [t0 , tf ) 7→ M , se tiene la siguiente definición:
Definición 2.5. [57] Dada una secuencia de conmutación infinita, el sistema Σ(Ci , Ai , Bi )M es
estabilizable bajo la ley de conmutación σ si para cualquier estado x0 no nulo, existe u(t), t ∈ [0, +∞)
tal que limt−→+∞ x(t) = 0. Es obvio que si el sistema Σ(Ci , Ai , Bi )M es completamente controlable,
entonces existe una secuencia de conmutación σs tal que el sistema Σ(Ci , Ai , Bi )M es estabilizable
bajo esta señal de conmutación.
Dada una matriz P no singular, bajo la cual es posible realizar una transformación de coordenadas
del estado x̄ = P x, se tiene un nuevo sistema lineal por pedazos Σ(C̄i , Āi , B̄i )M con la variable de
estado x̄, donde:
Ām = P Am P −1 ,
B̄m = P Bm
Capítulo 2. Sistemas Conmutados
21
Para m = 1, ..., M , Dada una secuencia de conmutación σ = [t0 , tf ) 7→ M , se denota C(σ) como
el conjunto de estados controlables de la señal de conmutación asociada al sistema Σ(Ci , Ai , Bi )M ,
¯
y se denota C(σ)
como el conjunto de estados controlables de la señal de conmutación asociada al
sistema transformado Σ(C̄i , Āi , B̄i )M . Se tiene que:
3
¯
C(σ)
= P C(σ)
Esto significa que si algún estado x es controlable en el sistema Σ(Ci , Ai , Bi )M , entonces x̄ = P x es
controlable en el sistema Σ(C̄i , Āi , B̄i )M y, viceversa, si algún estado x̄ es controlable con el sistema
Σ(C̄i , Āi , B̄i )M , entonces x̄ = P −1 x es controlable con el sistema Σ(Ci , Ai , Bi )M . Ahora se discute
la condición de estabilizabilidad cuando el sistema Σ(Ci , Ai , Bi )M es no completamente controlable.
Suponga que dim(Wn ) = d < n y {q1 , ..., qn } forman una base para Wn
Wn = span{q1 , ..., qn }
Entonces es posible encontrar n − d vectores linealmente independientes qd+1 , ..., qn ∈ Rn |W tales
que {q1 , ..., qd , qd+1 , ..., qn forme una base para Rn . Se denota Q = [q1 , ..., qn ] y P = Q−1 . Bajo
la transformación de coordenadas del estado x̄ = P x, se tiene un nuevo sistema Σ(C̄i , Āi , B̄i )M
con variables de estado x̄, donde Ām = P Am P −1 , B̄m = P Am para m = 1, ..., M . Se denota
T
P = pT1 , ..., qnT donde pi es el i-ésimo vector fila de P , i = 1, ..., n. Ya que pTi qj = 0, para i 6= j, y
Am qj ∈ Wn , para j = 1, ..., d, m = 1, ..., M , se tiene pTi Am qj = 0, para i = d + 1, ..., n, m = 1, ..., M .
Por lo tanto:
Ām = P Am P −1


..
c
∗
Ām . Ām 


= ··· ··· ···


..
0
. Āum
Para m = 1, ..., M , tenemos:
Ācm


pT1 Am q1 · · · pT1 Am qd


..
..
..

=
.
.
.


T
T
pd Am q1 · · · pd Am qd
dxd
Ā∗m


pT1 Am qd+1 · · · pT1 Am qn


..
..
..

=
.
.
.


T
T
pd Am qd+1 · · · pd Am qn
dx(n−d)
3
Para ver la demostración revisar la referencia.
Capítulo 2. Sistemas Conmutados
Āum
22


pTd+1 Am qd+1 · · · pTd+1 Am qn


..
..
..

=
.
.
.


T
T
pn Am qd+1 · · · pn Am qn
(n−d)x(n−d)
Para las matrices de entrada, desde R(Bm ) ⊂ Wn , tenemos pTi = 0, para i = d + 1, ..., n, m =
1, ..., M . Por consiguiente tenemos:
B̄m = P Bm
 
c
B̄m
 . 
. 
=
 . 
0
para m = 1, ..., M donde
c
B̄m
"
x̄c


pT1 B̄m
 . 
. 
=
 . 
pTd B̄m
#
, donde x̄c es un vector d-dimensional y x̄u es un vector (n − d)-dimensional. El
x̄u
sistema Σ(C̄ic , Āci , B̄ic )M con estados x̄c es completamente controlable. Entonces se concluye que el
Hacemos x̄ =
sistema Σ(Ci , Ai , Bi )M es estabilizable si y sólo si el sistema Σ(C̄iu , Āui , B̄iu )M es estabilizable.
2.3.
Observabilidad y Reconstructibilidad
E
l concepto de observabilidad investiga la posibilidad de estimar el estado a partir del conoci-
miento de la entrada y la salida del sistema, Considere el siguiente sistema lineal:
ẋ(t) = Ax(t) + Bu(t)
(2.31)
y(t) = Cx(t) + Du(t)
Análisis de observabilidad. Un criterio que permite determinar si un sistema es o no observable,
se presenta con el siguiente teorema.
Teorema 2.6. [18] Considere el sistema 2.31 donde A ∈ Rnxn , y C ∈ Rnxm .
Capítulo 2. Sistemas Conmutados
23
i) El conjunto de estados no observables es igual al subespacio nulo de la matriz de observabilidad
O[A, C] donde:

C



 CA 


O[A, C] =  . 
 .. 


n−1
CA
(2.32)
ii) El sistema es completamente observable si y solo si O[A, C] tiene rango columna completo
n.
El análisis anterior puede aplicarse indistintamente a sistemas en tiempo continuo y discreto. Este
no es el único test de observabilidad ya que se puede llevar a cabo al utilizar el Gramiano debido
a que en algunas ocaciones resulta de interés determinar el grado de observabilidad de un sistema.
Se tiene además de estos análisis el principio de dualidad el cual establece un resultado paralelo
entre los test de controlabilidad y observabilidad. Otro concepto estrechamente relacionado al de
observabilidad es el que se denomina reconstructibilidad para sistemas en tiempo discreto, se
refiere a qué se puede decir de x(k), habiendo observado valores pasados de la salida y(t) durante
0 ≤ t ≤ k. Si el subespacio no observable es estable se dice que el sistema es detectable. Ahora
considere el sistema lineal por pedazos descrito por la ecuación 2.33.
ẋ(t) = Aσ x(t) + Bσ u(t)
(2.33)
y(t) = Cσ x(t)
Donde x ∈ Rn es el estado, u ∈ Rp es la entrada, y ∈ Rq es la salida, y σ ∈ M es la señal de
conmutación del sistema. φ(t; t0 , x0 , u, σ) denota la trayectoria del estado al tiempo t del sistema
comenzando desde x(t0 ) = x0 con entrada u y trayectoria de conmutación σ. Para el caso de la
observabilidad tenemos las siguientes definiciones:
Definición 2.7. [57] El estado x es llamado no observable si para alguna trayectoria de conmutación
σ existe una entrada u tal que:
Cσ φ(t; t0 , x, u, σ) = Cσ φ(t; t0 , 0, u, σ) ∀t ≤ 0
(2.34)
El conjunto no observable del sistema 2.33, denotado por UO(Ci , Ai , Bi )M es el conjunto de estados
no observables, en otras palabras, el conjunto no observable incluye el estado inicial que no puede
distinguirse desde el origen usando el conocimiento de las salidas y entradas pasadas.
Definición 2.8. [6] Para sistemas lineales por pedazos completamente observables las siguientes
afirmaciones son equivalentes:
Capítulo 2. Sistemas Conmutados
24
i) El sistema es completamente observable;
ii) El sistema es completamente reconstruible;
iii) el sistema Σ(ATi , CTi )M es completamente controlable;
iv) El sistema Σ(ATi , CTi )M es completamente alcanzable; y
v) O = Rn
La definición 2.8 establece el principio llamado "dualidad", es decir, si se considera al sistema
Σ(ATi , CTi )M como el sistema dual de Σ(Ci , Ai )M , entonces la observabilidad completa (reconstructibilidad) de un sistema conmutado es igual a la alcanzabilidad completa (controlabilidad) de
este sistema dual. El principio de dualidad juega un rol importante en el análisis y control de
sistemas lineales conmutados [2, 3]. El criterio geométrico (v) es equivalente al criterio algebráico:


O,

C(θ1 )
..
.
C(θN )AN −1


=n

(2.35)
Este criterio generaliza el bien conocido criterio de observabilidad para sistemas LTI.
Definición 2.9. [57] La ecuación de estado 2.33 es observable si para cualquier estado inicial
x0 = x(0) (desconocido), existe un tiempo finito t1 tal que el conocimiento de la entrada u y la
salida y sobre el intervalo [0, t1 ] es suficiente para determinar en forma única el estado inicial x0 en
caso contrario el sistema es no observable. Dado un estado inicial x0 y una entrada u(t), la salida
del sistema esta dada por la fórmula:
At
Z
t
eA(t−τ ) Bu(τ )dτ + Du(t)
y(t) = Ce x0 + C
(2.36)
0
Para estudiar la observabilidad, la salida del sistema y la entrada se suponen conocidas, siendo el
estado inicial x0 la única incógnita.
CeAt x0 = ȳ(t)
(2.37)
Z
, y(t) − C
0
t
eA(t−τ ) Bu(τ )dτ + Du(t)
Capítulo 2. Sistemas Conmutados
25
Aplicando una transformación de similaridad tal que las nuevas matrices de estado tengan la forma:
"
Ā = T −1 AT =
h
C̄ = CT = C̄o
Āo
0
#
Ā21 Āno
i
0
(2.38)
donde Āo tiene dimensión k y el par C̄o , Āo es completamente observable. Este resultado tiene
una relevancia similar a la descomposición canónica asociada para el caso de controlabilidad:
"
#"
# "
# "
#
Ā0
0
x̄o (t)
x̄˙ o (t)
B̄o
=
+
u(t)
x̄˙ no (t)
Ā21 Āno x̄no (t)
B̄no
"
#
h
i x̄ (t)
o
y(t) = C̄o 0
+ Du(t)
x̄no (t)
(2.39)
La descripción anterior pone en evidencia el problema que puede surgir cuando se intenta controlar
un sistema usando solo su salida, pues en esta no aparece información alguna sobre x̄no El subespacio observable de un modelo es el espacio formado por todos los estados que se generan como
combinaciones lineales de los estados en x̄o La estabilidad de este subespacio queda determinada por
la ubicación de los eigenvalores de la matriz Āo El subespacio no observable de un modelo es el
espacio formado por todos los estados que se generan como combinaciones lineales de los estados en
x̄no La estabilidad de este subespacio queda determinada por la ubicación de los eigenvalores de la
matriz Āno Una consecuencia clave del sistema 2.39 puede apreciarse en la función de transferencia
del sistema:
H(s) = C̄o sI − Āo
−1
B̄o + D
(2.40)
Es decir, los autovalores del subespacio no observable no pertenecen al conjunto de polos de la
función de transferencia del sistema. Esto implica que existe una cancelación de todos los polos
correspondientes a las raíces de det sI − Āno .
2.3.1.
Analisis Elemental de Observabilidad para PWLS
Considere
ẋ(t) = Aσ x(t) + Bσ u(t)
y(t) = Cσ x(t)
(2.41)
Capítulo 2. Sistemas Conmutados
26
Dado un estado inicial x(0) = x0 , una entrada u y una trayectoria de conmutación σ [0, tf ] 7→ M ,
la solución del sistema lineal por pedazos 2.41 está dada por 2.8 Donde {0, t1 , ..., ts } es la secuencia
en tiempo de conmutación de σ en [t0 , tf ), y {i0 = σ(0+), ..., is = σ(ts +)} es la secuencia indice de
conmutación de σ en [t0 , tf ) y ts+1 = tf . Se puede ver que el conjunto alcanzable es:
R(Ci , Ai , Bi )M = {x = φ(t; 0, 0, u, σ) : t ≥ 0, u ∈ U p , σ ∈ S[0,t] }
Z h0
Z hk
Ai0 τ
Ai1 h1
Aik hk
Bi0 u(τ )dτ + ... +
...e
eAik τ Bik u(τ )dτ :
e
= {e
0
0
p
k ∈ N+ , ij ∈ M, hj > 0, u ∈ U }
Donde U p es el conjunto de funciones vectoriales continuas por pedazos pht-dimensional. Es posible observar que el conjunto es independiente de la salida. Se denota al conjunto alcanzable por
R(Ci , Ai , Bi )M . Para algunas matrices A ∈ Rnxn , B ∈ Rnxp , t > 0 tenemos:
Z
t
e
Aτ
Bu(τ )dτ : u ∈ U
p
0
=
n−1
X
Aj ImB
(2.42)
j=0
donde ImB denota el espacio imagen de B
Definición 2.10. [57] El sistema 2.41 es llamado completamente observable, si su espacio no observable es el espacio nulo.
Definición 2.11. [57] El estado x es llamado no construible si para alguna trayectoria de conmutación σ, existe una entrada u tal que:
Cσ φ(t; t0 , x, u, σ) = Cσ φ(t; t0 , 0, u, σ) ∀t ≤ 0
El conjunto no construible del sistema 2.41, denotado por UR(Ci , Ai , Bi )M , es el conjunto de estados
que no son reconstruibles. En el caso de los sistemas lineales por pedazos la tendencia al análisis
de observabilidad no tiene variación considerable respecto al criterio de sistemas lineales conocido
para demostrarlo.
2.4.
Controlabilidad y Alcanzabilidad
U
n requisito fundamental para el diseño de sistemas de control lineales en lazo cerrado es una
buena comprensión de las propiedades estructurales de dichos sistemas objeto de análisis. Estas
propiedades están estrechamente relacionadas con los conceptos de controlabilidad, observabilidad
y estabilidad que son de importancia fundamental en la literatura. Sin embargo, para el análisis de
Capítulo 2. Sistemas Conmutados
27
controlabilidad y observabilidad de los sistemas conmutados de control lineal surge una situación
mucho más difícil, puesto que tanto la entrada de control y la señal de conmutación son variables ha
ser determinadas, y por tanto la interacción entre ellos debe ser entendida completamente, considere
la siguiente definición:
Definición 2.12. [57] Para sistemas lineales conmutados completamente controlables (alcanzables)
las siguientes afirmaciones son equivalentes:
i) El sistema es completamente controlable;
ii) El sistema es completamente alcanzable; y
iii) V = Rn
Observación.[57] El criterio geométrico (iii) es equivalente al criterio algebráico
rank[B1 , ..., Bm , A1 B1 , ..., Am B1 , ..., A1 Bm , ..., Am Bm ,
A21 B1 , ..., Am A1 B1 , ..., A21 Bm , ..., Am A1 Bm ,
n−1
B1 , ..., A1 An−2
B1 , ..., Am An−2
An−1
m Bm , ..., Am Bm ] = n.
1
1
Este criterio generaliza el bien conocido criterio de controlabilidad para sistemas LTI.
Considere el sistema lineal por pedazos dado por:
ẋ(t) = Aσ x(t) + Bσ u(t)
(2.43)
y(t) = Cσ x(t)
donde x ∈ Rn es el estado, u ∈ Rp es la entrada, y ∈ Rq es la salida, σ ∈ M es la señal de
conmutación. En la representación del sistema no se impone ninguna condición de rango completo
para las matrices de entrada Bk , k ∈ M . Esto implica que se considera el caso cuando el número
de columnas de Bi no es el mismo. agregado a esto, suponemos que Bk es de n × pk para k ∈ M .
hacemos p = max {pk : k ∈ M }, y expandemos para cada Bk de n × p con la adición de ceros
para las columnas cuando es necesario, entonces el sistema expandido es de la forma 2.43. Si ahora
φ(t, t0 , x0 , u, σ) es la trayectoria del estado al tiempo t del sistema lineal conmutado iniciando desde
x(t0 ) = x0 con la entrada u y la señal de conmutación σ se tienen las siguientes definiciones de
controlabilidad y alcanzabilidad siempre que t0 = 0.
Definición 2.13. [57] El estado x ∈ Rn es controlable, si existe un instante de tiempo tf > t0 , una
trayectoria de conmutación σ : [t0 , tf ] 7→ M y una entrada u : [t0 , tf ] 7→ Rp , tal que φ(tf , t0 , x, u, σ) =
Capítulo 2. Sistemas Conmutados
28
0 el conjunto controlable del sistema 2.43, denotado por C(Ci , Ai , Bi )M es el conjunto de estados
los cuales son controlables.
Definición 2.14. [57] El sistema 2.43 es llamado completamente controlable, si el conjunto controlable es el espacio de estados completo, Rn .
Definición 2.15. [57] El estado x ∈ Rn es alcanzable, si existe un instante de tiempo tf > t0 , una
trayectoria de conmutación σ : [t0 , tf ] 7→ M y una entrada u : [t0 , tf ] 7→ Rp , tal que φ(tf , t0 , 0, u, σ) =
x el conjunto alcanzable del sistema 2.43, denotado por R(Ci , Ai , Bi )M es el conjunto de estados
los cuales son alcanzables.
Dados dos estados x0 y xf en el subespacio controlable V, tenemos una trayectoria de conmutación
σ y una entrada de control u para llevar al sistema desde x0 a xf en un tiempo finito. Combinando
las definiciones anteriores y la aproximación geométrica de sistemas lineales, se formula un procedimiento para la controlabilidad de PWLS. Es posible encontrar un numero natural l, números reales
positivos h1 , ..., hl y una secuencia índice i0 , ..., il tal que la ecuación
dim(eAil hl ...eAi1 h1 Di0 + ... + eAil hl Dil−1 + Dil )
(2.44)
≥ dim(eAiτn hτn ...eAi1 h1 Di0 + ... + Diτn + Vn ) ≤ dimV
donde τn = l −
Pn−1
k=0
m(mn)k y
R ⊂ ∪∞
k=1 ∪i0 , ..., ik ∈ M (ΓAik ...ΓAi1 Di0 + ... + Dik ) ⊂ V
(2.45)
V = eAil hl ...eAi1 h1 Di0 + ... + eAil hl Dil−1 + Dil
(2.46)
implica que
Fijando un número real positivo h0 , definimos la secuencia de conmutación como:
t0 = 0
tk = tk−1 + hk−1
k = 1, ..., l + 1
para algún k ∈ M y t > 0 tenemos
Dk = ImWtk
donde
Wtk
Z
=
t
(2.47)
T
eAk (t−τ ) Bk BkT eAk (t−τ ) dτ
0
combinando 2.46 y 2.47 tenemos
i
V = eAil hl ...eAi1 h1 ImWhi0o + ... + eAil hl ImWhl−1
+ ImWhill
l−1
(2.48)
Capítulo 2. Sistemas Conmutados
29
el problema de seguimiento de trayectoria es encontrar para algún estado inicial x0 y un estado
objetivo xf , ambos del subespacio controlable, una entrada de control u tal que
Ai0 h0
Ail hl
Ail hl
...e
x0 + e
xf = x(tl+1 ) = e
Z tl+1
+ ... +
eAil (tl+1 −τ ) Bil u(τ )dτ
Ai1 h1
Z
...e
t1
eAi0 (t1 −τ ) Bi0 u(τ )dτ
(2.49)
0
tl
y si consideramos la estrategia de control continuo por pedazos dada por
u(t) = BiTk e
donde ak ∈ Rn ,
AT
i (tk+1 −t)
k
ak+1
tk ≤ t < tk+1
k = 0, 1, ..., l
(2.50)
k = 1, ..., l + 1 es un vector de variables a ser determinado. Combinando 2.49 y
2.50
xf − eAil hl ...eAi1 h1 eAi0 h0 x0
Z t1
T
Ail hl
Ai1 h1
eA1 (t1 −τ ) B1 B1T eA1 (t1 −τ ) dτ a1
=e
...e
(2.51)
t0
Z
tl+1
+ ... +
tl
eAil (tl+1 −τ ) Bil BiTl e
AT
i (tl+1 −τ )
l
dτ al+1
que es equivalente a
xf − eAil hl ...eAi0 h0 x0 = [eAil hl ...eAi1 h1 Whi00 , ..., Whill ]a
(2.52)
donde a = [aT1 , ..., aTl+1 ]T . Note que
xf − eAil hl ...eAi0 h0 x0 ∈ V
Esto a consecuencia de 2.51 de la ecuación 2.53. Suponemos que a0 = [aT0,1 , ..., aT0,l+1 ]T es solución
de 2.53, definimos la entrada de control como
u(t) = BiTk e
AT
i (tk+1 −t)
k
a0,k+1
tk ≤ t < tk+1
k = 0, 1, ..., l
(2.53)
y la trayectoria de conmutación
σ(t) = ik
t ∈ [tk , tk+1 )
k = 0, 1, ..., l
(2.54)
dando como resultado:
xf = x(tl+1 ; 0; x0 , u, σ)
(2.55)
Capítulo 2. Sistemas Conmutados
30
que es, la entrada de control por pedazos 2.53 y la trayectoria de conmutación 2.54 constituyendo
una solución para el problema de control de un sistema lineal conmutado.
Capítulo 3
Control Tolerante a Fallas
L
a tecnología moderna cada vez con dispositivos realmente sofisticados en el ámbito de control,
ha crecido continuamente en requerimientos de optimización, para los procesos, las consecuencias de
fallas en componentes o sistemas puede causar accidentes e inclusive llegar a desencadenar desastres
de magnitud considerable.
La confiabilidad en este tipo de sistemas ha venido incrementándose para asegurar que tales fallas no ocurran, sin embargo, este objetivo es poco realista y a menudo inalcanzable porque las
fallas no solo pueden surgir a causa del envejecimiento y desgaste de los componentes del sistema,
sino también por fallas humanas en relación al mantenimiento, conexión, operación e instalación.
Por lo tanto, se ha vuelto indispensable el diseño de sistemas de control que puedan tolerar en lo
posible fallas en componentes para brindar confiabilidad y funcionalidad. Este tipo de sistemas es
conocido como sistemas de control tolerantes a fallas (FTCS), que son clasificados en dos categorías:
pasivo y activo. En este trabajo de tesis se realiza el análisis y diseño en lo concerniente al control
tolerante a fallas activo.
En general, un FTCS es aquel sistema de control que tiene la capacidad de hacer frente a variaciones (Robustez), acomodar o reconfigurar el sistema ante un componente fallado, manteniendo
la estabilidad y un nivel de degradación aceptable en el rendimiento del sistema, no solo cuando
este se encuentra libre de falla, sino también cuando existen anomalías en el mismo. El FTCS es
empleado para proveer confiabilidad, mantenibilidad y supervivencia del sistema [51], y sus aplicaciones pueden ser diversas dependiendo de los objetivos y restricciones. Por tanto, en esencia un
FTCS puede brindar mantenibilidad incrementando el tiempo entre operaciones de mantenimiento
permitiendo el uso de procedimientos de reparación más simples. Las técnicas de diseño para los
31
Capítulo 3. Control Tolerante a Fallas
32
FTCS pueden ser clasificadas en dos enfoques: PFTCS y AFTCS [41], el enfoque particular a
ser empleado depende de la capacidad de detección o determinación de las fallas al que un sistema
pueda someterse en la fase de diseño, las restricciones intrínsecas y los objetivos que se persiguen en
su rendimiento, el comportamiento en los cambios de las fallas inducidas y del tipo de redundancia
que ha de ser utilizada en el sistema. La figura 3.1 muestra la clasificación entre estos dos enfoques
y el procedimiento de diseño se muestra en la figura 3.2.
Figura 3.1: Clasificación del Control Tolerante a Fallas.
3.1.
Esquemas de detección y aislamiento de fallas basado en observador
S
egún el número de observadores, los esquemas de diagnóstico pueden clasificarse en:
a) Un solo observador:
Esquema directo: Observadores de orden completo
SOS (simplified Observer Scheme): orden reducido
b) Banco de observadores:
DOS (Dedicated Observer Scheme): orden reducido y completo
GOS (Generalized Observer Scheme): orden reducido y completo
Capítulo 3. Control Tolerante a Fallas
33
de acuerdo al tipo de falla los esquemas de diagnóstico se clasifican en:
i) Falla en sensores IFD (Instrument Fault Detection).
ii) Falla en actuadores AFD (Actuator Fault Detection).
iii) Falla en componentes CFD (Component Fault Detection).
En la figura 3.3 se ilustra el diagrama de bloques de un banco de observadores generalizados para
FDI en sensores.
Figura 3.2: Procedimiento de Diseño del Control Tolerante a Fallas.
3.2.
Estructura del Aislamiento de Fallas
D
e manera general se estudia una forma simplificada del problema del aislamiento de fallas
distinguiendo solo la influencia de dos tipos de fallas. Considere el siguiente sistema:
ẋ = (A + ∆AF )x + (B + ∆BF )u + Ef f
(3.1)
y = (C + ∆CF )x + (D + ∆DF )u + Ff f
suponga que las fallas bajo consideración son detectables. Hablamos de dos tipos de fallas ξi , ξj , i 6=
j, que son aislables si los cambios en la salida del sistema causan que estas fallas sean distinguibles.
Este hecho puede ser equivalentemente expresado como: cualquier ocurrencia simultanea de estas
Capítulo 3. Control Tolerante a Fallas
34
dos fallas puede provocar un cambio en la salida del sistema. Matemáticamente, tenemos la siguiente
definición:
Figura 3.3: Banco de Observadores Generalizados para FDI en Sensores.
Definición 3.1. [30] Dado el sistema 3.1 y dos tipos de fallas cualesquiera detectables ξ = [ξi , ξj ]T ,
i 6= j, son aislables, cuando para una entrada u ∈ Uexc,ξi ∩ Uexc,ξj
∂y
|ξ=0
∂ξ
dξ 6= 0
(3.2)
Esto a consecuencia de que si se tiene un sistema perturbado con fallas, estas requieren distinguirse
de entre tales perturbaciones. Definimos un vector de fallas como:
ξ = [ξ1 , ..., ξl ]T
(3.3)
que incluye l fallas detectables estructuralmente a ser aisladas.
Definición 3.2. [30] Dado el sistema 3.1 las fallas contenidas en el vector de fallas son aislables,
cuando para toda la entrada u ∈ ∩li=1 Uexc,ξi
∂y
|ξ=0
∂ξ
dξ 6= 0
(3.4)
Para fallas aditivas tomamos la definición anterior, este concepto es idéntico al de observabilidad
de entrada conocido e intensamente estudiado en la literatura, para simplificar el caso de estudio,
Capítulo 3. Control Tolerante a Fallas
35
primero se considera Gξ (p) = C(pI − A)−1 Eξ y siguiendo el teorema de Cayley-Hamilton que
1
C(pI − A)−1 Eξ =
C
φ(p)
n
X
!
Si pn−i
i=1
1
C
Eξ
φ(p)
n
X
!
αi (p)Ai−1
Eξ
φ(p) = det(pI − A) = pn + a1 pn−1 + a2 pn−2 + ... + an−1 p + an
Si = Si−1 A + ai−1 I, S1 = I,
(3.5)
i=1
(3.6)
i = 2, ..., n
α1 (p) = pn−1 + a1 pn−2 + ... + an−1 , ..., αn−1 (p) = p + a1 , αn (p) = 1
Reescribiendo

−1
C(pI − A)
CEξ



 CAEξ 
1


[α1 (p)I α2 (p)I ... αn (p)I] 
Eξ =

..


φ(p)
.


n−1
CA
Eξ
(3.7)
es obvio que

CEξ



 CAEξ 


rank 
<l
.
..




n−1
CA
Eξ
entonces existe una entrada u cuyo campo vectorial

CEξ



 CAEξ 



 u = 0 =⇒ C(pI − A)−1 Eξ u = 0
..


.


n−1
CA
Eξ
entonces

CEξ



 CAEξ 


rank 
=l
..


.


n−1
CA
Eξ
que es condición necesaria para el aislamiento de fallas.
(3.8)
Capítulo 3. Control Tolerante a Fallas
3.3.
36
Observador de Luenberguer Generalizado
C
onsidere el sistema LTI por pedazos sin perturbaciones:
ẋ = Ai x + Bi u
(3.9)
y = Ci x
Donde x ∈ Rn es el vector de estados; y ∈ Rm es el vector de salida y u ∈ Rr el vector de
entrada conocido, A, B, C son matrices conocidas de dimensiones apropiadas, ademas se supone
que el sistema es observable. El modelo se conoce con la estructura y los parámetros del sistema,
un observador de estados se utiliza para reconstruir las variables de estado no medibles, a partir de
las entradas y salidas medidas.
x̂˙ = Ai x̂ + Bi u + L(y − Ci x̂)
(3.10)
Donde x̂ ∈ Rn corresponde al vector de estados estimado y L ∈ Rn×m es el término de convergencia
del observador, cuando el observador 3.10 es aplicado al sistema 3.9, el error de estimación e = (x−x̂)
es gobernado por la ecuación.
ė = (Ai − LCi )e
(3.11)
Si todos los eigenvalores de Ai − LCi son estables, e se aproximará a cero asintóticamente, si alguna
pertubación se añade al sistema como es el caso de un sistema LTI por pedazos con perturbación,
entonces el observador de Luenberguer no será capaz de estimar correctamente los estados a no ser
que cierta restricción se aplique a la norma de la señal de perturbación, sin embargo, se puede llegar
a obtener buenos resultados mediante un diseño adecuado de la matriz de ganancias del observador
[1, 4]. Si tenemos por lo tanto un sistema de la forma
ẋ(t) = Ax(t) + Bu(t) + Ez(t),
(3.12)
y(t) = Cx(t) + Du(t) + Gw(t)
tendremos un observador generalizado [12]
ż(t) = Fz(t) + Ky(t) + Ju(t)
w(t) = Gz(t) + Ry(t) + Su(t)
(3.13)
Capítulo 3. Control Tolerante a Fallas
37
en el que ahora el término de convergencia estará dado por
lı́m [w(t) − Lx(t)] = 0
t→∞
(3.14)
para que el observador 3.13 pueda ser aplicado al sistema 3.12 se deben satisfacer las siguientes
condiciones
F debe tener eigenvalores estables
(3.15)
TA − FT = KC
J = TB − KD
RC + GT = L
S + RD = 0
si hacemos
L=C
(3.16)
ŷ(t) = w(t) + Du(t)
(3.17)
r(t) = Q[y(t) − ŷ(t)] = L1 z(t) + L2 y(t) + L3 u(t)
(3.18)
la salida estimada del observador será
y el residuo
donde
L1 = −QG
(3.19)
L2 = Q − QR
L3 = −Q (S + D)
para el caso de estudio solo se agrega el subíndice i ∈ M al sistema general. La estructura del
observador generalizado se muestra en la siguiente figura:
Capítulo 3. Control Tolerante a Fallas
38
Figura 3.4: Observador de Luenberguer Generalizado.
3.4.
Observador de Entradas Desconocidas de Orden Completo
C
onsidere el siguiente sistema en el cual una clase de incertidumbre (entrada desconocida) se
adiciona a las ecuaciones dinámicas en espacio de estados descrita por:
ẋ(t) = Ax(t) + Bu(t) + Ed(t)
(3.20)
y(t) = Cx(t) + We(t)
donde x(t) ∈ Rn es el vector de estados, y(t) ∈ Rm es el vector de salidas, u(t) ∈ Rr es el vector
de entradas conocidas, y d(t), e(t) ∈ Rq son los vectores de entradas desconocidas (perturbaciones).
A, B, C, E y W son matrices conocidas de dimensiones apropiadas. la estructura del observador de
entradas desconocidas es:
ż(t) = Fz(t) + TBu(t) + Ky(t)
(3.21)
x̂(t) = z(t) + Hy(t)
donde x̂ ∈ Rn es el vector de estados estimados y z ∈ Rn es el estado del observador, F, T, K, H
son matrices a ser diseñadas de manera que desacoplen entradas desconocidas y otros requisitos de
diseño. Cuando el observador 3.21 se aplica al sistema 3.20, el error de estimación (e(t) = x(t)− x̂(t))
Capítulo 3. Control Tolerante a Fallas
39
es gobernado por la siguiente ecuación:
ė(t) = (A − HCA − K1 C)e(t) + [F − (A − HCA − K1 C)] z(t)
(3.22)
+ [K2 − (A − HCA − K1 C)H] y(t)
+ [T − (I − HC)] Bu(t) + (HC − I)Ed(t)
donde
K = K1 + K2
(3.23)
se puede diseñar el observador solo si las siguientes condiciones se cumplen:
(HC − I) = 0
(3.24)
T = I − HC
F = A − HCA − K1 C
K2 = FH
entonces el error de estimación será:
ė(t) = Fe(t)
(3.25)
Para el caso de CFD se requiere descomponer el sistema en subsistemas y utilizar observadores
jerarquizados, la localización no es evidente ni el proceso de diseño general.1 La estructura del
observador de entradas desconocidas se muestra en la figura 3.5
Figura 3.5: Observador de Entradas Desconocidas de Orden Completo.
1
Más información refierase a Chen y Patton, Robust Model-Based Fault Diagnosis for Dynamic Systems
Capítulo 3. Control Tolerante a Fallas
3.5.
40
Control por Retroalimentación de Estados
L
a modificación del comportamiento de un sistema de m entradas, n salidas y p estados, es lo que
involucra la teoría de control lineal trabajando con variables de estado, consideremos el siguiente
sistema:
ẋ = Ax(t) + Bu(t),
(3.26)
y = Cx(t) + Du(t)
que denominamos como ecuación de estados o planta en lazo abierto, si aplicamos una retroalimentación lineal de estados de la forma:
u(t) = Nr(t) − Kx(t)
(3.27)
donde r(t) es el nombre actual para la señal de entrada, K es la ganancia de retroalimentación de
estados y N la ganancia de prealimentación, la sustitución de 3.27 en 3.26 nos arroja la siguiente
ecuación de estados en lazo cerrado:
ẋ = (A − BK)x(t) + BNr(t),
(3.28)
y = Cx(t) + DNr(t)
es importante señalar que cuando los estados del sistema no pueden medirse, se recurre a estimarlos
mediante un observador de estados, que reconstruye x a partir de medir la entrada y salida del
sistema, siendo este último un controlador dinámico por retroalimentación de salida. Las figuras 3.6
y 3.7 presentan estos dos tipos de esquemas de control. si ahora consideramos el sistema
Figura 3.6: Esquema de Control por Retroalimentación de Estados.
Capítulo 3. Control Tolerante a Fallas
41
Figura 3.7: Esquema Dinámico de Control por Retroalimentación de Estados.
ẋ(t) = Ax(t) + Bu(t) + Ez(t),
(3.29)
y(t) = Cx(t) + Du(t) + Gw(t)
y le aplicamos la ley de control 3.27 la solución del sistema estará dada por
(A−BK)t
y(t) = Ce
Z
t
x0 + C
e(A−BK)(t−τ ) Br(τ )dτ
(3.30)
0
por lo tanto para cierta condición inicial y entrada u = 0 tenemos
t→∞
y(t) = Ce(A−BK)t x0 −→ 0
(3.31)
y para el caso en el que u 6= 0
t→∞
y(t) −→ a
Z t
t→∞
e(A−BK)(t−τ ) B(τ )dτ a −→ a
y(t) = Ce(A−BK)t x0 +N C
|
{z
}
0
(3.32)
(3.33)
t→∞
−→ 0
la ganancia de prealimentación esta dada por
Z
⇔ N
∞
e(A−BK)σ Bdσ = 1
(3.34)
0
⇔ N C(sI − A + BK)−1 B |s=0 = 1
1
⇔ N =−
C(A − BK)−1 B
si se agrega acción integral para corregir el error en estado estacionario y rechazo a perturbaciones
ẋi = r − y = r − Cx
(3.35)
Capítulo 3. Control Tolerante a Fallas
"
ẋ
#
"
=
ẋi
A
42
0
#"
−C 0
"
y = [C
0]
x
x
#
xi
#
"
+
B
#
"
(u + w) +
D
0
#
r
1
(3.36)
xi
que es el sistema aumentado, la respuesta en lazo cerrado estará determinada por
"
ẋ
ẋi
#
"
=
A − BK −Bki
−C
"
y = [C
0]
x
0
#
#"
x
#
xi
"
+
B
#
D
"
(u + w) +
0
1
#
r
(3.37)
xi
el diagrama de bloques con acción integral se muestra en la figura 3.8. Para llevar a cabo esta
Figura 3.8: Control por Retroalimentación de Estados con Acción Integral.
técnica de diseño se requiere que el sistema sea completamente controlable si se quiere hacer control
utilizando todas las entradas, y completamente observable para el diseño del controlador dinámico,
además de buscar la ganancia óptima (estabilización por ubicación de polos) y diseñar el esquema
de regulación y seguimiento para lograr desempeño y robustez.
3.6.
3.6.1.
Fundamentos del Control LQR
Formulación General del Control LQR
P
ara el modelo expresado en espacio de estados 3.26, la técnica LQR calcula la matriz de control
K tal que, realizando un control con realimentación de estado expresada mediante la ecuación
u = −Kx(t) se minimiza la función de costo (índice de desempeño cuadrático) J en el intervalo de
Capítulo 3. Control Tolerante a Fallas
43
tiempo considerado (intervalo de optimización):
Z
J=
∞
(xT (t)Qx(t) + uT (t)Ru(t))dt + xT (t)M x(t)
0
Los términos que componen la función de costo se interpretan de la siguiente manera:
xT Qx es una medida de la desviación de los estados respecto a los estados deseados
uT Ru es una medida del esfuerzo de control
xT (t)M x(t) es una medida de la desviación de los estados respecto a los estados en el instante
final del intervalo de optimización
Considerando que los estados x de la ecuación en el espacio de estado representan estados incrementales, el objetivo del control LQR consiste en llevar los estados x los más cerca posible de los
estados de consigna o de referencia xconsigna =0, figura 3.9. El diseñador del control LQR determina
las matrices Q, RyM , cuyos elementos deben ser positivos o cero. La técnica LQR ofrece un con-
Figura 3.9: Diagrama de Bloques del Control Lineal Cuadrático.
trolador tal que se controla el sistema de forma óptima a partir de la minimización de la función
de costo J previamente definida. En consecuencia, el control es óptimo para la función de costo
definida, y depende de la habilidad del diseñador establecer una función de costo que se ajuste lo
más fielmente posible a las necesidades de control del sistema.
3.6.2.
Obtención de la Matriz K(t). Ecuación de Riccati
A
nteriormente establecimos que la ley de control óptima por realimentación de estado es u(t) =
−K(t)x donde la matriz de control K corresponde a la siguiente expresión:
K = R−1 B T P
Capítulo 3. Control Tolerante a Fallas
44
La matriz P se obtiene solucionando la ecuación de Riccati 3.38 considerando las condiciones de
frontera 3.39
3.6.3.
− Ṗ = AT P + P A + Q − P BR−1 B T P
(3.38)
P (t) = M
(3.39)
LQR en Régimen Permanente
S
i se considera que el intervalo de optimización es infinito, la matriz resultante de la ecuación de
Riccati P es constante y, por lo tanto, la matriz de control K también lo es. El controlador óptimo
es invariante frente al tiempo en régimen permanente u(t) = −Kx(t). La solución de la ecuación
de Riccati en régimen permanente es independiente de la matriz M . En consecuencia, si se desea
calcular la matriz K de control para régimen permanente se puede reducir la función de costo J a
la ecuación 3.40 al poder prescindir del término xT (t)M x(t). En este caso es menester definir las
matrices Q y R.
Z
J=
∞
(xT Qx + uT Ru)dt
(3.40)
0
El cálculo de la matriz de control K, a partir del modelo en espacio de estado y una vez definidas las
matrices Q y R, es sencillo si empleamos M atlabr para este propósito. Si el sistema en espacio de
estado es controlable y observable, existe una única matriz de control óptimo K tal que el sistema
en lazo cerrado con el control u = −Kx es asintóticamente estable. En otras palabras, es condición
suficiente que el sistema sea controlable y observable para garantizar la solución de la ecuación de
Riccati y la existencia de una matriz de control óptimo en régimen permanente.
3.6.4.
Elección de las Matrices Q y R
N
o existe una regla o guías que puedan emplearse de forma general para la selección de las
matrices Q y R. Una condición simple consiste en elegir Q y R diagonales, asignando valores
grandes a aquellas variables que se desee minimizar. En cualquier caso, los valores de estas matrices
deben ser siempre positivos. El conocimiento que se posea del sistema resulta fundamental en la
selección de estas matrices, aún así, es conveniente calcular diferentes controladores o reconfigurar
el que se tiene en base a distintos valores para las matrices y verificar su efectividad. Una ventaja
importante del control LQR es que, sea cual sea la elección de las matrices Q y R, se preserva la
estabilidad asintótica y robustez del controlador.
Capítulo 3. Control Tolerante a Fallas
3.6.5.
45
Robustez del Controlador LQR
E
l control LQR, además de asegurar la estabilidad, es un control robusto. Presenta un margen de
fase mínimo de 60 deg, un margen de ganancia creciente infinito y un margen de ganancia decreciente
de 0.5, esto supone que el sistema en lazo cerrado con LQR resulta estable para cualquier incremento
de la ganancia y para todas aquellas ganancias superiores a la mitad del valor nominal de diseño.
La adición de parte integral otorga la capacidad de eliminar los errores de régimen permanente
ocasionados por perturbaciones, además proporciona robustez frente a variaciones en los parámetros
del modelo del sistema, empleado tanto para calcular el punto de trabajo (x, u) como las matrices del
controlador (kP , kI ). En particular, el controlador ajusta automáticamente la salida del integrador
para suministrar un valor suficiente a las variables de entrada tal que mantengan los estados al
valor de consigna. La parte integral se muestra especialmente interesante en aquellos casos en que
se emplea el modelo de pequeña señal en el cálculo del controlador LQR, modelo que depende del
punto de operación. El error cometido al emplear un modelo lejos de su punto de trabajo puede ser
corregido con la acción integral. Si se tiene en cuenta la robustez del controlador LQR, la acción
integral permite alcanzar error estacionario nulo, incluso con grandes errores en el modelo. Otra
virtud del control LQR en referencia a su robustez es que presenta una sensibilidad inferior o igual a
la unidad para todo margen de frecuencias. Esto supone que la función de transferencia del modelo
completo varía relativamente poco frente a la variación de los elementos del sistema, para cualquier
frecuencia. En resumen, el control LQR reúne las siguientes propiedades:
1. La ley de control es óptima para la función de costo (índice de desempeño) J definida por el
diseñador
2. Amplios márgenes de fase y ganancia, así como amplia tolerancia a la reducción de ganancia
3. Sensibilidad reducida y robusta
4. Repuesta en frecuencia con una pendiente de caída suave a alta frecuencia. A diferencia de
las tres anteriores, esta no es una propiedad atractiva para un sistema de control, pero en
sistemas eléctricos y electrónicos, los componentes de alta frecuencia suelen ser atenuados por
filtros pasivos del circuito
Capítulo 4
Modelo no lineal del Avión
4.1.
Dinámica del Avión
En este capítulo se realizará el análisis de las ecuaciones de movimiento para el avión de combate
Falcon F-16, basados en los preceptos establecidos en las referencias [24][13][53]. Una discusión a
profundidad puede estudiarse en el reporte [36].
4.1.1.
Marco de Referencia
Los marcos de referencia utilizados en este trabajo de investigación se basan en el modelo de ejes
cuerpo para tierra plana FE , utilizados como el marco inercial y el marco de referencia local de la
tierra llevado hasta el vehículo FO , el cual es el eje origen en el centro de gravedad del avión de
importancia para establecer la orientación con base a FE , el marco de referencia con respecto a los
ejes de viento FW se obtienen en base a FO dadas tres rotaciones sucesivas χ, γ y µ. El marco de
referencia con respecto a los ejes de estabilidad FS se obtiene con base a FW dada una rotación
−β, y finalmente el marco de referencia de ejes de cuerpo FB obtenido con FS por una rotación
de α. Este marco de referencia puede también obtenerse de manera directa con base a FO por las
rotaciones sucesivas de el ángulo de cabeceo θ, el ángulo de alabeo φ y el ángulo de viraje ψ. Los
ejes de cuerpo en el modelo de un F16 son convencionales, el eje x es positivo fuera de la nariz del
avión, el eje y es positivo fuera del ala derecha si se esta sentado en el fuselaje de control y se mira
fuera del frente del avión, el eje z es normal a los ejes anteriores y positivo hacia abajo cuando el
avión navega en alas a nivel. los momentos con base a los ejes anteriores obedecen la regla de la
mano derecha y son nombrados M, L y N respectivamente. Los ángulos de Euler (alabeo, cabeceo
46
Capítulo 4. Modelo no lineal del Avión
47
y viraje) φ, θ y ψ así como sus velocidades angulares p(φ̇), q(θ̇) y r(ψ̇) son también considerados
positivos usando la regla de la mano derecha para cada eje. Ver figura 4.1.
Figura 4.1: Ejes de cuerpo en un F-16, (x, y y z) L momento de giro, M momento de cabeceo,
N momento de viraje, p velocidad angular de alabeo, q velocidad angular de cabeceo, r velocidad
angular de viraje.
Las matrices de transformación desde FB a FS y desde FB a FW se definen como

cosα
0 sinα



Ts/b = 
1
0 
 0
,
−sinα 0 cosα
4.1.2.

cosαcosβ
sinβ
sinαcosβ




Tw/b = 
−cosαsinβ cosβ −sinαsinβ 
−sinα
0
cosα
(4.1)
Variables del Avión
Antes de proceder a desarrollar las ecuaciones de movimiento que definen la dinámica propia del
avión, deben tenerse en cuanta las siguientes consideraciones:
1. El avión es un cuerpo rígido, lo cual significa que no existe variación con respecto a cualquier
eje fijo. Esta consideración es válida para un avión de combate pequeño.
2. La tierra es plana y no tiene rotación y se estima como una referencia inercial. La consideración es válida cuando se trata con el diseño de controladores para el avión, excepto cuando se
analizan los sistemas de dirección inercial.
3. La masa del avión es constante durante el intervalo de tiempo sobre el que se considera el
movimiento, el consumo del combustible es omitido durante este intervalo de tiempo. Esta
consideración es necesaria para aplicar las ecuaciones de movimiento de Newton.
4. La distribución del peso del avión es simétrico y relativo al plano x − z, esto implica que los
productos inerciales Iyz e Ixy son igual a cero.
Capítulo 4. Modelo no lineal del Avión
48
Bajo las consideraciones anteriores el movimiento del avión posee seis grados de movimiento (rotacionales y traslacionales en tres dimensiones). La dinámica del avión puede ser descrita mediante su
posición, orientación, velocidad y velocidades angulares con respecto al tiempo. PE = (xE , yE , zE )T
es el vector de posición expresado en el sistema coordenado tridimensional con base al eje de la
tierra. V es el vector de velocidad dado por V = (u, v, w)T , donde u es la velocidad longitudinal, v
la velocidad lateral y w la velocidad normal a las anteriores. El vector de orientación esta dado por
Φ = (φ, θ, ψ)T , y el vector de velocidades angulares esta dado por ω = (p, q, r)T , ver figura 4.2. La
relación entre el vector de altitud Φ y el vector de velocidades angulares ω esta dada por


1 sinφtanθ cosφtanθ


Φ̇ = 
cosφ
−sinφ 
ω
0
cosφ
sinφ
0
cosθ
cosθ
(4.2)
Definiendo VT como la velocidad total y utilizando la figura 4.2
p
u2 + v 2 + w2
w
α = arctan
u
v
β = arcsin
VT
VT =
(4.3)
Cuando β = φ = 0, el ángulo de trayectoria de vuelo γ puede ser definido como
Figura 4.2: Ángulos de orientación del avión φ, θ y ψ, ángulos aerodinámicos α y β, y velocidades
angulares p, q y r. Todos positivos en la figura.
γ =θ−α
(4.4)
Capítulo 4. Modelo no lineal del Avión
4.1.3.
49
Ecuaciones de movimiento para el avión de cuerpo rígido
Las ecuaciones de movimiento para el avión se derivan de la segunda ley de movimiento de Newton,
en el cual los estados son resultado de la combinación de todas las fuerzas externas actuando sobre el
cuerpo del avión igual a la tasa de cambio en el tiempo de los momentos, y la suma de los momentos
externos actuando sobre el cuerpo rígido es igual a la tasa de cambio en el tiempo de los momentos
angulares. En el marco de referencia inercial con ejes de tierra FE , la segunda ley de Newton puede
ser expresada mediante dos ecuaciones vectoriales [36]
F =
d
(mV ) |E
dt
(4.5)
dH
|E
dt
(4.6)
M=
donde F representa la suma de todas las fuerzas externas aplicadas, m es la masa del avión, M
representa la suma de todos los momentos aplicados y H es el momento angular.
4.1.4.
Ecuaciones de Fuerza
Para evaluar favorablemente la ecuación de fuerza (4.5) es necesario obtener una expresión para
la tasa de cambio en el tiempo del vector de velocidad con respecto al eje de la tierra. Esto es
complicado por el hecho que el vector de velocidad puede variar cuando cambia de magnitud.
Usando la ecuación de Coriolis resulta en
F =
d
(mV ) |B +ω × mV
dt
(4.7)
donde ω es el vector de velocidad angular del avión con respecto a la tierra (marco de referencia
inercial). Expresando los vectores como la suma de los componentes propios con respecto al marco
de referencia en ejes de cuerpo FB
V = iu + jv + kw
(4.8)
ω = ip + jq + kr
(4.9)
donde i, j y k son vectores unitarios a lo largo de los ejes del avión xB , yB y zB respectivamente.
Expandiendo (4.7) usando (4.8) y (4.9)
Fx = m(u̇ + qw − rv)
Fy = m(v̇ + ru − pw)
Fz = m(ẇ + pv − qu)
(4.10)
Capítulo 4. Modelo no lineal del Avión
50
donde las fuerzas externas Fx , Fy y Fz dependen del vector de peso W , el vector de fuerzas aerodinámicas R y el vector de propulsión R. Se asume que la propulsión producida por el motor, FT ,
actúa paralela al eje XB del avión. Entonces
Ex = FT
(4.11)
Ey = 0
Ez = 0
Los componentes de W y R a lo largo de los ejes de cuerpo son
Wx = −mgsinθ
(4.12)
Wy = mgsinφcosθ
Wz = mgcosφcosθ
y
Rx = X̄
(4.13)
Ry = Ȳ
Rz = Z̄
donde g es la constante de gravedad. La magnitud de las fuerzas aerodinámicas X̄, Ȳ y Z̄ son
determinadas por la acumulación de aire formada por el avión en diferentes direcciones. Este efecto
depende de los siguientes factores:
La velocidad total VT (número de Mach M ) y la densidad del flujo de aire ρ
La geometría del avión: área de las alas S, envergadura b y la cuerda media aerodinámica c̄
La orientación del avión relativa al flujo de aire: angulo de ataque α y el ángulo de deslizamiento
lateral β
Las deflexiones de las superficies de control δ
Las velocidades angulares p, q y r
Existen otras variables tales como las derivadas con respecto al tiempo de los ángulos aerodinámicos
que juegan rol importante, sin embargo estos efectos pueden ser despreciados ya que asumimos que el
Capítulo 4. Modelo no lineal del Avión
51
avión es un cuerpo rígido. lo anterior motiva la manera común del modelado de fuerzas aerodinámicas
X̄ = q̄SCxT (α, β, p, q, r, δ, ...)
(4.14)
Ȳ = q̄SCyT (α, β, p, q, r, δ, ...)
Z̄ = q̄SCzT (α, β, p, q, r, δ, ...)
donde q̄ = 21 ρVT2 es la presión aerodinámica. ρ es la densidad del aire acorde con la ISA (Atmósfera
Standard Internacional). Los coeficientes CxT , CyT y CzT con obtenidos de manera heurística mediante pruebas en el túnel de viento. Combinando las ecuaciones (4.12) y (4.13) y los componentes
de la propulsión (4.11) con (4.10), resulta en la ecuación completa para ejes de cuerpo
X̄ + FT − mgsinθ = m(u̇ + qw − rv)
(4.15)
Ȳ + mgsinφ cos θ = m(v̇ + ru − pw)
Z̄ + mgcosφ sin θ = m(ẇ + pv − qu)
4.1.5.
Ecuaciones de Momentos
Para obtener las ecuaciones de momentos para el movimiento angular, consideremos nuevamente
las ecuación (4.6). La tasa de cambio en el tiempo de H es requerida y si la ecuación cambia de
magnitud y dirección, puede reescribirse como
M=
dH
|B +ω × H
dt
(4.16)
en el marco de referencia en ejes de cuerpo, bajo las consideraciones de cuerpo rígido y masa
constante, el momento angular H puede ser expresado como
H = Iω
(4.17)
donde, bajo la consideración de simetría del avión, la matriz de inercias es

Ix
0

I=
Iy
 0
−Ixz 0
−Ixz


0 

Iz
(4.18)
Capítulo 4. Modelo no lineal del Avión
52
expandiendo (4.16) y (4.17)
Mx = ṗIx − ṙIxz + qr(Iz − Iy ) − pqIxz
(4.19)
My = q̇Iy + pq(Ix − Iz ) + (p2 − r2 )Ixz
Mz = ṙIz − ṗIxz + pq(Iy − Ix ) + qrIxz
los momentos externos Mx , My y Mz se combinan aerodinámicos y angulares de propulsión. Como
resultado los momentos aerodinámicos son
Mx = L̄
(4.20)
My = M̄ − rHeng
Mz = N̄ + qHeng
donde L̄, M̄ y N̄ son los momentos aerodinámicos y Heng es el momento producido por el motor.
Los momentos aerodinámicos se expresan de manera similar a las fuerzas aerodinámicas
L̄ = q̄SbClT (α, β, p, q, r, δ, ...)
(4.21)
M̄ = q̄Sc̄CmT (α, β, p, q, r, δ, ...)
N̄ = q̄SbCnT (α, β, p, q, r, δ, ...)
Combinando (4.19) y (4.20), la ecuación completa de momentos en ejes de cuerpo es
L̄ = ṗIx − ṙIxz + qr(Iz − Iy ) − pqIxz
(4.22)
M̄ − rHeng = q̇Iy + pq(Ix − Iz ) + (p2 − r2 )Ixz
N̄ − qHeng = ṙIz − ṗIxz + pq(Iy − Ix ) + qrIxz
4.1.6.
Resumen de las ecuaciones de movimiento
Las ecuaciones de movimiento previamente desarrolladas se resumen y se escriben como un sistema
de 12 ecuaciones diferenciales de primer orden
1
(X̄ + FT )
m
1
v̇ = pw − ru + gsinφcosθ + Ȳ
m
1
ẇ = qu − pv + gcosφcosθ + Z̄
m
u̇ = rv − qw − gsinθ +
(4.23)
(4.24)
(4.25)
Capítulo 4. Modelo no lineal del Avión
53
ṗ = (c1 r + c2 p)q + c3 L̄ + c4 (N̄ + qHeng )
(4.26)
q̇ = c5 pr − c6 (p2 − r2 ) + c7 (M̄ − rHeng )
(4.27)
ṙ = (c8 p − c2 r)q + c4 L̄ + c9 (N̄ + qHeng )
(4.28)
φ̇ = p + tanθ(qsinφ + r cos φ)
(4.29)
θ̇ = qcosφ − rsinφ
(4.30)
qsinφ + rcosφ
cosφ
(4.31)
ψ̇ =
ẋE = ucosψcosθ + v(cosψsinθsinφ − sinψcosφ)
(4.32)
+ w(cosψsinθcosφ + sinψsinφ)
ẏE = usinψcosθ + v(sinψsinθsinφ + cosψcosφ)
(4.33)
+ w(sinψsinθcosφ − cosψsinφ)
żE = −usinθ + vcosθsinφ + wcosθcosφ
(4.34)
1
Iy
(4.35)
donde
2
Γc1 = (Iy − Iz)Iz − Ixz
Γc4 = Ixz
Γc2 = (Ix − Iy + Iz )Ixz
c5 =
Γc3 = Iz
c6 =
Ixz
Iy
Iz − Ix
Iy
c7 =
2
Γc8 = Ix (Ix − Iy ) + Ixz
Γc9 = Ix
(4.36)
(4.37)
con
2
Γ = Ix Iz − Ixz
(4.38)
Las ecuaciones de movimiento anteriores se utilizan empleando el modelo para la orientación del
avión mediante la aproximación de los ángulos de Euler, la desventaja de método es que las ecuaciones diferenciales para ṗ y ṙ presentan una singularidad cuando el ángulo de cabeceo θ = ± π2 .
Para evitar este problema se emplea un modelo de 13 ecuaciones diferenciales donde se evitan las
singularidades, un análisis a detalle de este procedimiento puede encontrarse en [53].
1
(X̄ + FT ) + 2(q1 q3 − q0 q2 )g
m
1
v̇ = pw − ru + Ȳ + 2(q2 q3 + q0 q1 )g
m
1
ẇ = qu − pv + Z̄ + (q02 − q12 − q22 + q32 )g
m
u̇ = rv − qw +
(4.39)
(4.40)
(4.41)
Capítulo 4. Modelo no lineal del Avión
54
ṗ = (c1 r + c2 p)q + c3 L̄ + c4 (N̄ + qHeng )
(4.42)
q̇ = c5 pr − c6 (p2 − r2 ) + c7 (M̄ − rHeng )
(4.43)
ṙ = (c8 p − c2 r)q + c4 L̄ + c9 (N̄ + qHeng )
(4.44)
 

 
q̇0
0 −p −q −r
q
 

  0
q̇  1 p 0


r −q  q1 
 1


q̇ =   = 
 
q̇2  2 q −r 0


p  q2 
 


q̇3
q3
r q −p 0
(4.45)
  
 
x˙E
u
q02 + q12 − q22 − q32
2(q1 q2 − q0 q3 )
2(q1 q3 − q0 q2 )
  
 
2
2
2
2
 y˙E  =  2(q1 q2 + q0 q3 )


q0 + q1 − q2 − q3
2(q2 q3 − q0 q1 )   v 
  

2
2
2
2
z˙E
w
2(q1 q3 − q0 q2 )
2(q2 q3 + q0 q1 )
q0 + q1 − q2 − q3
(4.46)
 


q̇0
cosφ/2cosθ/2 cos ψ/2 + sinφ/2sinθ/2sinψ/2
 


q̇ 
sinφ/2cosθ/2 cos ψ/2 − cosφ/2sinθ/2sinψ/2
 1


q̇ =   = ± 

q̇2 
cosφ/2cosθ/2 cos ψ/2 + sinφ/2cosθ/2sinψ/2
 


q̇3
cosφ/2cosθ/2 sin ψ/2 − sinφ/2sinθ/2cosψ/2
(4.47)
donde
empleando (4.45) para describir la dinámica de la altitud significa que las cuatro ecuaciones diferenciales se integran como si los elementos cuaternarios fueran independientes. Sin embargo, la condición
p
de normalización |q| = q02 + q12 − q22 − q32 = 1 y la restricción derivativa q0 q̇0 +q1 q̇1 +q2 q̇2 +q3 q̇3 = 0
puede no satisfacer las condiciones de optimización mediante el paso de integración así como el
redondeo numérico de los errores. Después de cada paso de integración las restricciones pueden
reestablecerse sustrayendo las discrepancias de las derivadas cuaternarias. La dinámica cuaternaria
corregida es [24]
q̇ = q̇ − δq
donde δ = q0 q̇0 + q1 q̇1 + q2 q̇2 + q3 q̇3
(4.48)
Capítulo 4. Modelo no lineal del Avión
4.1.6.1.
55
Ecuaciones de Fuerza en Ejes de Viento
Para el diseño de control es conveniente la transformación de las ecuaciones de fuerza (4.39)-(4.41)
al marco de referencia en ejes de viento y derivando la ecuación (4.3) tenemos [53]
V̇T =
1
(−D + FT cosαcosβ + mg1 )
m
α̇ = q − (pcosα + rsinα)tanβ −
β̇ = psinα − rcosα +
1
(L + FT sinα − mg3 )
mVT cosβ
1
(Y − FT cosαsinβ + mg2 )
mVT
(4.49)
(4.50)
(4.51)
donde la fuerza de arrastre (resistencia) D, la fuerza lateral Y y la fuerza de sustentación L son
definidas como
D = −X̄cosαcosβ − Ȳ sinβ − Z̄sinαcosβ
(4.52)
Y = −X̄cosαsinβ − Ȳ cosβ − Z̄sinαsinβ
(4.53)
L = X̄sinα − Z̄cosβ
(4.54)
y los componentes de la gravedad son
4.2.
g1 = g(−cosαcosβsinθ + sinβsinφcosθ + sinαcosβcosφcosθ)
(4.55)
g2 = g(cosαsinβsinθ + cosβsinφcosθ − sinαsinβcosφcosθ)
(4.56)
g3 = g(sinαsinθ + cosαcosφcosθ)
(4.57)
Variables de Control y Modelado del Motor
El modelo del avión Falcon F-16 cuenta para su control con la propulsión, elevadores, alerones y el
timón. La propulsión positiva causa un incremento en la aceleración a lo largo del eje xB , la deflexión
del elevador positiva resulta en un decremento en la velocidad angular de cabeceo, la deflexión del
alerón positiva causa un decremento en la velocidad angular de alabeo y por último la deflexión
positiva del timón resulta en un decremento de la velocidad angular de viraje. El F-16 también
cuenta con un alerón en el borde de ataque el cual ayuda al vuelo del avión a grandes ángulos de
ataque. La defexión de este alerón δLEF no es controlada directamente por el piloto, es gobernada
por la siguiente función de transferencia dependiente del ángulo de ataque, las presiones dinámica
y estática
δLEF = 1,38
2s + 7,25
q̄
α − 9,05 + 1,45
s + 7,25
ps
(4.58)
Capítulo 4. Modelo no lineal del Avión
56
La deflexión diferencial del elevador, alerón del borde de salida, el servomecanismo de navegación
y los frenos no se incluyen en este modelo ya que los datos no están disponibles. Las superficies de
control del F-16 son manipuladas por actuadores servo controlados comandadas por el sistema de
control de vuelo. Tales superficies son modeladas como un filtro pasa bajas de primer orden con
ciertas ganancias y limites de saturación en los rangos permisibles. Estos limites se muestran en el
cuadro 4.1. Las ganancias de los actuadores son 1/0.136 para el alerón del borde de ataque y 1/0.0495
para las otras superficies de control. El F-16 es impulsado por un potente monomotor F110-GE-129
Cuadro 4.1: Valores Máximos y Mínimos de las Variables de Control.
Control
Elevador
Alerones
Timón
δLEF
Unidades
deg
deg
deg
deg
Min.
-25
-21.5
-30
0
Máx.
25
21.5
30
25
Límite
± 60 deg/s
± 80 deg/s
± 120 deg/s
± 25 deg/s
de General Electric de 131,6 kN (29588 libras-f), o un F100-PW-229 de Pratt & Whitney de 129,4
kN (29.100 libras-f) turbofan con postcombustión, como alternativa al estándar. La respuesta de
propulsión es modelada como un sistema de primer orden.
4.3.
Geometría y Datos Aerodinámicos
Los datos aerodinámicos del modelo en cuestión fueron obtenidos en el túnel de viento con un
modelo a escala en la NASA [39]. La cubierta de vuelo subsónica esta dada por
-20 ≤ α ≤ 90 grados
-30 ≤ β ≤ 30 grados
El coeficiente del momento de cabeceo Cm y Cz ambos dependen de tres variables: el ángulo de
ataque, al ángulo del alerón lateral y la deflexión del elevador. Estos coeficientes se asumen como
sigue a continuación. Para el coeficiente de fuerza en el eje X CXT
CXT
δLEF
= CX (α, β, δe ) + δCXLEF 1 −
25
qc̄
δLEF
+
CXq (α) + δCXqLEF (α) 1 −
2VT
25
donde
δCXLEF = CXLEF (α, β) − CX (α, β, δe = 0◦ )
(4.59)
Capítulo 4. Modelo no lineal del Avión
57
Figura 4.3: Coeficientes Aerodinámicos Obtenidos en el Túnel de Viento Para el F-16.
para el coeficiente de fuerza en el eje Y CYT
C YT
δLEF
= CY (α, β) + δCYLEF 1 −
25
δLEF
δa
+ δCYδa + δCYδaLEF 1 −
25
20
rb
δLEF
+ δCYδr +
CYr (α) + δCYrLEF (α) 1 −
2VT
25
pb
δLEF
+
CYp (α) + δCYpLEF (α) 1 −
2VT
25
(4.60)
donde
δCYLEF = CYLEF (α, β) − CY (α, β)
δCYδa = CYδa (α, β) − CY (α, β)
δCYδa
LEF
= δCYδa
LEF
(α, β) − CYLEF (α, β) − δCYδa
δCYδr = δCYδr (α, β) − CY (α, β)
para el coeficiente de fuerza en el eje Z CZT
CZ T
δLEF
= CZ (α, β, δe ) + δCZLEF 1 −
25
qc̄
δLEF
+
CZq (α) + δCZqLEF (α) 1 −
2VT
25
donde
δCZLEF = CZLEF (α, β) − CZ (α, β, δe = 0◦ )
(4.61)
Capítulo 4. Modelo no lineal del Avión
58
para el coeficiente de momento de giro ClT
Cl T
δLEF
= Cl (α, β) + δClLEF 1 −
25
δa
δLEF
+ δClδa + δClδaLEF 1 −
25
20
δr
δLEF
rb
+ δClδr
Clr (α) + δClrLEF (α) 1 −
+
30 2VT
25
pb
δLEF
+
Clp (α) + δClpLEF (α) 1 −
+ δClβ (α)β
2VT
25
(4.62)
donde
δClLEF = ClLEF (α, β) − Cl (α, β, δe = 0)
δClδa = Clδa (α, β) − Cl (α, β, δe = 0)
δClδa
LEF
= δClδa
LEF
(α, β) − ClLEF (α, β) − δClδa
δClδr = δClδr (α, β) − Cl (α, β, δe = 0)
para el coeficiente de momento de cabeceo CmT
CmT
δLEF
= Cm (α, β, δe ) + δCZT [xcgr − xcg ] + δCmLEF 1 −
25
qc̄ δLEF
+
+ δCm (α) + δCmds (α, δe )
Cmq (α) + δCmqLEF (α) 1 −
2VT
25
(4.63)
donde
δCmLEF = CmLEF (α, β) − Cm (α, β, δe = 0◦ )
para el coeficiente de momento de viraje CnT
δLEF
c̄
− CYT [xcgr − xcg ]
= Cn (α, β, δe ) + δCnLEF 1 −
25
b
δa
δLEF
+ δCnδa + δCnδaLEF 1 −
25
20
δr
rb
δLEF
+ δCnδr
+
Cnr (α) + δCnrLEF (α) 1 −
30 2VT
25
pb
δLEF
+
Cnp (α) + δCnpLEF (α) 1 −
+ δCnβ (α)β
2VT
25
CnT
(4.64)
Capítulo 4. Modelo no lineal del Avión
59
donde
δCnLEF = CnLEF (α, β) − Cn (α, β, δe = 0)
δCnδa = Cnδa (α, β) − Cn (α, β, δe = 0)
δCnδa
LEF
= δCnδa
LEF
(α, β) − CnLEF (α, β) − δCnδa
δCnδr = δCnδr (α, β) − Cn (α, β, δe = 0)
Capítulo 5
Resultados del Trabajo de Investigación
Como se estableció anteriormente, el control del avión requiere de técnicas que posean propiedades
de robustez y adaptabilidad, más aún, cuando se requiere que tal sistema de control contenga un
mecanismo de tolerancia a fallas y rechazo a perturbaciones; sin entrar en el campo de los controladores no lineales y de manera general, se describe a continuación el procedimiento de diseño y
los resultados en simulación del esquema de control tolerante a fallas aplicado al modelo de 6-DOF
para ejes de tierra del avión F16 lineal por pedazos, utilizando dos tipos de observadores para el
esquema de detección y aislamiento de fallas, Luenberguer y de entradas desconocidas, así como
dos tipos de controladores; retroalimentación del estado y lineal cuadrático ambos adaptables de
ganancias programadas para el esquema de FTC activo. Dado su alcance, el proyecto de investigación se basa en los trabajos realizados por Richard S. Russell de la universidad de Minnesota
EUA [48] para el modelado y generación del PWLS, así como para el diseño del FTC que valida
la dinámica en simulación del avión real haciendo posible la obtención de la respuesta de un F16
usando dos modelos: uno de baja fidelidad y el otro de alta fidelidad. El primero se refiere a los
trabajos reportados en Stevens y Lewis [53] y el segundo a los trabajos realizados por la NASA, [39].
El modelo lineal por pedazos del F16 gobernado por su propia ley de conmutación se construyó
utilizando Simulink r el cual requiere de 4 entradas de control: la propulsión (thrust δe lbf), la
deflexión del alerón (aileron deflection δa deg), la deflexión del elevador (elevator deflection δe deg)
y la deflexión del timón (rudder deflection δr deg), a la salida se obtienen 18 variables de estado;
12 de Navegación: la posición norte (North position) N pos(f t.), la posición este (East position)
Epos(f t.), altura (altitude) h(f t.), ángulo de alabeo (roll angle) φ(deg.), ángulo de cabeceo (pitch
angle) θ(deg.), ángulo de viraje (yaw angle) ψ(deg.), velocidad total (total velocity) vt (f t/s), ángulo
60
Capítulo 5. Resultados del Trabajo de Investigación
61
de ataque (angle of attack) α(deg.), ángulo de deslizamiento lateral (angle of side-slip) β(deg.), velocidad angular de alabeo (roll rate) φ̇(deg/s.), velocidad angular de cabeceo (pitch rate) θ̇(deg/s.),
velocidad angular de viraje (yaw rate) ψ̇(deg/s.) y 6 Aerodinámicas: las aceleraciones normalizadas en las direcciones (normalized accelerations) x, y y z (anx , any , anz ), el número de mach (mach
number), la presión dinámica (free-stream dynamic pressure) q̄(lb/f t2) y la presión estática (static
pressure) Ps (lb/f t2 ). Dado el anterior breviario se presenta el desarrollo del controlador comenzando
con el planteamiento del problema.
5.1.
Planteamiento del Problema
El problema de control con tolerancia a fallas al que se enfrenta este trabajo de investigación, básicamente es el siguiente:
XEstabilización de cuerpo: Sean hn , vn dos variables de altitud y velocidad correspondientes
T
a algún movimiento traslacional arbitrario; PCM/O = Pi y ω0 ∼
= [0 0 0] la posición del centro de
masa del avión relativo al origen del marco de referencia inercial y el vector de velocidades angulares
de equilibrio correspondientemente. Diseñar una estrategia de control tal que:

hT

 v
T

lı́m 
t→∞  P
 CM/O
ωb/i


hn
 
  v
  n
=
  Phn
 
ω0







(5.1)
T
XSeguimiento de trayectoria: Sea yref = hTref vTref φ θ ψ α β P Q R la trayectoria de altitud y velocidad deseada. Diseñar un controlador tal que:
lı́m y = yref
t→∞
(5.2)
XTolerancia a fallas en sensores de altitud y velocidad:
h
iT
F
cierta condición de falla en un instante de tiempo t,
Sea yref
= hFTref vTFref φ θ ψ α β P Q R
Diseñar una estrategia de control tolerante a fallas tal que:
lı́m y F ∼
= yref
t→∞
(5.3)
Capítulo 5. Resultados del Trabajo de Investigación
5.1.1.
62
Propuesta de Solución y Estructura del Controlador
Para llevar a cabo el control tolerante a fallas lineal por pedazos aplicado al modelo en cuestión, se
consideraron 5 hipótesis bajo la suposición de que la entrada de control es lineal y se puede realizar
la estabilización mediante el uso de un controlador dinámico por retroalimentación:
Hipótesis 1: Es posible lograr el seguimiento asintótico de trayectorias para el modelo
del avión con referencias de tipo escalón para altitud y velocidad mediante un controlador
lineal por pedazos gobernado por su propia ley de conmutación.
Hipótesis 2: Es posible garantizar estabilidad y lograr el desempeño en la trayectoria
deseada del avión en lazo cerrado mediante una ley de control dinámica dependiente de la
salida vía retroalimentación [58],[23].
Hipótesis 3: Es posible optimizar dicha ley de control mediante la adición de una acción
integral para eliminar el error en régimen permanente y rechazo a perturbaciones, además de tener resuelto con este método el problema de seguimiento de modelo implícito
(seguimiento de referencias).
Hipótesis 4: Es posible el diseño de un esquema de detección y aislamiento de fallas
basado en un banco de observadores generalizados (GOS) para la generación de residuos
robustos con la información de la entrada y salida del modelo del avión [12].
Hipótesis 5: Es posible el diseño de un sistema de control tolerante a fallas lineal por
pedazos gobernado por una ley de conmutación conocida y dependiente del tiempo para
el modelo del avión basado en un controlador adaptable de ganancias programadas y su
propio esquema de detección y aislamiento de fallas [30],[32],[35].
Para el caso de estudio se pretende, además de llevar a cabo el análisis de estabilidad por medio
de la teoría de Lyapunov para los modos en consideración, realizar la estabilización del sistema por
Capítulo 5. Resultados del Trabajo de Investigación
63
retroalimentación dinámica equivalente a la ubicación de eigenvalores y eigenvectores en línea, ya
que existe un desafío interesante en los modos lineales generados para cada punto de operación, y
es, el que se tienen variables de estado no medibles pero reconstruibles importantes para el control,
además de recordar el hecho de que el esquema de tolerancia a fallas se aplicará a sensores, por
lo que debemos obtener la medición de la salida para tal propósito. En la figura B.2 se presenta
el esquema de control propuesto donde en el bloque 1 tenemos el banco de ganancias adaptables
programadas para el efecto de diseño en este tema de investigación, en el bloque 2 esta la planta a
ser controlada donde se hallan programadas las ecuaciones de 6-DOF en ejes de cuerpo para tierra
plana, la señal de conmutación conocida y dependiente del tiempo se encuentra en el bloque 3,
actuando como el operador automático entre los controladores, en el bloque 4 está el sistema de
detección y aislamiento de fallas formado por un banco de observadores generalizados así como el
observador propio de control, y por último, en el bloque 5 el monitoreo de las señales controladas.
A continuación se muestra el desarrollo del controlador.
Figura 5.1: Esquema de Control Propuesto Para el Modelo del Avión Falcon F-16.
5.2.
Diseño del Sistema Lineal por Pedazos
El desarrollo del sistema a ser particionado mediante la técnica ya estudiada para lograr el control
del avión requiere en primera instancia, del máximo conocimiento del sistema no lineal como tal,
esto es, conocer de manera general los aspectos fundamentales de aerodinámica. En esta sección se
mostrará la técnica empleada de linealización numérica para el diseño de sistemas lineales concebidos
mediante puntos específicos de operación, con el objetivo de calcular el control tolerante a fallas
del sistema lineal por pedazos. Una ventaja directa del empleo de la linealización numérica, es en
Capítulo 5. Resultados del Trabajo de Investigación
64
principio, el hacer uso de una computadora y algoritmos de optimización que toman como base
puntos de operación relativos a la altura y velocidad a la que se requiere el sistema lineal [49],
minimizando una función de costo [48] que esta definida por:
2
cost = 5ḣ2 + 2V˙T + 10α̇2 + 10β̇ 2 + Wφ φ̇2 + Wθ θ̇2 + Wψ ψ̇ 2 + 10Ṗ 2 + 10Q̇2 + 10Ṙ2
(5.4)
donde:
h : Altitud de vuelo
VT : V elocidad traslacional de vuelo
α : Ángulo de ataque
β : Ángulo de deslizamiento lateral
Wj : P esos respectivos a los ángulos (alabeo, cabeceo y viraje)
P, Q, R : V elocidades angulares respectivas
El minimizar la función de costo implica el estado donde las variables han alcanzado el equilibrio,
esto es, que el sistema no presenta variaciones. Las condiciones iniciales del algoritmo para el ajuste
de las variables son: Propulsión (thrust) = 5000 lbf; elevador (elevator) = -0.09 deg; ángulo de
ataque (alpha) = 8.49 deg; timón (rudder) = -0.01 deg; alerón (aileron) = 0.01 deg; que son las
entradas de control excepto el ángulo de ataque, las demás variables se asumen cercanas a cero. La
altura y velocidad son introducidas al sistema para especificar el punto de operación y el algoritmo
devuelve las matrices en espacio de estados A, B, C, D. Las condiciones de vuelo junto con sus
restricciones son:
Vuelo estable con alas a nivel (VRN)(Steady Wings-Level Flight)
Vuelo estable en vuelta a nivel (Steady Turning Flight)
Vuelo estable en ascenso (Steady Pull-Up Flight)
Vuelo estable en giro (Steady Roll Flight)
φ, φ̇, θ̇, ψ̇ ∼
=0
∼0
φ̇, θ̇ =
φ, φ̇, ψ̇ ∼
=0
∼
θ̇, ψ̇ = 0
Los valores aceptables para las condiciones de vuelo y linealización se muestran en el cuadro ??.
El algoritmo para la generación del sistema lineal en un punto específico de operación es el mostrado
en la figura 5.2 [49]. Basados en los preceptos anteriores, la dinámica no lineal del avión puede expresarse como un equivalente en sistemas lineales por pedazos bajo su propio criterio de conmutación,
Capítulo 5. Resultados del Trabajo de Investigación
Variable
Altitud
Ángulo de ataque
Propulsión
Elevador
Alerón
Timón
Velocidad
Unidades
ft
deg
lbs.f
deg
deg
deg
ft/s
65
LOFI(Mín,Máx)
5000—40000
-10—45
1000—19000
-25—25
-21.5—21.5
-30—30
300—900
HIFI(Mín,Máx)
5000—40000
-10—90
1000—19000
-25—25
-21.5—21.5
-30—30
300—900
Cuadro 5.1: Valores Aceptables para las Condiciones de Vuelo y Linealización.
Figura 5.2: Algoritmo para la Generación del Sistema Lineal por Pedazos del Modelo del Avión
Falcon F-16.
por lo tanto, la dinámica lineal de la planta es:
ẋ(t) = Ai x(t) + Bi u(t) + Ei z(t)
x(t0 ) = x0
(5.5)
y(t) = Ci x(t) + Di u(t) + Gi w(t)
i(t) = γ(t)
donde A ∈ R7x7 , B ∈ R7x2 , C ∈ R5x7 y D ∈ R5x2 E ∈ R7x1 , G ∈ R5x1 , i ∈ M = {1, 2, ..., j} como
el conjunto índice y x ∈ R7 como el vector de estados para el modo longitudinal (modelo reducido)
h
iT
xT = h θ v α θ̇ δT δe
(5.6)
Capítulo 5. Resultados del Trabajo de Investigación
66
y
uT = [δT δe ]T ,
h
iT
y T = h θ v α θ̇
(5.7)
Siendo la altura y velocidad las variables de importancia a controlar para el vuelo del avión, sin
embargo, para objeto de este trabajo de investigación, nuestro controlador a diseñar mediante
los modos descritos anteriormente debe satisfacer lo establecido en el capítulo 3, esto es, el sistema con falla en los sensores de altitud y velocidad de tipo aditiva y abrupta (escalón) (Ffs =
diag [fh
0 fv
0 0 0 0])
ẋ(t) = Ai x(t) + Bi u(t) + Ei z(t)
x(t0 ) = x0
(5.8)
y(t) = Ci x(t) + Di u(t) + Gi w(t) + Fi fs
i(t) = γ(t)
debe aproximarse en lo posible mediante una ley de control adecuada al comportamiento del sistema (5.5). En el Cuadro 5.2 se esquematiza de manera sistemática el procedimiento de diseño del
controlador tolerante a fallas. A continuación se muestran las ganancias del observador de control,
así como la función común de Lyapunov. Los polos del subsistema 1 son:
− 1,0569 − 0,7883i 0,0000
p1 = [−1,0569 + 0,7883i
− 0,0055 − 0,0604i
− 1,0000
pobs = [−605 − 505
− 545
− 0,0055 + 0,0604i
− 20,2000]T
− 545
− 25
− 475
− 430]T


−2,1601e − 4 483,5391
0,0181 −325,6184
52,4617
0,0024
−0,6693


 483,5391

2,3386e5
8,7237
−1,5448e5
2,5373e4
1,0548
−323,6984





 0,0181
8,7237
0,9921
−5,9485
0,9298
0,0361
−0,0118




P =  −325,6184
−1,5748e5 −5,9485 1,0605e5 −1,7086e4 −1,0619
217,9774 


 52,4617
2,5373e4
0,9298 −1,7086e4 2,7519e3
0,0349
−35,1204 





 0,0024
1,0548
0,0361
−1,0619
0,0349
−0,8283
−3,4208e
−
5


−0,6693
−323,6948 −0,0118 217,9774
−35,1204 −3,4208
−0,5519
Capítulo 5. Resultados del Trabajo de Investigación
67
Procedimiento sistemático de Diseño del Controlador
XConfiguración de las referencias acorde a la tarea de vuelo específica.
XDesarrollar la dinámica del sistema no lineal en un PWLS.
XDe acuerdo a la dinámica deseada del sistema,
diseño de la ley de conmutación, en este caso dependiente del tiempo.
XAnálisis de Observabilidad de cada uno de los modos del PWLS.
XAnálisis de Controlabilidad de cada uno de los modos del PWLS.
XDiseño del esquema robusto de detección y aislamiento de fallas en sensores.
XDiseño del observador para la reconstrucción de las variables
no medibles pero detectables para el controlador (i).
XCálculo fuera de línea de las ganancias del controlador sin falla.
XCálculo fuera de línea de las ganancias del controlador
con falla en sensores de altitud y velocidad.
XConfiguración del controlador adaptable por ganancias programadas.
XConfiguración del esquema completo de FTC.
Cuadro 5.2: Procedimiento Sistemático para el Diseño del FTC.
5.3.
Simulación del Sistema Lineal por Pedazos
Esta sección se enfoca principalmente a la validación del esquema de control propuesto evaluando
desempeño y robustez en simulación mediante el paquete de programación de M atlabR (códigos) y
Simulink R (Bloques), marcas registradas de The MathWorks. Los sistemas lineales se obtuvieron
en base a los siguientes puntos de operación:
Modo
1
2
3
4
5
6
Punto de Operación h(f t), v(f t/s)
5000—500
6000—500
7000—500
8000—500
9000—500
10000—500
Cuadro 5.3: Puntos de operación para la generación de modelos lineales.
Los modelos para cada punto de operación específico están formados por:
modo1(A, B, C, D), modo2(A1 , B, C, D), modo3(A2 , B, C, D), modo4(A3 , B, C, D),
modo5(A4 , B, C, D), modo6(A5 , B, C, D), ver Apéndice A. Con base en los modelos anteriores y la
teoría establecida en el capítulo 3 se llevo a cabo el diseño del control tolerante a fallas, realizando
primero el diseño en los sistemas lineales para posteriormente aplicar los controladores al modelo
no lineal. El vector de condiciones iniciales para el caso de diseño es el siguiente:
xT = [0
0
0
0
0]
(5.9)
Capítulo 5. Resultados del Trabajo de Investigación
68
Como se aprecia en la Figura 5.3 el tiempo de simulación es de 50 s., se tiene una referencia en la
Figura 5.3: Respuesta del modo 1 en los sensores de h, v, θ, α, q y Respuesta estimada con el
observador.
altitud igual a 1000 ft. y una velocidad de referencia inicial de 0 ft/s. que son las variables de interés a
controlar en particular (caso de diseño con esquema de FDI basado en el observador de Luenberguer
generalizado y controlador dinámico por retroalimentación del estado para el modo 1 en sensores
de altitud y velocidad). La Figura anterior corresponde al caso libre de falla en los dos sensores de
Capítulo 5. Resultados del Trabajo de Investigación
69
altitud y velocidad, como se observa el controlador converge a la referencia en un tiempo aproximado
de 15 s. A continuación se presenta la Figura 5.4, correspondiente a una falla abrupta tipo escalón
en el sensor de altitud de +20 % al segundo 20 de la simulación así como se muestra el Cuadro 5.4
correspondiente a la matriz de fallas del sistema. Puede observase al modelo 1 con falla en el sensor
Modelo
1
2
3
4
5
6
0: sin falla, 1: con falla
Sen. Altura.
1
0
0
0
0
0
Sen. Velocidad.
0
0
0
0
0
0
Sen. α
0
0
0
0
0
0
Sen. δe
0
0
0
0
0
0
Sen. δa
0
0
0
0
0
0
Sen. δr
0
0
0
0
0
0
Cuadro 5.4: Matriz de fallas del sistema lineal por pedazos con falla simple a los 20 s.
de altura, los sensores de velocidad, ángulo de ataque α, deflexión del elevador δe , deflexión del
alerón δa y deflexión del timón δr , son compensados también para la misma falla. Puede observarse
Figura 5.4: Respuesta del modo 1 en los sensores de altitud y velocidad con falla simple en Sh
del tipo escalón f = +20 %, t = 20 s, y Respuesta con observador.
que ante la falla el control tolerante a fallas compensa la desviación existente y reintegra la referencia
a la medición del sensor de altitud. La respuesta del sistema reconstruida con el observador muestra
claramente la acomodación de la falla (Verde) y la señal del sensor fallado (azul) para la altura. La
Figura 5.5 muestra el comportamiento de las 3 señales restantes que también son afectadas por la
falla abrupta, pero debido al acoplamiento con las variables de velocidad y altura se acomodan a
la falla. La Figura 5.6 presenta la respuesta ante una falla abrupta simultanea entre en sensor de
altitud y velocidad de -20 % en el segundo 30 de la simulación, esto con la finalidad de verificar la
Capítulo 5. Resultados del Trabajo de Investigación
70
Figura 5.5: Respuesta de las señales restantes con falla simple f = +20 %, t = 20 s, y Respuesta
con observador.
robustez del esquema de FTC ante la falla simultanea, ruido y perturbaciones. En el Cuadro 5.5 se
muestra la matriz de fallas del sistema para este tipo de falla. La respuesta del sistema para el sensor
de altura y velocidad nuevamente es compensada por el esquema de FTC y es llevada a la referencia
con un error aceptable, el análisis así como el diseño de los 4 controladores con tolerancia a fallas
restantes se realizó de forma similar, los Cuadros 5.6 y 5.7 muestran los índices de desempeño con
el fin de evaluar los dos tipos de controladores lineales diseñados.
Modelo
1
2
3
4
5
6
0: sin falla, 1: con falla
Sen. Altura.
1
0
0
0
0
0
Sen. Velocidad.
1
0
0
0
0
0
Sen. α
0
0
0
0
0
0
Sen. δe
0
0
0
0
0
0
Sen. δa
0
0
0
0
0
0
Sen. δr
0
0
0
0
0
0
Cuadro 5.5: Matriz de fallas del sistema lineal por pedazos con falla múltiple t = 30 s.
Capítulo 5. Resultados del Trabajo de Investigación
Figura 5.6: Respuesta del modo 1 en los sensores de altitud y velocidad con falla múltiple tipo
escalón f = −20 %, t = 30 s, y Respuesta con observador.
Figura 5.7: Respuesta de las señales restantes con falla múltiple f = −20 %, t = 30 s, y Respuesta
con observador.
71
Capítulo 5. Resultados del Trabajo de Investigación
Controlador
Retroalimentación de estados
Linear Cuadrático (Óptimo)
IAE
0.581
0.456
72
ISE
0.498
0.298
ITAE
0.702
0.567
Var(e)
0.291
0.101
RMS(e)
0.110
0.098
Cuadro 5.6: Índices de desempeño de los controladores con tolerancia a fallas acerca del error de
regulación.
Controlador
Retroalimentación de estados
Linear Cuadrático (Óptimo)
Atributos
Precisión ( %)
Sobrepico ( %)
Rapidez
Persistencia ( %)
Robustez
Agresividad ( %)
Esfuerzo de Control
ISU
0.6250
0.325
IADU
0.756
0.556
Retroalimentación de estados
97.863
1.895
1.955
95.763
0.657
90.565
0.689
Var(u)
0.210
0.187
RMS(u)
0.111
0.099
Linear Cuadrático (Óptimo)
98.521
0.956
2.899
97.678
0.799
88.546
0.365
Cuadro 5.7: Comparación de atributos de los controladores con tolerancia a fallas.
Claramente se observa en las tablas que el controlador con mejor desempeño es el lineal cuadrático1
5.4.
Simulación del control tolerante a fallas aplicado al modelo no
lineal del avión F16
El análisis de las gráficas y tablas anteriores muestra claramente el diseño robusto de los controladores lineales con tolerancia a fallas de manera que controla la planta aún con fallas abruptas
considerables, ruido y perturbaciones, ahora se presenta la simulación del sistema tolerante a fallas
aplicado al modelo del avión F16 modelado lineal por pedazos en un tiempo de navegación de 3
min., utilizando controladores adaptables de ganancias programadas retroalimentando el estado y
esquema de FDI con observador de Luenberguer para los sensores de altura y velocidad, será omitido
el caso libre de falla. En la Figura 5.8 se muestra la tolerancia a fallas en los sensores de altitud
y velocidad para el modelo no lineal del avión al instante 10 y 100 segundos respectivamente, los
umbrales para las señales precisan de ser pequeños para no exigir demás a los actuadores por lo
que las fallas son del 5 por ciento, como se puede observar no se pierde el control de la planta a
pesar de que la falla en el sensor de altura ocurre en el instante de conmutación del controlador 1 al
controlador 2 que es de 10 segundos para el ascenso, así se garantiza la continuidad y funcionalidad
del sistema.
1
Para ver detalles remitirse al apéndice B.
Capítulo 5. Resultados del Trabajo de Investigación
73
Figura 5.8: Respuesta del sistema en las señales de altura y velocidad, con falla múltiple fSh,v =
+5 %, tfh = 10 s, tfv = 100 s, Zoom del instante de falla.
Hasta ahora se ha verificado con las Figuras anteriores el control tolerante a fallas aplicado al
modelo del avión F16 lineal por pedazos objetivo de este trabajo de investigación, sin embargo, a
continuación se muestra el resultado en simulación del esquema de FTC utilizando controladores
cuadráticos óptimos (LQR) adaptables de ganancias programadas el cual se analizó anteriormente y
su esquema de FDI basado en observadores de entradas desconocidas (UIO), dándole a este esquema
de FTC un grado mayor de robustez. La Figura 5.9 muestra el comportamiento correspondiente
para una trayectoria de navegación diferente, las señales de los sensores de altura y velocidad se
muestran en la Figura, se omite el caso libre de falla, el tiempo de simulación es de 3 min., las
fallas se presentan a los instantes 80 y 120 s. respectivamente, adicionando además perturbaciones
en los segundos 90, 92 y 94; 160,162 y 164 del tipo escalón de magnitud 15 % y -15 % del rango de
operación de cada modo que es de 0 − 1000f t. en altura y de 500 − 900f t/s en velocidad.
Así en las Figuras 5.8 y 5.9 se observa que el sistema de control con tolerancia a fallas diseñado
aproxima la respuesta deseada de la planta cuando existen desviaciones no permitidas en los sensores
de altitud y velocidad, La Figura 5.10 muestra la respuesta de las 16 variables restantes.
Capítulo 5. Resultados del Trabajo de Investigación
74
Figura 5.9: Respuesta del sistema no lineal con FTC óptimo para los sensores de altitud y velocidad presentando falla múltiple fSh,v = +10 %, tfh = 80 s, tfv = 120 s, Zoom del instante de
falla.
Con base en las gráficas anteriores los resultados del diseño de control tolerante a fallas aplicado al
modelo del avión que fue modelado lineal por pedazos son favorables, ya que se logró que la planta
con falla en los sensores de altura y velocidad en el campo lineal
N
N
N
N
N
Σ(CFi , AFi , BFi , KiF , OiF , CiF )M −→ Σ(CN
i , Ai , Bi , Ki , Oi , Ci )M
(5.10)
para objeto de diseño, cumpliera con el control y la tolerancia a fallas aplicado al modelo no lineal
del avión:
ẋ(t) = fσF (x(t), u(t), d(t))
y(t) = gσF (x(t), w(t))
=⇒
ẋ(t) = fσN (x(t), u(t), d(t))
y(t) = gσN (x(t), w(t))
(5.11)
Capítulo 5. Resultados del Trabajo de Investigación
75
Capítulo 5. Resultados del Trabajo de Investigación
Figura 5.10: Respuesta de las variables N pos, Epos, φ, θ, ψ α, β, p, q, r, nx, ny, nz, mach, Pe , Pd .
76
Capítulo 6
Conclusiones
Fundamentalmente el esquema de control tolerante a fallas persigue como consigna mantener las
referencias de control con cierta degradación aceptable en la respuesta del sistema si existe algún tipo
de falla en la planta dependiendo del diseño global del mismo, por lo que un esquema funcional de
FTC será capaz de compensarla. Para nuestro caso de estudio podemos establecer el hecho de haber
logrado en simulación los objetivos de control para el avión Falcon F16 modelado como PWLS
para el diseño de los controladores tolerantes a fallas con sus propias restricciones considerando
fallas aditivas y abruptas en los sensores de altitud y velocidad por lo que podemos establecer las
siguientes Observaciones:
Observación 1: Es posible analizar la dinámica del avión mediante el modelo reducido longitudinal con las variables más importantes que son la altitud (h), velocidad (v), ángulo de cabeceo
(θ) y ángulo de ataque (α), así como el diseño de los controladores lineales con tolerancia a fallas
por cada punto de operación (modelado de sistemas lineales por pedazos) para posteriormente
aplicarlo al modelo no lineal.
Observación 2: Es posible el control tolerante a fallas lineal por pedazos garantizando estabilidad asintótica del modelo en cuestión obteniendo una función común de Lyapunov para los
modos del sistema y mediante un lazo dinámico retroalimentando el estado llevando a cabo el
análisis de cada una de las aproximaciones lineales para la estabilidad, observabilidad y controlabilidad haciendo uso de herramientas matemáticas sencillas y poderosas para su diseño, así como
una correcta ubicación de polos para obtención de las ganancias de control y compensación.
77
Capítulo 6. Conclusiones
6.1.
78
Logros Obtenidos
Además de haber cumplido con el objetivo de este trabajo de investigación, se logró la publicación
de un articulo en el Congreso Nacional de Control Automático CNCA 2013 en la ciudad y puerto
de Ensenada, Baja California, organizado conjuntamente por la Asociación de México de Control
Automático (AMCA) y el Centro de Investigación Científica y de Educación Superior de Ensenada,
B.C. (CICESE), con el titulo: Control Tolerante a Fallas de un sistema Lineal por Pedazos, y se
trabaja con la publicación de una revista sobre este tema de investigación.
6.2.
Trabajos Futuros
Se sugiere la realización de un esquema de control lineal con tolerancia a fallas utilizando la técnica
de modelo predictivo (MPC) para el mismo modelo PWL en sensores, o aún mejor el control activo
y en linea por modos deslizantes para probar el desempeño en simulación del avión en actuadores,
además de probar con un control pasivo.
Apéndice A
Modelos Lineales Por Pedazos
79
Appendix A. Modelos Lineales Por Pedazos
80
Apéndice B
Diagramas De Bloques de los Programas
Implementados
Figura B.1: Diagrama de bloques para la simulaciÃşn y diseÃśo de los controladores lineales por
pedazos.
81
Appendix B. Diagramas De Bloques de los Programas Implementados
Figura B.2: Diagrama de bloques para la simulación del esquema completo de control tolerante
a fallas lineal por pedazos aplicado al modelo no lineal.
82
Apéndice C
Algoritmos
%================================================
%
Matlab Script File used to run the
%
non-linear F-16 Simulation.
%
will also be saved to a file and plotted.
The results
%
% Author: Richard S. Russell
%
%================================================
clear;
clc;
global altitude fi_type velocity fi_flag_Simulink;
global surface1 surface2 surface3;
global ElevatorDis AileronDis RudderDis;
surface1 = ’ele_’;
surface2 = ’ail_’;
surface3 = ’rud_’;
newline = sprintf(’\n’);
83
Appendix C. Algoritmos
84
disp(’This is an F-16 Simulation.’);
disp(’The simulation will begin by asking you for the flight ’);
disp(’conditions for which the simulation will be performed.’);
disp(newline);
disp(’Acceptable values for flight condition parameters are:’);
disp(newline);
disp(’
disp(’
Model’);
Variable
disp(’
LOFI
HIFI’);
Units
Min
Max
Min
Max’);
5000
40000
5000
40000’);
disp(’
Altitude:
ft
disp(’
AOA
deg
disp(’
Thrust
lbs
1000
19000
1000
19000’);
disp(’
Elevator
deg
-25.0
25.0
-25.0
25.0’);
disp(’
Aileron
deg
-21.5
21.5
-21.5
21.5’);
disp(’
Rudder
deg
-30
30
-30
30’);
disp(’
Velocity
ft/s
-10
45
300
900
-10
300
90’);
900’);
disp(newline);
disp(newline);
disp(’The flight condition you choose will be used to trim the F16.’);
disp(’Note:
The trim routine will trim to the desired’);
disp(’altitude and velocity.
All other parameters’);
disp(’will be varied until level flight is achieved.
’);
disp(’You may need to view the results of the simulation’);
disp(’ and retrim accordingly.’);
disp(newline);
disp(newline);
%% Ask user which simulation to run.
%%
disp(’Which model would you like to use to trim the aircraft:’)
disp(’
1. Low Fidelity F-16 Trim’)
disp(’
2. High Fidelity F-16 Trim’)
fi_flag = input(’Your Selection:
disp(newline);
disp(newline);
’);
Appendix C. Algoritmos
85
%% Determine from flag the correct simulation.
%%
if fi_flag == 1;
fi_type = ’lofi’;
fi_flag_Simulink = 0;
elseif fi_flag == 2;
fi_type = ’hifi’;
fi_flag_Simulink = 1;
else
disp(’Invalid selection’);
break;
end
%% Trim aircraft to desired altitude and velocity
%%
altitude = input(’Enter the altitude for the simulation (ft)
:
’);
velocity = input(’Enter the velocity for the simulation (ft/s):
’);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Initialize some varibles used to create disturbances. %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
DisEle_1 = 0;
DisEle_2 = 0;
DisEle_3 = 0;
DisAil_1 = 0;
DisAil_2 = 0;
DisAil_3 = 0;
DisRud_1 = 0;
DisRud_2 = 0;
DisRud_3 = 0;
ElevatorDis = 0; AileronDis = 0;
RudderDis = 0;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Find out which surface to create a disturbance on.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
elseif dis_flag == ’n’
surfacedef = ’none’;
else
%do nothing
Appendix C. Algoritmos
86
disp(’Invalid Selection’);
break;
end
disp(newline);
disp(newline);
delta_T = 0.001;
TStart = 0; TFinal = 30;
%% Initial Conditions for trim routine.
%% The following values seem to trim to most
%% flight condition.
If the F16 does not trim
%% Change these values.
thrust = 5000;
% thrust, lbs
elevator = -0.09;
% elevator, degrees
alpha = 8.49;
% AOA, degrees
rudder = -0.01;
% rudder angle, degrees
aileron = 0.01;
% aileron, degrees
fprintf(fid_trim,heading1);
fprintf(fid_trim,heading2);
fid_trim = fopen(trim_file, ’a’);
for row = 1 : 1 : length(y_sim(:,1))
fprintf(fid_trim,’%8.5f,’,T(row,:));
for column = 1 : 1 : length(y_sim(1,:))
fprintf(fid_trim,’%8.5f,’,y_sim(row,column));
end
for column = 1:1:length(surfaces(1,:))
fprintf(fid_trim,’%8.5f,’,surfaces(row,column));
end
fprintf(fid_trim,’\n’);
Appendix C. Algoritmos
87
end
fclose(fid_trim);
plot_flag = input(’Plot results (y/n):
’, ’s’);
if plot_flag == ’n’
break;
else
graphF16;
end
#include "math.h"
/*
Merging the nlplant.c (lofi) and nlplant_hifi.c to use
same equations of motion, navigation equations and use
own look-up tables decided by a flag.
*/
void atmos(double,double,double*);
/* Used by both */
void accels(double*,double*,double*);
/* Used by both */
#include "lofi_F16_AeroData.c"
/* LOFI Look-up header file*/
#include "hifi_F16_AeroData.c"
/* HIFI Look-up header file*/
void nlplant(double*,double*);
/*########################################*/
/*### Added for mex function in matlab ###*/
/*########################################*/
int fix(double);
int sign(double);
void mexFunction(int nlhs, mxArray *plhs[],
int nrhs, const mxArray *prhs[])
{
Appendix C. Algoritmos
#define XU prhs[0]
#define XDOTY plhs[0]
int i;
double *xup, *xdotp;
if (mxGetM(XU)==18 && mxGetN(XU)==1){
/* Calling Program */
xup = mxGetPr(XU);
XDOTY = mxCreateDoubleMatrix(18, 1, mxREAL);
xdotp = mxGetPr(XDOTY);
nlplant(xup,xdotp);
/* debug
for (i=0;i<=14;i++){
printf("xdotp(%d) = %e\n",i+1,xdotp[i]);
}
end debug */
} /* End if */
else{
mexErrMsgTxt("Input and/or output is wrong size.");
} /* End else */
} /* end mexFunction */
/*########################################*/
/*########################################*/
88
Appendix C. Algoritmos
89
void nlplant(double *xu, double *xdot){
int fi_flag;
/* #include f16_constants */
double g
= 32.17;
/* gravity, ft/s^2 */
double m
= 636.94;
/* mass, slugs */
double B
= 30.0;
/* span, ft */
double S
= 300.0;
/* planform area, ft^2 */
double cbar = 11.32;
/* mean aero chord, ft */
double xcgr = 0.35;
/* reference center of gravity */
double xcg
/* center of gravity as a fraction of cbar. */
= 0.30;
double Heng = 0.0;
double pi
= acos(-1);
double r2d;
/* radians to degrees */
/*NasaData
double Jy
/* turbine momentum along roll axis. */
%translated via eq. 2.4-6 on pg 80 of Stevens and Lewis*/
= 55814.0;
/* slug-ft^2 */
double Jxz = 982.0;
/* slug-ft^2 */
double Jz
= 63100.0;
/* slug-ft^2 */
double Jx
= 9496.0;
/* slug-ft^2 */
double *temp;
double npos, epos, alt, phi, theta, psi, vt, alpha, beta, P, Q, R;
double sa, ca, sb, cb, tb, st, ct, tt, sphi, cphi, spsi, cpsi;
double T, el, ail, rud, dail, drud, lef, dlef;
double qbar, mach, ps;
double U, V, W, Udot,Vdot,Wdot;
double L_tot, M_tot, N_tot, denom;
Appendix C. Algoritmos
90
double Cx_tot, Cx, delta_Cx_lef, dXdQ, Cxq, delta_Cxq_lef;
double Cz_tot, Cz, delta_Cz_lef, dZdQ, Czq, delta_Czq_lef;
double Cm_tot, Cm, eta_el, delta_Cm_lef, dMdQ, Cmq, delta_Cmq_lef;
double Cy_tot, Cy, delta_Cy_lef, dYdail, delta_Cy_r30, dYdR, dYdP;
double delta_Cy_a20, delta_Cy_a20_lef, Cyr, delta_Cyr_lef, Cyp;
double Cn_tot, Cn, delta_Cn_lef, dNdail, delta_Cn_r30, dNdR;
double delta_Cn_a20, delta_Cn_a20_lef, Cnr, delta_Cnr_lef;
double Cl_tot, Cl, delta_Cl_lef, dLdail, delta_Cl_r30, dLdR;
double delta_Cl_a20, delta_Cl_a20_lef, Clr, delta_Clr_lef;
temp = (double *)malloc(9*sizeof(double));
r2d
= 180.0/pi;
/*size of 9.1 array*/
/* radians to degrees */
/* %%%%%%%%%%%%%%%%%%%
States
%%%%%%%%%%%%%%%%%%% */
npos
= xu[0];
/* north position */
epos
= xu[1];
/* east position */
alt
= xu[2];
/* altitude */
phi
= xu[3];
/* orientation angles in rad. */
theta = xu[4];
psi
= xu[5];
vt
= xu[6];
/* total velocity */
alpha = xu[7]*r2d; /* angle of attack in degrees */
beta
= xu[8]*r2d; /* sideslip angle in degrees */
P
= xu[9];
/* Roll Rate --- rolling
Q
= xu[10];
/* Pitch Rate--- pitching moment is M */
R
= xu[11];
/* Yaw Rate
sa
= sin(xu[7]); /* sin(alpha) */
ca
= cos(xu[7]); /* cos(alpha) */
sb
= sin(xu[8]); /* sin(beta)
*/
cb
= cos(xu[8]); /* cos(beta)
*/
--- yawing
moment is Lbar */
moment is N */
Appendix C. Algoritmos
91
tb
= tan(xu[8]); /* tan(beta)
st
= sin(theta);
ct
= cos(theta);
tt
= tan(theta);
sphi
= sin(phi);
cphi
= cos(phi);
spsi
= sin(psi);
cpsi
= cos(psi);
*/
if (vt <= 0.01) {vt = 0.01;}
/* %%%%%%%%%%%%%%%%%%%
Control inputs
%%%%%%%%%%%%%%%%%%% */
T
= xu[12];
/* thrust */
el
= xu[13];
/* Elevator setting in degrees. */
ail
= xu[14];
/* Ailerons mex setting in degrees. */
rud
= xu[15];
/* Rudder setting in degrees. */
lef
= xu[16];
/* Leading edge flap setting in degrees */
fi_flag = xu[17]/1;
/* dail
= ail/20.0;
/* fi_flag */
aileron normalized against max angle */
/* The aileron was normalized using 20.0 but the NASA report and
S&L both have 21.5 deg. as maximum deflection. */
/* As a result... */
dail
= ail/21.5;
drud
= rud/30.0;
dlef
= (1 - lef/25.0);
/* rudder normalized against max angle */
/* leading edge flap normalized */
/* %%%%%%%%%%%%%%%%%%
Atmospheric effects
sets dynamic pressure and mach number
Appendix C. Algoritmos
%%%%%%%%%%%%%%%%%% */
atmos(alt,vt,temp);
mach = temp[0];
qbar = temp[1];
ps
= temp[2];
/*
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%Dynamics%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
*/
/* %%%%%%%%%%%%%%%%%%
Navigation Equations
%%%%%%%%%%%%%%%%%% */
U = vt*ca*cb;
/* directional velocities. */
V = vt*sb;
W = vt*sa*cb;
/* nposdot */
xdot[0] = U*(ct*cpsi) +
V*(sphi*cpsi*st - cphi*spsi) +
W*(cphi*st*cpsi + sphi*spsi);
/* eposdot */
xdot[1] = U*(ct*spsi) +
V*(sphi*spsi*st + cphi*cpsi) +
W*(cphi*st*spsi - sphi*cpsi);
/* altdot */
xdot[2] = U*st - V*(sphi*ct) - W*(cphi*ct);
/* %%%%%%%%%%%%%%%%%%%
Kinematic equations
92
Appendix C. Algoritmos
93
%%%%%%%%%%%%%%%%%%% */
/* phidot */
xdot[3] = P + tt*(Q*sphi + R*cphi);
/* theta dot */
xdot[4] = Q*cphi - R*sphi;
/* psidot */
xdot[5] = (Q*sphi + R*cphi)/ct;
/* %%%%%%%%%%%%%%%%%%
Table lookup
%%%%%%%%%%%%%%%%%% */
if (fi_flag == 1)
/* HIFI Table */
{
hifi_C(alpha,beta,el,temp);
Cx = temp[0];
Cz = temp[1];
Cm = temp[2];
Cy = temp[3];
Cn = temp[4];
Cl = temp[5];
hifi_damping(alpha,temp);
Cxq = temp[0];
Cyr = temp[1];
Cyp = temp[2];
Czq = temp[3];
Clr = temp[4];
Clp = temp[5];
Cmq = temp[6];
Cnr = temp[7];
Cnp = temp[8];
Appendix C. Algoritmos
94
hifi_C_lef(alpha,beta,temp);
delta_Cx_lef = temp[0];
delta_Cz_lef = temp[1];
delta_Cm_lef = temp[2];
delta_Cy_lef = temp[3];
delta_Cn_lef = temp[4];
delta_Cl_lef = temp[5];
hifi_damping_lef(alpha,temp);
delta_Cxq_lef = temp[0];
delta_Cyr_lef = temp[1];
delta_Cyp_lef = temp[2];
delta_Czq_lef = temp[3];
delta_Clr_lef = temp[4];
delta_Clp_lef = temp[5];
delta_Cmq_lef = temp[6];
delta_Cnr_lef = temp[7];
delta_Cnp_lef = temp[8];
hifi_rudder(alpha,beta,temp);
delta_Cy_r30 = temp[0];
delta_Cn_r30 = temp[1];
delta_Cl_r30 = temp[2];
hifi_ailerons(alpha,beta,temp);
delta_Cy_a20
= temp[0];
delta_Cy_a20_lef = temp[1];
delta_Cn_a20
= temp[2];
delta_Cn_a20_lef = temp[3];
delta_Cl_a20
= temp[4];
delta_Cl_a20_lef = temp[5];
hifi_other_coeffs(alpha,el,temp);
delta_Cnbeta = temp[0];
delta_Clbeta = temp[1];
delta_Cm
= temp[2];
Appendix C. Algoritmos
95
eta_el
= temp[3];
delta_Cm_ds
= 0;
/* ignore deep-stall effect */
}
else if (fi_flag == 0)
{
/* ##############################################
##########LOFI Table Look-up #################
##############################################*/
/* The lofi model does not include the
leading edge flap.
All terms multiplied
dlef have been set to zero but just to
be sure we will set it to zero. */
dlef = 0.0;
damping(alpha,temp);
Cxq = temp[0];
Cyr = temp[1];
Cyp = temp[2];
Czq = temp[3];
Clr = temp[4];
Clp = temp[5];
Cmq = temp[6];
Cnr = temp[7];
Cnp = temp[8];
dmomdcon(alpha,beta, temp);
delta_Cl_a20 = temp[0];
/* Formerly dLda in nlplant.c */
delta_Cl_r30 = temp[1];
/* Formerly dLdr in nlplant.c */
delta_Cn_a20 = temp[2];
/* Formerly dNda in nlplant.c */
delta_Cn_r30 = temp[3];
/* Formerly dNdr in nlplant.c */
clcn(alpha,beta,temp);
Appendix C. Algoritmos
96
Cl = temp[0];
Cn = temp[1];
cxcm(alpha,el,temp);
Cx = temp[0];
Cm = temp[1];
Cy = -.02*beta + .021*dail + .086*drud;
cz(alpha,beta,el,temp);
Cz = temp[0];
/*##################################################
/*##################################################
##
Set all higher order terms of hifi that are ##
##
not applicable to lofi equal to zero. ########
##################################################*/
delta_Cx_lef
= 0.0;
delta_Cz_lef
= 0.0;
delta_Cm_lef
= 0.0;
delta_Cy_lef
= 0.0;
delta_Cn_lef
= 0.0;
delta_Cl_lef
= 0.0;
delta_Cxq_lef
= 0.0;
delta_Cyr_lef
= 0.0;
delta_Cyp_lef
= 0.0;
delta_Czq_lef
= 0.0;
delta_Clr_lef
= 0.0;
delta_Clp_lef
= 0.0;
delta_Cmq_lef
= 0.0;
delta_Cnr_lef
= 0.0;
delta_Cnp_lef
= 0.0;
delta_Cy_r30
= 0.0;
delta_Cy_a20
= 0.0;
Appendix C. Algoritmos
97
delta_Cy_a20_lef= 0.0;
delta_Cn_a20_lef= 0.0;
delta_Cl_a20_lef= 0.0;
delta_Cnbeta
= 0.0;
delta_Clbeta
= 0.0;
delta_Cm
= 0.0;
eta_el
= 1.0;
delta_Cm_ds
= 0.0;
/* Needs to be one */
/*##################################################
##################################################*/
}
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
compute Cx_tot, Cz_tot, Cm_tot, Cy_tot, Cn_tot, and Cl_tot
(as on NASA report p37-40)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
/* XXXXXXXX Cx_tot XXXXXXXX */
dXdQ = (cbar/(2*vt))*(Cxq + delta_Cxq_lef*dlef);
Cx_tot = Cx + delta_Cx_lef*dlef + dXdQ*Q;
/* ZZZZZZZZ Cz_tot ZZZZZZZZ */
dZdQ = (cbar/(2*vt))*(Czq + delta_Cz_lef*dlef);
Cz_tot = Cz + delta_Cz_lef*dlef + dZdQ*Q;
/* MMMMMMMM Cm_tot MMMMMMMM */
dMdQ = (cbar/(2*vt))*(Cmq + delta_Cmq_lef*dlef);
Cm_tot = Cm*eta_el + Cz_tot*(xcgr-xcg);
Appendix C. Algoritmos
98
/* YYYYYYYY Cy_tot YYYYYYYY */
dYdail = delta_Cy_a20 + delta_Cy_a20_lef*dlef;
dYdR = (B/(2*vt))*(Cyr + delta_Cyr_lef*dlef);
dYdP = (B/(2*vt))*(Cyp + delta_Cyp_lef*dlef);
Cy_tot = Cy + delta_Cy_lef*dlef + dYdail*dail;
/* NNNNNNNN Cn_tot NNNNNNNN */
dNdail = delta_Cn_a20 + delta_Cn_a20_lef*dlef;
dNdR = (B/(2*vt))*(Cnr + delta_Cnr_lef*dlef);
dNdP = (B/(2*vt))*(Cnp + delta_Cnp_lef*dlef);
Cn_tot = Cn + delta_Cn_lef*dlef - Cy_tot*(xcgr-xcg)*(cbar/B) + dNdail*dail + delta_Cn_r30*drud
/* LLLLLLLL Cl_tot LLLLLLLL */
dLdail = delta_Cl_a20 + delta_Cl_a20_lef*dlef;
dLdR = (B/(2*vt))*(Clr + delta_Clr_lef*dlef);
dLdP = (B/(2*vt))*(Clp + delta_Clp_lef*dlef);
Cl_tot = Cl + delta_Cl_lef*dlef + dLdail*dail;
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
compute Udot,Vdot, Wdot,(as on NASA report p36)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
Udot = R*V - Q*W - g*st + qbar*S*Cx_tot/m + T/m;
Appendix C. Algoritmos
99
Vdot = P*W - R*U + g*ct*sphi + qbar*S*Cy_tot/m;
Wdot = Q*U - P*V + g*ct*cphi + qbar*S*Cz_tot/m;
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
vt_dot equation (from S&L, p82)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
xdot[6] = (U*Udot + V*Vdot + W*Wdot)/vt;
/* %%%%%%%%%%%%%%%%%%
alpha_dot equation
%%%%%%%%%%%%%%%%%% */
xdot[7] = (U*Wdot - W*Udot)/(U*U + W*W);
/* %%%%%%%%%%%%%%%%%
beta_dot equation
%%%%%%%%%%%%%%%%% */
xdot[8] = (Vdot*vt - V*xdot[6])/(vt*vt*cb);
/* %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
compute Pdot, Qdot, and Rdot (as in Stevens and Lewis p32)
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% */
L_tot = Cl_tot*qbar*S*B;
M_tot = Cm_tot*qbar*S*cbar;
N_tot = Cn_tot*qbar*S*B;
denom = Jx*Jz - Jxz*Jxz;
/* %%%%%%%%%%%%%%%%%%%%%%%
Pdot
/* get moments from coefficients */
Appendix C. Algoritmos
%%%%%%%%%%%%%%%%%%%%%%% */
xdot[9] =
(Jz*L_tot + Jxz*N_tot - (Jz*(Jz-Jy)+Jxz*Jxz)*Q*R;
/* %%%%%%%%%%%%%%%%%%%%%%%
Qdot
%%%%%%%%%%%%%%%%%%%%%%% */
xdot[10] = (M_tot + (Jz-Jx)*P*R - Jxz*(P*P-R*R) - R*Heng)/Jy;
/* %%%%%%%%%%%%%%%%%%%%%%%
Rdot
%%%%%%%%%%%%%%%%%%%%%%% */
xdot[11] = (Jx*N_tot + Jxz*L_tot + (Jx*(Jx-Jy)+Jxz*Jxz)*P*Q;
/*########################################*/
/*### Create accelerations anx_cg, any_cg */
/*### ans anz_cg as outputs ##############*/
/*########################################*/
accels(xu,xdot,temp);
xdot[12]
= temp[0]; /* anx_cg */
xdot[13]
= temp[1]; /* any_cg */
xdot[14]
= temp[2]; /* anz_cg */
xdot[15]
= mach;
xdot[16]
= qbar;
xdot[17]
= ps;
/*########################################*/
/*########################################*/
free(temp);
100
Appendix C. Algoritmos
101
}; /*##### END of nlplant() ####*/
/*########################################*/
/*### Called Sub-Functions
##############*/
/*########################################*/
/*########################################*/
/* Function for mach and qbar */
/*########################################*/
void atmos(double alt, double vt, double *coeff ){
double rho0 = 2.377e-3;
double tfac, temp, rho, mach, qbar, ps;
tfac =1 - .703e-5*(alt);
temp = 519.0*tfac;
if (alt >= 35000.0) {
temp=390;
}
rho=rho0*pow(tfac,4.14);
Appendix C. Algoritmos
mach = (vt)/sqrt(1.4*1716.3*temp);
qbar = .5*rho*pow(vt,2);
ps
= 1715.0*rho*temp;
if (ps == 0){
ps = 1715;
}
coeff[0] = mach;
coeff[1] = qbar;
coeff[2] = ps;
}
/*########################################*/
/*########################################*/
/*########################################*/
/*### Port from matlab fix() function ####*/
/*########################################*/
int fix(double in){
int out;
if (in >= 0.0){
out = (int)floor(in);
}
else if (in < 0.0){
out = (int)ceil(in);
}
return out;
}
/* port from matlab sign() function */
int sign(double in){
102
Appendix C. Algoritmos
int out;
if (in > 0.0){
out = 1;
}
else if (in < 0.0){
out = -1;
}
else if (in == 0.0){
out = 0;
}
return out;
}
/*########################################*/
/*########################################*/
/*########################################*/
/*### Calculate accelerations from states */
/*### and state derivatives. ############ */
/*########################################*/
void accels(double *state,
double *xdot,
double *y)
{
#define grav 32.174
double sina, cosa, sinb, cosb ;
double vel_u, vel_v, vel_w ;
double u_dot, v_dot, w_dot ;
double nx_cg, ny_cg, nz_cg ;
103
Appendix C. Algoritmos
sina = sin(state[7]) ;
cosa = cos(state[7]) ;
sinb = sin(state[8]) ;
cosb = cos(state[8]) ;
vel_u = state[6]*cosb*cosa ;
vel_v = state[6]*sinb ;
vel_w = state[6]*cosb*sina ;
u_dot =
cosb*cosa*xdot[6]
- state[6]*sinb*cosa*xdot[8]
- state[6]*cosb*sina*xdot[7] ;
v_dot =
sinb*xdot[6]
+ state[6]*cosb*xdot[8] ;
w_dot =
cosb*sina*xdot[6]
- state[6]*sinb*sina*xdot[8]
+ state[6]*cosb*cosa*xdot[7] ;
nx_cg = 1.0/grav*(u_dot + state[10]*vel_w - state[11]*vel_v)
+ sin(state[4]) ;
ny_cg = 1.0/grav*(v_dot + state[11]*vel_u - state[9]*vel_w)
- cos(state[4])*sin(state[3]) ;
nz_cg = -1.0/grav*(w_dot + state[9]*vel_v - state[10]*vel_u)
+ cos(state[4])*cos(state[3]) ;
y[0] = nx_cg ;
y[1] = ny_cg ;
y[2] = nz_cg ;
}
/*########################################*/
/*########################################*/
/*########################################*/
/*########################################*/
104
Bibliografía
[1] Alessandri A. y Coletta P. (2001). Design of Luenberger observers for a class of hybrid linear
systems. Hybrid Systems: Computation and Control. LNCS. Springer. pp. 718.
[2] Babaali M., George y Pappas. (2005). Observability of switched linear systems in continuous
and discrete time. En: Hybrid Systems: Computation and Control. LNCS. Springer. pp. 103,
117.
[3] Babaali M., y Magnus E. Observability of switched linear systems. Hybrid Systems: Computation and Control. 2004 LNCS. Springer. pp. 48-63. Technical report.
[4] Babaali M. y Egerstedt M. On the observability of piecewise linear systems in 43rd IEEE
Conference on Decision and Control, pp. 26-31, 2004.
[5] Baglietto M., Battistelli G., y Luca S. Active mode observability of switching linear systems
Automatica, 2006.
[6] Balluchi, Andrea, Luca Benvenuti, Maria D. Di Benedetto y Alberto L. Sangiovanni-Vincentelli
Observability for hybrid systems. Proceedings of the 42nd IEEE Conference on Decision and
Control. 2003 pp. 1159-1164.
[7] Bemporad, Alberto, Giancarlo Ferrari-Trecate y Manfred Morari Observability and controllability of piecewise affine and hybrid systems. IEEE Transactions on Automatic Control 45, 2000
1864-1876.
[8] Besson V. y Wellstead P. Representing piecewise linear systems for analisys and simulation
Control Systems Centre, 1994.
[9] Bukkems B., Heemels W., Van de Molengraft M. Tracking control for piecewise linear systems
using an error space approach: A case-study in sheet control in American Control Conference,
2008.
[24] Blakelock J. H. Automatic Control of Aircraft and Missiles John Wiley e hijos, 2nd edition,
Technical report 1991.
105
Bibliography
106
[11] Branicky M. Multiple lyapunov functions and other analysis tools for switched and hybrid systems IEEE Transactions on Automatic Control, vol. 43, pp. 475-482, 1998.
[12] Chen J., y Patton R. Robust Model-based Fault Diagnosis for Dynamic Systems, Boston: Kluwer
Academic Publishers 1999. Book
[13] Cook M. V. Flight Dynamics Principles pages 11-29. Butterworth-Heinemann, Technical report
1997.
[14] Collins P y Van Schuppen J. Observability of piecewise-plane hybrid systems Hybrid Systems:
computation and control, 2004.
[15] Daniel L., y Stephen M. Basic problems in stability and design of switched systems Control
Systems Magazine, vol. 19, pp. 59-70, 1999.
[16] De Santis, Elena, Maria D. Di Benedetto y Giordano Pola On observability and detectability of
continuous-time linear switching systems. Proceedings of the 42nd IEEE Conference on Decision
and Control. 2003 pp. 5777-5782.
[17] De Santis, Elena y Maria D. Di Benedetto Design of Luenberger observers for detectable switching systems. Proceedings of the 2005 IEEE International Symposium on Intelligent Control.
pp. 30-35.
[18] De Saints E., Di Benedetto M., y Giordano P. Observability of internal variables in interconnected switching systems in 45th IEEE Conference on decision and control, 2006.
[19] De Santis E., y Di Benedetto M. Observer design for disctrete-time linear switching systems
International Federation of Automatic Control, 2007.
[20] De Best J., Bukkems B., Van de Molengraft M., Heemels W., y Steinbuch M. Robust control of
piecewise linear systems: A case study in sheet now control Control Enginering Practice, vol.
16, pp. 991-1003, 2008.
[21] De Best J., Bukkems B., Van de Molengraft M., Heemels W., y Steinbuch M. Robust control
of piecewise linear systems: A case study in sheet flow control 28 November 2007. Technical
report.
[22] Do Y., Kim S., y Kim P. Stability of fixed points placed on the border in the piecewise linear
systems, Chaos, Solutions and Fractals vol. 38, pp. 391-399, 2008. Technical report.
[23] Ding D., y Yang G. State-feedback control design for continuous-time piecewise linear systems:
An lmi approach American Control Conference, 2008.
Bibliography
107
[24] State feedback control design for continuous time Piecewise linear systems: An LMI approach,
American Control Conference. pp. 1104-1108. 2008.
[25] Feng G., Lu G., y Zhendong S. An approach to H∞ controller synthesis of piecewise linear
systems Comunicacions in Informacion and Systems, vol. 2, pp. 245-254, 2002.
[26] Fujisawa T. y Kuh E. S. Piecewise-linear theory of nonlinear networks SIAM Journal on Applied
Mathematics, vol. 22, pp. 307-328, 1972.
[27] Gómez-Gutiérrez D., Ramírez-Prado G., Ramírez-Treviño A. y Ruiz-León J. Observability of
switched linear systems. IEEE Transactions on Industrial Informatics 2010 6(2), 127-135.
[28] Goncalves J. M. Regions of stability for limit cycle oscillations in piecewise systems IEEE
Transactions on Automatic Control Enginering Practice, vol. 50, pp. 1877-1882, 2005.
[29] Habets L. y Van Schuppen J. A controllability result for piecewise-linear hybrid systems in
European Contol Conference, 2001.
[30] Hassan N., Didier T., Christopher P., Abbas C., Fault-tolerant Control Systems, Design and
practical applicationsSpringer-Verlag. London Limited. Book
[31] Hassibi A. y Boyd S. Quadratic stabilization and control of piecewise linear systems American
Control Conference, 1998.
[32] Johanson M. Piecewise Linear Control Systems Springer, 2003. Book
[33] Juloski A., H. W. P. M. H., and W. S. Observer design for a class of piecewise linear systems
International Journal of robust and nonlinear control, 2007.
[34] Krastanov M., y Veliov V. On the controllability of switching linear systems Automatica, vol.
41, pp. 663-668, 2005.
[35] Liberzon D. Switching systems and control, Birkhose, Boston. 2008. Book
[36] Mulder, J. A., Van Staveren, W. H. J. J., Van der Vaart, J. C. y De Weerdt, E. Flight dynamics,
lecture notes pag. 3-302. Technical report, Delft University of Technology, 2006.
[37] Narendra K., y Balakrishnan J. A common lyapunov function for stable LTI systems with
commuting a-matrices IEEE Transactions on Automatic Control, vol. 39, pp. 2469-2471, 1994.
[38] Nayebpanah N., Rodríguez L. y Zhang Y. Fault-Tolerant Controller Synthesis for PiecewiseAffine Systems Hyatt Regency Riverfront, St. Louis, MO, USA June 10-12, 2009
Bibliography
108
[39] Nguyen., Ogburn., Gilbert., Kibler., Brown y Deal. Simulator study of stall/post-stall Characteristics of a fighter airplane with relaxed longitudinal static stability, NASA technical paper
1538, Dec 1979.
[40] Ooba T. y Funahashi Y. Two conditions concerning common quadratic lyapunov functions for
linear systems IEEE Transactions on Automatic Control, vol. 42, pp. 719-722, 1997.
[41] Patton R.J. Fault-tolerant control: The 1997 situation. Proceedings of the IFAC Symposium
SAFEPROCESS’97, Hull, UK, pages 1033-1055, l997.
[42] Pejovic P., y Maksimovic D. A new algorithm for simulation of power electronic systems using
piecewise-linear device models IEEE Transactions on Power Electronics, vol. 10, pp. 340-348,
1995.
[43] Peleties P., y DeCarlo R. Asymptotic stability of m-switched systems using lyapunov-like functions Proceedings of American Control Conference, pp. 3438-3439, 1992.
[44] Refson K. MoldyâĂŹs UserâĂŹs Manual Department of Earth Sciences, May 2001. Technical
report.
[45] Richter J., Heemels W., Van de Wouw N., y Lunze J. Reconfigurable control of PWA systems
with actuator and sensor faults: stability1 Technical report et.al. 2008
[46] Rongwei G., y Yuzhen W. Region stability analysis for switched linear systems with multiple
equilibria Proceedings of the 29th Chinese Control Conference, pp. 986-991, 2010.
[47] Rubensson M., y Lennartson B. Global convergense analysis for piecewise linear systems applied
to limit cycles in a dc converter in American Control Conference, 2002.
[48] Russell R. S. Non linear F-16 simulations using simulink and Matlab University of Minnesota,
2003. Technical report.
[49] Sandoval R. Seguimiento de trayectorias en aviones usando control lineal por pedazos CENIDET, 2011. Thesis.
[50] Sontag E. D. Nonlinear regulation: The piece-wise linear approach IEEE Transactions on Automatic Control, vol. 26, pp. 346-358, 1981. Technical report
[51] Stengel R. F., Intelligent failure-tolerant control. IEEE Control Systems Magazine, 11, no.
4:14-23, 1991.
[52] Stern T. E. Piecewise-linear network theory tech. rep., Massachusetts Institute of Technology,
1956. Technical report
Bibliography
109
[53] Stevens B., y Lewis F. Aircraft control and Simulation, Wiley Inter-science, pages 1-54,110-115.
John Wiley e hijos, 1992. New York, 1992. Technical report.
[54] Verdult V. y Verhaegen M. Subspace identification of piecewise linear systems 43rd IEEE Conference on Decision and control, pp. 3838-3843, 2004. Technical report.
[55] Yang Z., e Izadi-Zamanabadi R. Design of Reconfigurable Nonlinear Control Using On-Line
Piecewise Affine System Approximation Fault Detection, Supervision and Safety of Technical
Processes Barcelona, Spain, June 30 - July 3, 2009 Technical report
[56] Zhendong Sun, Ge S. y Lee T. Controllability and Reachability criteria for switched linear
systems. Automatica 2002 38(5), 775-786. Technical report.
[57] Zhendong S. y Ge S. (2005). Switched Linear Systems: control and design. Book Springer-Verlag.
London.
[58] Zhendong S. y Ge S. Dynamic output feedback stabilization of class of switched systems, IEEE
Transaction on Circuit and Systems. Vol. 50, Technical report No.8. pp. 1111-1115. 2003.
Descargar