Sie sind auf Seite 1von 174

Elizabeth Villota

Control Moderno y Óptimo


– Notas de Clase MT227 –

3 de mayo de 2012

Springer
Índice general

1. Modelado de sistemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1. Conceptos en modelado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1.1. Contribución al modelado de la mecánica y de la ingenierı́a eléctrica . . . . . . . . . . . . . . . . . . . . . . 1
1.2. Modelos espacio de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.1. Ecuación diferencial ordinaria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2.2. Ecuación en diferencias finitas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3. Ejemplo: Control de rapidez (control crucero) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.4. Más sobre modelado de sistemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5. Más ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.5.1. Ejemplo: Circuito RLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.5.2. Ejemplo: Motor DC y acoplamiento flexible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.5.3. Ejemplo: Diagrama de bloques del motor DC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.5.4. Ejemplo: Doble filtro pasa-baja RC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.5.5. Ejemplo: Horno eléctrico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2. Linealización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.1. Linealizando ecuaciones diferenciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2. Ejemplo: Vehı́culo aéreo con impulsadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.2.1. Modelo lineal del vehı́culo aéreo con impulsadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3. Ejemplo: manipulador robótico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3.1. Ecuaciones de movimiento usando Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.3.2. Representación espacio de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.3.3. Linealización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3.4. Ideas adicionales acerca del modelo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.4. Ejemplo: manipulador robótico - incluyendo la dinámica del cuerpo rı́gido . . . . . . . . . . . . . . . . . . . . . . . 27
2.4.1. Ecuaciones de movimiento usando Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.4.2. Representación espacio de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

3. Sistemas Lineales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1. Definiciones básicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1.1. Linealidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.1.2. Invariancia en el tiempo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.2. Respuesta a la condición inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.2.1. Ejemplo: Integrador doble . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.2.2. Ejemplo: Oscilador sin amortiguamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.3. Respuesta entrada/salida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.3.1. Ecuación de convolución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.3.2. Respuesta en estado estacionario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.4. Polos, ceros y ganancia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.5. Otros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

V
VI Índice general

4. Formas canónicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1. Definiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1.1. Invariancia de coordenadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
4.1.2. Autovalores/autovectores de una matriz y modos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.1.3. Teorema de Cayley-Hamilton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.2. Forma canónica modal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.2.1. Ejemplo: Sistema de múltiples entradas y múltiples salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
4.3. Forma canónica controlable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.3.1. Caso, sistema de una entrada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
4.3.2. Caso, sistema de múltiples entradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.4. Forma canónica observable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.4.1. Caso, sistema de múltiples salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
4.5. Representaciones espacio de estados en formas canónicas a partir de funciones de transferencia del
sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.5.1. Forma canónica controlable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
4.5.2. Forma canónica observable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
4.5.3. Forma canónica modal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

5. Control por realimentación de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59


5.1. Controlabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.1.1. Ejemplo: Motor DC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
5.1.2. Sistema no controlable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.1.3. Estabilizabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.2. Control por realimentación de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.2.1. Estructura del controlador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.2.2. Estabilización por realimentación de estados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.2.3. Desempeño. Control para la solución en estado estacionario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.2.4. Especificaciones del diseño del control por realimentación de estados . . . . . . . . . . . . . . . . . . . . . 71
5.2.5. Ejemplo, sistema de balance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
5.3. Control integral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
5.3.1. Ejemplo, control de rapidez con control integral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

6. Control por realimentación de salidas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81


6.1. Observabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
6.1.1. Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
6.1.2. Teorema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
6.2. Observador de orden completo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
6.2.1. Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
6.2.2. Control usando estados estimados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
6.3. Observador de orden reducido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
6.3.1. Compensador controlador/estimador orden-reducido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.3.2. Ejemplo: Motor DC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

7. Estabilidad y desempeño . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
7.1. Estabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
7.1.1. Definiciones básicas de estabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
7.1.2. Estabilidad según Lyapunov . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
7.2. Índices de desempeño . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

8. Control Óptimo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111


8.1. Problema del Control Óptimo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
8.1.1. Cálculo Variacional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
8.1.2. Solución del problema de optimización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
8.2. Regulador cuadrático lineal, (LQR por sus siglas en inglés) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
8.2.1. Ecuación de Riccati Diferencial (DRE, por sus siglas en inglés) . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Índice general VII

8.2.2. Valor del ı́ndice de desempeño . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119


8.2.3. Ejemplo integrador doble . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
8.3. Regulador cuadrático lineal en estado estacionario - Horizonte infinito . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
8.3.1. Ecuación de Riccati Algebraica (ARE, por sus siglas en ingles) . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
8.3.2. Resolviendo la ARE usando el método del autovector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
8.3.3. Propiedades de robustez del diseño LQR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
8.3.4. Regla de Bryson para selección de matrices Q y R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

9. Estimación Óptima . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135


9.1. Filtro de Kalman-Bucy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
9.1.1. Teorı́a de probabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
9.1.2. Problema del observador óptimo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
9.2. Control LQG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
9.2.1. Ejemplo: Aeronave de impulsión . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
9.2.2. Compensador óptimo LQG podrı́a resultar en un sistema en lazo cerrado inestable . . . . . . . . . . 144

10. Tópicos especiales de control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147


10.1. Problema de Generación de Trayectoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
10.1.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
10.1.2. Formulación alternativa: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
10.1.3. Programación de ganancias (GAIN SCHEDULING) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
10.2. Filtro de Kalman Extendido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
10.2.1. Idea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
10.2.2. Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

A. Ecuaciones de Euler Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157


A.1. Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
A.2. Solución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158

B. Optimización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
B.1. Optimización sin restricciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
B.1.1. Ejemplo: Superficies cuadráticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
B.2. Optimización con restricciones de igualdad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
B.2.1. Multiplicadores de Lagrange y el Hamiltoniano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
B.2.2. Ejemplo: Superficie cuadrática con restricción lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164

C. Cálculo Variacional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167


C.1. Conceptos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Capı́tulo 1
Modelado de sistemas

Un modelo es una representación puntual de la dinámica del sistema y es usada con la finalidad de responder
preguntas mediante análisis y simulación. El modelo que se elige depende del tipo de preguntas que se desee responder,
y como tal, existe más de un tipo de modelo para un mismo sistema dinámico, con diferentes niveles de fidelidad
dependiendo del fenómeno de interés.

1.1. Conceptos en modelado

Un modelo es una representación matemática de un sistema fı́sico, biológico o de información. El modelo permite
razonar en relación al sistema y hacer predicciones con respecto a como se comportará un sistema. En esta parte nuestro
interés es emplear modelos de sistemas dinámicos que describan el comportamiento entrada/salida de un sistema y para
esto adoptaremos la representación en la forma espacio de estados.
En su forma más elemental, un sistema dinámico es aquel donde los efectos de las acciones (entradas) no se presen-
tan inmediatamente. Por ejemplo, la rapidez de un vehı́culo no cambia inmediatamente después de presionado el pedal
del freno, asi como tampoco un dolor de cabeza desaparece justo después de haber tomado una aspirina. Un ejemplo
en el ámbito financiero serı́a que los beneficios de una inversión no se perciben a corto plazo, estos se presentan solo a
largo plazo (si fue una buena inversión). Como caracterı́stica fundamental todos estos ejemplos de sistemas dinámicos
presentan un comportamiento que evoluciona en el tiempo.

1.1.1. Contribución al modelado de la mecánica y de la ingenierı́a eléctrica

En mecánica, el estudio de la dinámica surgió al intentar describir el movimiento planetario1 . Uno de los triunfos
de la mecánica Newtoniana fue la observación de que el movimiento de los planetas podı́a ser predecida en base a las
posiciones y velocidades actuales de todos los planetas. El estado de un sistema dinámico es la colección de variables
que caracteriza completamente el movimiento de un sistema con el propósito de predecir el movimiento futuro. Al
conjunto de todos los estados posibles se le denomina espacio de estados.
Un clase común de modelos matemáticos para sistemas dinámicos es representado por ecuaciones diferenciales
ordinarias (ODE, por sus siglas en inglés). En mecánica una de esas ecuaciones diferenciales es:

mq̈ + c(q̇) + kq = u, (1.1)

donde u representa el efecto de entradas externas. El modelo (1.1) es llamado ecuación diferencial controlada o forza-
da. Cuando u = 0, el modelo se denomina ecuación diferencial libre. Este modelo puede fácilmente representar un
sistema dinámico tal como el sistema masa-resorte con amortiguamiento, ver Fig. 1.1. La variable q ∈ R representa la
posición de la masa m con respecto a su posición de reposo. Se emplea q̇ para referirse a la derivada con respecto al

1 En base a la observación detallada de los planetas realizada por Tycho Brahe y los resultados de Kepler, se encontró empiricamente que

las órbitas de los planetas podı́an ser descritas por elipses.

1
2 1 Modelado de sistemas

tiempo de q (velocidad de la masa) y q̈ para representar a la segunda derivada (aceleración). Decimos que el sistema es
de segunda orden dado que la dinámica depende de las dos primeras derivadas de q.

c(q)

Figura 1.1 Masa-resorte con amortiguamiento

La evolución de la posición y la velocidad pueden ser descritos usando ya sea una gráfica en el tiempo o un diagrama
del plano de fase, ambos mostrados en Fig. 1.2. La gráfica en el tiempo muestra los valores de los estados individual-
mente como función del tiempo. El diagrama del plano de fase muestra la evolución de la velocidad en relación a la
posición, permitiendo asi visualizar el campo vectorial del sistema (velocidad denotada por las flechas).

2 1
Position q [m], velocity q̇ [m/s]

Position
Velocity
1 Velocity q̇ [m/s] 0.5

0 0

−1 −0.5

−2 −1
0 5 10 15 −1 −0.5 0 0.5 1
Time t [s] Position q [m]

Figura 1.2 Ilustración de un modelo de estados

El adicionar la entrada u al sistema enriquece al sistema y permite que podamos respondar otras preguntas. Por
ejemplo, el efecto que los disturbios externos tienen en la trayectoria del sistema. En el caso de que se pueda manipular
la variable de entrada u de una forma controlada, es posible analizar si se puede llevar o no el sistema de un punto a
otro en el espacio de estados a través de una apropiada selección de la entrada.
La ingenierı́a eléctrica presentó una visión diferente del modelado, donde el diseño de amplificadores electrónicos
llevó a un enfoque tipo entrada/salida. Un sistema era un dispositivo que transformaba entradas en salidas, como
mostrado en Fig. 1.3. La estructura entrada/salida se usa en muchas disciplinas de la ingenierı́a puesto que permite
descomponer un sistema en sus componentes individuales y conectarlos a través de sus entradas y salidas. Ası́ se
puede tomar un sistema complicado como una radio o televisión y se descompone en piezas tales como el receptor,
demodulador, amplificador, parlantes, etc. Cada una de estas piezas tiene un conjunto de entradas y salidas y, a través
de un diseño apropiado, se pueden interconectar para formar el sistema completo.
Cuando la teorı́a de control emergió como una disciplina en los 1940s, el abordaje adoptado estaba fuertemente
influenciado por la visión de la ingenierı́a eléctrica (entrada/salida). La segunda ola de desarrollo en control se vió in-
fluenciada por la mecánica, donde se usó la perspectiva espacio de estados. El afán por realizar vuelos espaciales es un
ejemplo tı́pico de como comenzaron a fusionarse estos dos puntos de vista hasta llegar a ser lo que hoy en dia se conoce
como la representación espacio de estados de sistemas de entrada/salida. Especı́ficamente, uno de los problemas que se
presentó fue el de controlar la órbita de un nave espacial. Ası́, el desarrollo de modelos espacio de estados involucraba
modificar los modelos mecánicos para incluir sensores y actuadores y utilizar ecuaciones con formas más generales.
Luego el modelo dado por la ecuación (1.1) fue reemplazado por:
1.2 Modelos espacio de estados 3

+v
7
Q9 Q8
Q14
Q1 Q2 Q15
(+) R7 R9
3 Q3 Q4 Output
Inputs 30pF Q18
6
(–) R8 R10 Input Output
2
Q7 Q16 Q20 System

Q5 Q6 Q17
Q22
R1 R2 R12 R11

–v
4
vos adj

Figura 1.3 Diagrama entrada/salida

dx
= f (x, u),
dt (1.2)
y = h(x, u),

donde x es el vector de variables de estado, u es el vector de señales de control y y es un vector de (señales) medidas.
El término dx
dt representa la derivada de x con respecto al tiempo, ahora considerado un vector, y f y h son mapeamien-
tos (posiblemente no lineales) de sus argumentos a vectores de dimensión apropiada. Para sistemas mecánicos, caso
sistema masa resorte con amortiguamiento, el estado consiste en la posición y velocidad de la masa.
Para complementar la idea de modelado, cabe destacar que un desarrollo final en la construcción del problema con
una visión de la teorı́a de control viene dado por la inclusión de disturbios e incertezas del modelo2 .
Una observación a destacar en el modelado para diseño de sistemas de control es que el sistema por realimentación
puede ser a menudo analizado y diseñado en base a modelos relativamente simples. La justificación se encuentra en la
robustez inherente que presentan los sistemas de control por realimentación. Sin embargo, otro tipo de uso de modelos
requiere de más complejidad y precisión. Un ejemplo son las estrategias de control por alimentación anticipada, donde
uno usa el modelo para precalcular las entradas que harán que el sistema responda de cierta forma. Otra área es la de
validación de sistemas.

1.2. Modelos espacio de estados

Esta sección presentará dos formas principales de modelos a ser usadas en clase. Ambas hacen uso de nociones de
estado, entrada, salida y dinámica para describir el comportamiento de un sistema.

1.2.1. Ecuación diferencial ordinaria

El estado de un sistema es la colección de variable que resume el pasado de un sistema con el propósito de predecir
el futuro. Para un sistema fı́sico el estado está compuesto de las variables necesarias para el almacenamiento de masa,
momento y energia. Una cuestión importante en el del modelado es el decidir cuan exacta debe ser la representación
de este almacenamiento. Las variables de estado son representadas por un vector x ∈ Rn llamado el vector de estados.
Las variables de control son representadas por otro vector u ∈ R p , y la señal medida por el vector y ∈ Rq . Un sistema
se puede representar entonces por la ecuación diferencial:

dx
= f (x, u),
dt (1.3)
y = h(x, u),
2 Disturbios e incertezas del modelo son considerados elementos crt́icos en la teorı́a de control.
4 1 Modelado de sistemas

donde f : Rn × R p 7→ Rn y h : Rn × R p 7→ Rq son mapeamientos suaves. Un modelo de esta forma se llama modelo


espacio de estados.
La dimensión del vector de estados es llamada orden del sistema. El sistema (1.4) es llamado invariante en el tiempo
porque f y h no dependen explicitamente del tiempo t; existen sistemas variantes en el tiempo más generales donde las
funciones si dependen del tiempo. El modelo consiste en dos funciones: la función f que provee la variación del vector
de estados con respecto al tiempo en función del estado x y el control u, y la función h que provee los valores medido
como función del estado x y del control u.
Un sistema se denomina sistema de espacio de estados lineal si las funciones f y h son lineales en x y u. Un sistema
espacio de estados lineal puede ser representado por:

dx
= Ax + Bu,
dt (1.4)
y = Cx + Du,

donde A, B, C y D son matrices. Si estas matrices son constantes, entonces se dice que tal sistema es lineal e invariante
en el tiempo, LTI por sus siglas en inglés. La matriz A es llamada matriz dinámica o matriz de estados, la matriz B es
llamada la matriz de control o matriz de entradas, la matriz C es llamada matriz del sensor o matriz de salidas, y la
matriz D es llamada la matriz del término directo.
Generalizando la ecuación dinámica de segundo orden estudiada en mecánica, resulta una ecuación de la forma:

dny d n−1 y
+ an−1 + ... + ao y = u, (1.5)
dt n dt n−1
dky
donde t es la variable independiente, y(t) es la variable de (salida) dependiente y u(t) es la entrada. La notación
dt k
denota la k-ésima derivada con respecto a tiempo t, a veces denotada por y(k) . La ecuación diferencial controlada (1.5)
se dice que es un sistema de n-ésima orden. Este sistema se puede convertir en la forma espacio estado definiendo:
   
x1 y
 x2   dy/dt 
   
x =  ...  = 
   .. 
. , (1.6)
   
n−2
xn−1  d y/dt  n−2

xn d n−1 y/dt n−1

y la ecuación espacio de estados resulta:


     
x1 x2 0
 x2   x 3  0
d   
 ..   ..
  
  .. 
 . = . +., y = x1 . (1.7)
dt      
xn−1   xn  0
xn −ao x1 − ... − an−1 xn u

Con la definición apropiada de A, B, C y D, esta ecuación se puede definir en la forma espacio de estados lineal.
Una forma aún más general se obtiene dejando que la salida sea una combinación lineal de los estados del sistema,
por ejemplo:
y = b1 x1 + b2 x2 + ... + bn xn + du. (1.8)
Este sistema puede ser modelado en espacio de estados como:
1.2 Modelos espacio de estados 5
     
x1 0 1 ... 0 0 0
x2   .. ..  0
d x3   . . 
   
  .. 
 = 0 0 1 0   x +  .  u,
dt  ..    
.  0 0 ... 0 1  0 (1.9)
xn −a0 −a1 ... −an−2 −an−1 1
 
y = b1 b2 ... bn x + du.

Esta forma particular de un sistema lineal en espacio de estados se llama forma canónica controlable.
La ecuación (1.4) puede ser dibujada como un diagrama de bloques en la Fig. 1.4. Las dobles lineas indican que
cantidades vectoriales (múltiples variables) son pasadas entre los bloques.

Block diagram of a
D
general continuous linear

· + y(t)
u(t) + x(t) x(t) +
B ∫ C
+

Figura 1.4 Diagrama de bloques de un modelo espacio de estados lineal contı́nuo general

1.2.2. Ecuación en diferencias finitas

Muchas veces resulta más natural describir la evolución de un sistema en instantes de tiempo discretos en vez de
continuamente en el tiempo. Si uno se refiere a cada uno de estos tiempos usando un número entero k = 0, 1, 2...,
entonces se puede hacer la pregunta de cómo cambia el estado para cada k. Como se hizo en el caso de ecuaciones
diferenciales ordinarias, se define como estado a los conjuntos de variable que resumen el pasado del sistema para
propósitos de predicción de su futuro. Los sistemas que se describen de esa manera se denominan sistemas de tiempo
discreto o sistemas discretos.
La evolución de un sistema discreto se puede escribir de la forma:

x[k + 1] = f (x[k], u[k]),


(1.10)
y[k] = h(x[k], u[k]),

donde x[k] ∈ Rn es el estado del sistema en el tiempo k, u[k] ∈ R p es la entrada y y[k] ∈ Rq es la salida. Como antes, f y
h son mapeamientos suaves de dimensión apropiada. La ecuación (1.10) se denomina ecuación en diferencias porque
nos dice como x[k + 1] difiere de x[k]. El estado x[k] puede ser una cantidad escalar o un vector; en caso de ser un vector
usaremos x j [k] para denotar al j-ésimo elemento del vector x (o j-ésimo estado) en el instante de tiempo k.
Como en el caso de ecuaciones diferenciales, a menudo las ecuaciones son lineales en el estado y la entrada, en
cuyo caso el sistema puede ser descrito por:

x[k + 1] = Ax[k] + Bu[k],


(1.11)
y[k] = Cx[k] + Du[k],

Como en el caso anterior, nos referimos a las matrices A, B, C y D como matriz de la dinámica, la matriz de control,
matriz del sensor y matriz del término directo.
6 1 Modelado de sistemas

1.3. Ejemplo: Control de rapidez (control crucero)

El control de rapidez de un vehı́culo es un problema común de sistema por realimentación que encontramos en
nuestro quehacer diario. El sistema intenta mantener una rapidez constante en la presencia de disturbios. El control
compensa el efecto de los disturbios midiendo la rapidez del vehı́culo y ajustando la válvula de alimentación de com-
bustible apropiadamente (para acelerar o desacelerar).
Para modelar el sistema tenemos el diagrama de bloques de la Fig. 1.5. Sea v la rapidez del carro y vr la rapidez
(deseada) referencia. El controlador recibe las señales v y vr y genera la señal de control u que es enviada al actuador
que controla la posición de la válvula de alimentación. La posición de la válvula de alimentación a su vez controla el
torque desarrollado por el motor, que es transmitido a través de los engranajes y las ruedas, generando una fuerza F que
mueve el carro. Existen duerzas de disturbios Fd debido a las variaciones en la pendiente de la superficie, la resistencia
al deslizamiento de las ruedas y fuerzas aerodinámicas. El control de rapidez también tiene una interface humano-
máquina que permite que el conductor establezca y modifique la rapidez de referencia. También existen funciones que
desconectan el control de rapidez cuando se presiona el freno.

Fd
Throttle & T Gears & F v
Body
Engine Wheels

u
Actuator Controller
on/off
vr Driver set/decel
Interface resume/accel
cancel

Figura 1.5 Diagrama de bloques del control de rapidez

Para comenzar a desarrollar un modelo matemático comenzamos con un balance de fuerzas para el cuerpo del
vehiculo. Sea v la rapidez del vehiculo, m es la masa total (incluyendo pasajeros), F es la fuerza generada por el motor
y Fd es la fuerza de disturbio debido a la aceleración de la gravedad, fricción y arrastre aerodinámico. La ecuación de
movimiento del carro es:
dv
m = F − Fd . (1.12)
dt
La fuerza F es generada por el motor, cuyo torque T es proporcional a la razón de inyección de combustible, que es a
su vez proporcional a la señal de control 0 ≤ u ≤ 1 que controla la posición de la válvula de alimentación. El torque
depende de la velocidad angular del motor ω . El torque puede ser representado por la siguiente expresión:
ω
T (ω ) = Tm (1 − β ( − 1)2 ), (1.13)
ωm
donde Tm es el torque máximo obtenido a la velocidad angular del motor ωm . Parámetros tipicos son Tm = 190Nm,
ωm = 420rad/s (para 4000 rpm) y β = 0,4. Sea n la razón de los engranajes y r el radio de la rueda.La velocidad del
motor es relacionada a la rapidez a trav’es de:
n
ω = v = αn v, (1.14)
r
y la fuerza F se puede escribir como:
nu
F = T (ω ) = αn uT (αn v). (1.15)
r
Valores tı́picos de αn para engranajes del 1 al 5 son α1 = 40, α2 = 25, α3 = 16, α4 = 12 y α5 = 10.
La fuerza de disturbio tiene tres componentes principales: Fg , fuerzas debido a la acción de la gravedad; Fr , fuerza
debido a la resistencia al deslizamiento; y Fa , fuerza del arrastre aerodinámico. Si asumimos una pendiente de la
superficie θ , la gravedad dota de la fuerza Fg = mgsinθ , como mostrado en la Fig. 1.6, donde g = 9,8m/s2 . Un modelo
simple de fricción es:
1.4 Más sobre modelado de sistemas 7

Fr = mgCr sgn(v),
Cr = 0,01 es coeficiente de fricción, sgn es la función signo de v (±1) o cero si v = 0. Un valor tipico de Cr es 0.01.
Finalmente, el arrastre aerodinámico es proporcional al cuadrado de la rapidez:
1
Fa = ρ Cd Av2 ,
2
donde ρ = 1,3 kg/m3 es la densidad del aire, Cd = 0,32 es el coeficiente de arrastre aerodinámico que depende de la
forma del vehiculo, A = 2,4m2 es el área frontal del carro.
Resumiendo, encontramso que el carro puede ser modelado por:

dv 1
m = αn uT (αn v) + −mgCr sgn(v) − ρ Cd Av2 − mgsinθ .
dt 2
El modelo es un sistema dinámico de primer orden. El estado es la rapidez del vehiculo, que también es la salida. La
entrada es la señal u que controla la posición de la válvula de alimentación, y el disturbio e sla fuerza Fd , que pedende
de la pendiente de la superficie. El sistema es no lineal puesto que el torque se define como en (1.13), el término
relacionado a la fuerza gravitacional y el carácter no lineal de la fricción y arrastre aerodinámico.

Fg F

mg
θ

Figura 1.6 Efecto de las fuerzas gravitacionales

1.4. Más sobre modelado de sistemas

El principal objetivo del análisis de sistemas es la predicción de la forma en la que el sistema responderá a varias
entradas y como éstas respuestas cambian para diferentes valores de los parámetros del sistema. En la ausencia del
modelado de sistemas, los ingenieros se ven forzados a construir prototipos del sistema para poder probarlos. Los
datos obtenidos en las pruebas de los prototipos fı́sicos son muy valiosos, sin embargo los costos en tiempo y dinero
para obtener estos datos muchas veces no permiten su realización. Adicionalmente, los modelos matemáticos son
inherentemente más flexibles que los prototipos fı́sicos y permiten un rápido refinamiento de los diseños del sistema
para optimizar varias medidas de desempeño. En consecuencia, uno de los objetivos del análisis de sistemas es el
establecer un modelo matemático adecuado que pueda ser usado para obtener información equivalente a la que se
podrá conseguir de varios prototipos fı́sicos diferentes. De esta forma, aún si un prototipo final es construido para
verificar el modelo matemático, el modelador se ha ahorrado un tiempo y dinero significativos.
Un modelo matemático es un conjunto de ecuaciones que describe completamente las relaciones entre las variables
del sistema. Es usado como una herramienta para desarrollar diseños y algoritmos de control, y la tarea principal para la
que será usado tiene implicaciones básicas para la elección del modelo del sistema. De ahi que los modelos del sistema
deben ser lo más simples posible, y cada modelo debe ser desarrollado con alguna aplicación especı́fica en mente. De
hecho, de esta forma se tendrá diferentes modelos construidos para diferentes usos del mismo sistema. En el caso de
modelos matemáticos, diferentes tipos de ecuaciones serán usadas para describir al sistema en sus varias aplicaciones.
La Tabla 1 clasifica a los modelos del sistema de acuerdo a los cuatro criterios más comunes: aplicación del principio
de superposición, dependencia en coordenadas espaciales ası́ como en el tiempo, variación de los parámetros en el
tiempo, y continuidad de las variables independientes. En base a estos criterios, los modelos de sistemas dinámicos son
clasificados como lineales y no lineales, concentrados y distribuidos, estacionarios invariantes en el tiempo o variantes
8 1 Modelado de sistemas

en el tiempo, contı́nuos o discretos, respectivamente. Cada clase de modelo es también caracterizada por el tipo de
ecuación matemática empleada en la descripción del sistema.

Tipo de modelo Criterio de clasificación Tipo de ecuación de modelo


Nolineal Principio de superposición no aplica Ecuaciones diferenciales no lineales
Lineal Principio de superposición aplica Ecuaciones diferenciales lineales
Distribuido Variables dependientes son función de co- Ecuaciones diferenciales parciales
ordenadas espaciales y el tiempo
Concentrado Variables dependientes son independi- Ecuaciones diferenciales ordinarias
entes de las coordenadas espaciales
Variantes en el tiempo Parámetros del modelo varian en el tiem- Ecuaciones diferenciales con coeficientes
po que varian tiempo
Estacionario Parámetros del modelo son constantes en Ecuaciones diferenciales con coeficientes
el tiempo constantes
Contı́nuo Variables dependientes definidas sobre Ecuaciones diferenciales
rango contı́nuo de variables independi-
entes
Discreto Variables dependientes definidas solo para Ecuaciones por diferencias finitas
distintos valores de variables independi-
entes
Cuadro 1.1 Clasificación de modelos del sistema

1.5. Más ejemplos

1.5.1. Ejemplo: Circuito RLC

Se desea formular un modelo donde el voltaje terminal v sea la entrada y el voltaje en el capacitor vC sea la salida.
Las leyes de Ohm y Kirchoff permiten obtener la siguiente relación para los voltajes:

di(t)
Ri(t) + L + vC (t) = v(t). (1.16)
dt
Para el capacitor se sabe que:
dvC (t) dq(t)
CvC (t) = q(t) → C = = i(t). (1.17)
dt dt
De estas ecuaciones se puede ver inmediatamente que:
R 1 1
i̇ = − i − vC + v,
L L L (1.18)
1
v̇C = i.
C
La dependencia del tiempo se ha omitido por simplicidad.

R L
v vC
i C

Figura 1.7 Circuito RLC


1.5 Más ejemplos 9

El sistema puede ser descrito por las dos ecuaciones diferenciales de primer orden acopladas mostradas en (1.18).
Reescribiendo las ecuaciones en la forma de espacio de estados:
 
  R 1   "1#
i̇ − −  i
=  1L L 

+ L v. (1.19)
v̇C 0 vC 0
C
Si las variables de estado y las matrices del sistema son definidas como:
 
    R 1 " #
1
i i̇ −L −L 
x= , ẋ = ,A =  1  , B = L , u = v,
vC v̇C 0 0
C
la ecuación (1.19) puede ser reescrita en forma compacta como:

ẋ = Ax + Bu.

Un diagrama de bloques del sistema es mostrado en la Fig. 1.8. Notar que los elementos del vector de estados x, i(t) y

v( t) i(t) · vc ( t )
1 + i(t) 1 vc ( t )
---
L _
_ ∫ ----
C ∫
R
---
L
1
---
L

Figura 1.8 Diagrama de bloques del circuito RLC

vC (t), son salidas de los dos integradores en el diagrama de bloques.


Dado que el voltaje del capacitor es la salida. Una segunda ecuación debe ser aumentada a la descripción del
problema, la ecuación de salida:  
y = vC = 0 1 x. (1.20)
La combinación de (1.19) y (1.20) es llamada el modelo espacio de estados del sistema.
La transformada de Laplace de (1.18) lleva al modelo a la forma de función de transferencia del sistema:

Vc (s) 1
G(s) = = . (1.21)
V (s) LCs2 + RCs + 1

1.5.2. Ejemplo: Motor DC y acoplamiento flexible

La Fig. 1.9 muestra un motor DC con acoplamiento flexible en el eje entre la inercia de la armadura del motor y la
inercia de la carga. R y L son la resistencia y la inductancia del bobinado de la armadura respectivamente, k y b son
la constante de rigidez y el coeficiente de amortiguamiento (lineal) del acoplamiento flexible respectivamente y, Jm y
Jl son los momentos de inercia de la armadura del motor y carga respectivamente. El voltaje en la armadura u es la
entrada del sistema y la posición angular de la carga θl es la salida.
Si las dos inercias son separadas una de la otra y los torques apropiados (Tk , Tb , Ta ) aumentados como mostrado en
la Fig. 1.10 (diagramas de cuerpo libre), usando la Segunda Ley de Newton (Momentos de Euler) en ambas inercias se
tiene:
Jm θ̈m = Ka i + k(θl − θm ) + b(θ̇l − θ̇m ) − bm θ̇m , (1.22)
Jl θ̈l = −k(θl − θm ) − b(θ̇l − θ̇m ) − bl θ̇l , (1.23)
10 1 Modelado de sistemas

R L θm θl

u
Jm k,b
Jl

Figura 1.9 Motor DC con acoplamiento flexible

donde Ka es la constante de torque, bm y bl son los factores de fricción de los rodamientos viscosos del motor y la carga
respectivamente.

θm
Ta Tk , Tb Tk , Tb θl

Jm Jl
State convention: θm < θl
· ·
θm < θl

Figura 1.10 Señal y convención de estados para el sistema en Fig. 1.9

Las leyes de Ohm y Kirchhoff aplicadas al circuito eléctrico resulta en:

di
u = Ri + L + ke θ̇m (1.24)
dt
o
1
(u − ke θ̇m − Ri),
i̇ = (1.25)
L
donde ke es el coeficiente de inducción del bobinado de la armadura del motor.
Un diagrama de bloques puede ser dibujado directamente de las ecuaciones (1.22), (1.23) y (1.25) como mostrado
en la Fig. 1.12.

ke

bm
x1 x3 x2
_ · _ ·· ·
u 1 i i 1 θm θm θm
+ _
---
L ∫ Ka
+
-----
Jm
- ∫ ∫
+ + _

_ k
R
+
b
·· +·
_ _ 1 θl θl θl
---
-
Jl ∫ ∫
_ x5 x4 y
bl

Figura 1.11 Diagrama de bloques del sistema motor DC con acoplamiento flexible
1.5 Más ejemplos 11

Si se define el vector de estados de orden 5 como:


 T  T
x = x1 x2 x3 x4 x5 = i θm θ̇m θl θ̇l , (1.26)

y la ecuaciones de estado pueden ser escritas por inspección del diagrama de bloques:

R ke 1
ẋ1 = − x1 − x3 + u,
L L L
ẋ2 = x3 ,
Ka k b + bm k b
ẋ3 = x1 − x2 − x3 + x4 − x5 , (1.27)
Jm Jm Jm Jm Jm
ẋ4 = x5 ,
k b k b + bl
ẋ5 = x2 + x3 − x4 − x5 .
Jl Jl Jl Jl
En forma matricial la ecuación se puede escribir como:
 R ke 
− 0 − 0 0  
1
 L L 

 0 0 1 0 0, 
  L 
 Ka k b + bm k b  0
ẋ =  − − 
x+   u. (1.28)

 Jm Jm Jm Jm Jm 
 0
 0 0 0 0 1  0
 k b k b + bl 
0
0 − −
Jl Jl Jl Jl
La ecuación de salida es entonces:  
y = 0 0 0 1 0 x. (1.29)
Se puede observar que el sistema motor DC con acoplamiento flexible es un sistema de orden 5: tiene 5 estados.

ke

bm
x1 x3 x2
_ · _ ·· ·
u 1 i i 1 θm θm θm
+ _
---
L ∫ Ka
+
-----
Jm
- ∫ ∫
+ + _

_ k
R
+
b
·· +·
_ _ 1 θl θl θl
---
-
Jl ∫ ∫
_ x5 x4 y
bl

Figura 1.12 Diagrama de bloques del sistema motor DC con acoplamiento flexible
12 1 Modelado de sistemas

1.5.3. Ejemplo: Diagrama de bloques del motor DC

El sistema electromecánico anterior tiene un acoplamiento flexible entre las dos inercias rotacionales. Si se omite la
flexibilidad, esto significa que el acoplamiento es completamente rı́gido, luego las ecuaciones del sistema tendran una
apariencia diferente al caso anterior.
Un acoplamiento rı́gido significa que la constante de rigidez del resorte es infinita: k ≈ ∞. No se puede modificar
los elementos de las matrices (1.27, 1.28) directamente debido a que algunos de ellos serian muy grande y esto no
puede ser posible. Luego, se debe retornar al conjunto de ecuaciones en (1.22) y (1.23) y modicarlas. Es obvio que las
dos posiciones angulares ahora seran iguales θm = θl = θ y el momento de inercia y los factores de fricción de los
rodamientos seran la suma: J = Jm + Jl y bb = bm + bl . Las dos ecuaciones se reducen a una sola ecuación diferencial
de segundo orden:
J θ̈ = Ka i − bn θ̇ . (1.30)
Las ecuaciones de la parte eléctrica seran las mismas que antes y el nuevo diagrama de bloques es mostrado en la Fig.
1.13.

ke

bb
x1 x3 x2
_ _ ·· ·
u 1 · i θ θ θ
--- i ∫ Ka
1
-- ∫ ∫
+ _ L + + J y

Figura 1.13 Diagrama de bloques del sistema reducido

El número de estados del sistema reducido es 3 y el vector de estados es como sigue:


 T  T
x = x1 x2 x3 = i θ θ̇ , (1.31)

y las ecuaciones de estado y salida resultan:


 
R ke  
1

 L 0 −
L 
ẋ =  0 0 1,  x +  L
   
 Ka 0 u (1.32)
bb 
0− 0
 J  J
y = 0 1 0 x.

1.5.4. Ejemplo: Doble filtro pasa-baja RC

A continuación se mostrará como derivar un modelo espacio de estados de un la red eléctrica pasiva mostrada en la
Fig. 1.14. Usando la leyes de Ohm y Kirchhoff en los tres lazos de corriente resulta:
Z
1
ei = R1 i1 + (i1 − i2 )dt,
Z C 1 Z
1 1
0= (i2 − i1 )dt + i2 dt + R2 i2 . (1.33)
C1 Z C2
1
−eo = − i2 dt
C2
1.5 Más ejemplos 13

Arreglando las ecuaciones, Z


1
R1 i1 = ei − (i1 − i2 )dt,
ZC1 Z
1 1
R2 i2 = (i1 − i2 )dt − i2 dt+ , (1.34)
C1 Z C2
1
eo = i2 dt
C2
se llega al diagrama de bloques de la Fig. 1.15.

R1 R2

C1 C2
ei eo
i1 i2 i3 = 0

Figura 1.14 Red eléctrica simple

Luego, derivando las ecuaciones de estado directamente del diagrama:


 
1 1 1
ẋ1 = (u − x1 ) − (x1 − x2 ) ,
C1  R1  R2 , (1.35)
1 1
ẋ2 = (x1 − x2 )
C2 R2

Acomodando el modelo espacio de estados es:


 
R1 + R2 1 
1

ẋ =  C1 R11 R2 C1 R12  x +  C1 R1  u,
 
− 0 (1.36)
 C2 R2 R2C2
y= 01 x

+ 1 i1
------
ei = u _ R1

x1 1 +
∫ ------
C1 _
eo = y

x2 1
∫ ------
C2
_
1 i2
------
+ R2

Figura 1.15 Diagrama de bloques del sistema en Fig. 1.14


14 1 Modelado de sistemas

1.5.5. Ejemplo: Horno eléctrico

La Fig. 1.16 muestra un horno aislado con calentamiento eléctrico que contiene un producto a ser calentado. La
temperatura del aire en el horno es Ts , las temperaturas del producto, material de aislamiento y aire del ambiente son
Tg , Tr y Ta respectivamente. Se asume que todas las temperaturas son uniformes. La potencia para calentamiento que
provee el elemento eléctrico es q, y las potencias que entran al producto y aislamiento son qg y qr . El calor perdido en
el aire del ambiente es qa .

Insulation

qg
Tr
Ta
Product u
Tg q
qa

qr Ts
Controlled
power supply

Figura 1.16 Horno calentado eĺectricamente

La potencia del elemento eléctrico es controlada de forma lineal tal que:

q = ku, (1.37)

donde k es una constante de proporcionalidad.


Se asume que el intercambio de energı́a de calor es debido a convección y por lo tanto las potencias y las temperat-
uras estan relacionadas por:
qg = kg (Ts − Tg ),
qr = kr (Ts − Tr ), (1.38)
qa = ka (Tr − Ta ),
donde los coeficientes-k son parámetros de convección dependiendo del área y la naturaleza fı́sica de las superficies.
Si la capacidad de calentamiento total del aire en el horno, del producto y del aislamiento se denota por Cs , Cg y Cr ,
se pueden formular las expresiones para la razón de variación de la temperatura de las diferentes partes del sistema.
Luego se tiene que:
dTs
Cs = q − qg − qr ,
dt
dTg
Cg = qg , (1.39)
dt
dTr
Cr = qr − qa .
dt
Un diagrama de bloques del modelo se puede ver en la Fig.1.17.
De la ecuación diferencial (1.39) se puede determinar la siguiente elección de variables de estado:
   
x1 Ts
x =  x2  =  Tg  (1.40)
x3 Tr

Con entrada u, el disturbio v = Ta y la salida y = Tg , se puede obtener el conjunto de ecuaciones del modelo espacio de
estados. Realizando la sustotución apropiada en (1.39). El resultado es:
1.5 Más ejemplos 15

1
ẋ1 = (ku − kg (x1 − x2 ) − kr (x1 − x3 )) ,
Cs
1
ẋ2 = kg (x1 − x2 ), (1.41)
Cg
1
ẋ3 = (kr (x1 − x3 ) − ka (x3 − v)) ,
Cr
o en la forma vectorial-matricial:
 
kg + kr kg kr
−  k   
 C s Cs C s  0
 kg kg 
   Cs   0 
ẋ =  − 0  x +  0  u +  k  v,
 Cg Cg  a (1.42)
 kr kr + ka  0 Cr
0 −
 Cr Cr
y= 010 x

Block diagram of u Ts
+ 1
the oven production system k
_ _
-----
Cs ∫
qg +
kg
_

1 Tg y
------
Cg ∫
qr +
kr
_

+ 1 Tr

_
-----
Cr ∫
qa +
ka
_
Ta

Figura 1.17 Diagrama de bloques del sistema en Fig. 1.16

Fuente: Capı́tulos 2 y 3 del libro Feedback Systems: An Introduction for Scientists and Engineers, de Karl J. Åström
y Richard M. Murray.
Fuente: Capı́tulo 1 del libro Dynamic Modeling and Control of Engineering Systems, de B. Kulakowski, J. Gardner
y L. Shearer.
Fuente: Capı́tulo 2 del libro Linear Systems Control: Deterministic and Stochastic Methods, de E. Hendricks, O.
Jannerup y P. Sorensen.
Capı́tulo 2
Linealización

El reemplazar un sistema no lineal por su aproximación lineal se denomina linealización. Una motivación para
la linealización es que el comportamiento dinámico de muchos sistemas no lineales dentro de un rango de variables
puede ser aproximado a modelos de sistemas lineales. Siendo ese el caso, podemos usar técnicas bien desarrolladas
de análisis y sı́ntesis de sistemas lineales para analizar un sistema no lineal. Cabe destacar que se debe tener mucho
cuidado cuando se realiza el análisis de sistemas linealizados ya que la intención no es introducir errores al analizar
sistemas no lineales.
Consideremos el caso de un sistema (elemento no lineal) con una variable de estado x y una variable de salida y que
están relacionadas por la siguiente ecuación:
y = h(x), (2.1)
donde la función h : R 7→ R es contı́nua y diferenciable; esto es h ∈ C 1 . Consideremos xo como el punto de operación.
Si expandemos h en la serie de Taylor alrededor del punto xo se obtiene:

y = h(x),
dh(xo ) (2.2)
= h(xo ) + (x − xo ) + términos de alto orden.
dx
La linealización de h(x) alrededor del punto xo consiste en reemplazar h por una aproximación lineal de la forma:

dh(xo )
y = h(xo ) + (x − xo )
dx (2.3)
dh(xo )
y = yo + (x − xo ),
dx
donde yo = h(xo ). Si ỹ = y − yo y x̃ = x − xo . Luego, podemos reescribir (2.3) como:

dh(xo )
ỹ = x̃, (2.4)
dx
y sobre un rango pequeño de x̃, la linea (2.3) es una buena aproximación de la curva y = h(x) en la vecindad del punto
de operación xo , ver Fig. 2.1 para una ilustración de la aproximación.
Si h : Rn 7→ R, esto es, y = h(x1 , x2 , ..., xn ), que significa que la variable dependiente depende de varias variables -
se puede aplicar el mismo principio. Sea:
 T
xo = x1o x2o ... xno (2.5)
el punto de operación. La expansión de la serie de Taylor de h alrededor del punto de operación xo resulta en:

y − h(xo ) = ∇h(xo )T (x − xo ) + términos de alto orden, (2.6)

donde:
∂ h ∂ h ∂ h
 
∇h(xo ) =T ... . (2.7)
∂ x1 x=xo ∂ x2 x=xo ∂ xn x=xo

17
18 2 Linealización

y
dh(x0)
y ⫽ y0 ⫹ (x ⫺ x0)
dx

y ⫽ h(x)
y0

x0 x

Figura 2.1 Aproximación lineal de la función y = h(x)

Geométricamente, la linealización de h alrededor de xo se puede pensar como el localizar un plano tangente sobre una
superficie no lineal en el punto de operación xo , como mostrado en la Fig. 2.2.

y ⫽ h(x)

Tangent
plane
h(x0)

x2
x1 x0

Figura 2.2 Plano tangente como aproximación lineal de una función de dos variables.

2.1. Linealizando ecuaciones diferenciales

Consideremos ahora un sistema dinámico modelado por un conjunto de ecuaciones diferenciales no lineales:

dx1
= f1 (x1 , x2 , ..., xn , u1 , u2 , ..., um ),
dt
dx2
= f2 (x1 , x2 , ..., xn , u1 , u2 , ..., um ),
dt . (2.8)
.. ..
. .
dxn
= fn (x1 , x2 , ..., xn , u1 , u2 , ..., um ).
dt
Asumiendo que las funciones fi , i = 1, 2, ..., n, son contı́nuas y diferenciables. El conjunto de las ecuaciones arriba
mostradas se puede representar en la forma vectorial por:

dx
= f (x, u). (2.9)
dt
2.1 Linealizando ecuaciones diferenciales 19
 T
Sea ue = u1e u2e ... une una entrada constante que fuerza al sistema (2.9) a que se asiente en un estado de equilibrio
 T
xe = x1e x2e ... xne ; esto es, ue y xe satisfacen:

f (xe , ue ) = 0. (2.10)

Los estados de equilibrio son llamados también puntos estacionarios, puntos constantes o puntos de reposo, ya que si
el sistema se ubica inicialmente en x = xe , luego permanecerá en x(t) = xe para todo tiempo t ≥ 0.
Por lo general cuando hablamos de la existencia de un ue 6= 0 nos referimos a condiciones de operación puesto que
el sistema necesitarı́a de esa inyección ya sea de fuerza (torque, etc.) para mantenerse en el punto de equilibrio.
Cuando analizamos la dinámica de un sistema no forzado, hacemos ue = 0 y luego buscamos el punto de equilibrio
dx
xe para el sistema dinámico = f (x), es decir la solución de f (xe ) = 0. En el caso de un sistema dinámico no forzado,
dt
éste puede presentar cero, uno o más puntos de equilibrio.
Para estudiar y analizar el comportamiento local del sistema alrededor del punto de equilibrio (xe , ue ), se supone que
tanto x − xe como u − ue son pequeños, tal que perturbaciones no lineales pueden ser ignoradas en comparación a los
términos lineales (de orden bajo). Este argumento es similar a cuando usamos aproximaciones de ángulos pequeños,
reemplazando sinθ con θ y cosθ con 1 para θ cerca a cero.
Si ahora perturbamos el estado de equilibrio haciendo:

x = xe + x̃, u = ue + ũ. (2.11)

La expansión de la serie de Taylor resulta en:

d
x = f (xe + x̃, ue + ũ),
dt (2.12)
∂f ∂f
= f (xe , ue ) + (xe , ue )x̃ + (xe , ue )ũ + términos de alto orden,
∂x ∂u
donde:
∂ f1 ∂ f1 ∂ f1 ∂ f1
   
... ...
 ∂ x1 ∂ xn   ∂ u1 ∂ um 
∂f  .. 
..  ∂f  .
 .

.. 
(xe , ue ) = 
 . .  y (xe , ue ) =  . .  (2.13)
∂x ∂ f ∂u
n ∂ fn
 ∂ f
n ∂ fn 
... ...
∂ x1 ∂ xn x = xe , ∂ u1 ∂ um x = xe ,

u = ue u = ue
son las matrices Jacobianas de f con respecto a x y u, evaluadas en el punto de equilibrio, (xe , ue ). Nótese que:

d d d d
x = xe + x̃ = x̃, (2.14)
dt dt dt dt
porque xe es una constante. Adicionalmente, f (xe , ue ) = 0, luego definiendo A ∈ Rn×n y B ∈ Rn×m de la siguiente
forma:
∂f ∂f
A= (xe , ue ) y B = (xe , ue ). (2.15)
∂x ∂u
Finalmente, eliminando los términos de orden alto, se llega a la siguiente aproximación lineal:

d
x̃ = Ax̃ + Bũ. (2.16)
dt
De forma similar, si las salidas del modelo del sistema no lineal son de la forma:

y1 = h1 (x1 , x2 , ..., xn , u1 , u2 , ..., um ),


y2 = h2 (x1 , x2 , ..., xn , u1 , u2 , ..., um ),
.. . (2.17)
.
y p = h p (x1 , x2 , ..., xn , u1 , u2 , ..., um ).
20 2 Linealización

o en notación vectorial:
y = h(x, u), (2.18)
entonces la expansión de la serie de Taylor puede ser usada nuevamente para llevar a la aproximación lineal de la
ecuación de salida del sistema. Sea:
y = ye + ỹ, (2.19)
luego obtenemos:
ỹ = Cx̃ + Dũ, (2.20)
donde:
∂ h1 ∂ h1 

...
 ∂ x1 ∂ xn 
∂h  . . 
C= (xe , ue ) =  ..
 .. 
 ∈ R p×n , (2.21)
∂x ∂h
p ∂ hp

...
∂ x1 ∂ xn x = xe ,

u = ue
y,
∂ h1 ∂ h1 

...
 ∂ u1 ∂ um 
∂h  .. 
.. 
D= (xe , ue ) = 
 . .  ∈ R p×m (2.22)
∂u ∂h
p ∂ h p 
...
∂ u1 ∂ um x = xe ,

u = ue
son las matrices Jacobianas de h con respecto a x y u, evaluadas en el punto de operación (xe , ue ).
El hecho de que modelos lineales puedan ser usados para estudiar el comportamiento de un sistema no lineal cerca
a los puntos de operación es bien importante. De hecho, lo que haremos en las próximas secciones es aprovechar esta
aproximación local lineal de un sistema no lineal para diseñar leyes de control por realimentación que mantengan
al sistema cerca al punto de equilibrio (diseño de dinámica). Entonces la realimentación se usará para hacer que las
soluciones del sistema controlado permanezcan cerca al punto de operación, ver Fig. 2.3.

2 2

1 1

x2 z2
0 0

−1 −1

−2 −2
0 π/2 π 3π/2 2π −π −π/2 0 π/2 π
x1 z1

Figura 2.3 Comparación entre los planos de fase de un sistema no lineal (a) y su aproximación lineal alrededor del origen (b). Nótese que
cerca al punto de equilibrio en el centro de las gráficas , los planos de fase (y como consecuencia la dinámica) es practicamente idéntica.

2.2. Ejemplo: Vehı́culo aéreo con impulsadores

Considere el movimiento de el vehı́culo aéreo, tal como el Harrier jump jet mostrado en la Fig. 2.4. El Harrier
es capaz de despegar verticalmente al redireccionar los impulsadores principales hacia abajo y a través del uso de
2.2 Ejemplo: Vehı́culo aéreo con impulsadores 21

impulsadores pequeños de maniobra que están localizados en sus alas. Un modelo simplificado es mostrado en la
Fig. 2.4(b) donde el enfoque del movimiento del vehı́culo es en un plano vertical que corta las alas del vehı́culo.
Las ecuaciones de movimiento serán calculadas representando las fuerzas generadas por el impulsador principal y los
impulsadores de maniobra como F1 y F2 (actuando a una distancia r por debajo del vehı́culo).

r
y
F2

x F1
(a) Harrier “jump jet” (b) Simplified model

Figura 2.4 (a) Vehı́culo aéreo con impulsadores y su (b) modelo simplificado donde el impulso neto ha sido descompuesto entre la fuerza
horizontal F1 y la fuerza vertical F2 actuando a una distancia r del centro de masa.

Sea (x, y, θ ) la posición y la orientación del centro de masa del vehı́culo. Sea m la masa del vehı́culo, J el momento
de inercia, g la constante graviatacional y c el coeficiente de amortiguamiento. Luego las ecuaciones de movimiento
son:
mẍ = F1 cosθ − F2 sinθ − cẋ,
mÿ = F1 sinθ + F2 cosθ + mg − cẏ, (2.23)
J θ̈ = rF1 .
Se cree conveniente redefinir las entradas tal que el origen sea considerado el punto de equilibrio del sistema con
entrada cero. Haciendo u1 = F1 y u2 = F2 − mg, las ecuaciones resultan:

mẍ = −mgsinθ − cẋ + u1 cosθ − u2 sinθ ,


mÿ = mg(cosθ − 1) − cẏ + u1 sinθ + u2 cosθ , (2.24)
J θ̈ = ru1 .

Estas ecuaciones definen el movimiento del vehı́culo como un conjunto de tres ecuaciones diferenciales acopladas.
Describiendo la dinámica del vehı́culo en la forma de espacio de estados:
 
z4

 z5 


 z6 

dz  c u1 u2 
=  −gsinz3 − z4 + cosz3 − sinz3  , (2.25)
dt  m c m u mu 
 1 2 
−g(cosz3 − 1) − z5 + sinz3 + cosz3 
 mu m m 
1
r
J
 T
donde z = x y θ ẋ ẏ θ̇ .
22 2 Linealización

2.2.1. Modelo lineal del vehı́culo aéreo con impulsadores

Suponiendo que u1 = 0 y u2 = 0, la dinámica del sistema se simplica a:


 
z4

 z5 

dz   z6 
= c
. (2.26)
dt  −gsinz3 − m z4  
−g(cosz3 − 1) − c z5 
m
0

Los puntos de equilibrio del sistema están dados cuando se hacen cero las velocidades ẋ, ẏ y θ̇ y escogiendo las
siguientes variables que satisfagan la siguiente ecuación:
   
0 −gsinz3e
= , → z3e = θe = 0. (2.27)
0 −g(cosz3e − 1)

Entonces, el punto de equilibrio corresponde a la posición vertical del vehı́culo. Nótese que xe y ye no están especifi-
cados. Esto ocurre porque nosotros podriamos trasladar el sistema a una nueva posición (más arriba) y todavia obtener
un punto de equilibrio.
Calculando la matriz de estados A y la matriz de entrada B:
 
00 0 1 0 0
0 0 0 0 1 0
 
∂f
0 0 0
 0 0 1
A= = , (2.28)
∂ z ze 0 0 −g −c/m 0 0

0 0 0 0 −c/m 0
00 0 0 0 0
 
0 0
 0 0 
 
∂ f  0 0 
B= =  . (2.29)
∂ u ze  1/m 0 

 0 1/m
r/J 0
Luego el sistema linealizado del vehı́culo aéreo con impulsores puede ser escrito como:
   
00 0 1 0 0 0 0
0 0 0 0 1 0  0 0 
   
d 0 0 0 0 0 1   0 0 
x̃ = 

 x̃ + 1/m 0  ũ
   (2.30)
dt 0 0 −g −c/m 0 0  
0 0 0 0 −c/m 0  0 1/m
00 0 0 0 0 r/J 0

2.3. Ejemplo: manipulador robótico

(El siguiente problema ha sido adaptado de Snyder, W.E., Industrial Robots: Computer interfacing and control) En
la Fig. 2.5 se muestra el manipulador robótico θ − r. Un representación esquemática del robot es presentada en la Fig.
2.7 donde se asume una configuración de masas concentradas. La masa m1 = 10kg representa la masa del cilindro
exterior y se ubica en el centro de masa del mismo. La constante r1 = 1m designa la distancia fija entre el centro
de masa del cilindro exterior y el centro de rotación. La masa de la carga es representada por m2 = 3kg y se asume
que está localizada al final de un pistón de un brazo telescópico cuya distancia radial r es medida a partir del centro
2.3 Ejemplo: manipulador robótico 23

de rotación. El ángulo de rotación del brazo manipulador es θ . Se asume que las entradas al sistema son el torque Tθ
aplicado en el centro de rotación en la dirección del ángulo θ y la fuerza traslacional (radial) Fr aplicada en la dirección
r. Despreciar la masa del cilindro interior. Usar g = 10m/sec2 como aceleración de la gravedad.

Figura 2.5 Manipulador robótico θ − r Figura 2.6 Representación esquemática manipulador θ − r

Construiremos las ecuaciones de movimiento del sistema en base a las ecuaciones de Lagrange y luego las repre-
sentaremos en la forma espacio de estados.

2.3.1. Ecuaciones de movimiento usando Lagrange

Energı́a cinética (T ) Primero encontramos la energia cinética total del sistema. Para esto definimos las posiciones de
la masa m1 :
x1 = r1 cosθ ,
y1 = r1 sinθ .
Nótese que r1 es una constante y que las posiciones de la masa m1 hacen referencia al movimiento traslacional que
experimenta el centro de masa del cilindro externo (masa concentrada). Diferenciando x1 y y1 con respecto al tiempo
se obtiene:
ẋ1 = −r1 θ̇ sinθ ,
ẏ1 = r1 θ̇ cosθ .
La magnitud del cuadrado del vector velocidad de la masa m1 es:

v21 = x˙1 2 + y˙1 2 = r12 θ̇ 2 sin2 θ + r12 θ̇ 2 cos2 θ = r12 θ̇ 2 .

Entonces, la energia cinética de la masa m1 es: T1 = 12 m1 v21 = 21 m1 r12 θ̇ 2 .


Ahora derivaremos una expresión para la energia cinética de la segunda masa. La posición de la masa m2 es:

x2 = rcosθ ,
y2 = rsinθ .
Nótese que r no es una constante y que la posiciones de la masa m2 hacen referencia al movimiento traslacional que
experimenta la masa de carga (masa concentrada). Diferenciando x2 y y2 con respecto al tiempo se obtiene:

ẋ2 = ṙcosθ − rθ̇ sinθ ,


ẏ2 = ṙsinθ + rθ̇ cosθ .
La magnitud del cuadrado del vector velocidad de la masa m2 es:

v22 = x˙2 2 + y˙2 2 = (ṙcosθ − rθ̇ sinθ )2 + (ṙsinθ + rθ̇ cosθ )2 = ṙ2 + r2 θ̇ 2 .
24 2 Linealización

Entonces, la energı́a cinética de la masa m2 es: T2 = 21 m2 v22 = 21 m2 (ṙ2 + r2 θ̇ 2 ).


Energı́a potencial (V ) Ahora encontraremos la energı́a potencial del sistema. La energı́a potencial de la masa m1 es:

V1 = m1 gr1 sinθ .

La energı́a potencial de la masa m2 es:


V2 = m2 grsinθ .
Ecuaciones de movimiento La función Lagrangiana (o Lagrangiano) para el sistema es:
1 1
L = T −V = m1 r12 θ̇ 2 + m2 (ṙ2 + r2 θ̇ 2 ) − m1 gr1 sinθ − m2 grsinθ .
2 2
El manipulador posee dos grados de libertad (r y θ ). Luego, tenemos dos ecuaciones de movimiento para el sistema:
 
d ∂L ∂L
− = Tθ
dt ∂ θ̇ ∂θ
 
d ∂L ∂L
− = Fr
dt ∂ ṙ ∂r

La primera ecuación de movimiento resulta en:

m1 r12 θ̈ + m2 r2 θ̈ + 2m2 rṙθ̇ + gcosθ (m1 r1 + m2 r) = Tθ .

La segunda ecuación de movimiento viene a ser:

m2 r̈ − m2 rθ̇ 2 + m2 gsinθ = Fr .

2.3.2. Representación espacio de estados

Definiendo las siguientes variables:

z1 = θ , z2 = θ̇ , z3 = r, z4 = ṙ.

Luego podemos escribir:  


  z2
z1  −2m2 z2 z3 z4 − gcosz1 (m1 r1 + m2 z3 ) + u1 
d z   
2
 =  m1 r12 + m2 z23 
, (2.31)
dt z3   z4 
 u2 
z4
| {z } z22 z3 − gsinz1 +
m2
dz | {z }
dt f (z, u)
donde u1 = Tθ y u2 = Fr . Asumiendo que la salida está dada por la posición de la masa de carga, v1 = x2 = rcosθ y
v2 = y2 = rsinθ se tiene:    
v1 z cosz1
= 3 , (2.32)
v2 z3 sinz1
|{z} | {z }
v h(z, u)
2.3 Ejemplo: manipulador robótico 25

2.3.3. Linealización

Para encontrar el modelo linealizado del manipulador robótico debemos calcular primero los puntos (estados) de
equilibrio.
Puntos de equilibrio para entradas nulas Considerando entradas nulas (u1 = 0 y u2 = 0), el modelo del sistema
resulta en:  
z2
 −gcosz1 (m1 r1 + m2 z3 ) 
dz  
= m1 r12 + m2 z23 , (2.33)
dt   
z4 
−gsinz1
e igualando las derivadas a cero, la ecuación que debemos resolver es la siguiente:
 
  −gcosz1 (m1 r1 + m2 z3 )
0
= m1 r12 + m2 z23 , (2.34)
0
−gsinz1

como no existe un z1 tal que cosz1 = 0 y sinz1 = 0 simultáneamente, esto significa que el modelo no forzado que hemos
considerado para el manipulador robótico no presenta puntos de equilibrio ze ; es decir, el sistema dinámico analizado
no presenta condiciones iniciales z(0) que tal que el sistema permanecerá en ese punto z(0) indefinidamente (¿coincide
esto con lo que te dice tu intuición?).
Punto de operación (entradas constantes) Considerando entradas constantes (u1 = u1e y u2 = u2e ) e igualando las
derivadas a cero resulta:  
  z2e
0  −gcosz1e (m1 r1 + m2 z3e ) + u1e 
0  
 =  m1 r12 + m2 z23 
, (2.35)
0  z4e 
 u2e 
0
−gsinz1e +
m2
Luego, el modelo del sistema será linealizado alrededor del punto de equilibrio:
 T
ze = z1e 0 z3e 0 ,

donde z1e y z3e satisfacen las siguientes ecuaciones:


 u1e 
cosz1e =
 g(m1 r1 + m2 z3e )  .
 u2e 
sinz1e =
gm2

Calculando los elementos de las matrices Jacobianas del sistema no lineal definido en (2.31) tenemos:
∂ f1 ∂ f1
=0 =1
∂ z1 ∂ z2
∂ f1 ∂ f1
=0 =0
∂ z3 ∂ z4
∂ f2 gsinz1 (m1 r1 + m2 z3 ) ∂ f2 −2m2 z3 z4
= =
∂ z1 m1 r12 + m2 z23 ∂ z2 m1 r12 + m2 z23
∂ f2 −m2 (2z2 z4 + gcosz1 )(m1 r12 + m2 z23 ) − (−2m2 z2 z3 z4 − gcosz1 (m1 r1 + m2 z3 ) + u1 )(2m2 z3 ) ∂ f2 −2m2 z2 z3
= =
∂ z3 (m1 r12 + m2 z23 )2 ∂ z4 m1 r12 + m2 z23 (2.36)
∂ f3 ∂ f3
=0 =0
∂ z1 ∂ z2
∂ f3 ∂ f3
=0 =1
∂ z3 ∂ z4
∂ f4 ∂ f4
= −gcosz1 ∂ z2 = 2z3
∂ z1
∂ f4 ∂ f4
= z22 =0
∂ z3 ∂ z4
26 2 Linealización

y,
∂ f1 ∂ f1
=0 =0
∂ u1 ∂ u2
∂ f2 1 ∂ f2
= =0
∂ u1 m1 r12 + m2 z23 ∂ u2 (2.37)
∂ f3 ∂ f3
=0 =0
∂ u1 ∂ u2
∂ f4 ∂ f4 1
=0 =
∂ u1 ∂ u2 m2
Adicionalmente, para la matriz de salida (2.32):

∂ h1 ∂ h1 ∂ h1 ∂ h1
= −z3 sinz1 =0 = cosz1 =0
∂ z1 ∂ z2 ∂ z3 ∂ z4 , (2.38)
∂ h2 ∂ h2 ∂ h2 ∂ h2
= z3 cosz1 =0 = sinz1 =0
∂ z1 ∂ z2 ∂ z3 ∂ z4
y,
∂ h1 ∂ h1
=0 =0
∂ u1 ∂ u2 , (2.39)
∂ h2 ∂ h2
=0 =0
∂ u1 ∂ u2
Evaluando las matrices Jacobianas en (ze , ue ) tenemos:
 
0 1 0 0
 ue2 (m1 r1 + m2 z3e ) −m2 u1e 
∂f  2 2
0 0
(ze , ue ) =  m2 (m1 r1 + m2 z3e )
 (m1 r12 + m2 z23e )(m1 r1 + m2 z3e ) 
, (2.40)
∂x  0 0 0 1
 u1e 
− 2z3e 0 0
m1 r1 + m2 z3e
 
0 1
 1 
0 
∂f 
 m1 r12 + m2 z23e 
(ze , ue ) =  , (2.41)
∂u  0 0 
 1 
0
m2
 ue2 u1e 
−z3 0 0
∂h  gm2 g(m1 r1 + m2 z3e )  ,
(ze , ue ) =  u1e ue2 (2.42)
∂x

z3e 0 0
g(m1 r1 + m2 z3e ) gm2
y  
∂h 00
(ze , ue ) = . (2.43)
∂u 00
Modelo lineal en la forma espacio de estados Usando las matrices Jacobianas arriba mencionadas y definiedo:

∂f ∂f
(ze , ue ) = A y (ze , ue ) = B
∂z ∂u
∂h ∂h
(ze , ue ) = C y (ze , ue ) = D
∂z ∂u
Luego las matrices correspondientes para la representación espacio de estados lineal alrededor del punto de operación
(ze , ue ) son:
2.4 Ejemplo: manipulador robótico - incluyendo la dinámica del cuerpo rı́gido 27
   
0 1 0 0 0 1
 ue2 (m1 r1 + m2 z3e ) −m2 u1e   1 
 0 0  0 
2 2 (m1 r12 + m2 z23e )(m1 r1 + m2 z3e )  m1 r12 + m2 z23e
A =  m2 (m1 r1 + m2 z3e )
  
, B= , (2.44)
 0 0 0 1  0 0 
 u1e   1 
− 2z3e 0 0 0
m1 r1 + m2 z3e m2
y:  
ue2 u1e
−z3 0 0  

C= gm2 g(m1 r1 + m2 z3e )  , D = 0 0 , (2.45)
u1e ue2 
00
z3e 0 0
g(m1 r1 + m2 z3e ) gm2
La representación espacio de estados lineal queda de la siguiente forma:
   
0 1 0 0 0 1
 ue2 (m1 r1 + m2 z3e ) −m2 u1e   1 
0 
 m2 (m1 r2 + m2 z2 ) 0 (m1 r2 + m2 z2 )(m1 r1 + m2 z3e ) 0 
d z̃   
=
 m1 r12 + m2 z23e 
1 3e 1 3e  z̃ +   ũ (2.46)
dt  0 0 0 1   0 0 
 u1e   1 
− 2z3e 0 0 0
m1 r1 + m2 z3e m2
 ue2 u1e 
−z3 0 0  

ṽ =  gm2 g(m1 r1 + m2 z3e )  z̃ + 0 0
ũ. (2.47)
u1e ue2  0 0
z3e 0 0
g(m1 r1 + m2 z3e ) gm2

2.3.4. Ideas adicionales acerca del modelo

Si asumimos que r = cte = r1 y que el objetivo es mantener θ = π /2, entonces el problema del manipulador
robótico se puede interpretar como un péndulo invertido con masa m1 + m2 . ¿Qué pasa cuando θ = π /2 y r = cte > r1 ,
qué sistema tenemos?.
Otra simplificación del modelo se puede dar cuando se considera θ = 0 y r variable, en ese caso podemos hablar de
traslación de la masa de carga en la dirección horizontal.

2.4. Ejemplo: manipulador robótico - incluyendo la dinámica del cuerpo rı́gido

(El siguiente problema ha sido adaptado de Snyder, W.E., Industrial Robots: Computer interfacing and control) En
la Fig. 2.7 se muestra el manipulador robótico θ − r. Un representación esquemática del robot es presentada en la Fig.
2.8. La masa mo = 10kg representa la masa del cilindro exterior y se ubica en el centro de masa del cilindro exterior, Io
representa el momento de inercia del cilindro exterior con respecto a su centro de masa. La constante r2o = 1m designa
la distancia fija entre el centro de masa del cilindro exterior y el centro de rotación. La masa de la carga es representada
por ml = 3kg y se asume que está localizada al final de un pistón de un brazo telescopico cuya distancia radial r es
media a partir del centro de rotación. El ángulo de rotación del brazo manipulador es θ . El cilindro interno del brazo
telescópico tiene masa mi = 2kg y momento de inercia igual a Ii . Asuma que las entradas al sistema son el torque Tθ
aplicado en el centro de rotación en la dirección del ángulo θ y la fuerza traslacional (radial) Fr aplicada en la dirección
r. Usar g = 9,8m/sec2 como aceleración de la gravedad.
Construiremos las ecuaciones de movimiento del sistema en base a las ecuaciones de Lagrange y luego las repre-
sentaremos en la forma espacio de estados.
28 2 Linealización

ml
Ii , mi , ro

Io , mo , ro

Figura 2.7 Manipulador robótico θ − r Figura 2.8 Representación esquemática manipulador θ − r

2.4.1. Ecuaciones de movimiento usando Lagrange

Energı́a cinética Primero encontramos la energia cinética total del sistema. La energia cinética traslacional es obtenida
definiendo las posiciones de los centros de masa de los cilindros externo e interno con masas mo y mi , y la posición de
la masa de carga ml :
xo = 21 ro cosθ ,
yo = 21 ro sinθ .
xi = (r − 12 ro )cosθ ,
yi = (r − 21 ro )sinθ .
xl = rcosθ ,
yl = rsinθ .
Nótese que ro es una constante, mientras que r no lo es. Diferenciando x e y con respecto al tiempo se obtiene:

ẋo = −ro 12 θ̇ sinθ ,


ẏo = ro 12 θ̇ cosθ .

ẋi = 21 ṙcosθ − 21 rθ̇ sinθ + 12 ro θ̇ sinθ ,


ẏi = 12 ṙsinθ + 12 rθ̇ cosθ − 21 ro θ̇ cosθ .
ẋl = ṙcosθ − rθ̇ sinθ ,
ẏl = ṙsinθ + rθ̇ cosθ .
La magnitud del cuadrado del vector velocidad de los centros de masa de los cilindros exterior e interior, y de la
masa de la carga es:
r2 r2 1
v2o = x˙o 2 + y˙o 2 = o θ̇ 2 sin2 θ + o θ̇ 2 cos2 θ = ro2 θ̇ 2 .
4 4 4
1 1 1 1
v2i = ẋi2 + ẏ2i = (ṙcosθ + (ro − r)θ̇ sinθ )2 + (ṙsinθ − (ro − r)θ̇ cosθ )2 = ṙ2 + (ro − r)2 θ̇ 2 .
4 4 4 4
v2l = x˙l 2 + y˙l 2 = (ṙcosθ − rθ̇ sinθ )2 + (ṙsinθ + rθ̇ cosθ )2 = ṙ2 + r2 θ̇ 2 .
Entonces, la energia cinética traslacional de los cilindros y masa de carga respectivamente es:
1 11
Tto = mo v2o = mo (ro2 θ̇ 2 ).
2 24
1 11
Tti = mi v2i = mi (ṙ2 + (ro − r)2 θ̇ 2 ).
2 24
2.4 Ejemplo: manipulador robótico - incluyendo la dinámica del cuerpo rı́gido 29

1 1
Ttl = ml v2l = ml (ṙ2 + r2 θ̇ 2 ).
2 2
Considerando que los cilindros son cuerpos rı́gidos, debemos adicionar su energı́a cinética rotacional a la energia
cinética total del sistema. Este no es el caso para la masa de carga, que es considerada como una masa concentrada
(partı́cula). La energia cinética rotacional de los cilindros se obtiene usando:
1
Tro = Io ω 2
2
1
Tri = Ii ω 2
2
Asumiendo que el cilindro interno es una varilla, su momento de inercia con respecto al centro de gravedad es Ii =
1 2 1 2 2
12 mi r . Para el caso del cilindro externo hueco se puede considerar que Io = 12 mo (3t + ro ), donde t depende de los
radios internos y externos del cilindro hueco. Sabiendo que ω = θ̇ , se obtiene:
1 1
Tro = mo (3t 2 + ro2 )θ̇ 2
2 12
1 1
Tri = mi r2 θ̇ 2
2 12 o
Sumando las energı́as cinéticas resulta:
T = Tt + Tr
 
1 1 1 1 1
T= mo (ro2 θ̇ 2 ) + mi (ṙ2 + (ro − r)2 θ̇ 2 ) + ml (ṙ2 + r2 θ̇ 2 ) + mi ro2 θ̇ 2 + mo (3t 2 + ro2 )θ̇ 2
2 4 4 12 12
 
1 1 2 2 1 2 1 2 1 2 2 1 2 2 1
T= mo ( ro θ̇ + t ) + mi ( ṙ + r θ̇ + ro θ̇ − ro rθ̇ ) + ml (ṙ + r θ̇ ).
2 2 2 2
2 3 4 4 3 4 2
Energı́a potencial Ahora encontraremos la energı́a potencial del sistema. La energı́a potencial de los centros de masa
de los cilindros (mo y mi ) y la masa de carga ml :
1
Vo = mo gro sinθ .
2
1 1
Vi = mi g(r − ro )sinθ .
2 2
Vl = ml grsinθ .
Luego la energia potencial total es:
 
1 1
V= (mo ro + mi (r − ro )) + ml gsinθ .
2 2

Ecuaciones de movimiento La función Lagrangiana (o Lagrangiano) para el sistema es:



2 mo ( 3 ro θ̇ + 4 t ) + mi ( 4 ṙ + 3 r θ̇ + 4 ro θ̇ − 2 ro r θ̇ ) + ml (ṙ + r θ̇ )
1 1 2 2 1 2 1 2 1 2 2 1 2 2 1 2 2 2 2
L = T −V =
2 (mo ro + mi (r − 2 ro )) + ml r gsinθ .
1 1

El manipulador posee dos grados de libertad (r y θ ). Luego, tenemos dos ecuaciones de movimiento para el sistema:
 
d ∂L ∂L
− = Tθ
dt ∂ θ̇ ∂θ
 
d ∂L ∂L
− = Fr
dt ∂ ṙ ∂r

La primera ecuación de movimiento resulta en:


30 2 Linealización

3 mo ro θ̈ + 31 mi r2 θ̈ + 41 mi ro2 θ̈ − 21 mi rro θ̈ − 12 mi ro ṙθ̇ + 23 mi rṙθ̇ + ml r2 θ̈ + 2ml rṙθ̇


1 2

+gcosθ 12 (mo ro + mi (r − 21 ro )) + ml r = Tθ .

La segunda ecuación de movimiento viene a ser:


1 1 1 1
mi r̈ + ml r̈ − mi rθ̇ 2 + mi ro θ̇ 2 − ml rθ̇ 2 + ( mi + ml )gsinθ = Fr .
4 3 4 2

2.4.2. Representación espacio de estados

Definiendo las siguientes variables:

z1 = θ , z2 = θ̇ , z3 = r, z4 = ṙ,

se puede escribir:
 
z2
   − 2 m z z z − 2m z z z + 1 m r z z − gcosz ( 1 m r + 1 m (z − ro ) + m z ) + u 
z1  3 i 2 3 4 l 2 3 4 2 i o 2 4 1 2 o o 2 i 3 2 l 3 1
d    1 2 + 1 m z2 + 1 m r 2 − 1 m z r + m z2 
z 2
 =  3 m o r o 3 i 3 4 i o 2 i 3 o l 3 
, (2.48)
dt z3
   z4 
 1 2 z + m z2 z − ( 1 m + m )gsinz + u 
z4  3 mi z 2 3 l 2 3 2 i l 1 2 
| {z } 1
dz ml + 4 mi
| {z }
dt f (z, u)

donde u1 = Tθ y u2 = Fr . Asumiendo que la salida está dada por la posición de la masa de carga, v1 = xl = rcosθ y
v2 = yl = rsinθ se tiene:    
v1 z sinz1
= 3 , (2.49)
v2 z3 cosz1
|{z} | {z }
v h(z, u)
Fuente: Capı́tulos 1 del libro Systems and Control de Stanislaw H. Zak (2002).
Fuente: Capı́tulos 2 y 3 del libro Feedback Systems: An Introduction for Scientists and Engineers, de Karl J. Åström
y Richard M. Murray.
Fuente: Capı́tulos 1 del libro Systems and Control de Stanislaw H. Zak (2002).
Fuente: Capı́tulos 2 y 3 del libro Feedback Systems: An Introduction for Scientists and Engineers, de Karl J. Åström
y Richard M. Murray.
Capı́tulo 3
Sistemas Lineales

En esta parte del curso nos centraremos en el caso de sistemas lineales invariantes en el tiempo y analizaremos el
efecto de las condiciones iniciales y las entradas en las salidas. Los conceptos centrales de matriz exponencial y la
ecuación convolución nos permitirán caracterizar completamente el sistema.
Durante las clases anteriores hemos visto varios ejemplos donde los sistemas son modelados usando ecuaciones
diferenciales lineales. En general, varios sistemas dinámicos pueden ser modelados de forma precisa usando ecuaciones
diferenciales lineales. Ası́, sistemas mecánicos y circuitos eléctricos son ejemplos donde los modelos lineales pueden
ser usados efectivamente. En muchos casos, nosotros creamos sistemas con una respuesta de entrada/salida lineal.
Por ejemplo, casi todos los sistemas modernos de procesamiento de señales, ya sean analógicos o digitales, usan
realimentación para producir caracterı́sticas de entrada/salida lineales o casi-lineales. Para estos sistemas, a menudo
es útil representar las caracterı́sticas de entrada/salida como lineales, ignorando los detalles internos requeridos para
obtener la respuesta lineal. Para otros sistemas, sin embargo, las no linealidades no pueden ser ignoradas, especialmente
si uno se importa en el comportamiento global del sistema. Sin embargo, si sólo nos importa lo que pasa cerca del punto
de equilibrio, es suficiente aproximar la dinámica no lineal por su linealización local.

3.1. Definiciones básicas

3.1.1. Linealidad

Considerando el sistema en la forma espacio de estados y su correspondiente ecuación de salida:

dx
= f (x, u), y = h(x, u), (3.1)
dt
donde x ∈ Rn , x ∈ R p y y ∈ Rq . Sean (xe , ue ) 6= 0 las condiciones de operación, y definiendo:

x̃ = x − xe , ũ = u − ue , ỹ = y − ye . (3.2)

podemos reescribir las ecuaciones de movimiento usando como punto de equilibrio del sistema al origen x̃ = 0 y ũ = 0.
Luego tenemos:
d
x̃ = f (xe + x̃, ue + ũ) = f˜(x̃, ũ),
dt (3.3)
ỹ = h(xe + x̃, ue + ũ) − ye = h̃(x̃, ũ).
En el nuevo conjunto de variables, el origen es un punto de equilibrio con salida cero. Una vez realizado el análisis
en este nuevo conjunto de variables, las respuestas obtenidas serán trasladadas de vuelta a las coordinadas iniciales
usando x = xe + x̃, u = ue + ũ y y = ye + ỹ.
Para el sistema (3.1), asumiendo, sin pérdida de generalidad, que el origen es el punto de equilibrio de interés,
escribiremos la salida y(t) correspondiente a la condición inicial x(0) = xo y entrada u(t) como y(t; xo , u). Usando esta
notación, un sistema de entrada/salida es lineal si las siguientes condiciones son satisfechas:

31
32 3 Sistemas Lineales

i) y(t; α x1 + β x2 , 0) = α y(t; x1 , 0) + β y(t; x2 , 0)


ii) y(t; α xo , δ u) = α y(t; xo , 0) + δ y(t; 0, u) (3.4)
iii) y(t; 0, δ u1 + γ u2 ) = δ y(t; 0, u1 ) + γ y(t; 0, u2 ).

Luego definimos que un sistema es lineal si las salidas son conjuntamente lineales en la respuesta a las condiciones
iniciales (u = 0) y la respuesta forzada (x(0) = 0). La propiedad iii) está relacionada al principio de superposición: la
respuesta de un sistema lineal a la suma de dos entradas u1 y u2 es la suma de las salidas y1 y y2 correspondientes a
cada entrada.
La forma general del sistema lineal en la forma de espacio de estados, con correspondiente ecuación de salida, es:

dx
= Ax + Bu, x(0) = xo
dt (3.5)
y = Cx + Du,

donde A ∈ Rn×n , B ∈ Rn×p , C ∈ Rq×n y D ∈ Rq×p . La ecuación (3.5) es un sistema de ecuaciones diferenciales lineales
de primer orden con entrada u, estado x y salida y. Es fácil mostrar que dos soluciones dadas x1 (t) y x2 (t) para este
sistema de ecuaciones, satisfacen las condiciones de linealidad.
Definiendo xh (t) como la solución con entrada cero (solución homogénea) y la solución x p (t) como la solución con
condiciones iniciales igual a cero (solución particular). La Fig. 3.1 ilustra como dos soluciones individuales se pueden
superponer para formar la solución completa.

Input u State x1 , x2 Output y


Homogeneous

2 2 2

0 0 0

−2 −2 −2
0 20 40 60 0 20 40 60 0 20 40 60

2 2 2
Particular

0 0 0

−2 −2 −2
0 20 40 60 0 20 40 60 0 20 40 60

2 2 2
Complete

0 0 0

−2 −2 −2
0 20 40 60 0 20 40 60 0 20 40 60
Time t [sec] Time t [sec] Time t [sec]

Figura 3.1 Superposición de soluciones particulares y homogéneas.

Respuesta total = respuesta a entrada cero + respuesta a condiciones iniciales cero

3.1.2. Invariancia en el tiempo

Invariancia en el tiempo es un concepto importante que se usa para describir un sistema cuyas propiedades no
cambian en el tiempo. Más precisamente, para un sistema invariante en el tiempo, si la entrada u(t) resulta en y(t), luego
moviendo el tiempo en el que se aplica la entrada por una constante a, u(t +a), la salida resulta en y(t +a). Los sistemas
que son lineales e invariantes en el tiempo a menudo se denominan sistemas LTI (linear time invariant, por sus siglas
en inglés) y poseen una propiedad interesante: su respuesta a una entrada arbitraria está completamente caracterizada
por sus respuesta a entradas del tipo escalón o sus respuestas a impulsos cortos. Ver más detalle a continuación.
3.2 Respuesta a la condición inicial 33

Descripción entrada-salida, sistema LTI

Suponiendo que el sistema se encuentra inicialmente en el punto de equilibrio (respuesta a las condiciones iniciales
es cero), la respuesta a una entrada se puede obtener al superponer las respuestas a una combinación de entradas tipo
escalón. Un ejemplo de este cálculo está dado en la Fig. ??. La Fig. ??(a) muestra una entrada u(t) lineal por partes
(suma de funciones escalón). Sea H(t) la respuesta a un escalón unitario aplicado en el tiempo 0. La respuesta al primer
escalón es entonces H(t − to )u(to ), la respuesta al segundo escalón es H(t − t1 )(u(t1 ) − u(to )), y ası́ sucesivamente.
Luego, podemos encontrar la respuesta completa del sistema siendo dada por:

y(t) = H(t − to )u(to ) + H(t − t1 )(u(t1 ) − u(to )) + ...


= (H(t − to ) − H(t − t1 ))u(to ) + (H(t − t1 ) − H(t − t2 ))u(t1 ) + ...

= ∑ (H(t − tn ) − H(t − tn+1 ))u(tn ) (3.6)
n=0

(H(t − tn ) − H(t − tn+1 ))
= ∑ tn+1 − tn
u(tn )(tn+1 − tn ),
n=0

como mostrado en la Fig. ??(b). La respuesta a una señal contı́nua se obtiene tomando el lı́mite cuando tn+1 − tn → 0,
que resulta en: Z ∞
y(t) = H ′ (t − τ )u(τ )d τ , (3.7)
0
donde H ′ es la derivada de la respuesta al escalón, también llamada respuesta impulsiva h. Luego, la respuesta de
un sistema LTI a cualquier entrada puede ser calculada a partir de la respuesta al escalón. Nótese que la salida sólo
depende de la entrada pues consideramos que el sistema está en reposo al inicio,x(0) = 0).
Siendo el sistema causal (sistema donde la salida depende de las entradas pasadas o actuales pero no de entradas
futuras), se tiene que la salida para todo sistema LTI causal en reposo al inicio está descrita por:
Z t Z t
y(t) = h(t − τ )u(τ )d τ = h(τ )u(t − τ )d τ , (3.8)
0 0

La segunda igualdad puede ser fácilmente verificada haciendo un cambio de variable (t − τ = σ ). La integración en
(3.8) es llamada una integración convolución.

1
1
0.8
0.5
Output (y)
Input (u)

0.6 u(t1 )−u(t0 )

0.4
u(t1 ) 0
0.2 u(t0 ) Complete
−0.5 Steps
0
0 2 4 6 8 0 5 10 15
Time (sec) Time (sec)

Figura 3.2 (a) Respuesta a entradas contı́nuas por partes y (b) salida resultante de la suma de entradas individuales.

3.2. Respuesta a la condición inicial

La ecuación (3.7) muestra que la salida de un sistema lineal se puede expresar como un integral sobre todas las
entradas u(t). En esta sección derivaremos una fórmula más general, que incluye las condiciones iniciales diferentes
de cero.
En esta sección calcularemos la solución de un sistema de la forma:
34 3 Sistemas Lineales

dx
= Ax, x(0) = xo . (3.9)
dt
Para la ecuación diferencial escalar se tiene:
dx
= ax, x ∈ R, a ∈ R (3.10)
dt
y la solución está dada por:
x(t) = eat x(0). (3.11)
Generalizando para cuando A se convierte en una matriz. Definimos el exponencial de matrices como una serie infinita:

1 1 1
eX = I + X + X 2 + X 3 + ... = ∑ X k , (3.12)
2 3! k=0 k!

donde X ∈ Rn×n es una matriz cuadrada y I es la matriz identidad n × n.


Reemplazando X en (3.9) por At, donde t ∈ R, tenemos que:

1 1 1
eAt = I + At + A2t 2 + A3t 3 + ... = ∑ Ak t k , (3.13)
2 3! k=0 k!

luego diferenciando la expresión en (3.13) con respecto al tiempo resulta en:



d At 1 1
e = A + A2t + A3t 2 + ... = A ∑ Ak t k = AeAt . (3.14)
dt 2 k=0 k!

Multiplicando por x(0) por la derecha, encontramos que x(t) = eAt x(0) es la solución a la ecuación diferencial (B.8)
con condiciones iniciales x(0). La matriz Φ (t) = eAt es denominada matriz de transición.
Tomando la transformada de Laplace en (3.14), sabiendo que L [dh(t)/dt] = sL [h(t)] − h(0), tenemos:

sL (eAt ) − e0 = AL (eAt )
(sI − A)L (eAt ) = I.

Entonces, si A no tiene autovalores en el eje imaginario, obtenemos:

L (eAt ) = (sI − A)−1 . (3.15)

3.2.1. Ejemplo: Integrador doble

Un sistema lineal muy simple que puede ser usado para enteubnder conceptos básicos es la ecuación diferencial de
segunda orden dada por:
q̈ = u, y = q.
El sistema es llamado de integrador doble porque su entrada u es integrada dos veces para determinar la salida y. En la
 T
forma espacio de estados, escribimos x = q q̇ y:
   
dx 01 0
= x+ u.
dt 00 1

La matriz dinámica de un integrador doble es: 



01
A= ,
00
y por cálculo directo encontramos que A2 = 0 y entonces:
3.3 Respuesta entrada/salida 35
 
1t
Φ (t) = eAt = .
01

Entonces, la solución homogénea (u = 0) para un integrador doble es dada por:


    
1t x1 (0) x1 (0) + tx2 (0)
x(t) = = .
0 1 x2 (0) x2 (0)

3.2.2. Ejemplo: Oscilador sin amortiguamiento

Un modelo simple de oscilador, tal como el sistema masa-resorte sin amortiguamiento es:

q̈ + ωo2 q = u.

Poniendo el sistema en la forma de espacio de estados, la matriz dinámica del sistema puede ser escrita como:
   
0 ωo At cosωot sinωot
A= y e = .
−ωo 0 −sinωot cosωot

Esta expresión para Φ (t) = eAt se puede verificar por diferenciación:


 
d At −ωo sinωot ωo cosωot
e = ,
dt  −ωo cosωot −ωo sinωot 
0 ωo cosωot sinωot
= = AeAt .
−ωo 0 −sinωot cosωot

Luego la solución está dada por:


  
cosωot sinωot x1 (0)
x(t) = eAt x(0) = .
−sinωot cosωot x2 (0)

Si el sistema tiene amortiguamiento:


q̈ + 2ζ ωo q + ωo2 q = u,
la solución es más complicada, pero se puede mostrar que la matriz exponencial es de la forma:

ζ eiωd t − ζ e−iωd t eiωd t + e−iωd t eiωd t − e−iωd t


 
p + p
 2 ζ2 −1 2 2 ζ2 −1 
e−ωo ζ t  ω ω ω ω ω ω
,
 e −i d t −ei d t ζe−i d t −ζe i d t ei d t +e−i d t 
p p +
2 ζ2 −1 2 ζ2 −1 2
p p
donde ωd = ωo ζ 2 − 1. Nótese que ωd y ζ 2 − 1 pueden ser real o complejo, pero la combinación de términos
siempre proveerá un valor real para los elementos del exponencial de la matriz.

3.3. Respuesta entrada/salida

En esta sección derivaremos la ecuación convolución, que incluye entradas y salidas.


36 3 Sistemas Lineales

3.3.1. Ecuación de convolución

Volviendo al sistema general de entrada/salida en la ecuación (3.5). Usando la matriz exponencial , la solución de la
ecuación (3.5) se puede escribir como:
Teorema 1 La solución de la ecuación diferencial lineal:
dx
= Ax + Bu, x(0) = xo
dt (3.16)
y = Cx + Du.

está dada por: Z t


x(t) = eAt x(0) + eA(t−τ ) Bu(τ )d τ (3.17)
0

Demostración: Diferenciando ambos lados en (3.17) y usando la propiedad (3.13) de la matriz exponencial. Luego,
por sustitución directa1 , tenemos:
Z t
dx
= AeAt x(0) + AeA(t−τ ) Bu(τ )d τ + Bu(t) = Ax + Bu, (3.18)
dt 0

que prueba el resultado. ⋄


De las ecuaciones en (3.16) y (3.17) la relación entrada/salida para un sistema lineal está dado por:
Z t
y(t) = CeAt x(0) + CeA(t−τ ) Bu(τ )d τ + Du(t). (3.19)
0

La ecuación (3.19) se denomina ecuación de convolución y representa la forma general de solución de un sistema
de ecuaciones diferenciales lineales acopladas. Esta ecuación y la ecuación (14) han sido directamente calculadas en el
dominio del tiempo. También podemos calcular las soluciones en el dominio de la frecuencia usando la transformada
de Laplace. Aplicando la transformada de Laplace a la ecuación (3.18) resulta:

X(s) = (sI − A)−1 [x(0) + BU(s)]


(3.20)
Y (s) = C(sI − A)−1 x(0) + [C(sI − A)−1 B + D]U(s)

Respuesta impulsiva

La respuesta impulsiva de un sistema vendrı́a a ser la salida correspondiente a tener un impulso como entrada en
(3.19): Z t
y(t) = CeA(t−τ ) Bδ (τ )d τ + Dδ (t) = CeAt B + Dδ (t), (3.21)
0
donde la segunda igualdad sigue del hecho que δ (t) es cero en cualquier lugar excepto el origen y su integral es
idénticamente igual a 1. Nótese que existe una limitación en el cálculo de la respuesta impulsiva cuando D 6= 0 ya que
Dδ (t) se hace infinito en t = 0. En la práctica, se ignora la matriz D y la respuesta impulsiva viene dada por:
Z t
y(t) = h(t) = CeA(t−τ ) Bδ (τ )d τ = CeAt B. (3.22)
0

Escribiendo la ecuación de convolución en términos de la respuesta a las condiciones iniciales y la integral convolución
(3.8) de la respuesta impulsiva h(t) y la señal de entrada u(t), se tiene:
Z t
y(t) = CeAt x(0) + h(t − τ )u(τ )d τ , (3.23)
0

1 ∂ t
R Rt ∂
∂ t to f (t, τ )d τ = f (t, τ )|τ =t + to ∂ t f (t, τ )d τ .
3.3 Respuesta entrada/salida 37

ası́ la respuesta de un sistema lineal es la superposisición de la respuesta a un conjunto infinito de impulsos cuyas
magnitudes están dadas por la entrada u(t).
El uso de pulsos como aproximaciones de la función impulso se puede visualizar en la Fig. 3.3.

1.5
1
Pulse responses
1 Impulse response
u y
0.5
0.5

0 0
0 2 4 6 8 10 0 10 20 30 40
Time t t
(a) Pulse and impulse functions (b) Pulse and impulse responses

Figura 3.3 Respuesta de un sistema a entradas del tipo impulso representado como la suma de diferentes anchos de pulso. (a) Funciones
pulso e impulso. b) Respuestas a los pulsos e impulso.

3.3.2. Respuesta en estado estacionario

Dada el sistema lineal de entrada/salida:


dx
= Ax + Bu, x(0) = xo
dt
y = Cx + Du.

la forma general de su solución está dada por (3.19), reescrita aqui por conveniencia:
Z t
y(t) = CeAt x(0) + CeA(t−τ ) Bu(τ )d τ + Du(t),
0

que muestra que la respuesta total del sistema consta de la respuesta a las condiciones iniciales y la respuesta a la
entrada. La respuesta a la entrada está compuesta por los dos últimos términos de (3.19)- esta respuesta a su vez tiene
dos componentes - la respuesta transiente y la respuesta en estado estacionario, ver Fig 3.4. La respuesta transiente
ocurre en el primer periodo de tiempo después de que la entrada ha sido aplicada y refleja la diferencia entre las
condiciones iniciales y la solución en estado estacionario. La respuesta en estado estacionario es la porción de la
respuesta en la salida que refleja el comportamiento del sistema a largo plazo bajo la acción de ciertas entradas. Para
entradas periódicas la respuesta en estado estacionario también será periódica, y para entradas constantes la respuesta
será a menudo constante.

0.1
1
Output y
Input u

0 0

Transient Steady State


−1 −0.1
0 20 40 60 80 0 20 40 60 80
Time t [sec] Time t [sec]
(a) Input (b) Output

Figura 3.4 Respuesta transiente versus respuesta en estado estacionario.


38 3 Sistemas Lineales

Respuesta al escalón unitario

La función escalón unitario está definida como:



0 t = 0,
u = S(t) =
1 t > 0,

y representa un cambio abrupto de un valor a otro valor.


La respuesta a un escalón unitario del sistema (3.5) está definido como la salida y(t) comenzando de las condiciones
iniciales cero (o el punto de equilibrio apropiado) y dada una entrada del tipo escalón. Calculando la respuesta a un
escalón unitario de un sistema lineal usando la ecuación convolución, para x(0) = 0, tenemos:
Z t Z t
A(t−τ )
y(t) = Ce Bu(τ )d τ + Du(t) = C eA(t−τ ) Bd τ + D
0Z 0
t σ =t (3.24)
=C eAσ Bd σ + D = C(A−1 eAσ B) σ =0 + D
0
= CA−1 eAt B −CA−1 B + D.

Luego, reescribiendo la solución tenemos:


−1 At −1
y(t) = CA
| {ze B} + |D −CA B . (3.25)
{z }
transiente estado estacionario

El primer término es la respuesta transiente que decae a cero a medida que t → ∞. El segundo término es la respuesta
al estado estacionario y representa el valor de la salida para después de transcurrido un tiempo grande.

Respuesta a una entrada senoidal. Respuesta en la frecuencia

Una señal de entrada común es del tipo senoidal (o combinación de senos). La respuesta en la frecuencia de un
sistema de entrada/salida mide la forma en la que el sistema responde a una excitación senoidal. Dado que la solución
asociada a una excitación senoidal es a su vez un senoide a la misma frecuencia, luego nos limitamos a comparar la
magnitud y la fase de la salida senoidal.
Evaluando al ecuación convolución (3.19) para u = cosω t. En particular notando que:
1
cos ω t = (eiω t + e−iω t ).
2
Dado que el sistema es lineal, es suficiente calcular la respuesta del sistema a una entrada compleja de la forma
u(t) = est y luego podemos reconstruir la salida a un senoide mediante el promedio de las respuestas correspondiente
a s = iω t y s = −iω t.
Aplicando la ecuación convolución a la entrada u = est tenemos:
Z t
y(t) = CeAt x(0) + CeA(t−τ ) Besτ d τ + Dest
0 Z t (3.26)
= CeAt x(0) +CeAt Ce(sI−A)τ Bd τ + Dest
0

Asumiendo que ninguno de los autovectores de A es igual a s = ±iω , luego la matriz sI − A es invertible y podemos
escribir:   t
y(t) = CeAt x(0) + CeAt (sI − A)−1 e(sI−A)τ B + Dest

 0
= CeAt x(0) +CeAt (sI − A)−1 e(sI−A)t − I B + Dest (3.27)
= CeAt x(0) +C(sI − A)−1 est B −CeAt (sI − A)−1 B + Dest ,
y obtenemos:
3.4 Polos, ceros y ganancia 39
 
y(t) = CeAt x(0) − (sI − A)−1 B + C(sI − A)−1 B + D est , (3.28)
| {z } | {z }
transiente estado estacionario

Nuevamente tenemos una solución que consiste de un componente transiente y uno estado estacionario. El componente
transiente decae a cero si el sistema es asintóticamente estable y el componente estado estacionario es proporcional a
la entrada (compleja) u = est .
La respuesta en estado estacionario se puede reescribir como:

yss (t) = Meiθ est = Mest+iθ ,

donde:
Meiθ = C(sI − A)−1 B + D, (3.29)
con M y θ representando la magnitud y la fase de un número complejo C(sI El número complejo − A)−1 B + D.
C(sI − A)−1 B + D se denomina función de transferencia. Cuandon s = iω , decimos que M es la ganancia y θ es la
fase del sistema para cierta frecuencia de excitación ω . Usando linealidad y combinando las soluciones de s = +iω y
s = −iω , podemos mostrar que si tenemos una entrada u = Au sin(ω t + ψ ) y una salida y = Ay sin(ω t + ϕ ), entonces:

Ay
ganancia(ω ) = = M, fase(ω ) = ϕ − ψ = θ .
Au
La solución en estado estacionario para un senoide u = cosω t está dada por:

yss (t) = Mcos(ω t + θ ),

como presentado en la Fig. 3.5. Si la fase θ es positiva se dice la salida está adelantada a la entrada, de otra forma
decimos que la salida está atrasada a la entrada.

1
2 10
Input Output
Gain

−1
1 Ay 10
Input, output

Au −3
10
0
0
Phase [deg]

∆T
−90
−1
T −180
−2 −270
0 5 10 15 20 0.5 5
Time [sec] Frequency [rad/s]
(a) Input/output response (b) Frequency response

Figura 3.5 Respuesta de un sistema lineal a un senoide. a) Respuesta entrada/salida. b) Respuesta en frecuencia.

Una propiedad de la respuesta en frecuencia es que la ganancia del sistema cuando ω = 0 se denomina ganancia en
la frecuencia cero y corresponde a la relación entre una entrada constante y la salida estacionaria:

Mo = −CA−1 B + D.

En Ingenierı́a Eléctrica la ganancia de frecuencia cero es denominada DC gain.

3.4. Polos, ceros y ganancia

La función de transferencia G(s) = C(sI − A)−1 B + D tiene interpretaciones muy útiles y sus caracterı́sticas son a
menudo asociadas a propiedades importantes del sistema. Tres de las caracterı́sticas más importantes son la ganancia
y la ubicación de polos y ceros.
40 3 Sistemas Lineales

La ganancia en la frecuencia cero (o ganancia DC) está dada por la magnitud de la función de transferencia en s = 0.
Representa la relación del estado estacionario a la salida del sistema con respecto a una entrada del tipo escalón (que
puede ser representado por u = est con s = 0). Para una representación de espacio de estados, calculamos la ganancia
en la frecuencia cero usando la siguiente ecuación:

G(0) = −CA−1 B + D. (3.30)

Para un sistema escrito como una ecuación diferencial lineal:


dny d n−1 y dmu d m−1 u
n
+ a1 n−1 + ... + an y = bo m + b1 m−1 + ... + bm u,
dt dt dt dt
si asumimos que la entrada y la salida del sistema (en estado estacionario) son constantes yo y uo , luego encontramos
que an yo = bm uo . Luego la ganancia en la frecuencia cero es:

yo bm
G(0) = = . (3.31)
uo an
Considerando el sistema lineal con la siguiente función de transferencia racional:

b(s)
G(s) = . (3.32)
a(s)

las raices del polinomio a(s) son llamados polos del sistema, y las raices del polinomio b(s) son llamados los ceros del
sistema. Si los polos del sistema pertenecen al semiplano complejo izquierdo abierto (Co− ) se dice que la función de
transferencia es estable. Si los ceros del sistema pertenecen al semiplano complejo izquierdo abierto (Co− ) se dice que
el sistema es de fase mı́nima, en caso contrario los ceros son de fase no mı́nima2 .
Para un sistema espacio de estados con función de transferencia G(s) = C(sI − A)−1 B + D, los polos de la función
de transferencia son los autovalores de la matriz dinámica A (sistema con realización mı́nima). Una forma de ver esto
es notando que el valor de G(s) tiende a infinito cuando s es un autovalor de la matriz dinámica del sistema puesto que
s es precisamente el conjunto de puntos donde el polinomio caracterı́stico λ (s) = det(sI − A) = 0 (y luego (sI − A) no
es invertible). Se puede destacar que los polos del sistema en la forma de espacio de estados sólo depende de la matriz
A, que representa la dinámica intrı́nseca del sistema. Decimos que una función de transferencia es estable si todos sus
polos tienen parte real negativa.
Para encontrar los ceros de un sistema en la forma de espacio de estados, observamos que los ceros son números
complejos s tal que la entrada u(t) = uo est resulta en salida igual a cero. Insertando una respuesta puramente exponen-
cial x(t) = xo est y y(t) = 0 en:
ẋ = Ax + Bu, y = Cx + Du,
resulta:
sest xo = Axo est + Buo est , 0 = Cest xo + Dest uo
que puede ser escrito como:   
−sI + A B xo
= 0. (3.33)
C D uo
Esta ecuación tiene una solución con xo 6= 0, uo 6= 0 solo si la matriz a la izquierda no tiene rango completo. Los ceros
del sistema (llamados también ceros de transmisión, en caso de una realización mı́nima) son entonces aquellos valores
de s tal que la matriz.  
−sI + A B
, (3.34)
C D
 
−sI + A B
pierde rango o det =0.
C D
Siendo que los ceros dependen de A, B, C y D, ellos dependen de como las entradas y salidas son acopladas con los
estados. Nótese que en particular si la matriz B tiene rango completo, luego la matriz en (3.34) tiene n filas linealmente
2Por ejemplo, el sistema g(s) = −s+a
s+a con cero en el semiplano derecho en s = a tiene una ganancia constante de 1, pero su fase es
−2 arctan(ω /a) rad y no 0 rad como serı́a para el sistema de fase mı́nima g(s) = 1 con ganancia similar.
3.5 Otros 41

independientes para todos los valores de s. Similarmente hay n columnas linealmente independientes si la matriz C
tiene rango completo. Eso significa que los sistemas donde B y C son de rango completo no tienen ceros. En particular
esto significa que un sistema no tiene ceros si es totalmente posible actuar en él (cada estado puede ser controlado
independientemente) o si todos los estados son medidos. Para cuando consideramos sistemas sin igual número de
entradas y salidas, el cálculo de los ceros usando (3.34) se hace inadecuado. Para este caso se trabaja directamente con
la matriz de funciones de transferencia, como descrito a continuación.
POR COMPLETAR

3.5. Otros

Ancho de banda El concepto de ancho de banda es importante en el entendimiento de los beneficios y desventajas al
aplicar control por realimentación. El ancho de banda está relacionado a la velocidad de respuesta. En general, un ancho
de banda grande corresponde a un tiempo de levantamiento pequeño, esto debido a que las señales de alta frecuencia
son pasadas más fácilmente hacia las salidas. Un ancho de banda grande también indica que el sistema es más sensible
al ruido y a las perturbaciones paramétricas. Por otro lado, si el ancho de banda es pequeño, el tiempo de respuesta
será por lo general grande, y el sistema usualmente será más robusto.
POR COMPLETAR

Fuente: Capı́tulos 5 y 8 del libro Feedback Systems: An Introduction for Scientists and Engineers, de Karl J. Åström
y Richard M. Murray (2008).
Fuente: Capı́tulo 4 del libro Multivariable Feedback Control de S. Skogestad y I. Postlethwaite (2006).
Capı́tulo 4
Formas canónicas

En esta parte discutiremos tres tipos de modelos de sistemas dinámicos lineales que presentan formas especiales de
sus correspondientes (A, B y C). Estas formas se obtienen mediante un cambio de variable, el cual finalmente revela
ciertas propiedades estructurales del modelo. Estas formas serán de utilidad en las siguientes secciones cuando se
construyan algoritmos para la ubicación de polos. Los algoritmos de ubicación de polos serán usados para diseñar
controladores por realimentación de estados, asi como estimadores de estado.

4.1. Definiciones

4.1.1. Invariancia de coordenadas

La forma general del sistema lineal en su representación espacio de estados, con correspondiente ecuación de salida,
es:
dx
= Ax + Bu, y = Cx + Du, (4.1)
dt
donde A ∈ Rn×n , B ∈ Rn×m , C ∈ R p×n y D ∈ R p×m . Los componentes del vector de entrada u y el vector de salida y son
dados por las entradas y salidas de un modelo, mientras que las variables de estado dependen del sistema coordenado
usado para representar los estados. La elección de coordenadas afecta los valores de las matrices A, B y C (D no
está afecta dado que mapea entradas a salidas). A continuación investigaremos las consecuencias de cambiar el sistema
coordenado.
Si elegimos el conjunto de coordenadas z = T x, donde T es una matriz invertible. De (4.1) se tiene:

dz dx
=T = T (Ax + Bu) = TAx + T Bu = TAT −1 z + T Bu = Ãz + B̃u,
dt dt (4.2)
y = Cx + Du = CT −1 z + Du = C̃z + Du.

El sistema transformado tiene la misma forma que (4.1) pero con matrices A, B y C diferentes:

à = TAT −1 , B̃ = T B, C̃ = CT −1 (4.3)

Existen sistemas de coordenadas que permiten visualizar una propiedad particular del sistema, luego las transfor-
macions de coordenadas se pueden usar para ganar nuevo entendimiento de la dinámica del sistema.
Es posible comparar las soluciones del sistema en las coordenadas transformadas y en las coordenadas originales
usando la siguiente propiedad del mapeamiento exponencial:
−1
eT ST = TeS T −1 . (4.4)

Esta propiedad se puede verificar usando la definición de exponencial de matrices. Ası́ se puede mostrar que:

43
44 4 Formas canónicas

q1 q2
c c

m m
u(t) = sin ω t
k
k k

Figura 4.1 Sistema masa resorte acoplado.

Z t
x(t) = T −1 z = T −1 eÃt T x(0) + T −1 eÃ(t−τ ) B̃u(τ )d τ . (4.5)
0

El transformar A a à es factible, siendo que el exponencial de matrice con à puede ser más fácil de calcular.

Ejemplo: Sistema masa-resorte acoplado

Considere el sistema mostrado en la Fig. ??. La entrada al sistema es del tipo senoidal y es aplicada en el resorte
que se ubica en el extremo derecho, y la salida es la posición de cada masa, q1 y q2 . Las ecuaciones de movimiento
están dadas por:
m1 q̈1 = −2kq1 − cq̇1 + kq2 , m2 q̈2 = kq1 − cq̇2 − 2kq2 + Ku
En la forma espacio de estados, definiendo el estado x = (q1 , q2 , q̇1 , q̇2 ), se puede escribir la ecuación como:
   
0 0 1 0 0
dx  0 0 0 1  0
=  x +   u.
dt  − 2k k
m m −m 0
c  0
k 2k c k
m − m 0 − m m

Este es un sistema acoplado de 4 ecuaciones diferenciales y es bastante complicado resolverlo en la forma analı́tica.
Usando la transformación z = T x pondremos al sistema en una forma más simple. Sea z1 = 12 (q1 + q2 ), z2 = ż1 ,
z3 = 21 (q1 − q2 ) y z4 = ż3 , tal que:  
1 1 0 0
1 0 0 1 1 
z = Tx =   x.
2  1 −1 0 0 
0 0 1 −1
Y en el nuevo sistema coordenado, la dinámica es:
   
0 1 0 0 0
dz  k c  k 
− m −m 0 0  z +  2m  u.
=
dt  0 0 0 1   0 
0 0 − 3k
m −mc k
− 2m

Nótese que la matriz resultante es diagonal por bloques y, como consecuencia, desacoplada. Luego las soluciones
pueden ser calculadas mediante solución de dos sistemas de segunda orden representados por los estados (z1 , z2 ) y
(z3 , z4 ). De hecho, la forma de cada grupo de ecuaciones es idéntica al de un sistema masa-resorte individual.
Una vez resueltos los grupos de ecuaciones, se puede recuperar la dinámica del sistema en las coordenadas originales
mediante inversión de la transformación de estados y escribiendo x = T −1 z.
4.1 Definiciones 45

4.1.2. Autovalores/autovectores de una matriz y modos

Los autovalores y autovectores de un sistema proveen una descripción del tipo de comportamiento que exhibe un
sistema. Para sistemas oscilatorios, el término modo se usa a menudo para definir ciertas configuraciones de vibración
que pueden ocurrir, ver Figs. 4.2 y 4.3.

(a) Mode 1

Figura 4.2 Sistema de masa conectadas por un resorte. Las masas se mueven hacia la derecha sincronizadas.

(b) Mode 2

Figura 4.3 Sistema de masa conectadas por un resorte. Las masas se mueven en direcciones separadas.

La respuesta a las condiciones iniciales de un sistema lineal se puede escribir en términos del exponencial de una
matriz, la denominada matriz de estados A. Luego, las propiedades de la matriz A determinan el comportamiento del
sistema. Si A ∈ Rn×n , asumamos que existen n vectores linealmente independientes (autovectores) vi y n escalares λi
(autovalores) que satisfacen:
Avi = λi vi .
Escribiendo los vectores vi como una matriz:
 
M ≡ v1 v2 ... vn ,

y definiendo la matriz Λ de acuerdo a:  


λ1 0 ... ... 0
0
 λ2 0 ... 0 
Λ ≡
 .. 
. ,
 
0 ... 0 λn−1 0
0 ... ... 0 λn
tenemos que:
AM = MΛ .
Luego se tiene que:
I = MM −1
A = MΛ M −1
A2 = MΛ M −1 MΛ M −1
= MΛ 2 M −1
.. ..
. .
An = MΛ n M −1
Si consideramos el exponencial de matrices eAt , asumiendo que A tiene n vectores independientes:
46 4 Formas canónicas

A2t 2 Ant n
eAt = I + At + + ... + + ...
2 n!
MΛ t 2 M −1
2
= MM −1 + MΛ tM −1 + + ...
2!
= MeΛ t M −1
 λ1 t 
e 0 ... ... 0
 0 eλ2 t 0 ... 0 
 

= M .
..  −1
M
 
 0 ... 0 eλn−1 t 0 
0 ... ... 0 eλn t

Suponiendo primero que v y λ son autovector y autovalor de valor real. Luego, observamos que la solución de la
ecuación diferencial para x(0) = v, de la definición de exponencial de matrices arriba:

eAt v = MeΛ t M −1 v = eλ t v.

Entonces, el autovalor describe como la solución varı́a en el tiempo, esta solución a menudo se denomina modo. El
autovector define la forma de la solución y a menudo se denomina forma del modo del sistema (ver Fig. 4.4). El
autovalor a menudo se denomina como frecuencia modal.

1.5
1
Pulse responses
1 Impulse response
u y
0.5
0.5

0 0
0 2 4 6 8 10 0 10 20 30 40
Time t t
(a) Pulse and impulse functions (b) Pulse and impulse responses

Figura 4.4 La noción de modos para un sistema de segundo orden con autovalores reales. La figura en la izquierda muestra el plano de
fase y las de la derecha las respuestas en el tiempo. Ambas figuras muestran los modos correspondientes a soluciones que comienzan en los
autovectores.

El caso de los autovalores complejos es más complicado. Siendo A una matriz con elementos reales, los autovalores
y autovectores son complejos conjugados λ = σ ± iω y v = u ± iw, que implica que:

v + v∗ v − v∗
u= , ,w = .
2 2i
Usando el exponencial de matrices tenemos que:

eAt v = eλ t (u + iw) = eσ t ((u cos ω t − ω sin ω t) + i(u sin ω t + ω cos ω t)) ,

luego sigue que:


1
eAt u = (eAt v + eAt v∗ ) = ueσ t cos ω t − ω eσ t sin ω t,
2
1
eAt w = (eAt v − eAt v∗ ) = ueσ t sin ω t + ω eσ t cos ω t.
2
Nuevamente llamamos a la solución correspondiente a λ de modo del sistema, y v es la forma del modo.
Algunas matrices con autovalores iguales no pueden ser transformadas a una forma diagonal. Ellos, entonces, pueden
ser transformados a una forma relacionada, denominada forma de Jordan. En este caso, la matriz de estados posee los
autovalores en la diagonal. Cuando hay autovalores iguales, pueden haber 1’s apareciendo en la superdiagonal, indi-
cando el acoplamiento entre estados. Especı́ficamente decimos que una matriz está en la forma de Jordan cuando:
4.1 Definiciones 47
   
J1 0 .. 0 0 λi 1 .. 0 0

 0 J2 0 0 
 0 
 0 λi 1 0 0 
 .. ..  ..  .. .. ..  ,
 . .  , donde Ji = 
. . . .  (4.6)
   
 0 0 Jk−1 0   0 0 λi 1 
0 0 ... 0 Jk 0 0 ... 0 λ1

donde Ji es un bloque de Jordan, y λi para ese bloque corresponde al autovalor de J. Un bloque de Jordan puede ser
representado por un sistema que consiste en un integrador con realimentación λ , ver Fig. 4.5.

R x1 R x1 R x2
6

λ λ λ

Figura 4.5 Representacion de sistemas lineales donde las matrices dinámicas son bloques de Jordan. Un bloque de Jordan de primer orden
se puede representar como un integrador con realimentación λ , como mostrado a la izquierda. Un bloque de Jordan de orden dos es mostrado
a la derecha.

Una vez que una matriz está en la forma de Jordan, el exponencial de la matriz puede ser calculado en términos de
los bloques de Jordan, usando la forma diagonal por bloques de J:
 J 
e 1 0 ... 0 0
 0 eJ2 0 0 0 
 
eJ =  ... .. ..  .

. .  (4.7)
 
 0 0 eJk−1 0 
0 0 ... 0 eJk

Los exponenciales de los bloques de Jordan pueden a su vez ser escritos como:
 t2 t n−1

1 t 2! ... (n−1)!

 0 1 t ... t n−2 

 (n−2)! 
 λi t
eJi t =  ... . ..

1 .. . e . (4.8)
 
 .. 
 . t 
0 ... 0 1

4.1.3. Teorema de Cayley-Hamilton

El teorema de Cayley-Hamilton establece que una matriz A satisface su propia ecuación caracterı́stica. La ecuación
caracterı́stica de una matriz es la ecuación:

α (λ ) ≡ det(λ I − A) = λ n + ... + a1 λ + ao λ 0

El teorema de Cayley-Hamilton establece que:


α (A) = 0. (4.9)
Probaremos el teorema de Cayley-Hamilton para el caso de A siendo diagonalizable. Considerando α (A), siendo
que A se puede escribir como A = MΛ M −1 , encontramos que:

α (A) = M α (Λ )M −1 .
48 4 Formas canónicas

Pero α (Λ ) actúa separadamente en cada uno de los elementos de la matriz diagonal. Como cada uno de los elementos
satisface α (λ ) = 0, encontramos que α (Λ ) = 0. De aqui concluimos que α (A) = 0. ⋄
Una consecuencia simple del teorema de Cayley-Hamilton es que cualquier potencia de A se puede expresar en
términos de I, A, ..., An−1 . Considerese, por ejemplo, An . De (??) vemos que:

An = −(an−1 An−1 + ... + a1 A + ao I)

4.2. Forma canónica modal

Considerando un sistema de múltiples entradas y salidas, contı́nuo en el tiempo, representado por:

ẋ(t) = Ax(t) + Bu(t),


(4.10)
y(t) = Cx(t),

donde A ∈ Rn×n , B ∈ Rn×m y C ∈ R p×n . Observamos que la descomposición modal (en modos) de A lleva a una
representación espacio de estados muy útil. Dado que A = MΛ M −1 , la transformación de estados se puede hacer por
medio de z = T x, T = M −1 , resultando en:

ż(t) = Λ z(t) + M −1 Bu(t),


(4.11)
y(t) = CMz(t).

Esta representación es denominada de forma canónica modal, dado que los estados son simplemente las amplitudes
modales. Los estados son desacoplados en Λ pero pueden estar acoplados a través de los mapeamientos de entrada
M −1 B y salida CM. La forma modal es robusta en cuestiones de cálculo numérico.

4.2.1. Ejemplo: Sistema de múltiples entradas y múltiples salidas

Considere el modelo del sistema dinámico como sigue:


   
542 01
ẋ =  4 5 2  x +  1 1  u,
 2 2 2  1 0
142 10
y= x+ u
112 01

Luego, el calculando los autovalores de A tenemos:


 
5−λ 4 2
det(A − λ I3 ) = det  4 5 − λ 2 
2 2 2−λ ,
= −λ 3 + 12λ 2 − 21λ + 10
= −(λ − 1)2 (λ − 10)

y vemos que los autovalores asociados de A son λ = 1 y λ = 10. Buscando los autovectores correspondientes:
   
5−λ 4 2
442
 4 5 − λ 2  v =  4 4 2  v = λ v = v,

2 2 2−λ λ =1
221

entonces:    
−1 −1
v1 =  0  , v2 =  1  ,
2 0
4.3 Forma canónica controlable 49

y:    
5−λ 4 2
−5 4 2
 4 5 − λ 2  v =  4 −5 2  v = λ v = v,

2 2 2 − λ λ =10
2 2 −8
entonces:  
2
v3 =  2  .
1
Con los tres autovectores v1 ,v2 y v3 siendo
 linealmente independientes podemos definir M tal que la matriz de estados
−1 −1 2
se pueda diagonalizar: M =  0 1 2  . Entonces:
2 0 1
 −1     
−1 −1 2 542 −1 −1 2 10 0
Λ =  0 1 2   4 5 2  0 1 2  =  0 1 0 ,
2 0 1 222 2 0 1 0 0 10
 −1  
−1 −1 2 01
M −1 B =  0 1 2   1 1 
2 0 1 10
 
  −1 −1 2
142 
CM = 0 1 2
112
2 0 1

4.3. Forma canónica controlable

4.3.1. Caso, sistema de una entrada

Considerando un sistema de una entrada una salida, un sistema contı́nuo en el tiempo es representado por:

ẋ(t) = Ax(t) + bu(t), (4.12)

donde A ∈ Rn×n y b ∈ Rn . Si se asume que el sistema es alcanzable, o, equivalentemente, controlable1 , significa que:
 
rango( b Ab ... An−1 b ) = n. (4.13)
 
y a la matriz Wc = b Ab ... An−1 b se le denomina matriz de controlabilidad.
Eligiendo la última fila de la inversa de la matriz controlabilidad, sea q1 tal fila, definimos la matriz de transforma-
ción T como:  
q1
 q1 A 
 
T =  . . (4.14)
 .. 
q1 An−1
Nótese que T es invertible, dado que:

1 Esta distinción sólo existe en el caso de sistemas no lineales.


50 4 Formas canónicas
 
0 0 ... 0 1
  0
 0 ... 1 x 
T b Ab ... An−1 b =  . .. .. ..  . (4.15)
 .. . . .
1 x ... x x

Los elementos x en la matriz son elementos que existen pero no son de nuestro interés. Considerando la transformación
z = T x, en el nuevo sistema coordenado, el modelo del sistema es:

ż(t) = TAT −1 x(t) + T bu(t)


(4.16)
= Ãz(t) + b̃u(t).

Las matrices à y b̃ tienen estructuras particulares que definiremos a continuación. Analizando primero la estructura de
b̃, con q1 siendo la última fila de la inversa de la matriz de controlabilidad, tenemos:

q1 b = q1 Ab = ... = q1 An−2 b = 0, (4.17)

y,
q1 An−1 b = 1. (4.18)
Entonces:  
 
q1 0

 q1 Ab  0
  

b̃ = T b =  ..   .. 
.  =  . . (4.19)
   
 q1 An−2 b   0 
q1 An−1 b 1
La estructura de à es revelada considerando la relación TAT −1 = à representada por:

TA = ÃT. (4.20)

El lado izquierdo de la matriz está dado por:  


q1 A

 q1 A2



TA =  ..

.
. (4.21)
 
 q1 An−1 
q1 An
Por el teorema de Cayley-Hamilton, tenemos:

An = −ao In − a1 A − ... − an−1 An−1 , (4.22)

y luego
q1 An = −ao q1 − a1 q1 A − ... − an−1 q1 An−1 . (4.23)
Comparando ambos lados de la ecuación TA = ÃT y usando el teorema de Cayley-Hamilton obtenemos que A debe
ser como descrito a continuación:
 
0 1 0 ... 0 0
 0 0 1 ... 0 0 
 
 .. .
.. .
.. 
à =  . . (4.24)
 
 0 0 0 ... 0 1 
−ao −a1 −a2 ... −an−2 −an−1

Nótese que los coeficientes del polinomio caracterı́stico de A son inmediatamente aparentes inspeccionando la última
fila de Ã.
4.3 Forma canónica controlable 51

Ejemplo, sistema de una entrada

Considere el modelo del sistema dinámico como sigue:


   
0 0 10 0
 0 0 0 1 0
 −2 1 0 0  x +  1  u.
ẋ =    

1 −1 0 0 0
 
0 1 0 −2
  0 0 0 1 
La matriz de controlabilidad es: Wc = b Ab A2 b A3 b =   1 0 −2 0  , luego el sistema es controlable dado que Wc

00 1 0  
es no singular. Calculando la última fila de la inversa de la matriz de controlabilidad encontramos que es 0 1 0 0 .
Luego la matriz de transformación T es definida como:
   
q1 0 1 0 0
 q1 A   0 0 0 1 
T =  q1 A2  =  1 −1 0 0  .
  

q1 A3 0 0 1 −1

Las matrices A y b en el nuevo sistema coordenado tienen la forma:


     
0 1 0 0 0 0 10 10 10 0 1 0 0
 0 0 0 1   0 0 0 1  1 0
  0 0  0 0 1 0
à = TAT −1 =  
 1 −1 0 0   −2 1 0 0   0 1
= ,
0 1  0 0 0 1
0 0 1 −1 1 −1 0 0 01 10 −1 0 −3 0
y:  
0
0
b̃ = T b = 
0

4.3.2. Caso, sistema de múltiples entradas

A continuación, generalizaremos el método que transforma sistemas a su forma canónica controlable para el caso
de sistemas de más de una entrada. Sea el sistema dinámico:

ẋ(t) = Ax(t) + Bu(t), (4.25)

donde A ∈ Rn×n y B ∈ Rn×m , m ≤ n, y rango columna(B)=m por simplicidad2 . La matriz de controlabilidad se puede
representar como:  
Wc = b1 b2 ... bm Ab1 Ab2 ... Abm ... An−1 b1 ... An−1 bm . (4.26)
donde bi , i = 1, 2, ..., m, es la i-ésima columna de B. Asumiendo que la matriz presentada en (4.26) es de rango fila
completo (n filas linealmente independientes), luego, podemos seleccionar n columnas linealmente independientes en
(4.26). Elegimos estas columnas de la derecha a la izquierda, luego rearreglando las columnas seleccionadas formarmos
la siguiente matriz no singular L:
 
L = b1 Ab1 ... Ad1 −1 b1 b2 ... Ad2 −1 b2 ... bm ... Adm −1 bm . (4.27)

2 Esta suposición es hecha por conveniencia, para simplificar el cálculo. Esta suposición implica que todas las entradas son mutualmente
independientes, que viene a ser el caso en aplicaciones prácticas.
52 4 Formas canónicas

Los m enteros di son denominados ı́ndices de controlabilidad y satisfacen:


m
∑ di = n. (4.28)
i=1

Observese que las m columnas de B están presentes en L ya que hemos asumido que B es de rango columna completo
(m columnas linealmente independientes). Sea:
k
σk = ∑ di , for k = 1, 2, ..., m. (4.29)
i=1

Nótese que σ1 = d1 , σ2 = d1 + d2 , ..., σm = n. Seleccionando las m filas correspondientes de L−1 y denotandolas por
qk , donde qk es la σ -ésima fila de L−1 , formamos la siguiente matriz n × n:
 
q1
 q1 A 
 
 .. 

 . 

 q1 Ad1 −1 
 
 q2 
 
 .. 
T =
 . .
 (4.30)
 q2 Ad2 −1 
 
 .. 

 . 

 qm 
 
 .. 
 . 
qm A m d −1

Se puede probar que T es no singular calculando el producto T L y observando que det(T L) = ±1. Definiendo la
transformación de variables de estado z = T x; y usando el mismo argumento que en el caso de un sistema de una
entrada, obtenemos que à = TAT −1 y B̃ = T B, donde:
 
01 0 ... 0 0 0 ... 0 ... 0 0 ... 0
0 0 1 ... 0 0 0 ... 0 ... 0 0 ... 0 
 
.. . .. .. .. 
. ..


 . . . 
x x
 x ... x x x ... x ... x x ... x  
0 0
 0 ... 0 0 1 ... 0 ... 0 0 ... 0  
 .. .. .. . . .. .. .. 
.
 . . . . . . 
à = 
0 0 0 ... 0 0 0 ... 1 ... 0 0 ... 0  . (4.31)
x x
 x ... x x x ... x ... x x ... x  
. .. .. .. 
 .. . . . 
 
0 0
 0 ... 0 0 0 ... 0 ... 0 1 ... 0  
. .. .. . . .. .. .. 
 .. . . . . . .
 
0 0 0 ... 0 0 0 ... 0 ... 0 0 ... 1 
x x x ... x x x ... x ... x x ... x

Nótese que los m bloques diagonales en à tiene la estructura de la forma canónica controlable para el caso de una
entrada. Las dimensiones de cada bloque son di × di , i = 1, 2, ..., m. Los bloques fuera de la diagonal tienen elemento
que son ceros, excepto por la últimas filas. Luego, toda la información de à y A se puede calcular conociendo los
ı́ndices de controlabilidad. La matriz B̃ tiene la forma:
4.3 Forma canónica controlable 53
 
0 0 ... 0 0
0 0 ... 0 0
 
 .. .. 
. . 
 
1 x x x x
 
0
 0 ... 0 0 
0
 0 ... 0 0 
 .. .. 
B̃ = 
. . . (4.32)
0 1 x x x
 
. .. 
 .. .
 
0
 0 ... 0 0 
0
 0 ... 0 0 
. .. 
 .. .
00 0 01

Ejemplo, sistema de mútiples entradas

Considere el modelo del sistema dinámico como sigue:


   
−1 1 0 1 11
 1 1 0 0 2 0
 0 0 4 0  x +  1 0  u.
ẋ =    

1 1 −1 2 01

Siguiendo el algoritmo para obtener la forma canónica controlable del sistema, obtenemos que:
 
rango( b1 b2 Ab1 Ab2 A2 b1 A2 b2 A3 b1 A3 b2 ) = 4.

Luego, d1 = d2 = 2. A continuación formamos L:


 
1 1 10
  2 3 0 1
L = b1 Ab1 b2 Ab2 = 
1
,
4 0 0
0 2 13
y:  
0,20 0,60 0,40 −0,20
 −0,05 −0,15 0,35 0,05 
L−1 =  .
 0,85 −0,45 0,05 0,15 
−0,25 0,25 −0,25 0,25
Entonces:  
q1 = −0,05 −0,15 0,35 0,05 ,
y:  
q2 = −0,25 0,25 −0,25 0,25 .
La matriz de transformación es:
   
q1 −0,05 −0,15 0,35 0,05
 q1 A   −0,05 −0,15 1,35 0,05 
T =
  =  .
q2   0,85 −0,45 0,05 0,15 
q2 A −0,25 0,25 −0,25 0,25
54 4 Formas canónicas

Las matrices à y B̃ tienen la siguiente forma:


   
0 1 0 0 0 0
 −4 5 0 0 1 0
TAT −1 = 
 0 0 0
 y TB =  .
1 0 0
3 −3 4 1 0 1

4.4. Forma canónica observable

En esta parte usaremos el concepto de dualidad y, en base a los algoritmos antes presentados para transformar
sistemas alcanzables a su forma controlable, derivaremos resultados análogos para sistemas observables.

4.4.1. Caso, sistema de múltiples salidas

Considerando el modelo de un sistema dinámico observable:


ẋ(t) = Ax(t)
(4.33)
y(t) = Cu(t),

donde A ∈ Rn×n , C ∈ R p×n , p ≤ n, y rango(C)=p. Se omite la entrada u por conveniencia. Considerando el modelo del
sistema dual asociado con el sistema (4.33).

ẇ(t) = AT w(t) +CT v(t). (4.34)

Siendo que el sistema (4.33) es observable, el sistema dual (4.34) es alcanzable. Luego podemos transformar el sis-
tem dual (4.34) en su forma canónica controlable usando los algoritmos descritos en la sección anterior. Finalmente,
tomamos el resultado dual para obtener:
˙ = Âx̂(t),
x̂(t)
(4.35)
y(t) = Ĉx̂(t),
donde:  
Â11 Â12 ... Â1p
 Â21 Â22 ... Â2p 
 
 =  . ..  , (4.36)
 .. . 
 p1  p2 ...  pp
ˆ ˆ
donde cada matriz diagonal Âii ∈ Rdi ×di tiene la forma:
 
0 0 ... 0 x
 1 0 ... 0 x 
 
Âii =  . . , (4.37)
 .. . . ... 

0 0 ... 1 x

que es justamente la transpuesta de la forma canónica controlable para el caso de una entrada. Los enteros dˆi , i = 1, 2, ..p
son los ı́ndices de controlabilidad del sistema en (4.35). Las matrices fuera de la diagonal  ji , j 6= i de  tienen la forma:
 
0 0 ... 0 x
 0 0 ... 0 x 
 
 ji =  . . . (4.38)
 .. . . ... 

0 0 ... 0 x
4.4 Forma canónica observable 55

La matriz Ĉ consiste de p bloques y tiene la forma:


 
0 0 ... 1 00 ... 0 ... 0 0 ... 0
 0 0 ... x 00 ... 1 ... 0 0 ... 0 
 
Ĉ =  . .. .. .. .. .. . (4.39)
 .. . . . . . 
0 0 ... x 0 0 ... x ... 0 0 ... 1

Los p ı́ndices de controlabilidad de (4.35) son los llamados ı́ndices de observabilidad del sistema en (4.34). Nótese
que:
p
∑ dˆi = n. (4.40)
i=1

Ejemplo, sistema de múltiples salidas

Dado el modelo del sistema observable como sigue:


 
00 1 0
1 0 2 0
ẋ = 
 0 1 3 0 x

.
 0 0 −21 5
1000
y(t) = x
0001

Trabajando con el sistema dual para obtener la forma controlable: primero formamos la matriz de controlabilidad; luego
procedemos a seleccionar de izquierda a derecha las primeras 4 columnas linealmente independientes. Ellas tienen la
forma:
cT1 , cT2 , AT cT1 , (AT )2 cT1 .
Luego, los indices de observabilidad son dˆ1 = 3 y dˆ2 = 1. Luego, formando L:
 
1000
  0 0 1 0
L = cT1 AT cT1 (AT )2 cT1 cT2 =  0 1 3 0 ,

0001
y:  
1 0 0 0
 0 −3 1 0
L−1 = 
0
.
1 0 0
0 0 0 1
Entonces los dos vectores necesarios para obtener la transformación deseada son:
 
q1 = 0 1 0 0 ,

y:  
q2 = 0 0 0 1 .
La matriz de transformación es:    
q1 0 10 0
 q1 A   0 01 0 
T̂ = 
  =  .
q2   1 23 −21 
q2 A 0 00 1
Las matrices  y Ĉ tienen la siguiente forma:
56 4 Formas canónicas
 
0 0 1 0  
 1 0 2 0 00 1 0
 = T̂ −T AT̂ T =   y T
Ĉ = CT̂ = .
0 1 3 0 0 0 −21 1
0 0 −105 5

4.5. Representaciones espacio de estados en formas canónicas a partir de funciones de


transferencia del sistema

En las secciones anteriores se ha descrito la forma de obtener ciertas formas canónicas partiendo de una repre-
sentación espacio de estados dada, en esta parte nos centraremos en obtener representaciones espacio de estados en sus
formas canónicas partiendo de la función de transferencia del sistema.
Considere un sistema definido por:

dny d n−1 y dy dnu d n−1 u du


+ an−1 + ... + a1 + ao y = bn + bn−1 + ... + b1 + bo u (4.41)
dt n dt n−1 dt dt n dt n−1 dt
donde u es la entrada y y es la salida. Esta ecuación también puede ser escrita como:

Y (s) bn sn + bn−1 sn−1 + ... + b1 s + bo n(s)


= g(s) = n n−1
= (4.42)
U(s) s + an−1 s + ... + a1 s + ao d(s)

A continuación se presentarán las representaciones espacio de estados correspondientes en su forma canónica contro-
lable, observable y modal.

4.5.1. Forma canónica controlable

La siguiente representación es la forma canónica controlable:


      
ẋ1 0 1 0 ... 0 0 x1 0
 ẋ2   0 0 1 ... 0 0   x2   0 
      
 ..   .. .. .. ..   ..  +  ..  u.
 . = . . . .  .  (4.43)
 .
   
  
 ẋn−1   0 0 0 ... 0 1   xn−1  0
ẋn −ao −a1 −a2 ... −an−2 −an−1 xn 1
 
x1
 x2

 


..
y = bo − ao bn b1 − a1 bn ... bn−1 − an−1 bn   + bn u
. (4.44)
 
 xn−1 
xn
La forma canónica controlable es importante en el diseño de sistemas de control por ubicación de polos. Las ecuaciones
(4.43) y (4.44) son derivadas de la siguiente forma. Si bn 6= 0 entonces:
4.5 Representaciones espacio de estados en formas canónicas a partir de funciones de transferencia del sistema 57
h i
b n−1 + ... + b1 s + bo
bn sn + n−1
bn s bn bn
g(s) =
h d(s) i
bn−1 n−1
n
bn s + bn s + ... + bb1n s + bbon − d(s) + d(s)
=
h d(s) i
bn−1 n−1
n
bn s + bn s + ... + bb1n s + bbon − d(s)
= +bn
d(s)
| {z }
estrictamente propia

entonces función de transferencia propia = función de transferencia estrictamente propia + constante, en otras palabras,
g(s) = h(s) + bn y bn es simplemente la matriz D. Ahora suponiendo que:

cn−1 sn−1 + ... + cn   1


h(s) = = cn−1 sn−1 + ... + cn
s + an−1 sn−1 + ... + a1 s + ao
n d(s)

y (4.43) y (4.44) siguen por construcción.

4.5.2. Forma canónica observable

La siguiente representación es la forma canónica observable:


      
ẋ1 0 0 0 ... 0 −ao x1 bo − ao bn
 ẋ2   0 0 0 ... 0 −a1   x2   b1 − a1 bn 
      
 ..   .. .. .. ..   ..  +  .. 
 . =. . . .  .  
    .  u. (4.45)
   
 ẋn−1   0 0 0 ... 0 −an−2   xn−1   0 
ẋn 0 0 0 ... 1 −an−1 xn bn−1 − an−1 bn
 
x1
 x2
 


 ..
y = 0 0 ... 0 1   + bn u
. (4.46)
 
 xn−1 
xn
Notar que la matriz de estados n × n de la ecuación (4.45) es la transpuesta de la matriz de estados de la ecuación
(4.43).

4.5.3. Forma canónica modal

Considere la función de transferencia definida por (??). Aqui consideramos el caso donde el polinomio del denom-
inador posee raices distintas. Para el caso de raices distintas, (??) puede ser escrita como:

Y (s) bn sn + bn−1 sn−1 + ... + b1 s + bo


U(s) =
(s + p1 )(s + p2 )...(s + pn ) (4.47)
c1 c2 cn
= bn + + + ... +
s + p1 s + p2 s + pn
La forma canónica diagonal está dada por:
58 4 Formas canónicas
    
 
ẋ1 −p1 0 0 ... 0 0 x1 1
 ẋ2   0
   −p2 0 ... 0 0 
 x2   1 
  
 ..   .. .. .. ..   ..  +  ..  u.
 . = . . . .  .  (4.48)
 .
   
  
 ẋn−1   0 0 0 ... −pn−1 0   xn−1  1
ẋn 0 0 0 ... 0 −pn xn 1
 
x1
 x2

 


..

y = c1 c2 ... cn−1 cn   + bn u
. (4.49)
 
 xn−1 
xn

Fuente: Capı́tulos 5 y 8 del libro Feedback Systems: An Introduction for Scientists and Engineers, de Karl J. Åström
y Richard M. Murray.
Fuente: Capı́tulo 2 del libro Systems and Control de Stanislaw H. Zak (2002).
Fuente: Capı́tulo 4 del libro Multivariable Feedback Control de S. Skogestad y I. Postlethwaite (2006).
Capı́tulo 5
Control por realimentación de estados

El mundo real es no lineal, sin embargo existen un número de razones para investigar sistemas lineales. Los sistemas
lineales se usan a menudo para aproximar sistemas no lineales. Muchas veces, esta aproximación es suficiente para el
diseño del controlador. El conocimiento de la teorı́a de sistemas lineales ayuda también a entender la complicada teorı́a
de sistemas no lineales.
En esta parte, analizaremos más conceptos básicos de sistemas lineales. La forma general del sistema lineal en la
forma de espacio de estados, con correspondiente ecuación de salida, es:

dx
= Ax + Bu,
dt (5.1)
y = Cx + Du,

donde A ∈ Rn×n , B ∈ Rn×m , C ∈ R p×n y D ∈ R p×m .

5.1. Controlabilidad

Decimos que el sistema dinámico descrito por la ecuación (5.1) o el par n-dimensional (A, B) es controlable si
existe una ley de control u(t) que transfiere cualquier estado inicial xo = x(to ) en cualquier tiempo to a un estado final
x f = x(t f ) del espacio de estados en un tiempo t f > to . De otra forma, el sistema o par (A, B) en no controlable.
Teorema 1 Las siguientes condiciones son equivalentes:

1. El par n-dimensional (A, B) es controlable.


2. La matriz de controlabilidad n × nm  
Wc = B AB ... An−1 B = n
tiene rango de fila completo.
3. Las n filas de la matriz e−At B son linealmente independientes para todo t ∈ [0, ∞).
4. La matriz Z t Z t
e−Aτ BBT e−A τ d τ = e−A(t−τ ) BBT e−A (t−τ ) d τ
T T
Vc (t) =
0 0
es no singular para todo t > 0.


Demostración Probando la implicación 1 → 2; esto es, si el par (A, B) es controlable entonces la llamada matriz de
controlabilidad  
B AB ... An−1 B ∈ Rn×mn
es de rango de fila completo.
 Probaremos este enunciado por contradicción (∼ 2 →∼ 1). Entonces, asumimos que:
rango B AB ... An−1 B < n; entonces, existe una vector constante de orden n, q 6= 0 tal que:

qT B = 0T , qT AB = 0T , ...qT An−1 B = 0T .

59
60 5 Control por realimentación de estados

Por el teorema de Cayley-Hamilton, la matriz A satisface su propia ecuación caracterı́stica. Entonces:

An = −an−1 An−1 − ... − a1 A − ao In .

Luego:
qT An B = 0T = qT (−an−1 An−1 B − ... − a1 AB − ao B) = 0T .
Por inducción obtenemos:
qT Ai B = 0T , para i = n + 1, n + 2, ...
Ahora sea x(0) = 0 y x(t f ) = q. Ahora mostraremos que no existe ley de control que transfiera al sistema de x(0) = 0
a x(t f ) = q. De la solución de la ecuación espacio de estados obtenemos:
Z tf
q=e A(t f −to )
x(0) + eA(t f −τ ) Bu(τ )d τ
to
Z tf
q= eA(t f −τ ) Bu(τ )d τ .
0

Ahora premultiplicamos la ecuación resultante por qT para obtener:


Z tf
0 6= kqk2 = qT eA(t f −τ ) Bu(τ )d τ = 0
0

porque  
T A(t f −τ ) (t f − τ 2 ) 2
q e B=q T
B + (t f − τ )AB + A B − ... = 0T .
2!
Luego el sistema no puede ser transferido desde x(0) = 0 hasta x(t f ) = q, y luego el sistema ẋ = Ax + Bu es no
controlable. ⋄

5.1.1. Ejemplo: Motor DC

Máquinas de corriente contı́nua son bastante usadas en sistemas de control en lazo cerrado, en particular para el
control de velocidad y torque. Existen de diversos tamaños comenzando a partir de unos cuantos watts, accionados por
amplificadores electrónicos, a varios cientos de kilowatss, accionados por generadores Ward-Leonard. Servomotores
de bajo consumo de potencia se usan a menudo en instrumentación, particularmente en sistemas de control de aviones,
donde limitaciones de peso y espacio requieren de motores que provean el máximo de potencia por unidad de volumen.
Un cuerpo conductor que transporta corriente, cuando inmerso en un campo magnético, experimenta una fuerza
proporcional a la magnitud del flujo, la corriente y la longitud del conductor, y el ángulo entre el conductor y la
dirección del flujo. Cuando el conductor se localiza a una distancia fija de un eje, con respecto al cual puede rotar, se
genera un torque proporcional al producto de la fuerza y el radio. En un motor, el torque resultante es la suma de torques
producidos por conductores individualmente. Para un rotor dado las únicas dos cantidades que se pueden manipular
son la corriente de armadura y el flujo. Luego, existen dos modos de operación de un servomotor DC: a)modo por
armadura controlada y b) modo por campo controlado.

Control de armadura

En el motor DC de armadura controlada el campo es excitado de forma separada por una corriente constante i f a
partir de una fuente DC fija. El flujo puede ser escrito como φ = K f i f , K f constante. El torque desarrollado por el
motor es proporcional al producto de φ y la corriente en la armadura y la longitud de los conductores. Dado que el
campo es asumido constante, el torque desarrollado por el motor se puede expresar como:

τm = Ki ia .
5.1 Controlabilidad 61

Ra La (negligible)


ea ␪
⫺ Ieq

if ⫽ constant

Figura 5.1 Modelo de un motor DC de armadura.

El torque del motor es usado para accionar el sistema que posee una inercia total Ieq . Asumiendo el caso ideal donde
el torque entregado es igual a la carga (en la práctica no hay 100 % de eficiencia). Entonces:

Ieq θ̈ = Ki ia . (5.2)

donde θ es la position angular del eje del motor.


A medida que la armadura rota en un campo, ésta desarrolla un voltaje inducido eb en dirección opuesta al suministro
de armadura. Este voltaje se llama fuerza contra-electromotriz y es proporcional a la velocidad de rotación θ̇ y el flujo
creado por el campo. Dado que el campo es constante, la fuerza contra-electromotriz puede ser expresada como:

eb = Kb θ̇ . (5.3)

donde Kb es la constante de voltaje del motor.


El control de la velocidad del motor se obtiene ajustando el voltaje aplicado a la armadura. Su polaridad determina
la dirección de rotación del motor. El diagrama esquemático del sistema motor DC de armadura se presenta en la Fig.
5.1, donde Ra = 1Ω , La ∼ 0H, Kb = 5V/rad/sec, Ki = 5Nm/A, y el momento de inercia efectivo es Ieq = 0,1kgm2 . La
fricción y la inercia del engranaje son despreciables.
Aplicando la ley del voltaje de Kirchoff al circuito de la armadura resulta:

Ra ia + Kb θ̇ = ea . (5.4)

Sustituyendo ia de (5.1) en la ecuación arriba mostrada y dividiendo ambos lados por Ieq resulta:
 
Ki ea − Kb θ̇
θ̈ =
Ieq Ra
Ki Kb Ki
= θ̇ + ea .
Ieq Ra Ieq Ra

Sea x1 = θ , x2 = θ̇ y u = ea . Luego tomando en cuenta los parámetros del sistema, representamos la ecuación arriba
mostrada en la forma de espacio de estados.
      
ẋ1 0 1 x1 0
= + u.
ẋ2 0 −250 x2 50

Primero formamos la matriz de controlabilidad del sistema:


 
  0 50
Wc = B AB = ,
50 −12500

y verificamos que el sistema es controlable.


 T
Ahora encontraremos un control u que transfiere el sistema desde un estado inicial x(to ) = 10 1 al estado final
 T
x(2) = 0 0 . Recuerde que la solución del sistema controlado tiene la forma:
62 5 Control por realimentación de estados
Z t
x(t) = eA(t−to ) x(to ) + eA(t−τ ) Bu(τ )d τ .
to

Nuestro objetivo es encontrar u tal que:


Z 2
0 = x(2) = e2A x(0) + eA(2−τ ) Bu(τ )d τ .
0

Se puede verificar que u tiene la forma:


Z 2
−1
eA(2−τ ) BBT eA
T (2−τ )
u(t) = −BT eA(2−t) dτ e2A x(0),
0

donde:  
1 −250t )
e =LAt −1
{(sI − A) } =
1−1 250 (1 − e .
0 e−250t
Entonces: Z −1
2
eA(2−τ ) BBT eA
T (2−τ )
dτ =
0
Z 2    
1
1 250 (1 − e−250(2−τ ) ) 0   1 0
0 50 −250(2−τ ) ) e−250(2−τ ) d τ
0 0 e−250(2−τ ) 50 1
250 (1 − e
 
0,07976 0,02
=
0,02 5
La inversa de la matriz arriba es:  
12,5502 −0,0502
= .
−0,0502 0,2002
Entonces:     
  1 0 12,5502 −0,0502 2A 10
u(t) = − 0 50 1 −250(2−τ ) ) e−250(2−τ ) e
250 (1 − e −0,0502 0,2002 1

u(t) = 50,22e250t−500 − 25,11.


 T  T
La estrategia de control arriba mostrada transfiere el sistema de x(0) = 10 1 a x(2) = 0 0 .
Gráficas de x1 y x2 versus tiempo son mostradas en la Fig. 5.2. Una gráfica de u versus tiempo está dada en la Fig.
5.3.

12 30
x1
10 x2
20
8

6 10

4
u 0
2

0 ⫺10

⫺2
⫺20
⫺4

⫺6 ⫺30
0 0.5 1 1.5 2 0 0.5 1 1.5 2
Time (sec) Time (sec)

Figura 5.2 Variables de estado versus tiempo. Figura 5.3 Acción de control versus tiempo.
540 INTRODUCTION TO CONTROL ENGINEERING

5.1 Controlabilidad 63

Control de campo

La Fig. 5.4 muestra el diagram esquemático del motor DC de campo controlado donde la corriente de la armadura
es mantenida constante y el campo es suministrado a partir de un voltaje ajustable e f .

Ia = Const.

Rf
+
m
if
ef Lf J
B

Figura 5.4 Motor DC de campo controlado. Fig. A.19 Field controlled DC motor

El torque τ desarrollado por el motor es proporcional al flujo creado por la corriente de armadura, la corriente del
campo y la longitud de los conductores. Para un motor dado, y dado que la corriente de armadura es constante, el torque
puede ser expresado como:
τ = KT i f , (5.5)
donde KT es la constante de torque. Este torque es usado para mover yba carda de inercia total J y para vencer la
fricción viscosa. Eso puede ser expresado, despreciando la constante de rigidez K, como:

τ = J θ̈m + Bθ̇m . (5.6)

Aplicando la ley de voltaje de Kirchoff en el circuito del campo se obtiene:

e f = R f i f + L f i̇ f . (5.7)

La representación espacio de estados se obtiene considerando a la posición angular y su derivada como los primeros
estados, x1 = θm , x2 = θ̇m , la corriente de campo como el tercer estado, x3 = i f , y al voltaje del campo como la entrada
u = e f donde la posición angular se considera como la salida y = θm = x1 . Luego las matrices correspondientes son:
   
0 1 0 0  
A =  0 −B/J KT /J  , b =  0  , c = 1 0 0 .
0 0 −R f /L f 1/L f

5.1.2. Sistema no controlable

Teorema 2 El sistema ẋ = Ax + Bu es no controlable si y sólo si existe una transformación de similaridad z = T x tal


que:    
A1 A2 B1
à = TAT −1 = , , B̃ = T B =
0 A4 0
donde el sistema ẋr = A1 xr + B1 u es controlable, A1 ∈ Rr×r , B1 ∈ Rr×m , y el rango de la matriz de controlabilidad del
sistema ẋ = Ax + Bu es igual a r.
64 5 Control por realimentación de estados

Ejemplo de sistema no controlable

Para el modelo del sistema:    


−1 1 0 1 11
 1 1 0 0
 x +  0 0  u,
 
ẋ = 
 0 0 4 0 0 0
1 1 −1 2 01
construir la transformación de las variables de estado tal que en el nuevo sistema coordenado la parte controlable sea
separada de la parte no controlable.
Primero formamos la matriz de controlabilidad del sistema:
 
1 1 −1 0 3 4 −1 4
  0 0 1 1 0 1 3 5 
Wc = B AB A2 B A3 B =   0 0 0 0 0 0 0 0 .

0 1 1 3 2 7 7 19

Usando el comando del MATLAB [Q,R]=qr(W_c) para obtener:


   
−1 0 0 0 −1 −1 1 0 −3 −4 1 −4
 0 0 −1 0   0 −1 −1 −3 −2 −7 −7 −19 
Q= 0 0 0 1  , R =  0 0 −1 −1 0 −1 −3 −5  .
  

0 −1 0 0 0 0 0 0 0 0 0 0

donde las matrices Q y R satisfacen Wc = QR, donde Q es una matriz ortogonal y R es una matriz triangular superior
tal que el rango R=rango Wc . Entonces, premultiplicando la matriz de controlabilidad, Wc , por Q−1 reduce esta matriz a
una matriz de filas triangular superior R porque Q−1Wc = R. Sea z = Q−1 x la transformación de las variables de estado.
Entonces en el nuevo sistema coordenado las matrices A y B toman la forma:
   
−1 1 1 0 −1 −1
 1 2 1 1  0 −1 
Q−1 AQ =   −1
 1 0 1 0  , and Q B =  0 0  .
 

0 004 0 0

La dimensión de la parte no controlable es 1.

5.1.3. Estabilizabilidad

Si los autovalores de la parte no controlada de un sistema ẋ = Ax + Bu están todo en el semiplano complejo izquierdo
abierto- esto es, que la parte no controlada es asintóticamente estable- luego el sistema ẋ = Ax + Bu es estabilizable.
En lo que sigue discutiremos métodos para el diseño de controladores por realimentación para el caso de sistemas
lineales. El proceso de diseño involucra tres pasos. En el primer paso asumimos que todos los estados están disponibles
y procedemos con el diseño de leyes de control por realimentación de estados. Luego procedemos con el segundo
paso; que corresponde al diseño del estimador, también denominado como el observador del vector de estados. El
último paso consiste en combinar los dos pasos anteriores tal que la ley de control, diseñada en el primer paso, usa
el estimador de estados en vez de el vector de estados real. El resultado de este paso es un compensador combinado
controlador-estimador. A continuación discutiremos el controlador por realimentación de estados.

5.2. Control por realimentación de estados

El estado de un sistema dinámico es una colección de variables que permiten la predicción del desarrollo de un
sistema a futuro. A continuación exploraremos la idea de diseñar la dinámica de un sistema a través de realimentación
5.2 Control por realimentación de estados 65

de estados. La ley de control por realimentación será desarrollada paso a paso usando una única idea: la ubicación de
los autovalores del sistema en lazo cerrado en posiciones deseadas.

5.2.1. Estructura del controlador

La Fig. 5.5 muestra un diagrama de un sistema de control por realimentación de estados tı́pico. El sistema completo
consiste del proceso dinámico (planta), que es considerado lineal, los elementos del controlador K y kr , la entrada de
referencia (o señal de comando) r y procesos de disturbio d. El objetivo del controlador por realimentación es regular
la salida del sistema z tal que rastree la señal de referencia aún en la presencia de disturbios y también incerteza en el
proceso.

Figura 5.5 Sistema de control por realimentación de estados. El controlador usa el estado del sistema x y la entrada de referencia r para
comandar el proceso (planta) a través de su entrada u. El disturbio es modelado a través de una entrada aditiva d.

Un elemento importante del dise no de control es la especificación de desempeño. La especificación más simple de
desempeño es la de estabilidad: en la ausencia de disturbios, nuestro objetivo es hacer que el punto de equilibrio del
sistema sea asintóticamente estable. A menudo, especificaciones de desempeño más sofisticadas dotan de propiedades
deseadas a una respuesta al escalón o a la respuesta en frecuencia del sistema, tales como tiempo de levantamiento,
sobreimpulso y tiempo de establecimiento de la respuesta al escalón. Adicionalmente, una preocupación frecuente
es que el sistema posea propiedades de atenuación de disturbios. Considerando un sistema descrito por la ecuación
diferencial lineal:
ẋ(t) = Ax(t) + Bu(t), x(0) = xo
z(t) = Cx(t) + Du(t), ,
y(t) = In x(t)
donde hemos ignorado el disturbio d por ahora. Nuestro objetivo es llevar la salida z a una referencia deseada r y
mantenerla alli.

5.2.2. Estabilización por realimentación de estados

Asumiendo que todos los componentes del vector de estados pueden ser medidos. Dado que el estado en el tiempo t
contiene toda la información necesaria para predecir el comportamiento futuro del sistema, la ley de control invariante
en el tiempo más general es una función del estado y de la entrada de referencia:

u = α (x, r).

Si la ley de control por realimentación de estados es asumida lineal, entonces la realimentación se puede escribir como
una combinación lineal de todas las variables de estado, incluyendo la referencia:

u = −Kx + kr r,
66 5 Control por realimentación de estados

donde K ∈ Rm×n es una matriz constante y r es el valor de referencia, asumido por ahora constante. El sistema en lazo
cerrado es entonces:
ẋ = Ax + B(−Kx + kr r), x(0) = xo
ẋ = (A − BK)x + Bkr r, x(0) = xo
Los polos del sistema en lazo cerrado son las raices de la ecuación caracterı́stica:

det(sIn − A + BK) = 0.

La ley de control por realimentación de estados consiste en seleccionar ganancias:

ki j , i = 1, 2, ..., m, j = 1, 2, .., n,

tal que las raices de la ecuación caracterı́stica del sistema en lazo cerrado:

det(sIn − A + BK) = 0,

esten en las ubicaciones deseadas en el plano complejo. Si asumimos que el diseñador ha hecho una selección de los
polos deseados del sistema en lazo cerrado, y ellos son: p1 , p2 , ..., pn . Los polos (del sistema en lazo cerrado) deseados
pueden ser reales o complejos. Si son complejos, ellos deben estar en pares complejos conjugados. Esto es debido al
uso de ganancias reales ki j . Una vez que definimos los polos deseados, podemos formar el polinomio caracterı́stico en
lazo cerrado deseado,
αc (s) = (s − p1 )(s − p2 )...(s − pn )
αc (s) = sn + αn−1 sn−1 + ... + α1 s + αo .
Nuestro objetivo es seleccionar una matriz de realimentación K tal que:

det(sIn − A + BK) = sn + αn−1 sn−1 + ... + α1 s + αo .

El problema arriba presentado es también llamado problema de ubicación de polos o problema de asignación de
autovalores. Primero discutiremos el problema de ubicación de polos para una planta con una entrada.

Ubicación de polos para sistemas de una entrada

En este caso, K = k ∈ R1×n . La solución de este problema se obtiene fácilmente si el sistema ẋ(t) = Ax(t) + bu(t)
ya está en la forma canónica controlable. En tal caso tenemos:
 
0 1 0 ... 0 0

 0 0 1 ... 0 0 

A − bk = 
 .
.. .
.. 
.
 
 0 0 0 ... 0 1 
−ao − k1 −a1 − k2 −a2 − k3 ... −an−2 − kn−1 −an−1 − kn

Entonces, las ganancias deseadas son:


k1 = αo − ao ,
k2 = α1 − a1 ,
.. .
.
kn = αn−1 − an−1
Si el sistema ẋ(t) = Ax(t) + bu(t) no está en la forma canónica controlable, primero transformamos el sistema en la
forma canónica y luego calculamos el vector de ganancias k̃ tal que:

det(sIn − Ã + b̃k̃) = sn + αn−1 sn−1 + ... + α1 s + αo .


5.2 Control por realimentación de estados 67

Entonces,  
k̃ = αo − ao α1 − a1 ... αn−1 − an−1 .
Luego:
k = k̃T,
donde T es la transformación que lleva al sistema ẋ(t) = Ax(t) + bu(t) a la forma canónica controlable.
Podemos representar la fórmula de arriba para la matriz de ganancias en una forma alternativa. Para esto, nótese
que:  
q1
 q1 A 
 
k̃T = αo − ao α1 − a1 ... αn−1 − an−1  .  .
 .. 
q1 An−1
k̃T = q1 (αo In + α1 A + ... + αn−1 An−1 ) − q1 (ao In + a1 A + ... + an−1 An−1 ).
Por el teorema de Cayley-Hamilton, tenemos:

An = −(ao In + a1 A + ... + an−1 An−1 ).

Entonces:
k = q1 αc (A).
La expresión para el vector fila de ganancias fue propuesto por Ackerman en 1972 y ahora se conoce como Fórmula
de Ackerman para ubicación de polos.

Ejemplo, sistema de una entrada

Para el sistema dinámico lineal:    


1 −1 2
ẋ = x+ u,
1 −2 1
usaremos la fórmula de Ackerman para diseñar el controlador por realimentación de estados, u = −Kx, tal que los
polos en lazo cerrado esten localizados en {−1, −2}.
Para usar la fórmula de Ackerman, primero formamos la matriz de controlabilidad del sistema ẋ(t) = Ax(t) + bu(t)
y luego encontramos la última fila de su inversa, denotada por q1 . La matriz de controlabilidad es:
 
  21
b Ab = .
10

La inversa de la matriz arriba es:  


0 1
.
1 −2
 
Entonces, q1 = 1 −2 . El polinomio caracterı́stico del sistema en lazo cerrado deseado es:

αc (s) = (s + 1)(s + 2) = s2 + 3s + 2.

Luego,
68 5 Control por realimentación de estados

k = q1 αc (A)
= q1 (A 2
 + 3A +  2I2 )     
1 −1 1 −1 1 −1 10
= q1 +3 +2
 1 −2  1−2  1 −2 01
0 1 3 −3 20
= q1 + +
−1 3  3 −6 02
  5 −2
= 1 −2
  2 −1
= 10

Ubicación de polos para sistemas de múltiples entrada

Si el sistema ẋ(t) = Ax(t) + Bu(t) ya se encuentra en la forma canónica controlable, procedemos como a contin-
uación. Primero representamos la matriz B como:
   
00 ... 0 0 0 0 ... 0 0
0 0 ... 0 0   0 0 ... 0 0 
   
 .. ..   .. .. 
. .  . .

 
1 x x x x  1 0 0 0 0

 
0 0
 ... 0 0   0
 0 ... 0 0   1x x xx

0 0
 ... 0 0   0
 0 ... 0 0   0 1 x x x
 .. ..   .. ..   .. ..

.  = B̂Γ
B=
. . =.
 . . . .. 

0 1 x x x  0 1 0 0 0

  0 0 ... 1 x 
. ..  . .. 
 .. . . 00 0 01
  . . 
0 0
 ... 0 0  
 0 0 ... 0 0  
0 0
 ... 0 0   
0 0 ... 0 0  
. ..  . .. 
 .. .   .. .
00 0 01 0 0 0 01

donde la matriz Γ es no singular y cuadrada que consiste de filas de B diferentes de cero. Luego, sea:

K̂ = Γ K.

Nótese que:  
0 0 ... 0 0

 0 0 ... 0 0 

 .. .. 

 . . 

 k̂
 11 k̂12 ... k̂1n−1 k̂1n  
 0 0 ... 0 0 
 
 0 0 ... 0 0 
 
 . .. 
B̂K̂ =  ..
 . ;
 
 k̂21 k̂22 ... k̂2n−1 k̂2n 
 . .. 
 . 
 . . 
 
 0
 0 ... 0 0  
 0
 0 ... 0 0  
 .. .. 
 . . 
k̂m1 k̂m2 ... k̂mn−1 k̂mn
5.2 Control por realimentación de estados 69

esto es, las filas no ceros en el producto B̂K̂ coinciden con las filas no ceros de la matriz A en su forma canónica
controlable. Si seleccionamos, por ejemplo, las ganancias ki j , i = 1, 2, ..., m y j = 1, 2, ..., n, tal que:
 
0 1 0 ... 0 0
 0
 0 1 ... 0 0 
 .. ..  ;
A − BK = A − B̂K̂ =  . . 
 
 0 0 0 ... 0 1 
−αo −α1 α2 ... αn−2 αn−1

donde:
K = Γ −1 K̂.
Si el sistema ẋ(t) = Ax(t) + Bu(t) no está en la forma canónica controlable, primero lo llevaremos a esa forma y luego
calcularemos la matriz de ganancias que ubica los polos del sistema en lazo cerrado en las posiciones deseada para el
sistema ẋ(t) = Ax(t) + Bu(t) en la forma canónica controlable. la matriz de ganancias que ubica los polos del sistema
en lazo cerrado en las posiciones pre-especificadas para el sistema ẋ(t) = Ax(t) + Bu(t) en sus coordinadas originales
es entonces dado por:
K = Γ −1 K̂T.
donde T es la matriz de transformación que lleva al sistema ẋ(t) = Ax(t) + Bu(t) a la forma canónica controlable.

Ejemplo, múltiples entradas

Para el sistema dinámico lineal:    


00 1 0 1 0
1 0 2 0 0 0
ẋ = 
0 1
x+  u,
3 0 0 0
00 −21 5 0 1
usaremos su forma canónica controlable para encontrar la matriz K ∈ R2×4 tal que los polos en lazo cerrado esten
ubicados en:
−2, −3 + −3 + i, −3 − i, −4.
Primero transformamos ẋ(t) = Ax(t) + Bu(t) a la forma canónica controlable. Para eso, formamos la matriz de contro-
labilidad:  
1 0 0 0 0 ...
   0 0 1 0 0 ... 
b1 b2 Ab1 Ab2 A2 b1 ... =   0 0 0 0 1 ...  .

0 1 0 5 0 ...
Entonces seleccionamos, procediendo de izquierda a derecha, las primeras cuatro columnas linealmente independientes
de la matriz de controlabilidad. Obtenemos:  
b1 b2 Ab1 A2 b1 .
Entonces, los ı́ndices de controlabilidad son d1 = 3 y d2 = 1. Rearreglamos las columnas y formamos la matriz L
de la forma:  
L = b1 Ab1 A2 b1 b2 = I4 = L−1 .
Las últimas filas que necesitamos para la construcción de la matriz de transformación son:
   
q1 = 0 0 1 0 and q2 = 0 0 0 1 .

La matriz de transformación es:


70 5 Control por realimentación de estados
 
00 1 0
  0 1 3 0
T = q1 q1 A q1 A2 q2 =
1 3
.
11 0
00 0 1
Y el sistema ẋ(t) = Ax(t) + Bu(t) en el nuevo sistema coordenado tiene la forma:
   
0 100 00
 0 0 1 0 0 0
à = TAT −1 =   1 2 3 0  and B̃ = T B =  1 0  .
  

−21 0 0 5 01

El polinomio caracterı́stico del sistema en lazo cerrado es:

αc (s) = (s + 2)(s + 3 − i)(s + 3 + i)(s + 4) = s4 + 12s3 + 54s2 + 108s + 80.

Una posible elección de la matriz de ganancias K̃, dentro de tantas, que funciona para el caso es K̃ tal que:
 
0 1 0 0
 0 0 1 0 
à − B̃K̃ = 
 0
.
0 0 1 
−80 −108 −54 −12

Nótese que Γ = I2 . Entonces:  


1 2 3 −1
K̃ = ,
59 108 54 17
y luego:  
3 11 40 −1
K = K̃T = .
54 270 977 17
El algoritmo aqui presentado para ubicación de polos para sistemas de múltiples entradas presenta más un valor
teórico antes que práctico. EL algoritmo presenta problemas de implementación numérica porque la transformación
del sistema ẋ(t) = Ax(t) + Bu(t) a la forma canónica controlable sufre de propiedades numéricas pobres. Existen otros
algoritmos más robustos, como los implementados en MATLAB, especificamente en la función place.
La solución del problema de ubicación de polos para un sistema de múltiples entradas no es única. Entonces, los
grados de libertad restantes pueden ser usados para alcanzar objetivos secundarios. En la semanas siguientes discutire-
mos un método para construir una ley de control lineal por realimentación de estados que ubica los polos del sistema
en lazo cerrado en posiciones pre-especificadas y al mismo tiempo minimiza un ı́ndice de desempeño cuadrático.
Como resultado de la discusión en esta parte, enunciaremos un teorema fundamental de sistemas lineales:
Teorema El problema de ubicación de polos tiene solución para todas las elecciones de los n polos en lazo cerrado,
simétricos con respecto al eje real, si y sólo si el sistema ẋ(t) = Ax(t) + Bu(t) es controlable. ⋄

5.2.3. Desempeño. Control para la solución en estado estacionario

Nótese que kr no afecta la estabilidad del sistema (que es determinado por los autovalores de A − BK) pero si afecta
la solución en estado estacionario. En particular, el punto de equilibrio y la salida del sistema en lazo cerrado estan
dados por:
ẋe = 0 = (A − BK)xe + Bkr r,
xe = −(A − BK)−1 Bkr r,
ze = Cxe + Due
entonces kr debe ser elegido tal que ze = r (el valor deseado de la salida). Asumiendo que D = 0 (el caso más común),
entonces:
ze = r = −C(A − BK)−1 Bkr r,
5.2 Control por realimentación de estados 71

luego para cuando kr sea un escalar (sistema de una entrada y una salida) tenemos:

kr = −1/(C(A − BK)−1 B).

Nótese que kr es exactamente la inversa de la ganancia en la frecuencia cero del sistema en lazo cerrado.

5.2.4. Especificaciones del diseño del control por realimentación de estados

La ubicación de los autovalores determina el comportamiento de la dinámica en lazo cerrado, y como consecuencia,
la decisión más importante es donde ubicaremos los autovalores. Como en todos los casos de diseño de sistemas de
control, existe una concesión mutua entre la magnitud de la entrada de control, la robustez del sistema a las perturba-
ciones y el desempeño del sistema en lazo cerrado. En esta sección revisaremos brevemente estas concesiones mutuas
con el caso especial de sistemas de segunda orden.

Sistema de segunda orden

El sistema de segunda orden es una clase de sistema que ocurre frecuentemente en el análisis y diseño de sistemas
de relimentación.
Un sistema de segunda orden se puede escribir como:

q̈ + 2ζ ωo q̇ + ωo2 q = kωo2 u, y = q.

En la forma de espacio de estados, el sistema se escribe como:


   
dx 0 ωo 0  
= x+ u, y = 1 0 x.
dt −ωo −2ζ ωo kωo

Los autovalores del sistema están dados por:


q
λ = −ζ ωo ± ωo2 (ζ 2 − 1),

y observamos que el origen es un punto de equilibrio estable si ωo > 0 y ζ > 0. Nótese que los autovalores son
complejos si ζ < 1 y reales en caso contrario.
La forma de la solución depende del valor de ζ , el cual se denomina factor de amortiguamiento del sistema. Si
ζ > 1, decimos que el sistema es sobreamortiguado, y la respuesta natural (u = 0) del sistema está dado por:

β x1o + x2o −α t α x1o + x2o −β t


y(t) = e − e ,
β −α β −α
p p
donde α = ωo (ζ + ζ 2 − 1) y β = ωo (ζ − ζ 2 − 1). Vemos que la respuesta consiste en la suma de dos señales que
decaen exponencialmente. Si ζ = 1, entonces el sistema es criticamente amortiguado y la solución resulta:

y(t) = e−ζ ωo t (x1o + (x2o + ζ ωo x1o )t).

Nótese que la respuesta es aún asintóticamente estable mientras que ωo > 0, a pesar que el segundo término en la
solución este creciendo con el tiempo (pero más lento que el término exponencial decayente que lo multiplica).
Finalmente, si 0 < ζ < 1, entonces la solución es oscilatoria y se dice que el sistema es subamortiguado. El
parámetro ωo es conocido como la frecuencia natural del sistema. La respuesta natural del sistema esta dado por:
 
− ζ ωo t ζ ωo 1
y(t) = e (x1o cos ωd t + x1o + x2o sin ωd t),
ωd ωd
72 5 Control por realimentación de estados
p
donde ωd =6.3.
ωo STATE
1 − ζFEEDBACK DESIGN
2 es llamada la frecuencia amortiguada.
185
Debido a la forma simple de un sistema de segunda orden, es posible resolver el sistema en forma analı́tica para una
entrada del tipo escalón. Para este caso, la solución depende de ζ :
!
− ζ ωo t ζ − ζ ωo t
y(t) = k 1 − e cos ωd t + p e sin ωd t , ζ < 1
1−ζ2
 
y(t) = k 1 − e−ζ ωo t (1 + ωot) , ζ = 1
!
1 ζ √ 1 ζ √
−ζ ωo t(ζ − ζ 2 −1) −ζ ωo t(ζ + ζ 2 −1)
y(t) = k 1 − ( p + 1)e + (p − 1)e , ζ > 1,
2 1−ζ2 2 1−ζ2
donde hemos tomado x(0) = 0.
La Fig. 5.6 muestra respuestas de un sistema de 2da orden a una entrada del tipo escalón con k = 1 y para diferentes
valores de ζ . La forma de la respuesta es determinado por ζ , y la velocidad de la respuesta es determinada por ωo : la
respuesta es más rápida si ωo es grande.
6.3. STATE FEEDBACK DESIGN 185
Im 2
ζ = 0.4 ζ =0
ζ = 0.7 1.5
ζ =1 Re
y
1

ζ = 1.2 ζ
0.5

0
0 5 10 15
Normalized time ω0 t
(a) Eigenvalues (b) Step responses

Figure 6.8: Step response for a second-order system. Normalized step responses h for the
Figura 5.6 Respuestas de un sistema de 2da orden a una entrada del tipo escalón unitario

Adicionalmente también podemos calcular las propiedades de la respuesta al escalón. Por ejemplo, para un sistema
subamortiguado: !
ζ − ζ ωo t
y(t) = k 1 − p e sin(ωd t + ϕ ) ,
1−ζ2
donde ϕ = arccosζ . El sobreimpulso máximo ocurrirá por primera vez cuando la derivada de y sea cero, que se puede
mostrar que es: √
Mp = eπζ / 1−ζ 2
.
De la misma forma se pueden calcular otras caracterı́sticas de la respuesta al escalón, Cuadro 5.7.


Property Value ζ = 0.5 ζ = 1/ 2 ζ =1
Steady-state value k k k k
ϕ/ tan ϕ
Rise time Tr = 1/ω0 · e 1.8/ω0 2.2/ω0 2.7/ω0

2
Overshoot M p = e−π ζ / 1−ζ 16% 4% 0%
Settling time (2%) Ts ≈ 4/ζ ω0 8.0/ω0 5.9/ω0 5.8/ω0

Figura 5.7 Propiedades de la respuesta al escalón para un sistema de 2do orden con 0 < ζ < 1.
5.2 Control por realimentación de estados 73

La respuesta en la frecuencia también puede ser calculada explı́citamente y está dada por:

kωo2 kωo2
Meiθ = =
(iω )2 + 2ζ ωo (iω ) + ωo2 ωo2 + 2iζ ωo ω + −ω 2

Una ilustración gráfica de la respuesta en frecuencia está dada en la Fig. 5.8. Nótese que el pico de la resonancia
aumenta a medida que crece ζ .
186 CHAPTER 6. STATE FEEDBACK

ζ = 0.08 2
Im ζ ≈ 0 10
ζ = 0.2

Gain
ζ = 0.5 0
ζ
10
−2
ζ =1 10
Re
0

Phase [deg]
ζ
−90

−180 −1 0 1
10 10 10
Normalized frequency ω/ω0
(a) Eigenvalues (b) Frequency responses

Figura 5.8 Respuesta en frecuencia de un sistema de 2do orden.

Sistema de orden alto

Para sistemas de orden alto, la ubicación de polos es considerablemente más dificil, especialmente cuando tratamos
de considerar las múltiples concesiones mutuas presentes en el diseño de control por realimentación.
Una de las razones por las que los sistemas de segundo orden son tan importantes en los sistemas de realimentación
es que aún para sistemas complicados la respuesta es a menudo caracterizada por los autovalores dominantes. Para
definir los autovalores dominantes, consideremos el sistema con autovalores λ j j = 1, ..., n. Definimos el factor de
amortiguamiento para el autovalor complejo como:

−Reλ
ζ= .
kλ k

Decimos que el par de autovalores complejos conjugados λ , λ ∗ es un par dominante si tiene el menor factor de amor-
tiguamiento comparado con los otros autovalores del sistema. Por consiguiente, se puede decir que el par dominante de
autovalores será el factor principal en la respuesta del sistema después que los transientes debido a otros términos (au-
tovalores) hayan desaparecido. A pesar de que esto último no siempre se cumple, a menudo el caso de los autovalores
dominantes determinana la respuesta (al escalón) del sistema.
El único requerimiento formal en la asignación de autovalores es que el sistema sea controlable. En la práctia existen
otras restricciones porque la selección de autovalores tiene un gran efecto en la magnitud y la variación del cambio
de la señal de control. Autovalores grandes requerirán por lo general grandes señales de actuación ası́ como también
rápidos cambios de estas señales. La capacidad de los actuadores impondrá restricciones en la posible ubicación de los
autovalores del sistema en lazo cerrado.
A continuación, usaremos las ganancias K y kr para diseñar la dinámica del sistema en lazo cerrado y satisfacer
nuestro objetivo. Los ejemplos a seguir pretender ilustrar y proveer mayor intuición en como construir tal ley de
control por realimentación de estados.
74 5 Control por realimentación de estados

5.2.5. Ejemplo, sistema de balance

Considerando el sistema de la Fig. 5.9, recordemos que este sistema es un modelo para una clase de sistemas en los
que el centro de masa es balanceado sobre un punto pivote.

MODELO DEL SISTEMA - puede ser NO LINEAL

Las ecuaciones (no lineales) de movimiento del sistema estan dados por:
      
(M + m) −ml cos θ p̈ c ṗ + ml sin θ θ̇ 2 F
+ = .
−ml cos θ (J + ml 2 ) θ̈ γ θ̇ − mgl sin θ 0

Por simplicidad tomamos c = γ = 0.

PUNTO DE EQUILIBRIO PARA LINEALIZACIÓN - LINEALIZACIÓN

Linealizando en torno al punto de equilibrio xe = (p, 0, 0, 0), la matriz dinámica y la matriz de control son:
   
0 0 10 0
0 0 0 1  0 
A=  0 m2 l 2 g/µ 0 0  , B =  Jt /µ  ,
  

0 Mt mgl/µ 0 0 lm/µ

donde µ = Mt Jt − m2 l 2 , Mt = M + m y Jt = J + ml 2 .

ANÁLISIS DE SISTEMA

Controlabilidad:
La matriz de controlabilidad es:
 
0 Jt /µ 0 gl 3 m3 /µ 2
   0 lm/µ 0 gl 2 m2 (M + m)/µ 2 
Wc = B AB A2 B A3 B = 
 Jt /µ 0
.
gl m g/µ
3 3 2 0 
lm/µ 0 g l m (M + m)/µ
2 2 2 2 0

El determinante de la matriz es:


g2 l 4 m4
det(Wc ) = 6= 0,
µ4
y concluimos que el sistema es controlable. Esto significa que podemos mover el sistema desde una condición ini-
cial hasta un estado fina y, en particular, que siempre podemos encontrar una entrada que lleve el sistema desde una
condición inicial hasta el punto de equilibrio.
6.1.porREACHABILITY
5.2 Control realimentación de estados 171 75

m
θ

F
M

p
(a) Segway (b) Cart-pendulum system

Figura 5.9 Sistema de balance.

Polos en lazo abierto:


Usando los siguiente parámetos para el sistema (correspondiente, a groso modo, a un humano siendo balanceado
por un carro de estabilización): M = 10 kg, m = 80kg, c = 0,1N/m/s, γ = 0,01N/rad/sec, l = 1m y J = 100kgm2 ,
g = 9,8m/m2 .
Los autovalores de la dinámica del sistema en lazo abierto están dados por λ ={0, 2.6842, 2.6851,-0.0011}.

DISEÑO DEL CONTROL

Polos en lazo cerrado:


Para decidir donde ubicar los autovalores del sistema en lazo cerrado, primero notamos que, a groso modo, la
dinámica del sistema en lazo cerrado tendrá dos componentes: la dinámica rápida que estabiliza el péndulo en la
posición invertida y la dinámica lenta que controla la posiciónpdel carrito. Para la dinámica rápida, la dinámica natural
del péndulo (cuando cuelga hacia abajo) esta dada por ωo = mgl/(J + ml 2 ) ∼ 2,1rad/s. Para proveer una respuesta
rápida escogemos un factor de amortiguamiento de ζ = 0,5, luego tratamosp de ubicar el primer par de autovalores en
λ1,2 ∼ −ζ ωo ± ωo ∼ −1 ± 2i, donde hemos usado la aproximación ζ 2 − 1 ∼ 1. Para la dinámica lenta, escogemos
una factor de amortiguamiento igual a 0.5 para obtener un tiempo de subida de aproximadamente 5s. Esto resulta en
autovalores λ3,4 = −0,35 ± 0,35i.
Luego el polinomio caracterı́stico del sistema en lazo cerrado serı́a:

αc (s) = (s + 1 − 2i)(s + 1 + 2i)(s + 0,35 − 0,35i)(s + 0,35 + 0,35i)

Estabilización por realimentación de estados:


Cálculando la inversa de la matriz de controlabilidad para encontrar q1 . Luego, usando la fórmula de Ackerman:

K = q1 αc (A),

obtenemos:  
K = −15,3 1731,3 −49,9 422,8 .
Esta matriz de ganancias K también se puede obtener usando la función place en MATLAB.
Controlador por alimentación directa:
La ganancia por alimentación directa kr es:
 
kr = −1/(C(A − BK)−1 B) = −15,29 0
76 5 Control por realimentación de estados

SIMULACIONES

La respuesta a una entrada escalón para el controlador aplicado en el sistema linealizado está dado en la Fig. 5.10
(parte izquierda). Observamos que la fuerza de entrada es excesivamente grande, casi tres veces la fuerza de gravedad
en su pico.
Para proveer una fuerza más realista rediseñamos el controlador para que presenta una dinámica controlada un poco
más lenta. Para la dinámica del péndulo variamos la frecuencia natural por un factor de tres y mantenemos el factor
de amortiguamiento. La dinámica del carrito también la desaceleramos, el factor de amortiguamiento permanece en
0.7 pero la frecuencia natural cambia a 1 (correspondiente a un tiempo de subida de 10s). Luego, los polos deseados
resultan:
λ = {−0,33 ± 0,66i, −0,18 ± 0,18i}.
El desempeño del controlador es mostrado en la Fig. 5.10.
190 CHAPTER 6. STATE FEEDBACK

2 2

Position p [m]
Position p [m]

1 1

0 0
0 5 10 15 0 10 20 30 40

30 Input force F [N] 30


Input force F [N]

20 20
10 10
0 0
−10 −10
0 5 10 15 0 10 20 30 40
Time t [s] Time t [s]
(a) λ1,2 = −1 ± 2i (b) λ1,2 = −0.33 ± 0.66i

Figura 5.10 Control por realimentación de estados para un sistema de balance.

5.3. Control integral

Los controladores basados en realimentación de estados alcanzan la respuesta correcta en estado estacionario a una
entrada de referencia mediante una calibración cuidadosa de la ganancia kr . Sin embargo, siendo uno de los principales
usos de la realimentación el permitir buen desempeño en la presencia de incerteza, requerir tener un modelo exacto de
Linear Quadratic Regulators
la planta es indeseable. Una alternativa a la calibración es el uso de realimentación integral, en el cual el controlador
usa un integrador para proveer error en estado estacionario cero.
Considerando un sistema descrito por la ecuación diferencial lineal:

ẋ(t) = Ax(t) + Bu(t), x(0) = xo


z(t) = Cx(t), ,
y(t) = In x(t)

el objetivo es llevar la salida z a una referencia deseada r y mantenerla alli.


La Fig. 5.11 muestra que el abordaje básico de la acción integral en la realimentación es el crear un controlador que
calcula la integral de la señal de error, que luego se usa como un término de realimentación. Esto se usa mediante el
siguiente aumento en la descripción del sistema con el nuevo estado e:
     
d x Ax + Bu Ax + Bu
= = .
dt e z−r Cx − r
5.3 Control integral 77

El estado e es visto como la integral de la diferencia entre la salida real z y la salida deseada r. Nótese que si encon-
tramos un controlador que estabilice el sistema, entonces necesariamente tendremos ė = 0 en estado estacionario y por
consiguiente z = r en estado estacionario.

Figura 5.11 Sistema de control por realimentación de estados con aumento de la acción integral. El controlador usa el estado del sistema
x, la entrada de referencia r y la integral del error de salida e para comandar el proceso (planta) a través de su entrada u.

Dado el sistema aumentado, diseñamos un controlador por realimentación de estados de la forma usual, con una ley
de control de la forma:
u = −Kx − ki e + kr r,
donde K es el término usual de control por realimentación de estados, ki es el término integral y kr es usado para
fijar la entrada nominal para alcanzar el estado estacionario deseado. El punto de equilibrio resultante para el sistema
está dado por:
xe = −(A − BK)−1 B(kr r − ki ee ).
Nótese que el valor de ee no es especificado pero automáticamente se asentará en el valor que haga ė = z − r = 0, lo que
implica que en equilibrio la salida sera igual a la referencia. Cabe resaltar que esto se mantiene independientemente de
los valores especificos de A, B, C y K mientras que el sistema sea estable (que se puede hacer a través de la elección
apropiada de K y ki ).
El compensador final está dado por:
de
= z − r,
dt
u = −ki e − Kx + kr r,
donde hemos incluido la dinámica del integrador como parte de la especificación del controlador. Este tipo de com-
pensador es llamado compensador dinámico puesto que tiene su propia dinámica interna. El siguiente ejemplo ilustra
el abordaje básico.

5.3.1. Ejemplo, control de rapidez con control integral

Considere el ejemplo de control de rapidez estudiado previamente.

MODELO LINEALIZADO CON INTEGRADOR

La dinámica linealizada de la planta en torno al punto de equilibrio ve , ue está dada por:


78 5 Control por realimentación de estados

Figura 5.12 Sistema de control por realimentación de estados con aumento de la acción integral. Implementación. El compensador final
posee el estado e (la integral del error de salida), la entrada de estados del sistema x, la entrada de referencia r, la entrada de la salida
controlada del proceso (planta) z y comanda la planta a través de su salida u.

dx
= ax − bg θ + bw,
dt ,
z = v = x + ve ,

donde x = v − ve , w = u − ue , m es la masa del carro y θ es el ángulo de inclinación del terreno. La constante a depende
de las caracterı́sticas de aceleración.
Si aumentamos el sistema con un integrador, la dinámica de la planta resulta:

dx
= ax − bg θ + bw,
dt ,
de
= z − vr = ve + x − vr ,
dt
o, en la forma de espacio de estados:
          
d x a0 x b −bg 0
= + u+ θ+ .
dt e 10 e 0 0 ve − vr
| {z } |{z}
A B

Nótese que cuando el sistema está en equilibrio, tenemos ė = 0, que implica que la rapidez del vehı́culo v = ve + x debe
ser igual a la rapidez de la referencia deseada vr .

ANÁLISIS DEL SISTEMA

Controlabilidad:
La matriz de controlabilidad es:  
  b ab
Wc = B AB = .
0 b
El determinante de la matriz es:
det(Wc ) = b2 6= 0,
5.3 Control integral 79

y concluimos que el sistema es controlable. Esto significa que podemos mover el sistema desde una condición inicial
hasta un estado final y, en particular, que siempre podemos encontrar una entrada que lleve el sistema desde una
condición inicial hasta el punto de equilibrio.
Polos en lazo abierto:
Los autovalores de la dinámica del sistema en lazo abierto estan dados por λ = {0, −a}

DISEÑO DEL CONTROL

El controlador para el modelo linealizado con integrador tiene la forma: Nuestro controlador tendrá la forma:
 
  x
u = − kx ki + kr vr , ,
| {z } e
K

y las ganancias kx , ki y kr serán elegidos para estabilizar el sistema y proveer la entrada correcta para la rapidez deseada.
Polos en lazo cerrado:
Asumamos que deseamos diseñar el sistema en lazo cerrado para que tenga el siguiente polinomio caracterı́stico:

αc (s) = s2 + a1 s + a2 .

Estabilización por realimentación de estados:


Fijando el disturbio θ = 0, el polinomio caracterı́stico del sistema en lazo cerrado está dado por:
     
10 a0  
det(sI − (A − BK)) = det s − kx ki = s2 + (bkx − a)s + bki ,
01 10

entonces elegimos:
a1 + a a2 a
kx = , ki = , kr = −1/(C(A − BK)−1 B) =
b b b
Controlador con integrador: Nuestro controlador tendrá la forma:
de
= z − vr ,
dt   .
  x
u = − kx ki + kr vr ,
e

SIMULACIONES

El controlador con integrador resultante estabiliza el sistema y como consecuencia lleva ė = z − vr a cero, resultando
en rastreamiento perfecto. Nótese que aún teniendo un pequeño error en los valores de los parámetros que definen el
sistema, mientras los autovalores del sistema en lazo cerrado sean estables, el error de rastreamiento se aproximará a
cero. Luego, la calibración exacta de kr ya no serı́a necesaria. De hecho podriamos fijar kr = 0 y dejar que el controlador
por realimentación haga su trabajo.
Control integral por realimentación también se puede usar para compensar por disturbios constantes. La Fig. 5.12
muestra el resultado de una simulación en la que el carro encuentra una pendiente con ángulo θ = 4o a los t = 8s. La
estabilidad del sistema no se ve afectada por este disturbio externo, y una vez más vemos que la rapidez del vehı́culo
converge a la rapidez deseada. Esta habilidad de manejar disturbios constante es en general una propiedad de los
controladores con realimentación integral.
80 5 Control por realimentación de estados

Velocity v [m/s]
20

Throttle u
19 0.5
Proportional
PI control
18 0
0 10 20 30 40 0 10 20 30 40
Time t [s] Time t [s]

Figura 5.13Figure
Rapidez6.15: Velocity
y apertura and throttle
de la válvula for a cardewith
de alimentación cruise control
combustible based
basadas en onproporcional
control proportional (dashed)
(linea punteada) y control
proporcional integral (linea sólida). Disturbio: pendiente con ángulo constante.

Fuente: Capı́tulo 6 del libro Feedback Systems: An Introduction for Scientists and Engineers, de Karl J. Åström y
Richard M. Murray.
Fuente: Capı́tulo 3 del libro Systems and Control de Stanislaw H. Zak (2002).
Fuente: Capı́tulo 6 del libro Linear System Theory and Design, de C.T.Chen.
Capı́tulo 6
Control por realimentación de salidas

En esta parte mostramos como usar control por realimentación de estados para modificar la dinámica del sistema
a través de observadores. Introducimos el concepto de observabilidad y mostramos que si un sistema es observable
es posible recuperar los estados en base a las medidas de las entradas y salidas del sistema. Luego mostramos como
diseñar un controlador con realimentación partiendo de los estados observados. Un concepto importante es el principio
de separación, que será probado. La estructura del controlador que se deriva es bastante general y se puede obtener en
otros métodos de diseño.

6.1. Observabilidad

Como hemos observado en las secciones anteriores, la controlabilidad del sistema implica la habilidad para con-
trolar completamente el vector de estado. Supongamos ahora que no podemos acceder a los estados del sistema o que
conocer todos los estados del sistema requerirı́a un número excesivo de sensores, lo que es más realista. En esta parte
investigamos como podemos estimar los estados usando un modelo matemático y algunas medidas. Mostraremos que
el cálculo de los estados será realizado por un sistema dinámico llamado observador.
Consideremos el sistema descrito por la ecuación diferencial lineal:

ẋ(t) = Ax(t) + Bu(t), x(0) = xo


,
y(t) = Cx(t) + Du(t),

donde C ∈ R p×n , p ≤ n, y D ∈ R p×m . Nuestra intención es conocer el comportamiento dinámico de todos los estados
a partir de sus entradas y salidas (señal medida), ver Fig. 6.1. La señal medida puede estar contaminada con ruido
n, sin embargo comenzaremos analizando el caso sin ruido. Escribimos x̂ para el estado estimado que resultado del
observador.
202 CHAPTER 7. OUTPUT FEEDBACK
n
Process
u ẋ = Ax + Bu y x̂
6 Observer
y = C x + Du

Figura 6.1 Diagrama de bloques del observador. El observador usa las medidas del proceso y (posiblemente contaminada con ruido n) y
las entradas u para estimar el estado actual del proceso.

Observabilidad Un sistema lineal es observable si existe un tiempo finito t f > to tal que para cualquier u(t) y
resultante y(t) en el tiempo [to ,t f ] podemos determinar x(t), to < t < t f , conociendo completamente la entrada u y la
salida y. ⋄

81
82 6 Control por realimentación de salidas

Nótese que podemos decir que nuestro objetivo es determinar x(to ) ya que una vez x(to ) es obtenido, x(t) se puede
determinar conociendo u(t) y y(t) en el intervalo de tiempo [to ,t f ]. A continuación mostraremos como podemos deter-
minar constructivamente x(to ), dados u(t) y y(t). Primero notamos que la solución y(t) está dada por:
Z t
y(t) = CeA(t−to ) x(to ) + CeA(t−τ ) Bu(τ )d τ + Du(t).
to

Definiendo: Z t
g(t) = CeA(t−to ) x(to ) = y(t) − CeA(t−τ ) Bu(τ )d τ − Du(t),
to

donde la parte derecha de la igualdad es conocida. Nuestro objetivo es determinar x(to ). Teniendo x(to ), podemos
determinar enteramente x(t) para todo t ∈ [t f ,to ] de la fórmula:
Z t
x(t) = e A(t−to )
x(to ) + eA(t−τ ) Bu(τ )d τ .
to

T
Premultiplicando ambos lados de g(t) por eA (t−to )CT e integrando la expresión resultante entre los limites to y t f ,
obtenemos: Z t Z t
T T
eA (t−to )CT CeA(t−to ) dtxo = eA (t−to )CT g(t)dt.
to to

Sea Z tf
T
Vo (to ,t f ) = eA t CT CeAt dt.
to

Entonces, despues de algunas manipulaciones y asumiendo que la matriz Vo (to ,t f ) es invertible, obtenemos:
Z tf
Tt T (t−t
xo = eAto Vo−1 (to ,t f )eA o
eA o)
CT g(t)dt.
to

El conocimiento de xo nos permitirá reconstruir totalmente el estado x(t) sobre todo el intervalo [to ,t f ]. Concluimos
que si la matriz Vo (to ,t f ) es invertible, entonces el sistema es observable.

6.1.1. Ejemplo

Para un sistema dinámico modelado por:


   
−1/2 1/2 −1
ẋ = x+ u = Ax + bu,
 −1/2
 1/2 1
y= 11 x = cx,

determinaremos x(t) sobre el intervalo [0, 10] sabiendo que u(t) = 1 para t ≥ 0 y y(t) = t 2 + 2t para t ≥ 0.
Primero calcularemos x(0). Tenemos que to = 0 y t f = 10. Entonces:
Z tf
Tt T (t−t
x(to ) = x(0) = eAto Vo−1 (to ,t f )eA o
eA o)
cT g(t)dt
to
Z 10
T
= Vo−1 (0, 10) eA t cT g(t)dt,
0
donde: Z 10
g(t) = y(t) − c eA(t−τ ) bu(τ )d τ .
0

Para evaluar la expresión arriba, primero calcularemos eAt :


6.1 Observabilidad 83
 1 
− 12 s12 1 1
eAt = L −1 ([sI2 − A]−1 ) = L −1 s 2 s2
− 12 s12 1
s + 1 1
2 s2
 
1 − 12 t 21 t
= .
− 21 t 1 + 12 t
Calculando: Z 10
T
Vo (0, 10) = eA t cT ceAt dt,
0
Z 10    Z 10  
1−t   1 − 2t + t 2 1 − t2
= 1−t 1+t dt = dt
0 1+t 0 1 − t2 1 + 2t + t 2
" 3 3
# 10  
t − t 2 + t3 t − t3

243,333 −323,333
= 3 3 = .
t − t3 t + t 2 + t3 0 −323,333 443,333

La inversa de Vo (0, 10) es:  


0,133 0,097
Vo−1 (0, 10) = .
0,097 0,073
Calculando g(t) obtenemos: Z t
g(t) = y(t) − c eA(t−τ ) bu(τ )d τ
0
 
Z −1 + t − τ
 t Z t
= t 2 + 2t − 1 1 d τ = t 2 + 2t − (2t − 2τ )d τ
0 1+t +τ 0
t t
t 2 + 2t − 2t(τ ) 0 + τ 2 0 = t 2 + 2t − t 2 = 2t.
Entonces:
Z 10 Z 10     10  
T (1 − t)2t t 2 − 23 t 3 −566,667
eA t cT g(t)dt = dt = = .
0 0 (1 + t)2t t 2 + 23 t 3 0 766,667
Luego calculando la condición inicial xo :
Z t  
T −1
x(0) = Vo−1 (0, 10) eA t ct g(t)dt = .
0 1

Conociendo x(0), podemos encontrar x(t) para t ≥ 0,


Z t
x(0) = eAt x(0) + eA(t−τ ) bu(τ )d τ .
0
  " 2
# " 2 #
−1 + t (−1 + t)t − t2 t
2 −1
= + 2 = t2
1+t (1 + t)t − t2 2 + 2t + 1

6.1.2. Teorema

Las siguientes condiciones son equivalentes:


1. El sistema ẋ = Ax + Bu, y = Cx + Du es observable.
2. La matriz Vo (to ,t f ) es no singular para todo t f > to .
3. Las n columnas de CeAt son linealmente independientes para todo t ∈ [0, ∞) sobre los números reales.
4. La matriz de observabilidad Wo :
84 6 Control por realimentación de salidas
 
C
 CA 
Wo =  .  ∈ R pn×n
 
 .. 
CAn−1
es de rango
 completo
 (n).
sIn − A
5. rango = n, para todo s = λ (A).
C

Al igual que en el caso de controlabilidad, usando una transformación de similaridad podemos separar la parte
observable de la no observable. Si los autovalores de la parte no observable son asintóticamente estables, entonces
decimos que el sistema es detectable.
Una vez definido el concepto de observabilidad, volveremos a responder la pregunta de como construir un obser-
vador para un sistema. Buscamos observadores que sean representados como sistemas lineales y tomen las entradas
y salidas del sistema para producir un estimado de los estados del sistema. Esto es, deseamos contruir un sistema
dinámico de la forma:
d x̂
= F x̂ + Gu + Hy,
dt
donde u y y son la entrada y salida del sistema original y x̂ ∈ Rn es un estimado del estado con la propiedad que
x̂(t) → x(t) a medida que t → ∞.

6.2. Observador de orden completo

Considerando el sistema lineal con D = 0 para simplificar la exposición:

ẋ(t) = Ax(t) + Bu(t), x(0) = xo


,
y(t) = Cx(t),

donde C ∈ R p×n , p ≤ n. Asumiendo que el sistema es observable. Nuestro objetivo es determinar un sistema dinámico
que estime el vector de estados x basado en las entradas u y salidas y.
A continuación intentamos determinar los estados simplemente simulando las ecuaciones del sistema con las en-
tradas u, estimador en lazo abierto:
d x̂
= Ax̂ + Bu.
dt
Para encontrar las propiedades del sistema, introducimos el error de estimación:

x̃ = x − x̂.

Entonces, la dinámica del error de estimación está descrito por:

x̃˙ = ẋ − x̂˙ = Ax̃,

con el error inicial de estimación siendo:


x̃(0) = x(0) − x̂(0).
Si los autovalores de la matriz A estan en el semiplano complejo izquierdo abierto, entonces el error converge a cero.
Sin embargo, no tenemos ningun control sobre la variación de la convergencia o sobre el valor adonde convergen los
estados reales y estimados (independientemente, los estados x y x̃ también convergen a cero). Por otro lado, la matriz
A no necesariamente tendrá sus autovalores en el semiplano complejo izquierdo abierto. Luego este estimador en lazo
abierto no es práctico ya que queremos que nuestra estimación converja rápidamente a un estado diferente de cero para
asi poder usarlo en nuestro controlador, y esto independiente de las caracterı́sticas del sistema. Ahora analicemos el
caso incluyendo la salida y. Este último caso se denomina estimador en lazo cerrado, el observador Luenberger o el
estimador de orden completo asintótico.
La dinámica del estimador en lazo cerrado esta descrita por:
6.2 Observador de orden completo 85

d x̂
= Ax̂ + Bu + L(y −Cx̂),
dt
la realimentación de la señal medida es proveida por el término L(y −Cx̂), que es proporcional a la diferencia entre la
salida observada y la salida estimada por el observador.
La dinámica del error de estimación viene siendo gobernada por:

x̃˙ = ẋ − x̂˙
.
= (A − LC)x̃, x̃(0) = x(0) − x̂(0).

La matriz L puede ser elegida del tal forma que A − LC tenga sus autovalores con partes reales negativas, y como
consecuencia, el error x̃ tienda a cero. La variación de la convergencia es determinada por una selección apropiada de
autovalores. Es importante destacar que las propiedades de convergencia pueden ser diseñadas para ser más rápidas
con relación a la dinámica del sistema. Adicionalmente, esta versión de observador trabaja aún en el caso de sistemas
inestables.
Nótese la similaridad entre los problemas de encontrar un realimentador de estados y encontrar un observador.
Realimentación de estados por ubicación de polos es equivalente a encontrar una matriz K tal que A − BK tenga ciertos
autovalores. Diseñar un observador con autovalores prescritos es equivalente a encontrar una matriz L tal que A − LC
tenga ciertos autovalores. Dado que los autovalores de una matriz y su transpuesta son los mismos podemos establecer
las siguientes equivalencias:

A ⇐⇒ AT , B ⇐⇒ CT , K ⇐⇒ LT , Wc ⇐⇒ WoT .

El problema de diseño del observador es el dual del problema de diseño del realimentador de estados. Luego podemos
valernos de las herramientas aprendidas en la teorı́a de realimentación de estados. Ilustraremos este último punto con
un ejemplo.

6.2.1. Ejemplo

Dadas las matrices del siguiente sistema observable:


 
00 1 0  
1 0 2 0
A= , C = 1 0 0 0 ,
0 1 3 0 0001
0 0 −21 5

construir la matriz L ∈ R4×2 tal que los autovalores de A − LC estan localizados en:

{−2, −3 + i, −3 − i, −4}.

En nuestra construcción de la matriz de ganancias L usamos la forma canónica observable del sistema mostrada en
Clase04-01. Nuestro objetivo es entonces contruir la matriz L tal que el polinomio caracterı́stico de la matriz A − LC
es:
det(sI4 − A + LC) = s4 + 12s3 + 54s2 + 108s + 80.
Usando la forma canónica observable del sistema, seleccionamos L̂ tal que:
 
0 0 0 −80
 1 0 0 −180 
 − L̂Ĉ = 
 0 1 0 −54  .

0 0 1 −12

Luego tenemos que:


86 6 Control por realimentación de salidas
 
1681 80
 2270 108 
L̂ = 
 1137
,
54 
251 17
finalmente:  
1137 54
 3955 188 
L = T̂ T L̂ = 
 5681
.
270 
−23626 −1117

6.2.2. Control usando estados estimados

En esta sección consideraremos la planta representado por el sistema espacio de estados de la forma:

d
x(t) = Ax(t) + Bu(t), x(0) = xo
dt . (6.1)
y(t) = Cx(t),

Nótese que hemos asumido que no hay término directo en el sistema (D = 0). A menudo esta es una suposición realista.
En esta parte nuestra intención es diseñar un controlador por realimentación de estados para el caso donde solo la
salida es medida. Además asumimos que el sistema es controlable y observable. En el capı́tulo anterior encontramos
una realimentación de la forma:
u = −Kx + kr r,
para el caso en que todos los estados eran medidos, y en la sección anterior desarrollamos un observador que genera
estimados del estado x̂ basado en entradas y salidas. En esta parte combinaremos ambas ideas para encontrar una
realimentación que dote de autovalores deseados al sistema en lazo cerrado para el caso de sistemas donde solo salidas
son disponibles para realimentación.
Si todos los estados no se pueden medir, parece razonable intentar la siguiente realimentación:

u = −K x̂ + kr r, (6.2)

donde x̂ es la salida del observador de estados, en otras palabras:

d x̂
= Ax̂ + Bu + L(y −Cx̂). (6.3)
dt
Dado que el sistema (6.1) y el observador (6.3) son ambos de dimensión n, el sistema en lazo cerrado es de dimensión
2n con los estados (x, x̂). La evolución de los estados esta descrita por (6.1)-(6.3). Para analizar el sistema en lazo
cerrado la variable de estado x̂ es reemplazada por:

x̃ = x − x̂. (6.4)

Sustrayendo (6.3) de (6.1) resulta:

x̃˙ = ẋ − x̂˙
.
= Ax − Ax̂ − L(Cx −Cx̂) = Ax̃ − LCx̃ = (A − LC)x̃.

Retornando a la dinámica del sistema, introduciendo u de (6.2) en (6.1) y usando (6.4) para eliminar x̂ resulta:

dx
= Ax + Bu = Ax − BK x̂ + Bkr r = Ax − BK(x − x̃) + BKr r
dt (6.5)
= (A − BK)x + BK x̃ + Bkr r.

El sistema en lazo cerrado es entonces gobernado por:


6.2 Observador de orden completo 87
      
d x A − BK BK x Bkr
= + r,
dt x̃ 0  A − LC x̃ 0
  x (6.6)
y= C0 .

Nótese que el estado x̃, que representa el error del observador, no se ve afectado por la señal de referencia r. Esto es
deseable dado que no queremos que la señal de referencia genere errores en el observador.
Con la dinámica del sistema siendo diagonal por bloques, encontramos que el polinomio caracterı́stico del sistema
en lazo cerrado es:
αc (s) = det(sI − A + BK) det(sI − A + LC),
lo que significa que el diseño de la ley de control es separado de la construcción del estimador. Esto es lo que conocemos
como el principio de separación. El resultado es resumido a continuación.
Teorema: (Ubicación de polos por realimentación de salidas). Considere el sistema:
d
x(t) = Ax(t) + Bu(t), x(0) = xo
dt
y(t) = Cx(t).

El controlador descrito por:


d x̂
= Ax̂ + Bu + L(y −Cx̂) = (A − BK − LC)x̂ + Ly,
dt
u = −K x̂ + kr r,
da un sistema en lazo cerrado con el polinomio caracterı́stico:

αc (s) = det(sI − A + BK) det(sI − A + LC).

Este polinomio puede tener sus raı́ces arbitrariamente asignadas si el sistema es controlable y observable. ⋄
El controlador tiene un atractivo especial: puede ser considerado como compuesto por dos partes, one la reali-
mentación de estados y la otra el observador. La ganancia de realimentación K puede ser calculada como si todos los
estados pudiesen ser medidos, y solo depende de A y B. La ganancia del observador L depende solo de A y C. La
propiedad de que la ubicación de autovalores para sistemas con realimentación de salidas puede ser separada en la
ubicación de autovalores una realimentación de estados y un observador es llamada principio de separación.
Un diagrama de bloques del controlador es mostrado en la Fig. 6.2. Nótese que el controlador contiene un modelo
dinámico de la planta. Esto se conoce como principio del modelo interno; el controlador posee un modelo de la planta
que debe ser controlada.
La función de transferencia del sistema en lazo cerrado relacionando Y (s) y R(s), para condiciones iniciales cero,
es:  −1  
  sI − A + BK −BK B
Y (s) = C 0 k R(s)
0 sI − A + LC 0 r
= C(s − A + BK)−1 Bkr R(s).
La expresión arriba es idéntica a la del sistema en lazo cerrado si aplicaramos la ley de control por realimentación
de estados u = −Kx + Kr r. Entonces, el compensador combinado estimador-observador genera la misma función de
transferencia en lazo cerrado que la ley de control por realimentación de estados.

6.2.2.1. Selección de polos del estimador

Algunos autores recomiendan que la parte real de los polos del estimador -esto es, la parte real de los autovalores de
la matriz A − LC - estén de 2 a 6 veces más hacia la izquierda en el semiplano complejo izquierdo que la parte real de
los polos del controlador, que son los autovalores de la matriz A − BK. Tal elección asegura un decaimiento rápido del
error de estimación x̃ = x − x̂ comparado con la dinámica deseada del controlador. Esto, a su vez, hace que los polos
del controlador dominen la respuesta del sistema en lazo cerrado. Dado que los polos del estimador representan una
medida de la rapidez con la que el error x̃ = x − x̂ decae a cero, uno debe tender a asignar los polos del estimador bien
hacia adentro del semiplano complejo izquierdo. Sin embargo, decaimiento rápido requiere de largas ganancias que
88
7.3. CONTROL USING ESTIMATED STATE 213
6 Control por realimentación de salidas

r u ẋ R x y
kr 6 B 6 C

A
Process

e
−K L 6
− ŷ
x̂˙ R x̂
B 6 −C

A
Observer
Controller

Figura 6.2 Diagrama de bloques sistema de control basado en un observador. El observador usa las medidas del proceso y y las entradas
u para estimar el estado actual del proceso. El estimado es usado por el controlador por realimentación de estados para generar la entrada
correctiva. El controlador está formado por el observador y la realimentación de estados.

pueden llevar a la saturación de algunas señales y efectos no lineales impredecibles. Si los polos del estimador fuesen
más lentos que los polos del controlador, la respuesta del sistema en lazo cerrado estarı́a dominada por el estimador, lo
cual es indeseable. Como es usual en la practica de ingenierı́a, el término compromiso puede ser usado para describir
el proceso de construcción de la estructura final del compensador.

6.2.2.2. Ejemplo: Motor DC

MODELO DEL SISTEMA

Considere el sistema motor DC de armadura que presenta la esquemática de la Fig. 6.3, donde Ra = 5Ω ,
La = 200mH, Kb = 0,1V/rad/sec, Ki = 0,1Nm/A, la razón del engranaje N1 /N2 = 1/50. La inercia de la armadura
es Iarmadura = 2 × 10−3 kgm2 . La carga de 10 kg está localizada a un radio efectivo de 0.2 m. La inercia del engranaje
y fricción son despreciables.
Primero construimos un modelo espacio de estados del motor DC. Empezamos escribiendo la ecuación que relaciona
el torque a la aceleración angular:
τm = Ieq θ̈ , (6.7)
donde:
Ieq = Iarmadura + (N1 /N2 )2 Icarga
= 2 × 10−3 kgm2 + (1/50)2 × 10 × (0,2)2 kgm2
= 2,16 × 10−3 kgm2 .
Aplicando la ley del voltaje de Kirchoff al circuito de la armadura resulta:

dia
Ra ia + La + eb = ea ,
dt

donde eb = Kb ddtθ . La ecuación para el torque desarrollado es:

τm = Ki ia . (6.8)

El torque del motor es igual al torque entregado a la carga (caso ideal, en la práctica no hay 100 % de eficiencia).
Entonces, combinando (6.7) y (6.8) resulta:
6.2 Observador de orden completo 89

Ki
θ̈ = ia
Ieq

ia Ra La


ea
⫺ ⫹ Gear
␪l
eb

Il

if ⫽ constant Output
Potentiometer
Figure 3.8
Figura 6.3 Modelo de un motor DC de armadura.

Sea x1 = ia , x2 = θ , x3 = θ̇ = ω , u = ea , y y = θl . Luego tomando en cuenta la definición de las variables de estado,


representamos la ecuaciones del modelo en la forma de espacio de estados:
   Ra    
ẋ1 − La 0 − KLab x1 1
La
 
 ẋ2  =  0 0 1   x2  +  0  u
Ki
ẋ3 Ieq 0 0 
x3 0
h i x1
y = 0 NN21 0  x2  .
x3

Sustituyendo los parámetros del sistema dados, obtenemos de la ecuación mostrada arriba:
      
ẋ1 −25 0 −0,5 x1 5
 ẋ2  =  0 0 1   x2  +  0  u = Ax + bu
ẋ3 46,296 0  0  x3 0
  x1
y = 0 0,02 0  x2  = cx.
x3

ANÁLISIS DEL SISTEMA

Polos en lazo abierto

Los autovalores de la dinámica del sistema en lazo abierto están dados por:

{0, −24,0307, −0,9630}

Controlabilidad

La matriz de controlabilidad es:


 
 5 −125 3009,3

Wc = b Ab A2 b =  0 0 231,5  .
0 231,5 −5787

El determinante de la matriz es det(Wc ) 6= 0, y concluimos que el sistema es controlable.


90 6 Control por realimentación de salidas

Observabilidad

La matriz de observabilidad, usando el sistema dual ẇ = AT w + cT n es:


 
  0 0 0,9259
WoT = cT AT cT (AT )2CT =  0,02 0 0 .
0 0,02 0

El determinante de la matriz es det(WoT ) 6= 0, y concluimos que el sistema es observable.

6.2.2.3. DISEÑO DEL CONTROL POR REALIMENTACIÓN DE ESTADOS

Polos deseados

Nuestro siguiente paso es diseñar el controlador por realimentación de estados u = −Kx + Kr r, tal que los autoval-
ores de A − bK son:
{−1 + i, −1 − i, −10}.
El polinomio caracterı́stico del sistema en lazo cerrado es:

αc (s) = (s + 1 − i)(s + 1 + i)(s + 10) = s3 + 12s2 + 22s + 20.

Ganancia de realimentación K

Para ubicar los polos en las posiciones deseadas, primero transformamos el sistema en la forma canónica controlable.
La última fila de la matriz de controlabilidad es:
 
q1 = 0 0,0043 0 ,

y entonces la matriz de transformación que buscamos tiene la forma:


   
q1 0 0,0043 0
T =  q1 A  =  0 0 0,0043  .
q1 A2 0,2 0 0

El sistema de matrices en las nuevas coordenadas es:


 
0 1 0
à = TAT −1 =  0 0 1 ,
0 −23,15 −25
 
0
b̃ = T b =  0  ,
1
y,  
c̃ = cT −1 = 4,63 0 0 .
Ahora encontramos K tal que:  
0 1 0
à − b̃c̃ =  0 0 1 .
−20 −22 −12
Luego tenemos:  
K̃ = 20 −1,148 −13 ,
y,
6.2 Observador de orden completo 91
 
K = K̃T = −2,60 0,0864 −0,005 .
Entonces:  
−12 −0,432 −0,4752
A − bK =  0 0 1 .
46,294 0 0
O, usando la fórmula de Ackerman (sólo funciona para sistemas una entrada - una salida):

K = q1 αc (A).
 
K = −2,5879 0,0860 −0,0049 ..
La función de transferencia del sistema en lazo cerrado es:
L (y(t)) Y (s) 4,6296kr
= = c(sI − A + bK)−1 bKr = 3 .
L (r(t)) R(s) s + 12s2 + 22s + 20

La respuesta del sistema en lazo cerrado al escalón de magnitud igual a 1/kr es presentado en la Fig. 6.4.

0.25

0.2

0.15
y(t)

0.1

0.05

0
0 2 4 6 8 10
Time (sec)

Figura 6.4 Respuesta del sistema en lazo cerrado del motor para un escalón de magnitud 1/kr .

6.2.2.4. DISEÑO DEL ESTIMADOR DE ESTADOS

Polos deseados

Nuestro siguiente paso es diseñar el estimador de orden completo ubicando los polos del estimador en:

{−4, −5 + 2i, −5 − 2i}.

El polinomio caracterı́stico del estimador es:

det(sI3 − A + Lc) = (s + 4)(s + 5 − 2i)(s + 5 + 2i) = s3 + 14s2 + 69s + 116.


92 6 Control por realimentación de salidas

Ganancia de estimador L

Para ubicar los polos en las posiciones deseadas, primero transformamos el sistema a la forma canónica observable.
O, equivalentemente al sistema dual ẇ = AT w + cT n a su forma canónica controlable.
La última fila de la inversa de WoT , q̂1 es:  
q̂1 = 1,0800 0 0 .
La matriz de transformación que lleva al sistema a su forma canónica controlable es:
   
q̂1 1,1 0 0
T̂ =  q̂1 AT  =  −27 0 50  .
q̂1 (AT )2 650 50 −1250

Las matrices  y ĉ en las nuevas coordenadas son:


   
0 1 0 0
ÂT = T̂ AT T̂ −1 =  0 0 1  y ĉT = cT T̂ −1 =  0  .
0 −23,1481 −25 1

Ahora encontramos L̂T tal que:  


0 1 0
ÂT − ĉT L̂T =  0 0 1 .
−116 −69 −14
Luego tenemos:  
L̂T = 116 45,8519 −11 ,
y como consecuencia:  
LT = L̂T T̂ = −8263 −550 16042
o,  
−8263
L =  −550  .
16042
La dinámica del estimador de estados de orden completo es descrita por:

x̂˙ = (A − Lc)x̂ + bu + Ly,

esto es:      
−25 165,2544 −0,5 5 −8263
x̂˙ =  0 11 1  x̂ +  0  u +  −550  y.
46,2963 −320,8519 0 0 16042
Conectamos el estimador de orden completo del motor DC, junto con la realimentación de estados, entonces
obtenemos el sistema en lazo cerrado con el compensador controlador-estimador-orden-completo combinado. La Fig.
6.5 muestra la gráfica de x1 y su estimado para el sistema en lazo cerrado con estimador en el lazo, donde r = 0,
 T
x(0) = 1 2 −0,1 , y x̂(0) = 0.
El diseño del estimador de orden reducido sera presentado junto con la teorı́a de estimadores de orden reducido.
Siguiendo con la respuesta a la pregunta de como construir un observador para un sistema, al igual que en el caso del
observador de orden completo, consideraremos observadores que sean representados como sistemas lineales y tomen
las entradas y salidas del sistema para producir un estimado de los estados del sistema. La diferencia con respecto al
observador anterior radica en que se aprovechará el hecho de que ciertos estados se pueden definir directamente usando
la salida del sistema, y asi, el observador sólo debe concentrarse en estimar los estados no conocidos.
6.3 Observador de orden reducido 93

3
x1
2 x1 estimate
1

⫺1

⫺2

⫺3

⫺4

⫺5

⫺6

⫺7
0 0.5 1 1.5 2 2.5 3
Time (sec)
Figure 3.10
Figura 6.5 Gráfica de x1 y su estimado versus el tiempo para el sistema en lazo cerrado con un estimador de orden completo en el lazo.

6.3. Observador de orden reducido

Considerando el sistema lineal n− dimensional con D = 0 para simplificar la exposición:

ẋ(t) = Ax(t) + Bu(t), x(0) = xo


, (6.9)
y(t) = Cx(t)

donde A, B, C son, respectivamente, matrices reales constantes n × n, n × p y q × n (q ≤ n). Asumiendo que el sistema
es observable. Nuestro objetivo es determinar un sistema dinámico que estime el vector de estados x basado en las
entradas u y salidas y.
Asumiendo que C tiene rango de columna completa, esto es rangoC = q. Definir
 
C
P= , (6.10)
R

donde R es una matriz real constante (n − q) × n y es enteramente arbitraria siempre y cuando P sea no singular.
Calculando la inversa de P como h i
Q = P−1 = Q1 ... Q2 , (6.11)

donde Q1 y Q2 son matrices n × q y n × (n − q). Claramente se tiene que


     
C   CQ1 CQ2 Iq 0
In = PQ = Q1 Q2 = = . (6.12)
R RQ1 RQ2 0 In−q

Ahora transformaremos (6.9) usando x̄ = Px,

x̄˙ = PAP−1 x̄ + PBu  


y = CP−1 x̄ = CQ = Iq 0 x̄,

que puede ser particionado como,       


x̄˙1 Ā11 Ā12 x̄1 B̄
= + 1 u,
x̄˙2  Ā21 Ā
 22 x̄2 B̄2 , (6.13)
y = Iq 0 x̄ = x̄1
donde x̄1 consiste en los primeros q elementos de x̄ y x̄2 es lo que queda de x̄; Ā11 , Ā12 , Ā21 y Ā22 son, respectivamente,
matrices q × q, q × (n − q), (n − q) × q y (n − q) × (n − q); B̄1 y B̄2 son particionadas apropiadamente. De (6.13) vemos
que y = x̄1 . Entonces solo necesitaremos estimar los n − q elementos de x̄. Consecuentemente solo necesitamos un
94 6 Control por realimentación de salidas

estimador de estados de dimensión n − q en lugar de un estimador de estados de dimensión n que presentamos en la


clase anterior.
Usando x̄1 = y, reescribimos (6.13) como

ẏ = Ā11 y + Ā12 x̄2 + B̄1 u,


(6.14)
x̄˙2 = Ā21 y + Ā22 x̄2 + B̄2 u,

y de forma más sucinta aún usando


ū = Ā21 y + B̄2 u,
w = ẏ − Ā11 y − B̄1 u,
que son funciones de señales conocidas y y u, luego (6.14) se pueden reescribir como,

SINTESIS:
x̄˙2 = Ā22 x̄2 + ū, (6.15)
w = Ā12 x̄2 .

Nótese que si la ecuación dinámica en (6.15) es observable, se puede construir un estimador de x̄2 .
Teorema El sistema ẋ = Ax+Bu, y = Cx en (6.9) es observable o, equivalentemente, el sistema x̄˙ = Āx̄+ B̄u, y = C̄x̄
en (6.13) es observable si y solo si el sistema x̄˙2 = Ā22 x̄2 + ū, w = Ā12 x̄2 en (6.15) es observable.
Asimismo, se puede probar la controlabilidad de los sistemas involucrados arriba.
Luego, ẋ = Ax + Bu, y = Cx es observable, entonces x̄˙2 = Ā22 x̄2 + ū, w = Ā12 x̄2 es observable. Consecuentemente,
existe un estimador de estados de x̄2 de dimensión n − q de la forma

x̄˙ˆ2 = (Ā22 − L̄Ā12 )x̄ˆ2 + L̄w + ū, (6.16)

tal que los autovalores de (Ā22 − L̄Ā12 ) pueden ser arbitrariamente asignados mediante una elección apropiada de L̄. La
sustitución de ū y w en (6.16) resulta en

x̄˙ˆ2 = (Ā22 − L̄Ā12 )x̄ˆ2 + L̄(ẏ − Ā11 y − B̄1 u) + Ā21 y + B̄2 u. (6.17)

Esta ecuación contiene la derivada de y. Esta derivada se puede eliminar definiendo

z = x̄ˆ2 − L̄y. (6.18)

Luego (6.18) resulta

IMPLEMENTACIÓN:
ż = (Ā22 − L̄Ā12 )(z + L̄y) + (Ā21 − L̄Ā11 )y + (B̄2 − L̄B̄1 )u (6.19)
= (Ā22 − L̄Ā12 )z + [(Ā22 − L̄Ā12 )L̄ + (Ā21 − L̄Ā11 )]y + (B̄2 − L̄B̄1 )u

Esta es una ecuación dinámica de dimensión n − q con y y u como entradas que se puede construir fácilmente usando,
por ejemplo, con circuitos de ampificadores operacionales. De (6.18) vemos que z + L̄y es un estimado de x̄2 . De hecho,
si definimos e = x̄2 − (z + L̄y), luego tenemos

ė = x̄˙2 − (ż + L̄x̄˙1 ) = Ā21 x̄1 + Ā22 x̄2 + B̄2 u − (Ā22 − L̄Ā12 )(z + L̄x̄1 )
−(Ā21 − L̄Ā11 )x̄1 − (B̄2 − L̄B̄1 )u − L̄Ā11 x̄1 − L̄Ā12 x̄2 − L̄B̄1 u
(6.20)
= (Ā22 − L̄Ā12 )(x̄2 − z − L̄x̄1 )
ė = (Ā22 − L̄Ā12 )e.

Dado que los autovalores de (Ā22 − L̄Ā12 ) pueden ser arbitrariamente asignados, la razón con la que e(t) se aproxima
a cero o, equivalentemente, la razón con la que (z + L̄y) se aproxima a x̄2 se puede determinar por el diseñador. Luego
z + L̄y provee un estimado de x̄2 .
Combinando x̄1 = y = x̄ˆ1 con x̄ˆ2 = z + L̄y para formar
6.3 Observador de orden reducido 95
   
x̄ˆ y
x̄ˆ = ˆ1 =
x̄2 L̄y + z

Dado que x̄ = Px, tenemos x = P−1 x̄ = Qx̄, o


    
  y   Iq 0 y
x̂ = Qx̄ˆ = Q1 Q2 = Q1 Q2 (6.21)
L̄y + z L̄ In−q z

Esta expresión provee un estimado del vector de estados n−dimensional original x.


Una comparación entre los estimadores de estado de orden n − q y n está dada en función del orden. El observador
de orden reducido requiere de la transformación presentada en (6.10). Excluyendo este paso, la computación requerida
en el caso del observador de orden reducido es claramente menor en comparación al observador de orden completo.
En la implementación, el observador de orden reducido también requiere de un menor número de integradores. En el
caso del observador de orden reducido, la señal y es realimentada através de la matriz constante Q1 hacia la salida
del estimador. Entonces, si y es contaminada con ruido, estos ruidos aparecerán a la salida del estimador. En el caso
del observador de orden completo, la señal y es integrada o filtrada; de ahi que ruidos de alta frecuencia en y serán
suprimidos con un observador de orden completo.

6.3.1. Compensador controlador/estimador orden-reducido

Se puede probar que el principio de Separación también se cumple en el caso del estimador de orden reducido.
COMPLETAR...

6.3.2. Ejemplo: Motor DC

Usando el modelo del motor DC, como descrito a continuación


      
ẋ1 −25 0 −0,5 x1 5
 ẋ2  =  0 0 1   x2  +  0  u = Ax + bu
ẋ3 46,296 0  0  x3 0
  x1
y = 0 0,02 0  x2  = cx,
x3

en esta parte nos centraremos en el diseño de un estimador de orden reducido. Escogiendo los polos del estimador de
orden reducido en {−5 + 2i, −5 − 2i}.
Definiendo la matriz de transformación P a continuación:
 
0 0,02 0
P =  1 0 0 ,
0 0 1

luego Q = P−1 queda definida como  


0 10
P =  50 0 0  ,
0 01
y el sistema transformado resulta,
96 6 Control por realimentación de salidas
  

 
˙x̄1 0 0 0,02   0
=  0 −25 −0,5  x̄1 +  5  u,
x̄˙2 x̄2 .
 0 46,296
 0 0
y = 1 0 0 x̄ = x̄1

La sı́ntesis del estimador se hace en base al siguiente sistema:


 
˙x̄2 = −25 −0,5 x̄2 + ū,
 46,296 0 .
w = 0 0,02 x̄2

El polinomio caracterı́stico del estimador de orden reducido es:

det(sI2 − Ā22 + L̄Ā12 ) = (s + 5 − 2i)(s + 5 + 2i) = s2 + 10s + 29.


 

Sea L̄ = ¯1 , entonces la siguiente ecuación debe ser satisfecha:
l2
       
10 −25 −0,5 l¯1   s + 25 0,02l¯1 + 0,5
= s2 + 10s + 29.
0 1 − 46,296 0 + ¯ 0 0,02 =
s
l2 −46,296 s + 0,02l¯2

s2 + (25 + 0,02l¯2 )s + 46,296(0,02l¯1 + 0,5) + 25(0,02l¯2 ) = s2 + 10s + 29.


 
411,3228
Finalmente, se obtiene que: L̄ =
−750
La dinámica del estimador de estados de orden reducido es descrita por:

ż = (Ā22 − L̄Ā12 )z + [(Ā  −L̄Ā12 )L̄ + (Ā21 − L̄Ā11 )]y + (B̄2 − L̄B̄1 )u,
 22
  Iq 0 y
x̂ = Q1 Q2
L̄ In−q z

esto es:      
−25 −8,7265 5 −3738,2
ż = z+ u+ y,
46,296
 15 0 7792,6
10 411,3228
x̂ =  0 0  z +  50 y
01 −750
Si conectamos el estimador de orden reducido del motor DC, junto con la realimentación de estados antes calculada,
entonces obtenemos el sistema en lazo cerrado con el compensador controlador-estimador-orden-reducido combinado.
La Fig. 6.6 muestra la gráfica de x1 y su estimado para el sistema en lazo cerrado con estimador en el lazo, donde r = 0,
 T
x(0) = 1 0,2 −0,1 , y z(0) = 0.

Fuente: Capı́tulo 3 del libro Systems and Control de Stanislaw H. Zak (2002).
Fuente: Capı́tulo 7 del libro Feedback Systems: An Introduction for Scientists and Engineers, de Karl J. Åström y
Richard M. Murray.
6.3 Observador de orden reducido 97

10
x1
x1 estimate
5

⫺5

⫺10

⫺15

⫺20

⫺25
0 2 4 6 8 10
Time (sec)

Figura 6.6 Gráficas de x1 y su estimado versus tiempo para el sistema no lineal en lazo cerrado con estimador de orden reducido en el lazo.
Capı́tulo 7
Estabilidad y desempeño

7.1. Estabilidad

En general, puede ser difı́cil obtener una solución explı́cita de las ecuaciones diferenciales no lineales que modelan
un sistema dinámico. Sin embargo, a menudo no necesitamos conocer las soluciones explı́citas de las ecuaciones del
modelo. En su lugar, estamos interesados en el comportamiento de las soluciones a medida que el tiempo tiende a
infinito. Adicionalmente, en muchos sistemas fı́sicos un “pequeño” cambio en las condiciones iniciales resulta en un
“pequeño” cambio en la solución. Especı́ficamente si un sistema es perturbado de la posición de reposo, o de la posición
de equilibrio, luego comienza a moverse. A grosso modo, podemos decir que una posición de equilibrio es estable si
para pequeñas perturbaciones el sistema no se va muy lejos de esta posición. Este concepto es ilustrado mediante
una bola que descansa en equilibrio en una hoja de metal doblada en varias formas con secciones transversales como
mostrado en la Fig. 7.1. Esta figura presenta 4 escenarios posibles. Despreciando las fuerzas de fricción, una pequeña
perturbación del equilibrio lleva a:
1. Movimiento oscilatorio alrededor del punto de eequilibrio independientemente de la magnitud de las perturbaciones
iniciales. Es este caso la posición de equilibrio es globalmente estable.
2. La nueva posición es también un equilibrio, y la bola permanecerá en esta posición. Aqui la posición de equilibrio
es estable.
3. La bola se aleja y no retorna a la posición de equilibrio. La posición de equilibrio es inestable.
4. Movimiento oscilatorio en torno al equilibrio, a menos que la perturbación sea demasiado grande y la bola se ve
forzada a oscilar en una nueva posición de equilibrio. La posición de equilibrio es localmente estable.

(1) (2)

(3) (4)

Figura 7.1 Ilustración de posiciones de equilibrio estables e inestables.

Si se toma en cuenta la fricción, el movimiento oscilatorio decrecerá permanentemente hasta que la bola retorne
al punto de equilibrio como eb los puntos 1 y 4 arriba. Nos referimos a tales posiciones de equilibrio como siendo
asintóticamente estables. En la discusión de conceptos de estabilidad, implı́citamente, se asume, como en el punto 4,
que existe una región pequeña para las perturbaciones iniciales permitidas para la cual los movimientos subsecuentes

99
100 7 Estabilidad y desempeño

convergen a la posición de equilibrio. Sin embargo, si, como en el punto 1, cualquier perturbación inicial conlleva a un
movimiento que converge a la posición de equilibrio, entonces tenemos estabilidad asintótica global, que tambien se
refiere como estabilidad asintótica en la grande.

7.1.1. Definiciones básicas de estabilidad

Consideramos una clase de sistemas dinámicos modelados por la ecuación:

ẋ(t) = f (t, x(t)), x(to ) = xo , (7.1)

donde x ∈ Rn es el vector de estados y f : R × Rn → Rn es una función vectorial con los componentes:

fi (t, x1 , x2 , ..., xn ) : R × Rn → R, i = 1, 2, ..., n.

Asumiendo que los fi ’s son contı́nuos y que tienen derivadas parciales de primer orden contı́nuas. Bajo estas suposi-
ciones , la solución de ẋ(t) = f (t, x(t)), x(to ) = xo , existe y es única. Denotamos la solución como x(t) = x(t;to , xo ). Si
los fi ’s no dependen explı́citamente de t, luego el sistema es representado como ẋ(t) = f (t, x(t)) = f (x(t)) y es llamado
autónomo; de otra forma es llamado no autónomo. Un punto de equilibrio o estado es un vector constante, digamos xe ,
tal que:
f (t, xe ) = 0, para todo t.
Observese que un estado de equilibrio xe es una solución constante de (7.1).
Si xe es un punto de equilibrio, siempre se puede transferir este punto de equilibrio al origen de Rn mediante la
definición de la siguiente variable:
x̃ = x − xe .
Asumamos que esto ya ha sido hecho para un punto de equilibrio en consideración. Entonces, tenemos:

f (t, 0) = 0 para todo t.

A continuación introducimos definiciones básicas de estabilidad según Lyapunov (1857-1918). En las siguientes
consideraciones usaremos la norma Euclidiana estándar de un vector. Entonces, si x ∈ Rn , luego:

kxk = kxk2 = (xT x)1/2 .

Definición 1. Se dice que un estado de equilibrio xe es estable si para cualquier to dado y cualquier escalar positivo
ε , existe un escalar positivo δ = δ (to , ε ) tal que si kx(to ) − xe k < δ , luego kx(t;to , xo ) − xe k < ε para todo t ≥ to .
Friedland (ver referencias al final) realiza el siguiente comentario sobre la definición de estabilidad: “Si esta defini-
ción ‘epsilonica’ los deja frios, piensen en una competencia entre Ud, el diseñador del sistema, y un adversario (nat-
uraleza?). El adversario escoge una región en el espacio de estados de radio ε y lo desafia a encontrar otra región, de
radio δ , tal que si el estado inicial comienza dentro de tu región, luego permanecerá dentro de la región escogida por
el adversario. Si Ud puede hacerlo, el sistema es estable.”
Definición 2. Un estado de equilibrio xe se dice que convergente, o atrayente, si para cualquier to dado existe un
escalar positivo δ1 = δ1 (to ) tal que si kx(to ) − xe k < δ1 , entonces

lı́m x(t;to , xo ) = xe .
t→∞

Reescribiremos la Definición 2 como sigue. Un estado de equilibrio xe es convergente si para cualquier to existe un
escalar positivo δ1 = δ1 (to ) tal que si kx(to ) − xe k < δ1 , entonces para cualquier ε1 > 0 dado existe T = T (ε1 ,to , xo ) tal
que kx(t;to , xo ) − xe k < ε1 para todo t > to + T .
Definición 3. Un estado de equilibrio xe es asintóticamente estable si es estable y convergente.
Definición 4. Un estado de equilibrio xe se dice que es uniformemente estable si el escalar positivo δ = δ (to , ε )
introducido en la Definición 1 puede ser tomado independientemente del tiempo inicial to .
7.1 Estabilidad 101

Definición 5. Un estado de equilibrio xe se dice que es uniformemente convergente, o uniformente atrayente, si el


escalar positivo δ1 = δ1 (to ) y T = T (ε1 ,to , xo ) introducido en la Definición 2 son independientes del tiempo inicial to .
Las dos últimas definiciones permiten introducir la noción de estabilidad asintótica uniforme.
Definición 6. Un estado de equilibrio xe se dice que es uniformemente asintóticamente estable si es uniformemente
estable y uniformemente convergente.
Nótese que la solución x(t) = xe debe primero ser estable para luego calificar como asintóticamente estable. Esto
para prevenir que la trayectoria del sistema se aleje arbitrariamente del estado de equilibrio antes de que converja al
mismo. Nótese también que el concepto de estabilidad y estabilidad asintótica segun Lyapunov son conceptos locales.
Ellos se aplican al comportamiento del sistema en una pequeña vecindad del punto de equilibrio.
Un caso especial de estabilidad asintótica uniforme es estabilidad exponencial uniforme que implica estabilidad
uniforme e impone un requerimiento adicional que todas las soluciones que se originan “cerca” al punto de equilibrio
dado, xe = 0, se acercan al equilibrio exponencialmente a medida que t → ∞. Más rigurosamente, decimos que xe = 0
es exponencialmente uniformemente estable si es estable y existen dos constantes positivas finitas γ y λ tal que para
cualquier to y xo , cualquier solución comenzando en la vecindad de cero satisface:

kx(t)k ≤ γ e−λ (t−to ) kxo k.

Nótese que γ no es menos que la unidad, y uniformidad implica que γ y λ son independientes de to (ver Fig. 7.2).

x0

x0

x^ (t)
x(t)
t0 t^0 t

Figura 7.2 Ilustración de estabilidad exponencial uniforme: un lı́mite de decaimiento exponencial es independiente del tiempo inicial to .

Un estado de equilibrio es inestable si no es estable. Una definición ε − δ de inestabilidad es dada a continuación.


Definición 7. Un estado de equilibrio xe se dice que es inestable si existe un ε > 0 tal que para cualquier δ > 0
existe x(to ) tal que si kx(to ) − xe k < δ , entonces kx(t1 ) − xe k ≥ 0 para algún t1 > to .
Una interpretación geométrica en dos dimensiones de las definiciones arriba está mostrada en la Fig. 7.3. Asumiendo
que xe = 0 es el estado de equilibrio. Si el estado de equilibrio es estable, como en la Fig. 7.3(a), entonces dado un
circulo externo de radio ε , entonces existe un circulo interno de radio δ tal que las trayectorias comenzando dentro
del circulo-δ nunca dejen el circulo-ε . Si el estado de equilibrio es asintóticamente estable, entonces las trayectorias
tienden al estado de equilibrio a medida que t tiende al ∞. Esta situación es descrita en la Fig. 7.3(b). Finalmente, si el
estado de equilibrio es inestable, como en la Fig. 7.3(c), entonces existe un circulo-ε tal que para cualquier circulo-δ
existe una trayectoria comenzando dentro del mismo que deja el circulo-ε en algún tiempo posterior. Una interpretación
geométrica del escenario descrito arriba en una dimensión está dada en la Fig. 7.4.

7.1.2. Estabilidad según Lyapunov

Sea V (x) = V (x1 , x2 , ..., xn ) : Rn → R una función de valor real y sea S ⊂ Rn sea una región compacta conteniendo
el origen x = 0 en su interior.
Definición 8. Decimos que una función V = V (x) es semi definida positiva en S , con respecto a x = 0, si:
1. V es continuamente diferenciable, esto es, V ∈ C 1 .
2. V (0) = 0.
3. V (x) ≥ 0 para todo x ∈ S .
102 7 Estabilidad y desempeño

x2 x2 x2

!
!
x(t0) x1 x(t0) x1 ! x1
x(t0)

(a) (b) (c)

Figura 7.3 Ilustración de conceptos de estabilidad en dos dimensiones. (a) Estado de equilibrio estable en el sentido de Lyapunov. (b)
Estado de equilibrio asintóticamente estable. (c) Estado de equilibrio inestable.

x(t) x(t)

! !
! 0 t ! 0 t

(a) (b)

x(t)

!
! 0 t

(c)

Figura 7.4 Ilustración de conceptos de estabilidad en una dimensión. (a) Estado de equilibrio estable en el sentido de Lyapunov. (b) Estado
de equilibrio asintóticamente estable. (c) Estado de equilibrio inestable.

Definición 9. Decimos que una función V = V (x) es definida positiva en S , con respecto a x = 0, si:
1. V es continuamente diferenciable, esto es, V ∈ C 1 .
2. V (0) = 0.
3. V (x) > 0 para todo x ∈ S \ {0}.
El simbolo S \ {0} en el punto 3 arriba denota el conjunto {x : x ∈ S , x 6= 0}.
Definición 10. Decimos que una función V = V (x) es (semi)definida positiva globalmente si las definiciones arriba
se cumplen para todo x ∈ Rn ; de otra forma se dice que V = V (x) es (semi) definida positiva localmente.
Las funciones semi definida negativa y definida negativa son definidas de la misma forma pero revertiendo los signos
de desigualdad en el punto 3 de las dos definiciones de arriba.
Notas:
1. Para observar la diferencia entre funciones definida positiva y semi definida positiva, suponga que x ∈ R2 y sea:

V1 (x) = x12 V2 (x) = x12 + x22 .

Ambas funciones V1 y V2 son siempre no negativas. Sin embargo, es posible que V1 sea cero aún en el caso de que
x 6= 0. Especificamente, si fijamos x = (0, c), donde c ∈ R es cualquier número diferente de cero, entonces V1 (x) = 0.
Por otro lado, V2 (x) = 0 si y solo si x = (0, 0). Entonces V1 (x) es semi definida positiva y V2 (x) es definida positiva.
Teorema 1. Sea V una función no negativa en Rn y sea V̇ la derivada en función del tiempo de V a lo largo de las
trayectorias de la dinámica del sistema (7.1):
7.1 Estabilidad 103

∂ V dx ∂ V
V̇ = = f (t, x(t)).
∂ x dt ∂x
Sea Sr = Sr (0) una bola de radio r alrededor del origen. Si existe r > 0 tal que V es definida positiva y V̇ es semi
definida negativa para todo x ∈ Sr , luego x = 0 es localmente estable según Lyapunov. Si V es definida positiva y V̇ es
definida negativa para todo x ∈ Sr , luego x = 0 es localmente asintóticamente estable.
Demostración. Ver demostración del Teorema 3.1 en Nonlinear Systems, de H.K. Khalil, 1992.
Notas:
1. Una función V que satisface las condiciones del teorema es llamada función de Lyapunov.
2. V (x) se puede definir como una función de energia que limita el tamaño de x.
A continuación damos una interpretación geométrica del teorema de Lyapunov. Primero, nótese que la función:

dV (x(t))
V̇ = ,
dt
puede ser expresada, usando la regla de la cadena como:

V̇ = ∇V T ẋ = k∇V kkẋk cos θ ,

donde θ es el ángulo entre los vectores ∇V y ẋ. Si kẋk = 1, entonces ∇V T ẋ puede ser entendida como el incremento
de V , evaluado en el punto x, en la dirección ẋ. Entonces, V̇ < 0 si y solo si 90o < θ < 270o . En ese caso, el vector
velocidad ẋ(t) apunta en la dirección de decrecimiento de V . Ilustramos la discusión presentando Fig. 7.5. =


V  c1

V  c2 " c1

Figura 7.5 Interpretación geométrica del teorema de Lyapunov.

7.1.2.1. Ejemplos

Ejemplo 1

ẋ1 = −x1 − x2
Sea el sistema: , determinar la estabilidad del punto de equilibrio x = 0.
ẋ2 = −x2
Usando
V (x) = x12 + x22 > 0, ∀x 6= 0
V̇ (x) = 2x1 ẋ1 + 2x2 ẋ2
= −2x12 − 2x1 x2 − 2x22
= −(x1 + x2 )2 − x12 − x22 < 0, ∀x 6= 0
Luego x = 0 es globalmente asintóticamente estable.
104 7 Estabilidad y desempeño

Ejemplo 2. Funciones de Lyapunov motivadas por la fisica del problema: péndulo

Considere el péndulo, de masa unitaria, longitud unitaria, donde x1 es el ángulo del péndulo con la vertical, y x2 es
la velocidad angular del péndulo.
ẋ1 = x2
ẋ2 = −g sen x1
Para demostrar que xe = 0 (péndulo apuntando hacia abajo) es un punto de equilibrio estable, considere la siguiente
función como candidata a función de Lyapunov:

x22
V (x) = g(1 − cos x1 ) + ,
2
definida sobre el conjunto {x ∈ Rn : −π < x1 < π } {0}. Luego,
 
  x2
V̇ (x) = g sen x1 x2 = 0,
−g sen x1

entonces el punto de equilibrio xe = 0 es estable. ¿ Es el punto xe = 0 asintóticamente estable?

Ejemplo 3. Funciones de Lyapunov motivadas por la fisica del problema: péndulo con fricción

Considere el péndulo del ejemplo anterior pero esta vez incluya fricción unitaria:

ẋ1 = x2
ẋ2 = −g sen x1 − x2

Sea la función de Lyapunov candidata:


x22
V (x) = g(1 − cos x1 ) + ,
2
definida sobre el conjunto {x ∈ Rn : −π < x1 < π } {0}. Luego,
 
  x2
V̇ (x) = g sen x1 x2 = −x22 ,
−g sen x1 − x2

entonces V̇ (x) es semidefinida negativa. No es definida negativa porque V̇ (x) = 0 para x2 = 0 independientemente del
valor de x1 ; esto es V̇ (x) = 0 a lo largo del eje x1 . De ahı́ que solo podamos concluir que el origen es estable. Sin
embargo, si graficaramos el diagrama de plano de fase de la ecuación del péndulo se podrı́a observar que el origen
es asintóticamente estable. La función de Lyapunov no demuestra este último hecho. A continuación se presenta un
teorema (corolario) enunciado por LaSalle que nos permitirá extender las conclusiones de estabilidad del origen usando
funciones de Lyapunov.
Corolario 1 Sea x = 0 un punto de equilibrio para el sistema (B.1). Sea V : S → R una función definida pos-
itiva contı́nuamente diferenciable en el dominio S que contiene al origen x = 0, tal que V̇ (x) ≤ 0 en S . Sea
M = {x ∈ S | V̇ (x) = 0} y suponer que ninguna solución puede estar en M , excepto la solución trivial. Luego el
origen es asintóticamente estable. ⋄
Demostración Ver Khalil, Sección 3.2 - Principio de Invariancia. ⋄

Ejemplo 4. Funciones de Lyapunov motivadas por la fisica del problema: control de posición de un robot

Una tarea fundamental en robótica para los manipuladores es transferir objetos de un punto a otro, el problema
de control de posición de un robot. Muchas de las aplicaciones venı́an haciendo uso de controladores proporcionales
derivativos; sin embargo, no se presentaba una justificación teórica para la estabilidad de tales sistemas de control
debido a la dinámica altamente no lineal del robot.
7.1 Estabilidad 105

Un robot consiste en un número de eslabones conectadas por juntas translacionales o rotacionales, siendo que el
último eslabón posee una especie de efector (actuador final). La dinámica de un brazo robótico de n-eslabones puede
ser representado por:
H(q)q̈ + b(q, q̇) + g(q) = τ ,
donde q es el vector n-dimensional que describe la posición de las juntas, τ es el vector de torques de entrada, g es el
vector de torques gravitacionales, b representa las fuerzas de Coriolis y fuerzas centripetas causadas por el movimiento
de los eslabones, y H es la matriz de inercias n × n del brazo robotico.
Considere un controlador compuesto por un término proporcional derivativo y un término de compensación de
gravedad.
τ = −KD q̇ − KP q + g(q),
donde KD y KP son matrices constantes definidas negativas.
Con la ayuda de un entendimiento fı́sico del problema, se puede encontrar una función de Lyapunov para un sistema
robótico complejo. Primero, nótese que la matriz de inercia H(q) es definida positiva para cualquier q. Segundo,
el término de control PD puede ser interpretado como una combinación de resortes y amortiguadores. Este análisis
sugiere la siguiente función de Lyapunov candidata:
1
V = [q̇T H q̇ + qT Kp q],
2
donde el primer término representa la energia cinética del manipulador, y el segundo término denota la “energia poten-
cial artificial” asociada al resorte virtual en la ley de control.
Para calcular la derivada de la función V se puede usar el teorema de energia en mecánica que estipula que la
variación en la energia cinética es igual a la potencia dotada por las fuerzas externas. Entonces:

V̇ = q̇T (τ − g) + q̇T KP q.

Substituyendo la ley de control en la ecuación arriba se tiene:

V̇ = −q̇T KD q̇ ≤ 0.

Y del Teorema 1, el origen es estable. Analizando el caso cuando V̇ (q, q̇) = 0: q̇ = 0 y siendo que el brazo no puede
“atorarse” en una posición tal que q 6= 0 (que puede mostrarse fácilmente notando que la aceleración es diferente de
cero en tales situaciones), el brazo robótico debe establecerse en q = 0. Luego, usando el Corolario 1, el origen es en
realidad globalmente asintóticamente estable.
Dos lecciones se pueden sacar de este ejemplo prático: 1) usar las propiedades fı́sicas como sea posible cuando
se analice el comportamiento del sistema, y 2) conceptos fı́sicos como energia nos llevan a elecciones acertadas de
funciones de Lyapunov.

Figura 7.6 Un manipulador robótico.


106 7 Estabilidad y desempeño

Notas:

1. P: ¿Cómo encontramos la función de Lyapunov?


R (antes del 2000): adivinar
R (después del 2000): SOSTOOLS (MATLAB Toolbox), para sistemas polinomiales con coeficientes conocidos
2. Teorema inverso: si xe = 0 es asintóticamente estable entonces existe V definida positiva y V̇ definida negativa. Esto
implica, que si uno busca, uno puede encontrar una función de Lyapunov.
3. A menudo el caso de V (x) = xT Px funciona, donde P ∈ Rn×n es una matriz simétrica (P = PT ). La condición que
V es definida positiva es equivalente a la condición que P una matriz definida positiva:

xT Px > 0 para todo x 6= 0,

que se puede escribir como P > 0. Se puede mostrar que si P es simétrica y definida positiva entonces todos sus
autovalores son reales y positivos. Los conjuntos nivel de xT Px son elipsoides.

7.1.2.2. Funciones de Lyapunov para sistemas lineales

Considere un sistema dinámico lineal invariante en el tiempo modelado por la ecuación:

ẋ = Ax, x(to ) = xo .

Consideramos la función de Lyapunov cuadrática:

V (x) = xT Px,

donde P es una matriz n × n real simétrica. La derivada en función del tiempo de V (x(t)) evaluada en la solución de
ẋ = Ax es:
dV (x(t))
= V̇ (t)
dt
= ẋT (t)Px(t) + xT (t)Pẋ(t).
Sustituyendo ẋ = Ax y ẋT = xT AT en la ecuación arriba resulta en:

V̇ = xT AT Px + xT PAx

= xT (AT P + PA)x.
El requerimiento que la función V sea definida positiva es equivalente a que la matriz P sea definida positiva (P > 0);
y el requerimiento que V̇ sea definida negativa es equivalente a la condición:

Q = AT P + PA < 0, (7.2)

(como matriz). Luego el problema se centra en determinar si la matriz simétrica Q definida por la denominada ecuación
de Lyapunoven (7.2) es definida negativa. Si este es el caso luego V satisface las condiciones del Teorema 1, y el origen
es globalmente asintóticamente estable.

Ejemplo 1

Sea un sistema lineal donde:  


−1 3
A= ,
0 −1
es asintóticamente estable. Eligiendo P como:
 
10
P= = I2 > 0.
01
7.1 Estabilidad 107

Luego,  
−2 3
Q = AT P + PA = ,
3 −2
que es indefinida. Entonces, a menos que Q resultase definida negativa, nada se puede inferir acerca de la estabilidad
asintótica, usando el teorema de Lyapunov, para cuando comenzamos con P y luego calculamos Q.
Una forma más útil de estudiar la estabilidad de sistemas lineales usando funciones cuadráticas es encontrando una
matriz P para una función Q definida negativa dada; ası́:
elegir una matriz Q definida negativa
resolver para P de la ecuación de Lyapunov en (7.2)
verficar si P es definida positiva
Si P es definida positiva, luego xT Px es una función de Lyapunov para el sistema lineal y la estabilidad asintótica global
está garantizada.

Ejemplo 2
Considere el sistema lineal:
dx1
= −ax1
dt
dx2
= −bx1 − cx2 .
dt
con a, b, c > 0, para el cual tenemos:
   
−a 0 p11 p12
A= P= .
−b −c p21 p22

Elegimos Q = −I ∈ R2×2 y la ecuación de Lyapunov correspondiente es:


       
−a −b p11 p12 p p −a 0 −1 0
+ 11 12 =
0 −c p21 p22 p21 p22 −b −c 0 −1

y resolviendo para los elementos de P tenemos:


" #
b2 +ac+c2 −b
P= 2a2 c+2ac2 2c(a+c)
−b 1
2c(a+c) 2

o la correspondiente función de Lyapunov:

b2 + ac + c2 2 −b 1
V (x) = x − x1 x2 + x22 .
2a2 c + 2ac2 1 2c(a + c) 2

Es fácil verificar que P (verificar los autovalores) y por construcción V̇ = −I < 0. Entonces el origen es globalmente
asintóticamente estable.
Uno de los elementos esenciales en el problema de control es buscar la forma de probar el desempeño de cualquier
ley de control propuesta. Cuando sea que usamos el término “mejor” u “óptimo” para describir la efectividad de una
estrategia de control dada, lo hacemos con respecto a un ı́ndice numérico de desempeño llamado ı́ndice de desempeño.
Asumimos que el valor del ı́ndice de desempeño disminuye a medida que la calidad de una ley de control admisible
aumenta. El controlador admisible que asegura el cumplimiento de un objetivo del sistema y que al mismo tiempo
minimiza el ı́ndice de desempeño es llamado de controlador óptimo del sistema.
108 7 Estabilidad y desempeño

7.2. Índices de desempeño

Construir un ı́ndice de desempeño -esto es, escoger una forma de medir el desempeño - puede ser considerado parte
del modelado del sistema. Aquı́, discutiremos alguna elecciones tı́picas de ı́ndices de desempeño.
Primero, suponemos que el objetivo es controlar un sistema modelado por las ecuaciones a continuación:

ẋ(t) = Ax(t) + Bu(t), x(to ) = xo ,


(7.3)
y = Cx(t)

en un intervalo fijo [to ,t f ] tal que los componentes del vector de estado sean “pequeños”. Un ı́ndice de desempeño
apropiado de la minimización serı́a: Z tf
J1 = xT (t)x(t)dt. (7.4)
to

Obviamente, si J1 es pequeño, entonces la norma del vector de estados, kx(t)k, es pequeña en el sentido del ı́ndice de
desempeño descrito arriba.
Si el objetivo es controlar el sistema tal que los componentes de la salida, y(t), sean pequeños, entonces podriamos
usar el siguiente ı́ndice de desempeño: Z tf
J2 = yT (t)y(t)dt
to
Z tf
= xT (t)CT Cx(t)dt
to
Z tf
J2 = xT (t)Qx(t)dt, (7.5)
to

donde la matriz de ponderación Q = CT C es simétrica semi definida positiva.


En el caso cuando deseamos controlar el sistema de tal forma que los componentes de la entrada, u(t), sean “no
muy grandes”, un ı́ndice de desempeño (esfuerzo de control mı́nimo) apropiado a ser minimizado es:
Z tf
J3 = uT (t)u(t)dt, (7.6)
to

o, Z tf
J4 = uT (t)Ru(t)dt, (7.7)
to

donde la matriz de ponderación R es simétrica definida positiva. No hay pérdida de generalidad si asumimos que
la matriz de ponderación R es simétrica. Si R no fuese simétrica, podriamos representar el término cuadrático uT Ru
equivalentemente como  
T T R + RT
u Ru = u u,
2
donde la matriz 21 (R + RT ) es simétrica.
Como mencionado por Owens (ver referencias al final), no se puede minimizar simultáneamente los ı́ndices de
desempeño (7.4) y (7.6) porque la minimización de (7.4) requiere de señales de control grandes, mientras que la mini-
mización de (7.6) requiere de señales de control pequeñas. Para resolver el dilema podemos establecer un compromiso
entre estos dos objetivos conflictivos mediante la minimización de un ı́ndice de desempeño que sea una combinación
convexa de J1 y J3 ,
J = λ J1 + (1 − λ )J3
Z tf
= (λ xT (t)x(t) + (1 − λ )uT (t)u(t))dt, (7.8)
to

donde λ es un parámetro en el rango [0, 1]. Si λ = 1, luego J = J1 ; y si λ = 0, luego J = J3 . Mediante tentativa y error,
podemos seleccionar λ del intervalo [0, 1] para establecer un compromiso entre los dos extremos. Una generalización
del ı́ndice de desempeño (7.8) es:
7.2 Índices de desempeño 109
Z tf
J= (xT (t)Qx(t) + uT (t)Ru(t))dt.
to

En algunas aplicaciones, podemos desear que el estado final x(t f ) este los más cerca posible a cero. Entonces una
posible medida del desempeño (control terminal) a ser minimizada serı́a:

J = xT (t f )Fx(t f ), (7.9)

donde F es una matriz simétrica definida positiva.


Combinando las medidas de desempeño (7.5), (7.7) y (7.9) cuando nuestro objetivo de control es mantener los
estados “pequeños”, la entrada de control “no muy grande”, y el estado final lo más cerca de cero como sea posible. El
ı́ndice de desempeño resultante es:
Z tf
1 1
J = xT (t f )Fx(t f ) + (xT (t)Qx(t) + uT (t)Ru(t))dt, (7.10)
2 2 to

donde el factor 12 es usado para simplicar las operaciones algebraicas siguientes. Minimizar (7.10) sujeto a (7.3) es
llamado de el problema del regulador cuadrático lineal , o el problema LQR en siglas.
En algunos casos, el objetivo del controlador es forzar que los estados del sistema sigan una trayectoria deseada,
xd (t), a lo largo del intervalo [to ,t f ] a la vez que mantienen las desviaciones del estado actual x(t) “pequeñas” con re-
specto a las trayectorias deseadas con un esfuerzo de control u(t) “no muy grande”, en este caso el ı́ndice de desempeño
(seguimiento de trayectorias con esfuerzo de control mı́nimo) serı́a:
Z tf
1
J= ((x(t) − xd (t))T Q(x(t) − xd (t)) + uT (t)Ru(t))dt. (7.11)
2 to

Si el objetivo de control consiste en seguimiento de trayectorias con esfuerzo de control mı́nimo además de poseer
un estado final x(t f ) tan cerca como sea posible del estado deseado xd (t f ), el ı́ndice de desempeño apropiado a ser
minimizado en este caso podrı́a ser:
Z tf
1 1
J= (x(t f ) − xd (t f ))T F(x(t f ) − xd (t f )) + ((x(t) − xd (t))T Q(x(t) − xd (t)) + uT (t)Ru(t))dt. (7.12)
2 2 to

Para llevar un sistema de una condición inicial x(to ) = xo a un conjunto objetivo especı́fico S en tiempo mı́nimo, el
ı́ndice de desempeño tiempo mı́nimo a ser minimizado es:
Z tf
J = t f − to = dt, (7.13)
to

cpn t f siendo el primer instante de tiempo en que x(t) y S se intersectan.


En esta parte presentaremos el problema de optimización cuando no hay dependencia del tiempo. La discusión
preparara las bases para el tema que viene a continuación que involucra optimización con sistemas variantes en el
tiempo.

Fuente: Capı́tulos 4 y 5 del libro Systems and Control de Stanislaw H. Zak, Oxford University Press, 2003.
Fuente: Capı́tulo 6 del libro Feedback Systems: An Introduction for Scientists and Engineers, de Karl J. Åström y
Richard M. Murray.
Fuente: Nonlinear Systems, de H.K. Khalil, Macmillan Publishing Company, 1992.
Fuente: Nonlinear Systems Analysis, de M. Vidyasagar, Prentice-Hall, Second Edition, 1993.
Fuente: Advanced Control System Design, de B. Friedland, Prentice-Hall, 1996.
Capı́tulo 8
Control Óptimo

Una vez que se ha elegido el ı́ndice de desempeño, el siguiente paso es determinar la ley de control que minimice
ese criterio. Dos métodos que pueden ser usados para la minimización son el principio de maximalidad de Pontryagin
y el método de programación dinámica desarrollado por R. Bellman. El abordaje variacional de Pontryagin conlleva a
un problema de condiciones de frontera en dos puntos que debe ser resuelto para obtener el control óptimo. El método
de programación dinámica conduce a un ecuación funcional que puede ser resuelta usando una computadora digital.

8.1. Problema del Control Óptimo

En lo que queda del curso discutiremos el como diseñar controladores óptimos y observadores óptimos. Los resul-
tados de control óptimo serán derivados usando cálculo variacional. El resultado será aplicado al caso de un ı́ndice de
desempeño cuadrático para un sistema lineal. Ası́, la ecuación de Riccati, dependiente y no del tiempo, será derivada
para resolver el problema del regulador cuadrático lineal. La ecuación de Riccati puede ser resuelta si el sistema es
estabilizable. Luego, la solución del problema del regulador cuadrático lineal existe siempre que el sistema sea estabi-
lizable. El problema de observación óptima es dual al problema del regulador cuadrático lineal. Un observador óptimo
a menudo se denomina filtro de Kalman o filtro de Kalman-Bucy.
Para comenzar, serán presentadas algunas ideas de cálculo variacional, necesarias para la derivación del control
óptimo.

8.1.1. Cálculo Variacional

En esta sección estaremos preocupados en minimizar un ı́ndice de desempeño aumentado J ′ = J ′ (x(t),t) (eliminare-
mos por ahora la dependencia en u(t)). Para llevar a cabo la minimización, necesitaremos encontrar el cambio inducido
en J ′ por los cambios independientes de todos sus argumentos. Sin embargo, el cambio en J ′ dependerá del tiempo y
de los diferenciales dt y dx, siendo que las últimas cantidades no son independientes. En esta parte derivaremos una
relación de utilidad trabajar esta observación.
Si x(t) es una función contı́nua del tiempo t, luego los diferenciales dx(t) y dt no son independientes del tiempo. A
continuación definiremos un pequeño cambio en x(t) que es independiente de dt. Sea la variación en x(t), δ x(t), como
un cambio incremental en x(t) cuando el tiempo t es mantenido fijo.
Para encontrar las relaciones entre dx, δ x, y dt, examinemos la Fig. B.1. La figura muestra la función original x(t) y
una función vecina x(t) + dx(t) sobre un intervalo especificado por un tiempo inicial to y un tiempo final T . En adición
al incremento dx(t) a cada tiempo t, el tiempo final ha sido incrementado por dT . Es claro de la figura que el incremento
total en x al tiempo T , dx(T ), depende de dT . De acuerdo a nuestra definición la variación δ x(T ) ocurre para un valor
fijo de t = T como mostrado y es independiente de dT . Siendo que x(t) y x(t) + dx(t) tienen aproximadamente la
misma pendiente ẋ(T ) en el tiemp t = T , y siendo que dT es pequeño, se tiene:

dx(T ) = δ x(T ) + ẋ(T )dT. (8.1)

111
112 8 Control Óptimo

Esta relación es la que usaremos más adelante.

Figura 8.1 Relación entre la variación δ x y el diferencial dx

Otra relación que usaremos es la regla de Leibniz para funcionales: si x(t) ∈ Rn es una función de t y,
Z T
J(x) = h(x(t),t)dt, (8.2)
to

donde J(·) y h(·) son dos funcionales escalares reales (en otras palabras, funciones de la función x(t)), luego:
Z T 
dJ = h(x(T ), T )dT − h(x(to ),to )dto + hTx (x(t),t)δ x dt. (8.3)
to

Nuestra notación es:


∂h
hx = .
∂x

8.1.2. Solución del problema de optimización

La filosofia de este capitulo es derivar la solución del problema de control óptimo de la forma más general.

8.1.2.1. Formulación del problema

Suponiendo que la planta es descrita por un sistema no lineales variantes en el tiempo de la forma:

ẋ = f (x(t), u(t),t), (8.4)

donde x ∈ Rn y u ∈ Rm son las variables de estado y entradas de control, respectivamente, y f (·, ·) es una función no
lineal que satisface la condición usual para existencia de la solución de la ecuación diferencial.
Con este sistema se puede asociar el siguiente ı́ndice de desempeño o funcional de costo:
Z T
J(x(t), u(t),t) = F(x(T ), T ) + L(x(t), u(t),t)dt, (8.5)
to
8.1 Problema del Control Óptimo 113

donde [to , T ] es el intervalo de tiempo de interés. La función de ponderación final F(x(T ), T ) depende del estado final y
el tiempo final, y la función de ponderación L(x, u,t) depende del estado y entrada en los tiempo intermedios en [to , T ].
El ı́ndice de desempeño arriba presentado es bastante general y puede cubrir la clase de problemas prácticos
definidos en la sección anterior.
El problema de control óptimo consiste en encontrar la entrada u∗ (t) en el intervalo de tiempo [to , T ] que lleva la
planta (8.4) a lo largo de la trayectoria x∗ (t) tal que la función de costo (8.5) sea minimizada, y tal que:

ψ (x(T ), T ) = 0, (8.6)

para una función ψ ∈ R p . Esta última condición corresponde al problema con función del estado final fijo.
Los roles de la función de ponderación final F y la función del estado final fijo ψ no deben ser confundidos.
F(x(T ), T ) es una función del estado final que queremos hacer pequeña. Una ilustración debe ser la energı́a, que es
[xT (T )S(T )x(T )]/2 donde S(T ) es una matriz de ponderación dada. Por otro lado, F(x(T ), T ) es una función del estado
 T
final que nosotros queremos fijo e igual a cero. Como ilustración considere un satélite con estado x = r ṙ θ θ̇ , donde
r y θ es el radio y posición angular. Si queremos que el satélite se ubique en una órbita polar con radio R, luego la
función del estado final a ser igualada a cero debe ser:
 
r(T ) − R
 )
ṙ(Tr 
ψ (x(T ), T ) =  ,
 µ 
θ̇ (T ) −
R3

con µ = GM, la constante gravitacional que atrae a la masa M.

8.1.2.2. Solución del problema

Para resolver el problema de control óptimo, usaremos multiplicadores de Lagrange para sumar las restricciones
(8.4) y (8.6) al ı́ndice de desempeño (8.5). Dado que (8.4) se debe mantener para cada t ∈ [to , T ], se requiere un
multiplicador asociado λ (t) ∈ Rn , que es función del tiempo. Dado que (8.6) debe mantenerse solo en un tiempo,
requerimos de un multiplicador asociado constante ν ∈ R p . El ı́ndice de desempeño asociado es entonces:
Z T
J ′ = F(x(T ), T ) + ν T ψ (x(T ), T ) + L(x, u,t) + λ T (t) [ f (x, u,t) − ẋ] dt. (8.7)
to

Si definimos la función Hamiltoniana como:

H(x, u,t) = L(x, u,t) + λ T f (x, u,t), (8.8)

podemos escribir (8.7) como:


Z T
J ′ = F(x(T ), T ) + ν T ψ (x(T ), T ) + H(x, u,t) − λ T ẋ dt. (8.9)
to

Usando la regla de Leibniz, el incremento en J ′ como función de los incrementos en x, λ , ν , u y t es:

dJ ′ = (Fx + ψxT ν )T dx|T + (Ft + ψtT ν )dt|T + ψ T |T d ν + (H − λ T ẋ)dt|T − (H − λ T ẋ)dt|to


Z T  (8.10)
+ HxT δ x + HuT δ u − λ T δ ẋ + (Hλ − ẋ)T δ λ dt.
to

Para eliminar la variación en ẋ, integrando por partes para ver que:
Z T Z T
− λ T δ ẋdt = −λ T δ x|T + λ T δ x|to + λ̇ T δ xdt. (8.11)
to to

Sustituyendo (8.11) en (8.10) y expresando δ x(T ) en términos de dx(t) y dT usando (B.1), se tiene:
114 8 Control Óptimo

dJ ′ = (Fx + ψxT ν − λ )T dx|T + (Ft + ψtT ν + H − λ T ẋ + λ T ẋ)dt|T + ψ T |T d ν + (H − λ T ẋ + λ T ẋ)dt|to


Z Th i (8.12)
+λ T dx|to + (Hx + λ̇ )T δ x + HuT δ u + (Hλ − ẋ)T δ λ dt.
to

De acuerdo a la teoria de Lagrange, el mı́nimo con restricciones de J es obtenido en el mı́nimo sin restricciones de
J ′ . Este mı́nimo se alcanza cuando dJ ′ = 0 para todos los incrementos independientes en sus argumentos. Fijando en
cero los coeficientes de los incrementos independientes d ν , δ x, δ u, y δ λ se obtienen las condiciones para un mı́nimo
como mostrado en la Tabla 1. Para nuestras aplicaciones, to y x(to ) son ambos fijos y conocidos, tal que dto y dx(to )
son ambos cero. Los dos terminos evaluados en t = to en (8.12) son automáticamente igual a cero.
La condición final en (8.13) necesita más discusión. Hemos visto que dx(T ) y dT no son independientes (Fig.
8.1). Entonces, no podemos fijar los coeficientes de los dos primeros terminos de (8.12) igual a cero en t = T . La
complejidad de (8.13) se debe a que las ecuaciones como dadas permiten posibles variaciones en el tiempo final T .
Nótese que la ecuación de coestado es una ecuación dinámica que debe ser desarrollada retrocediendo en el tiempo.
Esta ecuación de coestado es también llamada la adjunta de la ecuación de estado.

Modelo del sistema:


ẋ = f (x, u,t) t ≥ to , to fixed
Índice de desempeño:
RT
J = F(x(T ), T ) + to L(x, u,t)dt
Restricción estado final:
ψ (x(T ), T ) = 0
Controlador óptimo:
Hamiltoniano:
H(x, u,t) = L(x, u,t) + λ T f (x, u,t)
Ecuación de estado:
∂H
ẋ = = f , t ≥ to
∂λ
Ecuación de coestados:
∂H ∂ fT ∂L
-λ̇ = = λ+ , t ≤T
∂x ∂x ∂x
Condición estacionaria:
∂H ∂L ∂ fT
0= = + λ
∂u ∂u ∂u
Condición de frontera:
x(to ) dado
(Fx + ψxT ν − λ )T |T dx(T ) + (Ft + ψtT ν + H)|T dT = 0 (8.13)

Tabla 1. Controlador óptimo no lineal contı́nuo con función de estado final fijo

La Tabla 1 muestra que el problema de control depende de la solución de un problema de valor de frontera en dos
puntos, esto porque x(to ) es dado y λ (T ) es determinado por (8.13). En general este es un problema difı́cil de resolver.
En realidad no nos interesa el valor de λ (t), pero este debe ser evidentemente determinado como un paso intermedio
para encontrar la ley de control óptima u∗ (t), que depende de λ (t) a través de la condición estacionaria.
Es importante destacar lo siguiente. La derivada en el tiempo del Hamiltoniano es:

Ḣ = Ht + HxT ẋ + HuT u̇ + λ̇ T f = Ht + HuT u̇ + (Hx + λ̇ )T f . (8.14)

Si u(t) es el control óptimo, luego:


Ḣ = Ht . (8.15)
Ahora, en el caso de sistemas invariantes en el tiempo, f y L no son funciones explı́citas del tiempo t, y tampoco lo es
H. En esta situación:
Ḣ = 0. (8.16)
Luego para sistemas y funcionales de costo invariantes en el tiempo, el Hamiltoniano es una constante en la trayectoria
óptima.
8.1 Problema del Control Óptimo 115

8.1.2.3. Ejemplos

Los primeros ejemplos establecen que la solución al problema de optimización dado en la Tabla 1 es bastante
general. Los siguientes ejemplos ilustran el cálculo del controlador óptimo
Control de temperatura en un cuarto
Se desea calentar un cuarto usando la menor energı́a posible. Si θ (t) es la temperatura del ambiente, θa la temperatura
del aire fuera del ambiente (una constante), y u(t) la tasa de provisión de calor hacia el ambiente, luego la dinámica
está dada por:
θ̇ = −a(θ − θa ) + bu,
para algunas constantes a y b, que dependen del aislamiento del ambiente entre otros. Si definimos el estado como:

x(t) = θ (t) − θa ,

la ecuación espacio de estados se puede escribir como:

ẋ = −ax = bu.

Para poder controlar la temperatura en un intervalo fijo de tiempo [0, T ] con la menor provisión posible de energı́a,
definimos el ı́ndice de desempeño como:
Z
1 T 2
J= u (t)dt.
2 0
A continuación discutiremos dos objetivos de control posibles. El Hamiltoniano es:

u2
H= + λ (−ax + bu).
2
De acuerdo a la Tabla 1, el control óptimo u(t) es determinado resolviendo:

ẋ = Hλ = −ax + bu,
λ̇ = −Hx = aλ ,
0 = Hu = u + bλ .

La condición estacionaria dice que la ley de control está dada por:

u(t) = −bλ (t),

entonces para determinar u∗ (t) solo necesitamos encontrar el coestado óptimo λ ∗ (t).
Reemplazando en las ecuaciones de estado y coestado, se tiene:

ẋ = −ax − b2 λ ,
λ̇ = aλ ,

que deben ser resueltas para λ ∗ (t) y el estado óptimo x∗ (t).


Aún no conocemos cual es el coestado final λ (T ), pero supongamos que si lo conocemos y resolvamos el conjunto
de ecuaciones anterior. Luego se tiene:
λ (t) = e−a(T −t) λ (T ).
y:
ẋ = −ax − b2 λ (T )e−a(T −t) .
Usando transformada de Laplace para resolver esta ecuación se tiene:

x(0) b2 λ (T )e−aT
X(s) = − ,
s + a (s + a)(s − a) 
x(0) b2 −1/2 1/2
= − λ (T )e−aT + ,
s+a a (s + a) (s − a)
116 8 Control Óptimo

tal que:
b2
x(t) = x(0)e−at − λ (T )e−aT sinh at.
a
Para encontral λ (T ), consideremos dos objetivos de control, los mismos que darán dos formas de obtener λ (T ).
a. Estado final fijo
Suponga que la temperatura inicial de ambiente es igual a θa = 60o . Luego:

x(0) = 0o .

Sea nuestro objetivo de control aquel que lleve la temperatura final θ (T ) a exactamente 70o en un tiempo final de T
segundos. Luego el estado final requerido es de:
x(T ) = 10o .
Note que dado que el tiempo final y el estado final estan ambos fijos, dT y dx(T ) son ambos ceros, tal que (8.13) es
satisfecha.
Usando las condiciones para x(0) y x(T ), se puede encontrar λ (T ) y el control óptimo. Para encontrar λ (T ), se
tiene:
b2
x(T ) = x(0)e−at − λ (T )(1 − e−2aT ).
2a
Luego el coestado final será:
20a
λ (T ) = 2 ,
b (1 − e−2aT )
tal que la trayectoria óptima del coestado es:

10eat
λ ∗ (t) = − .
b2 sinh aT
Finalmente la tasa óptima de provisión de calor hacia el ambiente está dada por:

10eat
u∗ (t) = , 0 ≤ t ≤ T.
b sinh aT
Usando la ley de control óptima, la trayectoria óptima pra el estado resulta:

sinh at
x∗ (t) = 10 .
sinh aT
Que resulta en x∗ (T ) = 10, como deseado.
b. Estado final libre
Suponga que no estamos preocupados con que el estado final x(T ) sea exactamente 10o , la demanda es que la ley de
control minimice: Z
1 1 T 2
J = s(x(T ) − 10)2 + u (t)dt,
2 2 0
para algun peso s ∈ R. Si s es grande luegi la solución óptima estará cerca a 10o , dado que solo el primer termino
contribuirá más en el costo.
De acuerdo a la Tabla 1, las ecuaciones de estado y coestado todavı́a son las mismas del caso a.:

λ (t) = e−a(T −t) λ (T ).

b2
x(t) = x(0)e−at − λ (T )e−aT sinh at.
a
La condición inicial todavı́a es:
x(0) = 0o ,
pero la condición dinal debe ser determinada usando (8.13). El tiempo final T es fijo, tal que dT = 0 y el segundo
termino de (8.13) es automáticamente igual a cero. Dado que x(T ) no es fijo, dx(T ) no es cero (como en la parte a.).
8.2 Regulador cuadrático lineal, (LQR por sus siglas en inglés) 117

Luego se requiere que:


∂ F
λ (T ) = = s(x(T ) − 10).
∂ x T
Reemplazar apropiadamente...

8.2. Regulador cuadrático lineal, (LQR por sus siglas en inglés)

La planta a ser investigada es una planta lineal (o linealizada) pero puede ser variante en el tiempo:

ẋ(t) = A(t)x(t) + B(t)u(t), x(to ) = xo . (8.17)

El controlador es requerido para minimizar una función de costo1 con forma particular, ı́ndice de desempeño
cuadrático: Z
1 1 T T 
J(u) = xT (T )F(T )x(T ) + x (t)Q(t)x(t) + uT (t)R(t)u(t) dt. (8.18)
2 2 to
El tiempo final es fijo pero el estado final se puede desviar de cero, como requerido por F(T ) ≥ 0. Las matrices de
ponderación de las señales de estado y control son semidefinida positiva y definida positiva, respectivamente, Q(t) ≥ 0
y R(t) > 0, ∀t.
La condición de frontera está dada por:
λ (T ) = F(T )x(T ), (8.19)
puesto que F(x(T ), T ) = 12 xT (T )F(T )x(T ) y se debe cumplir Fx − λ = 0.
El Hamiltoniano del sistema es:
1 1
H = xT (t)Q(t)x(t) + uT (t)R(t)u(t) + λ T (t) [A(t)x(t) + B(t)u(t)] . (8.20)
2 2
La ecuación de coestado es:
∂H
λ̇ (t) = − = −Q(t)x(t) − AT (t)λ (t), (8.21)
∂ x(t)
y la ecuación estacionaria es:

∂H
0=− = R(t)u(t) + BT (t)λ (t) → u(t) = −R−1 (t)BT (t)λ (t). (8.22)
∂ u(t)

La ecuación de estado y la de coestado son dos ecuaciones diferenciales en las variables de estado y coestado con la
condición inicial de que el vector de estado comienza en x(to ) = xo y que en el tiempo final T el coestado obedece
a (8.19). En general, resolver estas ecuaciones es bastante difı́cil debido al problema de contorno en dos puntos. Sin
embargo en el caso lineal cuadrático es posible emplear un truco para poder resolver el problema.
Si (8.22) es insertada en la ecuación de estados (8.17) entonces esta ecuación y (8.21) pueden ser expresados como:
      
ẋ(t) A(t) −B(t)R−1 (t)BT (t) x(t) x(t)
= = H(t) . (8.23)
λ̇ (t) −Q(t) −AT (t) λ (t) λ (t)

Esta es llamada la ecuación de Hamilton y la matriz H(t) es llamada matriz Hamiltoniana.

1 Las matrices F(T ), Q(t) y R(t) son llamadas matrices de ponderación y determinan cuanto aumentará a la función de costo total la

desviación de x(T ), x(t) y u(t) a partir de sus ceros. La restricción de que J tenga un mı́nimo supone que está limitado por abajo, luego
todos los terminos del ı́ndice deben ser no negativos para todo valor de x y u, entonces se debe cumplir que F(T ) ≥ 0, Q(t) ≥ 0, y R(t) > 0,
∀t.
118 8 Control Óptimo

8.2.1. Ecuación de Riccati Diferencial (DRE, por sus siglas en inglés)

La solución de esta ecuación de estado de dimensión-2n, es:


      
x(t) x(to ) φ (t,t ) φ (t,t ) x(to )
= φ (t,to ) = 1 o 2 o . (8.24)
λ (t) λ (to ) φ3 (t,to ) φ4 (t,to ) λ (to )

Aplicando la propiedad de matriz de transición, la solución también puede ser escrita como:
    
x(t) φ (t, T ) φ2 (t, T ) x(T )
=− 1 . (8.25)
λ (t) φ3 (t, T ) φ4 (t, T ) λ (T )

Usando (8.19) y eliminando x(T ) de las dos ecuaciones en (8.25) lleva a:

λ (t) = (φ3 (t, T ) + φ4 (t, T )F(T )) [φ1 (t, T ) + φ2 (t, T )F(T )]−1 x(t), (8.26)

que puede ser escrito como:


λ (t) = P(t)x(t). (8.27)
La matriz P(t) es una función del tiempo final constante T asi como de t, tal que serı́a mas correcto escribir P como
P(t, T ). Sin embargo la practica mas común es omitir la dependencia de T .
De (8.19) se tiene que:
P(T ) = F(T ). (8.28)
La señal de control está luego dada por la ecuación:

u(t) = −R−1 (t)BT (t)P(t)x(t). (8.29)

Esta ecuación muestra que el vector de control es derivado a partir del vector de estados.
El problema que queda por resolver es determinar la matriz P(t). Esta matriz debe obedecer una ecuación diferencial
que resulta de derivar (8.27) con respecto al tiempo:

λ̇ (t) = Ṗ(t)x(t) + P(t)ẋ(t). (8.30)

Insertando las ecuaciones de estado y coestado resulta:


 
−Q(t)x(t) − AT (t)P(t)x(t) = Ṗ(t)x(t) + P(t) A(t)x(t) − B(t)R−1 (t)BT (t)P(t)x(t) . (8.31)

Esta ecuación tiene solución para todo x(t) si P(t) obedece la ecuación diferencial:

0 = Ṗ(t) + Q(t) − P(t)B(t)R−1 (t)BT (t)P(t) + P(t)A(t) + AT (t)P(t), (8.32)

Esta importante ecuación diferencial es conocida como ecuación de Riccati diferencial. La condición de frontera rele-
vante está dada por (8.28):
P(T ) = F(T ) (8.33)
A continuación consideremos las implicancias del resultado obtenido: primero, la solución del problema del regu-
lador cuadrático lineal se reduce a un conjunto de ecuaciones diferenciales no lineales ordinarias. Segundo, la matriz
P(t) puede ser determinada por integración numérica de (8.32) retrocediendo en el tiempo - a partir de t = T hacia
t = to - usando la condición de frontera P(T ) = F(T ). En realidad dado que la matriz P(t) es simétrica, necesitamos
integrar solo n(n + 1)/2 ecuaciones diferenciales.
Una vez que P(t) ha sido determinado, la ley de control óptima puede ser escrita como una señal de la forma:

u(t) = −K(t)x(t). (8.34)

La ganancia de realimentación dependiente del tiempo K(t) es denominada ganancia LQR (ganancia del regulador
cuadrático lineal) o ganancia del regulador óptimo y puede ser inferida de (8.29) como:
8.2 Regulador cuadrático lineal, (LQR por sus siglas en inglés) 119

K(t) = R−1 (t)BT (t)P(t). (8.35)

La Fig. 8.2 muestra el diagrama de bloques de la realimentación de estados para el regulador cuadrático lineal. Se
observa que en general la ganancia LQR será dependiente del tiempo aún cuando el sistema sea LTI y la función de
costo tenga matrices de ponderación Q y R constantes. Nótese que la ganancia del controlador LQR es un contro-
lador lineal por realimentación de estados y que la ganancia LQR sólo depende de parámetros que se conocen con
anticipación y luego podrı́a ser calculado fácilmente offline.

Figura 8.2 Sistema en lazo cerrado con LQR.

Una vez obtenida la ley de control óptima, el sistema en lazo cerrado está dado por:

ẋ(t) = Ac (t)x(t) = [A(t) − B(t)K(t)]x(t) (8.36)

8.2.2. Valor del ı́ndice de desempeño

El valor del ı́ndice de desempeño puede ser evaluado en base a la solución de la ecuación de Riccati. Primero, notar
que:
d T
(x Px) = ẋT Px + xT Ṗx + xT Pẋ.
dt
Usando las ecuaciones (8.17), (8.29) y (8.32), se encuentra que:

d T
(x Px) = −xT Qx − uT Ru.
dt
Luego en el ı́ndice de desempeño (8.18) se obtiene:
Z  
1 T 1 T d T
J(u∗ ) = x (T )F(T )x(T ) − x (t)P(t)x(t) dt,
2 2 to dt
1 1 1
= xT (T )F(T )x(T ) − xT (T )P(T )x(T ) + xT (to )P(to )x(to )
2 2 2
Usando (8.33) los dos primeros términos desaparecen y el valor óptimo (mı́nimo) del ı́ndice de desempeño es:

Jmı́n = 12 xT (to )P(to )x(to ) (8.37)


120 8 Control Óptimo

8.2.3. Ejemplo integrador doble

Considere un integrador doble descrito por la ecuación espacio de estado:


    
01 p(t) 0
ẋ(t) = Ax(t) + Bu(t) = + u(t)
00 v(t) 1

El vector de estados está formado por la posición p(t) y la velocidad v(t) y la entrada de control es la aceleración u(t).
El ı́ndice de desempeño a ser minimizado es:
Z tf 
1 1 
J = xT (t f )Fx(t f ) + xT (t)Qx(t) + ρ u2 (t) dt
2 2 to

Aqui las matrices han sido seleccionadas como:


 
f f12
F = 11 ,
f12 f22
 
r 0
Q= p ,
0 rv
ρ > 0.
Para que F y Q sean semidefinidas positivas, los parámetros r p , rv y ρ y los autovalores de F deben ser no negativos.
Introduciendo las matrices de ponderación en la ecuación de Riccati diferencial resulta:

−Ṗ(t) = Q(t) − P(t)B(t)R−1 (t)BT (t)P(t) + P(t)A(t) + AT (t)P(t)


       
rp 0 0 1  00 00
= − P(t) 0 1 P(t) + P(t) + P(t)
0 rv 1 ρ 10 10
 
p11 p12
Como P(t) es simétrico tenemos que resolver tres ecuaciones para los elementos de P(t) = :
p12 p22

− ṗ11 = r p − ρ1 p212
− ṗ12 = p11 − ρ1 p12 p22
− ṗ22 = rv + 2p12 − ρ1 p222

Estas ecuaciones tienen que ser resueltas retrocediendo en el tiempo desde el valor inicial en el tiempo t f donde
P(t f ) = F. Integración numérica con los valores f11 = f12 = f22 = 1, r p = 3, rv = 4 y ρ = 1 resulta en la solución
mostrada en la Fig. 8.3. Se observa de la figura que los tres valores de los elementos de la matriz P(t) se aproximan a
una constante cuando t f − t comienza a crecer.
La Fig. 8.4 muestra la respuesta del control óptimo para diversos valores de la matriz Q. Se observa que para grandes
valores de los elementos de la matriz Q, la respuesta es más rápida pero con un mayor esfuerzo de control (señal de
control más grande).

8.3. Regulador cuadrático lineal en estado estacionario - Horizonte infinito

El control LQR antes mostrado es el control óptimo que minimiza el ı́ndice de desempeño sobre un intervalo de
tiempo finito [to , T ]. Se demuestra que lleva a una ganancia de control variante en el tiempo que puede ser calculada
offline. En la mayoria de los casos es más conveniente tener una matriz de ganancia constante. Es preferible entonces
analizar el problema de control óptimo con un ı́ndice de desempeño extendido hasta el infinito:
8.3 Regulador cuadrático lineal en estado estacionario - Horizonte infinito 121

position

velocity

5
p11 –1
0 1 2 3

4 0
Control signal rp = 3 , rv = 4
rp = rv = 100
3 rp = rv = 10000
P(t)
p22 –4
NB. The dotted signal has a minimum at –60.
2
p12

1 –8

0 4 8 10
time [sec] 0 1 2 3
time [sec]
Figura 8.3 Solución de la ecuación de Ricatti para el integrador
doble. Figura 8.4 Respuesta del sistema integrador doble con LQR.

Z t

J(u) = lı́m [xT (t)QxT (t) + uT (t)Ru(t) dt. (8.38)
t→∞ to

Adicionalmente asumiremos que el sistema es invariante en el tiempo:

ẋ(t) = Ax(t) + Bu(t), (8.39)

tal que todas las matrices son consideradas constantes y Q = QT ≥ 0 y R = RT > 0.


Siendo que el problema de control LQR estándar consiste en mover los estados del sistema hacia cero de forma
óptima, el vector de estados x(t) se aproximará al vector cero a medida que T → ∞ si el sistema en lazo cerrado es
estable. Luego no es relevante incluir el término del estado final en el ı́ndice de desempeño, que es lo mismo que
considerar F = 0 en (8.18).

8.3.1. Ecuación de Riccati Algebraica (ARE, por sus siglas en ingles)

El valor óptimo del ı́ndice está dado por (8.37). Siendo que el sistema es LTI, el valor de Jmı́n es independiente del
tiempo, lo que significa que la matriz P debe ser constante. Esto implica que Ṗ = 0 y la ecuación de Riccati se reduce
a:
0 = Q − PBR−1 BT P + PA + AT P. (8.40)
Este es un conjunto de ecuaciones algebraicas no lineales acopladas cuadráticas. En la práctica se le llama ecuación de
Riccati algebraica.
122 8 Control Óptimo

La ecuación (8.40) pueda tener múltiples soluciones pero solo una de ellas provee una matriz P semidefinida positiva
(siempre y cuando el sistema sea estabilizable) y la solución particular lleva a:

Jmı́n = 12 xoT P∞ xo . (8.41)

donde P∞ es la solución constante de (8.40).


La matriz de ganancias óptima para el control LQR en estado estacionario queda definida por:

K∞ = R−1 BT P∞ , (8.42)

y la señal de control resulta:


u(t) = −K∞ x(t). (8.43)
En conclusión, el controlador lineal por realimentación de estados óptimo que minimiza el ı́ndice de desempeño:
Z t 
J(u) = lı́m [xT (t)QxT (t) + uT (t)Ru(t) dt.
t→∞ 0

sujeto a
ẋ(t) = Ax(t) + Bu(t), x(0) = xo
satisface el teorema más abajo.
El objetivo es construir un controlador lineal por realimentación de estados de la forma u = −Kx que estabiliza al
sistema y minimiza el ı́ndice de desempeño J(u). Denotar dicha ley de control lineal como u∗ . Primero, asumimos que
el controlador lineal por realimentación de estados óptimo existe tal que el sistema en lazo cerrado óptimo

ẋ = (A − BK)x

es asintóticamente estable. Esta suposición implica que existe una función de Lyapunov V = xT Px para el sistema
en lazo cerrado; esto es, para alguna matriz definida positiva P la derivada en función del tiempo dV
dt evaluada en las
trayectorias del sistema en lazo cerrado es definida negativa.
Teorema 1. Si el controlador por realimentación de estados u∗ = −Kx es tal que
 
dV T T
minu + x Qx + u Ru = 0, (8.44)
dt

para algún V = xT Px, entonces el controlador es óptimo. ⋄


Demostración Teorema 1 Podemos escribir la condición del teorema como:

dV
+ xT Qx + u∗T Ru∗ = 0.
dt u=u∗

Luego,
dV
= −xT Qx − u∗T Ru∗ .
dt u=u∗
Integrando ambos lados de la ecuación resultante con respecto al tiempo desde 0 hasta ∞, obtenemos
Z ∞
V (x(∞)) −V (x(0) = − (xT Qx + u∗T Ru∗ )dt.
0

Debido a la suposición de que el sistema en lazo cerrado es asintóticamente estable, x(∞) = 0, y luego
Z ∞
V (x(0) = xoT Pxo = (xT Qx + u∗T Ru∗ )dt.
0

Entonces, hemos demostrado que si un controlador lineal por realimentación de estados satisface la suposición del
teorema, entonces el valor del ı́ndice de desempeño para tal controlador es
8.3 Regulador cuadrático lineal en estado estacionario - Horizonte infinito 123

J(u∗ ) = xoT Pxo .

Para demostrar que tal controlador es de hecho óptimo, usamos una prueba por contradicción. Asumimos que (8.44) se
cumple y que u∗ no es óptima. Supóngase que ũ resulta en un menor valor de J, esto es,

J(ũ) < J(u∗ ).

De (8.44) tenemos que


dV
+ xT Qx + ũT Rũ ≥ 0,
dt u=ũ
esto es,
dV
≥ −xT Qx − ũT Rũ.
dt u=ũ
Integrando la expresión arriba con respecto al tiempo de 0 a ∞ resulta
Z ∞
V (x(0)) ≤ (xT Qx + ũT Ru)dt
0

lo que implica que


J(u∗ ) ≤ J(ũ),
lo que es una contradicción, y la demostración se ha completado. ⋄

Ejemplo 1

Considere el siguiente modelo de un sistema dinámico:

ẋ = 2u1 + 2u2 , x(0) = 3,

asi como el ı́ndice de desempeño asociado


Z ∞
J= (x2 + ru21 + ru22 )dt,
0

donde r > 0 es un parámetro.


1. Primero encontramos las solución de ARE correspondiente al controlador lineal por realimentación de estados
óptimo. Tenemos  
A = 0, B= 2 2 , Q = 1, R = rI2 .
La ARE para este problema es
8
0 = AT P + PA + Q − PBR−1 BT P = 1 − p2 ,
r
cuya solución es r
r
p= .
8
2. Ahora escribimos el sistema en lazo cerrado que se obtiene usando el controlador óptimo. El controlador óptimo
tienen la forma  
1 1
u = −R−1 BT Px = − √ x.
2r 1
Entonces, el sistema en lazo cerrado óptimo es descrito por
  4
ẋ = 2 2 u = − √ x.
2r
124 8 Control Óptimo

3. Finalmente, encontramos el valor de J para el sistema en lazo cerrado óptimo. Tenemos que
r
T 9 r
J = x(0) Px(0) = .
2 2

Ejemplo integrador doble con LQR en estado estacionario

Considere un integrador doble descrito por la ecuación espacio de estado:


   
01 0
ẋ(t) = x(t) + u(t)
00 1

El controlador tiene que minimizar el siguiente ı́ndice de desempeño:


Z ∞ 
J= xT (t)Qx(t) + ρ u2 (t) dt
0

Aqui las matrices han sido seleccionadas como:


 
rp 0
Q= ,
0 rv

ρ > 0,
donde r p y rv son los pesos de posición y velocidad respectivamente. Con los valores dados la ecuación de Riccati
algebraica resulta en las siguientes ecuaciones acopladas:

0 = r p − ρ1 p212
0 = p11 − ρ1 p12 p22
0 = rv + 2p12 − ρ1 p222
 
p11 p12
Aqui, P = , es la solución de la ARE. Resolviendo estas ecuaciones algebraicas se obtiene la solución
p12 p22
definida positiva única:
√ p √
p11 = r p 2ρ r p ρ + rv ρ

p12 = pr p ρ

p22 = 2ρ r p ρ + rv ρ
El controlador resulta en el control por realimentación de estados con la señal de control:

u(t) = −K = −(R−1 BT P∞#)x(t)


"∞rx(t) s r
rp r p rv
=− 2 + x(t)
ρ ρ ρ

Se observa que la ganancia de control se incrementa a medida que los pesos de los estados se incrementan, en otras
palabras, r p y rv se incrementan en comparación al peso de la señal de control. La ecuación caracterı́stic del sistema en
lazo cerrado puede ser encontrada como:
s r
r p rv rp
s2 + 2 + s+ = 0
ρ ρ ρ

La frecuencia natural correspondiente al sistema en lazo cerrado ω y el factor de amortiguamiento ζ son calculados
como: r
rp
ω= 4
ρ
8.3 Regulador cuadrático lineal en estado estacionario - Horizonte infinito 125
r
1 rv
ζ=√ 1+ √ √
2 2 ρ rp

Para ρ = 1, si rv = 0 los polos en lazo cerrado tienen un factor de amortiguamiento de 1/ 2 ≈ 0,71. El “root locus”
como función de las ponderaciones se observa en la Fig. (8.5), donde r p varia desde 0 hasta 10. Para este sistema en
particular se observa que el factor de amortiguamiento de los polos en lazo cerrado siempre seran mayores que 0.71
para elementos de la matriz de ponderación positivos.

8.3.2. Resolviendo la ARE usando el método del autovector

A continuación presentamos un método para resolver la ARE referido como el método del autovector. Comenzamos
representando la ARE de la forma   
  A −BR−1 BT In
P −In = 0. (8.45)
−Q −AT P
La matriz 2n × 2n en la mitad es denominada de matriz Hamiltoniana. usamos el sı́mbolo H para denotar a la matriz
Hamiltoniana, esto es,  
A −BR−1 BT
H= .
−Q −AT
Entonces, la ARE puede ser representada como
 
  I
P −In H n = 0
P

Si premultiplicamos la ecuación arriba por X −1 y luego postmultiplicamos esta por X, donde X es una matriz no
singular n × n,  
 −1  X
X P −X −1 H = 0. (8.46)
PX
Observar que si pudiésemos encontrar matrices X y PX tal que
   
X X
H = Λ,
PX PX

luego la ecuación (8.46) resulta en  


  X
X −1 P −X −1 Λ = 0.
PX

1.5

0.5

0
rv = 5 2 1 0.5 0.1 0

–0.5

–1

–1.5
–2 –1.5 –1 –0.5 0 0.5 1

Figura 8.5 Root-locus del sistema integrador doble con LQR en estado estacionario para una variación de r p .
126 8 Control Óptimo

Luego hemos reducido el problema de resolver la ARE a aquel en el que construimos matrices X y PX apropiadas.
Continuando, sea vi el autovector de H y sea si el autovalor correspondiente; entonces

Hvi = si vi .

Si asumimos que H tiene al menos n autovalores reales distintos entre sus 2n autovalores. (Los resultados obtenidos
pueden ser generalizados para cuando los autovalores de H son complejos o iguales.) Entonces, podemos escribir
 
s1 0 ... 0
 0 s2 ... 0 

   
H v1 v2 ... vn = v1 v2 ... vn  . . ..  .
 .. .. . 
0 0 ... sn

Sea  
X  
= v1 v2 ... vn
PX
y  
s1 0 ... 0
0 s2 ... 0 
Λ = .
 
.. ..  .
 .. . . 
0 0 ... sn
La selección de X y PX constituye una posible solución de la ecuación
 
 −1  X
X P −X −1 Λ = 0.
PX
 
Para construir P, particionamos la matriz de autovectores v1 v2 ... vn de orden 2n × n en dos submatrices de orden
n × n como sigue  
  W
v1 v2 ... vn = .
Z
Luego,    
X W
= .
PX Z
Tomando X = W y PX = Z y asumiendo que W es invertible, obtenemos

P = ZW −1 . (8.47)

Ahora tenemos que elegir que conjunto de n autovalores elegir, dentro de todos los autovalores de H, para poder
contruir P. En el caso en que los 2n autovalores de H son diferentes, el número de matrices P generadas con el método
descrito arriba son
(2n)!
.
(n!)2
Sea Q = CT C una factorización de rango completo de Q. Del Teorema 3 de Kucera (ver referencias al final) se
concluye que la matriz Hamiltoniana H tiene n autovalores en el semiplano complejo izquierdo y n en el semiplano
complejo derecho si y sólo si el sistema como definido en (1) es estabilizable y detectable. La matriz P que nosotros
buscamos corresponde a los autovalores asintóticamente estables de H. Con P construido como deseado, tenemos el
siguiente resultado.
Teorema 2. Los polos del sistema en lazo cerrado

ẋ(t) = (A − BR−1 BT P)x(t)

son aquellos autovalores de H que tienen parte real negativa. ⋄


8.3 Regulador cuadrático lineal en estado estacionario - Horizonte infinito 127
 
  W
Demostración Siendo que v1 v2 ... vn = , podemos escribir
Z
    
A −BR−1 BT W W
= Λ.
−Q −AT Z Z

Realizando las multiplicaciones apropiadas de bloques de matrices n × n resulta

AW − BR−1 BT Z = W Λ ,

o
A − BR−1 BT ZW −1 = A − BR−1 BT P = W Λ W −1 ,
dado que P = ZW −1 . Entonces, la matriz A − BR−1 BT P es similar a la matriz Λ cuyos autovalores son los autovalores
asintóticamente estables de H. Luego, la demostración ha sido completada. ⋄

Ejemplo 1

Considere el siguiente modelo de un sistema dinámico

ẋ = 2x + u,

asi como el ı́ndice de desempeño asociado Z ∞


J= (x2 + ru2 )dt.
0
Encuentre el valor de r tal que el sistema en lazo cerrado óptimo tenga un polo en −3.
1. Formamos la matriz Hamiltoniana asociada
   
A −BR−1 BT 2 − 1r
H= = .
−Q −AT −1 −2

2. La ecuación caracterı́stica de H es
1
det(sI2 − H) = s2 − 4 − = 0.
r
Luego,
1
r=
5
resulta en el sistema en lazo cerrado óptimo teniendo su polo localizado en −3.

Ejemplo 2

Considere un modelo simple de un robot manipulador como mostrado en la Fig. ??. El movimiento del brazo
del robot es controlado por un motor DC a través de un engranaje. El motor DC es controlado por armadura y su
figura esquemática es presentada en la Fig. 8.7. Asumimos que el momento de inercia del motor es despreciable en
comparación con el del brazo del robot. Modelamos el brazo como una masa puntual m ubicada en el extremo final
de la barra (sin masa) de longitud l. Entonces el momento de inercia del brazo Ib = ml 2 . Asumimos que el tren de
engranajes no tiene juego, y que todos los ejes conectores son rı́gidos. Como podemos ver de la Fig. 8.6, la rotación
del brazo en sentido contrario a las agujas del reloj es definida como positiva, y la rotación siguiendo las agujas del
reloj es considerada como negativa; mientras que la rotación del eje del motor en sentido contrario a las agujas del
reloj es definida como negativa, y la rotación del eje siguiendo las agujas del reloj es definida como positiva. El torque
entregado por el motor es
Tm = Km ia ,
128 8 Control Óptimo

donde Km es la constante del torque del motor, y ia es la corriente de armadura. Sea N la razón de los engranajes. Luego
tenemos:
θp radio del engranaje del motor número de dientes del engranaje del motor 1
= = = .
θm radio del engranaje del brazo número de dientes del engranaje del brazo N

Mass m
␪p

Massless rod of length l


La Ra

⫹ ␪m ⫽ motor shaft
1: N ia position

u eb ⫽ back emf
DC motor Gear


⫹ u ⫺ Armature circuit if ⫽ constant
Control voltage Field circuit

Figura 8.6 Robot manipulador controlador por un motor DC via un en- Figura 8.7 Figura esquemática de un motor DC controlado
granaje. por armadura.

Esto ocurre puesto que los engranajes estan en contacto y luego:

θ p × radio del engranaje del brazo = θm × radio del engranaje del motor,

y los radios de los engranajes son proporcionales a sus números de dientes. El trabajo realizado por cada engranaje
debe ser igual. Sea Tp que denota el torque aplicado al brazo del robot. Entonces,

Tp θ p = Tm θm .

Entonces, el torque aplicado al péndulo es


Tp = NTm = NKm ia .
Usando la segunda Ley de Newton para escribir la ecuación que modela la dinámica del brazo,

d2θp
Ib = mgl sin θ p + Tp .
dt 2
Sustituyendo las expresiones para Ib y Tp y luego rearreglando tenemos

d2θp
ml 2 = mgl sin θ p + NKm ia ,
dt 2
donde g = 9,8m/s2 es la aceleración de la gravedad. Aplicado la Ley de Kirchhoff (voltaje) al circuito de armadura
resulta en
dia dθp
La + Ra ia + Kb N = u,
dt dt
donde Kb es la constante emf. Asumiendo que La ≈ 0. Entonces,

dθp
u = Ra ia + Kb N ,
dt
8.3 Regulador cuadrático lineal en estado estacionario - Horizonte infinito 129

A continuación calculamos ia de la expresión anterior y sustituimos el resultado en la ecuación de movimiento para


obtener:

!
2 d θp Kb N dtp
2
u
ml = mgl sin θ p + NKm − .
dt 2 Ra Ra
Ahora podemos construir el modelo de espacio de estados para el robot de un brazo. Escogiendo los siguientes estados
y variables de salida:
dθp
x1 = θ p , x2 = = ω p , y y = x1 .
dt
Entonces, obtenemos el siguiente modelo de espacio de estados simple del robot manipulador:
  " #
ẋ1 x2
= g Kb Km N 2 NKm
l sin x1 − ml 2 R x2 + ml 2 R u
ẋ2
a a

y = x1 .
Parámetros razonables para el robot son: l = 1m, m = 1kg, N = 10, Km = 0,1Nm/A, Kb = 0,1Vsec/rad, Ra = 1Ω .
Usando los valores de los parámetros el modelo del robot toma la siguiente forma:
   
ẋ1 x2
=
ẋ2 9,8 sin x1 − x2 + u
y = x1 .
Respuestas en el tiempo para las trayectorias de estado del sistema no lineal sin control, u = 0, son mostrados en
la Fig. 8.8 para las condiciones iniciales x1 (0) = 1 y x2 (0) = 0. Un plano de fase del sistema no lineal sin control es
mostrado en la Fig. 8.9. El modelo linealizado alrededor de x = 0, u = 0 tiene la forma
   
d 0 1 0
∆x = ∆x+ ∆ u,
dt  9,8 −1 1
∆ y = 1 0 ∆ x.

4 10
x1
8
3
6
2
4
x 1, x 2

1 2
x2 x2 0
0
⫺2
⫺1
⫺4
⫺2 ⫺6

⫺3 ⫺8
0 2 4 6 8 10
⫺10
Time (sec) ⫺10 ⫺5 0 5 10
Figure 5.13 x1
Figura 8.8 Gráficas de y = x1 y x2 versus tiempo para el sistema no lineal
sin control. Figura 8.9 Un plano de fase del sistema no lineal sin control.

En la Fig. 8.10 son mostradas las gráficas de y = x1 y x2 versus tiempo para el sistema lineal sin control. Un plano
de fase del sistema linealizado es mostrado en la Fig. 8.11. Sea
Z ∞
J= (y2 + u2 )dt.
0
130 8 Control Óptimo

Encontraremos una ley de control lineal por realimentación de estados u = −kx que minimice J sujeto a las ecuaciones
dadas por la representación espacio de estados lineal. Tenemos
 
T 10
Q=c c= y R = [1].
00

25 10
8

20 6
x2
4

15 2
x1, x2

x2 0

10 ⫺2
x1 ⫺4

5 ⫺6
⫺8

0 ⫺10
0 0.2 0.4 0.6 0.8 1 ⫺10 ⫺5 0 5 10
Time (sec) x1

Figura 8.10 Gráficas de y = x1 y x2 versus tiempo para el sistema lineal- Figura 8.11 Un plano de fase del sistema linealizado sin con-
izado sin control. trol.

Resolviendo la ecuación de Riccati, se define la matriz Hamiltoniana asociada como


 
  0 1 0 0
A −BR−1 BT  9,8 −1 0 −1 
H= = −1 0 0 −9,8  ,

−Q −AT
0 0 −1 1

y calculando los autovalores y autovectores de H tenemos que


 
−0,3443 −0,0485 0,2604 0,0496
 −0,9298 −0,1770 −0,9499 −0,1339 
H −0,1124 −0,9196 0,1691 0,9555 

0,0661 0,3473 0,0364 0,2582


  
−0,3443 −0,0485 0,2604 0,0496 2,7003 0 0 0
 −0,9298 −0,1770 −0,9499 −0,1339   0 3,6481 0 0 
=  −0,1124 −0,9196 0,1691 0,9555   0
 .
0 −3,6481 0 
0,0661 0,3473 0,0364 0,2582 0 0 0 −2,7003

Identificando los autovectores correspondientes a los autovalores con parte real negativa se puede definir
   
0,2604 0,0496 0,1691 0,9555
W= y Z= ,
−0,9499 −0,1339 0,0364 0,2582

luego sabiendo que P = ZW −1 se obtiene


 
72,3371 19,6509
P= .
19,6509 5,3484

Entonces:  
k = 19,6509 5,3484 ,
y
8.3 Regulador cuadrático lineal en estado estacionario - Horizonte infinito 131
 
0 1
Ac = ∆ x.
−9,8509 −6,3484
Las gráficas de x1 y x2 versus tiempo del sistema en lazo cerrado

ẋ = (A − bk)x = Ac x
y = x1 ,

cuando las condiciones iniciales son x1 (0) = 1 y x2 (0) = 0, son mostradas en la Fig. 8.12. Un plano de fase del sistema
linealizado en lazo cerrado es mostrado en la Fig. 8.13. Aplicando el controlador óptimo al modelo no lineal, las
gráficas de x1 y x2 versus tiempo para el sistema no lineal en lazo cerrado son mostradas en la Fig. 8.14. Un plano de
fase del sistema no lineal en lazo cerrado es mostrado en la Fig. 8.15. Los polos del sistema linealizado en lazo cerrado
-esto es, los autovalores de Ac - son λ1 = −2,7003 y λ2 = −3,6481.

10
8
1
6

0.5 4

x1 2
0 x2 0
x1, x2

x2 ⫺2
⫺0.5
⫺4
⫺6
⫺1
⫺8
⫺10
⫺1.5 ⫺10 ⫺5 0 5 10
0 1 2 3 4 5
Time (sec)
x1
A phase portrait of the linear closed-loop system of Example 5.13.
Figura 8.12 Gráficas de x1 y x2 versus tiempo para el sistema linealizado Figura 8.13 Un plano de fase del sistema linealizado en lazo
en lazo cerrado. cerrado.

10

1 8
6
0.5 4
x1
2
0
x2 0
x1, x2

⫺2
⫺0.5
⫺4
x2
⫺1 ⫺6
⫺8
⫺1.5 ⫺10
0 1 2 3 4 5
⫺10 ⫺5 0 5 10
Time (sec)
x1

Figura 8.14 Gráficas de x1 y x2 versus tiempo para el sistema no lineal Figura 8.15 Un plano de fase del sistema no lineal en lazo
en lazo cerrado. cerrado.

Ejemplo Aeronave de Impulsión

Considere la dinámica original de la aeronave de impulsión presentada en clases anteriores:


132 8 Control Óptimo
   
z4 0

 z 5

 
 0 

dz  z 6
  0 
=
  + 1
 .
dt  −g sin θ − c
z 
m 4 m cos θ F1 − 1
m sin θ F 
2
 −g cos θ − c z5   1 sin θ F1 + 1 cos θ F2 
m m m
0 r
J F1

Los parámetros del sistema son m = 4kg, J = 0,0475kgm2 , r = 0,25m, g = 9,8m/s2 , c = 0,05Ns/m, que corresponden
a un modelo escalado del sistema. El punto de equilibrio para el sistema está dado por F1 = 0, F2 = mg y ze =
(xe , ye , 0, 0, 0, 0). Calculamos el sistema linealizado:
   
00 0 1 0 0 0 0
0 0 0 0 1 0 0 0
       
0 0 0 0 0 1 0 0
 1 , C = 1 0 0 0 0 0 , D = 0 0 .

A=  0 0 −g −c/m 0 0  , B =  0
  m 1  010000 00
0 0 0 0 −c/m 0  0 
m
00 0 0 0 0 r
J 0

Haciendo z = z − ze y v = u − ue , el sistema linealizado está dado por:

dz
= Az + Bv,
dt
y = Cz.

Se puede verificar que el sistema es alcanzable.


Para calcular el regulador cuadrático lineal para el sistema, escribimos la función costo como:
Z ∞
J= (zT Qz + vT Rv)dt,
0

donde z = z − ze y v = u − ue representan las coordenadas locales en torno al punto de equilibrio (ze , ue ). Comenzamos
con matrices diagonales para los costos del estado y la entrada:

Q = I6×6 , R = I2×2 .

Luego la ley de control de la forma v = −Kz será usada para derivar la ley de control en términos de las variables
originales:
u = v + ue = −K(z − ze ) + ue .
Como especificado en clases anteriores, los puntos de equilibrio corresponden a ue = (0, mg) y ze = (xe , ye , 0, 0, 0, 0).
La respuesta del controlador a un cambio de la función escalón para la posición deseada es mostrada en la Fig. 8.16a.
La respuesta puede ser afinada cambiando los pesos en la función de costo. La Fig. 8.16b muestra la respuesta en la
dirección x para diferentes selecciones del peso ρ , siendo que R = ρ I2 .
6.3. STATE FEEDBACK DESIGN 193
Position x , y [m]

Position x [m]

1 1

0.5 0.5
x ρ
y 0
0
0 2 4 6 8 10 0 2 4 6 8 10
Time t [s] Time t [s]
(a) Step response in x and y (b) Effect of control weight ρ
Figure 6.12: Step response for a vectored thrust aircraft. The plot in (a) shows the x and y
Figura 8.16 Respuesta alpositions
escalón of
de the
unaaircraft
aeronavewhen it is commanded
de impulsión. La Fig.toamove 1 mlas
muestra in each direction.
posiciones “x” eIn“y”
(b) de
thelax aeronave cuando se le
comanda moverse 1m en motion is shown for control weights
cada dirección. En Fig. b se muestra el 2
movimiento 4
x variando los pesos de control ρ
1, 10 , 10 . A higher weight of the input term in= 1, 10 2 , 104 . Un peso más

the costdefunction
grande en el término de control causes
la función costoa more
causa sluggish response.
una respuesa más lenta.

level. Since other processes may be running on the server, the web server must
adjust its parameters in response to changes in the load.
A block diagram for the control system is shown in Figure 6.13. We focus on
the special case where we wish to control only the processor load using both the
8.3 Regulador cuadrático lineal en estado estacionario - Horizonte infinito 133

8.3.3. Propiedades de robustez del diseño LQR

Un sistema de control que usa el regulador cuadrático lineal presenta las siguientes caracterı́sticas de robustez. Esto
es, los margenes de estabilidad de la matriz de funciones de transferencia en lazo L(s) = K(sI − A)−1 B (equivalente-
mente, las condiciones para que |1 + L(iω )| > 1) están dados por:

Margen de ganancia (GM): 12 < GM < 1.


Margen de fase (PM): PM > 60o .

La Fig. 8.17 presenta el diagrama de Nyquist de la función de transferencia de lazo, L(s), para un modelo simplifi-
cado de un satélite.    
01 0  
A= , B= , C = 1 0 , D = 0.
00 1

Figura 8.17 Diagram de Nyquist mostrando margenes de estabilidad del LQR.

8.3.4. Regla de Bryson para selección de matrices Q y R

Si se conocen los valores máximos de los estados finales, estados contı́nuos y entradas contı́nuas, luego se puede
aplicar la siguiente regla para la selección de matrices de ponderación F, Q y R:
1
Fii =
máx([xi (T )]2 )
1
Qii =
(T − to ) máx([xi (t)]2 )
1
Rjj =
(T − to ) máx([ui (t)]2 )
donde i = 1, 2, ..., n y j = 1, 2, ..., m. Si el tiempo no es importante en la aplicación evaluada luego el intervalo de tiempo
entre paréntesis, (T − to ), puede elegirse igual a 1. Los términos fuera de la diagonal de las matrices de ponderación
pueden ser usados si existe interacción entre los componentes de las entradas o estados.

Fuente: Capı́tulo 5 del libro Linear Systems Control de Elbert Hendricks et al, Springer, 2008.
Fuente: Capı́tulo 3 del libro Optimal Control de Lewis y Syrmos, Wiley, 1995.
Fuente: Capı́tulo 5 del libro Systems and Control de Stanislaw H. Zak, Oxford University Press, 2003.
134 8 Control Óptimo

Fuente: Capı́tulo 5 del libro Linear Systems Control - Deterministic and Stochastic Methods de Elbert Hendricks,
Ole Jannerup y Paul Sorensen, Springer, 2008.
Fuente: Capı́tulo 6 del libro Feedback Systems: An Introduction for Scientists and Engineers, de Karl J. Åström y
Richard M. Murray.
Capı́tulo 9
Estimación Óptima

9.1. Filtro de Kalman-Bucy

El regulador cuadrático lineal (con horizonte infinito) es una ley de control lineal por realimentación de estados
u = −Kx para el sistema:
ẋ = Ax + Bu, x(0) = xo
que minimiza la función de costo cuadrática:
Z ∞
J= (x(t)T Qx(t) + u(t)T Ru(t))dt.
0

La ley de control es llamada “óptima” con respecto a la función de costo J.


Uno se podrı́a preguntar si existe una técnica de diseño óptimo para un estimador de estados. Esto es, ¿será que
existe un abordaje para diseñar observadores que sea equivalente, en algún sentido, al regulador cuadrático lineal? Ası́,
dado el sistema observable:
ẋ = Ax
y = Cx,
se podrı́a definir el sistema dual:
Θ̇ = AT Θ +CT Γ ,
y diseñar un controlador LQR para minimizar la función de costo cuadrática:
Z ∞
(Θ (t)T QΘ (t) + Γ (t)T RΓ (t))dt.
0

Sin embargo, aún no queda claro como se podrı́a penalizar Θ y Γ en la función de costo.
A continuación consideraremos un sistema lineal observable:
ẋ = Ax + Bu + Gw
(9.1)
y = Cx + v,

en el que la dinámica está sujeta a disturbios aleatorios w y medidas aleatorias v. En paralelo al desarrollo del regulador
cuadrático lineal, Kalman examinó el siguiente problema del estimador óptimo: construir un observador de orden
completo que minimice el efecto combinado de los disturbios y el ruido, de tal forma que provea un estado “más
probable” del estado del sistema1 . Resolver este problema requiere de algo de información acerca de los procesos
aleatorios. Si los procesos son de media cero, procesos de ruido blanco Gaussiano, luego el problema de diseño del
estimador óptimo se convierte en el análogo perfecto del problema de diseño del control LQR.
Primero revisaremos algo de teorı́a de probabilidad.

1 De hecho, Kalman enunció el problema original para sistemas discretos. La versión contı́nua es atribuida a Kalman y a Bucy.

135
136 9 Estimación Óptima

9.1.1. Teorı́a de probabilidad

9.1.1.1. Escalares y vectores aleatorios

Considere un variable aleatoria escalar z con fz (ζ ) representando su función de densidad de probabilidad, definida
tal que: Z ∞
fz (ζ )d ζ = 1.
−∞

Entonces, fz (ζ ) provee la probabilidad de que el valor de z este en alguna región diferencial d ζ centrada en ζ . Una de
las funciones de densidad de probabilidad es la función de densidad de probabilidad Gaussiana, ver Fig. 9.1:
!
1 (ζ − ζ̄ )
fz (ζ ) = √ exp − , (9.2)
σ 2π 2σ 2

donde σ > 0 es llamada la desviación estándar.

Figura 9.1 Función densidad de probabiliadd Gaussiana

Dada una función de densidad de probabilidad, la media o valor esperado de una función g(z) es:
Z ∞
E{g(z)} = g(ζ ) fz (ζ )d ζ .

Por ejemplo, el valor medio de z es: Z ∞


z̄ = E{z} = ζ fz (ζ )d ζ .

La varianza de z es
E{(z − z̄)2 }.
La varianza indica la probabilidad de que el número aleatorio está cerca del valor medio. Una pequeña varianza indica
que la media es un buen estimado del número, mientras que una varianza grande indica que el valor real puede ser
bastante diferente de la media. Para la función de densidad de probabilidad Gaussiana (9.2), uno puede calcular que
la media es ζ̄ y la varianza es σ 2 . Nótese que, a medida que σ → 0, la función de densidad Gaussiana se aproxima al
impulso unitario en la media; luego se tiene que z = z̄ = ζ̄ .
Uno puede extender el concepto de variable escalar aleatoria a un vector de variables aleatorias, digamos z ∈ Rn .
En este caso, existe una función de densidad de probabilidad escalar fz (ζ ) de n variables aleatorias ζ = [ζ1 , ..., ζn ]T tal
que: Z ∞ Z ∞
... fz (ζ )d ζ1 ...d ζn = 1.
−∞ −∞

La función fz (ζ ) provee la probabilidad de que z se encuentra es algún hipercubo diferencial d ζ1 ...d ζn con centro en
ζ . La función de densidad de probabilidad Gaussiana para un vector de variables aleatorias es:
 
1 1
f z (ζ ) = q exp − (ζ − ζ̄ ) Pζ (ζ − ζ̄ )
T −1
(2π )n |Pζ | 2
9.1 Filtro de Kalman-Bucy 137

donde Pζ ≥ 0. El valor esperado de cualquier vector o matriz de funciones g(z) es


Z ∞ Z ∞
E{g(z)} = ... g(ζ ) fz (ζ )d ζ1 ...d ζn .
−∞ −∞

Por ejemplo, la media de z es Z ∞ Z ∞


z̄ = E{z} = ... ζ fz (ζ )d ζ1 ...d ζn .
−∞ −∞
La covarianza de z es la matriz n × n
E{(z − z̄)(z − z̄)T }.
Para la función de densidad Gaussiana, la media es z̄ = ζ̄ y la covarianza es Pζ .

9.1.1.2. Procesos aleatorios

Si la variable aleatoria depende del tiempo, esto es z(t), entonces es llamada proceso aleatorio. En general, la función
de densidad de probabilidad podrı́a también depender del tiempo, fz (ζ ,t), tal que la media y covarianza cambian
a medida que el proceso evoluciona. Si la función de densidad de probabilidad es constante; esto es, la media y
covarianza permanecen constantes, el proceso es llamado estacionario. Nótese que el término “estacionario” se refiere
solo a la función de densidad de probabilidad, y de ahı́ a los parámetros probabilı́sticos tales como media y covarianza.
El estado z, por otro lado, puede y generalmente si cambia en función del tiempo.
Dado que la variable aleatoria z(t) cambia en el tiempo, uno puede cuestionar si su valor en un instante dado del
tiempo se correlaciona con su valor en otro instante. Para cuantificar la pregunta, se define la autocorrelación de z(t)
en el tiempo τ como
Rz (τ ) = E{z(t + τ )zT (t)}.
La función de autocorrelación resulta de gran utilidad para encontrar patrones repetitivos dentro de una señal, como
por ejemplo, la periodicidad de una señal enmascarada bajo el ruido.
Si
Rz (τ ) = Pδ (τ ),
donde P es una matriz constante y δ (·) es la función delta de Dirac, entonces el valor de z(t) no está correlacionado
con el valor de z(t + τ ) para cualquier tiempo τ 6= 0. Tal proceso aleatorio es llamado ruido blanco. La razón de
este nombre es en referencia al contenido de energia del proceso siendo uniformemente distribuido sobre todas las
frecuencias. (Recuerde que el color blanco corresponde a la luz reflejada en todas las longitudes de onda). Si z(t) es
un proceso de media cero, entonces Pδ (0) es la covarianza del proceso; la matriz P es llamada matriz de densidad
espectral o simplemente matriz de covarianza.

9.1.1.3. Procesos aleatorios conjuntos

Ahora supongamos que existen dos procesos de vectores aleatorios z1 (t) y z2 (t). Adicionalmente a sus propias
funciones de densidad de probabilidad, estos dos procesos tienen una función de densidad de probabilidad conjunta
denotada por f12 (ζ1 , ζ2 ,t1 ,t2 ). Si f12 depende de t1 y t2 solo a través de su diferencia, t1 − t2 , entonces los procesos son
llamados de estacionarios conjuntos y escribimos f12 (ζ1 , ζ2 ,t1 − t2 ).
El valor esperado de una función (vector o matriz) g(z1 , z2 ) es
Z ∞ Z ∞ Z ∞ Z ∞ 
E{g(z1 (t1 ), z2 (t2 ))} = ... ... g(ζ1 , ζ2 ) f12 (ζ1 , ζ2 ,t1 − t2 )d ζ11 ...d ζ1n d ζ21 ...d ζ2n .
−∞ −∞ −∞ −∞

Un ejemplo de matriz de correlación cruzada es

Rz1 z2 (τ ) = E{z1 (t + τ )zT2 (t)}.

Los dos procesos se dice que son ortogonales o no correlacionados si Rz1 z2 (τ ) = 0 para todo τ .
138 9 Estimación Óptima

9.1.2. Problema del observador óptimo

Deseamos construir un término de inyección Φ (y− ŷ,t), tal que el estado estimado generado por el siguiente sistema
ficticio:
x̂˙ = Ax̂ + Bu + Φ (y − ŷ,t), (9.3)
converge al valor “más probable” del estado verdadero x en el sentido que la siguiente medida de la covarianza del
error del estimación sea minimizada:
J = tr(E{(x̃x̃T )}) = tr(P(t)),
donde P(t) = E{x̃x̃T } es la matriz de covarianza de x̃. Aqui, x̃ = x − x̂ es el estimado del error y el operador tr(·) rep-
resenta la “traza” de una matriz (la suma de los elementos de la diagonal). Asumiremos que la dinámica del estimador
(9.3) es inicializada mediante la elección x̂(0) = E{x(0)}; se asume que la media es conocida.
Resulta que cuando la elección de Φ es lineal e invariante en el tiempo:

Φ (y − ŷ,t) = L(y − ŷ).

La dinámica del error de observación resulta:


x̃˙ = ẋ − x̂˙ = (Ax + Bu + Gw) − (Ax̂ + Bu + L(y − ŷ))
= (A − LC)x̃ + Gw − Lv.

Note que el error de estimación x̃ en cualquier instante es debido sólo al disturbio aleatorio w(t) y el ruido aleatorio
v(t). Si estas dos señales aleatorias se desvanecen (y si x̂(0) = x(0)), luego el error permanecerı́a en cero por todo el
tiempo.
Resolviendo la dinámica del error, siendo que el sistema es lineal, se encuentra que la solución de x̃ es:
Z t
x̃(t) = e (A−LC)t
x̃(0) + e(A−LC)(t−τ ) (Gw − Lv)d τ .
0

El primer término e(A−LC)t x̃(0) depende del estimado inicial de los estados y no es aleatorio. También sabemos que
si A − LC es estable, luego e(A−LC)t x̃(0) → 0. Luego, para minimizar el error de estimación esperado, necesitamos
minimizar el error debido al segundo término. Descomponiendo el estimado del error en dos términos, uno que resulta
del disturbio y otro del ruido:
Z t
x̃(t) = e(A−LC)(t−τ ) (Gw − Lv)d τ
Z0 t Z t
(A−LC)(t−τ )
= e Gwd τ − e(A−LC)(t−τ ) Lvd τ = x̃w + x̃v .
0 0

La función de costo usando x̃ = x̃v + x̃w resulta

J = tr(E{(x̃w + x̃v )(x̃w + x̃v )T }).

Retornando con la definición del problema del observador óptimo, dada en la primera parte de esta clase, los procesos
de disturbio y ruido son de media cero y Gaussianos (pero no necesariamente estacionarios):

E{v(t)} = 0,

E{w(t)} = 0,
E{v(t + τ )vT (t)} = V δ (τ ),
E{w(t + τ )wT (t)} = W δ (τ ),
que corresponden a las siguientes funciones de densidad de probabilidad,
 
1 1
f (v) = p exp − vT V −1 v ,
(2π )n |V | 2
9.1 Filtro de Kalman-Bucy 139
 
1 1 T −1
f (w) = p exp − v W v ,
(2π )n |W | 2
donde V y W son las matrices de covarianza de v(t) y w(t) respectivamente. Si adicionalmente asumimos que v(t) y
w(t) no son correlacionados; esto es:

E{v(t + τ )wT (t)} = E{w(t + τ )vT (t)} = 0.

Luego la función de costo  en función de los componentes  resultantes x̃v y x̃w de x̃ está dada por:
J = tr E{x̃w x̃wT + x̃v x̃vT } = tr E{x̃w x̃wT )} + E{x̃v x̃vT } =
 Z tZ t Z tZ t 
e(A−LC)α Gw(t − α )wT GT (t − β )e(A−LC) β d α d β } + E{ e(A−LC)α Lv(t − α )vT LT (t − β )e(A−LC) β d α d β }
T T
tr E{
0 0 0 0

Z t Z t

(A−LC)α (A−LC)T β
J = tr e T
(GW G + LV L )e T
δ (β − α )d α d β
Z0t 0 
e(A−LC)β (GW GT + LV LT )e(A−LC)

= tr dβ
0

Recordando el caso del LQR, la función objetivo es:


Z t
J= (xT Qx + uT Ru)d τ ,
0

el sistema en lazo cerrado es descrito como:

ẋ = Ax + Bu = (A − BK)x.

La respuesta en el tiempo es:


x(t) = e(A−BK)t x(0).
Entonces el costo puede ser calculado como:
Z t
J= (xT Qx + (−Kx)T R(Kx))d τ
Z0 t
= xT (Q + K T RK)xd τ
Z0t
= (e(A−BK)τ x(0))T (Q + K T RK)e(A−BK)τ x(0)d τ
0 Z t 
(A−BK)T τ (A−BK)τ
= x(0) T e T
(Q + K RK)e d τ x(0).
0

Y minimizar J es equivalente al problema de minimizar:


Z t
e(A−BK) τ (Q + K T RK)e(A−BK)τ d τ .
T

Luego, minimizar J para el observador óptimo es equivalente al problema de minimizar:


Z ∞
J= (Θ T GW GT Θ + Γ T V Γ )dt,
0

sujeto a la dinámica:
Θ̇ = AT Θ +CT Γ .
Aqui, la matriz W representa la matriz de covarianza de w(t) y la matriz V representa la matriz de covarianza de v(t).
Por definición, W y V son definidas positiva.
Como ya sabemos de la teorı́a LQR, la entrada de minimización hacia el sistema dual es

Γ = −LT Θ ,
140 9 Estimación Óptima

donde
LT = V −1CPT ,
y PT es la solución única semidefinida positiva de la ecuación de Riccati algebraica:

AP + PAT − PCT V −1CP + GW GT = 0.

La ganancia del observador, definido arriba, minimiza la covarianza del error de estimación. En un sentido cuantificable,
la ganancia balancea entre el error de estimación debido a la incertezas en la planta (representadas por el disturbio
w(t)) y la incerteza de medida (representada por el ruido desconocido v(t)). Si la covarianza del disturbio es grande
en relación a la covarianza del ruido, entonces la ganancia resultante del observador L será grande. Esto significa que
el estado estimado dependerá más fuertemente del error de medida y − ŷ. Por otro lado, si la covarianza del disturbio
es pequeña en relación a la covarianza del ruido, entonces la ganancia del observador G será pequeña. Nótese, sin
embargo, que L garantiza que A − LC sea Hurwitz.
El filtro de Kalman aplicado a procesos estocásticos contı́nuos en el tiempo se puede resumir en el siguiente teorema:
Teorema 3. (Kalman-Bucy, 1961). El estimador óptimo tiene la forma de un observador lineal:

d x̂
= Ax̂ + Bu + L(y −Cx̂),
dt
donde L(t) = P(t)CT V −1 y P(t) = E{(x(t) − x̂(t))(x(t) − x̂(t))T } y satisface:

dP
= AP + PAT − PCT V −1CP + GW GT , P(0) = E{x(0)xT (0)}.
dt
Cuando el sistema es estacionario y si P(t) converge, la ganancia del observador es constante:

L = PCT V −1 donde AP + PAT − PCT V −1CP + GW GT = 0.


Nota: El filtro de Kalman fue originalmente elaborado para sistemas discretos, ver Optimal Estimation of Dynamic
Systems de John Crassidis y John Junkins, Capı́tulo 5.

9.2. Control LQG

Regreso a los origenes del problema de control H2 :

ẋ = Ax + Bu + w
y = Cx + v,

donde w y v son procesos aleatorios Gaussianos con media cero y covarianzas W y V .


El problema de control estocástico LQG consiste en:

encontrar el compensador C(s) que minimiza


Z ∞
J = E{ [(y − r)T Qy (y − r) + uT Ru]dt}.
0
Asumir por simplicidad que la referencia es cero, r = 0 (de otra forma, se traslada el estado apropiadamente).
Teorema El compensador óptimo tiene la forma

x̂˙ = Ax̂ + Bu + L(y −Cx̂)


u = K(x̂ − xd ),
9.2 Control LQG 141

donde L es la ganancia del observador óptimo ignorando el controlador por realimentación de estados y K es la ganancia
del controlador por realimentación de estados ignorando el disturbio w y ruido v.
Esto es llamado el principio de separación (para control H2 ). ⋄
Nota: El compensador óptimo simplificado viene a ser:

x̂˙ = (A − LC)x̂ + Bu + Ly
u = −K(x̂ − xd ),

9.2.1. Ejemplo: Aeronave de impulsión

Considere la dinámica original de la aeronave de impulsión presentada en clases anteriores, escrita en la forma
espacio de estados como:    
z4 0

 z5  
  0 

dz   z6   0 
=  +  .
dt  −g sin θ − m z4   m cos θ F1 − m sin θ F2 
c   1 1

 −g cos θ − c z5   1 sin θ F1 + 1 cos θ F2 
m m m
0 r
J F1

Los parámetros del sistema son m = 4kg, J = 0,0475kgm2 , r = 0,25m, g = 9,8m/s2 , c = 0,05Ns/m, que corresponde
a un modelo escalado del sistema. El punto de equilibrio para el sistema está dado por F1 = 0, F2 = mg y ze =
(xe , ye , 0, 0, 0, 0). Para derivar el sistema linealizado cerca del punto de equilibrio, calculamos el sistema linealizado:
   
00 0 1 0 0 0 0
0 0 0 0 1 0 0 0
   
0 0 0 0 0 1  0 0
A= 
,
 B= 1 

.
 0 0 −g −c/m 0 0   m 01 
0 0 0 0 −c/m 0  0 
m
00 0 0 0 0 r
J 0

Haciendo z = z − ze y s = u − ue , el sistema linealizado está dado por:

dz
= Az + Bs.
dt

9.2.1.1. Observador óptimo (Filtro de Kalman-Bucy)

Considerando sólo la dinámica lateral del sistema, esto es, solo los subsistemas cuyos estados estan dados por
z = (x, θ , ẋ, θ̇ ). Para diseñar el filtro de Kalman debemos incluir la descripción de los procesos aleatorios de disturbio
y ruido de medida. Entonces, aumentando el sistema para que tenga la forma

ż = Az + Bs + w,
y = Cz + v,

donde w representa la fuente de disturbio (modelada como un proceso Gaussiano de media igual a cero) y v representa
el ruido de media (modelado como un proceso Gaussiano de media igual a cero). La matriz de salida C corresponde a
una sola señal medida x.
Para este ejemplo, escogemos que los disturbios de proceso wi , i = 1, ..., n, son disturbios independientes con covar-
ianza dada por Wii = 0,1, Wi j = 0, i 6= j. El ruido de medida para x − xe es una variable aleatoria que modelamos con
una covarianza V = 10−4 .
Sea Z ∞
JF = (Θ T W Θ + Γ T V Γ )dt.
0
142 9 Estimación Óptima

Encontraremos una (pseudo) ley de control lineal por realimentación de estados Γ = −LT Θ que minimice JF sujeto al
sistema dual
Θ̇ = AT Θ +CT Γ .
Usando los parámetros mencionados como indicado arriba, se puede calcular la ganancia de Kalman resultante.
Resolviendo la ecuación de Riccati, se define la matriz Hamiltoniana asociada como
 
0 0 0 0 −104 0 0 0
 0
 0 −9,8 0 0 0 0 0 

 T 
 1
 0 −0,0125 0 0 0 0 0 

A −CT V −1C  0 1 0 0 0 0 0 0 
H= =  .
−W −A  −0,1 0 0 0 0 0 −1 0  
 0 −0,1 0 0 0 0 0 −1 
 
 0 0 −0,1 0 0 9,8 0,0125 0 
0 0 0 −0,1 0 0 0 0

Calculando los autovalores y autovectores de H, posteriormente identificando los autovectores correspondientes a los
autovalores con parte real negativa, definiendo WF y ZF , y sabiendo que PF = ZF WF−1 se obtiene

 
0,0037 −0,0047 0,0185 −0,0032
 −0,0047 0,0768 −0,1703 0,0598 
P= . (9.4)
 0,0185 −0,1703 0,6390 −0,1170 
−0,0032 0,0598 −0,1170 0,1482

Entonces  
37,0
 −46,9 
 185  .
L=  (9.5)
−31,6
El desempeño del estimador es mostrado en la Fig. 9.2(a). Observamos que a pesar de que el estimador converge
a los estados del sistema, se presenta bastante sobreimpulso en los estados estimados, lo que puede llevar a un bajo
desempeño en un sistema en lazo cerrado.
Para mejorar el desempeño del estimador, exploramos el impacto de aumentar una nueva señal medida. Suponiendo
que en lugar de sólo medir la posición de salida x, también medimos la orientación de la aeronave θ . La matriz de
salida resulta    
1000 v
y= z+ 1 ,
0100 v2
y si asumimos que v1 y v2 son independientes fuentes de ruido, cada uno con covarianza Vi = 10−4 , luego la matriz de
ganancias del estimador óptimo resulta  
32,6 −0,150
 −0,150 32,6 
L=  32,7 −9,79  .
 (9.6)
0,0033 31,6
Estas ganancias proveen buena inmunidad al ruido y alto desempeño, como mostrado en la Fig. 9.2(b).

9.2.1.2. Regulador cuadrático lineal

Se puede verificar que el sistema es alcanzable. Luego, para calcular el regulador cuadrático lineal para el sistema,
escribimos la función costo como: Z ∞
J= (ẑT Qẑ + sT Rs)dt.
0
Comenzamos con matrices diagonales para los costos del estado y la entrada:
218 CHAPTER 7. OUTPUT FEEDBACK
9.2 Control LQG 143

0.1 0.1

States zi [mixed units]

States zi [mixed units]


0 0

−0.1 −0.1

−0.2 x −0.2 x
θ θ
−0.3 xd −0.3 xd
θd θd
−0.4 −0.4
0 0.5 1 1.5 2 0 0.5 1 1.5 2
Time t [s] Time t [s]
(a) Position measurement only (b) Position and orientation
Figure 7.9: Kalman filter design for a vectored thrust aircraft. In the first design (a) only
Figura 9.2 Diseño del filtro de Kalman para la aeronave de impulsión. En el primer diseño (a) sólo se mide la posición lateral de la
the lateral position of the aircraft is measured. Adding a direct measurement of the roll
aeronave. Aumentando una medida directa del ángulo de rotación produce un mejor observador (b). Las condiciones iniciales para ambas
angle produces a much better observer (b). The initial condition for both simulations is
simulaciones son (0,1, 0,0175, 0,01, 0)
0 1 0 0175 0 01 0 .
 
having covariance R 10 4 .Using 1 0 0 the
0 same parameters as before, the resulting
Kalman gain is given by Q =   0 1 0 0
, R = 100.
0 0 1 0
0001
37 0
L
46 9
185
Usando estas matrices, se puede calcular la ganancia del regulador por realimentación de estados resultante. Resolvien-
31 6 como
do la ecuación de Riccati, se define la matriz Hamiltoniana asociada
The performance of the estimator

0 0is shown 1 in Figure
0 0 7.9a.0 We0see that while0 the

estimator converges to the system
0 0 state, it contains
0 significant
1 0 0 overshoot
0 in the
0 state

estimate, which can lead to
 poor
0 performance
−9,8 −0,0125 in0a closed
0 0 loop setting.−0,0013 
−0,00006 
To improve
A −BR Bthe
−1 performance
T
 
 0 0of the estimator,
0 we explore the impact
0 0 0 −0,0013 −0,0277  of addinga
new
H = output measurement.
−Q −AT
= Suppose
 −1 0that instead

0 of0measuring
0 0 just0the output0position
.

x , we also measure the orientation
 0 −1of the aircraft

0 .
0 0 0The output becomes
9,8 0


 
1 00 0 −1
0 0 −1 0
 0 0,0125 0 
1
y 0 0 z −1 0 −1
0 1 0 0
0
2
0 0

and if we assume
Calculando los autovalores that 1 and
y autovectores
2 are independent noise sources each
de H, posteriormente
−1with covariance
identificando los autovectores correspondientes a los
R i 10 4 , then the optimal estimator
autovalores con parte real negativa, definiendo WK y Z K , y gain matrix becomes
sabiendo que PK = Z W
K K se obtiene
 
K = −0,31632 6 −0,824
9,198 0 1505,955 . (9.7)
0 150
Luego la ley de control de la forma s = −KLẑ será usada para derivar la ley de control en términos de las variables
32 6
originales:
32 7 9 79
0 0033 31 6
u = s + ue = −K(ẑ − ze ) + ue .
Como especificadoThese gainsanteriores,
en clases provide good immunity
los puntos to noise and
de equilibrio high performance,
corresponden a ue = 0 yaszeillustrated
= (xe , 0, 0, 0).
in Figure 7.9b.

9.2.1.3. Control LQG

El compensador óptimo LQG resulta:


     
32,6 0,15 1 0 0 32,6 −0,150
 0,15 −32,6 0 1   0   −0,150 32,6 
ẑ˙ = 
 −32,7 −0,01 −0,0125 0  ẑ +  0,25  u +  32,7
    y
−9,79 
−0,0033
 −31,6 0 0  5,263 0,0033 31,6
u = − −0,316 9,198 −0,824 5,955 ẑ + Kze ,

09.
144 9 Estimación Óptima

9.2.2. Compensador óptimo LQG podrı́a resultar en un sistema en lazo cerrado inestable

Considere el problema LQG con la siguiente dinámica:


        
ẋ1 1 1 x1 0 1
= + u+ w
ẋ2 0 1 x 2 1 1
   (9.8)
1 x1
y= +v
0 x2
 T
El vector x = x1 x2 es el vector de estados, u es la entrada de control, y es la salida medida y w y v son los ruidos
blancos Gaussianos independientes con intensidades σ ≤ 0 y 1 respectivamente. El ı́ndice de desempeño asociado
está dado por:  
Z
1 T
J = E lı́m (ρ (x1 + x2 ) + u )dt
2 2
T →∞ T 0

donde E(·) es el operador valor esperado y ρ es un parámetro real no negativo.


Extrayendo las siguientes matrices del problema con el fin de simplificar cálculos posteriores:
     
11 0 1
A= , B1 = , B2 = , B3 = 0
01 1 1
 
C1 = 1 0 , D11 = 0, D12 = 0, D13 = 1

9.2.2.1. LQR

El problema de control LQR queda definido por la minimización del siguiente funcional de desempeño:
Z ∞
JLQR = (ρ (x1 + x2 )2 + u2 )dt
0

siendo que:    
ẋ1 x1
=A + B1 u
ẋ2 x2
La ecuación de Riccati que resuelve el problema de control LQR está dada por:

PA + AT P − PBR−1 BT P + Q = 0
   
10 T 11
T
PA + A P − PB1 B P+ρ =0
01 1 11
            
p11 p12 11 10 p11 p12 p11 p12 0   p11 p12 11
+ − 01 +ρ =0
p12 p22 01 11 p12 p22 p12 p22 1 p12 p22 11
   
2p11 − p212 + ρ p11 + 2p12 − p12 p22 + ρ 00
=
p11 + 2p12 − p12 p22 + ρ 2p12 + 2p22 − p222 + ρ 00
Resolviendo para cada elemento de la matriz P se obtiene:
 
21
P=α
11

donde α = 2 + 4 + ρ . Luego la ganancia del LQR es:
 
K = R−1 BT1 P = α 1 1
9.2 Control LQG 145

9.2.2.2. Filtro de Kalman

El problema del observador óptimo queda definido por la minimización del siguiente funcional de desempeño:
Z ∞
JFK = (θ T B2 σ BT2 θ + γ T 1γ )dt
0

siendo que:    
θ̇1 θ1
= AT +C1T γ
θ̇2 θ2
La ecuación de Riccati que resuelve el problema del observador óptimo está dada por:

PF AT + APF − PF CT V −1CPF + B2W BT2 = 0

PF AT + APF − PF C1T ∗ 1 ∗C1 PF + σ B2 BT2 = 0


              T
p11 p12 10 11 p11 p12 p p 1   p11 p12 1 1
+ − 11 12 10 +σ =0
p12 p22 11 01 p12 p22 p12 p22 0 p12 p22 1 1
   
2p11 + 2p12 − p211 + σ p22 + 2p12 − p12 p11 + σ 00
=
p22 + 2p12 − p12 p11 + σ 2p22 − p212 + σ 00
Resolviendo para cada elemento de la matriz P se obtiene:
 
11
PF = β
12

donde β = 2 + 4 + σ . Luego la ganancia del filtro de Kalman es:
 
1
L = V −1 PC1T = β
1

9.2.2.3. LQG

Luego, el compensador óptimo está dado por:

x̂˙ = Ax̂ + B1 u + L(y −C1 x̂)


u = −K x̂

Reescribiendo lo anterior se tiene:  


A − B1 K − LC1 L
k(s) = ,
−K 0
donde  
1−β 1
A − B1 K − LC1 =
−(α + β ) 1 − α

Evaluando −K(sI − (A − B1 K − LC1 ))−1 L, se obtiene:

αβ (1 − 2s)
k(s) =
s2 + (α + β − 2)s + 1 + αβ

9.2.2.4. Estabilidad del sistema en lazo cerrado

Considerando el sistema en lazo cerrado mostrado en la Fig. 9.3, en donde la ganancia κ posee valor nominal igual
a +1.
146 9 Estimación Óptima

Realizando los cálculos se muestra que solo los terminos lineal y constantes del polinomio caracterı́stico del sistema
en lazo cerrado son funciones de κ y que esos terminos estan dados por:

β + α − 4 + 2(κ − 1)αβ y1 + (1 − κ )αβ

respectivamente. Una condición necesaria para estabilidad es que ambos terminos sean positivos (criterio de estabilidad
de Routh-Hurwitz?) Esta condición es satisfecha para el caso del lazo nominal κ = 1. Sin embargo, para α , β = 4 (en
otras palabras, ρ = 0 y σ = 0), la condición necesaria de estabilidad es

1 1
a− < κ < 1+ .
8 16
Esta situación empeora si α y β son grandes. Para el caso de β = α , la condición necesaria de estabilidad se torna en:
2 1 1
1+ − < κ < 1+ 2.
α2 α α
Luego, el margen de ganancia puede ser arbitrariamente pequeño si se selecciona α y β (equivalentemente, ρ y σ ) lo
suficientemente grandes. Asi, concluimos que la optimalidad del LQG no garantiza robustez en estabilidad!
La robustez en estabilidad de un sistema en lazo cerrado LQG debe ser chequeada a posteriori. Este inconveniente es
una propiedad fundamental de los métodos asociados a minimización de normas cuadráticas y fue una de las razones
principales por las que se inicia la investigación en abordajes que minimizan la norma infinita. La robustez es un
objetivo clave de la realimentación que siempre debe ser analizado.

w v
-
-?
- plant
f -
- κ
y
u s

k ¾

Figura 9.3 Sistema en lazo cerrado LQG con ganancia variable

Fuente: Applied Optimal Control, de A.E. Bryson, Jr. y Y.-C.Ho, Hemisphere Publishing, 1975.
Fuente: Aircraft Control and Simulation, de B.L. Stevens y F.L. Lewis, John Wiley & Sons, NJ, Second Edition,
2003.
Fuente: Advanced Control System Design, de B. Friedland, Prentice-Hall, 1996.
Fuente: Capı́tulo 7 del libro Feedback Systems: An Introduction for Scientists and Engineers, de Karl J. Åström y
Richard M. Murray.
Fuente: Linear Robust Control, de M. Green y D. Limebeer, Pearson Education, Inc.
Capı́tulo 10
Tópicos especiales de control

10.1. Problema de Generación de Trayectoria


Lecture 1-1: Trajectory Tracking and Gain Scheduling

CDS 110b, 7 Jan 08

10.1.1. Introducción

Dado un sistema de control no lineal:


ẋ = f (x, u) x ∈ Rn , u ∈ R p
y = h(x) y ∈ Rq

y una trayectoria de referencia r(t) ∈ Rq , encontrar una ley de control u = α (x, r) tal que:

limt→∞ (y(t) − r(t)) = 0.

10.1.1.1. Abordaje:

Diseño de dos grados de libertad

Figura 10.1 Generación de trayectoria

10.1.1.2. Generación de trayectoria:

Encontrar una trayectoria posible (satisface dinámica)

ẋd = f (xd , ud )
→ xd (r), ud (r)
r = h(xd )

147
148 10 Tópicos especiales de control

10.1.1.3. Seguimiento de trayectoria:

Encontrar u = α (x̂, xd , ud ) tal que el sistema en lazo cerrado sea estable, con desempeño deseado.

10.1.1.4. Estimación:

Determinar x̂ a partir de y, u.

10.1.1.5. Revisión:

Seguimiento de trayectoria para sistemas lineales:

ẋ = Ax + Bu u = −Kx + kr r
y = Cx r = constante

1. Escoger K para la dinámica en lazo cerrado deseada (ubicación de autovalores, LQR, etc).
2. Escoger kr que provee el valor deseado a la salida.

ẋ = Ax + Bu = (A − BK)x + Bkr r

Punto de equilibrio xe = −(A − BK)−1 Bkr r


ye = −C(A − BK)−1 Bkr r = |{z}
r
deseado
1
→ kr = −
C(A − BK)−1 B

Este abordaje trabaja mediante estabilización del origen y luego usando kr r para “empujar” el sistema hacia xe .
Funciona porque el sistema es lineal.

10.1.2. Formulación alternativa:

Resolver directamente para el punto de equilibrio. El objetivo es encontrar una ley de control tal que la salida
limt→∞ y(t) = yd = para alguna salida deseada r. Para resolver este problema, primero definimos el estado deseado
correspondiente limt→∞ x(t) = xd y entrada limt→∞ u(t) = ud para alcanzar r. Obviamente, xd , ud y yd deben satisfacer
las ecuaciones de estado y salida; esto es
ẋd = Axd + Bud
yd = Cxd + Dud
Siendo que xd es una constante, ẋd = 0, tenemos:

0 = Axd + Bud
yd = Cxd + Dud

Dado yd , resolvemos las ecuaciones arriba para xd y ud . Si no hay solución para xd y ud , entonces el objetivo de
limt→∞ y(t) = yd no se puede alcanzar. Entonces, asumamos que la solución existe; esto es, la ecuación lineal:
    
0 A B xd
=
yd C0 ud

tiene solución. Para un sistema de una entrada una salida, xd y ud puede ser resuelto como
10.1 Problema de Generación de Trayectoria 149
   −1  
xd AB 0
= → u = −K(−x − xd ) + ud
ud C0 yd | {z } |{z}
estabiliza pto equilibrio entrada nominal

A seguir definimos las nuevas variables como:

∆ x(t) = x(t) − xd
∆ u(t) = u(t) − ud
∆ y(t) = y(t) − yd

Derivar las ecuaciones espacio de estado para ∆ x(t), ∆ u(t) y ∆ y(t) como sigue:

∆ ẋ = ẋ − ẋd = ẋ = Ax + Bu = A∆ x + B∆ + Axd + Bud = A∆ x + B∆ u


∆ y = y − yd = Cx + Du −Cxd − Dud = C∆ x + D∆ u

Luego, las ecuaciones de estado y salida para ∆ x, ∆ u, y ∆ y son dadas por los mismas matrices A, B, C y D.

∆ ẋ = A∆ x + B∆ u
∆ y = C∆ x + D∆ u

Suposición fundamental: (xd , ud ) es un punto de equilibrio para r constante.

10.1.2.1. Ejemplo

Considerar el siguiente sistema modelado como un motor DC.


      
θ̇ 0 1 0 θ 0
 ω̇  =  0 0 4,438   ω  +  0  v
i̇ 0 −12 −24 i 20

donde los estados θ , ω , i son la posición del ángulo, la velocidad angular y la corriente, respectivamente; la entrada v
es el voltaje aplicado y la salida y es la posición del ángulo. Nuestro objetivo es llevar el motor a θd = 10 y a la vez
minimizar Z ∞
J(x) = (9(θ − θd )2 + v2 )d τ .
0
Primero encontramos xd y ud como:
     −1    
θd  −1 0 0 1 0 0 0 10
 ωd  A B  0   0 0 4,438 0   0   0 
 =  =
 0   0 −12 −24 20   0  =  0 
    
 id  CD
vd 10 1 0 0 0 10 0

El problema del LQR resulta:       


∆ θ̇ 0 1 0 ∆θ 0
 ∆ ω̇  =  0 0 4,438   ∆ ω  +  0  ∆ v
∆ i̇ 0 −12 −24 ∆i 20
 
900
Q = 0 0 0
000
R=1
La solución usando el método del autovector es:
150 10 Tópicos especiales de control
 
4,438 0,9145 0,1500
P =  0,9145 0,2550 0,0440 
0,1500 0,0440 0,0076
 
  ∆θ
∆ v∗ = −3,00 −0,8796 −0,1529  ∆ ω 
∆i
Luego el control óptimo del problema original es:

v∗ = ∆ v∗ + vd  
  ∆θ
= −3,00 −0,8796 −0,1529  ∆ ω 
 ∆i 
  θ − θd
= −3,00 −0,8796 −0,1529  ω − ωd 
 i− id  
  θ   θd
= −3,00 −0,8796 −0,1529  ω  − −3,00 −0,8796 −0,1529  ωd 
i  id 
  θ   10
= −3,00 −0,8796 −0,1529  ω  − −3,00 −0,8796 −0,1529  0 
i   0
  θ
= 30 + −3,00 −0,8796 −0,1529  ω 
i

10.1.3. Programación de ganancias (GAIN SCHEDULING)

Sea el sistema no lineal con trayectoria posible:

ẋ = f (x, u) ẋd = f (xd , ud )


y = h(x) r(t) = h(xd )

Para estabilizar la trayectoria de referencia, observar el error e = x − xd , luego:

ẋ = f (x, u)
ẋd = f (xd , ud )

ė = f (x, u) − f (xd , ud ) = f (e + xd , v + ud ) − f (xd , ud ) = F(e, v, xd , ud )


| {z }
termino no lineal que varia en el tiempo

A continuación trataremos a xd , ud como si fuesen parámetros en el controlador y linealizaremos en torno a (e, v) =


(0, 0).
∂ F ∂ f
ė = Ad e + Bd v Ad = =
∂ e (0,0) ∂ x (xd ,ud )
∂F ∂ f
Bd = =
∂v ∂u
(0,0) (xd ,ud )

Ahora estabilizar e = 0 mediante elección de Kd tal que (Ad − Bd Kd ) sea Hurwitz.

u = −Kd (xd , ud )(x − xd ) + ud


10.1 Problema de Generación de Trayectoria 151

10.1.3.1. Observaciones

1. No asumir que (xd , ud ) son valores de equilibrio, sólo que son valores que satisfacen la dinámica. Punto de equilibrio
resulta en el caso especial de r =constante.
2. De forma más general se puede programar las ganancias obtenidas para cualquier parámetro, o aún el estado:

u = Kd (xd , ud )(x − xd ) + ud Usar con cuidado (NL!)

3. Problema: Linealizar en torno al punto de equilibrio deseado, luego linealización no trabajará muy bien lejos de este
punto.
4. En la practica, implementar la programación de ganancias (gain scheduling) a través de interpolación:

Figura 10.2 Muestra de implementación

5. En teorı́a, no se puede decir mucho en relación a como este método trabaja. Trabaja bien si (xd , ud ) varian lo
suficientemente despacio. Trabaja bien en practica, aún si la variación de (xd , ud ) es rápida.

10.1.3.2. Ejemplo: Control de dirección con programación de la velocidad - modelo de bicicleta

Considerar el vehiculo con dos ruedas mostrado en la Fig. 10.3. Para propósitos de direccionamiento estamos in-
teresados en un modelo que describe como la velocidad del vehiculo depende del ángulo de dirección δ . Para ser
especı́ficos, considerar la velocidad v del centro de masa, una distancia a a partir de la rueda trasera, y sea b la distancia
entre ruedas. Sean x e y las coordenadas del centro de masa, θ es el ángulo de orientación y α es el ángulo entre la
velocidad v y la linea de centros del vehiculo. Dado que b = ρ tan δ y α = 0 (punto de referencia está en la rueda
trasera), asumiendo que las ruedas ruedan sin resbalarse, encontramos que el movimiento del centro de masa está dado
por:
dx
= v cos θ
dt (10.1)
dy
= v sen θ
dt
Para ver como el ángulo θ es influenciado por el ángulo de dirección, observamos, de la Fig. 10.3, que el vehiculo rota
con la velocidad angular v/ra en torno al punto O. Entonces:

dθ v v
= = tan δ (10.2)
dt ra b
Las ecuaciones (10.1) y (10.2) pueden ser usadas para modelar la bicicleta bajo la suposición que no hay resbalamiento
entre ruedas y el piso. La suposición de no resbalamiento puede ser relajada adicionando una variable de estado extra,
dando asi un modelo más realista. Tal modelo también describe la dinámica de direccionamiento de barcos asi como la
dinámica de alabeo de aeronaves y misiles.
Las ecuaciones de movimiento no lineales del sistema pueden ser descritas como:
   v cos θ 
x
d    v sen θ 
y = v  = f (x, y, θ , v, δ )
dt tan δ
θ
| {z } |{z}
b x u
152 10 Tópicos especiales de control

donde x, y y θ son la posición y la orientación del centro de masa del vehiculo, v es la velocidad de la llanta trasera, b
es la distancia entre la rueda delantera y trasera y δ es el ángulo de la rueda delantera.

θ
y
δ

δ
α
α

x
Figura 10.3 Dinámica de la dirección de la bicicleta. El ángulo direccional es δ y la velocidad del centro de masa tiene un ángulo α relativo
al eje longitudinal del vehiculo igual a cero. La posición de la bicicleta está dada por (x, y) y la orientación por θ . La distancia entre ruedas
es b, el centro de masa está ubicado a una distancia a hacia adelante de la rueda trasera.

Estamos interesados en el movimiento del vehiculo en linea recta horizontal con velocidad fija v = vr 6= 0, entonces:

xd = vr t 
yd = yr x
 d
θd = 0 
vd = vr
ud
δd = 0

Notar que (xd , yd , θd , vd , δd ) no son un punto de equilibrio, pero si satisfacen las ecuaciones de movimiento.
Definiendo el error, se tiene lo siguiente para la dinámica del error:

ex = x − vr t ėx = v cos θ − vr ėx = (ev + vr ) cos eθ − vr = F1 (ex , ey , eθ , ev , eδ )


ey = y − yr ėy = v sen θ ėy = (ev + vr ) sen eθ = F2 (ex , ey , eθ , ev , eδ )
v ev + vr
eθ = θ ėθ = tan δ ėθ = tan eδ = F3 (ex , ey , eθ , ev , eδ )
b b
ev = v − vr
eδ = δ

Linealizando con respecto a (ex , ey , eθ , ev , eδ ) = (0, 0, 0, 0, 0), se tiene:


 
∂ F1 ∂ F1 ∂ F1
 ∂ ex ∂ ey ∂ eθ   

 ∂ F2 ∂ F2 ∂ F2 
 0 0 −(ev + vr ) sen eθ
Ad = 
 ∂ ex ∂ ey ∂ eθ 
 =  0 0 (ev + vr ) cos eθ 
  00 0 ex = 0, ey = 0, eθ = 0
 ∂ F3 ∂ F3 ∂ F3 
ev = 0, eδ = 0
∂ ex ∂ ey ∂ eθ ex = 0, ey = 0, eθ = 0
ev = 0, eδ = 0

∂ F1 ∂ F1
 


 ∂ ev ∂ eδ

 cos eθ 0
 ∂F ∂ F2 
 2   sen eθ 0 
Bd =  =1
 ∂ ev ∂ eδ
 ev + vr 1 

 ∂F ∂ F3  tan eδ e = 0, e = 0, e = 0
3 b b sec2 eδ x y θ
∂ ev ∂ eδ
ex = 0, ey = 0, eθ = 0 ev = 0, eδ = 0
ev = 0, eδ = 0
Luego, se obtiene que:
10.2 Filtro de Kalman Extendido 153
   
00 0 1 0
0 0 
Ad =  0 0 vr  , Bd =  v 
r
00 0 0
b
o, más especı́ficamente:
      1 0 
ėx 00 0 ex  
 ėy  =  0 0 vr   ey  +  0 0  ev
 v 
r eδ
ėθ 00 0 eθ 0
b
Resolviendo el problema de control para este sistema (ubicación de polo, LQR), se tiene que:
 
  ex
ev
= −Kd  ey 


 
  x − vr t  
v v
= −Kd y − yr + r
 
δ 0
θ
Una opción para el cálculo de Kd puede ser:

ėx = ev ev = −λ1 ex
b
ėy = vr eθ eδ = − (a1 ey + a2 eθ ) ,
vr
vr
eθ = eδ
b
que posiciona los polos del sistema en lazo cerrado en λ1 y las raices de s2 + a1 s + a2 = 0. Luego el controlador en
coordenadas originales queda como:la posición del ángulo
  
 
v
λ1 0 0 x − vr t  
v
=−  a1 b a2 b   y − yr + r

δ 0 0
vr vr θ | {z }
| {z } | {z } ud
Kd e

10.2. Filtro de Kalman Extendido

Una amplia clase de problemas de estimación involucra modelos no lineales. Por muchas razones, estimación de
estados para sistemas no lineales es considerablemente más difı́cil y admite una gran variedad de soluciones en com-
paración al problema lineal. Considerando el siguiente modelo no lineal real con medidas de tiempo contı́nuas:

ẋ(t) = f (x(t), u(t)) + G(t)w(t),


(10.3)
y(t) = h(x(t)) + v(t)

donde f (x(t), u(t),t) y h(x(t),t) son asumidas contı́nuas y diferenciables, y w(t) y v(t) son procesos de ruido Gausiano
de media cero con covarianzas dadas por:

E{w(t)wT (τ )} = W δ (t − τ ) (10.4)

E{v(t)vT (τ )} = V δ (t − τ ) (10.5)
E{v(t)wT (τ )} = 0 (10.6)
La ecuación (10.6) implica que v(t) y w(t) no estan corelacionados. Además, la entrada de control u(t) es una cantidad
determinı́stica. El problema con un modelo no lineal es que una entrada Gausiana no necesariamente produce una
salida Gausiana (como en el caso lineal).
154 10 Tópicos especiales de control

Existen muchas formas de producir una version linealizada del filtro de Kalman. A continuación consideraremos el
abordaje más común, llamado filtro de Kalman Extendido. El filtro de Kalman extendido, a pesar de no ser precisamente
“óptimo”, ha sido satisfactoriamente aplicado a varios sistemas no lineales en el transcurso de los años. El concepto
fundamental de este filtro involucra la noción de que el estado real está lo suficientemente cerca del estado estimado.
Luego, la dinámica del error puede ser representado de forma bastante exacta mediante una expansión en series de
Taylor linealizada de primer orden.
A continuación omitiremos la dependencia con respecto al tiempo de las señales para simplicar la notación. Con-
siderando el observador no lineal como descrito a seguir:

x̂˙ = f (x̂, u) + L(y − h(x̂)) (10.7)

La dinámica del error de estimación, e = x − x̂, está definida por:

ê˙ = f (x, u) − f (x̂, u) + Gw − L(h(x) − h(x̂)) − Lv


= F(e, x̂, u) + Gw − LH(e, x̂) − Lv (10.8)
| {z }
E(e, x̂, u, w, v)

donde:
F(e, x̂, u) = f (e + x̂, u) − f (x̂, u)
H(e, x̂) = h(e + x̂) − h(x̂)
Linealizando ahora en torno al estimado actual x̂, e = 0, y los ruidos de proceso y medida, w = 0 y v = 0:

∂ E ∂ E ∂ E
ė = e+ w+ v
∂ e (0,x̂,u,0,0) ∂ w (0,x̂,u,0,0) ∂ v (0,x̂,u,0,0)
!
∂ F ∂ H (10.9)
ė = −L e + Gw − Lv
∂ e (0,x̂,u)
∂ e (0,x̂)
ė = (Ā(x̂) − LC̄(x̂))e + Gw − Lv

donde:
∂ F ∂ f

Ā(x̂) = = 

∂ e (0,x̂,u) ∂ x (x̂,u) 
dependen del estado actual x̂
∂ H ∂ h 
C̄(x̂) = = 
∂e ∂x

(0,x̂) (x̂)

10.2.1. Idea

Diseñar el observador para el sistema linealizado en torno al estimado actual


Observador:
ẋ = f (x̂, u) + L(y − h(x̂))
donde:
L = PC̄T (x̂)V −1
Ṗ = Ā(x̂)P + PĀT (x̂) + GW GT + PC̄T (x̂)V −1C(x̂)P, P(to ) = E{e(to )eT (to )}.
Este viene a ser el Filtro de Kalman Extendido (EKF) (Schmidt).

10.2.2. Ejemplo

En este ejemplo demostraremos la utilidad del filtro de Kalman extendido para estimar los estados de la ecuación
de Van der Pol, dada por:
10.2 Filtro de Kalman Extendido 155

mẍ + 2c(x2 − 1)ẋ + Kx = 0,


donde m, c y k poseen valores positivos. Esta ecuación induce un ciclo limite que es sostenido periodicamente mediante
liberación de energı́a hacia y absorción de energı́a del ambiente, a través del término de amortiguamiento. El sistema
puede ser representado en su representación espacio de estados como descrito a continuación:

ẋ1 = x2
.
ẋ2 = −2(c/m)(x12 − 1)x2 − (k/m)x1

Las señales medidas son posición tal que C = [1 0]. Para efectos del ejemplo hemos generado los estados usando
m = c = k = 1 y con condición inicial igual a xo = [1 0]T . Las medidas son muestreadas con intervalos de ∆ t = 0,01s
con un error de medida con desviación estandar de σ = 0,01. El modelo linealizado Ā y la matriz G usados en el filtro
de Kalman extendido son:
   
0 1 0
Ā = , G = .
−4(c/m)x̂1 x̂2 − (k/m) −2(c/m)(x̂12 − 1) 1

Notese que no se ha incluido ruido de proceso (en otras palabras, no hay error) en el primer estado. Esto es debido al
hecho que el primer estado es una relación cinemática que es correcta tanto en teorı́a como en la practica (velocidad
siempre es derivada de la posicion).
En el filtro de Kalman extendido los parámetro del modelo son asumidos como m = 1, c = 1,5 y k = 1,2, lo cual
introduce errores en los parámetros asumidos, comparados al sistema real. La covarianza inicial es escogida como
Po = 1000I. El escalar W en el filtro de Kalman extendido es luego variado hasta que se obtengan estados estimados
razonables (este afinamiento de la matriz de covarianza es bastante común en el diseño del filtro de Kalman también).
La respuesta a la pregunta ¿cuáles son los estimados razonables? es a menudo dejado al ingeniero de diseño. Dado
que para simulación los valores verdaderos son conocidos, podemos comparar nuestros estimados con los verdaderos
valores para afinar W . Encontramos que q = 0,2 provee un buen estimado.
Differenced Measurement

5 5

2.5 2.5
Estimate

0 0

−2.5 −2.5

−5 −5
0 2 4 6 8 10 0 2 4 6 8 10
Time (Sec) Time (Sec)

0.03 0.5

0.02
Velocity Errors
Position Errors

0.25
0.01

0 0

−0.01
−0.25
−0.02

−0.03 −0.5
0 2 4 6 8 10 0 2 4 6 8 10
Time (Sec) Time (Sec)

Figura 10.4 Resultados del filtro de Kalman extendido para la ecuación de Van der Pol

Fuente: Lecture 1-1, CDS 110b, de Richard Murray.


Fuente: Capı́tulo 3 del libro Feedback Systems: An Introduction for Scientists and Engineers, de Karl J. Åström y
Richard M. Murray.
Fuente: Optimal Estimation of Dynamical Systems, de J.L. Crassidis y J.L. Junkins, 2004.
Apéndice A
Ecuaciones de Euler Lagrange
Ecuaciones de Lagrange

Las ecuaciones de Lagrange son una de las técnicas más comunes para derivar las
ecuaciones de movimiento de sistemas con múltiples grados de libertad (GDL).

Siendo L=T-U, donde T es la energía cinética total, U es la energía potencial total, qi son
Laslas coordenadas
ecuaciones generalizadas
de Lagrange son una dey Qlasi son las fuerzas
técnicas generalizadas.
más comunes para derivar las ecuaciones de movimiento se
sistemas con múltiples grados de libertad (GDL).
Si la energía cinética no depende
d ∂L ∂L
de los desplazamientos de las masas (válido excepto en
sistemas rotativos, cuando lasdt fuerzas
∂ q̇
− centrífugas
∂ qi
= Qi , y dei =Coriolis
1, 2, ..n. están presentes), e
ignorando el amortiguamiento, lasi ecuaciones de Lagrange serán:
Siendo L = T − V , con T siendo la energı́a cinética y V la energı́a potencial, qi son las coordenadas generalizadas y
Qi son las fuerzas generalizada. Ciertas restricciones se aplican a la elección de estas cantidades generalizadas:
Las coordenadas generalizadas deben ser linealmente independientes.
Las fuerzas generalizadas Qi deben realizar el mismo trabajo que las fuerzas no conservativas considerando un
Algunas restricciones
desplazamiento se aplican a la elección de estas cantidades generalizadas:
virtual δ qi , ası́:
n
Las coordenadas deben ser linealmente
δ W = ∑independientes.
Qi δ qi .
Las fuerzas generalizadas Qi deben realizar el mismo trabajo que las fuerzas reales
i=1

En la figuraFabajo,
i. los requerimientos antes mencionados son satisfechos cuando: q1 = z1 , q2 = z2 , Q1 = F1 y
Q2 = F2 .
Estos requerimientos son satisfechos cuando:

Las energías cinética T y potencial U respectivas serán:


Figura A.1 Sistema masa-resorte con dos GDL

Las energı́as cinética T y potencial V respectivas serán:


1 1
T = m1 ż21 + m2 ż22
2 2
Tendremos:

157
158 A Ecuaciones de Euler Lagrange

1 1
V = k1 z21 + k2 (z2 − z1 )2 .
2 2
Y el Lagrangiano será:
1 1 1 1
L = m1 ż21 + m2 ż22 − k1 z21 − k2 (z2 − z1 )2
2 2 2 2
Luego, realizando las correspondientes sustituciones en las ecuaciones de Lagrange:

d ∂L d
( ) = (m1 z1 ) = m1 z̈1
dt ∂ ż1 dt
∂L
= k1 z1 − k2 (z2 − z1 ) = (k1 + k2 )z1 − k2 z2
∂ z1
d ∂L ∂L
( )− = F1
Sustituyéndolas enmlas ecuaciones
dt ∂ ż 1 de
∂ zLagrange,
1 con F1=Q1 y F2=Q2:
1 z̈1 + (k1 + k2 )z1 − k2 z2 = F1

d ∂L
( ) = dtd (m2 z2 ) = m2 z̈2
dt ∂ ż2
∂L
= k2 (z2 − z1 ) = −k2 z1 + k2 z2
∂ z2
d ∂L ∂L
En forma matricial: (
dt ∂ ż2
)−
∂ z2
= F2
m1 z̈2 − k2 z1 + k2 z2 = F2
       
En forma matricial: m1 0 z̈1 k1 + k2 −k2 z1 F1
+ =
0 m2 z̈2 −k2 k2 z2 F2

A.1. Problema
Problema
El deslizador (1) de masa m1 se puede mover horizontalmente y está en contacto con dos
El resortes
deslizador(3)
(1)de
de rigidez
masa m1 k. se La esfera
puede (2)horizontalmente
mover de masa m2 yy radio
está enr contacto
forma un concuerpo rígido(3)con
dos resortes la k.
de rigidez
barra de masa despreciable (4). Todo el movimiento está en el plano vertical. El momento en el
La esfera (2) de masa m 2 y radio r forma un cuerpo rı́gido con la masa despreciable (4). Todo el movimiento
plano vertical. El momento de la esfera con respecto a un eje que pasa por su centro de gravedad es I = 25 m2 r2 .
está
de inercia de la esfera con respecto a un eje que pasa por su centro de gravedad es
I=2/5m2r2.

Figura A.2 Sistema deslizador-péndulo con dos GDL

En el instante t=0, el sistema es posicionado tal que:


En el instante t = 0, el sistema es posicionado tal que:
Hallar las ecuaciones diferenciales de movimiento.

A.2. Solución

El sistema tiene dos grados de libertad, por tanto dos coordenadas generalizadas x y ϕ . La energı́a cinética T será:
A.2 Solución 159

1 1 1
T = T1 + T2 = m1 ẋ2 + m2 v2G + I ϕ̇ 2
2 2 2
La velocidad y la posición absoluta del centro de masa de la esfera serán:

Sustituyéndolas en {rlasG }ecuaciones


= (x + R sen ϕde Lagrange,
)i + (−R cos ϕ )jcon F1=Q1 y F2=Q2:

{vG } = {ṙG } = (ẋ + Rϕ̇ cos ϕ )i + (Rϕ̇ sen ϕ )j


El cuadrado de la velocidad será:

v2G = (ẋ + Rϕ̇ cos ϕ )2 + (Rϕ̇ sen ϕ )2 = ẋ2 + 2ẋRϕ̇ cos ϕ + R2 ϕ̇ 2

En forma
La energı́a cinética matricial:
total será:
1 1 1
T = m1 ẋ2 + m2 (ẋ2 + 2ẋRϕ̇ cos ϕ + R2 ϕ̇ 2 ) + I ϕ̇ 2
21 2 2
= 2 (m1 + m2 )ẋ2 + m2 ẋRϕ̇ cos ϕ + 21 (m2 R2 + I)ϕ̇ 2

La energı́a potencial total será debido a la energı́a almacenada en los resortes y a la energı́a gravitacional:
1
Problema V = 2 kx2 − m2 gR cos ϕ
2
El deslizador (1) de masa m1 se puede mover horizontalmente y está en contacto con dos
Luego el Lagrangiano resulta:
resortes (3) de rigidez k. La esfera (2) de masa m2 y radio r forma un cuerpo rígido con la
barra
L de
= masa
1
(m1 +despreciable
m2 )ẋ2 + m2 ẋRϕ̇(4).
cos ϕTodo
1 el movimiento
+ (m 2 está en el plano vertical. El momento
2 R + I)ϕ̇ − kx + m2 gR cos ϕ
2 2
de inercia de la esfera con respecto a un eje que pasa por su centro de gravedad es
2 2
2
I=2/5m2rde
Aplicando las ecuaciones . Lagrange:
d ∂L ∂L
( )− =0
dt ∂ ẋ ∂x
d ∂L ∂L
( )− =0
dt ∂ ϕ̇ ∂ϕ
donde:
d ∂L d
( ) = ((m1 + m2 )ẋ + m2 Rϕ̇ cos ϕ )
dt ∂ ẋ dt
= (m1 + m2 )ẍ + m2 Rϕ̈ cos ϕ − m2 Rϕ̇ 2 sen ϕ

∂L
= 2kx
∂x

En el instante t=0, el sistema es posicionado tal que:

Figura A.3 m1 =2kg, m2 =1kg, R = 0,1m, r = 0,05m, k =1000N/m, a = 0,01m

2
Hallar las ecuaciones diferenciales de movimiento, las frecuencias naturales, los modos
normalizados, las ecuaciones diferenciales de movimiento en coordenadas modales y las
ecuaciones de movimiento en coordenadas físicas.
Solución:
160 A Ecuaciones de Euler Lagrange

Figura A.4 Sistema deslizador-péndulo con dos GDL a


energía cinética T será:
d ∂L d
( ) = (m2 Rẋ cos ϕ + (m2 R2 + I)ϕ̇ )
dt ∂ ϕ̇ dt
= (m2 R2 + I)ϕ̈ + m2 Rẍ cos ϕ − m2 Rẋϕ̇ sen ϕ

∂L
La posición y velocidad absoluta del2centro
= −m Rẋϕ̇ sende
ϕ −masa
m2 gRde
senla
ϕ esfera serán:
∂ϕ
Usando las ecuaciones de Lagrange:

(m1 + m2 )ẍ + m2 Rϕ̈ cos ϕ − m2 Rϕ̇ 2 sen ϕ + 2kx = 0


(m2 R2 + I)ϕ̈ + m2 Rẍ cos ϕ + m2 gR sen ϕ = 0

El cuadrado de dicha velocidad será:

La energía cinética total será:

La energía potencial total será debida a la energía almacenada en los resortes y a la energía
gravitacional:

Aplicando las ecuaciones de Lagrange:

3
Apéndice B
Optimización

B.1. Optimización sin restricciones

Un ı́ndice de desempeño escalar L(u) esta dado en función de un vector de control u ∈ Rm . Queremos obtener el
valor de u que resulte en el mı́nimo valor de L(u).
Para resolver el problema de óptimización, escribimos la expansión en serie de Taylor de un incremento en L, ası́:
1
dL = LuT du + duT Luu du + O(3), (B.1)
2
donde O(3) representa los terminos de orden tres. El gradiente de L con respecto a u es el vector columna:

∂L
Lu = , (B.2)
∂u
y la matriz Hessiana es:
∂ 2L
Luu = , (B.3)
∂ u2
y Luu es denominada la matriz curvatura.
Un punto estacionario o crı́tico ocurre cuando un incremento dL es cero en su primera orden para todos los incre-
mentos du. Luego:
Lu = 0, (B.4)
para un punto crı́tico.
Suponiendo que estamos en el punto crı́tico, tal que Lu = 0 en (B.1), para que el punto crı́tico sea un mı́nimo local,
se requiere que:
1
dL = duT Luu du + O(3), (B.5)
2
sea positivo para todos los incrementos du. Esto se garantiza si la matriz de curvatura Luu es definida positiva:

Luu > 0. (B.6)

Si Luu es definida negativa, el punto crı́tico es un máximo local.

B.1.1. Ejemplo: Superficies cuadráticas

Sea u ∈ R2 y:  
1 q q   1
L(u) = uT 11 12 + s1 s2 u = uT Qu + ST u
2 q12 q22 2
El punto crı́tico está dado por:

161
162 B Optimización

Lu = Qu + S.
Luego:
u∗ = −Q−1 S,
donde u∗ denota el control óptimo.
El tipo de punto crı́tico se obtiene examinando la matriz Hessiana:

Luu = Q.

El punto u∗ es mı́nimo si Luu > 0, o q11 > 0, q11 q22 − q212 > 0. Es un máximo si Luu < 0, o q11 < 0, q11 q22 − q212 < 0.
Sustitiuendo u∗ se puede encontrar el valor extremo del ı́ndice de desempeño:
1 1
L∗ = L(u∗ ) = ST Q−1 QQ−1 S − ST Q−1 S = − ST QS.
2 2
Sea:  
1 11  
L(u) = uT + 0 1 u.
2 12
Luego:     
2 −1 0 1
u∗ = − = ,
1 1 1 −1
es un mı́nimo, dado que Luu > 0. El mı́nimo valor de L es L∗ = − 12 .
 T
u
Los contornos de L(u) son dibujados en la Fig. B.1, donde u = 1 . Las flechas representan el gradiente:
u2
 
u1 + u2
Lu = Qu + S =
u1 + 2u2 + 1

Nótese que el gradiente es siempre perpendicular a los contornos y apuntando en la dirección de incremento de L(u).

Figura B.1 Contorno y vector gradiente


B.2 Optimización con restricciones de igualdad 163

B.2. Optimización con restricciones de igualdad

Sea el ı́ndice de desempeño escalar dado por L(x, u), una función del vector de control u ∈ Rm y del vector de estados
x ∈ Rn . El problema consiste en seleccionar u tal que minimice a L(x, u) y simultaneamente satisfaga la ecuación de
restricción:
f (x, u) = 0. (B.7)
EL vector x es determinado para un u dado de la relación (B.7), tal que f es un conjunto de ecuaciones escalares,
f ∈ Rn .
Para encontrar las condiciones necesarias y suficiente para un mı́nimo local que tambien satisfaga f (x, u) = 0,
procederemos de forma similar a la sección anterior.

B.2.1. Multiplicadores de Lagrange y el Hamiltoniano

En un punto estacionario, dL es igual a cero al primer orden para todos los incrementos du cuando d f es cero. Esto
requiere que:
dL = LuT du + LxT dx = 0, (B.8)
y,
d f = fu du + fx dx = 0. (B.9)
Dado que (B.7) determina x para un u dado, el incremento dx puede ser determinado de (B.9) para un incremento
dado du. Luego la matriz Jacobiana fx es no singular y:

dx = − fx−1 fu du. (B.10)

Y sustituyeno (B.10) en (B.8), resulta:


dL = (LuT − LxT fx−1 fu )du. (B.11)
La derivada de L con respecto a u manteniendo f constante está entonces dada por:

∂ L
= (LuT − LxT fx−1 fu )T = Lu − fuT fx−T Lx , (B.12)
∂ u d f =0

donde fx−T significa ( fx−1 )T . Notar que:


∂ L
= Lu . (B.13)
∂ u dx=0
Para conseguir dL igual a cero al primer orden para incrementos arbitrarios du cuando d f = 0, se debe tener:

Lu − fuT fx−T Lx = 0. (B.14)

Esta es una condición necesaria para un mı́nimo.


Antes de derivar una condición suficiente, escribir (B.8) y (B.9) como:
   T T  
dL L L dx
= x u (B.15)
df fx fu du
 T
Este conjunto de ecuaciones lineales define un punto estacionario, y debe tener una solución dxT duT . LA única
forma de que esto pueda ocurrir es si la matriz de coeficientes de dimensión (n + 1) × (n + m) tiene rango menor que
n + 1. Esto es sus filas deben ser linealmente dependientes tal que exista un vector λ ∈ Rn tal que:
 
  LxT LuT
1λ T
=0 (B.16)
fx fu

Entonces:
164 B Optimización

LxT + λ T fx = 0 (B.17)
LuT + λ fu = 0
T
(B.18)
Resolviendo este último sistema de ecuaciones se tiene:

λ T = −LxT fx−1 . (B.19)

Y sustituyendo (B.19) en (B.18) de nuevo resulta en la condición (B.14) para puntos estacionarios.
Definiendo el Hamiltoniano como:
H = L+λT f, (B.20)
donde λ es denominado multiplicador de Lagrange.
En un punto estacionario, dH = dL es igual a cero al primer orden para los incrementos de primer orden de du y d λ
cuando d f es cero.
dH = HuT du + HxT dx + Hλ d λ = 0, (B.21)
Incrementos dx no contribuyen a dH:
∂H
= Lx + fxT λ = 0, (B.22)
∂x
que es igual a (B.19). Incrementos d λ tampoco contribuyen a dH:

∂H
= f = 0. (B.23)
∂λ
Si (B.22) y (B.23) se cumplen, entonces:
dL = dH = HuT du, (B.24)
dado que H = L en esta situación. ENtonces, para alcanzar un punto estacionario debemos imponer la siguiente condi-
ción estacionaria:
Hu = 0. (B.25)
Luego las condiciones necesarias para un punto mı́nimo de L(x, u) que satisface la restricción f (x, u) = 0 son:

∂H
= f = 0, (B.26)
∂λ
∂H
= Lx + fxT λ = 0, (B.27)
∂x
∂H
= Lu + fuT λ = 0, (B.28)
∂u
con H(x, u, λ ) definida por (B.20).
Mediante la introducción de multiplicadores de Lagrange, ha sido posible reemplazar el problema de minimizar
L(x, u) sujeto a la restricción f (x, u) = 0 con el problema de minimizar el Hamiltoniano H(x, u, λ ) sin restricciones.

B.2.2. Ejemplo: Superficie cuadrática con restricción lineal

Suponer que el ı́ndice de desempeño esta dado como en el ejemplo anterior:


    
1  11 x   x
L(x, u) = xu + 01 .
2 12 u u

Sea la restricción:
f (x, u) = x − 3 = 0.
El Hamiltoniano es:
B.2 Optimización con restricciones de igualdad 165

1
H = L + λ T f = x2 + xu + u2 + u + λ (x − 3),
2
donde λ es un escalar. Las condiciones para un punto estacionario son:

Hλ = x − 3 = 0,

Hx = x + u + λ = 0,
Hu = x + 2u + 1 = 0.
Resolviendo el sistema de ecuaciones se obtiene: x = 3, u = −2 y λ = −1. Luego el punto estacionario es:

(x, u)∗ = (3, −2).

La Fig. B.2 muestra los contornos de L(x, u y la restricción f (x, u) para este problema.

Figura B.2 Contorno y vector gradiente


Apéndice C
Cálculo Variacional

Cálculo variacional es una rama de la matemática que es bastante útil en la solución de problemas de optimización.
Un problema histórico resuelto usando cálculo variacional es el problema del la curva braquistócrona. El problema
fue propuesto en 1696 por Johann Bernoulli. Bajo la influencia de la gravedad una bola se desplaza a lo largo de una
cuerda (sin fricción) con extremos fijos A y B. El problema consiste en encontrar la forma de la cuerda que haga que
la bola se mueva de A hacia B en el menor tiempo posible. La solución es un cicloide y se le atribuye a Johann y Jacob
Bernoulli, Newton y L’Hospital. La conexión con el problema de control óptimo es aparente, encontrar la función de
control que minimice la medida de desempeño.
En control óptimo el objetivo es determinar una función que minimice un funcional especı́fico - el ı́ndice de de-
sempeño. Un problema análogo en cálculo es determinar un punto que lleve a un valor mı́nimo de una función. En
esta sección introduciremos conceptos concernientes a funcionales apelando a resultados conocidos de la teoria de
funciones.

C.1. Conceptos

Función: Una función es una regla de correspondencia que asigna a cada elemento de un cierto conjunto D un
único elemento en el conjunto R. D es denominado dominio y R es denominado rango.
Funcional Un funcional J es una regla de correspondencia que asigna a cada función x en una cierta clase Ω un
único valor real. Ω es denominado dominio del funcional, y el conjunto de números reales asociados con las funciones
en Ω es denominado rango del funcional.
Notar que el dominio de un funcional es una clase de funciones; intuitivamente, podriamos decir que un funcional
es una “función de una función”.
Incremento de un función Si q y q + ∆ q son elementos para los cuales la función f es definida, luego el incremento
de f , denotado por ∆ f , es:
∆ f = f (q + ∆ q) − f (q). (C.1)
Notar que ∆ f depende de tanto q como ∆ q, en general, para ser más explı́citos, ∆ f (q, ∆ q).
Ejemplo Considere la función: f (q) = q21 = 2q1 q2 , ∀q1 , q2 ∈ R. El incremento de f es:

∆ f = f (q + ∆ q) − f (q) = [q1 + ∆ q1 ]2 + 2[q1 + ∆ q1 ][q2 + ∆ q2 ] − [q21 + 2q1 q2 ].

Incremento de un funcional Si x y x + δ x son funciones para las cuales el funcional J es definido, luego el incre-
mento de J, denotado por ∆ J, es:
∆ J = J(x + δ x) − J(x). (C.2)
De nuevo, se puede enfatizar que ∆ J(x, δ x) depende tanto de x como de δ x. δ x es la variación de la función x.
Ejemplo Considere el funcional:
Z tf
J(x) = x2 (t)dt,
to

donde x es una función contı́nua del x. El incremento de J es:

167
168 C Cálculo Variacional
Z tf Z tf Z tf
∆ J = J(x + δ x) − J(x) = [x + δ x]2 dt − x2 (t)dt = [2x(t)δ x(t) + [δ x(t)]2 ]dt.
to to to

La variación de un funcional La variación juega el mismo rol que el diferencial en determinar los valores entremos,
en el caso de la variación se aplica al caso de un funcional y en el caso del diferencial se aplica al caso de una función.
POR COMPLETAR...

Fuente: Capı́tulo 4 del libro Óptimal Control de Donald Kirk, Springer, 1970.
Fuente: Capı́tulo 3 del libro Optimal Control de Lewis y Syrmos, Wiley, 1995.

Das könnte Ihnen auch gefallen