Está en la página 1de 263

Teoría de Control Digital

Didier Giraldo Buitrago


Eduardo Giraldo Suárez
Programa de Ingeniería Eléctrica
Universidad Tecnológica de Pereira

2012
ii
Índice general

1. Introducción al control por computador 1


1.1. Teoría del control por computador . . . . . . . . . . . . . . . . 2
1.2. Dependencia del tiempo . . . . . . . . . . . . . . . . . . . . . 3
1.3. Un método rudimentario para sistemas controlados por
computador . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.4. Control Dead Beat . . . . . . . . . . . . . . . . . . . . . . . . 11
1.5. Fenómeno de traslape (aliasing) . . . . . . . . . . . . . . . . . 12
1.6. Filtros antes del muestreo o …ltros antialising . . . . . . . . . . 16
1.7. Ecuaciones de diferencia . . . . . . . . . . . . . . . . . . . . . 17
1.8. Necesidad de una teoría para los sistemas controlados por
computador . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

2. Sistemas discretos en el tiempo 21


2.1. Muestreo de señales continuas en el tiempo . . . . . . . . . . . 21
2.2. Muestreo de un sistema análogo en el espacio deseado . . . . . 22
2.2.1. Solución en términos de la matriz exponencial . . . . . 23
2.2.2. Solución por medio de la trasformada de Laplace . . . 29
2.2.3. Teorema de Cayley-Hamilton . . . . . . . . . . . . . . 31
2.3. Muestreo con retenedor de orden cero de un sistema . . . . . . 33
2.4. Cálculo de y . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.5. La inversa del muestreo . . . . . . . . . . . . . . . . . . . . . . 37
2.6. Muestreo de un sistema con retardo . . . . . . . . . . . . . . . 39
2.7. Retardos mayores . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.8. Sistemas discretos . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.9. Solución de ecuaciones . . . . . . . . . . . . . . . . . . . . . . 43
2.10. Cambio de coordenadas en los modelos de espacio de estados . 44
2.11. Forma diagonal . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.12. Forma de Jordan . . . . . . . . . . . . . . . . . . . . . . . . . 46

iii
iv ÍNDICE GENERAL

2.13. Vectores característicos generalizados . . . . . . . . . . . . . . 47


2.14. Forma canónica de Jordan . . . . . . . . . . . . . . . . . . . . 47
2.15. Modelos entrada - salida . . . . . . . . . . . . . . . . . . . . . 48
2.16. Respuesta al pulso . . . . . . . . . . . . . . . . . . . . . . . . 48
2.17. Operador de desplazamiento . . . . . . . . . . . . . . . . . . . 50
2.18. Operador de transferencia al pulso . . . . . . . . . . . . . . . . 53
2.19. Polos y ceros . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.20. Orden de un sistema . . . . . . . . . . . . . . . . . . . . . . . 55
2.21. La transformada Z . . . . . . . . . . . . . . . . . . . . . . . . 56
2.21.1. De…nición de la transformada Z . . . . . . . . . . . . . 57
2.21.2. Agunos teoremas de la transformada Z . . . . . . . . . 59
2.22. Transformada Z inversa . . . . . . . . . . . . . . . . . . . . . 60
2.22.1. Expansión en fracciones parciales . . . . . . . . . . . . 60
2.22.2. Método de las series de potencias . . . . . . . . . . . . 61
2.22.3. Fórmula de inversión . . . . . . . . . . . . . . . . . . . 62
2.23. Solución de las ecuaciones discretas mediante la transformada
Z . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.24. Cálculo de la función de transferencia al pulso . . . . . . . . . 65
2.25. Cálculo con operadores y transformada Z . . . . . . . . . . . 67
2.26. Polos y ceros . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
2.27. Sistemas con inversas inestables . . . . . . . . . . . . . . . . . 77
2.28. Selección de la frecuencia de muestreo . . . . . . . . . . . . . . 78
2.29. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 79

3. Criterios de Estabilidad 85
3.1. Estabilidad externa . . . . . . . . . . . . . . . . . . . . . . . . 85
3.2. Estabilidad interna . . . . . . . . . . . . . . . . . . . . . . . . 86
3.3. El criterio de Lyapunov . . . . . . . . . . . . . . . . . . . . . . 86
3.3.1. Sistemas discretos . . . . . . . . . . . . . . . . . . . . . 88
3.4. Criterio de Routh Hurwitz en sistemas discretos mapeados . . 89
3.5. Criterio de Jury . . . . . . . . . . . . . . . . . . . . . . . . . . 91
3.6. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 94

4. Controlabilidad, Alcanzabilidad, Observabilidad y


Detectabilidad 95
4.1. Controlabilidad y alcanzabilidad . . . . . . . . . . . . . . . . . 95
4.2. Forma canónica controlable . . . . . . . . . . . . . . . . . . . 98
4.3. Seguimiento de una trayectoria . . . . . . . . . . . . . . . . . 99
ÍNDICE GENERAL v

4.4. Observabilidad y detectabilidad . . . . . . . . . . . . . . . . . 100


4.5. Forma canónica observable . . . . . . . . . . . . . . . . . . . . 102
4.6. Descomposición de Kalman . . . . . . . . . . . . . . . . . . . 104
4.7. Pérdida de alcanzabilidad y observabilidad con el muestreo . . 106
4.8. Análisis de lazos de realimentación simples . . . . . . . . . . . 107
4.9. Perturbaciones . . . . . . . . . . . . . . . . . . . . . . . . . . 108
4.9.1. Perturbaciones de carga . . . . . . . . . . . . . . . . . 108
4.9.2. Errores de medida . . . . . . . . . . . . . . . . . . . . 108
4.9.3. Variaciones paramétricas . . . . . . . . . . . . . . . . . 109
4.10. Modelos simples de perturbación . . . . . . . . . . . . . . . . 109
4.11. Valores de estado estacionario . . . . . . . . . . . . . . . . . . 110
4.12. Simulación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
4.13. Control del integrador doble . . . . . . . . . . . . . . . . . . . 113
4.14. Aspectos prácticos de la selección del periodo de muestreo . . 115
4.15. Oscilaciones escondidas . . . . . . . . . . . . . . . . . . . . . . 117
4.16. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 123

5. Diseño por reubicación de polos por el método de espacio de


estado 127
5.1. Diseño del sistema de control . . . . . . . . . . . . . . . . . . 128
5.2. Regulación por realimentación de estado . . . . . . . . . . . . 131
5.3. El caso general . . . . . . . . . . . . . . . . . . . . . . . . . . 132
5.4. Aspectos prácticos . . . . . . . . . . . . . . . . . . . . . . . . 137
5.5. Control dead beat . . . . . . . . . . . . . . . . . . . . . . . . . 142
5.6. Perturbaciones más generales . . . . . . . . . . . . . . . . . . 143
5.7. Aspectos Computacionales . . . . . . . . . . . . . . . . . . . . 146
5.8. Observadores . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
5.8.1. Cálculo directo de las variables de estado . . . . . . . . 147
5.8.2. Reconstrucción usando un sistema dinámico . . . . . . 150
5.8.3. Cálculo de la ganancia del observador . . . . . . . . . . 152
5.8.4. Un observador dead beat . . . . . . . . . . . . . . . . . 153
5.8.5. Observador de orden reducido . . . . . . . . . . . . . . 154
5.8.6. Realimentación de la salida . . . . . . . . . . . . . . . 156
5.8.7. Extensiones . . . . . . . . . . . . . . . . . . . . . . . . 159
5.8.8. Modelos de perturbación más realísticos . . . . . . . . 162
5.8.9. Acción integral . . . . . . . . . . . . . . . . . . . . . . 166
5.9. El problema del servo . . . . . . . . . . . . . . . . . . . . . . . 170
5.9.1. Un método simple . . . . . . . . . . . . . . . . . . . . 170
vi ÍNDICE GENERAL

5.9.2. Acción Integral . . . . . . . . . . . . . . . . . . . . . . 173


5.9.3. Un controlador de dos grados de libertad . . . . . . . . 175
5.10. Un ejemplo de diseño . . . . . . . . . . . . . . . . . . . . . . . 186
5.11. Conclusiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
5.12. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . 196

A. Implementación en tiempo real 199


A.1. Ganancia en lazo directo . . . . . . . . . . . . . . . . . . . . . 199
A.2. Acción integral . . . . . . . . . . . . . . . . . . . . . . . . . . 201
A.3. Control de dos grados de libertad . . . . . . . . . . . . . . . . 203

B. Diseño de sistemas de control en el espacio de estados en


tiempo continuo 207
B.1. Regulación por realimentación de estados . . . . . . . . . . . . 208
B.1.1. Cálculo de la ganancia de realimentación . . . . . . . . 209
B.1.2. Realimentación de estado y los ceros de la función de
transferencia . . . . . . . . . . . . . . . . . . . . . . . . 212
B.2. Perturbaciones . . . . . . . . . . . . . . . . . . . . . . . . . . 212
B.3. Observadores . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
B.3.1. Observador en lazo abierto . . . . . . . . . . . . . . . . 215
B.3.2. Observador completo . . . . . . . . . . . . . . . . . . . 216
B.3.3. Observador de orden reducido . . . . . . . . . . . . . . 219
B.3.4. Regulación con un observador completo . . . . . . . . . 221
B.3.5. Observador de perturbaciones . . . . . . . . . . . . . . 224
B.4. Sistemas de seguimiento . . . . . . . . . . . . . . . . . . . . . 228
B.4.1. Ganancia del sistema en lazo cerrado . . . . . . . . . . 228
B.4.2. Realimentación integral de la salida . . . . . . . . . . . 234
B.4.3. Controlador de dos grados de libertad . . . . . . . . . . 236

C. De…nición alternativa de la transformada Z 245


Índice de …guras

1.1. Diagrama esquemático de un sistema controlado por computador 1


1.2. Diagrama de bloques del compensador del ejemplo 1.1 . . . . . 3
1.3. Diagrama de bloques del ejemplo 1.1. . . . . . . . . . . . . . . 4
1.4. Respuesta al escalón (puntos) de un sistema de primer
orden implementado para diferentes retardos en el escalón
unitario (lineas discontinuas). Para comparación se muestra
la respuesta del correspondiente sistema análogo (continuo en
el tiempo) en línea continua. . . . . . . . . . . . . . . . . . . . 5
1.5. Sistema para controlar la posición del brazo de una unidad de
disco. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.6. Diagrama de bloques del control del brazo de una unidad de
disco. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.7. Simulación del control análogo (línea punteada) y por
computador (línea continua) del brazo de una unidad de disco.
El periodo de muestreo es h = 0:2 !0
.. . . . . . . . . . . . . . . . 7
1.8. Ejecución periódica del programa en el computador. . . . . . . 9
1.9. Diagrama de bloques del sistema discreto para el ejemplo 1.3. 9
1.10. Simulación del control del brazo de una unidad de disco con
control por computador. . . . . . . . . . . . . . . . . . . . . . 10
1.11. Simulación del control dead beat de la unidad de disco (lineas
continuas). El periodo de muestreo es h = 1:4 !0
. El controlador
análogo del ejemplo 1.2 también se muestra (lineas punteadas). 11
1.12. Diagrama de bloques del controlador dead beat para el ejemplo
1.4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.13. Diagrama de bloques del ejemplo 1.5 correspondiente al caso
análogo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.14. Diagrama de bloques del ejemplo 1.5 correspondiente al caso
digital. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

vii
viii ÍNDICE DE FIGURAS

1.15. Simulación de la unidad de disco con un control análogo y


digital. ! 0 = 1, h = 0:5, y hay un ruido en la medida
n = 0:1 sin 12t. (a) Sistema análogo, (b) Sistema de datos
muestreado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.16. Simulación del control por computador de la unidad de disco.
! 0 = 1, h = 0:5, y n = 0:1 sin 12t. . . . . . . . . . . . . . . . . 15
1.17. Diagrama de bloques para el ejemplo 1.6. . . . . . . . . . . . . 16
1.18. Excitación sinusoidal del sistema muestreado en el diagrama
de bloques de la …gura 1.17. . . . . . . . . . . . . . . . . . . . 17

2.1. Sistema análogo conectado a conversores D/A y A/D. . . . . . 22


2.2. Sistema con un integrador doble. . . . . . . . . . . . . . . . . 35
2.3. Modelo normalizado de un motor DC. . . . . . . . . . . . . . 36
2.4. Relación entre u (t) y u (t ) y los instantes de muestreo. . . 39
2.5. Diagrama esquemático de una máquina de papel . . . . . . . . 42
2.6. Diagrama de bloques de un sistema de datos discreto . . . . . 56
2.7. Muestreador ideal . . . . . . . . . . . . . . . . . . . . . . . . . 57
2.8. Contorno C en el plano z y polos de f (z) . . . . . . . . . . . 64
2.9. Muestreo de un sistema análogo. . . . . . . . . . . . . . . . . . 65
2.10. Mapeo Z = eAh . . . . . . . . . . . . . . . . . . . . . . . . . . 71
2.11. Cada franja mostrada en el semiplano complejo izquierdo s es
mapeada en el disco unitario. . . . . . . . . . . . . . . . . . . 72
2.12. Mapeo de cada franja en el círculo unitario . . . . . . . . . . . 73
2.13. Respuesta al escalón del sistema discreto del ejemplo para
diferentes valores de h cuando = 0:5 y ! 0 = 1:83, el cual da
un tiempo de crecimiento Tr = 1: (a) h = 0:125, (b) h = 0:25,
(c) h = 0:5, (d) h = 1:0. . . . . . . . . . . . . . . . . . . . . . 77
2.14. Lugar de constante . . . . . . . . . . . . . . . . . . . . . . . 78
2.15. Ilustración de la muestra y retención de una sinusoide y una
exponencial. Los tiempos de crecimiento de las señales son
Tr = 1. El número de muestras por tiempo de crecimiento es:
(a) Nr = 1, (b) Nr = 2, (c) Nr = 4, (d) Nr = 8. . . . . . . . . 80

3.1. Mapeo del SCI en el círculo unitario y viceverza. . . . . . . . . 89


3.2. Área de estabilidad para la ecuación de segundo orden 3.14
como una función de los coe…cientes a1 y a2 . . . . . . . . . . . 93
ÍNDICE DE FIGURAS ix

4.1. Salida del sistema en el ejemplo 4.4 para los estados iniciales:
T T T T
(a) 0:5 1 , (b) 1:5 0:5 , (c) 2:5 0 , (d) 1 0:5 . . 102
4.2. Diagrama de bloques de la descomposición de Kalman cuando
el sistema es diagonalizable. . . . . . . . . . . . . . . . . . . . 106
4.3. Modelos idelaizados de perturbaciones simples . . . . . . . . . 109
4.4. Generación del valor de referencia usando un sistema dinámico
con un pulso de entrada. . . . . . . . . . . . . . . . . . . . . . 110
4.5. Controlador discreto con realimentación de la posición y la
velocidad del integrador doble. . . . . . . . . . . . . . . . . . . 114
4.6. Salida del sistema continuo en la …gura 4.5 con Td = 1:5 y con
(a) Kp = 0:5, (b) Kp = 0:75. . . . . . . . . . . . . . . . . . . . 115
4.7. Salida del sistema continuo en la …gura 4.5 con Td = 1:5 y con
(c) Kp = 1, (d) Kp = 1:25. . . . . . . . . . . . . . . . . . . . . 116
4.8. Diagrama de bloques del sistema del ejemplo 4.9. . . . . . . . 118
4.9. Respuesta al escalón del sistema en el ejemplo 4.9 cuando (a)
h = 2, y cuando (b) h = 1:8. . . . . . . . . . . . . . . . . . . . 119
4.10. Control en lazo cerrado del integrador doble discreto. . . . . . 120
4.11. Respuesta al escalón y la señal de control del integrador doble
cuando el controlador (4.16) es usado. . . . . . . . . . . . . . . 122
4.12. Sistema del ejercicio 4.5. . . . . . . . . . . . . . . . . . . . . . 124

5.1. Diagrama de bloques de un sistema de control típico. . . . . . 129


5.2. Respuestas del sistema en lazo cerrado del ejemplo 5.4.
T
La condición incial es x0 = 1 1 , y los valores de los
parámetros son !h = 0:44 y = 0:707. Las salidas para
! = 0:5, ! = 1, ! = 2, se muestran en (a), y las
correspondientes señales de control se muestran en (b), (c)
y (d) respectivamente. . . . . . . . . . . . . . . . . . . . . . . 139
5.3. Respuestas del sistema en lazo cerrado del ejemplo 5.4.
T
La condición incial es x0 = 1 1 , y los valores de los
parámetros son ! = 1 y = 0:707. Las salidas para
N = 5, N = 10, N = 20, se muestran en (a), y las
correspondientes señales de control se muestran en (b), (c)
y (d) respectivamente. . . . . . . . . . . . . . . . . . . . . . . 140
x ÍNDICE DE FIGURAS

5.4. Respuestas del sistema en lazo cerrado del ejemplo 5.4.


T
La condición incial es x0 = 1 1 , y los valores de los
parámetros son ! = 1 y = 0:707. Las salidas para
N = 5, N = 10, N = 20, se muestran en (a), y las
correspondientes señales de control se muestran en (b), (c) y
(d) respectivamente. La perturbación ocurre inmediatamente
después del primer muestreo. Nótese la signi…cativa diferencia
con la …gura 5.3. . . . . . . . . . . . . . . . . . . . . . . . . . 141
5.5. Respuestas del sistema en lazo cerrado del ejemplo 5.5 para
T
un controlador dead beat. La condición incial es x0 = 1 1 ,
y los valores de los parámetros son ! = 1 y = 0:707. Las
salidas para h = 2, h = 1, h = 0:5, se muestran en (a), y las
correspondientes señales de control se muestran en (b), (c) y
(d) respectivamente. . . . . . . . . . . . . . . . . . . . . . . . 144
5.6. Reconstrucción del estado usando un sistema dinámico. . . . . 151
5.7. Diagrama de bloques de un controlador obtenido combinando
realimentación del estado con un observador. . . . . . . . . . . 157
5.8. Control del integrador doble usando estados estimados. Los
estados y los estados estimados se muestran para: (a) un
observador de segundo orden, (b) un observador dead beat. . . 159
5.9. (a) Salida estimada y^ del sistema y (b) variables de estado
estimadas x^. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
5.10. Diagrama de bloques de un controlador con realimentación de
estado de los estados estimados de la perturbación. . . . . . . 166
5.11. Diagrama de bloques de un controlador con realimentación del
estado y un observador con acción integral. . . . . . . . . . . . 167
5.12. Diagrama de bloques de la realimentación entrada salida del
controlador (5.50). . . . . . . . . . . . . . . . . . . . . . . . . 168
5.13. Simulación del sistema del ejemplo 5.12. (a) Salida y,
(b) entrada u, y (c) perturbación v (línea punteada) y
perturbación estimada v^ (línea continua). . . . . . . . . . . . . 171
5.14. Diagrama de bloques que muestra una manera simple
de introducir señales de comando en un controlador con
realimentación de estado y un observador. . . . . . . . . . . . 172
5.15. Diagrama de bloques del sistema de seguimiento con acción
integral correspondiente a las ecuaciones (5.59) y (5.60). . . . 174
ÍNDICE DE FIGURAS xi

5.16. Salida y (a) y señal de control u (b) del control con acción
integral para el ejemplo 5.13. . . . . . . . . . . . . . . . . . . . 175
5.17. Diagrama de bloques de un sistema de realimentación con una
estructura de dos grados de libertad. . . . . . . . . . . . . . . 176
5.18. Un controlador con dos grados de libertad basado en
realimentación de estado y un observador. . . . . . . . . . . . 177
5.19. Diagrama de bloques de un controlador general que combina
seguimiento por modelo con realimentación de los estados
estimados y los estados de la perturbación. . . . . . . . . . . . 179
5.20. Otra representación de la estructura general del controlador
con realimentación de los estados estimados, estado de la
perturbación y seguimiento del modelo. . . . . . . . . . . . . . 182
5.21. Estructura del controlador del ejemplo 5.14. . . . . . . . . . . 183
5.22. Señal de control en lazo directo para el servo. . . . . . . . . . 185
5.23. Control del integrador doble usando el controlador (5.39). (a)
Salida y y salida del modelo ym , (b) señal de control u, (c)
perturbación v y perturbación estimada v^. . . . . . . . . . . . 187
5.24. Brazo de un robot ‡exible . . . . . . . . . . . . . . . . . . . . 188
5.25. Diagrama de cuerpo libre para J1 y J2 . . . . . . . . . . . . . 188
5.26. Grá…ca de bode del proceso de brazo ‡exible del robot. . . . . 189
5.27. Respuesta al impulso del brazo ‡exible del robot. . . . . . . . 189
5.28. Diagrama de bloques que muestra una manera simple de
introducir la señal de referencia de un controlador con
realimentación de estado. . . . . . . . . . . . . . . . . . . . . . 191
5.29. Salida y entrada cuando la señal de referencia r es un escalón
y la perturbación v es un pulso corto. . . . . . . . . . . . . . . 192
5.30. Esquema para el simulink del ejemplo de diseño. . . . . . . . . 194
5.31. Lo mismo que en la …gura 5.29, pero utilizando realimentación
de los estados observados cuando 0 = 2. . . . . . . . . . . . . 195
5.32. Sistema del problema 5.3. . . . . . . . . . . . . . . . . . . . . 196

B.1. Reubicación de polos por realimentación de variables de estado 209


B.2. Sistema con perturbación generalizada . . . . . . . . . . . . . 214
B.3. Observador en lazo abierto . . . . . . . . . . . . . . . . . . . . 216
B.4. Observador completo para el sistema (B.7) . . . . . . . . . . . 218
B.5. Diagrama de bloques del sistema con observador de orden
reducido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
B.6. Realimentación de variables de estado con observador completo 223
xii ÍNDICE DE FIGURAS

B.7. Diagrama de bloques de un sistema con regulación, observador


completo y observador de perturbaciones . . . . . . . . . . . . 226
B.8. Diagrama de bloques en Simulink para el ejemplo B.1 . . . . . 228
B.9. (a) Salida del sistema y, (b) estados estimados x ^, (c)
perturbación estimada v~ (t). . . . . . . . . . . . . . . . . . . . 229
B.10.Diagrama de bloques simpli…cado para un modelo simple de
seguimiento con regulación y observador completo . . . . . . . 230
B.11.Esquema de control con observador completo y observador de
perturbaciones . . . . . . . . . . . . . . . . . . . . . . . . . . 231
B.12.Diagrama del ejemplo B.2 . . . . . . . . . . . . . . . . . . . . 232
B.13.Servo con acción integral . . . . . . . . . . . . . . . . . . . . . 234
B.14.Servo con acción integral usando un observador de estados . . 236
B.15.Diagrama de bloques de un sistema de realimentación con una
estructura de dos grados de libertad . . . . . . . . . . . . . . . 237
B.16.Un controlador con dos grados de libertad basado en
realimentación del estado y un observador . . . . . . . . . . . 238
B.17.Diagrama de bloques de un controlador general que combina
seguimiento por modelo con realimentación de los estados y
de la perturbación . . . . . . . . . . . . . . . . . . . . . . . . . 240
B.18.Respuesta del sistema de control de dos grados libertad para
una entrada de referencia. . . . . . . . . . . . . . . . . . . . . 243
B.19.Diagrama de bloques en Simulink para el ejemplo B.3 . . . . . 244
Prefacio

Este libro presenta el análisis y diseño de sistemas de control en tiempo


discreto. Su objetivo es servir como texto guía para un curso en sistemas de
control digital. Se espera que el estudiante tenga conocimientos previos sobre
ecuaciones diferenciales, análisis vectorial matricial, circuitos, mecánica,
variable compleja, transformada de Laplace y teoría de control análogo.

xiii
xiv Prefacio
Capítulo 1

Introducción al control por


computador

Prácticamente todos los sistemas de control que se implementan


actualmente son basados en control por computador. Tales sistemas podrían
mirarse como aproximaciones de sistemas de control análogo, lo cual sería
una aproximación pobre ya que no se usaría todo el potencial del control por
computador. Además, hay fenómenos que ocurren en sistemas controlados
por computador que no tienen correspondencia en sistemas análogos. Así, el
objetivo es dar una base sólida para comprender, analizar y diseñar sistemas
controlados por computador.

{y(tk )} {u (tk )} u (t ) y (t )
A/D Algoritmo D/A Proceso

Reloj
Computador

Figura 1.1: Diagrama esquemático de un sistema controlado por computador

Un sistema controlado por computador se puede describir esquemáticamente


como se muestra en la …gura 1.1. La salida del proceso y (t) es una señal
continua (en el tiempo) la cual es convertida en forma digital por el conversor
análogo digital (A/D). El conversor A/D puede ser incluido en el computador

1
2 Introducción al control por computador

o ser considerado como una unidad separada. La conversión es hecha en


los instantes de muestreo tk = kh, con k = 0; 1; 2; : : :. El computador
interpreta la señal convertida fy (tk )g como una sucesión de números, procesa
las medidas mediante un algoritmo y da una nueva sucesión de números
fu (tk )g. Ésta es convertida a una señal análoga por un conversor digital
análogo (D/A). Los eventos son sincronizados por un reloj en tiempo real en
el computador. El computador digital opera secuencialmente en el tiempo y
cada operación toma algún tiempo.
El conversor D/A debe, sin embargo, producir una señal continua en el
tiempo, lo cual se hace normalmente manteniendo la señal de control
constante entre las conversiones.
Los sistemas controlados por computador contienen tanto señales continuas
en el tiempo como muetreadas o discretas en el tiempo. Tales sistemas se
han llamado tradicionalmente como sistemas de datos muestreados, término
que será usado aquí como sinónimo de sistemas controlados por computador.
La mezcla de diferentes tipos de señales causa algunas veces di…cultades. Sin
embargo, en la mayoría de los casos, basta describir el comportamiento del
sistema en los instantes de muestreo. Tales sistemas son llamados sistemas
discretos (en el tiempo) y tratan con secuencias de números, y por lo tanto,
una manera de representar estos sistemas es con ecuaciones de diferencia.

1.1. Teoría del control por computador


El uso de computadores para implementar controladores tiene ventajas
sustanciales. Muchas de las di…cultades con la implementación análoga
se pueden evitar. Por ejemplo, no hay problemas con la precisión de los
componentes. Es fácil tener cálculos so…sticados en la ley de control e incluir
funciones lógicas y no lineales. Se pueden usar tablas para almacenar datos
para acumular conocimiento sobre las propiedades del sistema.
Como se muestra en la …gura 1.1, el sistema contiene esencialmente 5
partes: el proceso, los conversores A/D y D/A, el algoritmo de control y
el reloj, el cual controla la operación del sistema. Los instantes cuando las
señales medidas son convertidas a forma digital son llamados los instantes
de muestreo tk y el tiempo entre muestras sucesivas es llamado el periodo
de muestreo h. Generalmente, se usa muestreo periódico, aunque hay otras
posibilidades. Por ejemplo, se puede muestrear cuando las señales de salida
han cambiado en cierta cantidad. También, se pueden usar diferentes periodos
1.2 Dependencia del tiempo 3

de muestreo para diferentes lazos en un sistema.


Se presentarán ejemplos que muestran las diferencias y las similitudes de
sistemas análogos y controlados por computador, donde aparecen nuevos
fenómenos.

1.2. Dependencia del tiempo


El reloj en la …gura 1.1 hace que los sistemas controlados por computador
sean variantes con el tiempo. Tales sistemas pueden exhibir comportamiento
que no ocurre en sistemas lineales invariantes con el tiempo.

Ejemplo 1.1 Dependencia del tiempo.

Supóngase que se desea implementar un compensador que es simplemente


un retardo de primer orden. Tal compensador se puede implementar con los
conversores A/D, D/A y un computador digital como se muestra en la …gura
1.2. La ecuación diferencial de primer orden es aproximada por una ecuación
de diferencia de primer orden.
u (t ) {u (tk )} {y(tk )} y (t )
A/D Computador D/A

Reloj

Figura 1.2: Diagrama de bloques del compensador del ejemplo 1.1

Considere como sistema análogo


1
H (s) =
s+1
y como sistema digital
1 e h
H (z) =
z e h
Al aplicar una entrada u (t) del tipo escalón unitario como se muestra en la
…gura 1.3, se tienen las respuestas de la …gura 1.4.
4 Introducción al control por computador

u (t ) ya (t )
H a (s )

yd (t )
A/D H d (z ) D/A

Reloj

Figura 1.3: Diagrama de bloques del ejemplo 1.1.

La …gura 1.4 muestra claramente que el sistema muestreado no es invariante


con el tiempo ya que la respuesta depende del instante en el que el escalón
ocurre. Si la entrada es retardada, la salida es retardada en la misma cantidad
sólo si el retardo es un múltiplo del periodo de muestreo. El fenómeno
mostrado en la …gura 1.4 depende del hecho de que el sistema es controlado
por un reloj. La respuesta del sistema a un estímulo externo dependerá
entonces de como el evento externo es sincronizado con el reloj interno del
computador del sistema.

1.3. Un método rudimentario para sistemas


controlados por computador
Se espera que un sistema controlado por computador (SCC) se comporte
como un sistema continuo si el periodo de muestreo es su…cientemente
pequeño.

Ejemplo 1.2 Control del brazo de una unidad de disco.

El diagrama esquemático se muestra en la …gura 1.5, donde J es el momento


de inercia del brazo y A es una constante.
La dinámica que relaciona la posición y el brazo con el voltaje aplicado al
ampli…cador es aproximadamente descrita por la función de transferencia

A Y (s)
G (s) = 2
= (1.1)
Js U (s)
1.3 Un método rudimentario para sistemas controlados por computador 5

1 1

0.5 0.5

0 0
0 2 4 6 0 2 4 6

1 1

u(t)
0.5 0.5 y a(t)
y d(t)
0 0
0 2 4 6 0 2 4 6
Tiempo Tiempo

Figura 1.4: Respuesta al escalón (puntos) de un sistema de primer


orden implementado para diferentes retardos en el escalón unitario (lineas
discontinuas). Para comparación se muestra la respuesta del correspondiente
sistema análogo (continuo en el tiempo) en línea continua.

El propósito del sistema de control es controlar la posición del brazo de


tal manera que la cabeza siga una pista dada y que rápidamente pueda
ser movida a otra diferente. Es fácil averiguar los bene…cios de un control
mejorado: un mejor seguimiento de la pista permite pistas más angostas y
por lo tanto mayor densidad de almacenamiento. Un sistema de control más
rápido reduce el tiempo de búsqueda. Este ejemplo, se enfocará sobre el
problema de búsqueda, que es un típico problema de servo. y es la señal de
referencia (comando) y u es la señal de control. Un controlador simple puede
ser descrito por la siguiente ley de control:
b s+b
U (s) = BR (s) B Y (s) (1.2)
a s+a
Si los parámetros del controlador se escogen como
!0 2J! 0
a = 2! 0 , b = ,B= (1.3)
2 A
el sistema en lazo cerrado tiene la ecuación característica
P (s) = s3 + 2! 0 s2 + 2! 20 s + ! 30 = (s + ! 0 ) s2 + ! 0 s + ! 20
6 Introducción al control por computador

A
Js 2
r (t )
u (t ) y (t )
Controlador Amplificad or Motor + Brazo

Figura 1.5: Sistema para controlar la posición del brazo de una unidad de
disco.

Y al reemplazar (1.1) en (1.2) se obtiene


Y (s) A (s + ! 0 )
= (1.4)
R (s) 4J (s + 2! 0 s2 + 2! 20 s + ! 30 )
3

Ejemplo 1.3 Diagrama de bloques del controlador del brazo de una unidad
de disco.
Las ecuaciones (1.1) y (1.2) se pueden representar en un diagrama de bloques
como se muestra en la …gura 1.6.
Controlado r Análogo
r (t ) b u (t ) A y (t )
B +
a − Js 2

B(s + b )
(s + a )

Figura 1.6: Diagrama de bloques del control del brazo de una unidad de disco.

Considere que los valores de las variables (1.3) del sistema 1.4 están dadas
por
1
A = J = 1; ! 0 = 1; a = 2; b = ; B = 2
2
de forma que el sistema (1.4) se puede reescribir como
Y (s) s+1
= (1.5)
R (s) 4 (s + 2s2 + 2s + 1)
3
1.3 Un método rudimentario para sistemas controlados por computador 7

Al evaluar el comportamiento del sistema (1.5) frente a una entrada del tipo
escalón unitario, se nota que este sistema tiene un comportamiento razonable
con un tiempo de asentamiento de 5:52 !0
para una tolerancia del 5 %. Estos
resultados se observan en la …gura 1.7.

1.5

1
salida: y

0.5

0
0 2 4 6 8 10

0.5
senal de control: u

-0.5
0 2 4 6 8 10
Tiempo

Figura 1.7: Simulación del control análogo (línea punteada) y por computador
(línea continua) del brazo de una unidad de disco. El periodo de muestreo es
h = 0:2
!0
.

Para obtener el algoritmo para un sistema controlado por computador, la ley


de control (1.2) es reescrita como:

b a b b
U (s) = BR (s) BY (s) + B Y (s) = B R (s) Y (s) + X (s)
a s+a a

la cual puede ser escrita en el dominio del tiempo como:

b
u (t) = B r (t) y (t) + x (t) (1.6)
a
dx
= ax + (a b) y (1.7)
dt
8 Introducción al control por computador

dx
Para obtener un algoritmo de control es necesario aproximar la derivada dt
con una diferencia. Es decir
dx x (t + h) x (t)
= ax + (a b) y
dt h
Así, (1.6) y (1.7) se aproximan como
b
u (tk ) = B r (tk ) y (tk ) + x (tk ) (1.8)
a
x (tk + h) = (1 ah) x (tk ) + h (a b) y (tk ) (1.9)
Esta ley de control se debe ejecutar en cada instante de muestreo. Esto se
puede lograr con el siguiente programa en Matlab usando una tarjeta de
adquisición de datos USB de National InstrumentsTM :
%Inicializacion para control en tiempo real
%Crea el objeto de entrada analoga
ai=analoginput(’nidaq’,’Dev1’);
%agrega el canal 0 de entrada
addchannel(ai,0);
%Crea el objeto de salida analoga
ao=analogoutput(’nidaq’,’Dev1’);
%agrega el el canal 0 de salida
addchannel(ao,0);
tiempo_muestreo=0.5; % tiempo en segundos
tiempo_inicial=clock; % tiempo inicial
while(1),
if(etime(clock,tiempo_inicial)>=tiempo_muestreo),
% Algoritmo
tiempo_inicial=clock;
% leer salida del proceso (leer un puerto)
y=getsample(ai);
% calcular senal de control
u=B*(b/a*r-y+x);
% enviar la senal de control (escribir un puerto)
putsample(ao,u);
% calcular el nuevo x
x=(1-a*h)*x+h*(a-b)*y;
end
end
1.3 Un método rudimentario para sistemas controlados por computador 9

Reloj

Algortimo

Figura 1.8: Ejecución periódica del programa en el computador.

La posición del brazo y es leida de una entrada análoga. Su valor deseado


r se supone es dado digitalmente, el algoritmo tiene un estado, la variable
x, la cual es actualizada en cada instante de muestreo. Se calcula la ley de
control y el valor es convertido a una señal análoga. El programa se ejecuta
periódicamente con un periodo h mediante una rutina de interrupción como
se muestra en la …gura 1.8.
El diagrama de bloques correspondiente al sistema discreto se muestra en la
…gura 1.9.

r (t ) 1 u (t ) 1 y (t )
ZOH +
2 − s2

21z − 19 h = 0.2
12 z − 8

Figura 1.9: Diagrama de bloques del sistema discreto para el ejemplo 1.3.

Aquí se ha aplicado la transformada Z bilineal con h = 0:2 para el


controlador, tal que

2 (z 1)
s !
h (z + 1)
K (s + b) 2s + 1 21z 19
= !
s+a s+2 12z 8
Ya que la aproximación de la derivada por una ecuación de diferencia es
buena si el intervalo h es pequeño, se puede esperar que el comportamiento
10 Introducción al control por computador

del sistema controlado por computador esté cercano al sistema análogo. Esto
se ilustra en la …gura 1.7, la cual muestra las posiciones del brazo y las
señales de control para los sistemas con h = 0:2 !0
. Nótese que la señal de
control para el SCC es constante entre los instantes de muestreo. Nótese
además que la diferencia entre las salidas de los sistemas es muy pequeña. El
sistema controlado por computador tiene un sobrepaso ligeramente mayor y
el tiempo de asentamiento (para una tolerancia del 5 %) es un poco mayor, 5:7 !0
en lugar de 5:5
!0
. La diferencia entre los sistemas decrece cuando el periodo de
muestreo decrece. Cuando este aumenta, el SCC, sin embargo, se deteriora.
Esto se ilustra en la …gura 1.10, la cual muestra el comportamiento del sistema
para periodos de muestreo de h = 0:5 !0
y h = 1:08
!0
. La respuesta es razonable
para periodos de muestreo cortos, pero el sistema puede llegar a ser inestable
para periodos de muestreo largos.

(a) (b)
1.5 1.5

1 1
salida: y

0.5 0.5

0 0
0 5 10 0 5 10

0.5 0.5
senal de control: u

0 0

-0.5 -0.5
0 5 10 0 5 10
Tiempo Tiempo

Figura 1.10: Simulación del control del brazo de una unidad de disco con
control por computador.

Se ha mostrado que es directo obtener un algoritmo para control por


computador. Se escribe la ley de control continua como una ecuación
diferencial y se aproximan las derivadas por diferencias. El ejemplo parece
trabajar bien si el periodo de muestreo es su…cientemente pequeño. El
1.4 Control Dead Beat 11

1.5

salida: y
0.5

0
0 2 4 6 8 10

1
senal de control: u

-1
0 2 4 6 8 10
Tiempo

Figura 1.11: Simulación del control dead beat de la unidad de disco (lineas
continuas). El periodo de muestreo es h = 1:4
!0
. El controlador análogo del
ejemplo 1.2 también se muestra (lineas punteadas).

sobrepaso y el tiempo de asentamiento son, sin embargo, un poco mayores


en el control por computador. Este método de diseño de SCC se discutirá
posteriormente.

1.4. Control Dead Beat


El ejemplo anterior parece indicar que un sistema controlado por computador
es inferior al control en tiempo continuo. Se mostrará que este no es
necesariamente el caso.

Ejemplo 1.4 Control dead beat de una unidad de disco.

Considérese la unidad de disco del ejemplo anterior. La …gura 1.11 muestra


el comportamiento del SCC con un intervalo largo de muestreo h = 1:4 !0
.
Para comparación se muestran la posición del brazo, su velocidad y la señal
de control para el controlador análogo usado en el ejemplo 1.2. Nótese el
excelente comportamiento del SCC. Alcanza el estado estacionario mucho
más rápido que el sistema análogo (con magnitudes de las señales de control
cercanas). El tiempo de asentamiento (para tolerancias del 5 %) es 2:34 !0
,
5:5
que es mucho menor que el del sistema análogo: !0 . La salida alcanza la
12 Introducción al control por computador

posición deseada sin sobrepaso y permanece constante cuando alcanza su


valor deseado, lo cual sucede en un tiempo …nito. Se puede demostrar que la
estrategia de control es:

u (tk ) = t0 r (tk ) s0 y (tk ) + s1 y (tk 1 ) r1 u (tk 1 ) (1.10)

El ejemplo muestra que se pueden obtener con control por computador


estrategias de control con diferente comportamiento . En el ejemplo
particular, la respuesta en el tiempo se redujo en un factor de 2. La estrategia
de control en el ejemplo 1.4 es llamada control dead beat ya que el sistema
está en reposo cuando la posición deseada es alcanzada. Tal esquema de
control no se puede obtener con un control análogo.
De acuerdo a (1.10) se puede generar el diagrama de bloques del sistema
de control del ejemplo 1.4 el cual se muestra en la …gura 1.12, donde K1 =
1 3
h2
= 0:5102, y K2 = 2h = 1:0714. Se ha seleccionado un tiempo de muestreo
h = 1:4.
r (t ) u (t ) 1 y (t )
ZOH G +
s2
− −
h −1
z
2

z −1
K2 + x1
x2 hz

K1 ZOH

Figura 1.12: Diagrama de bloques del controlador dead beat para el ejemplo
1.4.

1.5. Fenómeno de traslape (aliasing)


Una propiedad de la naturaleza variante con el tiempo de SCC se mostró en la
…gura 1.4. Ahora se ilustrará otra propiedad que tiene grandes implicaciones.
Sistemas lineales e invariantes con el tiempo tienen la propiedad de que
la respuesta en estado estacionario a excitaciones sinusoidales es sinusoidal
con la misma frecuencia que la de la excitación. Se mostrará que SCC se
1.5 Fenómeno de traslape (aliasing) 13

comportan de manera más complicada ya que el muestreo creará señales con


nuevas frecuencias. Esto puede deteriorar drásticamente el comportamiento
si no se toman precauciones adecuadas.

Ejemplo 1.5 El muestreo crea nuevas frecuencias.

Considérese el sistema de control de la unidad de disco del ejemplo 1.2.


Suponer ! 0 = 1 y el periodo de muestreo h = 0:5 !0
= 0:5 y suponer que
hay un ruido sinusoidal en la medida con amplitud 0:1 y frecuencia angular
12 rad-seg. En las …guras 1.13 y 1.14 se muestran los diagramas de bloques
correspondientes para el caso análogo y el caso digital respectivamente.

n(t ) = 0.1sin 12t

r (t ) 1 u (t ) 1 y (t ) y (t )+ n(t )
+ +
+
2 − s2

2s + 1
s+2

Figura 1.13: Diagrama de bloques del ejemplo 1.5 correspondiente al caso


análogo.

n(t ) = 0.1sin 12t

r (t ) 1 u (t ) 1 y (t ) y (t )+ n(t )
ZOH + +
+
2 − s2

h = 0.5
9z − 7
6z − 2

Figura 1.14: Diagrama de bloques del ejemplo 1.5 correspondiente al caso


digital.

Los resultados se observan en la …gura 1.15, donde se ve que hay una


diferencia drástica entre los sistemas. En el sistema continuo, …gura 1.15a,
el ruido en la medida tiene poca in‡uencia en la posición del brazo. Sin
14 Introducción al control por computador

embargo, se crea una acción de control sustancial con la frecuencia del ruido
en la medida. La alta frecuencia del ruido en la medida no es notoria en la
señal de control para el SCC, 1.15b, pero hay una componente sustancial de
baja frecuencia.

(a) (b)

0.2 0.2
Salida: y

0 0

-0.2 -0.2
0 5 10 15 20 0 5 10 15 20

0.2 0.2
Salida: y+n

0 0

-0.2 -0.2
0 5 10 15 20 0 5 10 15 20
Senal de control: u

0.2 0.2

0 0

-0.2 -0.2
0 5 10 15 20 0 5 10 15 20
Tiempo Tiempo

Figura 1.15: Simulación de la unidad de disco con un control análogo y digital.


! 0 = 1, h = 0:5, y hay un ruido en la medida n = 0:1 sin 12t. (a) Sistema
análogo, (b) Sistema de datos muestreado.

Para entender lo que sucede, considérese la …gura 1.16, la cual muestra la


señal de control y la señal medida en una escala expandida. La …gura muestra
que hay una variación considerable de la señal medida en cada periodo de
muestreo y la variación a baja frecuencia se obtiene por el muestreo a baja
velocidad de la señal de alta frecuencia.
Se ha notado entonces que el muestreo crea señales con nuevas frecuencias.
Fenómeno que se debe entender para tratar con SCC. Por ahora basta
mencionar que el muestreo de una señal con ! crea componentes de señal
con frecuencias
! muestreada = n! s ! (1.11)
en donde ! s = 2h es la frecuencia de muestreo y n es un entero arbitrario.
Así el muestreo crea nuevas frecuencias. Esto se discutirá luego.
1.5 Fenómeno de traslape (aliasing) 15

Salida: y+n 0.2 y real


0.1 y medida
0
-0.1
-0.2

0 2 4 6 8 10
Senal de control: u

0.2
0.1
0
-0.1
-0.2

0 2 4 6 8 10
Tiempo

Figura 1.16: Simulación del control por computador de la unidad de disco.


! 0 = 1, h = 0:5, y n = 0:1 sin 12t.

2
En el ejemplo particular se tiene ! s = 0:5 = 4 = 12:57 y la frecuencia de la
señal medida es 12 rad-seg. En este caso el muestreo crea una componente
de la señal con frecuencia 0.57 rad-seg, cuyo periodo es 11 segundos. Esta
es la componente de baja frecuencia que es claramente visible en la …gura
1.16. El ejemplo 1.5 muestra que frecuencias bajas pueden ser creadas por
muestreo. De (1.11) se nota que el muestreo también puede dar frecuencias
que son más altas que la de la excitación. Esto se muestra en el ejemplo 1.6.
Ejemplo 1.6 Creación de altas frecuencias por el muestreo.
Considere el diagrama de bloques que se muestra en la …gura 1.17.
La …gura 1.18 muestra lo que sucede cuando una señal sinusoidal de
frecuencia 4.9 Hz es aplicada al sistema en el ejemplo 1.1, el cual tiene un
periodo de muestreo de 0.1 segundos (frecuencia de muestreo de 10 Hz). De
la ecuación (1.11) se sigue que una componente de señal con frecuencia de 5.1
Hz es creada debido al muestreo. Esta señal interactua con la señal original
de 4.9 Hz para generar la correpondiente a la salida yc en la …gura 1.18 de
0.1 Hz ("beating").
16 Introducción al control por computador

u (t ) = sin 2πft 1 yc (t )
s +1
f = 4.9Hz

yd (t )
0.6321
h = 0.1 z − 0.3679

Figura 1.17: Diagrama de bloques para el ejemplo 1.6.

Hay muchos aspectos de los sistemas muestreados que se puede entender


con la teoría de sistemas lineales invariantes con el tiempo. Los ejemplos
anteriores indican sin embargo que los sistemas muestreados no se pueden
entender totalmente dentro de esta estructura. Es útil entonces tener otras
herramientas de análisis. El fenómeno de que el proceso de muestreo
crea componentes con nuevas frecuencias se llama aliasing (traslape). Una
consecuencia de la ecuación (1.11) es que habrá componentes de baja
frecuencia creadas siempre y cuando la señal muestreada contenga frecuencias
que son mayores que la mitad de la frecuencia de muestreo. La frecuencia
! N = !2s es llamada la frecuencia de Nyquist, parámetro importante en los
sistemas muestreados.

1.6. Filtros antes del muestreo o …ltros


antialising
Para evitar las di…cultades mostradas en la …gura 1.15, es esencial que todas
las componentes con frecuencias mayores que la frecuencia de Nyquist sean
removidas antes que la señal muestreada.
Haciendo esto, las señales muestreadas no cambiarán mucho en cada intervalo
de muestreo y las di…cultades ilustradas en los ejemplos anteriores son
evitadas. Los …ltros que reducen las componentes de alta frecuencia de
las señales son llamadas …ltros antialiasing, los cuales son componentes
importantes de los SCC.
1.7 Ecuaciones de diferencia 17

Entrada: u 1

-1
0 2 4 6 8 10

0.5
Salida: y d

-0.5
0 2 4 6 8 10
0.1
Salida: y c

-0.1
0 2 4 6 8 10
Tiempo

Figura 1.18: Excitación sinusoidal del sistema muestreado en el diagrama de


bloques de la …gura 1.17.

1.7. Ecuaciones de diferencia


Aunque un SCC podría tener un comportamiento bastante complejo, es fácil
describir el comportamiento del sistema en los instantes de muestreo. Esto
se ilustrará analizando la unidad de disco con el controlador dead beat.
Ejemplo 1.7 Ecuaciones de diferencia
El proceso dado por la ecuación (1.1) después de ser discretizado se puede
describir por la siguiente ecuación con diferencia; con J = A = 1:

h2
y (tk ) 2y (tk 1 ) + y (tk 2 ) = (u (tk 1 ) + u (tk 2 )) (1.12)
2
Nota: la función de transferencia del sistema discretizado es:
h2
2
(z + 1) Y (z)
H (z) = =
z2 2z + 1 U (z)
18 Introducción al control por computador

La estrategia de control es dada por la ecuación (1.10) la cual se describe ya


con los parámetros de diseño:
1 5 3 3
u (tk ) = r (tk ) y (tk ) + y (tk 1 ) u (tk 1 ) (1.13)
h2 2h2 2h2 4
Eliminando la señal de control entre las ecuaciones (1.12) y 1.13 se obtiene:
Usando la transformada Z en (1.13) y reemplazando en R (z) = H (z) U (z)
se obtiene:
z+1 z 1+z 2
Y (z) = R (z) = R (z)
2z 2 2
1
y (tk ) = (r (tk 1 ) + r (tk 2 ))
2
De lo cual se deduce que la salida es el valor promedio de los valores pasados
de la señal de referencia. Comparar con la …gura 1.11.
El ejemplo muestra que el comportamiento del SCC en los instantes de
muestreo es descrito por una ecuación lineal de diferencia. Las ecuaciones de
diferencia, entonces, jugarán un papel clave en la teoría de SCC; desempeñan
el mismo papel que las ecuaciones diferenciales para sistemas análogos, y
dan los valores de las variables del sistema en los instantes de muestreo. Si
con este conocimiento se está satisfecho, entonces se puede desarrollar una
teoría simple para el análisis y diseño de los sistemas muestreados. Para
tener un conocimiento más completo del comportamiento de los sistemas, se
debe analizar el comportamiento entre los instantes de muestreo y asegurarse
que las variables del sistema no cambian demasiado sobre cada periodo de
muestreo.

1.8. Necesidad de una teoría para los


sistemas controlados por computador
Los anteriores ejemplos muestran que SCC se pueden diseñar usando la
teoría de sistemas análogos y aproximando las ecuaciones diferenciales
que describen los controladores por ecuaciones en diferencia. Los ejemplos
también mustran que SCC tienen el potencial de dar esquemas de control,
tal como la estrategia dead beat, cuyo comportamiento no puede ser obtenido
con sistemas análogos. Se demostró que el muestreo puede crear fenómenos
que no se encuentran en sistemas lineales con el tiempo. Se demostró además
1.8 Necesidad de una teoría para los sistemas controlados por computador19

que la selección del periodo de muestreo es importante y que puede ser


necesario usar …ltros antialiasing. Todo esto claramente indica la necesidad
de una teoría para SCC.
20 Introducción al control por computador
Capítulo 2

Sistemas discretos en el tiempo

En este capítulo se introducen modelos matemáticos para SCC. Se muestra


como un sistema continuo en el tiempo se puede transformar en un sistema
discreto en el tiempo, considerando el comportamiento de las señales en los
instantes de muestreo.
En este capítulo el sistema se estudia como visto desde el computador. El
computador recibe medidas del proceso en tiempos discretos y transmite
nuevas señales de control en instantes discretos. El objetivo es entonces
describir el cambio de la señales de muestra a muestra, no en el intervalo entre
ellas. Así una herramienta natural es el uso de ecuaciones de diferencia. Se
enfatiza que los modelos matemáticos para SCC solo dan el comportamiento
en los puntos de muestra (el proceso físico es todavía un sistema análogo).

2.1. Muestreo de señales continuas en el


tiempo
En el contexto del control y las comunicaciones, el muestreo signi…ca que una
señal análoga es reemplzada por una secuencia de números, la cual representa
los valores de la señal en ciertos instantes.
El muestreo es una propiedad fundamental de SCC debido a la naturaleza
discreta (en el tiempo) del computador digital. Por ejemplo, en la …gura
1.1 las variables del proceso son muestreadas en conexión con la conversión
análoga y luego convertidas a forma digital (secuencia de números) para ser
procesadas por el computador. Así se genera una nueva secuencia de números,

21
22 Sistemas discretos en el tiempo

la cual es convertida a una señal análoga y aplicada al proceso. En la …gura 1.1


esto es manejado por el conversor digital análogo D/A. El proceso de convertir
una secuencia de números en una señal continua es llamdo reconstrucción de
la señal.
Para el análisis es útil tener una descripción matemátic del muestreo.
Muestrear una señal análoga signi…ca reemplazarla por sus valores en
un conjunto discreto de puntos. Sea M los enteros positivos y negativos
M = f ; 2; 1; 0; 1; 2; g y sea ftk : k 2 M g un subconjunto de los
números reales que contiene los instantes de muestreo. La versión muestreada
de la señal f es entonces la secuencia ff (tk ) : k 2 M g. El muestreo es
una operación lineal, los instantes de muestreo son a menudo espaciados
igualmente en el tiempo, es decir, tk = kh. Este caso es llamado muestreo
periódico y h es llamado periodo de muestreo o tiempo de muestreo. La
frecuencia correspondiente fs = h1 Hz o ! s = 2h rad-seg es llamada la
frecuencia de muestreo. Se introduce una notación para la mitad de la
1
frecuencia de muestreo fN = 2h Hz o ! N = h rad-seg, la cual es llamada la
frecuencia de Nyquist.

2.2. Muestreo de un sistema análogo en el


espacio deseado
Un problema fundamental consiste en como describir un sistema análogo
conectado a un computador a través de conversores A/D y D/A. En el
sistema de la …gura 2.1 se desea encontrar la relación entre las señales en
el computador, las secuencias fu (tk )g y fy (tk )g.

Reloj

{u (tk )} u (t ) y (t ) {y(tk )}
D/A Sistema A/D

Figura 2.1: Sistema análogo conectado a conversores D/A y A/D.

Hallar el equivalente discreto de un sistema análogo es llamado muestreo


de un sistema análogo. El modelo que se obtiene es llamado modelo
2.2 Muestreo de un sistema análogo en el espacio deseado 23

estroboscópico ya que da la relación entre las variables del sistema en los


instantes de muestreo únicamente. Para obtener las descripciones deseadas
es necesario describir los conversores y el sistema. Supóngase que el sistema
análogo es dado en la forma de espacio de estado:
dx
= Ax + Bu (t) (2.1)
dt
y (t) = Cx + Du (t)
El sistema tiene r entradas, p salidas y es de orden n.

2.2.1. Solución en términos de la matriz exponencial


La solución de la ecuación escalar (2.1)
x_ = ax + bu con x (0) = x0 (2.2)
se puede escribir como:
x = xh + xp
en donde xh es la solución de la ecuación homogénea (2.3)
x_ = ax con x (0) = x0 (2.3)
y xp es una solución particular (forzada o controlada) de la ecuación (2.2).
Se supone una solución xh en la forma de una serie in…nita de potencias en
t.
xn = a0 + a1 t + a2 t2 + + av tv + (2.4)
Si esta serie representa una solución, entonces debe satisfacer la ecuación
homogénea:
a1 + 2a2 t + 3a3 t2 + = a a0 + a1 t + a2 t2 +
y comparando coe…cientes se obtiene:
a1 = aa0
1 1 2
a2 = aa1 = a a0
2 2
1 1 3
a3 = aa2 = a a0
3 6
..
.
1 v
av = a a0
v!
24 Sistemas discretos en el tiempo

Como para t = 0, xh = x0 = a0 , la solución homogénea es:

1 22 1 v v
xh = 1 + at + at + + a t + x0 (2.5)
2! v!

La serie in…nita de potencias entre paréntesis se de…ne como la exponencial


escalar eat . Entonces:
xh = eat x0 (2.6)
Por cualquiera de los métodos clásicos se puede encontrar la solución
particular: Z t Z t
at a
xp = e e bu ( ) d = ea(t ) bu ( ) d (2.7)
0 0

y la solución total de (2.2) es entonces:


Z t
at at
x (t) = e x0 + e e a bu ( ) d (2.8)
Z t 0
x (t) = eat x0 + ea(t ) bu ( ) d (2.9)
0

Por analogía con el caso escalar se obtendrá la solución homogénea del


sistema:
x_ = Ax, x (0) = x0 (2.10)
Se supone una solución en la forma de un vector en series de potencias en t:

x = a0 + a1 t + a2 t2 + + av tv + (2.11)

con (2.11) en (2.10) se obtiene:

a1 + 2a2 t2 + 3a3 t3 + = A a0 + a1 t + a2 t2 +

Por lo tanto:

a1 = Aa0
1 1
a2 = Aa1 = A2 a0
2 2
..
.
1 v
av = A a0
v!
2.2 Muestreo de un sistema análogo en el espacio deseado 25

Puesto que para t = 0, x (0) = x0 = a0 , la solución homogénea es:


1 1 v v
x = I + At+ A2 t2 + + A t + x0 (2.12)
2! v!
La expresión dentro de paréntesis es una matriz n n y debido a su similitud
con la serie in…nita de potencias para un exponencial escalar, se le denomina
matriz exponencial y se denota con el símbolo eAt , es decir:
1 1 v v
eAt , I + At+ A2 t2 + + A t + (2.13)
2! v!
Se puede demostrar que esta serie matricial (así como la escalar) converge
absoluta y uniformemente para todo t …nito.
La solución homogénea de (2.10) en forma compacta es:

x_ (t) = eAt x0 (2.14)

La matriz exponencial también se conoce como la matriz de transición o


matriz fundamental y a menudo se simboliza por (t). Puesto que eAt es
una matriz de n n, la expresión (2.14) es una transformación lineal a través
de la cual el estado inicial x0 es transformado en el estado actual x (t).
Las siguientes son algunas de las características de la matriz exponencial:
d
1. dt
eAt = AeAt = eAt A

2. eA(t1 +t2 ) = eAt1 eAt2 = eAt2 eAt1


3. eAt e At
=I

es decir la inversa de eAt se calcula simplemente reemplazando t pot t en


(2.13).
Una interesante propiedad de la solución homogénea (2.14) es la siguiente:
considérese un proceso lineal en el cual en los instantes 0, t1 y t2 , los estados
son x0 , x1 y x2 , respectivamente. De (2.14) se tiene:

x1 = eAt1 x0
x2 = eAt2 x0

De las características de la matriz exponencial y de la última ecuación se


tiene:
x2 = eA(t2 t1 ) eAt1 x0 = eA(t2 t1 ) x1
26 Sistemas discretos en el tiempo

Es decir, el estado del sistema en cualquier tiempo t2 se puede obtener por


una transformación del estado en cualquier otro tiempo t1 usando la matriz
exponencial como una matriz de transformación.
Ejemplo 2.1 Considérese un sistema con:
x_ 1 1 0 x1 1
= con x (0) =
x_ 2 1 1 x2 1
de (2.13) se obtiene:
1 + t + 0:5t2 + 0
eAt =
t + t2 + 1 + t + 0:5t2 +
y por tanto
x1 1 + t + 0:5t2 +
=
x2 1 + 2t + 1:5t2 +
La solución para cada componente de x se obtiene truncando la serie de
potencias en t correspondiente. Nótese que la solución se caracteriza por un
incremento en la precisión para valores pequeños de t. Si se requiere una
buena solución en el rango 0 < t < tf es necesario incluir un gran número
de términos. Entre mayor el intervalo tf , mayor será el número de términos
necesarios. En los computadores digitales para truncar el cálculo de eAt de
(2.13) se mantiene un continuo chequeo del residuo R (m; t):
1 22 1 mm
eAt = I + At + At + + A t + R (m; t)
2! m!
El cálculo de eAt se obtiene cuando la norma de la matriz R (m; t), kR (m; t)k,
alcanza un mínimo.
Para propósitos de cálculo se acostumbra de…nir la norma de una matriz, la
cual es un escalar que mide la magnitud absoluta de todos los n2 elementos
de una matriz P de dimensiones n n.
Sea 2 3
p11 p1n
6 .. 7
P = 4 ... . . . . 5
pn1 pnn
Una norma de P puede ser:
X
n
kPk = p2ij (2.15)
i;j=1
2.2 Muestreo de un sistema análogo en el espacio deseado 27

Se procederá ahora a buscar la solución completa de (2.1), también conocida


como la ecuación transición de estado.
Análoga a la solución escalar se intentará la siguiente solución:
Z t
At At
x (t) = e x0 + e e A Bu ( ) d (2.16)
0
Z t
At
x (t) = e x0 + eA(t ) Bu ( ) d (2.17)
0

Se debe probar entonces que (2.17):

1. Satisface la ecuación diferencial (2.1)


2. Se reduce a x0 para t = 0.

Prueba. Haciendo t ! 0 se satisface la última condición:

l m x (t) = Ix0 + I0 = x0
t!0

Para probar la primer condición se deriva (2.17) con respecto a t:


Z t
At At At At
x_ (t) = Ae x0 + e e Bu (t) + Ae e A Bu ( ) d
0
Z t
x_ (t) = AeAt x0 + IBu (t) + AeAt e A Bu ( ) d
0
Z t
x_ (t) = A eAt x0 + eAt e A Bu ( ) d + Bu (t)
0
x_ (t) = Ax (t) + Bu (t)

Esto completa la prueba.

Ejemplo 2.2 Sea el sistema


x_ 1 1 0 x1 1
= con x (0) =
x_ 2 1 1 x2 1

y u (t) un escalón unitario de…nido por:

1, t > 0
u (t) =
0, t < 0
28 Sistemas discretos en el tiempo

Del ejemplo anterior se tiene:

At 1 t + 0:5t2 0
e =
t + t2 1 t + 0:5t2
entonces
A 1 + 0:5 2
e Bu ( ) =
1 2 + 1:5 2
Z t
A t 21 t2 + 16 t3
e Bu ( ) d =
0 t t2 + 12 t3
De (2.17) se tiene:
Z t
At A
x (t) = e x0 + e Bu ( ) d
0

Por lo tanto:
1 + t 21 t2 + 16 t3 1 + 2t + t2 +
x (t) = eAt =
1 + t t2 + 12 t3 1 + 3t + 2:5t2 +

La ecuación de transición de estado (2.17) es útil solo cuando el tiempo


inicial se de…ne en t = 0. En el estudio de sistemas de control, especialmente
sistemas discretos, a menudo se desea separar un proceso de transición de
estados en una sucesión de transiciones, y por lo tanto se debe escoger un
tiempo inicial más ‡exible. Sea este t0 con su correspondiente estado inicial
x (t0 ) y supóngase que la entrada u (t) se aplica para t 0.
Evaluando (2.17) en t = t0 y resolviendo para x (0) se tiene:
Z t0
x (0) = e At0
x (t0 ) e At0
eA(t0 ) Bu ( ) d (2.18)
0

Con (2.18) en (2.17):

Z t0 Z t
)
x (t) = e eAt At0
x (t0 ) At
e e At0
Bu ( ) d + A(t0
e eA(t ) Bu ( ) d
Z 00 Z t 0
t0 )
= eA(t x (t0 ) + eA(t t0 ) eA(t0 ) Bu ( ) d + eA(t ) Bu ( ) d
t0 0
Z 0 Z t
t0 )
= eA(t x (t0 ) + eA(t0 ) Bu ( ) d + eA(t ) Bu ( ) d
t0 0
2.2 Muestreo de un sistema análogo en el espacio deseado 29

Entonces: Z t
A(t t0 ) )
x (t) = e x (t0 ) + eA(t0 Bu ( ) d (2.19)
t0

Nótese que (2.19) se reduce a (2.17) para t0 = 0.

2.2.2. Solución por medio de la trasformada de Laplace


La gran popularidad de la transformada de Laplace depende de su habilidad
para transformar cierta clase de ecuaciones diferenciales en ecuaciones
algebraicas y la facilidad para el manejo de las condiciones iniciales.
Transformando ambos miembros de (2.1) se tiene:

sX (s) x0 = AX (s) + BU (s) (2.20)


sX (s) AX (s) = x0 + BU (s)
(sI A) X (s) = x0 + BU (s)
1 1
X (s) = (sI A) x0 + (sI A) BU (s) (2.21)
Si la ecuación de salida es:
y = Cx + Du (2.22)
transformando (2.22) y reemplazando (2.21) en ella se obtiene:
1 1
Y (s) = C (sI A) x0 + C (sI A) B + D U (s) (2.23)
Si se supone el estado inicial nulo x0 = 0, se de…ne la matriz de transferencia
H (s) aquella que relaciona la transformada de Laplace de la respuesta Y (s)
con la transformada de Laplace de la excitación U (s), así
Y (s) = H (s) U (s) (2.24)
donde
1
H (s) = C (sI A) B+D (2.25)
de forma que
2 3 2 32 3
Y1 (s) H11 (s) H12 (s) H1p (s) U1 (s)
6Y2 (s)7 6H21 (s) H22 (s) H2p (s)7 6 7
6 7 6 7 6U2 (s)7
6 .. 7 = 6 .. .. .. .. 7 6 . 7 (2.26)
4 . 5 4 . . . . 5 4 .. 5
Yq (s) Hq1 (s) Hq2 (s) Hqp (s) Up (s)
30 Sistemas discretos en el tiempo

donde Hjk corresponde a la función de transferencia que relaciona la entrada


Uk con la salida Yj .
El vector de estado x (t) se obtiene por la transformación inversa de (2.21):

1 1 1 1 1
x (t) = L fX (s)g = L (sI A) x0 = L (sI A) x0

De donde se obtiene una nueva representación para la matriz exponencial:

1 1
eAt = L (sI A) (2.27)

Nótese que (2.27) suministra una expresión explícita para la matriz de


transición.

Ejemplo 2.3 Considérese el ejemplo 2.2, en donde

1 0
A=
1 1

Por lo tanto,
" #
1
1 adj (sI A) 1 s 1 0 s 1
0
(sI A) = = 2 = 1 1
det (sI A) (s 1) 1 s 1 (s 1)2 s 1

y de (2.27):
et 0
eAt =
tet et

Si se supone el mismo estado inicial

1
x0 =
1

se obtiene la solución explícita para x (t):

et
x (t) = eAt x0 =
et (t + 1)
2.2 Muestreo de un sistema análogo en el espacio deseado 31

2.2.3. Teorema de Cayley-Hamilton


Teorema 2.1 Teorema de Cayley-Hamilton.

Sea
n n 1
a( ) = + a1 + + an = 0
la ecuación característica de la matriz A de dimensión n n. Entonces, la
matriz A satisface la siguiente ecuación

a ( ) = A n + a 1 An 1
+ + an I = 0

Esto es, la matriz A satisface su propia ecuación característica.

Teorema 2.2 Valores propios de la función de una matriz.

Si f (A) es un polinomio en A y ei los valores propios de A asociados con los


valores propios i , entonces

f (A) ei = f ( i ) ei

asi f ( i ) es un valor propio de f (A) y ei es su correspondiente vector propio.


Si f ( ) puede ser de…nido por la serie de potencia

X
1
i
f( )= ci
i=0

el cual se asume es convergente para j j < R, entonces la función de una


matriz
X1
f (A) = c i Ai
i=0

es convergente si todos los valores de A, i satisfacen j i j < R. Al usar el


teorema de Cayley-Hamilton, se puede demostrar que para cada función f
existe un polinomio p de grado menor que n tal que
n 1 n 2
f (A) = p (A) = 0A + 1A + + n 1I (2.28)

entonces se tiene
f ( i ) = p ( i ) , i = 1; : : : ; n (2.29)
32 Sistemas discretos en el tiempo

Si los valores propios son distintos, entonces estas condiciones son su…cientes
para determinar los i , i = 1; : : : ; n. Si existe un valor propio con
multiplicidad m, entonces las condiciones adicionales

f (1) ( i ) = p(1) ( i )
..
. (2.30)
(m 1)
f ( i ) = p(m 1) ( i )

se mantienen, donde f (i) es la i-ésima derivada con respecto a .


Al usar (2.28), (2.29) y (2.30) es posible calcular las funciones de las matrices.
Para sistemas de bajo orden, es muy conveniente hacer los cálculos a mano.

Ejemplo 2.4 Cálculo de la exponencial de una matriz.

Sea
0 1
A=
1 0
y determine
eAh = 0 Ah + 1I

Ah tiene los valores propios ih, el sistema de ecuaciones

eih = 0 ih + 1
e ih = 0 ih + 1

dando

1 sin (h)
0 = eih e ih =
2ih h
1 ih
1 = e + e ih = cos (h)
2

Finalmente,

0 1 1 0 cos (h) sin (h)


eAh = sin (h) + cos (h) =
1 0 0 1 sin (h) cos (h)
2.3 Muestreo con retenedor de orden cero de un sistema 33

2.3. Muestreo con retenedor de orden cero de


un sistema
Es común en el control por computador que el conversor D/A sea construido
de modo que él sostiene la señal análoga constante hasta que una nueva
conversión es ordenada. Esto es llamado un circuito retenedor de orden cero.
Se escogen los instantes de muestreo tk como los momentos en que el control
cambia. Ya que la señal de control es discontinua es necesario especi…car su
comportamiento en las discontinuidades. Se adopta la convención de que la
señal es continua por la derecha. Así la señal de control es representada por
la señal muestreada fu (tk ) : k = ; 2; 1; 0; 1; 2; g. Se determinará la
relación entre las variables del sistema en los instantes de muestreo. Dado el
estado en un tiempo de muestra tk el estado en un tiempo futuro t se obtiene
resolviendo (2.1). Así el estado en t en donde tk t tk+1 es
Z t
A(t tk ) 0
x (t) = e x (tk ) + eA(t s ) Bu (s0 ) ds0 (2.31)
tk
Z t
A(t tk ) 0
=e x (tk ) + eA(t s ) ds0 Bu (tk )
t
Z kt tk
= eA(t tk ) x (tk ) + eAs dsBu (tk )
0
= (t; tk ) x (tk ) + (t; tk ) u (tk )
en donde se ha tenido en cuenta que u (tk ) es constante entre los instantes
de muestreo y se hizo el cambio de variable s0 = t s.
El vector de estado en t es así una función lineal de x (tk ) y u (tk ). Si los
conversores D/A y A/D en la …gura 2.1 son perfectamente sincronizados
y si los tiempos de conversión son despreciables, se puede considerar que
la entrada u y la salida y son muestreadas en los mismo instantes. Así el
comportamiento del sistema en los instantes de muestra es descrito por:
x (tk+1 ) = (tk+1 ; tk ) x (tk ) + (tk+1 ; tk ) u (tk ) (2.32)
y (tk ) = Cx (tk ) + Du (tk )
en donde:
(tk+1 ; tk ) = eA(tk+1 tk )
Z tk+1 tk
(tk+1 ; tk ) = eAs dsB
0
34 Sistemas discretos en el tiempo

La relación entre las señales muestreadas puede entonces expresarse por la


ecuación lineal de diferencia (2.32), la cual da valores exactos de las variables
de estado y de salida en los instantes de muestreo ya que la señal de control
es constante entre estos. Por eso el modelo en (2.32) es llamado muestreo con
retenedor de orden cero (ZOH) del sistema en 2.1.
Generalmente D = 0. Una razón es que en los SCC, y es medida primero y
u (tk ) es generada luego como una función de y (tk ). Para muestreo periódico
h, tk = kh, y el modelo de 2.32 se simpli…ca al sistema invariante

x (kh + h) = x (kh) + u (kh) (2.33)


y (kh) = Cx (kh) + Du (kh)

en donde

= eAh (2.34)
Z h
= eAs dsB
0

Nótese de (2.34) que


d
= A (t) = (t) A (2.35)
dt
d
= (t) B
dt

2.4. Cálculo de y
Los cálculos requeridos para muestrear un sistema análogo son: la evaluación
de la exponencial de una matriz y la integración de la exponencial de una
matriz, lo cual puede ser hecho de diferentes maneras. Por ejemplo, usando:

Cálculo numérico (Matlab, Matrix).

Expansión en series de la exponencial de una matriz.

Transformada de Laplace - L eAt = (sI A) 1 .

Teorema de Cayley - Hamilton.

Transformación a forma diagonal o de Jordan.


2.4 Cálculo de y 35

Álgebra simbólica en el computador (Maple, Mathemática).

Cálculos a mano son posibles para sistemas de bajo orden, n 2, y para


sistemas de alto orden con estructuras especiales. Una manera de simpli…car
los cálculos es con:
Z h
Ah2 A2 h3
= eAs ds = Ih + + +
0 2! 3!
entonces:

= I +A
= B

El cálculo con computador se puede hacer usando varios algoritmos numéricos


con Matlab o Matrix.

Ejemplo 2.5 Sistema de primer orden.

Sea
dx
= x + u, 6= 0
dt
De (2.34)
h
= e
Z h
= e s ds = e h
1
0

Así el sistema muestreado es:

x (kh + h) = e h x (kh) + e h
1 u (kh)

Ejemplo 2.6 Integrador doble.

u (t ) 1 x2 1 y (t ) = x1
s s

Figura 2.2: Sistema con un integrador doble.


36 Sistemas discretos en el tiempo

Las ecuaciones de estado y de salida del integrador doble (ver …gura 2.2) se
pueden escribir como

0 1 0
x_ = x+ u
0 0 1
y= 1 0 x

Por lo tanto:
A2 h2
= eAh = I + Ah + +
2!
1 0 0 h 1 h
= + =
0 1 0 0 0 1
Z h Z h h2
1 s 0 s
= ds = ds = 2
0 0 1 1 0 1 h

Así, el modelo discreto del integrador doble es


h 2
1 h
x (kh + h) = x (kh) + 2 u (kh) (2.36)
0 1 h
y (kh) = 1 0 x (kh)

Ejemplo 2.7 Motor DC.

u (t ) 1 x1 1 y (t ) = x2
s +1 s

voltaje velocidad

Figura 2.3: Modelo normalizado de un motor DC.

El modelo simple normalizado de un motor DC es (ver …gura 2.3):

1 0 1
x_ = x+ u
1 0 0
y= 0 1 x

Utilizando Laplace:
2.5 La inversa del muestreo 37

1
1 s+1 0
(sI A) =
1 s
1 s 0
=
s (s + 1) 1 s + 1
1
s+1
0
= 1 1
s(s+1) s

Entonces:
h
e 0
= eAh = L 1 (sI A) 1 = h
1 e 1
Z h
e v 1 e h
= dv =
0 1 e v h 1+e h

2.5. La inversa del muestreo


De (2.35) se nota que (t) y (t) satisfacen la ecuación:
d (t) (t) n n (t) n m (t) An n Bn m
=
dt 0 I 0m n Im m 0m n 0m m

Por lo tanto,

(h) (h) A B
= exp h (2.37)
0 I 0 0
El muestreo de un sistema de…ne un mapeo de un sistema análogo, como
en 2.1, a un sistema discreto, como en (2.33). La pregunta natural es si es
posible obtener el correspondiente sistema análogo de la descripción discreta.
Ejemplo 2.8 Inversa del muestreo.
Considérese la ecuación de diferencia de primer orden:
x (kh + h) = ax (kh) + bu (kh)
Nótese del ejemplo 2.5 que el correspondiente sistema análogo se obtiene de:
h
e =a
h
e 1 =b
38 Sistemas discretos en el tiempo

Entonces
1
= ln (a)
h
b
= ln (a)
h (a 1)

Así se obtiene un sistema análogo con coe…cientes reales, solo con a > 0.
Para investigar el proceso de muestreo en el caso general, nótese de 2.37 que:

A B 1
= ln
0 0 h 0 I

en donde ln ( ) es la función logaritmo de una matriz. Del teorema de


Cayley-Hamilton se debe asumir que el logaritmo existe solo cuando no
tenga valores propios en el eje real negativo.

Ejemplo 2.9 Oscilador armónico.

El sistema discreto

cos h sin h 1 cos h


x (kh + h) = x (kh) + u (kh)
sin h cos h sin h
se puede obtener muestreando un sistema análogo con:

0 ! 0
A= ;B =
! 0 !

!2
su función de transferencia con y = x2 es G (s) = s2 +! 2
, en donde

2
!= + n, n = 0; 1; 2; : : :
h

En este caso el problema inverso tiene muchas soluciones. Este es


generalmente el caso si la matriz tiene valores propios complejos. Nótese
que ! es único si ! N ! ! N , donde ! N = h es la frecuencia de Nyquist
asociada con el periodo de muestreo h.
2.6 Muestreo de un sistema con retardo 39

u (t )

u (t − τ )
τ

kh − h kh kh + h kh + 2h

Figura 2.4: Relación entre u (t) y u (t ) y los instantes de muestreo.

2.6. Muestreo de un sistema con retardo


Los retardos son comunes en modelos matemáticos de procesos industriales.
La teoría de sistemas continuos con retardos es complicada ya que los sistemas
son de dimensión in…nita. Sin embargo, es fáscil muestrear sistemas con
retardos ya que la señal de control es constante entre tiempos de muestreo, lo
cual hace que el sistema muestreado sea de dimensión …nita. Sea el sistema:

dx
= Ax (t) + Bu (t ) (2.38)
dt
Inicialmente se supone que el retardo es menor o igual al periodo de
muestreo. Se calculará el muestreo del sistema (2.38) con retenedor de orden
cero. Integrando (2.38) sobre un periodo de muestreo:
Z kh+h
Ah s0 )
x (kh + h) = e x (kh) + eA(kh+h Bu (s0 ) ds0 (2.39)
kh

Ya que la señal u (t) es constante sobre el intervalo de muestreo, entonces


u (t ), sin embargo, cambia entre los instantes de muestreo (ver …gura 2.4).
Para evaluar la integral de (2.39) es conveniente entonces partir la integral
40 Sistemas discretos en el tiempo

en dos partes tal que u (t ) sea constante en cada parte. Por lo tanto:
Z kh+h Z kh+
A(kh+h s0 ) 0 0 s0 )
e Bu (s ) ds = eA(kh+h Bds0 u (kh h)
kh kh
Z kh+h
s0 )
+ eA(kh+h Bds0 u (kh)
kh+
= 1 u (kh h) + 0 u (kh)

Así,el muestreo del sistema análogo (2.38) da:

x (kh + h) = x (kh) + 0 u (kh) + 1 u (kh h) (2.40)

en donde

= eAh (2.41)
Z h
0 = eAs dsB
0
Z
1 = eA(h )
eAs dsB
0

Un modelo de espacio de estados de (2.40) es

x (kh + h) 1 x (kh)
= + 0 u (kh)
u (kh) 0 0 u (kh h) I

Nótese que se introducen r variables de estado adicionales u (kh h), las


cuales representan los valores pasados de la señales de control. El sistema
análogo (2.38) es de dimensión in…nita, mientras que el correspondiente
sistema muestreado es de dimensión …nita. Así los retardos son más simples
de manejar si el sistema es muestreado, por la siguiente razón: para especi…car
el estado del sistema, es necesario almacenar la entrada en un intervalo de
tiempo igual al retardo. En la reconstrucción con ZOH, la señal de entrada
se puede representar siempre por un número dinito de valores.

Ejemplo 2.10 Sistema de primer orden con retardo.

Sea
dx
= x + u (t ), 6= 0
dt
2.7 Retardos mayores 41

Si el sistema es muestreado con un periodo h, en donde 0 h, entonces


de (2.41):
= a=e h
Z h
s (h )
0 = b0 = e ds = e 1
0
Z
(h ) s h (h )
1 = b1 = e e ds = e e
0
El sistema muestreado es entonces
x (kh + h) = ax (kh) + b0 u (kh) + b1 u (kh h)
Ejemplo 2.11 Integrador doble con retardo.
Para el integrador doble del ejemplo 2.6 con retardo 0 h se tiene
1 h
= eAh =
0 1
Z 2
1 h h
1 = eA(h )
eAs dsB = 2 = 2
0 0 1
Z h (h )2
As
0 = e dsB = 2
0 (h )

2.7. Retardos mayores


Si el retardo es mayor que h, entonces el análisis previo debe ser modi…cado
un poco. Si:
0
= (d 1) h ,0< 0<h
en donde d es un entero, se obtiene la siguiente ecuación:
x (kh + h) = x (kh) + 0 u (kh (d 1) h) + 1 u (kh dh)
en donde 0 y 1 son dados por (2.41) con reemplazada por 0 .
El correspondiente modelo de espacio de estado es:
2 3 2 32 3 2 3
x (kh + h) 1 0 0 x (kh) 0
6u (kh (d 1) h)7 6 0 0 I 0 7 6u (kh dh)7 607
6 7 6 76 7 6 7
6 .. 7 6 .. .. .. . . .. 7 6 .. 7 607
6 . 7 6. .
= . . .7 6 . 7 + 6 7 u (kh)
6 7 6 76 7 6.7
4 u (kh h) 5 40 0 0 I 5 4u (kh 2h)5 4 .. 5
u (kh) 0 0 0 0 u (kh h) I
(2.42)
42 Sistemas discretos en el tiempo

Figura 2.5: Diagrama esquemático de una máquina de papel

Con > 0 , n’otese que d r variables de estado adicionales son usadas


para describir el retardo, en donde r es el número de entradas. El polinomio
característico de la descripción del espacio de estado es dr A ( ), en donde
A ( ) es el polinomio característico de .
Ejemplo 2.12 Modelo simple de una máquina de papel.
Muchos procesos dinámicos se pueden aproximar por una dinámica de primer
orden y un retardo. Un ejemplo e la máquina de papel. La …gura 2.5 muestra
el modelo simple de una máquina de papel. La entrada es el ‡ujo de materia
prima, es decir, la cantidad de pulpa. La salida es el peso básico, es decir el
grosor del papel.
El modelo matemático se puede normalizar a la función de transferencia
1 s Y (s)
G (s) = e =
s+1 U (s)
Con x = y la ecuación diferencial es:
dx
= x (t) + u (t )
dt
Con = 2:6 y h = 1 =) d = 3 y 0 = 0:6 y 2.42 es:
x (k + 1) = x (k) + 0 u (k 2) + 1 u (k 3)
en donde
1
= eZ = 0:3679
0:4
0 = e s ds = 1 e 0:4 = 0:3297
0
Z 0:6
0:4
1 = e e s ds = e 0:4 e 0:1 = 0:3024
0
2.8 Sistemas discretos 43

2.8. Sistemas discretos


Se tratarán las propiedades de la ecuaciones en diferencia. Los sistemas
discretos invariantes se pueden describir por:

x (k + 1) = x (k) + u (k) (2.43)


y (k) = Cx (k) + Du (k)

Por simplicidad se usó el tiempo de muestreo h = 1.

2.9. Solución de ecuaciones


Para analizar sistemas discretos es necesario resolver (2.43). Suponer que las
condiciones iniciales x (k0 ) y las señales de entrada u (k0 ), u (k0 + 1), . . . son
dadas. LA ecuación (2.43) se puede resolver por iteraciones simples:

x (k0 + 1) = x (k0 ) + u (k0 ) (2.44)


x (k0 + 2) = x (k0 + 1) + u (k0 + 1)
2
= x (k0 + 1) + u (k0 ) + u (k0 + 1)
..
.
k k0 k k0 1
x (k) = x (k0 ) + u (k0 ) + + u (k 1)
X
k 1
k k0 k j 1
= x (k0 ) + u (j)
j=k0

La solución consiste de 2 partes: una que depende de las condiciones iniciales


y la otra es una suma ponderada de las señales de entrada. 2.44 muestra
que los valores propios de determinan las propiedades de la solución y se
determinan de la ecuación característica

det ( I )=0

Ejemplo 2.13 Solución de una ecuación de diferencia.

Considérese el sistema discreto:

1 0 1
x (k + 1) = x (k) , x (0) =
1 2 1
44 Sistemas discretos en el tiempo

Se puede veri…car que


k
k 1 0
= Pk (k J) (J 1) k
J=1 1 2 2

Por lo tanto de (2.44)


k
1
x (k) = Pk (k J) (J 1) k
J=1 1 2 + 2

Si j i j < 1, i = 1; 2, entonces x (k) converge al origen. Si uno de los valores


propios de tiene un valor absoluto mayor que 1, entonces uno o ambos de
los estados divergen.

2.10. Cambio de coordenadas en los modelos


de espacio de estados
Considérese el sistema discreto (2.43). Se introducirá un cambio de
coordenadas, es decir, se de…nen nuevas variables de estado. Si T es una
matriz no singular y se de…ne un nuevo vector de estado Z (k) = T x (k),

Z (k + 1) = T x (k + 1) = T x (k) + T u (k)
= T T 1 Z (k) + T u (k)
= ~ Z (k) + ~ u (k)

y:

y (k) = Cx (k) + Du (k)


= CT 1 Z (k) + Du (k)
~ (k) + Du
= CZ ~ (k)

Teorema 2.3 Invarianza de la ecuación característica.

La ecuación característica

det ( I )=0

es invariante cuando se introducen nuevos estados utilizando una matriz de


transformación no singular T .
2.11 Forma diagonal 45

Prueba.

det I ~ = det TT 1
T T 1

1
= det T det ( I ) det T
= det ( I )

Hallar una matriz de transformación es lo mismo que resolver para los n2


elementos de T del siguiente conjunto de ecuaciones:

T = ~T

Se pueden escoger coordenadas tales que den formas simples de las ecuaciones
del sistema.

2.11. Forma diagonal


Si tiene valores propios diferentes, entonces existe un matriz T tal que
2 3
1 0
6 7
T T 1 = 4 ... . . . ... 5
0 n

en donde los i son los valores propios de . El cálculo de T se discute


posteriormente. En este caso se obtiene un conjunto desacoplado de
ecuaciones de diferencia de primer orden:

Z1 (k + 1) = 1 Z1 (k) + 1 u (k)
..
.
Zn (k + 1) = n Zn (k) + n u (k)
y (k) = 1 Z1 (k) + + n Zn (k)

La solución del sistema de ecuaciones es ahora simple:

X
k 1
k J 1
Zi (k) = i (k) Zi (0) + i i u (J) (2.45)
J=0
46 Sistemas discretos en el tiempo

Ejemplo 2.14 Forma diagonal

Considérese el motor DC del ejemplo 2.7 con h = 1. Usando la


transformación:
1 1
T =
1:4142 0

se obtiene

~ = 1 0 1
;~ = ;
0 0:3679 0:8970
C~ = 1 0:7071

2.12. Forma de Jordan


Si tiene valores propios múltiples, entonces generalmente no es posible
diagonalizar . Sea una matriz de n n y la notación
2 3
1 0 0
6 .. 7
60 1 .7
6 7
Lk ( ) = 6 ... ..
.
..
.
..
. 07
6 7
40 0 15
0 0 0

en donde Lk es una matriz de k k. Entonces existe una matriz T tal que


2 3
L k1 ( 1 ) 0
6 .. 7
1 6 Lk 2 ( 2 ) . 7
T T =6 .. ... 7 (2.46)
4 . 5
0 L kr ( r )

con k1 +k2 + kr = n. Los i son los valores propios de , no necesariamente


distintos. (2.46) es llamada la forma de Jordan. Así, la matriz transformada
~ tiene los valores propios en la diagonal principal y algunos en la diagonal
superior.
2.13 Vectores característicos generalizados 47

2.13. Vectores característicos generalizados


Si A tiene valores característicos de orden múltiple y no es simétrica,
no todos los vectores característicos se pueden encontrar de la ecuación
( i I A) pi = 0. Si j es un valor característico de multiplicidad m
entonces los vectores característicos generalizados se pueden obtener de las
m ecuaciones vectoriales siguientes:

( jI A) p1 = 0
( jI A) p2 = p2
..
.
( jI A) pm = pm 1

2.14. Forma canónica de Jordan


En general, cuando A tiene valores característicos de orden múltiple, a menos
que la matriz sea simétrica con elementos reales, no se puede transformar en
una matriz diagonal. Sin embargo, existe una matriz de transformación de
similitud T, tal que A^ = T 1 AT es casi diagonal. La matriz A ^ se conoce
como forma canónica de Jordan.
Una forma canónica de Jordan típica es:
2 3
1 1 0 0 0
60 1 0 07
6 1 7
^ 6
A =6 0 0 0 07
1 7
40 0 0 2 05
0 0 0 0 3

en donde se supone que A tiene un valor característico de tercer orden 1 , y


valores característicos distintos 2 y 3 . Para realizar la transformación a la
forma canónica de Jordan, la matriz de transformación T se forma empleando
los vectores característicos y los vectores característicos generalizados como
sus columnas.

Es importante mencionar dos cosas:

a. La controlabilidad en sistemas de múltiple entrada generalmente no


requiere que el sistema sea controlable por cada entrada actuando sola;
48 Sistemas discretos en el tiempo

el sistema es controlable si todas las entradas actuando juntas pueden


transferir el estado x (t0 ) al estado x (tf ). La prueba de controlabilidad
en este caso es que la matriz C (A; B) tenga rango total.

b. Para sistemas de múltiple salida el criterio algebraico para


observabilidad es que el rango de O (C; A) sea igual a n (número de
variables de estado).

2.15. Modelos entrada - salida


Un sistema dinámico se puede describir usando modelos internos, como los
modelos de espacio de estado (describen todos los acoples internos entre las
variables del sistema) o modelos externos, que dan solo la relación entre
la entrada y la salida del sistema. La relación entrada - salida para un
sistema lineal se puede expresar por una función que es la respuesta al
pulso. El cálculo con operador de desplazamiento se puede usar para derivar
directamente la relación entrada - salida, lo cual conduce a la caracterización
del comportamiento entrada - salida en términos de los operadores de
transferencia al pulso.

2.16. Respuesta al pulso


Considérese un sistema discreto con una entrada y una salida. Las señales de
entrada y salida en un intervalo de tiempo …nito se puede representar como
vectores de dimensión …nita:
T
U = u (0) u (N 1)
T
Y = y (0) y (N 1)

El modelo lineal general que relaciona Y a U se puede expresar como

Y = HU + Yp

en donde H es una matriz de N N . Yp es debida a las condiciones iniciales.


Si la relación entre Y y U es causal, la matriz H debe ser triangular inferior.
El elemento h (k; m) de H es entonces cero si m > k. La relación entrada -
2.16 Respuesta al pulso 49

salida para un sistema lineal es:

X
k
y (k) = h (k; m) u (m) + Yp (k)
m=0

en donde Yp es debido a las condiciones iniciales.


La función h (k; m) es llamada función de respuesta al pulso, o la función
ponderante del sistema. Ésta es una representación conveniente ya que se
puede medir directamente inyectando un pulso de magnitud 1 con duración
igual al intervalo de muestreo y registrando la salida. Con condiciones nulas,
el valor h (k; m) de la respuesta al pulso da la salida en el tiempo k para
un pulso unitario en el tiempo m. Para sistemas con múltiples entradas y
salidas, la respuesta al pulso es simplemente una matriz de funciones. Para
sistemas invariantes, la respuesta al pulso es una función de k m, es decir

h (k; m) = h (k m)

Para calcular la respuesta al pulso del sistema de…nido por el espacio de


estado (2.43) se sigue de (2.44):

X
k 1
k k0 k J 1
y (k) = C x (k0 ) + C u (J) + Du (k)
J=K0

Así la función respuesta al pulso del sistema discreto es


8
< 0, k < 0
h (k) = D, k = 0 (2.47)
:
C k 1 ,k 1

La respuesta al pulso es una suma de funciones de la forma:


k
<e P (K) i

en donde P es un polinomio en k, y i son los valores propios de la matriz


.

Teorema 2.4 Invarianza de la respuesta al pulso.

La respuesta al pulso (2.47) es invariante con respecto a la transformación


de coordenadas en el modelo de espacio de estado.
50 Sistemas discretos en el tiempo

Prueba. Se de…ne un nuevo sistema de coordenadas Z = T x. La respuesta


al pulso del sistema transformado para k 1 es:

~ (k) = C~ ~ k 1~ 1 1 k 1
h = CT T T T
= CT 1 T k 1
T 1
T =C k 1

= h (k)

D=D ~ se debe sumar para k = 0.


Si h (k) 6= 0 solo para un número …nito de k, entonces el sistema es llamado
sistema con respuesta a impulso …nito (FIR). Esto implica que la salida solo
será in‡uenciada por un número …nito de entradas.

2.17. Operador de desplazamiento


El cálculo con el operador diferencial es una herramienta conveniente
para manipular ecuaciones diferenciales lineales con coe…cientes constantes.
Un operador análogo se puede desarrollar para sistemas descritos por
ecuaciones lineales de diferencia con coe…cientes constantes. En el cálculo con
operadores, los sistemas son vistos como operadores que mapean las señales
de entrada a señales de salida. Para especi…car un operador es necario dar su
rango, es decir, de…nir la clase de señales de entrada, y describir como actua
el operador sobre las señales. En el cálculo con el operador de desplazamiento,
todas las señales son consideradas como secuencias doblemente …nitas:
ff (k) : k = ; 1; 0; 1; g.
Por conveniencia se escoge el periodo de muestreo igual a la unidad. El
operador de desplazamiento hacia adelante se denota por q, y tiene la
siguiente propiedad:
qf (k) = f (k + 1)
El operador inverso al anterior es llamado operador de desplazamiento hacia
atrás o el operador de retardo y se denota por q 1 . Entonces

q 1 f (k) = f (k 1)
Es importante para el rango del operador que las secuencias sean doblemente
in…nitas; de otra manera, el inverso del operador de desplazamiento hacia
adelante no podria existir. En discusiones de problemas relacionados a la
ecuación característica de un sistema, tales como estabilidad y orden del
2.17 Operador de desplazamiento 51

sistema, es más conveniente usar el operador q. Con relación a causalidad es


más conveniente usar el operador q 1 . El uso de operadores da descripciones
compactas de sistemas y permite derivar fácilmente relaciones entre las
variables del sistema ya que la manipulación de las ecuaciones de diferencia
es reducida a un problema puramente algebraico.
Considérese la ecuación de diferencia de alto orden:
y (k + na ) + a1 y (k + na 1) + + ana y (k) = b0 u (k + nb ) + + bnb u (k)
(2.48)
en donde na nb . El uso del operador q da:
q na + a1 q na 1
+ + ana y (k) = (b0 q nb + bnb ) u (k)
Si se introducen los polinomios:
A (z) = z na + a1 z na 1 + + ana
B (z) = b0 z nb + b1 z nb 1 + + bnb
la ecuación de diferencia se puede escribir como
A (q) y (k) = B (q) u (k) (2.49)
Cuando sea necesario, el grado del polinomio se puede indicar por un
subindice
Ana (q)
La ecuación (2.49) también se puede expresar en términos de q 1 . Nótese que
(2.48) se puede reescribir
y (k) + a1 y (k 1) + + ana y (k na ) = b0 u (k d) + + bnb u (k d nb )
en donde d = na nb es el exceso de polos. El polinomio
A (z) = 1 + a1 z + + ana z na = z na A z 1

que se obtiene del polinomio A invirtiendo el orden de los coe…cientes, es


llamado polinomio recíproco. (2.49) se puede expresar en términos de q 1 :
1 1
A q y (k) = B q u (k d)
Nótese que A no es necesariamente lo mismo que A. Por ejemplo, A (z) = z
tiene como recíproco A (z 1 ) = 1. El recíproco de A es A = 1 el cual es
diferente de A. Un polinomio es llamado autorecíproco si A (z) = A (z).
52 Sistemas discretos en el tiempo

El objetivo de la teoría de manipuladores algebraicos es convertir


manipulaciones de ecuaciones de diferencia a problemas puramente
algebraicos. De la de…nición de operador de desplazamiento se sigue que
la ecuación de diferencia (2.49) puede ser multiplicada por potencias de
q, lo cual simplemente signi…ca un desplazamiento en adelanto en tiempo.
Ecuaciones desplazadas en tiempo, pueden ser multiplicadas por números
reales y luego sumadas, lo cual corresponde a multiplicar 2.49 por un
polinomio en q. Por lo tanto, es cierto que

C (q) A (q) y (k) = C (q) B (q) u (k)

Para obtener un álgebra adecuada, es útil poder dividir una ecuación como la
(2.49) por un polinomio en q. Esto permitirá poder resolver 2.49 con respeto
a y (k). Un ejemplo simple muestra que no es posible dividir un polinomio
en q a menos que se hagan suposiciones especiales.

Ejemplo 2.15 Papel de las condiciones iniciales.

Considérese la ecuación diferencial:

y (k + 1) ay (k) = u (k)

en donde jaj < 1. Usando la notación operacional

(q a) y (k) = u (k) (2.50)

Si y (k0 ) = y0 , entonces de (2.44) la solución es

X
k 1
k k0
y (k) = a y0 + ak J 1
u (J) (2.51)
J=k0
kXk0
k k0
= a y0 + ai 1 u (k i)
i=1

con el cambio de variable i = k J.


Una solución formal de la ecuación con operadores (2.50) se obtiene así
1
1 q
y (k) = u (k) = 1
u (k)
q a 1 aq
2.18 Operador de transferencia al pulso 53

El lado derecho se puede expresar como una serie convergente:

y (k) = q 1 1 + aq 1 + a2 q 2
+ u (k) (2.52)
X1
= ai 1 u (k i)
i=1

Es claro que las soluciones en (2.51) y (2.52) son las mismas solo si se supone
que y0 o que k k0 ! 1.
Es posible desarrollar un álgebra de operadores que permita la división por un
polinomio arbitrario q si se supone que hay algún k0 tal que todas las secencias
son cero para k k0 . Esta álgebra permite entonces la multiplicación y
división de ecuaciones por polinomios en q, así como la suma y resta de
ecuaciones . Sin embargo, la suposición implica que todas las condiciones
iniciales para la ecuación de diferencia son cero.

2.18. Operador de transferencia al pulso


El uso del cálculo con operadores permite que la relación entrada salida
sea convenientemente expresada como una función racional del operador
q o q 1 . Esta función es llamada operador de transferencia al pulso y
se obtiene fácilmente de cualquier descripción de un sistema eliminando
variables internas por manipulación algebraica.
Considérese por ejemplo el modelo de espacio de estado (2.43). Para obtener
la relación entrada - salida, se debe eliminar el vector de estado.
De (2.43):

x (k + 1) = qx (k) = x (k) + u (k)


(qI ) x (k) = u (k)
1
y (k) = Cx (k) + Du (k) = C (qI ) + D u (k)

Así, el operador de transferencia al pulso (2.43) es dado por


1
H (q) = C (qI ) +D

También se puede expresar en términos del operador q 1 :


1 1 1 1
H q =C I q q + D = H (q)
54 Sistemas discretos en el tiempo

El operador de transferencia al pulso es por lo tanto una matriz cuyos


elementos son funciones racionales en q.
Para un sistema con una entrada y una salida:

1 B (q)
H (q) = C (qI ) +D = (2.53)
A (q)
Si el vector de estado es de dimensión n y si los polinomios A (q) y B (q) no
tienen factores comunes, entonces el polinomio A es de grado n. Nótese de
(2.53) que A es también el polinomio característico de , lo cual signi…ca que
el modelo entrada - salida se puede expresar como:

y (k) + a1 y (k 1) + + an y (k) = b0 u (k) + bn u (k n)

en donde ai son los coe…cientes del polinomio característico de . El caso


más común de SCC es que b0 = 0, es decir, no hay término directo en el
modelo discreto. Generalmente y (k) se mide primero y luego se determina
u (k). Entonces, y (k) no puede ser in‡uenciada aún si el sistema análogo
tiene término directo.

Ejemplo 2.16 Integrador doble

Considérese el integrador doble del ejemplo 2.6 con h = 1. De (2.53):


1
q 1 1 0:5 0:5 (q + 1) 0:5 (q 1 + q 2 )
H (q) = 1 0 = =
0 q 1 1 (q 1)2 1 2q 1 + q 2

Ejemplo 2.17 Integrador doble con retardo

Para el integrador doble con h = 1 y retardo = 0:5 segundos, entonces de


(2.40) y del ejemplo 2.11:

0:125 0:375
0 = ; 1 =
0:5 0:5

1 1
1 1
1 q 1 0:125 + 0:375q
H (q) = C (qI ) 0 + 1q = 1 0
0 q 1 0:5 + 0:5q 1
2
0:125 (q + 6q + 1) 0:125 (q + 6q + q 3 )
1 2
H (q) = =
q (q 2 2q + 1) 1 2q 1 + q 2
2.19 Polos y ceros 55

Teorema 2.5 Invarianza del operador de transferencia al pulso.

El operador H (q) para el modelo de espacio de estados 2.43 es independiente


de su representación por espacio de estado.
Prueba. Dado
H (q) = C (qI ) 1 +D

y una matriz de transformación T , entonces el nuevo sistema de coordenadas:


1
~ (q) = C~ qI
H ~ ~+D
~
1 1 1
= CT T (qI )T T +D
= CT 1 T (qI ) 1 T 1T + D
1
= C (qI ) + D = H (q)

El modelo de entrada y salida de un sistema con ZOH se puede obtener


usando (2.34) y (2.53).

2.19. Polos y ceros


Los polos de un sistema son los ceros (raíces) del denominador de H (q), el
polinomio característico A (q). Los ceros se obtienen de B (q) = 0, los polos
del sistema inverso. Así en el ejemplo 2.16 se tiene un cero en 1 y dos polos
en 1.
El retardo en un sistema genera polos en el origen. El sistema en elpejemplo
2.17 tiene 3 polos: 2 en 1, y 1 en el origen. Hay dos ceros en 3 8.

2.20. Orden de un sistema


El orden de un sistema es igual a la dimensión de la representación por espacio
de estado, o el número de polos del sistema. Nótese que es importante usar
el operador de desplazamiento en adelanto q para determinar el orden. La
determinación de los polos, ceros y el orden de un sistema son ocasiones
cuando es importante usar el operador de desplazamiento en adelanto q.
56 Sistemas discretos en el tiempo

2.21. La transformada Z
Así como la transformada de Laplace puede ser usada para resolver
ecuaciones diferenciales lineales ordinarias, la transformada Z representa un
método operacional para resolver ecuaciones lineales en diferencia y sistemas
lineales con datos digitales o discretos.

u (kh) y (kh)
Sistema de
datos discretos

Figura 2.6: Diagrama de bloques de un sistema de datos discreto

Considérese el sistema de datos discretos representado por el diagrama de


bloques de la …gura 2.6. Una manera de describir la naturaleza discreta de
las señales es considerar que la entrada y la salida del sistema son secuencias
de números, los cuales aparecen a intérvalos de tiempo uniformes h. Es decir,
y (kh) y u (kh), k = 0; 1; 2; : : :.
Para representar las secuencias de entrada y de salida por expresiones en el
dominio del tiempo, se introduce un tren de pulsos T :

X
1

T (t) = (t kh)
k=0

Asì, por ejemplo, para la entrada:

X
1
u (t) = u (t) T (t) = u (kh) (t kh) (2.54)
k=0

Una expresión similar se puede escribir para la secuencia de salida y (kh).


Otro tipo importante de sistemas de datos discretos es el sistema de datos
muestreados en el cual algunas de las señales son continuas pero convertidas a
datos discretos por dispositivos tales como los convertidores análogo-digitales
(A/D). La formación de datos discretos a partir de datos continuos se
puede representar por muestreadores. La …gura 2.7 muestra el diagrama
esquemático de un muestreador ideal que convierte la señal continua u (t)
en una señal discreta u (t), la cual es descrita por la ecuación (2.54). La
2.21 La transformada Z 57

u (t ) u ∗ (t )

Figura 2.7: Muestreador ideal

duración de tiempo entre los cierres del muestreador, h, es llamado el periodo


de muestreo.
Tomando la transformada de Laplace en ambos miembros de (2.54) se
obtiene:
X1
U (s) = u (kh) e khs (2.55)
k=0

Nótese que (2.55) contiene el término exponencial e khs , lo cual revela la


di…cultad de usar la transformada de Laplace para el tratamiento general
de sistemas de satos discretos, ya que la función de transferencia no será
algebraica como en el caso continuo. Esto motiva la introducción de la
transformada Z, la cual simplemente convierte funciones trascendentes en
s en funciones algebraicas en z.

2.21.1. De…nición de la transformada Z


La transformada Z se de…ne como:
z = ehs (2.56)
entonces
1
ln z
s= (2.57)
h
donde s es la variable compleja de la transformada de Laplace y h es el
período de muestreo.
Con (2.56) en (2.55):
1 X
1
k
U s= ln z = U (z) = u (kh) z (2.58)
h k=0
o
U (z) = Z [u (t)] = L [u (t)]js= 1 ln z (2.59)
h
58 Sistemas discretos en el tiempo

kh
Ejemplo 2.18 Sea la secuencia r (kh) = e , k = 0; 1; 2; : : : en donde
es una constante real.
X
1
kh
r (t) = e (t kh)
k=0
X1 X
1
kh khs ( +s)kh
R (s) = e e = e
k=0 k=0

Esta última es una serie geométrica y por lo tanto:


1 ( +s)h
R (s) = ( +s)h
para e <1
1 e
con z = ehs entonces:
1 z
R (z) = hz 1
= h
1 e z e
h 1 h
para e z < 1, es decir jzj > e .

Ejemplo 2.19 Si en el ejemplo anterior = 0, se tiene:

r (kh) = 1, k = 0; 1; 2; : : :

que es una secuencia de números igual a la unidad. Entonces:


X
1
z
k
R (z) = z = , jzj > 1
k=0
z 1

que es la transformada Z de la función escalón unitario, s (kh).

Si una función de tiempo r (t) es dada, el procedimiento para encontrar su


transformada Z es formar primero la secuencia fr (kh)g y luego usar (2.58)
para encontrar R (z). Una interpretación equivalente es enviar la señal r (t) a
través de un muestrador ideal cuya salida es r (t); se obtiene la transformada
de Laplace de r (t), y R (z) se determina substituyendo z por ehs en R (s).
La mayoría de textos en control digital contienen tablas con las transformadas
Z de las funciones más comunmente usadas en el análisis de sistemas, como
se muestra en la tabla 2.1.
En general, la transformada Z de funciones más complejas se obtiene con la
ayuda de algunos de los teoremas de la transformada Z.
2.21 La transformada Z 59

2.21.2. Agunos teoremas de la transformada Z


1. Linealidad:
Z f f + gg = Z ff g + Z fgg
2. Traslación real:
n n
Z ff (kh nh)g = Z q f (kh) = z F (z) (2.60)
!
X
n 1
n n k
Z fq f (kh)g = z F (z) f (kh) z (2.61)
k=0

en donde n es un entero positivo. Las ecuaciones (2.60) y (2.61)


representan la transformada Z de una secuencia que es desplazada
a la derecha y a la izquierda, respectivamente, por nh. Nótese que el
lado derecho de (2.61) no es solo z n F (z) ya que la transformada Z
se de…ne solo para k 0. Así, el segundo término de la derecha de
(2.61) representa la secuencia que se pierde al ser desplazada hacia la
izquierda por nh.
3. Traslación compleja:
kh kh
Z e f (kh) = F ze

4. Cambio de escala compleja:


k
Z ! f (kh) = F (!z)

5. Diferenciación compleja:
dF (z)
Z fkh f (kh)g = hz
dz
6. Teorema del valor inicial:
l m f (kh) = l m F (z)
k!0 z!1

si el límite existe.
7. Teorema del valor …nal: Si (1 z 1 ) F (z) no tiene polos sobre o fuera
del círculo unitario jzj = 1, entonces:
1
l m f (kh) = l m 1 z F (z)
k!1 z!1
60 Sistemas discretos en el tiempo

8. Convolución real:
( k )
X
Z ff gg = Z f (n) g (k n)
n=0
( k )
X
=Z f (n) g (k n)
n=0
= Z ff g Z fgg
en donde f g denota la convolución real entre las funciones f y g.

2.22. Transformada Z inversa


Así como la trasformada de Laplace, uno de los principales objetivos de la
transformada Z es que las manipulaciones algebraicas se hacen primero en
el dominio de Z, y luego la respuesta …nal se determina por la transformada
Z inversa. En general, la transformada Z inversa de R (z) da información
sobre r (kh) y no sobre r (t). En otras palabras, la transformada Z porta
informacaión solo en los instantes de muestreo. Teniendo esto en mente,
la transformada Z inversa se puede obtener por uno de los siguientes tres
métodos:
1. Expansión en fracciones parciales.
2. Series de potencias.
3. Fórmula de inversión.

2.22.1. Expansión en fracciones parciales


R (z) se expande por fracciones parciales en una suma de términos
simples reconocibles, y usando una tabla de transformadas Z se obtiene el
correspondiente r (kh). Nótese de las tablas que casi todas las transformadas
Z, tienen el término z en el numerador. Por eso, R (z) se expande en la forma
de
A1 z A2 z
R (z) = h
+ +
z e 1 z e 2h
Así, primero se expande R(z)
z
en fracciones parciales y luego se multiplica por
z para obtener la expresión …nal.
2.22 Transformada Z inversa 61

Ejemplo 2.20 Sea


h
1 e
R (z) = h)
(z 1) (z e
entonces
1 1
R (z) = h
z 1 z e
1 z 1 z
= z z h
z 1 z e

donde
1 1 z
Z z = s ((k 1) h) , k = 1; 2; : : :
z 1
así mismo, el segundo término de R (z) puede ser identi…cado como un
escalón unitario con retardo de h segundos. Por lo tanto,

(k 1)h
r (kh) = 1 e s ((k 1) h) , k = 1; 2; : : :

2.22.2. Método de las series de potencias


La de…nición de la transformada Z en (2.58) da un método directo para
obtener la transformada Z inversa. De (2.58) se ve que el coe…ciente de z k
en U (z) es simplemente u (kh). Así, si se expande U (z) en series de potencias
de z 1 , se pueden encontrar lo valores de u (kh) para k = 0; 1; 2; : : :.

Ejemplo 2.21 Sea


h
1 e z
R (z) = h)
(z 1) (z e
Exapandiendo en series de potencias z 1 y dividiendo el polinomio del
numerador por el polinomio del denominador, por división larga, se obtiene:

h 1 2 h 2 k h k
R (z) = 1 e z + 1 e z + + 1 e z +

Así,
k h
r (kh) = 1 e , k = 0; 1; 2; : : :
62 Sistemas discretos en el tiempo

2.22.3. Fórmula de inversión


La secuencia fr (kh)g se puede determinar de R (z) por la fórmula de
inversión: I
1
r (kh) = R (z) z k 1 dz (2.62)
2 j

que es una integral de contorno a lo largo de la trayectoria , en donde es


un círculo de radio jzj = ehc con centro en el origen del plano z y c es tal
que todos los polos de R (z) z k 1 están dentro del círculo. Una manera de
evaluar la integral de contorno (2.62) es por el uso del teorema del residuo
de la teoría de variable compleja.
Si
N (z)
R (z) z k 1 = R0 (z) = l (2.63)
Y
(z pi )mi
i=1
en donde l y mi son enteros positivos, entonces del teorema del residuo se
tiene:
Xl
r (kh) = res (R0 (z)) (2.64)
i=1
en donde
1 dm 1
res(R0 (z)) = lm ((z pi )m R0 (z)) (2.65)
z=pi (m 1)! z!pi dz m 1

para un polo de orden m, y:


res(R0 (z)) = l m ((z pi )m R0 (z)) (2.66)
z=pi z!pi

para un polo simple.


Nótese que R0 (z) podría tener un polo simple en el origen cuando k = 0.
Este hecho se debe tener en cuenta en la determinación de r (0).
Ejemplo 2.22 Sea
(2z 1) z
R (z) =
2 (z 1) (z + 0:5)
Entonces
(2z 1) z k
R0 (z) =
2 (z 1) (z + 0:5)
2.22 Transformada Z inversa 63

r (kh) = res R (z) z k 1


+ res R (z) z k 1

z=1 z= 0:5
= res (R0 (z)) + res (R0 (z))
z=1 z= 0:5
k
(2z 1) z (2z 1) z k
= +
2 (z + 0:5) z=1 2 (z 1) z= 0:5
k
1 2 1
= +
3 3 2

Por tanto
k
1 2 1
r (kh) = + , k = 0; 1; 2; : : :
3 3 2

Ejemplo 2.23 Sea


1
R (z) =
2 (z 1) (z + 0:5)
Nótese que en este caso R (z) z k 1 tiene un polo en el origen si k = 0, y así
r (0) se debe determinar individualmente, es decir:

1 1 1
r (0) = + +
2 (z 1) (z + 0:5) z=0 2z (z + 0:5) z=1 2z (z 1) z= 0:5
1 2
= 1+ + =0
3 3
y para k > 0:

zk 1 zk 1
r (kh) = +
2 (z + 0:5) z=1 2 (z 1) z= 0:5

Por tanto
k 1
1 1 1
r (kh) = , k = 1; 2; : : :
3 3 2
y en términos del escalón unitario:
" #
k 1
1 1 1
r (kh) = s ((k 1) h)
3 3 2
64 Sistemas discretos en el tiempo

Con el …n de hacer claridad se establece el teorema del residuo:


Teorema 2.6 Si f (z) es analítica en un contorno C y su interior excepto
en un número de polos, entonces la integral de contorno a lo largo de C es:
I Xn
f (z) dz = 2 j Rk (2.67)
C k=1

en donde las constantes Rk son los residuos de f (z) en los polos que están
dentro de C.
Una representación grá…ca del teorema del residuo se observa en la …gura
2.8.

Figura 2.8: Contorno C en el plano z y polos de f (z)

2.23. Solución de las ecuaciones discretas


mediante la transformada Z
La transformada Z se puede usar para resolver ecuaciones de diferencia. Por
ejemplo:
x (k + 1) = x (k) + u (k)
y (k) = Cx (k) + Du (k)
2.24 Cálculo de la función de transferencia al pulso 65

{u (kh )} u (t ) y (t ) {y(kh )}
D/A G (s )

H (z )

Figura 2.9: Muestreo de un sistema análogo.

Tomando la transformada Z en ambos lados y usando las propiedades:

z (x (z) x (0)) = x (z) + U (z)


x (z) = (zI ) 1 ( U (z) + zx (0))
Y (z) = C (zI ) 1 + D U (z) + C (zI ) 1
zx (0)

Se puede introducir la función de transferencia al pulso


1
H (z) = C (zI ) +D (2.68)

que es la misma (2.53) con q reemplazada por z. y (k) se puede obtener


ahora usando la transformada inversa. El siguiente teorema es análogo al
correspondiente en sistemas continuos.

Teorema 2.7 La transformada Z de la respuesta al pulso (2.47) es la


función de transferencia al pulso Z fh (k)g = H (z).

2.24. Cálculo de la función de transferencia


al pulso
La función de transferencia (FT) al pulso se puede determinar a partir de la
FT del sistema análogo. Sea el sistema descrito por la FT G (s) precedida
por un ZOH (ver …gura 2.9). La FT al pulso se puede determinar por la
respuesta a una señal dada. Considérese, por ejemplo, una entrada escalón
unitario. La secuencia fu (kh)g es entonces una secuencia de unos y u (t) es
un escalón unitario. Con Y (s) = L fy (t)g:

G (s)
Y (s) =
s
66 Sistemas discretos en el tiempo

Sea la transformada Z de la salida muestreada fy (kh)g:

Y~ = Z L 1
fY g

Dividiendo Y~ por la transformada Z de la entrada, que es z


z 1
, se obtiene

H (Z) = 1 z 1
Y~ (z)

La FT al pulso se puede obtener así:

1. Determinar la respuesta al escalón del sistema con FT G (s).

2. Determinar la correspondiente transformada Z de la respuesta al


escalón.

3. Dividir por la transformada Z de la función escalón.

La tabla 2.1 muestra una lista de funciones temporales y las correspondientes


transformadas de Laplace y Z.

Cuadro 2.1: Funciones temporales y las correspondientes transformadas de


Laplace y Z
f L ff g Z ff g
(k) 1 1
1 z
1; k 0 s z 1
1 hz
kh s2 (z 1)2
h2 z(z+1)
1
2
(kh)2 1
s3 2(z 1)3
kh
e (T ) T
1+sT
z
h
z ze T
kh h
1 e (T ) 1
s(1+sT )
z eT !
z
(z 1) h
z eT
! z sin !h
sin (!kh) s2 +! 2 z 2 2z cos !h+1

Ejemplo 2.24 FT al pulso.


2.25 Cálculo con operadores y transformada Z 67

Suponer en la …gura 2.9 que


a
G (s) =
s+a
La respuesta de este sistema al escalón es:

1 a 1 1 1 at
y (t) = L =L =1 e
s (s + a) s s+a

Así,
ah
y (kh) = 1 e
Entonces:
z z
Y (z) = ah
zz 1 e
z 1 e ah
Y (z) = ah )
(z 1) (z e

Por lo tanto,
ah
z 1 1 e
H (z) = Y (z) = ah )
z (Z e

2.25. Cálculo con operadores y transformada


Z
Hay una relación formal entre el cálculo con operadores y cálculo con la
transformada Z. Cuando se manipulan ecuaciones de diferencia se puede
usar cualquiera. Las expresiones que se obtienen lucen formalmente muy
similares. De hecho, muchos textos usan la misma notación para ambos. La
situación es muy similar a la diferencia entre el operador diferencial p = dtd y
la transformada de Laplace s para sistemas análogas. Nótese primero que q
es un operador que actúa sobre secuencias y z es una variable compleja. Por
lo tanto, desde el punto de vista matemático, tiene sentido diferenciarlos. Sin
embargo, también hay una razón teórica desde el punto de vista de sistemas,
la cual se ilustra con el siguiente ejemplo.

Ejemplo 2.25 Cancelación de ceros y polos.


68 Sistemas discretos en el tiempo

Considérese la ecuación de diferencia:

y (k + 1) + ay (k) = u (k + 1) + au (k) (2.69)

Si (2.69) corresponde a un sistema dinámico, su FT al pulso es :


z+a
H (z) = =1
z+a
La última igualdad se obtiene ya que z es una variable compleja. Se podría
entonces creer, equivocadamente, que (2.69) es idéntico a

y (k) = u (k) (2.70)

Claramente esto no es cierto ya que la ecuación de diferencia (2.69) tiene la


solución:
y (k) = ( a)K y (0) + u (k) , k 1
la cual es idéntica a (2.70) solo si la condición incial y (0) es cero.
Solución de la ecuación (2.69). (2.69) se puede reescribir como

y (k) + ay (k 1) = u (k) + au (k 1) (2.71)

De…niendo las variables de estado

x1 (k) = y (k 1) (2.72)
x2 (k) = u (k 1) (2.73)

De (2.71) y (2.72)

x1 (k + 1) = y (k) = ax1 (k) + ax2 (k) + u (k) (2.74)

De (2.73)
x2 (k + 1) = u (k) (2.75)
Reescribiendo (2.74) y (2.75) en forma matricial,

x1 (k + 1) a a x1 (k) 1
= + u (k) (2.76)
x2 (k + 1) 0 0 x2 (k) 1
y
x1 (k)
y (k) = a a + 1 u (k) (2.77)
x2 (k)
2.25 Cálculo con operadores y transformada Z 69

Nótese que
x2 (0) = u ( 1) = 0
y de (2.74)
y (0)
y (0) = ax1 (0) ; x1 (0) =
a
Es decir,
y(0)
x1 (0)
= a
x2 (0) 0
Como se sabe, utilizando la transformada Z

1 1
Y (z) = C (zI ) zx (0) + C (zI ) + D U (z)
1
1 z+a a 1 z a
(zI ) = =
0 z z (z + a) 0 z + a

1 1 y (0) 1
C (zI ) zx (0) = y (0) = 1
= y (0)
z (z + a) 1 + az 1 ( az 1 )
1
C (zI ) +D = 1

Así,
1 1
y (k) = L 1)
y (0) + U (z)
1 ( aZ
Nótese de la serie geométrica que
X
1
1 X
1
1 k
az = = ( a)k z k

k=0
1 ( az 1 ) k=0

Por lo tanto,
y (k) = ( a)K y (0) + u (k)
Si se utiliza el cálculo con operadores en (2.69)

(q + a) y (k) = (q + a) u (k)

Nótese que se puede dividir por q + a ya que q es un operador. De este


simple ejemplo se observa que las álgebras con la transformada Z y con el
operador de desplazamiento son diferentes. En el cálculo con la transformada
70 Sistemas discretos en el tiempo

Z se puede dividir por una expresión arbitraria, pero esto no se permite en


el cálculo con el operador q. La interpretación desde el punto de vista de los
sistemas es que con la transformada Z se podrían cancelar factores y por lo
tanto esconder algunos modos.
Esto no sería problema si los modos cancelados corresponden a modos
estables. Otra manifestación de este efecto se dará posteriormente con los
conceptos de controlabilidad y observabilidad.

2.26. Polos y ceros


Para sistemas de dimensión …nita con una entrada y una salida, los polos y
los ceros se pueden obtener del denominador y el numerador de la función
de transferencia al pulso. Un polo en z = a corresponde a un modo libre
del sistema asociado con una función del tiempo y (k) = ak . Los polos son
también los valores propios de la matriz . Un cero z = a signi…ca que la
transmisión de la señal de entrada u (k) = ak es bloqueada por el sistema.
Considérese un sistema análogo descrito por el modelo de espacio de estados
de orden n:
dx
= Ax + Bu (2.78)
dt
y = Cx

Los polos del sistema son los valores propios de A, los cuales se denotan por
i (A) ; i = 1; : : : ; n. El muestreo de 2.78 con ZOH da el sistema discreto:

x (kh + h) = x (kh) + u (kh)


y (kh) = Cx (kh)

Sus polos son los valores propios de , i ( ) ; i = 1; : : : ; n. Puesto que =


eAh , se sigue de las propiedades de las funciones de una matriz que
i (A)h
i ( )=e (2.79)

La ecuación (2.79) da el mapeo de los polos del sistema continuo a los polos
del sistema discreto. La …gura 2.10 muestra un mapeo del plano complejo s
en el plano z cuando z = esh . Por ejemplo, el semiplano complejo s izquierdo
es mapeado al círculo unitario del plano z. Nótese que varios puntos en el
plano s son mapeados en el mismo punto en el plano z (ver …gura 2.11).
2.26 Polos y ceros 71

Figura 2.10: Mapeo Z = eAh

Esta es una ilustración del efecto aliasing discutido en el ejemplo 2.8. Para
polos dentro de la franja fundamental o primaria s0 en la …gura 2.11, hay
una relación simple entre los polos continuos y discretos (comparar con el
ejemplo 2.9).

Ejemplo 2.26 Polos complejos.

Considérese el sistema continuo de segundo orden:


!0
(2.80)
s2 + 2 ! 0 s + ! 20
cuyos polos son:
p
s1;2 = J 1 2 !0
72 Sistemas discretos en el tiempo

Figura 2.11: Cada franja mostrada en el semiplano complejo izquierdo s es


mapeada en el disco unitario.

Se puede demostrar que los polos correspondientes del sistema discreto son
dados por la ecuación característica:

z 2 + a1 z + a2 = 0

en donde
p
!0 h 2!
a1 = 2e cos 1 0h
2 !0 h
a2 = e

Justi…cación de las …guras 2.10 y 2.11


Nótese que:

s = + J!; z = x + jy
2 !s
z = esh ; h = ; !N =
!s 2

1. Con < 0 (SCI de s)

z = e h ej!h =) jzj = e h
< 1 (Disco unitario)

Nótese además que si ! se reemplaza por


2.26 Polos y ceros 73

! !s = !k2! N
2
= ! k = ! 0 (K entero)
h
2
=) z( + j! 0 ) = e h ejh(! k h )
= e h ejh! e jk2 = e h ejh! = z( + j!)

lo cual justi…ca que cada franja de la …gura 2.12 en el SCI de s sea mapeada
en el disco unitario.

Figura 2.12: Mapeo de cada franja en el círculo unitario

2. Con < 0,

!= !N =
h
por tanto
z = e he j hh
= e he j
= e h ; jzj < 1

Con <0

! = 0 =) z = e h ; jzj < 1
Con >0

! = 0 =) z = e h ; jzj > 1
74 Sistemas discretos en el tiempo

3. Mapeo de = cte = (lugar geométrico de amortiguamiento, ,


constante)
z = e h ej!h , jzj = e h
(círculos)

si se restringe a la franja primaria, entonces

!N < ! < !N

< !< , arg z = !h


n n
< arg z = !h <

4. Mapeo de ! = cte = ! 0 (lugar geométrico de frecuencia constante).

z = e h ej!h
2.26 Polos y ceros 75

entonces
arg z = ! 0 h = constante (línea recta)

5. Mapeo del lugar geométrico del factor de amortiguamiento relativo


constante ( ).
Con = tan !
1
= sin = cte
entonces
tan !h J!h
z = e e
h tan !
jzj = e , arg z = h! (espiral logarímica)

Nótese que 0o < < 90o :


8
< ! = 0 =) jzj = 1, arg z = 0o
!s
Si != 4
= 2h =) jzj = e 2 tan , arg z = 2
:
! = !2s = ! N = h =) jzj = e tan , arg z =
76 Sistemas discretos en el tiempo

6. Mapeo del lugar geométrico de frecuencia natural no amortiguada


constante.

El lugar geométrico de ! n constante en el plano s son círculos concéntricos


con el centro en el origen y radio ! n . La siguiente …gura muestra el
correspondiente mapeo en el plano Z dentro del cículo unitario, es decir para
< 0 en el plano s.
La …gura 2.13 muestra las respuestas al escalón del sistema discreto para
diferentes intervalos de muestreo cuando ! 0 = 1:83 y = 0:5. El siguiente
programa en Matlab permite discretizar el sistema análogo del ejemplo y
gra…car las respuestas al escalón para diferentes valores de h.

ro=input(’Relacion amortiguamiento sistema de segundo orden:’)


wo=input(’Frec natural no amortiguada:’)
h=input(’Tiempo de muestreo:’)
num=wo^2;
2.27 Sistemas con inversas inestables 77

1 1
(a)

(b)
0.5 0.5

0 0
0 2 4 6 0 2 4 6

1 1

(d)
(c)

0.5 0.5

0 0
0 2 4 6 0 2 4 6
Tiempo Tiempo

Figura 2.13: Respuesta al escalón del sistema discreto del ejemplo para
diferentes valores de h cuando = 0:5 y ! 0 = 1:83, el cual da un tiempo de
crecimiento Tr = 1: (a) h = 0:125, (b) h = 0:25, (c) h = 0:5, (d) h = 1:0.

den=[1 2*ro*wo wo^2];


sisc=tf(num,den)
sisd=c2d(sisc,’h’,’zoh’)
[t,y]=step(sisd)
plot(t,y)

La …gura 2.14 da un cuadro más detallado de cómo los polos continuos de


(2.80) son mapeados dentro del círculo unitario para valores de y ! 0 h
cuando el sistema es muestreado.

2.27. Sistemas con inversas inestables


Un sistema continuo con una FT racional es de fase no mínima si tiene
ceros en el SCD o retardos. Análogamente, un sistema discreto se de…ne
a menudo de fase no mínima si tiene ceros fuera del disco unitario. Esa
de…nición implica que un retardo no hace el sistema de fase no mínima. Por
otro lado, los retardos no generan los mismos problemas severos como en los
sistemas análogos. Por eso, en sistemas discretos es más relevante hablar de
sistemas con o sin inversas inestables, los cuales se de…nen como sigue:
78 Sistemas discretos en el tiempo

Figura 2.14: Lugar de constante

Inversa inestable: un sistema discreto tiene una inversa inestable si tiene ceros
fuera del disco unitario.
Un sistema continuo con una inversa estable podría llegar ser un sistema
discreto con una inversa inestable cuando es muestreado. Además, un sistema
continuo de fase no mínima no siempre llega a ser un sistema discreto con
una inversa estable.

2.28. Selección de la frecuencia de muestreo


La selección de la frecuencia de muestreo es muy importante en un SCC. Un
periodo de muestreo muy largo hará imposible reconstruir la señal de tiempo
continuo. Un periodo de muestreo demasiado corto incrementará la carga en
el computador. Su escogencia depende bastante del propósito del sistema.
Esta pregunta se tocará varias veces en el curso. Por ahora, solo se relaciona
la selección de la frecuencia de muestreo a los polos del sistema continuos en
lazo abierto.
Es útil caracterizar el periodo de muestreo con una variable que es libre
de dimensiones y que tenga una buena interpretación física. Para sistemas
oscilatorios, es natural normalizar con respecto al periodo de oscilación: para
sistemas no oscilatorios, el tiempo de creciemiento Tr es un factor natural de
normalización.
Se introduce a Nr como el número de periodos de muestreo por tiempo de
creciemiento:
Tr
Nr =
h
2.29 Ejercicios propuestos 79

Para sistemas de primer orden, Tr es igual a la constante de tiempo. Es


razonable entonces escoger Nr entre 4 y 10. Para un sistema de segundo orden,
con amortiguamiento y frecuencia natural ! 0 , el tiempo de crecimiento Tr
está dado por '
Tr = ! 0 e tan '
en donde = cos '. Para un amortiguamiento alrededor de = 0:7, entonces

!0h 0:2 0:6

en donde ! 0 está en radianes por segundo. Las …guras 2.13 y 2.15 muestran
la selección del intervalo de muestreo para diferentes señales. Entonces es
razonable escogerlo de modo que
Tr
Nr = 4 a 10
h

2.29. Ejercicios propuestos


Ejercicio 2.1 Derivar el sistema digital correspondiente a los siguientes
sistemas continuos (análogos) cuando se utiliza un retenedor de orden cero
(ZOH):

0 1 0
a. x_ = x+ u, y = 1 0 x
1 0 1
d2 y
b. dt2
+ 3 dy
dt
+ 2y = du
dt
+ 3u
d3 y
c. dt3
=u

Ejercicio 2.2 Las siguientes ecuaciones de diferencia se asumen describen


sistemas continuos muestreados utilizando un circuito retenedor de orden cero
con un periodo de muestreo h. Determinar, si es posible, los correspondientes
sistemas continuos.
d2 y
a. dt2
+ 3 dy
dt
+ 2y = du
dt
+ 3u

0:5 1 0:5
b. x (kh + h) = x (kh)+ u (kh), y (kh) = 1 1 x (kh)
0 0:3 0:7
80 Sistemas discretos en el tiempo

1 1

(a)
0 0.5
-1
0
0 2 4 6 8 0 2 4 6 8
1 1

(b)
0 0.5
-1
0
0 2 4 6 8 0 2 4 6 8
1 1
(c)

0 0.5
-1
0
0 2 4 6 8 0 2 4 6 8
1 1
(d)

0 0.5
-1
0
0 2 4 6 8 0 2 4 6 8
Tiempo Tiempo

Figura 2.15: Ilustración de la muestra y retención de una sinusoide y una


exponencial. Los tiempos de crecimiento de las señales son Tr = 1. El número
de muestras por tiempo de crecimiento es: (a) Nr = 1, (b) Nr = 2, (c) Nr = 4,
(d) Nr = 8.

c. y (kh) + 0:5y (kh h) = 6u (kh h)

Ejercicio 2.3 Considere el oscilador armónico del ejercicio 2.1 a. Calcular


la respuesta al escalón en 0, h, 2h, : : :, cuando el periodo de muestreo es:

a. h = 2

b. h = 4

Comparar con la respuesta al escalón en el sistema continuo.

Ejercicio 2.4 Hallar la matriz de transformación T que transforma el


modelo de espacio de estados del integrador doble en su forma diagonal o
de Jordan.
2.29 Ejercicios propuestos 81

Ejercicio 2.5 Hallar la función de transferencia del sistema


0:5 0:2 2
x (kh + h) = x (kh) + u (kh)
0 0 1
y (kh) = 1 0 x (kh)
Ejercicio 2.6 Considere un sistema de 2 tanques en cascada, en donde la
señal de entrada es el ‡ujo del primer tanque y la salida es el nivel en el
segundo tanque. Usando los niveles como variables de estado, se obtiene el
modelo:
dx 0:0197 0 0:0263
= x+ u
dt 0:0178 0:0129 0
y = 0 1 x
a. Muestrear el sistema con periodo de muestreo h = 12.
b. Veri…car que la función de transferencia del sistema muestreado es:
0:030z + 0:026
H (z) =
z 2 1:65z + 0:68
c. Hallar la ecuación de diferencia que relaciona la entrada y la salida.
Ejercicio 2.7 Un sistema continuo tiene la siguiente función de
transferencia:
1 s
G (s) = e
s
se muestrea con h = 1 cuando = 0:5.
a. Hallar un modelo de espacio de estado del sistema muestreado. ¿Cuál
es el orden del sistema muestreado?
b. Determinar la función de transferencia y la respuesta al pulso del
sistema muestreado.
c. Hallar los polos y los ceros del sistema muestreado.
Ejercicio 2.8 Resolver el ejercicio 2.7 cuando
1 s
G (s) = e
s+1
con h = 1 cuando = 1:5.
82 Sistemas discretos en el tiempo

Ejercicio 2.9 Considere el sistema

y (k) 0:5y (k 1) = u (k 9) + 0:2u (k 10)

Hallar lo polinomios A (q), B (q), A (q) y B (q) en las representaciones:

A (q) y (k) = B (q) u (k)

y
A q +1 y (k) = B q 1
u (k d)
¿Qué son d y el orden del sistema?

Ejercicio 2.10 Un …ltro con el operador de transferenciaal pulso:


1 1 n
H q = b0 + b1 q + + bn q

es llamado un …ltro con respuesta …nita al impulso (FIR).

a. Hallar el orden del sistema.

b. Determinar los polos del …ltro y obtener un modelo de espacio de estado


del …ltro.

Ejercicio 2.11 Muestrear el sistema


1
G (s) =
s2 (s + 2) (s + 3)
usando un ZOH y h = 1.

Ejercicio 2.12 Usar la transformada Z para determinar la secuencia de


salida de la ecuación de diferencia

y (k + 2) 1:5y (k + 1) + 0:5y (k) = u (k + 1)

cuando u (k) es un escalón en k = 0 y con y (0) = 0:5, y ( 1) = 1:

Ejercicio 2.13 Veri…car que


1 h2 z (z + 1)
Z (kh)2 =
2 2 (z 1)
y utilizarla para determinar la función de transferencia del integrador doble.
2.29 Ejercicios propuestos 83

Ejercicio 2.14 Considere el sistema


z+b
H (z) =
(1 + b) (z 2 1:1z + 0:4)

La localización de polos corresponde a un sistema continuo con


amortiguamiento = 0:7. Simular el sistema y determinar el sobrepaso para
diferentes valores de b en el intervalo ( 1; 1).

Ejercicio 2.15 Resolver la ecuación de diferencia

y (k) = y (k 1) + y (k 2) , k = 2; 3; : : :

usando y (0) = y (1) = 1. (Los número y (k) son los números de Fibonnacci).

Ejercicio 2.16 Determinar los polos y los ceros (con multiplicidad) del
sistema

y (k) 0:5y (k 1) + y (k 2) = 2u (k 10) + u (k 11)

Ejercicio 2.17 Determinar la función de transferencia obtenida


muestreando
2 (s + 2)
G (s) = con h = 0:02
(s + 1) (s + 3)

Ejercicio 2.18 Muestrear el sistema continuo

dx 1 0 1
= x (t) + u (t 0:2)
dt 1 1 0

usando el intervalo de muestreo h = 0:3. Determinar la función de


transferencia.
84 Sistemas discretos en el tiempo
Capítulo 3

Criterios de Estabilidad

Se supone que el lector tiene alguna idea sobre estabilidad para sistemas
lineales e invariantes con el tiempo, por lo menos al punto de saber que la
estabilidad de un sistema está asociada con la ubicación en el plano complejo
Z (frecuencia compleja) de las raices de la ecuación característica: el sistema
es estable si todas las raices están dentro del círculo unitario. Sin embargo,
por conveniencia y para complementar, se presentarán algunos aspectos del
problema de estabilidad y algunos criterios para determinarla en sistemas
discretos.
Se de…nirá primero la estabilidad externa o estabilidad entrada acotada
- salida acotada (BIBO: bouded input bouded output) para un sistema
lineal invariante con el tiempo. Luego se de…nirá la estabilidad interna
de una realización con el requerimiento de que todas las raices de la
ecuación característica estén dentro del círculo unitario. Se notará que
estabilidad interna podría no ser equivalente a estabilidad interna, excepto
para realizaciones mínimas. Se tratará brevemente el método de Lyapunov
para investigar la estabilidad, el cual sirve para obtener un criterio analítico
para la estabilidad interna de sistemas lineales e invariantes con el tiempo.
Y …nalmente, se analizará el criterio de Jury el cual es un criterio algebraico
para determinar la estabilidad de sistemas discretos.

3.1. Estabilidad externa


Se dice que un sistema causal es externamente estable si una entrada acotada
ju (k)j < M1 , 1 < T k < 1, produce una salida acotada jy (k)j < M2 ,

85
86 Criterios de Estabilidad

T k < 1. Una condición necesaria y su…ciente para tal estabilidad,


entrada acotada - salida acotada, es que la respuesta impulsiva sea tal que:
X
1
jh (kh)j < M < 1 (3.1)
k=0

en donde h (kh) = Z 1 fH (z)g y H (z) es la función de transferencia Z


del sistema discreto. En la discusión sobre estabilidad esterna se supondrán
condiciones iniciales cero. Cuando éstas no son cero, se pueden tratar como
entradas acotadas al sistema desenergizado, y por eso no hay pérdida de
generalidad aquí.

3.2. Estabilidad interna


Una realización discreta será internamente estable si y solo si

j i ( )j < 1 (3.2)

es decir, todos lo valores propios de están dentro del círculo unitario en el


plano Z (jzj < 1). La condición (3.2) es equivalente a la condición (3.1) si
la realización es mínima, lo cual se da si el orden de es igual al orden de
H (z).
Se hace notar que lo que se ha de…nido como estabilidad interna es llamada a
menudo estabilidad asintótica, mientras que una realización en la cual x (k)
permanezca acotada a medida que k ! 1, sin tender necesariamente a cero
es llamada estable. El punto es que valores propios de no repetidos sobre el
círculo unitario son consistentes con estabilidad en este sentido, pero no con
estabilidad asintótica. Los sistemas conservativos (sin pérdidas), son ejemplos
de sistemas estables pero no asintóticamente estables.
Se enunciarán ciertos métodos para establecer (3.2) basados en un método
muy general, introducido por Lyapunov para estudiar la estabilidad de
sistemas lineales y no lineales.

3.3. El criterio de Lyapunov


Teorema 3.1 Una matriz A es una matriz estable, es decir, <e f i (A)g < 0
para todos los valores propios de A, si y solo si para cualquier matriz
3.3 El criterio de Lyapunov 87

simétrica de…nida positiva Q dada, existe una matriz positiva de…nida


(simétrica) P que satisface:
AT P + PA = Q (3.3)
en donde una matriz R es semide…nida positiva si la forma cuadrática
xT Rx 0, para todo x. Si la igualdad se mantiene solo cuando x 0, se
dice que R es de…nida positiva.
Nótese que:
1. Una matriz simétrica R es de…nida positiva si y solo si los menores
principales (los determinantes de las matrices k k en la esquina
superior izquierda de R; k = 1; 2; : : : ; n) son todos positivos.
2. La matriz es semide…nida positiva si todos los menores principales no
son negativos.
3. Una matriz simétrica R es semide…nida positiva (de…nida positiva) si
y solo si todos los valores propios son no negativos (positivos).
Este criterio de Lyapunov raramente se usa para veri…cación numérica directa
de estabilidad. En su lugar se usan ciertas pruebas especiales, por ejemplo la
siguiente variante debido a Kalman, es útil a menudo.
Corolario 3.2 (Kalman) En el teorema anterior se puede tomar Q
semide…nida positiva, dado que xT Qx no es identicamente cero a lo largo
de cualquier solución diferente de cero (0) de x=Ax.
_
La base física de estos resultados es la siguiente:
V [x (t)] = xT (t) Px (t) (3.4)
puede ser considerada como una energía generalizada asociada con la
realización. En un sistema estable la energía debe decaer con el tiempo,
consistente con el cálculo siguiente:
dV [x (t)]
= x_ T (t) Px (t) + xT (t) Px_ (t)
dt
= xT (t) AT Px (t) + xT (t) PAx (t)
= xT (t) PA + AT P x (t)
= xT (t) Qx (t) (3.5)
88 Criterios de Estabilidad

Por lo tanto se puede concluir que x (t) ! 0 a medida que t ! 1 provistos


de que Q sea de…nida positiva o al menos provistos de que xT (t) Qx (t) no
sea idénticamente cero a lo largo de cualquier trayectoria de x_ = Ax.

Corolario 3.3 Si A es una matriz estable, entonces la ecuación de


Lyapunov:
AT P + PA + Q = 0
tiene una solución única para cada Q.

Si se suponen dos soluciones P1 y P2 , entonces:

AT [P1 P2 ] + [P1 P2 ] A + Q = 0

Por lo tanto:
T Tt
0 = eA t AT [P1 P2 ] + [P1 P2 ] A eA
d AT t T
= e fP1 P2 g eA t
dt
y
T Tt
eA t fP1 P2 g eA : matriz con valores constantes para todo t.

En particular, si t = 0 y t = tf se tiene:
Tt Tt
P1 P2 = eA f
fP1 P2 g eA f

Haciendo tf ! 1 y usando la estabilidad de A, se obtiene:

P1 P2 = 0, entonces P1 = P2 .

3.3.1. Sistemas discretos


Con argumentos similares se pueden estudiar los sistemas discretos de la
forma
x (kh + h) = x (kh) (3.6)
con el único cambio de que la ecuación para sistemas de tiempo continuo 3.3
es reemplazada por:
T
Pd Pd = Qd (3.7)
3.4 Criterio de Routh Hurwitz en sistemas discretos mapeados 89

Es importante notar que muchos resultados para sistemas discretos se pueden


obtener de los correspondientes para sistemas continuos mediante el uso de
la transformación bilineal:
z 1 1+s
s= óz= (3.8)
z+1 1 s
la cual mapea el semiplano complejo izquierdo de s en el círculo unitario del
plano z y viceverza, como se muestra en la …gura 3.1.

Figura 3.1: Mapeo del SCI en el círculo unitario y viceverza.

Con las sustituciones dadas en (3.9) para sistemas en forma de espacio de


estado
1 1 T 1 1
A !( I) ( I) ;Q ! +I Qd ( + I) ; P ! Pd (3.9)
2
en donde el subíndice d es usado temporalmente para denotar cantidades
discretas, se puede veri…car que la ecuación 3.3
AT P + PA = Q
se convierte en
T
Pd Pd = Qd

3.4. Criterio de Routh Hurwitz en sistemas


discretos mapeados
Como se señaló antes, la prueba de estabilidad de un sistema de control
discreto es esencialmente un problema de investigar si todas las raices de la
90 Criterios de Estabilidad

ecuación característica están dentro del círculo unitario jzj = 1 en el plano


z.
Como se demostró anteriormente, la transformada bilineal z = 1+s1 s
mapea el
SCI de s en el interior del círculo unitario jzj < 1 de z. Por lo tanto, una
vez que la ecuación característica en z es transformada al dominio de s con
la transformación bilineal, el criterio de Routh-Hurwitz se puede aplicar a la
ecuación en s.

Ejemplo 3.1 Considere la ecuación característica de un sistema dada por

a (z) = z 3 + 5:94z 2 + 7:7z 0:368 = 0

1+s
Con z = 1 s
entonces

3 2
1+s 1+s 1+s 1+s
a = + 5:94 + 7:7 0:368 = 0
1 s 1 s 1 s 1 s
= 3:128s3 2
11:744s + 2:344s + 14:272

Aplicando el criterio de Routh-Hurwitz se tiene


s3 3:128 2:344
2
s 11:744 14:272
3:128 2:344 3:128 0
11:744 14:272 11:744 0
s1 11:744
= 6:145 11:744
=0
11:744 14:272
6:145 0
s0 6:145
= 14:272 0
ya que hay dos cambios de signo en la primera columna de la tabla anterior,
la ecuación característica a 11+ss tiene dos raices en el semiplano complejo
derecho, lo cual corresponde a que a (z) tenga dos raices fuera del círculo
unitario en el plano z. Por lo tanto, el sistema discreto correspondiente es
inestable.

Ejemplo 3.2 La ecuación característica de un sistema de control digital


lineal es
a (z) = z 3 + z 2 + z + K
en donde K es una constante real. Hallar el rango de valores de K de modo
que el sistema sea estable.
3.5 Criterio de Jury 91

Utilizando la transformación bilineal, entonces


3 2
1+s 1+s 1+s 1+s
a = + + +K =0
1 s 1 s 1 s 1 s
= (1 K) s3 + (1 + 3K) s2 + 3 (1 K) s + (3 + K) = 0
Aplicando el criterio de Routh-Hurwitz se tiene
s3 (1 K) 3 (1 K)
s2 (1 + 3K) (3 + K)
(1 K) 3 (1 K) (1 K) 0
(1 + 3K) (3 + K) (1 + 3K) 0
s1 (1+3K)
= 8K (1 K) (1+3K)
=0
(1 + 3K) (3 + K)
8K (1 K) 0
s0 8K(1 K)
= (3 + K) 0
Entonces
(1K) > 0 ) K < 1
1
(1 + 3K) > 0 ) K >
3
8K (1 K) > 0 ) K < 1 ya que K > 0
(3 + K) > 0 ) K > 3
Por lo tanto
0<K<1
Hay pruebas de estabilidad que se pueden aplicar directamente a la ecuación
característica en z, con referencia al círculo unitario en el plano z como el
criterio de Jury.

3.5. Criterio de Jury


Si la ecuación característica de un sistema discreto es
a (z) = a0 z n + a1 z n 1
+ + an (3.10)
Es posible obtener la tabla 3.1:
en donde:
aki 1
= aki k
k ak 1 (3.11)
ak
k = kk (3.12)
a0
92 Criterios de Estabilidad

a0 a1 an 1 an
an
an an 1 a1 a0 n = a0
an0 1 ann1
2 ann 11
n 1
an
ann 11 n 1
a1 an0 1
n 1 = 1
n 1
a0
..
.
a00
Cuadro 3.1: Tabla para el criterio de Jury

La primera y la segunda …la de la tabla 3.1 son los coe…cientes en


(3.10) en orden directo e inverso, respectivamente. La tercer …la se obtiene
multiplicando la segunda …la por n = aan0 y restándola de la primera …la.
El último elemento en la tercer …la es por lo tanto cero. La cuarta …la es la
tercera en orden invertido. El esquema se repita hasta que hay 2n + 1 …las.
La última …la consiste de un único elemento.
La prueba de estabilidad de Jury establece que: si a0 > 0, entonces la ecuación
característica (3.10) tiene todas sus raices dentro del círculo unitario si y solo
si todos los ak0 , k = 0; 1; : : : ; n 1 son positivos. Si ningún ak0 es cero entonces
el número de los ak0 negativos es igual al número de raíces fuera del círculo
unitario.
Nota: si todos los ak0 son positivos para k = 1; 2; : : : ; n 1; entonces se puede
demostrar que la condición a00 > 0 es equivalente a las condiciones (3.13)

a (1) > 0 (3.13)


n
( 1) a ( 1) > 0

Estas condiciones (3.13) son necesarias (pero no su…cientes) para estabilidad


y por lo tanto se pueden usar antes de formar la tabla. Es decir, si se
viola cualquiera de las condiciones (3.13), entonces no todas las raices de
la ecuación característica (3.10) están dentro del círculo unitario.

Ejemplo 3.3 Considere la ecuación característica (3.14)

a (z) = z 2 + a1 z + a2 (3.14)

y determine si es estable usando el criterio de estabilidad de Jury.

Se construye la tabla
3.5 Criterio de Jury 93

1 a1 a2
a2
a2 a1 1 2 = 1
1 a22 a1 (1 a2 )
a1 (1 a2 ) a1
a1 (1 a2 ) 1 a22 1 = 1 a22
= 1+a2
a21 (1 a2 )
1 a22 1+a2

Cuadro 3.2: Tabla para el criterio de Jury

Entonces, todas las raices de (3.14) están dentro del círculo unitario si:

1 a21 > 0
a21 (1 a2 ) 1 a2
1 a22 = (1 + a2 )2 a21 > 0
1 + a2 1 + a2
lo cual da:

a2 < 1
a2 > 1 + a1
a2 > 1 a1

El área de estabilidad para la ecuación de segundo orden (3.14) se muestra


en la …gura 3.2.

Figura 3.2: Área de estabilidad para la ecuación de segundo orden 3.14 como
una función de los coe…cientes a1 y a2 .
94 Criterios de Estabilidad

3.6. Ejercicios propuestos


Ejercicio 3.1 Determinar si las siguientes ecuaciones tienen todas sus
raices dentro del disco unitario:

1. z 2 1:5z + 0:9 = 0

2. z 3 3z 2 + 2z 0:5 = 0

3. z 3 2z 2 + 2z 0:5 = 0

4. z 3 + 5z 2 :0; 25z 1:25 = 0

5. z 3 1:7z 2 + 1:7z 0:7 = 0

Ejercicio 3.2 La función de transferencia en lazo abierto de un sistema


digital es
K
H (z) =
z (z 0:2) (z 0:4)
con K > 0. Hallar las condiciones para K tal que el sistema sea estable en
lazo cerrado.

Ejercicio 3.3 Hallar la curva de Nyquist para el sistema


1
H (z) =
z 0:5
Capítulo 4

Controlabilidad,
Alcanzabilidad, Observabilidad
y Detectabilidad

Dos preguntas fundamentales para sistemas dinámicos se discuten. La


primera es si es posible conducir un sistema desde un estado inicial dado a
cualquier otro estado. La segunda es como determinar el estado de un sistema
dinámico con observaciones de las entradas y las salidas. Estas preguntas
fueron hechas y respondidas por Kalman, quien introdujo los conceptos
de controlabilidad y observabilidad. Los sistemas pueden ser de múltiples
entradas y múltiples salidas (MIMO).

4.1. Controlabilidad y alcanzabilidad


Considere el sistema

x (k + 1) = x (k) + u (k) (4.1)


y (k) = Cx (k)

Supóngase que el estado inicial x (0) es dado. El estado en el instante n, en


donde n es el orden del sistema es dado por
n
x (n) = x (0) + n 1 u (0) + + u (n 1) (4.2)
n
= x (0) + WC U

95
96 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

en donde
2 n 1
WC = n nm
T
U = u (n 1) u (n) mn 1

Comparar con la ecuación (2.44). Si WC tiene rango n, entonces es posible


encontrar n ecuaciones de las cuales las señales de control se pueden encontrar
de modo que el estado inicial es transferido al estado …nal deseado x (n).
Nótese que la solución no es única si hay más de una señal de entrada. En la
literatura, la controlabilidad se de…ne de varias formas, en este caso se de…ne
así:

De…nición 4.1 Controlabilidad: El sistema (4.1) es controlable, si es posible


encontrar una secuencia de control tal que el origen pueda ser alcanzado desde
cualquier estado inicial en un tiempo …nito.

Un concepto relacionado con la controlabilidad es la alcanzabilidad, que se


de…ne así:

De…nición 4.2 Alcanzabilidad: El sistema (4.1) es alcanzable, si es posible


encontrar una secuencia de control tal que un estado arbitrario pueda ser
alcanzado desde cualquier estado inicial en un tiempo …nito.

Los dos conceptos sin embargo, son equivalente si es invertible. Aquí se


discute fundamentalmente la alcanzabilidad. La controlabilidad no implica
alcanzabilidad, lo cual se observa de (4.2). Si n x (0) = 0, entonces el
origen será alcanzado con entrada cero, pero el sistema no es necesariamente
alcanzable.
El siguiente teorema se desprende de la de…nición anterior y cálculos.

Teorema 4.1 Alcanzabilidad. El sistema (4.1) es alcanzable si y solo si la


matriz WC tiene rango n.

La matriz WC es llamada usualmente matriz controlable por su analogía con


los sistemas continuos.

Ejemplo 4.1 Un sistema controlable que no es alcanzable.


4.1 Controlabilidad y alcanzabilidad 97

El sistema
x (k + 1) = x (k) + u (k)
en donde
0 0 1
= ; =
1 0 0
es alcanzable ya que
1 0
WC = =
0 1
T
tiene rango total. Supóngase que es cambiada por = 0 1 , entonces

0 0
WC =
1 0

y el sistema no es alcanzable. Sin embargo, el sistema es controlable ya que


2
= 0. El origen es alcanzado en 2 pasos para cualquier condición inicial,
utilizando u (0) = u (1) = 0.
Por le teorema de Cayley Hamilton, se encuentra de (4.2) que todos los
estados que puedan ser alcanzados son generados por las columnas de la
matriz controlable WC . Esto implica que los estados alcanzables pertenecen
al subespacio lineal generado por las columnas de WC .

Ejemplo 4.2 Subespacios alcanzables

Dado el sistema
1 1 1 2
x (k + 1) = x (k) + u (k) ; x (0) =
0:25 0 0:5 2
T
será posible encontrar una secuencia de control tal que x (2) = 0:5 1 ?
De (4.2):
x (2) = 2 x (0) + u (0) + u (1)
lo cual da la condición:

0:5u (0) + u (1) = 4

Una posible secuencia de control es u (0) = 2, u (1) = 3.


Supóngase que se desea es:
T
x (2) = 0:5 1
98 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

Entonces, el sistema de ecuaciones es ahora:


3 1
= (0:5u (0) + u (1))
2 0:5
el cual no tiene solución. La razón es, por supuesto, que el sistema no es
alcanzable. La matriz controlable es:
1 0:5
WC =
0:5 0:25
Arrancando en el origen, es posible alcanzar solo aquellos puntos del espacio
T
de estado que pertenecen al subespacio generado por el vector 1 0:5 . En
el ejemplo es posible alcanzar otros puntos debido al efecto del valor inicial.
Si se introducen nuevas coordenadas mediante una matriz de transformación
no singular T , entonces en las nuevas coordenadas:
~C =
W ~ ~~ ~2~ ~n 1~
(4.3)
1 2 1 n 1 1
= T T T T T T T T T T
= T WC

Si WC tiene rango n entonces W ~ C también tiene rango n. Esto signi…ca que


la alcanzabilidad de un sistema es independiente de las coordenadas.

4.2. Forma canónica controlable


Supóngase que tiene la ecuación característica:
n n 1
det ( I )= + a1 + + an = 0 (4.4)

y que WC es no singular. Entonces existe una matriz de transformación tal


que el sistema transformado es:
2 3 2 3
a1 a2 an 1 an 1
6 1 0 0 7 607
6 .. 7 6 7
6 7 6 7
z (k + 1) = 6 1 . 7 z (k) + 607 u (k) (4.5)
6 . ... 7 6 .. 7
4 .. 5 4.5
0 1 0 0
y (k) = b1 bn z (k)
4.3 Seguimiento de una trayectoria 99

que es llamada la forma canónica controlable. La ventaja de esta forma


canónica es que es fácil de calcular el modelo de entrada - salida y calcular
una ley de control por realimentación de estado. Hay maneras simples de
hallar la matriz de transformación para la forma canónica controlable.
Para un sistema de una entrada, se sigue de (4.3) que la matriz de
transformación para la forma canónica controlable es T = W ~ C W 1 , en donde
C
W~ C es la matriz controlable de la representación (4.5). El siguiente ejemplo
muestra que la inversa de la matriz controlable tiene forma simple.

Ejemplo 4.3 Inversa de la matriz controlable.

Considere el sistema de tercer orden


2 3 2 3
a1 a2 a3 1
x (k + 1) = 4 1 0 0 x (k) + 05 u (k)
5 4
0 1 0 0

que está en forma controlable. La matriz controlable es:


2 3
1 a1 a21 a2
WC = 2
= 40 1 a1 5
0 0 1

su inversa es: 2 3
1 a1 a2
WC 1 = 40 1 a1 5
0 0 1
Generalizando 2 3
1 a1 a2 an 1
6 ... .. 7
60 1 a1 . 7
6 .. 7
WC 1
=6
6 0 1 . a2 7 7
6. ... ... 7
4 .. a1 5
0 0 1

4.3. Seguimiento de una trayectoria


De las de…niciones y cálculos anteriores, es posible determinar una secuencia
de control tal que un estado deseado se pueda alcanzar después de n pasos
100 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

de tiempo (n intervalos de muestreo). La alcanzabilidad también implica que


es posible seguir un trayectoria dada en el espacio de estado. Suponer que
cualquier x (k) es dado y que es necesario llegar a x (k + 1). De (4.1) se ve
que eso es posible si y solo si tiene rango n, es decir, es necesario pero no
su…ciente tener n señales de entrada. Para un sistema con una entrada y una
salida es posible, en general, alcanzar estados deseados en cada punto de n
muestras, dado que los puntos deseados son conocidos n pasos en adelanto.
Es fácil hacer que la salida siga una trayectoria dada. Suponga que la
trayectoria es dada por r (k). La señal de control u (k) debe satisfacer:
B (q)
y (k) = u (k) = r (k)
A (q)
es decir:
A (q)
u (k) = r (k) (4.6)
B (q)
Supóngase que hay d pasos de retardo en el sistema. La generación de u (k) es
entonces causal solo si la trayectoria deseada es conocida d pasos en adelanto.
Así la señal de control se puede generar en tiempo real y se obtiene variando
A
la trayectoria de salida deseada a través del sistema inverso B . La ecuación
(4.6) tiene solución única si la señal r (k) es tal que existe un k0 tal que
u (k) = 0 para todo k < k0 . La señal u (k) es acotada si el sistema tiene una
inversa estable.

4.4. Observabilidad y detectabilidad


El sistema en (4.1) es observable si hay un valor …nito k tal
que el conocimiento de las entradas u (0) ; : : : ; u (k 1) y las salidas
y (0) ; : : : ; y (k 1) es su…ciente para determinar el estado inicial del sistema.
Considérese el sistema en (4.1). El efecto de la señal de entrada, conocida,
siempre se puede determinar y no hay pérdida de generalidad suponer que
u (k) = 0. Asúmase que y (0) ; y (1) ; : : : ; y (n 1) son dados. Esto genera el
siguiente conjunto de ecuaciones:
y (0) = Cx (0)
y (1) = Cx (1) = C x (0)
..
.
y (n 1) = C n 1 x (0)
4.4 Observabilidad y detectabilidad 101

Usando notación vectorial:


2 3 2 3
C y (0)
6 C 7 6 y (1) 7
6 7 6 7
6 .. 7 x (0) = 6 .. 7 (4.7)
4 . 5 4 . 5
n 1
C y (n 1)

El estado x (0) se puede obtener de (4.7) si y solo si la matriz observable:


2 3
C
6 C 7
6 7
WO = 6 .. 7 (4.8)
4 . 5
C n 1

tiene rango n. El estado x (0) no es observable si x (0) está en el espacio nulo


de WO (el conjunto de soluciones para Av = 0 es, en si mismo, un espacio
vectprial llamado el espacio nulo de A). Si dos estados no son observables,
entonces cualquier combinación lineal tampoco es observable; es decir, los
estados no observables forman un subespacio lineal.

Teorema 4.2 Observabilidad: el sistema (4.1) es observable si y solo si WO


tiene rango n.

Teorema 4.3 Detectabilidad: un sistema es detectable si los únicos estados


no observables son tales que decaen al origen. Es decir, los correspondientes
valores propios son estables.

La prueba de observabilidad dada por el teorema 4.2 es equivalente a la


de la observabilidad de sistemas continuos. Es directo demostrar que la
observabilidad de un sistema es independiente de sus coordenadas.

Ejemplo 4.4 Un sistema con estados no obsevables.

Considere el sistema
1:1 0:3
x (k + 1) = x (k)
1 0
y (k) = 1 0:5 x (k)
102 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

La matriz observable es

C 1 0:5
WO = =
C 0:6 0:3

El rango de WO es 1, y los estados no observables pertenecen al espacio nulo


de WO , es decir, 0:5 1 . La …gura (4.3) muestra la salida para 4 estados
iniciales diferentes. Todos los estados iniciales que pertenecen a una línea
paralela a 0:5 1 dan la misma salida (ver …gura 4.1 b y d).

2 2
(a)

(b)
1 1

0 0
0 5 10 0 5 10

2 2
(d)
(c)

1 1

0 0
0 5 10 0 5 10
Tiempo Tiempo

Figura 4.1: Salida del sistema en el ejemplo 4.4 para los estados iniciales: (a)
T T T T
0:5 1 , (b) 1:5 0:5 , (c) 2:5 0 , (d) 1 0:5 .

4.5. Forma canónica observable


Supóngase que la ecuación característica de es (4.4) y que la matriz
observable WO no es singular. Entonces existe una matriz de transformación
4.5 Forma canónica observable 103

tal que el sistema transformado es:


2 3 2 3
a1 1 0 0 b1
6 .. 7 6 7
6 a2 0 1 .7 6 b2 7
6 .. 7
. . . 7 Z (k) + 6 7
Z (k + 1) = 6
6 a3 . 07 6 7 u (k) (4.9)
6 7 6 .7
4 .. 5 4 .. 5
. 1
an 0 0 bn
y (k) = 1 0 0 Z (k)

que es llamada la forma canónica observable, la cual tiene la ventaja de que


es fácil encontrar el modelo de entrada - salida y determinar un observador
deseable.
La matriz de transformación en este caso es dada por

~ 1 WO
T =W O

~ O es la matriz observable para la representación 4.9.


en donde W

Ejemplo 4.5 Inversa de la matriz controlable.

Considere el sistema de tercer orden


2 3 2 3
a1 1 0 b1
x (k + 1) = 4 a2 0 1 x (k) + b2 5 u (k)
5 4
a3 0 0 b3
y (k) = 1 0 0 x (k)

que está en forma observable. La matriz observable es:


2 3 2 3
C 1 0 0
WO = 4 C 5 = 4 a1 1 05
2 2
C a1 a2 a1 1

su inversa es: 2 3
1 0 0
WO 1 = 4a1 1 05
a2 a1 1
104 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

Generalizando 2 3
1 0 0
6 .. 7
6 a1 1 0 .7
6 .. 7
WO 1
=6
6 a2 a1 1 . 7 7
6 . .. .. .. 7
4 .. . . . 05
an 1 a2 a1 1

Ejemplo 4.6 Un sistema de segundo orden.

Considérese el siguiente sistema el cual está descrito en forma canónica


observable

a1 1 b
x (k + 1) = x (k) + 1 u (k)
a2 0 b2
y (k) = 1 0 x (k)

El operador de transferencia al pulso es:

1
q + a1 1 b1
H (q) = 1 0
a2 q b2
1 q 1 b1
= 1 0
q2
+ a1 q + a2 a2 q + a1 b 2
b1 q + b2 b1 q + b2 q 2
1
= 2 =
q + a1 q + a2 1 + a1 q 1 + a2 q 2

Así, los ai y bi en la forma canónica de…nen los polinomios A y B,


respectivamente. Esto es cierto también para sistemas de orden n, tanto la
forma observable como la controlable.

4.6. Descomposición de Kalman


Las partes alcanzables y observables del sistema son dos subespacios lineales
del espacio de estado, los cuales son independientes de las coordenadas de
espacio de estado. Kalman demostró que es posible introducir coordenadas
4.6 Descomposición de Kalman 105

tales que un sistema se puede partir de la siguiente manera:


2 3 2 3
11 12 0 0 1
6 0 0 0 7 607
x (k + 1) = 6
4 31
22 7 x (k) + 6 7 u (k)
5 4 25
32 33 34
0 42 0 44 0
y (k) = C1 C2 0 0 x (k)

en donde ij , i , y Ci son matrices de adecuado orden. El espacio de estado


se divide en 4 partes, que corresponden a estados que son alcanzables y
observables, no alcanzables pero observables, alcanzables y no observables, y
ni alcanzables ni observables.
Usando manipulaciones algebraicas el operador de trasnferencia la pulso es:

1
H (q) = C1 (qI ) 1

Así el operador de transferencia al pulso es determinado por la parte


alcanzable y observable del sistema. El siguiente teorema resume estos
resultados.

Teorema 4.4 Descomposicón de Kalman. Un sistema lineal se puede dividir


en 4 subsistemas con las siguientes propiedades:

Sor : subsistema observable y alcanzable

Sor : subsistema observable pero no alcanzable

Sor : subsistema no observable pero alcanzable

Sor : subsistema ni observable ni alcanzable

Además la función de transferencia al pulso del sistema es determinada


únicamente por el subsistema que es alcanzable y observable.
Un diagrama de bloques de la descomposicón de Kalman se da en la …gura 4.2,
la cual muestra como son interconectados los subsistemas. La …gura también
muestra que la relación entrada - salida es dada solo por el subsistema Sor .
106 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

S or Σ
u (t ) y (t )

S or S or

So r

Figura 4.2: Diagrama de bloques de la descomposición de Kalman cuando el


sistema es diagonalizable.

4.7. Pérdida de alcanzabilidad y


observabilidad con el muestreo
El muestreo de un sistema continuo da un sistema discreto con matrices del
sistema que dependen del periodo de muestreo. Que tanto in‡uye este en la
alcanzabilidad y observabilidad del sistema muestreado?
Para obtener un sistema discreto alcanzable, es necesario que el sistema
continuo también sea alcanzable, ya que las señales de control admisibles para
el sistema muestreado - señales constantes por tramos - son un subconjunto
de las señales de control admisibles para el sistema continuo.
Sin embargo, puede suceder que la alcanzabilidad se pierda para algunos
periodos de muestreo. Las condiciones para no observabilidad son más
restrigidas en el caso continuo ya que la salida tiene que ser cero sobre un
intervalo de tiempo, mientras que la salida muestreada tiene que ser cero
solo en los instantes de muestra. Esto signi…ca que la salida continua podría
oscilar entre los instantes de muestra y permanecer en cero en los instantes de
muestra. Esta condición es llamada algunas veces oscilación escondida. Así,
el sistema muestreado puede ser no observable aún si el sistema continuo
correspondiente es observable.
El oscilador armónico puede ser usado para ilustrar la condición anterior.

Ejemplo 4.7 Pérdida de alcanzabilidad y observabilidad


4.8 Análisis de lazos de realimentación simples 107

El modelo discreto del oscilador armónico es dado por:


cos h sin h 1 cos h
x (kh + h) = x (kh) + u (kh)
sin h cos h sin h
x (kh) = 1 0 x (kh)

Los determinantes de las matrices controlable y observable son:

det WC = 2 sin (!h) (1 cos (!h))

y
det WO = sin (!h)
Tanto la observabilidad como la alcanzabilidad se pierden para !h = n ,
aunque el sistema continuo correspondiente sea controlable y observable.
El ejemplo muestra una manera obvia de perder observabilidad y/o
alcanzabilidad. Si el periodo de muestreo es la mitad del periodo (o un
múltiplo) de la frecuencia natural del sistema, entonces esta fecuencia no
será vista en la salida.
Las reglas dadas en el capítulo 2 para la escogencia del periodo de muestreo
son tales que esta situación no debe ocurrir. Las reglas implican alrededor de
20 muestras por periodo, no 2.
La observabilidad y/o alcanzabilidad se pierden cuando el operador de
transferencia al pulso tiene polos y ceros comunes. Los polos y ceros son
funciones del intervalo de muestreo. Esto implica que habrá factores comunes
solo para valores aislados del periodo de muestreo.
Un cambio del periodo de muestreo hará que el sistema sea observable y/o
alcanzable de nuevo.

4.8. Análisis de lazos de realimentación


simples
Se discute el efecto de la realimentación en la estabilidad, en el transitorio
y en el estado estacionario. Se consideran fundamentalmente sistemas con
realimentación simple, como en la …gura 4.1. Varias ventajas se obtienen
con el uso de realimentación, tanto en sistemas continuos como en sistemas
discretos. La realimentación por ejemplo puede hacer lo siguiente:

Mejorar el comportamiento transitorio del sistema.


108 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

Disminuir la sensitividad al cambio en los parámetros del sistema en


lazo abierto.

Eliminar errores de estado estacionario si hay su…cientes integradores


en el sistema en lazo abierto.

Disminuir la in‡uencia de perturbaciones en la carga y errores en la


medida.

4.9. Perturbaciones
Se acostumbra a distinguir los diferentes tipos de perturbaciones:
perturbaciones de carga, errores en la medida, errores en la medida y
variaciones paramétricas.

4.9.1. Perturbaciones de carga


Afectan las variables del proceso. Podrían representar fuerzas de perturbación
en sistemas mecánicos - por ejemplo, ráfagas de viento sobre una antena
estabilizada, olas en un barco, carga en un motor, etc. En control de
procesos, las pertubaciones de carga podrían ser variaciones en la calidad
en el ‡ujo de alimentación (caudal) o variaciones en el ‡ujo demandado. En
sistemas térmicos, las perturbaciones de carga podrían ser variaciones en la
temperatura ambiente. Las perturbaciones de carga típicamente varían lento.
Tmabién podrían ser periódicas, por ejemplo, las olas en sistemas de control
de barcos.

4.9.2. Errores de medida


Provienen de los sensores. Podrían haber errores de estado estacionario en
algunos sensores debido a errores de calibración. Sin embargo, los errores
de medida típicamente tienen compoenentes de alta frecuencia. También
puede haber errores dinámicos debido a la dinámica del sensor y hacer una
interacción dinámica complicada entre los sensores y el proceso. ejemplos
típicos son medidas con giroscopios y medidas de nivel de líquido en
reactores nucleares. Los errores de medida a veces dependen del …ltraje en
los instrumentos, y es una buena idea examinar el instrumento y modi…car
el …ltro de manera que se adecue al problema particular.
4.10 Modelos simples de perturbación 109

Figura 4.3: Modelos idelaizados de perturbaciones simples

4.9.3. Variaciones paramétricas


La teoría lineal se usa en este curso. Las perturbaciones de carga y el rudio en
la medida aparecen entonces aditivamente. Los sistemas reales, sin embargo,
muchas veces son no lineales. Esto signi…ca que las perturbaciones actuan de
manera más complicada. Ya que los modelos lineales se obtienen linealizando
los no lineales , algunas perturbaciones aparecen entonces como variaciones
en los parámetros del modelo lineal.

4.10. Modelos simples de perturbación


Hay 4 tipos diferentes de perturbaciones: impulso, escalón, rampa y sinusoide,
que se utilizan comunmente en el análisis de sistemas de control. Se muestra
en la …gura 4.3.
El impulso y el pulso: Son idealizaciones simples de perturbaciones
instantáneas de corta duración. Pueden representar perturbaciones de carga,
así como errores de medida. Para sistemas continuos, la perturbación es
un impulso (función delta); para sistemas muestreados, la perturbación se
modela como un pulso con amplitud uno y duración un periodo de muestreo.
El pulso y el impulso también son importantes por razones teóricos, ya que
la respuesta de un sistema lineal continuo se especi…ca completamente por
su respuesta al impulso y la de un sistema discreto por su respuesta al pulso.
El escalón: Otra señal prototipo para una perturbación. Se usa típicamente
para representar una perturbación de carga o una variación (o¤set) en una
medida.
La rampa: Es cero para t < 0 y se incrementa linelamente para t > 0. Se
usa para representar errores de medida y perturbaciones que repentinamente
comienzan a alejarse de un patrón. En la práctica, las perturbaciones
110 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

δK r e y
H r (q ) + H (q )

Figura 4.4: Generación del valor de referencia usando un sistema dinámico


con un pulso de entrada.

generlamente son acotadas; sin embargo, la rampa es una idealización útil.


La sinusoide: Es el prototipo para una perturbación periódica. La selección
de la frecuencia hace posible representar perturbaciones de carga de baja
frecuencia, así como ruido en la medida de alta frecuencia.
Generación de las perturbaciones: Es conveniente ver las perturbaciones como
si fueran generadas por sistemas dinámicos (ver …gura 4.4).
Se supone que la entrada al sistema dinámico es un pulso unitario k es decir
r (k) = Hr (q) k

Así para generar un escalón se utiliza


q
Hr (q) =
q 1
Para generar una rampa se usa
q
Hr (q) =
(q 1)2
Y para generar una sinusoide se utiliza un oscilador armónico. Desde un
punto de vista entrada - salida, las perturbaciones se pueden describir como
respuestas a impulsos. También pueden ser consideradas como respuestas de
sistemas dinámicos con entradas cero, pero condiciones iniciales diferentes de
cero. En ambos casos, las características principales de las perturbaciones son
descritas por los sistemas dinámicos que las generan. El método por supuesto
se puede aplicara tanto a sistemas continuos como discretos.

4.11. Valores de estado estacionario


Cuando se analizan sistemas de control, es importante calcular valores de
estado estacionario de la salida y del error del sistema. Supóngase un sistema
4.11 Valores de estado estacionario 111

con realimentación simple como se muestra en la …gura. Para generalizar


se puede asumir que el lazo de realimentación unitario es reemplazado por
Hf b (q). El error e (k) es entonces
1 1
e (k) = r (k) = (4.10)
1 + H (q) Hf b (q) 1 + L (q)
El teorema del valor …nal (ver propiedades de la transformada Z) se puede
usar para calcular el valor de estado estacionario e (k). Sin embargo, nótese
que la estabilidad del sistema se debe probar primero antes de que se pueda
usar el teorema de valor …nal.
Si la señal de entrada es un escalón , el error de estado estacionario se puede
calcular simplemente poniendo q = 1 en (4.10).
El número de integradores en el sistema en lazo abierto determina la clase de
valores de referencia que se pueden seguir sin errores de estado estacionario.
Si el sistema en lazo abierto tiene p integradores, entonces el error será cero
en estado estacionario (con la condición de que el sistema en lazo cerrado sea
asintóticamente estable) para señales de referencia que son polinomiales de
K de orden menor que o igual a p 1.
Ejemplo 4.8 Errores de estado estacionario para entradas escalón y rampa.
Considéres el sistema
q 0:5
y (k) = H (q) u (k) = u (k)
(q 0:8) (q 1)
Con el sistema en lazo cerrado como en la …gura
(q 0:8) (q 1)
e (k) = r (k)
(q 0:8) (q 1) + q 0:5
Supóngase que r (K) es un p escalón unitario. Ya que el sistema en lazo cerrado
es estable ( 1;2 = 0:4 j 0:14), se puede usar el teorema del valor …nal para
mostrar que el error de estado estacionario es cero.
Esto se puede ver simplemente haciendo q = 1. Otra manera es observar que
el sistema en lazo abierto contiene un integrador, es decir un polo en 1. Si r
es una rampa unitaria, cuya transformada Z es:
z
R (z) =
(z 1)2
el error de estado estacionario es:
(z 0:8) (z 1) z (1 z 1 )
l m e (k) = l m = 0:4
k!1 z!1 (z 0:8) (z 1) + z 0:5 (z 1)2
112 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

4.12. Simulación
La simulación es una buena manera de investigar el comportamiento de
sistemas dinámicos, por ejemplo, el comportamiento entre muestras de
SCC. La simulación es una buena herramienta, pero debe tenerse en
cuenta que la simulación y el análisis deben tenerse juntos. Cuando se
hacen simulaciones, no siempre es posible investigar todas las posibles
combinaciones desfavorables, por ejemplo desde el punto de vista de
la estabilidad , observabilidad o alcanzabilidad. Estos casos se pueden
determinar mediante el análisis.
Es importante que el programa de simulación sea simple de usar , de
modo que la persona fundamentalmente interesada en los resultados, se
pueda involucrar en la simulación y en la evaluación de los resultados de
la simulación.
Desde el principio de los 60, varios paquetes de simulación digital fueron
desarrollados. Básicamente, eran implementaciones digitales de la simulación
análoga. La programación se hacía usando diagramas de bloques. Programas
posteriores se desarrollaron en los que los modelos se daban directamente
como ecuaciones.
Es importante tener una buena comunicación máquina - usuario para las
simulaciones; el usuario debe tener la posibilidad para cambiar parámetros y
modi…car el modelo fácilmente. La mayoría de los programas de simulación
son interactivos, lo cual signi…ca que el usuario interactua con el computador
y decide el próximo pasado, basado en los resultados obtenidos hasta el
momento. Una manera de implementar la interacción es permitir que el
computador le pida al usuario seleccionar de respuestas prede…nidas; la cual
se conoce como interacción manejada por menus. Otra posibilidad es la
interacción manejada por comandos, la cual es como un lenguaje que resuelve
problemas a alto nivel, y en la cual el usuario puede escoger libremente
de todos los comandos disponibles en el sistema. Esta es una manera más
‡exible de comunicarse con el computador y es muy e…ciente para el usuario
experimentado, mientras que el programa manejado por menus es más fácil
de usar para el usuario poco experimentado.
Es importante también, en un paquete de simulación, tener manera ‡exible
de presentar los resultados, los cuales son a menudo curvas. Finalmente, para
poder resolver el tipo de problemas de interés en este curso, es importante
poder combinar sistemas continuos y discretos.
Ejemplos de paquetes de simulación son: Matlab con el Simulink, Matrix,
4.13 Control del integrador doble 113

Simmon, CC. Es importante que el lector use simulación para lograr una
buena comprensión del comportamiento de los SCC que son descritos en este
curso.

4.13. Control del integrador doble


El integrador doble será usado como ejemplo principal para mostrar como
el comportamiento en lazo cerrado es cambiado con diferentes controladores.
El operador de transferencia al pulso del integrador doble, para el periodo
de muestreo h = 1 es:
0:5 (q + 1)
H0 (q) = (4.11)
(q 1)2
Supóngase que el propósito del control es hacer que la salida siga los cambios
en el valor de referencia. Supóngase también que el proceso es controlado por
un computador utilizando realimentación proporcional, es decir,

u (k) = Kp (r (k) y (k)) = Kp e (k) ; Kp > 0

en donde r es el valor de referencia. La ecuación característica del sistema en


lazo cerrado es:

(q 1)2 + 0:5Kp (q + 1) = q 2 + (0:5Kp 2) q + 1 + 0:5Kp = 0 (4.12)

La prueba de estabilidad de Jury (comparar con el ejemplo 3.3) da las


siguientes condiciones para estabilidad

1 + 0:5Kp < 1
1 + 0:5Kp > 1 + 0:5Kp 2
1 + 0:5Kp > 1 0:5Kp + 2

de las cuales se deduce que el sistema es inestable para todos lo valores de


ganancia Kp .
Para lograr un sistema estable se debe modi…car el controlador. Se sabe de la
síntesis de sistemas continuos que la acción derivativa mejora la estabilidad,
así que la realimentación proporcional y derivativa se puede intentar también
para el sistema discreto. Supóngase que es posible medir y muestrear la
velocidad y_ y usarla para la realimentación; es decir

u (K) = Kp (e (k) Td y_ (k)) (4.13)


114 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

r
u 1 1 x1 = y
A/D Computador D/A s s

Figura 4.5: Controlador discreto con realimentación de la posición y la


velocidad del integrador doble.

El diagrama de bloques correspondiente se muestra en la …gura 4.5.


Para hallar el modelo de entrada salida del sistema en lazo cerrado con el
controlador (4.13) nótese que
dy
=u
dt
Puesto que u es constante sobre los intervalos de muestreo,

y (k + 1) y (k) = u (k)

o
1
y (k) = u (k) (4.14)
q 1
Las ecuaciones (4.11), (4.13) y (4.14) dan el sistema en lazo cerrado:
0:5Kp (q + 1)
y (k) = r (k) (4.15)
(q 1) (q 1 + Td Kp ) + 0:5Kp (q + 1)
El sistema es de segundo orden y hay dos parámetros de diseño, Kp y Td que
pueden ser usados para seleccionar los polos en lazo cerrado.
La ecuación característica en lazo cerrado es

q 2 + ( 2 + Td Kp + 0:5Kp ) q + 1 Td Kp + 0:5Kp = 0

La prueba de estabilidad de Jury da las siguientes condiciones de estabilidad:

1 Td Kp + 0:5Kp < 1
1 Td Kp + 0:5Kp > 1 + ( 2 + Td Kp + 0:5Kp )
1 Td Kp + 0:5Kp > 1 (2 + Td Kp + 0:5Kp )

de las cuales se obtiene que Kp > 0; Td > 0:5 y Td Kp < 2.


4.14 Aspectos prácticos de la selección del periodo de muestreo 115

Sea la señal de referencia un escalón. Las …guras 4.6 y 4.7 muestran la


salida continua para 4 valores diferentes de Kp . El comportamiento del
sistema en lazo cerrado varía desde una respuesta oscilatoria hasta una bien
amortiguada. Cuando Kp = 1, los polos están en el origen y la salida es igual
al valor de referencia después de 2 muestras. Este es el llamado control dead
beat y se discute posteriormente (ver también el capítulo 1 de introducción).
Cuando Kp > 1, la salida y la señal de control oscilan debido a que los polos
del sistema discreto están sobre el eje real negativo. Los polos están dentro
del círculo unitario si Kp > 34 .
(a) (b)
1.5 1.5
Salida: y

1 1

0.5 0.5

0 0
0 5 10 0 5 10

1 1
Senal de control: u

0.5 0.5

0 0

-0.5 -0.5
0 5 10 0 5 10
Tiempo Tiempo

Figura 4.6: Salida del sistema continuo en la …gura 4.5 con Td = 1:5 y con
(a) Kp = 0:5, (b) Kp = 0:75.

4.14. Aspectos prácticos de la selección del


periodo de muestreo
La selección del periodo de muestreo en sistemas muestreados es un problema
fundamental que será discutido varias veces en este curso. La selección
adecuada depende de las propiedades de la señal, el método de reconstrucción
y el propósito del sistema. En un problema puramente de procesamiento
de señal, el propósito es simplemente registrar una señal digitalmente
y recuperarla de sus muestras. Un criterio razonable para la selección
116 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

(c) (d)
1.5 1.5

Salida: y
1 1

0.5 0.5

0 0
0 5 10 0 5 10

2 2
Senal de control: u

0 0

-2 -2
0 5 10 0 5 10
Tiempo Tiempo

Figura 4.7: Salida del sistema continuo en la …gura 4.5 con Td = 1:5 y con
(c) Kp = 1, (d) Kp = 1:25.

podría entonces ser el tamaño del error entre la señal original y la señal
reconstruida. En aplicaciones de procesamiento de señal se puede justi…car
tener velocidades de muestreo de varias cientos de muestras por periodo.
Una selección racional de la velocidad de muestreo en un sistema de control en
lazo cerrado debe basarse en la comprensión de su in‡uencia en el desarrollo
del sistema de control. Parece razonable que la frecuencia más alta de interés
debe estar cercanamente relacionada al ancho de banda del sistema en lazo
cerrado. La selección de las velocidades de muestreo se puede basar entonces
en el ancho de banda o, equivalentemente, en el tiempo de crecimiento
del sistema en lazo cerrado. Velocidades de muestreo razonables son de
10 a 30 veces el ancho de banda, o de 4 a 10 por tiempo de crecimeinto,
las cuales podrían parecer lentas en relación a los problemas típicos de
procesamiento de señal. Comparativamente, velocidades de muestreo bajas se
pueden usar en problemas de control ya que la dinámica de muchos sistemas
a ser controlados son de caracter pasabajo y sus constantes de tiempo
son típicamente mayores que las respuestas temporales en lazo cerrado. La
contribución a la salida de un periodo de muestreo depende entonces del área
del pulso; es comparativamente insensitiva a la forma del pulso.
4.15 Oscilaciones escondidas 117

4.15. Oscilaciones escondidas


La …gura 4.7 muestra que la salida continua del proceso podría tener
oscilaciones que no son vistas en los puntos de muestra. Estas son llamadas
oscilaciones escondidas o rizado entre muestras. La simulación herramienta
efectiva para hallar oscilaciones escondidas. La transformada Z modi…cada
también se puede usar para calcular la salida continua entre los instantes de
muestra. Sin embargo, es importante hacer algún análisis.
El rizado entre muestras se determina esencialmente por la dinámica de lazo
abierto entre los puntos de muestra. Se pueden distinguir dos casos.

Oscilación en la salida continua de un sistema en lazo abierto o lazo


cerrado cuando no hay oscilación en la señal de control.

Oscilaciones entre los puntos de muestra causados por una oscilación


en la señal de control.

El primer caso de rizado entre muestras podría ocurrir si la observabilidad


del sistema en lazo abierto se pierde debido al muestreo. Así podrían haber
oscilaciones escondidas si el sistema continuo en lazo abierto tienen modos
oscilatorios y si el periodo de muestreo es igual a la frecuencia de estos
modos. Este tipo de oscilación escondida ocurre solo para ciertos valores de
muestreo. Un cambio en el sistema de muestreo hace el sistema observable
y que la oscilación pueda ser vista en la salida muestreada. La frecuencia
de la oscilación es a menudo más baja en la señal muestreada que en la
señal continua. Para detecta este tipo de rizado entre muestras, es necesario
chequear la observabilidad del sistema muestreado.

Ejemplo 4.9 Oscilación escondida en un sistema en lazo abierto.

Considere un sistema continuo con la función de transferencia


1
G (s) = +
s + 1 (s + 0:02)2 + 2

Este sistema se puede representar por el diagrama de bloques de la …gura


Muestreando el sistema con h = 2 da la función de transferencia al pulso
1
G (s) = + = G1 (s) + G2 (s) ; h = 2
s + 1 (s + 0:02)2 + 2
118 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

y1
G1 (s )
u y
+
+

G2 (s )
y2

Figura 4.8: Diagrama de bloques del sistema del ejemplo 4.9.

1 X1 (s)
G1 (s) = =
s+1 U (s)
entonces

x_ 1 = x1 + u; y1 = x1
x1 (k2 + 2) = e 2 x (k + 2) + 1 e 2
u (k2)
por tanto
2 1 2 (1 e 2)
H1 (q) = q e 1 e =
(q e 2)
Para G2 (s):

X2 (s) 1
= ; ) x_ 2 = 0:02x2 x3 + u
U (s) X3 (s) s + 0:02
X3 (s) 1
= ; ) x_ 3 = x2 0:02x3
X2 (s) s + 0:02
T
y2 = x3 ; x x2 x3
0:02 1
x_ = x+ u; y2 = 0 1 x
0:02 0
1
1 s + 0:02
(sI A) =
s + 0:02
1 s + 0:02
=
(s + 0:02)2 + 2 s + 0:02
4.15 Oscilaciones escondidas 119

entonces
0:02t
e cos t e 0:02t sin t
eAt = 0:02t
e sin t e 0:02t cos t
con h = 2
0:04
e 0
= eAh =
0 e 0:04
Por lo tanto, la FT al pulso de todo el sistema es:

2
1 e 0:0125
H (q) = H1 (q) + H2 (q) = 2
+
q e q e 0:04
1 a 0:0125
H (z) = +
z a z
2 0:04
en donde a = e , y = e .
La parte oscilatoria del sistema continuo tiene la frecuencia y
amortiguamiento 0:02. La frecuencia de muestreo es , lo cual implica que la
oscilación es muestreada solo una vez por periodo.

(a)
2
Salida: y

0
0 5 10 15 20 25 30 35 40
(b)
2
Salida: y

0
0 5 10 15 20 25 30 35 40
Tiempo

Figura 4.9: Respuesta al escalón del sistema en el ejemplo 4.9 cuando (a)
h = 2, y cuando (b) h = 1:8.

El sistema discreto es de segundo orden y el sistema continuo es de tercer


orden. La cancelación de ceros y polos que son oscilatorios indica que una
120 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

oscilación escondida podría ocurrir. La …gura 4.9 (a) muestra la salida


muestreada cuando h = 2 y la …gura 4.9 (b) muestra la salida muestreada
cuando h = 1:8. Ahora, la oscilación se ve claramente en la salida muestreada
donde ahora aparece a una frecuencia más baja.
El segundo tipo de oscilación escondida ocurre si hay ceros pobremente
amortiguados en el sistema en lazo abierto que son cancelados por el
controlador. En este caso, la oscilación puede ser vista en la señal de control.
Este tipo de oscilación escondida no será detectada aunque el periodo de
muestreo cambie, si el diseño es tal que los ceros del proceso sean cancelados.
Ejemplo 4.10 Oscilación escondida inducida por el controlador.
El integrador doble utilizado previamente se puede usar para demostrar como
un controlador podría introducir oscilaciones escondidas. El modelo 4.11 se
puede reescribir como una ecuación de diferencia
y (k) = 2y (k 1) y (k 2) + 0:5u (k 1) + 0:5u (k 2)
y la FT al pulso es
0:5 (q + 1) n (q)
H (q) = 2 =
(q 1) d (q)

r (K ) u (K ) y (K )
H1 (q ) + H (q )

H 2 (q )

Figura 4.10: Control en lazo cerrado del integrador doble discreto.

Por comodidad se supone que los denominadores de H1 (q) y H2 (q) son


iguales, es decir:
n1 (q) n2 (q)
H1 (q) = ; H2 (q) =
d1 (q) d1 (q)
La señal de control es
u (k) = H1 (q) r (k) H2 (q) y (k)
1
= (n1 (q) r (k) n2 (q) r (k))
d1 (q)
4.15 Oscilaciones escondidas 121

El propósito del control es seguir la trayectoria de referencia r (k). La señal


de control se escogerá de manera que la salida sea igual a la referencia en el
instante k 1. Con base en esto se obtendrá un controlador causal.
Nótese de la …gura 4.10 que
n (q)
y (K) = H (q) u (k) = (n1 (q) r (k) n2 (q) y (k))
d (q) d1 (q)
Se desea cancelar el cero de la FT H (q), entonces se puede seleccionar :
d1 (q) = 1 + q
Entonces:
0:5
y (k) = (n1 (q) r (k) n2 (q) y (k))
(q 1)2
0:5n2 (q) 0:5n1 (q)
1+ 2 y (k) = r (k)
(q 1) (q 1)2
(q 1)2 + 0:5n2 (q) y (k) = 0:5n1 (q) r (k)
Como se desea que
y (k) = r (k 1)
entonces
(q 1)2 + 0:5n2 (q) y (k) = 0:5n1 (q) qr (k 1)
Nótese que si el grado de n2 (q) es mayor o igual a dos, entonces el grado de
n1 (q) debe ser uno. Sea por ejemplo,
n1 (q) = q
entonces
1
n2 (q) = 0:5 q 2 (q 1)2 = q 2 2q + 4q 2
0:5
= ( 2) q 2 + 2 (2q 1)
Si se escoge =2
n2 (q) = 2 (2q 1)
Así, la señal de control es
2q 2 (2q 1)
u (k) = r (k) y (k) (4.16)
q+1 q+1
122 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

1.5

Senal de slaida: y
1

0.5

0
0 2 4 6 8 10

5
Senal de control: u

-5
0 2 4 6 8 10
Tiempo

Figura 4.11: Respuesta al escalón y la señal de control del integrador doble


cuando el controlador (4.16) es usado.

El sistema en lazo cerrado es dado por

y (k) = r (k 1)

La salida es igual al valor de referencia después de un paso (un intervalo de


muestreo). Usando el controlador (4.13) con Kp = 1 y Td = 1:5, la salida es
igual al valor de referencia en dos pasos. La respuesta al escalón y la señal de
control se muestran en la …gura 4.11 cuando se usa la ley de control (4.16).
En los puntos de muestra, el sistema tiene el comportamiento deseado, pero
hay una oscilación en la salida continua. Esta oscilación escondida es causada
por la oscilación en la señal de control. Por lo tanto, es importante simular
un sistema para investigar el comportamiento entre los puntos de muestra.
La función de transferencia al pulso en lazo cerrado es:
0:5(q+1)
H (q) 2q (q 1)2
Hlc (q) = H1 (q) = 0:5(q+1) 2(2q 1)
1 + H (q) H2 (q) q+11+
(q 1)2 q+1
q (q + 1)
Hlc (q) =
(q + 1) q 2
4.16 Ejercicios propuestos 123

El sistema en lazo cerrado es de tercer orden, el proceso tiene dos modos y el


controlador tiene uno. El cero en la frontera de la estabilidad, es cancelado por
un polo. Este modo no es observable en el sistema discreto en lazo cerrado.
Esto signi…ca que la observabilidad del sistema en lazo cerrado se ha perdido
por una escogencia inadecuada del controlador.
En resumen no hay oscilaciones escondidas si los modos no observables de lazo
abierto no son oscilatorios y si los ceros inestables o pobremente amortiguados
no son cancelados por el regulador.

4.16. Ejercicios propuestos


Ejercicio 4.1 Del sistema

1 0 1
x (k + 1) = x (k) + u (k)
1 1 0
y (k) = 0 1 x (k)

se obtienen los siguientes valores y (1) = 0, u (1) = 1, y (2) = 1, u (2) = 1.


Determinar el valor del estado en k = 3.

Ejercicio 4.2 Determine si el siguiente sistema es:

0:5 0:5 6
x (k + 1) = x (k) + u (k)
0 0:25 4
y (k) = 2 4 x (k)

a. Observable

b. Alcanzable

Ejercicio 4.3 Es el siguiente sistema alcanzable?

1 0 1 1
x (k + 1) = x (k) + u (k)
0 0:5 1 0

1 0
Suponga una entrada escalar u0 (k) tal que u (k) = u (k). Es el sistema
1
alcanzable desde u0 (k)?
124 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

Ejercicio 4.4 Dado el sistema


2 3 2 3
0 1 2 0
4 5 4
x (k + 1) = 0 0 3 x (k) + 15 u (k)
0 0 0 0

a. Determinar una secuencia de control tal que el sistema sea llevado del
estado inicial x (0)T = 1 1 1 al origen.

b. ¿Cuál es el número mínimo de pasos que resuelven el problema en a.?

c. ¿Por qué no es posible encontrar una secuencia de señales de control


T
tal que el estado 1 1 1 sea alcanzado desde el origen?

Ejercicio 4.5 Determinar la estabilidad y el valor de estado estacionario de


la salida para el sistema de la …gura 4.12 con H (q) = q(q 10:5) cuando uc es

uc y
+ H c (q ) H (q )

Figura 4.12: Sistema del ejercicio 4.5.

una función escalón y:

a. Hc (q) = K (control proporcional), K > 0.


Kq
b. Hc (q) = q 1
(control integral), K > 0.

Ejercicio 4.6 Considere el sistema del problema 4.5. Hallar el error de


estado estacionario entre la señal de comando uc y la salida cuando uc es
una rampa unitaria, es decir, uc (k) = k. Suponer que Hc es:

a. Un control proporcional.

b. Un control integral.
4.16 Ejercicios propuestos 125

Ejercicio 4.7 Muestrear el sistema

s+1
G (s) =
s2 + 0:2s + 1
y determinar los intervalos de muestreo para que la respuesta del sistema
tenga oscilaciones escondidas. Veri…que con simulación.

Ejercicio 4.8 Considere el sistema de tanques del problema 2.6 cuando el


sistema es muestrado con h = 12:

a. Introducir un controlador como en la …gura 4.12. Sea el comando de


entrada un escalón. Determinar el error de estado estacionario cuando
se usa un controlador proporcional K y un controlador integral 1 Kq 1 .

b. Simular el sistema usando los controladores en a. Investigar la in‡uencia


de la ganancia del controlador K. Hallar K tal que los polos del sistema
en lazo cerrado correspondan a un amortiguamiento de = 0:7.

Ejercicio 4.9 Determinar la transformación de coordenadas z = T x que


trans…ere el sistema

1 2 3
x (k + 1) = x (k) + u (k)
1 2 4
y (k) = 5 6 x (k)

a la forma canónica controlable y a la forma canónica observable.

Ejercicio 4.10 Considere el sistema


2 3 2 3
0 3 2 0
4
x (k + 1) = 3 12 7 x (k) + 15 u (k)
5 4
6 21 12 2

Determinar si:

a. El sistema es alcanzable.

b. El sistema es controlable.
126 Controlabilidad, Alcanzabilidad, Observabilidad y Detectabilidad

Ejercicio 4.11 Suponer que el sistema

y (k) 1:2y (k 1) + 0:5y (k 2) = 0:4u (k 1) + 0:8u (k 2)

es controlado por:
u (k) = Ky (k)

a. Determinar para que valores de K el sistema en lazo cerrado es estable.

b. Suponer que hay un retardo computacional en el controlador, es decir,


u (k) = Ky (k 1) :¿Para qué valores de K es ahora el sistema en
lazo cerrado estable?
Capítulo 5

Diseño por reubicación de polos


por el método de espacio de
estado

Este capítulo presenta métodos de diseño basados en modelos internos del


sistema, denominados por reubicación de polos desde el punto de vista de
la realimentación de estado. El nombre de reubicación de polos se re…ere
al hecho de que el diseño se formula en términos de obtener un sistema en
lazo cerrado con los polos especi…cados. Se discute un problema idealizado
regulación. Se supone que todas las variables de estado son medidas y que
las perturbaciones son impulsos ampliamente espaciados. Luego se discute el
problema de reconstruir los estados de las salidas medidas, lo cual conduce
a la introducción de observadores. Combinando los observadores con la
realimentación de estados, se obtiene una solución al problema de regualción
para el caso de realimentación de la salida. Se generalizan las perturbaciones,
considerándolas como salidas de sistemas dinámicos cuyas entradas son
impulsos. Así se puede tratar con casos clásicos de perturbaciones que son
escalones, sinusoides y otros. Esto permite una manera natura de introducir la
acción integral. Luego se discute el problema de servos, es decir como obtener
un sistema que pueda seguir señales de comando, el cual se formula en el
espacio de estado. Combinando el resultado con los anteriores se obtiene un
controlador que puede seguir señales de comando y rechazar perturbaciones
que actuan sobre el sistema. La estructura del controlador obtenida es muy
interesante ya que las diferentes tareas del controlador son separadas en forma
natural. El procedimiento de diseño se ilustra con una aplicación al control

127
128 Diseño por reubicación de polos por el método de espacio de estado

de un sistema simple de robótica.

5.1. Diseño del sistema de control


Muchos factores se deben considerar en el diseño de un sistema de control,
por ejemplo

Atenuación de las perturbaciones en la carga

Reducción del efecto del ruido en la medida

Seguimiento de la señal de comando

Variaciones e incertidumbre en el comportamiento del proceso

Perturbaciones de carga son aquellas que conducen a que el proceso se aleje


de su comportamiento deseado. El ruido en la medida es una perturbación
que contamina la información del proceso obtenida de los sensores. Las
perturbaciones del proceso pueden entrar al sistema de muchas maneras. Es
conveniente considerarlas como si se entraran al sistema de la misma manera
que la señal de control, ya que así excitarán todos los modos del sistema.
Para sistemas lineales la suposición no es muy crítica debido al principio de
superposición. El ruido en la medida se inyecta en el el proceso a través de la
ley de control. El seguimiento de la señal de comando expresa la propiedad
del sistema para responder a señales de comnado de una manera especí…ca.
Los problmas de control se pueden clasi…car en: problemas de regualción y
problemas de servo. El problema principal en la regulación es el compromiso
entre la reducción de las perturbaciones de carga y las ‡uctuaciones
creadas por el error en la medida que se inyecta en el sistema debido a
la realimentación. El seguimiento de la señal de comando es el problema
principal en los sevos. Los principales ingredientes del diseño son:

Propósito del sistema

Modelo del proceso

Modelo de las perturbaciones

Incertidumbre y variaciones del proceso


5.1 Diseño del sistema de control 129

Estrategias de control admisible

Parámetros de diseño

Es difícil encontrar métodos de diseño que consideren todos los aspectos


mencionados. La mayoría se enfocan en uno o dos aspectos del problema y
el diseñador del sistema de control, tiene entonces que ver…car que los otros
aspectos sean también satisfechos. Para hacer esto, es necesario considerar la
transmisión de señal desde las señales de comando, perturbaciones de carga,
y ruido en la medida a las variables del proceso, señales medidas y señales
de control. Esto se ilustra en el diagrama de bloques de la …gura 5.1.
v e
r u x y
H ff + Hc +
+
Hp ++

Figura 5.1: Diagrama de bloques de un sistema de control típico.

En este capítulo se desarrollará un método de diseño basado en modelos de


estado, cuyo propósito es obtener un polinomio característico del sistema
en lazo cerrado. Esto conducirá a métodos simples de diseño que permiten
profundizar en la estructura de sistemas de control.
Se iniciará con un problema simple de diseño y gradualmente se hará más y
más realístico. El problema se especi…ca como sigue.
El proceso. Se supone que el proceso a ser controlado es descrito por el
modelo:
dx
= Ax + Bu (5.1)
dt
en donde u representa las variables de control, x representa el vector de
estado y A y B son matrices constantes. Se discutirá el caso de una entrada
y una salida. Ya que se considera el control por computador, las señales de
control serán constantes sobre periodos de muestreo de longitud constante.
Muestreando el sistema de la ecuación (5.1) con los métodos descritos en el
capítulo 2 se obtiene el sistema discreto:

x (kh + h) = x (kh) + u (kh)


130 Diseño por reubicación de polos por el método de espacio de estado

en dondes las matrices y son:


Z h
Ah
=e ; = eAs dsB
0
Para simpli…car se escribe el modelo discreto como
x (k + 1) = x (k) + u (k) (5.2)
El argumento de una señal es así el número de intervalos de muestra y no el
tiempo real. Se usará tiempo real cuando hay posibilidades de confusión.
Perturbaciones. Inicialmente se supondrá que las perturbaciones que actúan
sobre el proceso son impulsos que ocurren irregularmente, y que los impulsos
están tan separados en el tiempo, que el sistema alcanza el estado estacionario
entre los impulsos. Puesto que los impulsos actúan tan separados y el efecto
de un impulso es cambiar simplemente el estado del proceso, la perturbación
se puede representar por un estado inicial. Luego se extenderán los resultados
a perturbaciones más generales que son generadas por sistemas dinámicos,
cuyas entradas son impulsos. Ejemplos típicos son escalones, rampas y
sinusoides.
Incertidumbre en el proceso. Incertidumbres en los elementos de las matrices
A y B se pueden tratar con formulación de espacio de estado, pero no es
fácil de manejar con otras formas de dinámicas no modeladas. Una discusión
de incertidumbres en el proceso se hará más adelante, cuando se hallan
desarrollado herramientas más adecuadas.
El criterio. En problemas de regulación se supondrá que el criterio consiste
en retornar el estado a cero, después de perturbaciones en las condiciones
iniciales. En la formulación por reubicación de polos, la velocidad de
decaimiento.del estado se da indirectamente al especi…car los polos del
sistema en lazo cerrado. Los problemas de servos se pueden tratar requiriendo
que la transmisión de la señal desde la señal de comando a las variables del
proceso, este cercana al comportamiento especi…cado por un modelo.
Controles admisibles. Ya que se desean soluciones por realimentación, es
necesario especi…car la información disponible para generar la señal de
control. Cuando las propiedades del sistema se especi…quen por sus polos en
lazo cerrado, es natural requerir que la realimentación sea lineal. Se discutirán
varias versiones. Se iniciará con el caso cuando todas las variables de estado
son medidas directamente sin error. Los controles admisibles son entonces
realimentación lineal de la forma:
u (k) = Lx (k) (5.3)
5.2 Regulación por realimentación de estado 131

Esta suposición se reconsiderará más tarde, cuando se supondrá que solo las
salidas son disponibles para el control. Para sistemas discretos es también de
interés considerar el caso cuando hay retardos en las medidas.
Parámetros de diseño. En la especi…cacón formal del problema, los
parámetros de diseño son el periodo de muestreo y los polos en lazo
cerrado deseados. Es raro que el usuario de un sistema de control pueda
dar especi…caciones en términos de esos parámetros. Por eso, el diseñador
debe poder relacionar los parámetros de diseño a cantidades que son más
signi…cativas para el usuario. Con este …n, a mennudo es útil considerar el
comportamiento en el tiempo de las variables de estado y las de control. Es
particularmente útil discutir el compromiso entre la magnitud de las señales
de control y la velocidad a la que el sistema se recupera de una perturbación.

5.2. Regulación por realimentación de estado


Se discute un problema simple de regulación. Se supone que el sistema es
descrito por (5.1). Inicialmente se asumirá que el periodo de muestreo es
dado de modo que el proceso puede ser descrito por el sistema discreto (5.2).
Se asumen perturbaciones en el estado inicial del sistema. El propósito es
hallar una ley de realimentación lineal de la forma (5.3), de modo que el
sistema en lazo cerrado tenga una ecuación característica especi…cada. Esto
garantizará que las perturbaciones decaen de una manera especí…ca.

Ejemplo 5.1 Reubicación de polos para la planta con integrador doble.

Utilizando la convención del tiempo de muestreo, la planta con integrador


doble muestreada es descrita por:
h 2
1 h
x (k + 1) = x (k) + 2 u (k)
0 1 h

Una realimentación lineal general se puede describir por

u= l1 x1 l2 x2

Con esta realimentación el sistema en lazo cerrado es


2 2
1 l1 h2 h l2 h2
x (k + 1) = x (k)
l1 h 1 l2 h
132 Diseño por reubicación de polos por el método de espacio de estado

La ecuación característica del sistema en lazo cerrado es:


h2 h2
z 2 + l1 + l2 h 2 z + l1 l2 h + 1 =0
2 2
Se supone que la ecuación característica deseada es
z 2 + p1 z + p2 = 0
Esto conduce a las siguientes ecuaciones lineales para l1 y l2 :
1
l1 = (p1 + p2 + 1) (5.4)
h2
1
l2 = (p1 p2 + 3)
2h
En este ejemplo, siempre es posible encontrar parámetros del controlador
que dan una ecuación característica arbitraria del sistema en lazo cerrado.
El sistema lineal de ecuaciones para l1 y l2 tiene una solución para todos los
valores de p1 y p2 .

5.3. El caso general


La solución del problema de reubicación de polos será dada para sistemas
con una señal de entrada. Sea el sistema descrito por (5.2) y sea el polinomio
característico de la matriz :
z n + a1 z n 1
+ + an
Supóngase que el sistema (5.2) es alcanzable. Entonces puede ser
transformado a una forma canónica alcanzable mediante el cambio en las
variables de estado a través de la transformación z = T x. La ecuación de
estado transformada es
z (k + 1) = ~ z (k) + ~ u (k) (5.5)
en donde 2 3 2 3
a1 a2 an 1 an 1
6 1 0 0 7 607
6 7 6 7
~ =6
6 0 1 7 ~ 607
7 ; = 6 7 (5.6)
6 .. .. .. 7 6 .. 7
4 . . . 5 4.5
0 0 1 0 0
5.3 El caso general 133

Los coe…cientes del polinomio característico que determina los polos en lazo
cerrado aparecen explicitamente en esta representación. También es fácil ver
como se modi…ca el polinomio característico para realimentación de estado.
Si se utiliza la ley de realimentación

u= ~z =
L~ (p1 a1 ) (p2 a2 ) (pn an ) z~ (5.7)

con (5.6) y (5.7) en (5.5) se obtiene el sistema en lazo cerrado, cuyo polinomio
característico es:
z n + p1 z n 1 + + pn (5.8)
Para encontrar la solución al problema original, simplemente se debe expresar
en las coordenadas originales. Esto da:

u= ~ =
Lz ~ x=
LT Lx (5.9)

Falta determinar la matriz de transformación T . Una manera de determinar


esa matriz se basa en una propiedad de las matrices alcanzables. Sea WC la
matriz alcanzable del sistema (5.2); es decir
n 1
WC = (5.10)

y sea W ~ C la matriz alcanzable del sistema (5.5). Las matrices estñan


~ C = T WC . Así, la matriz alcanzable se transforma de
relacionadas así: W
la misma manera que las coordenadas. Por lo tanto,
~ CW 1
T =W (5.11)
C

y por cálculo directo se obtiene


2 3
1 a1 an 1
6 .. 7
~ 1 60 1 a1 . 7
W C = 6. . ... 7 (5.12)
4 .. . . a1 5
0 0 1
Compárese con el ejemplo 4.4. Resumiendo la solución al problema de diseño
es dada por una realimentación lineal del estado con la ganancia:

L = (p1 a1 ) (p2 a2 ) (pn ~ CW 1


an ) W (5.13)
C

Esta ecuación se puede expresar de una manera ligenramente diferente con


el siguiente resultado.
134 Diseño por reubicación de polos por el método de espacio de estado

Teorema 5.1 Reubicación de polos usando realimentación de estado.

Considérese el sistema (5.2). Supóngase que hay solo una señal de entrada.
Si el sistema es alcanzable, entonces hay una realimentación lineal que
da un sistema en lazo cerrado con el polinomio característico P (z). La
realimentación es dada por:

u (K) = Lz

con

L = (p1 a1 ) (p2 a2 ) (pn ~ CW 1


an ) W (5.14)
C
L = 0 0 1 WC 1 P ( )

en donde WC y W ~ C son las matrices alcanzables de los sistemas (5.2) y (5.5),


respectivamente.
Prueba. Utilizando el teorema de Cayley-Hamilton ("Toda matriz cuadrada
satisface su propia ecuación característica") en la matriz de (5.2):
n n 1 n 2
+ a1 + a2 + + an I = 0

entonces
n n 1 n 2
= a1 a2 an I
Con la matriz de transformación T para obtener el sistema (5.5):
~ =T T 1
, ó, =T 1~
T

y con
K
1~ 1~ 1~ 1~ 1 ~K
T T = T T T T T T =T T

se tiene:
1 ~n 1 ~n 1
T T = a1 T T a2 T 1 ~ n 2 T an T 1
T
= T 1
a1 ~ n 1
a2 ~ n 2 an I T

de donde:
~n = a1 ~ n 1
a2 ~ n 2
an I
5.3 El caso general 135

y reemplazando en

P ~ = ~ n + p1 ~ n 1
+ p2 ~ n 2
+ + pn I

P ~ = (p1 a1 ) ~ n 1
+ (p2 a2 ) ~ n 2
+ + (pn an ) I

en donde ~ es la matriz del sistema transformado.


Supóngase que ei es el vector …la que tiene todos sus elementos iguales a
cero, excepto el i-ésimo elemento que es uno. Entonces:

ei ~ = ei 1 ; i = 2; 3; : : : ; n

Nótese también que

en I = en
en ~ = en 1

en ~ 2 = en 2

..
.
n ~n 1
e = e

Entonces

en P ~ = (p1 a1 ) (p2 a2 ) (pn an )

Por lo tanto, de (5.7):


~ = en P
L ~

Así
~ = en P T T
L = LT 1
T = en T P ( )
~ C W 1P ( )
L = en W C

Nótese de (5.12) que en W ~ 1 = en , y por la forma particular de W ~ 1


C C
(triangular superior y unos en la diagonal principal) también es cierto que
~ C = en . Por lo tanto:
en W

L = en WC 1 P ( )

Notas:
136 Diseño por reubicación de polos por el método de espacio de estado

1. La ecuación (5.14) es llamada la fórmula Ackermann.

2. Nótese que el problema de reubicación de polos se puede formular como


el siguiente problema abstracto. Dadas las matrices y , hallar una
matriz L tal que la matriz L tenga valores propios especi…cados.

3. Nótese de (5.10), (5.11) y (5.12) que


1 n 1 n 2
T = ( + a1 ) ( + a1 + + an 1 )
(5.15)

Este teorema se ilustra con el siguiente ejemplo.

Ejemplo 5.2 El integrador doble.

Considérese la planta con el integrador doble del ejemplo 5.1. Supóngase que
el polinomio característico es dado por

P (z) = z 2 + p1 z + p2

Entonces:
h2 3h2 1 1:5
WC = = 2 2 , y, WC 1 = 1
h2 h
0:5
h h h2 h

El polinomio característico de la matriz es z 2 2z + 1. Por lo tanto,

2 1 + p1 + p2 2h + p1 h
P( )= + p1 + p2 =
0 1 + p1 + p2

La fórmula de Ackermann da:

L = 0 1 WC 1 P ( ) = 1
h2
0:5
h
P( )
1+p1 +p2 3+p1 p2
= h2 2h

que es el mismo resultado obtenido por el cálculo directo en el ejemplo 5.1.


Para resolver el problema de reubicación de polos se supuso que el sistema
es alcanzable. El siguiente ejemplo muestra lo que sucede cuando este no es
el caso.

Ejemplo 5.3 Un sistema no alcanzable.


5.4 Aspectos prácticos 137

El sistema
0:5 1 1
x (k + 1) = x (k) + u (k)
0 0:3 0
no es alcanzable ya que

1 0:5
det WC = det =0
0 0

La ley de control
u= l1 x1 l2 x2
da un sistema en lazo cerrado con la ecuación característica:

(z 0:5 + l1 ) (z 0:3) = 0

El polo de lazo abierto en 0.5 se puede cambiar a un valor arbitrario,


cambiando el parámetro l1 . El segundo polo en 0:3, que corresponde al estado
no alcanzable, no puede ser cambiado.

5.4. Aspectos prácticos


Es fácil resolver el problema de diseño por reubicación de polos
explicitamente. Nótese que la alcanzabilidad es una condición necesaria y
su…ciente para resolver el problema. Para aplicar este método de diseño en
la práctica, es ncesario entender como las propiedades del sistema en lazo
cerrado son in‡uencias por los parámetros de diseño, es decir, los polos en
lazo cerrado y el periodo de muestreo.
Esto se ilustra con un ejemplo.

Ejemplo 5.4 Selección de los parámetros de diseño.

Considérese la planta con el integrador doble. En lugar de utilizar los


parámetros p1 y p2 de la ecuación característica se introducirán otros dos
parámetros, los cuales tienen una interpretación física más directa. Si el
sistema discreto deseado se obtiene muestreando un sistema de segundo orden
con el polinomio característico

s2 + 2 !s + ! 2
138 Diseño por reubicación de polos por el método de espacio de estado

se tiene que
p
!h 2
p1 = 2e cos !h 1
y
2 !h
p2 = e
en donde es el amortiguamiento y ! la frecuencia natural (ver ejemplo 2.17).
afecta el amortiguamiento relativo de la respuesta y ! afecta la velocidad
de respuesta. Para discutir la magnitud de la señal de control se supone que
el sistema tiene una posición incial x0 y una velocidad inicial v0 . El valor
inicial de la señal de control es entonces:

u (0) = l1 x0 l2 v0

Si el periodo de muestreo es corto, entonces las expresiones para p1 y p2 se


pueden aproximar utilizando expansión en series:
!
( !h)2
p1 2 1 !h +
2
4 ( !h)2
p2 1 2 !h +
2
Del ejemplo 5.2:
1 + p1 + p2
l1 = ( !)2
h
3 + p1 p2
l2 = 2 !
2h
Entonces
u (0) = ( !)2 x0 2 !v0

La expresión muestra que la magnitud de la señal de control se incrementa


con el aumento de !. Así, un incremento en la velocidad de la respuesta del
sistema requerirá un incremento en las señales de control. Si las cotas de la
señal de control y las perturbaciones típicas se conocen, es posible determinar
valores razonables de !. Las consecuencias de diferentes valores de ! cuando
x0 = 1 y v0 = 1 se muestran en la …gura 5.2. Entre mayor !, el sistema es
más rápido, pero las señales de control también aumentan.
5.4 Aspectos prácticos 139

(a) (b)
2
ω=0.5 0
ω=1
1 ω=2 -2

u
y

-4
0
0 5 10 15 0 5 10 15
(c) (d)

0 0

-2 -2
u

u
-4 -4

0 5 10 15 0 5 10 15
Tiempo Tiempo

Figura 5.2: Respuestas del sistema en lazo cerrado del ejemplo 5.4. La
T
condición incial es x0 = 1 1 , y los valores de los parámetros son !h = 0:44
y = 0:707. Las salidas para ! = 0:5, ! = 1, ! = 2, se muestran en
(a), y las correspondientes señales de control se muestran en (b), (c) y (d)
respectivamente.

La selección de periodos de muestreo para sistemas en lazo abierto se


discutión en el capítulo 2. Se sugirió que el periodo de muestreo se escogiera
de modo que
Nr 4 10
en donde Nr es el número de muestras por tiempo de crecimiento. Aplicando
la misma regla a sistemas en lazo cerrado se encuentra que el periodo de
muestreo debe estar relacionado al comportamiento deseado del sistema en
lazo cerrado. Conviene introducir el parámetro N de…nido por
2
N= p (5.16)
!h 1 2

Este parámetro da el número de muestras por periodo del modo dominante


del sistema en lazo cerrado.
La …gura 5.3 muestra el transitorio del sistema para diferentes valores de N .
Hay pequeñas diferencias entre las respuestas para N > 10. Las respuestas
obtenidas para N > 20 no se distinguen en el grá…co.
140 Diseño por reubicación de polos por el método de espacio de estado

(a) (b)
2
N=5 0
1 N=10
N=20

u
y
-1
0
-2
0 5 10 0 5 10
(c) (d)

0 0
u

u
-1 -1

-2 -2
0 5 10 0 5 10
Tiempo Tiempo

Figura 5.3: Respuestas del sistema en lazo cerrado del ejemplo 5.4. La
T
condición incial es x0 = 1 1 , y los valores de los parámetros son ! = 1
y = 0:707. Las salidas para N = 5, N = 10, N = 20, se muestran en
(a), y las correspondientes señales de control se muestran en (b), (c) y (d)
respectivamente.

La …gura 5.3 muestra la respuesta a una condición inicial cuando una


perturbación impulso entra al sistema justo antes del muestreo. En realidad,
las perturbaciones pueden entrar al sistema en cualquier instante. Con un
periodo de muestreo largo, se tomará un gran tiempo antes de que la
perturbación sea detectada. Para ilustrar esto se repite la simulación de la
…gura 5.3 pero se supone que la perturbación aparece justo después de un
muestreo. Esto implica que la perturbación actúa por un periodo de muestreo
total antes de que sea detectada.
La …gura 5.4 muestra la respuesta del sistema cuando es perturbado
T
inmediatamente después del muestreo, es decir, cuando x (0+) = 1 1 .
Nótese la signi…cativa diferencia con la …gura 5.3. En este caso, los resultados
para N = 20 son muchos mejores que los resultados para N = 10. Es
razonable escoger N en el rango N 25 a 75. Esto corresponde a !h = 0:12
a 0:36 para = 0:707.
Estos ejemplos muestran que aún desde el punto de vista discreto del sistema,
es decir, considerando solo lo que sucede en los instantes de muestreo, es
necesario tener presente la naturaleza variante con el tiempo de los sistemas
5.4 Aspectos prácticos 141

(a) (b)
4 2
N=5
2 N=10
N=20 0

u
y

0
-2
-2
0 5 10 15 0 5 10
(c) (d)
2 2

0 0
u

-2 u -2
0 5 10 0 5 10
Tiempo Tiempo

Figura 5.4: Respuestas del sistema en lazo cerrado del ejemplo 5.4. La
T
condición incial es x0 = 1 1 , y los valores de los parámetros son ! = 1
y = 0:707. Las salidas para N = 5, N = 10, N = 20, se muestran en
(a), y las correspondientes señales de control se muestran en (b), (c) y (d)
respectivamente. La perturbación ocurre inmediatamente después del primer
muestreo. Nótese la signi…cativa diferencia con la …gura 5.3.

muestreados para estimar correctamente los resultados. Especial cuidado se


debe tener con las simulaciones usadas para estimar el desarrollo de los
sistemas. Para investigar el efecto del periodo de muestreo, es útil considerar
casos en los que las perturbaciones se introducen tanto inmediatamente antes
como inmediatamente después de los instantes de muestreo. Las diferencias
pueden ser bastantes notorias, como se indicó por comparación en las …guras
5.3 y 5.4. Basados en las simulaciones desarrolladas, se suigiere que el periodo
de muestreo se escoja como:

!h = 0:1 a 0:6 (5.17)

en donde ! es la frecuencia natural deseada del sistema en lazo cerrado.


Periodos de muestreo mayores se pueden usar en aquellos casos raros en los
que el muestreo puede ser sincronizado a las perturbaciones.
142 Diseño por reubicación de polos por el método de espacio de estado

5.5. Control dead beat


Si los polos deseados se escogen todos en el origen, el polinomio característico
del sistema en lazo cerrado es:

P (z) = z n

Del teorema de Cayley Hamilton se deduce que la matriz del sistema en lazo
cerrado es
C = L
satisface
n
C =0
Esta estrategia tiene la propiedad de que conducirá todos los estados a cero
a lo sumo en n pasos después de una perturbación impulso en el estado del
proceso. La estrategia de control es llamada dead beat. Compárese con el
ejemplo 1.4 del capítulo 1.
De la fórmula de Ackermann, ecuación (5.14), se sigue que la estrategia dead
beat es dada por
L= 0 0 1 WC 1 n (5.18)
Puesto que
1 1
P Qn = P 1
QQ : : : Q = Q 1 P QQ : : : Q
| {z } | {z }
n n 1
n 1
= Q P

entonces si tiene inversa, usando (5.10) se obtiene


n n+1 1
L= 0 0 1 (5.19)

En el control dead beat solo hay un parámetro de diseño, el periodo de


muestreo. Puesto que el error tiende a cero a lo sumo en n periodos de
muestreo, el tiempo de asentamiento a lo sumo es nh. Así, el tiempo de
asentamiento es proporcional al periodo de muestreo h. Este hecho le ha dado
al control dead beat una inmerecidad mala reputación. Así, es importante
escoger el periodo de muestreo cuidadosamente, cuando se usa el control dead
beat. Esta estrategia dead beat es única para sistemas muestreados, es decir,
no hay un análogo correspondiente a sistemas continuos. El siguiente ejemplo
muestra algunas propiedades de esta estrategia.
5.6 Perturbaciones más generales 143

Ejemplo 5.5 Control dead beat de un integrador doble.

Considérese una planta con un integrador doble. De (5.19) se sigue que el


control dead beat es dado por

u= l1 x1 l2 x2

con
1 3
l1 = 2
; l2 =
h 2h
Si el proceso tiene el estado inicial
T
x0 = x0 v0

entonces
x0 3v0 x0 v0
u (0) = 2
; u (h) = 2 +
h 2h h 2h
Nótese que la magnitud de la señal de control se incrementa rápidamente con
la disminución del tiempo de muestreo, esto se muestra en la tabla 5.1.

Cuadro 5.1: Señales de control para el control dead beat de un integrador


doble con x(0) = [11]T y diferentes periodos de muestreo
h 100 10 1 0:1 0:01
u (0) 0:0151 0:16 2:5 115 10150
u (1) 0:0051 0:06 1:5 105 10050

Nótese también que para h pequeño, las señales de control u (0) y u (h) tienen
signos opuestos y aproximadamente igual magnitud. Así, el efecto deseado
se obtiene como resultado de restar dos números grandes. Esto se muestra
en la tabla 4.1 que da las señales de control para x0 = 1, v0 = 1. Por eso, se
puede esperar que la estrategia dead beat sea bastante sensitiva para periodo
de muestreo pequeños. Las señales de salida y de control se muestran en la
…gura 5.5. En este caso el primer muestreo es t = 0+ . Así, la perturbación
ocurre inmediatamente antes del muestreo.

5.6. Perturbaciones más generales


Es altamente deseable manejar otras perturbaciones diferentes a impulsos,
o equivalentemente estados inicialmente perturbados. Una manera de hacer
144 Diseño por reubicación de polos por el método de espacio de estado

(a) (b)
2
5
h=2
1 h=1
0
h=0.5

u
y
0
-5
-1
0 5 10 0 5 10
(c) (d)
5 5

0 0
u

u
-5 -5

0 5 10 0 5 10
Tiempo Tiempo

Figura 5.5: Respuestas del sistema en lazo cerrado del ejemplo 5.5 para un
T
controlador dead beat. La condición incial es x0 = 1 1 , y los valores de
los parámetros son ! = 1 y = 0:707. Las salidas para h = 2, h = 1, h = 0:5,
se muestran en (a), y las correspondientes señales de control se muestran en
(b), (c) y (d) respectivamente.

esto, es considerar perturbaciones que son generadas por impulsos enviados


a sistemas dinámicos. De esta manera es posible obtener muchos tipos
diferentes de perturbaciones tales como escalones y sinusoides. Para ser
especí…cos, supóngase que el sistema es descrito por:
dx
= Ax + Bu + v
dt
en donde v es una perturbación descrita por
d!
= A! !
dt
v = Cw !

con condiciones iniciales dadas. La matriz A! tiene típicamente valores


propios sobre el eje imaginario o sobre el semiplano complejo derecho. Un
caso común es cuando la perturbación v es constante. Ésta se obtiene con

A! = 0
5.6 Perturbaciones más generales 145

Otro caso es el de perturbaciones sinusoidales, que corresponde a

0 !0
A! =
!0 0

Se asume que ! puede ser medida. Esta suposición será reconsiderada


posteriormente. Se introduce el vector de estado aumentado

x
z=
!

Entonces, el sistema puede ser descrito por


d x A C! x B
= + u (5.20)
dt ! 0 A! ! 0

Así, se tiene un problema básico de la misma forma que el de reubicación de


polos. Hay sin embargo, una diferencia importante. El sistema (5.20) no es
completamente alcanzable. Los polos asociados con la perturbación - es decir,
los valores propios de A! - no pueden ser afectados por la realimentación. Esto
es muy natural ya que las perturbaciones son variables exógenas que no están
in‡uenciadas por el control. Compárese con el ejemplo 5.2. Muestreando el
sistema, se genera el siguiente sistema discreto:

x (k + 1) x! x (k)
= + u (k)
! (k + 1) 0 ! ! (k) 0

La realimentación lineal de estado está dada por

u (k) = Lx (k) L! ! (k) (5.21)

Esta ley de control da el siguiente sistema en lazo cerrado

x (k + 1) = ( L) x (k) + ( ! L! ) ! (k) (5.22)


! (k + 1) = ! ! (k)

que expresa como el sistema en lazo cerrado es in‡uenciado por el control.


Nótese que la ley de control en (5.21) se puede interpretar como una
combinación de un término de realimentación Lx y un término en lazo directo
L! ! de las perturbaciones medidas. Si la pareja ( ; ) es alcanzable, la
matriz L se puede escoger de modo que la matriz ( L) tenga valores
146 Diseño por reubicación de polos por el método de espacio de estado

propios especi…cados. Esto aseguraría que el término de la solución que es


causado por los valores iniciales, decae adecuadamente. La matriz ! no
puede ser in‡uenciada por realimentación. El efecto de la perturbación sobre
el vector x puede, sin embargo, ser reduccido por una selección adecuada del
vector L! , el cual debe ser escogido de modo que la matriz ( ! L! ) sea
pequeña. En algunos casos es posible hacer esta matriz cero. Esto se ilustra
con un ejemplo.

Ejemplo 5.6 Perturbación con entrada constante.

Considérese la situación con una perturbación constante que actúa a la


entrada del proceso. La matriz ! es la identidad y x! = . El sistema
en lazo cerrado es descrito por

x (kh + h) = ( L) x (kh) + (1 L! ) ! (kh)


! (kh + h) = ! (kh)

de donde, el efecto de la perturbación v sobre x se elimina escogiendo L! = 1.

5.7. Aspectos Computacionales


La realimentación del estado se puede determinar por el método usado
en el ejemplo 5.1 para sistemas de bajo orden. El procedimiento consiste
en introducir una realimentación general del estado con coe…cientes
desconocidos (ganancias), determinar el polinomio característico e igualarlo
con el polinomio característico deseado. Así, se obtiene un conjunto de
ecuaciones lineales para los coe…cientes de realimentación. Las ecuaciones se
pueden resolver siempre y cuando el sistema sea alcanzable. También se puede
usar la fórmula de Ackermann, ecuación 5.14, para calcular la realimentación
de estado. Esta fórmula sin embargo, no es muy deseada para cálculos menos
precisos. Como regla general, cualquier método que use el cálculo de potencias
de matrices debe ser evitado. Hay otras maneras para calcular la matriz L
que son mejores para el cálculo numérico. Estos métodos también sirven para
sistemas multivariables. El comando place de Matlab sirve para resolver este
problema, basado en buenos métodos numéricos, pero está limitado a valores
propios diferentes.
5.8 Observadores 147

5.8. Observadores
Es poco realístico suponer que todos los estados de un sistema pueden ser
medidos, particularmente si las perturbaciones son parte del estado, como
en la ecuación (5.20). Por esto es importante determinar los estados de un
sistema de medidas disponibles y de un modelo. Se supone que el sistema es
descrito por el modelo muestreado:

x (k + 1) = x (k) + u (k) (5.23)


y (k) = Cx (k)

El problema es calcular o reconstruir el estado x (k) de las secuencias de


entrada y salida y (k) ; y (k 1) ; : : : ; u (k) ; u (k 1) ; : : :. En una sección
anterior si el sistema es observable.

5.8.1. Cálculo directo de las variables de estado


El problema fuer resuelto anteriormente para el caso especial cuando no
hay entradas. Esta solución se extenderá ligeramente y se demostrará que el
estado se puede calcular directamente de las entradas y salidas pasadas. Por
simplicidad se supone una sola salida. La salida y (k) = Cx (k) obtenida en el
instante de muestra K da una ecuación lineal para determinar las variables
de estado. Utilizando la información de n diferentes instantes de muestreo
k; k 1; ; k n + 1 da las siguientes ecuaciones lineales:

y (k n + 1) = Cx (k n + 1) (5.24)
y (k n + 2) = Cx (k n + 2) = C x (k n + 1) + C u (k n + 1)
..
.
y (k) = C n 1 x (k n + 1) + C n 2
x (k n + 1) +
+ C u (k 1)

Introduciendo los valores Uk 1 y Yk


2 3 2 3
y (k n + 1) u (k n + 1)
6y (k n + 2)7 6u (k n + 2)7
6 7 6 7
Yk = 6 .. 7 ; Uk 1 =6 .. 7
4 . 5 4 . 5
y (k) n 1
u (k 1) (n 1) 1
148 Diseño por reubicación de polos por el método de espacio de estado

cuyas componentes son salidas y entradas pasadas, la ecuación (5.24) puede


ser escrita como
YK = W0 x (k n + 1) + Wu Uk 1
en donde las matrices Wo y Wu son dadas por
2 3
2 3 0 0 0
C 6 C 7
6 C 7 6 0 0 7
6 7 6 C C 0 7
Wo = 6 .. 7 ; Wu = 6 7
4 . 5 6 .. .. .. 7
4 . . . 5
C n 1 n n n 2
C C n 3
C n (n 1)

La matriz Wo es invertible si el sistema es observable, se puede entonces


resolver para x (k n + 1) y obtener
x (k n + 1) = W0 1 Yk W 0 1 W u Uk 1

El estado ha sido obtenido en términos de medidas y salidas futuras. El uso


repetido de la ecuación (5.23) da
x (k) = x (k 1) + u (k 1)
x (k 1) = x (k 2) + u (k 2)
entonces
2
x (k) = x (k 2) + u (k 2) + u (k 1)
x (k 2) = x (k 3) + u (k 3)
por tanto
3 2
x (k) = x (k 3) + x (k 2) + u (k 2) + u (k 1)
y generalizando
n 1 n 2
x (k) = x (k n + 1) + x (k n + 1) + + u (k 1)
Por lo tanto,
n 1
x (k) = W 0 1 Yk W 0 1 W u Uk 1
n 2 n 3
+ Uk 1
n 1 1
x (k) = W 0 Yk
n 1
+ n 2 n 3
W0 1 Wu Uk 1
5.8 Observadores 149

Es decir:
x (k) = Ay Yk + Bu Uk 1 (5.25)
en donde
n 1
Ay = W0 1 ; Bu = n 2 n 3 n 1
W0 1 Wu (5.26)
Así, el vector de estado x (k) es una combinación lineal de
y (k) ; y (k 1) ; : : : ; y (k n + 1) ; u (k 1) ; u (k 2) ; : : : ; u (k n + 1).
Esto se ilustra con un ejemplo.
Ejemplo 5.7 El integrador doble.
Para el integrador doble se tiene:
h2
1 h
= ; = 2 ;C = 1 0
0 1 h
Es decir,
h2
x1 (k + 1) = x1 (k) + hx2 (k) + u (k)
2
x2 (k + 1) = x2 (k) + hu (k) (5.27)
y (k) = x1 (k) (5.28)
Entonces
h2
y (k) = x1 (k) = x1 (k 1) + hx2 (k 1) + u (k 1)
2
h2
= y (k 1) + hx2 (k 1) + u (k 1) (5.29)
2
de (5.27):
x2 (k 1) = x2 (k) hu (k 1) (5.30)
con (5.30) en (5.29)
h2
y (k) = y (k 1) + h (x2 (k) hu (k 1)) +
u (k 1) (5.31)
2
Resolviendo las ecuaciones (5.28) y (5.31) con respecto a x1 (k) y x2 (k) se
tiene
x1 (k) = y (k)
y (k) y (k 1) h
x2 (k) = + u (k 1)
h 2
150 Diseño por reubicación de polos por el método de espacio de estado

La primer componente x1 es igual al valor medio, y la segunda componente


x2 se obtiene tomando diferencias de la salida y adicionando una fracción de
la señal de control.

5.8.2. Reconstrucción usando un sistema dinámico


Sea n el orden del sistema. El cálculo directo que se acaba de desarrollar da
el estado después de n medidas de entradas y salidas. La desventaja de este
método es que podría ser sensitivo a perturbaciones. Las operaciones hechas
sobre los datos son típicamente para formar diferencias, como se mostró en el
ejemplo 5.7. Por eso es útil tener otras alternativas que son menos sensitivas
al ruido.
Considérese el sistema (5.23). Supóngase que el estado x es aproximado por
el estado x^ del modelo
x^ (k + 1) = x^ (k) + u (k) (5.32)
el cual tiene la misma entrada del sistema (5.23). Si el modelo es perfecto en
el sentido que los elementos de las matrices y son idénticas a aquellas
del sistema (5.23) y si las condiciones iniciales son las mismas, entonces el
estado x^ del modelo 5.32 será idéntico al estado x del sistema real (5.23). Si
las condiciones iniciales son diferentes, entonces x^ convergerá a x solo si el
sistema (5.32) es estable asintóticamente.
La reconstrucción con la ecuación (5.32) da el estado como una función
de entradas pasadas (observador en lazo abierto). La reconstrucción se
puede mejorar utilizando también las salidas medidas. Esto puede ser hecho
introduciendo realimentación de la diferencia entre las salidas medidas y las
estimadas, y C x^ (ver …gura 5.6).
Por lo tanto
x^ (k + 1jk) = x^ (kjk 1) + u (k) + K (y (k) C x^ (kjk 1)) (5.33)
en donde K es una matriz de ganancias. La notación x^ (k + 1jk) se usa para
indicar que ella es una estimación de x^ (k + 1) basada en medidas disponibles
en el tiempo k, es decir, una predicción de un paso. Nótese que el término de
realimentación K (y (k) C x^ (kjk 1)) no contribuye si la salida predicha
por el modelo coincide exactamente con las medidas. Para determinar la
matriz k se introduce el error de reconstrucción
x~ = x x^ (5.34)
5.8 Observadores 151

u (k ) x(k + 1) x(k ) y (k )
Γ ++ q −1 C

xˆ(k + 1) xˆ(k ) yˆ(k )


+
Γ ++ q −1 C − +

xˆ(k )

Figura 5.6: Reconstrucción del estado usando un sistema dinámico.

Restando (5.33) de (5.23) se obtiene

x~ (k + 1jk) = x~ (kjk 1) K (y (k) C x^ (kjk 1)) (5.35)


x~ (k + 1jk) = ( KC) x~ (kjk 1)

Si K se escoge de tal manera que el sistema (5.35) es asintóticamente


estable, entonces el error x~ siempre convergerá a cero. Así, introduciendo
realimentación de las medidas en la reconstrucción, es posible hacer que el
error tienda a cero, aún si el sistema (5.23) es inestable. El sistema en (5.33) es
llamado un observador para el sistema de (5.23) ya que produce el estado del
sistema de medidas de las entradas y las salidas. Falta ahora encontrar una
manera deseable para escoger la matriz K de manera que el sistema (5.33)
sea estable. Dadas las matrices y C, el problema es encontrar un matriz
K tal que la matriz KC tenga valores propios especi…cados. Ya que una
matriz y su transpuesta tienen los mismos valores propios, el problema es el
mismo que encontrar una matriz K T tal que T K T C T tenga los valores
propios especi…cados. Sin embargo, este problema fue resuelto en conexión
con el problema de reubicación de polos; ver teorema 5.1. Si se transladan
aquellos resultados, se encuentra que el problema puede ser resuelto de la
matriz h iT
T T T T n 1 T T
Wo = C C ( ) C
152 Diseño por reubicación de polos por el método de espacio de estado

tiene rango total. Nótese que Wo es la matriz observable para el sistema de


(5.23). El resultado se puede expresar de la siguiente manera.
Teorema 5.2 Dinámica del observador.
Considere el sistema discreto dado por la ecuación (5.23). Sea P (z) un
polinomio de grado n, en donde n es el orden del sistema. Suponiendo que el
sistema es completamente observable, entonces existe una matriz K tal que
la matriz KC del observador 5.33 tenga el polinomio característico P (z).

5.8.3. Cálculo de la ganancia del observador


La determinación de la matriz K en el observador (5.33) es el mismo problema
matemático para determinar la matriz de realimentación L en el problema
de reubicacion de polos. Los aspectos prácticos también están cercanamente
relacionados. La selección de los polos del observador, es un compromiso entre
la sensitividad a los errores de medida y la recuperación rápida de los errores
iniciales. Un observador rápido convergerá rápidamente, pero también será
sensitivo a los errores de medida.
La determinación de la matriz K es el dual de hallar la matriz de ganancias
L para reubicación de polos por realimentación de estado. Este problema es
resuelto por la fórmula de Ackermann, teorema 5.1. Utilizando las relaciones
L ! KT
WC ! WOT
T
!
se obtiene la ecuación (5.14) donde K está dada por
T 1
KT = 0 0 1 WOT P T

o:
T
K = P ( ) WO 1 0 0 1 (5.36)
El polinomio característico de KC es entonces P (Z). La dualidad con
el problema de reubicación de polos también implica que K es especialmente
simple para determinar, si el sistema está en forma observable.
Nótese sin embargo que la fórmula de Ackermann no es numéricamente
bien condicionada. el procedimiento ”place” del Matlab se basa en mejores
métodos numéricos. Este procedimiento también dará la ganancia del
observador para sistemas con muchas medidas.
5.8 Observadores 153

5.8.4. Un observador dead beat


Si la ganancia del observador K se escoge de mdo que la matriz KC
tenga todos sus valores propios en cero, el observador es llamado obsevador
dead beat. Éste tiene la propiedad de que el error del observador tiende a
cero en un tiempo …nito, actualmente a lo sumo en n pasos, en donde n es
el orden del sistema.
El observador dead beat es equivalente al observador dado por la ecuación
(5.25), el cual se obtuvo por un cálculo directo de las variables de estado.

Ejemplo 5.8 Observador de orden completo para el integrador doble.

Considérese la planta con el integrador doble. La matriz KC es dada


por:

1 h K1 1 K1 h
KC = 1 0 =
0 1 K2 K2 1
Así, la ecuación característica es:

z2 (2 K1 ) z + 1 K1 + K2 h = 0

Si la ecuación característica deseada es:

z 2 + p1 z + p2 = 0

se obtienen las siguientes ecuaciones

2 K1 = p1
1 K1 + K2 h = p 2

Resolviendo estas ecuaciones lineales, se tiene

K1 = 2 + p 1
1 + p1 + p2
K2 =
h
El observador dead beat se obtiene con p1 = p2 = 0. Así,
1
K1 = 2; K2 =
h
154 Diseño por reubicación de polos por el método de espacio de estado

Usando (5.33) el observador es


x^ (k + 1) = ( KC) x^ (k) + u (k) + Ky (k)
donde
h2
1 h 2
( KC) = 1 ; = 2 ;K = 1
h
1 h h
Entonces, usando la transformada Z suponiendo condiciones iniciales nulas:
^ (z) = (zI (
X KC)) 1 ( U (z) + KY (z))
1 2
hz 2 h2
^ (z) = z
X
z 2
U (z) + 2Y (z)
Z 2
h
z 1 + z 2 hU (z) + h1 Y (z)
1 h2
x^1 (z) = 2z z 2 Y (z) + z 1 + z 2 U (z)
2
1 1 h
x^2 (z) = z z 2 Y (z) + 2z 1 + z 2 U (z)
h 2
en k
h2
x^1 (k) = 2y (k 1) y (k 2) + (u (k 1) + u (k 2))
2
1 h
x^2 (k) = (y (k 1) y (k 2)) + (2u (k 1) + u (k 2))
h 2
Reemplazando k por k + 1
h2
x^1 (k + 1) = 2y (k) y (k 1) + (u (k) + u (k 1))
2
1 h
x^2 (k + 1) = (y (k) y (k 1)) + (2u (k) + u (k 1))
h 2

5.8.5. Observador de orden reducido


Hay muchas variaciones del observador dado por la ecuación (5.33). El
observador tiene un retardo ya que x~ (kjk 1) depende solo de medidas hasta
el tiempo k 1. El siguiente observador puede ser usado para evitar el retardo:
x^ (kjk) = x^ (k 1jk 1) + u (k 1) + K (y (k) C x^ (kjk)) (5.37)
= x^ (k 1jk 1) + u (k 1)
+ K (y (k) C x^ (k 1jk 1) + u (k 1))
= (I KC) x^ (k 1jk 1) + u (k 1) + Ky (k)
5.8 Observadores 155

El error de reconstrucción cuando se usa este observador es dado por

x~ (kjk) = x (k) x^ (kjk)

Por tanto
x~ (kjk) = ( KC ) x~ (k 1jk 1)
Esta ecuación es similar a (5.35), y de la de…nición de la matriz observable WO
se determina que el par ( ; C ) es observable si el par ( ; C) es observable.
Esto implica que a KC se le pueden asignar valores arbitrario propios
seleccionando K.
Además

y (k) C x^ (kjk) = C x~ (kjk)


= (C CKC ) x~ (k 1jk 1)

Si el sistema tiene p salidas, entonces I CK es una matriz de dimensión


p p; K podría ser escogida tal que CK = I si el rango de C es p. Esto implica
que C x^ (kjk) = y (k), lo cual signi…ca que la salida del sistema esestimada
sin error. Esto hará posible eliminar p ecuaciones de (5.37) y el orden del
observador será reducido. Los observadores de orden reducido de este tipo
son llamados los observadores de Luenberger.

Ejemplo 5.9 Observador de orden reducido para el integrador doble.

El observador (5.37) aplicado al integrador doble da las ecuaciones:

T K1 0
K = K1 K2 ; C = 1 0 ; KC = ;
K2 0
h2
1 h 1 K1 0
= ; = 2 ;I KC =
0 0 h K2 1
1 K1 h (1 K1 )
x^ (kjk) = x^ (k 1jk 1)
K2 (1 hK2 )
2
(1 K1 ) h2 K1
+ u (k 1) + y (k)
h 1 hK2
2 K2
I CK = 1 K1

Si I CK = 0, es decir, si K1 = 1, entonces la primer ecuación se reduce a:

x^1 (kjk) = y (k)


156 Diseño por reubicación de polos por el método de espacio de estado

El observador de orden reducido es dado ahora por la segunda

x^2 (kjk) = K2 x^1 (k 1jk 1) + (1 hK2 ) x^2 (k 1jk 1)


hK2
+h 1 u (k 1) + K2 y (k)
2
Como
x^1 (k 1jk 1) = y (k 1)
entonces

x^2 (kjk) = (1 hK2 ) x^2 (k 1jk 1) + K2 (y (k) y (k 1))


hK2
+h 1 u (k 1)
2
Escogiendo K2 , al observador de orden reducido se le puede dar un valor
propio arbitrario. Por ejemplo, si K2 = h1 , la respuesta dead beat, entonces
se obtiene el mismo resultado como cuando se hace el mismo resultado directo
en el ejemplo 5.7.

5.8.6. Realimentación de la salida


El problema de reubicación de polos fue resuelto en el caso especial cuando
todas las variables de estado son medidas directamente. En la sección anterior
se resolvió el problema de encontrar los estados de la salida del sistema.
Es natural ahora combinar aquellos resultados para obtener una solución al
problema de reubicación de polos para el caso de realimentación de la salida.
Sea el sistema descrito por
x (k + 1) = x (k) + u (k) (5.38)
y (k) = Cx (k)
Se desea una ley de realimentación lineal que relacione u y y de modo que
el sistema en lazo cerrado tenga polos dados. Las perturbaciones se asumen
primero como impulsos, o equivalentemente estados inciales desconocidos.
La ley de control admisible es tal que u (k) es una función de y (k 1),
y (k 2), . . . ,u (k 1), u (k 2), . . . . Si todas las variables de estado son
medidas, se demostró que la realimentación:
u (k) = Lx (k)
5.8 Observadores 157

da los polos deseados. Cuando el estado no puede ser medido, parece


intuitivamente razonable usar la ley de control

u (k) = L^
x (kjk 1) (5.39)

en donde x^ se obtiene del observador:

x^ (k + 1jk) = x^ (kjk 1) + u (k) + K (y (k) C x^ (kjk 1)) (5.40)

Así, la realimentación es un sistema dinámico de orden n. Un diagrama de


bloques de la realimentación se muestra en la …gura 5.7.

xˆ u (t ) y (t )
−L Proceso

Observador

Figura 5.7: Diagrama de bloques de un controlador obtenido combinando


realimentación del estado con un observador.

Análisis del sistema en lazo cerrado


El sistema en lazo cerrado tiene propiedades deseables. Para demostrar esto
se introduce
x~ = x x^
De las ecuaciones (5.38) y (5.39) se sigue que el sistema en lazo cerrado puede
ser descrito por las ecuaciones:

x (k + 1) = ( L) x (k) + L~
x (kjk 1) (5.41)
x (k + 1jk) = ( KC) x~ (kjk 1)

El sistema en lazo cerrado es de orden 2n. Reescribiendo (5.41):


x (k + 1) ( L) L x (k)
=
x (k + 1jk) 0 ( KC) x~ (kjk 1)
| {z }
KL
158 Diseño por reubicación de polos por el método de espacio de estado

Nótese que los valores propios del sistema en lazo cerrado se obtienen de

det ( I KL ) = det ( I ( L)) det ( I ( KC)) = 0

Es decir, los valores propios del sistema en lazo cerrado son los valores propios
de las matrices Ly KC. Nótese que los valores propios L
son los polos deseados en lazo cerrado, obtenidos resolviendo el problema
de reubicación de polos, y los valores propios de KC son los polos del
observador dado en la sección anterior.
Esta solución al problema de reubicación de polos tiene muchas simetrías
bonitas. La solución a la realimentación del estado y el observador son
problemas duales. El mismo algoritmo numérico se puede usar para encontrar
la ganancia de realimentación L y la ganancia del observador K. Es atractivo
también que la solución del problema completo se puede separar en dos
problemas más pequeños. La separación del problema es muy útil. Esto
justi…ca también que los polos del sistema en lazo cerrado sean separados
en dos grupos, uno es asociado con la realimentación del estado y el otro con
el observador.
Nótese que el observador contiene un modelo del proceso internamente. Este
es un caso especial del principio del modelo interno, el cual dice que un
buen controlador contiene un modelo del sistema controlado. El controlador
también puede ser visto como una caja negra que genera la señal de control
de la salida del proceso. Con (5.39) en (5.40):

x^ (k + 1jk) = x^ (kjk 1) L (kjk 1) + Ky (k) KC x^ (kjk 1)


= ( L KC) x^ (kjk 1) + Ky (k)

Usando la transformada Z con condiciones iniciales nulas:


^ (z) = (zI
X + L + KC) 1
KY (z)

y de (5.39)

U (z) = ^ (z) =
LX L (zI + L + KC) 1
KY (z)

Por lo tanto, el controlador descrito por (5.39) y (5.40) puede ser representado
por la función de transferencia de orden n desde la salida medida y y la señal
de control u:
HC (z) = L (zI + L + KC) 1 K (5.42)
5.8 Observadores 159

Ejemplo 5.10 Realimentación de la salida del integrador doble.

Considérese la planta con integrador doble. Supóngase que el vector de


realimentación L se determina como en los ejemplos 5.2 y 5.4 con la frecuencia
natural en lazo cerrado ! = 1, = 0:7, y h = 0:44. Esto da L = 0:73 1:21 .
Supóngase primero que el observador se diseña como en el ejemplo 5.8 con los
polos del observador en z = 0:75. La …gura 5.8 (a) muestra los estados reales
y los estimados cuando los estados estimados se usan en la ley de control.
La …gura 5.8 (b) muestra los estados en líneas continuas y la estimación del
segundo estado en línea punteada cuando el observador de orden reducido
del ejemplo 5.9 es usado. El polo del observador está en z = 0:75.

2 x1 2 x2
^x 1 ^x 2
1 1
(a)

0 0

0 5 10 0 5 10

2 x1 2 x2
^x 1 ^x 2
1 1
(b)

0 0

0 5 10 0 5 10
Tiempo Tiempo

Figura 5.8: Control del integrador doble usando estados estimados. Los
estados y los estados estimados se muestran para: (a) un observador de
segundo orden, (b) un observador dead beat.

5.8.7. Extensiones
El problema discutido se puede entender en varias direcciones. El controlador
dado por la ecuación (5.39) tiene un retardo de tiempo de un periodo de
muestreo. La razón de esto es que la realimentación se basa en un observador
160 Diseño por reubicación de polos por el método de espacio de estado

que da x^ (kjk 1). Es posible obtener un controlador sin retardos extras,


utilizando el control:
u (k) = L^ x (kjk) (5.43)
en donde x^ (kjk) se obtiene del observador dado por la ecuación (5.37).
Las propiedades del sistema obtenido es análogo al caso que ya ha sido
investigado, así los detalles se dejan para el ejercicio que se plantea más
adelante. Nótese, sin embargo, que la matriz de realimentación L no tiene que
ser cambiada cuando se cambia al observador. Esta es una bonita secuencia
de la separación del problema en la realimentación del estado y el observador.

Ejercicio 5.1 Considérese el observador de (5.37) y sea la ley de control


dada por
u (k) = L^ x (kjk)

Demostrar que el controlador resultante puede ser escrito por:

! (k + 1) = 0 ! (k) + 0 y (k)
u (k) = C0 ! (k) + D0 y (k)

en donde

0 = (I KC) ( L) ; 0 = (I KC) ( L) K
C0 = L; D0 = LK

Ejemplo 5.11 Diseñar un observador de variables de estado para un sistema


real implementado con ampli…cadores operacionales que corresponda al
modelo de espacio de estados continuo de la ecuación (5.44) usando Matlab y
una tarjeta de adquisición USB de National InstrumentsTM y aplicando como
entrada un escalón unitario.

2 3 2 3
2:8 5:6 8 3
x_ = 4 1 0 0 5 x + 405 u (5.44)
0 1 0 0
4
y = 0 0 3
x

Se de…ne la con…guración de las tarjetas de adquisición


5.8 Observadores 161

ai=analoginput(’nidaq’,’Dev1’);
addchannel(ai,0);
ao=analogoutput(’nidaq’,’Dev1’);
addchannel(ao,0);

Se selecciona el tiempo de muestreo

tiempo_muestreo=0.25; % segundos

Se calcula la ganancia para el observador en tiempo discreto

a=[-2.8 -5.6 -8;1 0 0; 0 1 0];


b=[3;0;0];
c=[0 0 4/3];
d=0;
hd=c2d(ss(a,b,c,d),tiempo_muestreo);
Lt=acker(hd.a’,hd.c’,[0;0;0]);
L=Lt’;

Se calcula la ganancia para regualción por realimentación de variables de


estado usando Ackermann

K=acker(hd.a,hd.b,[0.3;0.3;0.3]);

Se determinan algunos parámetros para visualización y el tiempo de


simulación

tf=15;%tiempo de simulacion en segundos


n=tf/tiempo_muestreo;
y=zeros(n,1);%vector de salida
yest=zeros(n,1);%vector de salida estimado
u=zeros(n,1);%vector de control
u(end/3+1:end)=ones(n/3,1);
t=tiempo_muestreo:tiempo_muestreo:tiempo_muestreo*length(y);
j=1;%contador
xest=zeros(3,n);%vector de variables de estado

Se realiza la regulación por realimentación de estados del sistema simulado


con ampli…cadores operacionales en tiempo real
162 Diseño por reubicación de polos por el método de espacio de estado

tiempo_inicial=clock; % tiempo incial


while(j*tiempo_muestreo<=tf),
if(etime(clock,tiempo_inicial)>=tiempo_muestreo)
tiempo_inicial=clock;
putsample(ao,u(end));
y(end)=getsample(ai);
%algortimo del observador
yest(end)=hd.c*xest(:,end-1);
xest(:,end)=hd.a*xest(:,end-1)+hd.b*u(end-j)+L*(y(end)-yest(end));
%graficos
j=j+1;
subplot(211)
plot(t,y,’b’,t,u,’r--’,t,yest,’g’)
ylim([-0.5 5.5]);
legend(’y’,’u’,’y^’)
subplot(212)
plot(t,xest)
ylim([-3.5 3.5]);
legend(’x1^’,’x2^’,’x3^’)
%actualizacion de datos para la siguiente iteracion
y(1:end-1)=y(2:end);
yest(1:end-1)=yest(2:end);
xest(:,1:end-1)=xest(:,2:end);
end
end

En la …gura 5.9 (a) se muestra la salida y del sistema real en lazo abierto con
una entrada escalón unitario y la salida estimada y^ y en la salida 5.9 (b) se
muestran las variables de estado estimadas del sistema.

5.8.8. Modelos de perturbación más realísticos


El controlador basado en realimentación del estado y un observador es
interesante, pero todavía no es muy útil en la práctica. La razón es que la
suposición hecha acerca de las perturbaciones en la sección anterior ha sido
demasiado simplística. Para generalizar el problema se asume que el sistema
5.8 Observadores 163

1 y
u
y^
(a)

0.5

0 5 10 15

1.5

1 x^_1
x^_2
0.5 x^_3
(b)

-0.5

-1
0 5 10 15
Tiempo

Figura 5.9: (a) Salida estimada y^ del sistema y (b) variables de estado
estimadas x^.

es descrito por

x_ = Ax + Bu + v
y = Cx

en donde v es una perturbación actuando sobre el proceso. La perturbación


v, la cual típicamente tiene mucha energía a bajas frecuencias, se modela
como

!_ = A! !
v = C! !

La matriz A! típicamente tiene valores propios en el origen o sobre el eje


T
imaginario. Se introduce el vector de estado aumentado x ! .
164 Diseño por reubicación de polos por el método de espacio de estado

El sistema aumentado puede ser descrito por

x_ A C! x B
= + u (5.45)
!_ 0 A! ! 0
x
y = C 0
!

Compárese con (5.20). El muestreo de este sistema da el siguiente sistema


discreto
x (k + 1) x! x (k)
= + u (k)
! (k + 1) 0 ! ! (k) 0
x (k)
y (k) = C 0
! (k)

Los estados de la perturbación, !, no son alcanzables desde la señal de


control, pero el estado completo es observable desde la salida si el sistema
(5.38) es observable. La ley de control es una realimentación lineal de todas
las variables de estado, es decir,

u (k) = L^
x (k) L! !
^ (k) (5.46)

en donde x^ y !
^ se obtienen del observador

x^ (k + 1) x! x^ (k) K
= + u (k) + " (k) (5.47)
!^ (k + 1) 0 ! !^ (k) 0 K!

donde
" (k) = y (k) C x^ (k) (5.48)
Nótese que el estado del observador está compuesto de estimaciones de los
estados del proceso y de las perturbaciones, y que la señal de control contiene
una realimentación del estado estimado de la perturbación ! ^ (k).
El sistema en lazo cerrado es descrito por

x (k + 1) = ( L) x (k) + ( x! L! ) ! (k) + L~ ~ (5.49)


x (k) + L! !
! (k + 1) = ! ! (k)
x~ (k + 1) = ( KC) x~ (k) + x! !~ (k)
!
~ (k + 1) = ! !~ (k) K! C x~ (k)
5.8 Observadores 165

x (k + 1) = x (k) + x! ! (k) + ( L^ x (k) L! !^ (k))


= x (k) + x! ! (k)
L (x (k) x~ (k)) L! (! (k) !~ (k))
entonces
x (k + 1) = ( L) x (k) + ( x! L! ) ! (k) + L~
x (k) + L! !
~ (k)
! (k + 1) = ! ! (k)
donde se ha tenido en cuenta que x~ (k) = x (k) x^ (k), !
~ (k) = ! (k) !
^ (k).
x~ (k + 1) = x (k + 1) x^ (k + 1)
= x (k) + x! ! (k) + u (k) x^ (k) x! !
^ (k) u (k)
K" (k)
= (x (k) x^ (k)) + x! (! (k) ! ^ (k)) K (y (k) C x^ (k))
= x~ (k) + x! !~ (k) K (Cx (k) C x^ (k))
entonces
x~ (k + 1) = ( KC) x~ (k) + x! !
~ (k)

!
~ (k + 1) = ! (k + 1) !
^ (k + 1) = ! ! (k) !!
^ (k) K! " (k)
= !!~ (k) K! (Cx (k) C x^ (k))
entonces
!
~ (k + 1) = !!
~ (k) K! C x~ (k)
Nótese que el estado de la perturbación, !, es observable pero no alcanzable.
Las ecuaciones para el sistema en lazo cerrado dan un conocimiento profundo
del comportamiento del sistema. La matriz L asegura que el estado x tiende
a cero a la velocidad deseada después de una perturbación. Una seleccióna
adecuada de la ganancia L! reduce el efecto de la perturbación v sobre el
sistema por alimentación directa de las perturbaciones estimadas ! ^ . Esta
acción de control por alimentaciñon directa es particularmente efectiva si la
matriz ( x! L! ) se puede hacer igual a cero.
Las ganancias del observador K y K! in‡uyen en la velocidad a la cual los
errores de estimación tienden a cero. Un diagrama de bloques se muestra en
la …gura 5.10.
166 Diseño por reubicación de polos por el método de espacio de estado


−L

+ u y
+ Proceso

ωˆ
− Lω

Observador

Figura 5.10: Diagrama de bloques de un controlador con realimentación de


estado de los estados estimados de la perturbación.

5.8.9. Acción integral


El caso especial de un perturbación constante pero desconocida actuando a
la entrada del proceso es muy común. Esto conduce a una solución en donde
el controlador tiene acción integral. Para ver esto, considérese el caso de
un sistema con una entrada y una perturbación constante a la entrada del
proceso. En este caso, se tiene ! = v = cte, entonces !_ = v_ = 0 y por lo
tanto ! = eA! h = e0 = 1. Además, si la perturbación actúa sobre la entrada
del proceso se obtiene x! = .
Por lo tanto, se nota que se L! = 1 se cancela perfectamente la perturbación
de la carga. Suponiendo que no hay errores en la medida, el controlador
descrito por las ecuaciones (5.46) a (5.48) termina en

u (k) = L^x (k) L! v^ (k) = L^ x (k) v^ (k) (5.50)


x^ (k + 1) = x^ (k) + (^v (k) + u (k)) + K" (k)
v^ (k + 1) = v^ (k) + K! " (k)
" (k) = y (k) C x^ (k)

Nótese que la estimación de la perturbación se obtiene simplemente


integrando el error " (k). Un diagramad e bloques de este controlador
se muestra en la …gura 5.11. El diagrama muestra claramente como la
perturbación v es reducida por su estimación v^, la cual se obtiene integrando
el error del observador. Hay un integrador en el observador de la perturbación.
En la …gura 5.11 hay sin embargo, realimentación alrededor del integrador.
Para ver más claramente que el controlador tiene acción integral, (5.50) es
5.8 Observadores 167

reescrita como

u (k) = L^x (k) v^ (k)


x^ (k + 1) = ( L) x^ (k) + K (y (k) C x^ (k))
= ( L KC) x^ (k) + Ky (k)
v^ (k + 1) = v^ (k) + K! (y (k) C x^ (k))


L v

u y
− +
+ Proceso

ε Observador de vˆ
la perturbación

+
Observador +
del estado

Figura 5.11: Diagrama de bloques de un controlador con realimentación del


estado y un observador con acción integral.

Nótese que la estimación x^ del estado del proceso es lo mismo que en el caso
cuando no hay perturbaciones; compárese con (5.33).
Usando la transformada Z en las anteriores ecuaciones:

^ (z) = (zI
X + L + KC) 1
KY (z) = Hx (z) Y (z)
^ 1
V (z) = (z 1) K! " (z)
U (z) = LX^ (z) V^ (z)

en donde
1
Hx (z) = (zI + L + KC) K (5.51)

Hx (z) es la función de transferencia del controlador para un sistema con


realimenación del estado dado por la ecuación (5.42).
Las anteriores ecuaciones permiten obtener el diagrama de bloques del
controlador (5.50), como se muestra en la …gura 5.12.
168 Diseño por reubicación de polos por el método de espacio de estado

− U (z )

ε (z ) Kω Vˆ(z )
z −1 Observador de la perturbación

+
− C
Y (z )
H x (z )
Xˆ(z )
Observador del estado

Figura 5.12: Diagrama de bloques de la realimentación entrada salida del


controlador (5.50).

De la …gura 5.12 se puede obtener la relación entrada salida del controlador


(5.50):

^ (z) K!
U (z) = LX V^ (z) = LHx (z) Y (z) " (z)
(z 1)
K!
= LHx (z) Y (z) (Y (z) CHx (z) Y (z))
(z 1)
1
U (z) = LHx (z) + K! (I CHx (z)) Y (z) (5.52)
(z 1)
Este expresión muestra que el controlador tiene acción integral. Nótese que la
acción integral se obtiene a través del observador que estima una perturbación
constante actuando a la entrada del proceso. Se ilustrará con un ejemplo.

Ejemplo 5.12 Realimentación de la salida con acción integral del integrador


doble.

Considérese la planta con el integrador doble. Supóngase que el vector de


realimentación L se determina como en los ejemplos 5.2 y 5.4 con la frecuencia
natural en lazo cerrado ! = 1, amortiguamiento = 0:7, y h = 0:44.
El polinomio característico del sistema continuo en lazo cerrado es:

s2 + 1:4s + 1 = 0
5.8 Observadores 169

Así, los polos son:


p
s1;2 = ! j 1 2! = 0:7 j0:714

Los polos del sistema discreto correspondiente se pueden obtener de z = ehs .


Así
z1;2 = e0:44( 0:7 j0:714) 0:7 j0:227
L se determina con:
2
det ( I + L) = ( z1 ) ( z2 ) = 1:4 + 0:541

donde
1 0:44 0:097
= ; = ; L = l1 l2
0 1 0:44
obteniéndose:
L = 0:73 1:21
El controlador y el observador se implementan como en (5.50). Los tres polos
del observador se ubican en z = 0:75.
Usando las dos últimas ecuaciones de (5.49) con x! = y ! = 1:
2 3 2 32 3
x~1 (k + 1) 1 K1 0:44 0:097 x~1 (k)
4x~2 (k + 1)5 = 4 K2 1 0:44 5 4x~2 (k)5
v~ (k + 1) K! 0 1 v~ (k)

Es decir:
x~ (k + 1) KC x~ (k)
=
v~ (k + 1) K! C 1 v~ (k)
donde
T
K = K1 K2 ;C = 1 0
K y K! se determinan con

KC
det I =( 0:75)3
K! C 1

Es decir
02 31
1 + K1 0:44 0:097
det @4 K2 1 0:44 5A = ( 0:75)3
K! 0 1
170 Diseño por reubicación de polos por el método de espacio de estado

entonces

3 2
+ (K1 3) + (3 + 0:097K! 2K1 + 0:44K2 )
3 2
+ K1 1 + 0:097K! 0:44K2 = 2:25 + 1:6875 0:4219

Comparando coe…cientes se obtiene

K1 = 0:75
0:097K! + 0:44K2 = 0:1875
0:097K! 0:44K2 = 0:1719

Resolviendo
T
K = 0:75 0:4084 ; K! = 0:0804
T
Suponiendo un estado inicial x (0) = 1 1 , la …gura 5.13 muestra
el comportamiento del sistema. La respuesta es ahora más lenta y más
oscilatoria que sin la perturbación estimada como en la …gura 5.8. Sin
embargo, se ve claramente que el controlador tiene ahora acción integral
y puede eliminar perturbaciones de carga a la entrada constantes.

5.9. El problema del servo


Hasta ahora se ha discutido el problema del regulador. El criterio ha sido
eliminar las perturbaciones impulso y conducir los estados del sistema a cero.
El problema del servo es otro problema prototipo importante, en donde el
objetivo es hacer que los estados y las salidas del sistema respondan a señales
de comando de una manera especí…ca.

5.9.1. Un método simple


Una manera simple de obtener la respuesta a señales de comando es
reemplazar la realimentación regular de estado u (k) = L^
x (k) por:

u (k) = L^
x (k) + LC r (k) (5.53)

en donde r es la señal de comando. Para investigar la respuesta de tal


5.9 El problema del servo 171

2
y
1
(a) 0
-1
0 10 20 30 40 50

1 u
(b)

-1
0 10 20 30 40 50

0.2 v
v^
(c)

-0.2
0 10 20 30 40 50
Tiempo

Figura 5.13: Simulación del sistema del ejemplo 5.12. (a) Salida y, (b) entrada
u, y (c) perturbación v (línea punteada) y perturbación estimada v^ (línea
continua).

controlador, se considera el sistema en lazo cerrado descrito por


x (k + 1) = x (k) u (k) (5.54)
y (k) = Cx (k)
x^ (k + 1) = x^ (k) + u (k) + K (y (k) C x^ (k))
u (k) = L^x (k) + LC r (k)
Un diagrama de bloques del sistema se muestra en la …gura 5.14.
Eliminando u e introduciendo el error de estimación x~ (k) = x (k) x^ (k) se
encuentra que el sistema en lazo cerrado puede ser descrito por:
x (k + 1) = ( L) x (k) + L~
x (k) + LC r (k) (5.55)
x~ (k + 1) = ( KC) x~ (k)
y (k) = Cx (k)
Nótese que el error del observador no es alcanzable desde r. Esto tiene
sentido, ya que sería altamente indeseable introducir señales de comando
de tal manera que causaran errores en el observador.
172 Diseño por reubicación de polos por el método de espacio de estado

r
Lc

u y
++

−L Proceso

Observador

Figura 5.14: Diagrama de bloques que muestra una manera simple de


introducir señales de comando en un controlador con realimentación de estado
y un observador.

De (5.55) se obtiene la función de transferencia al pulso desde la señal de


comando a la salida del proceso:
1 B (z)
HCL (z) = C (zI + L) LC = L C (5.56)
Am (z)
Ésta puede ser comparada con la función de transferencia al pulso del proceso
1 B (z)
H (z) = C (zI ) = (5.57)
A (z)
El hecho de que el polinomio B (z) aparezca en el numerador de ambas
funciones de transferencia se puede ver transformando ambos sistemas a la
forma canónica alcanzable. La realimentación de estado no afecta los ceros de
la función de transferencia, a menos, por supuesto, que sean cancelados por
la escogencia apropiada de los polos del sistema en lazo cerrado. Compárese
con la derivación de la fórmula de Ackermann dada por 5.14. El sistema en
lazo abierto obtenido con la ley de control 5.53 tiene los mismos ceros que
la planta y sus polos son los valores propios de la matriz L. De la
discusión anterior se encontró que el rechazo a las perturbaciones también
está in‡uenciado por L. Algunas veces es deseable tener un controlador en
donde el rechazo a la perturbación y la respuesta a la señal de comando
son totalmente independientes. Para obtener esto, se usará una estructura de
control más general, que se discute posteriormente. Antes de eso, se mostrará
como introducir la acción integral en el controlador (5.53).
5.9 El problema del servo 173

5.9.2. Acción Integral


Para obtener un controlador con acción integral, se usa la misma idea del
obsevador de perturbaciones constante y se introduce el acumulado del error
en la señal de control como
u(k) = Lx (k) + LI v (k)
y con
x (k + 1) = x (k) + u (k)
v (k + 1) = v (k) + e (k)
donde e (k) = r (k) y (k), y (k) = Cx (k) y v (0) = 0. De esta forma el
sistema se puede reescribir como
x (k + 1) = x (k) + u (k) (5.58)
v (k + 1) = Cx (k) + v (k) + r (k)
Este sistema se puede escribir en forma matricial de…niendo un vector de
estados aumentado de la forma
x (k + 1) 0 x (k) 0
= + u (k) + r (k) (5.59)
v (k + 1) C 1 v (k) 0 1
x (k)
y(k) = C 0
v (k)
y la ley de control
x (k)
u(k) = L LI (5.60)
v (k)
El vector de ganancia aumentado L LI se puede encontrar utilizando la
fórmula de Ackermann, si el sistema aumentado es alcanzable.
Cuando se reemplaza la ley de control se tiene

x (k + 1) L KI x (k) 0
= + r (k)
v (k + 1) C 1 v (k) 1
Una comparación con la ecuación (5.50) muestra que el seguimiento de
la señal de comando se obtiene con una simple modi…cación del sistema
discutido previamente. Si se utiliza un observador completo para la
estimación de las variables de estado x^ (k) se obteien el diagrama de bloques
del sistema completo con acción integral como se muestra en la …gura
174 Diseño por reubicación de polos por el método de espacio de estado

r (k ) LI
+
− z −1

xˆ(k ) + u (k ) y (k )
−L + Proceso

Observador

Figura 5.15: Diagrama de bloques del sistema de seguimiento con acción


integral correspondiente a las ecuaciones (5.59) y (5.60).

Ejemplo 5.13 Controlador con accion integral del integrador doble usando
Matlab.

Se de…ne el modelo del sistema


h=1;
phi=[1 h; 0 1];
gama=[h^2/2; h ];
c=[1 0];
Se calcula la ganancia del observador
Lt=acker(phi’,c’,[0.1 0.2]);
L=Lt’
Se de…ne el sistema aumentado para el controlador
phi_a=[phi zeros(2,1);-c 1]
gama_a=[gama;0]
Se calcula el vector de gananacia del sistema aumentado L LI
Ltot=acker(phi_a,gama_a,[0.2 0.3 0.3])
Se separan la ganancia de realimentación L y la ganancia del integrador LI
L=Ltot(1:2)
Li=-Ltot(3)
5.9 El problema del servo 175

T
Si se simula el sistema en Simulink con condiciones inciales 0 1 , y
aplicando como señal de referencia un escalón en el tiempo t = 15, se obtiene
la respuesta que se muestra en la …gura 5.16.

4
(a)

2
y
0 r

-2
0 5 10 15 20 25 30

2
u
0
(b)

-2

-4
0 5 10 15 20 25 30
Tiempo

Figura 5.16: Salida y (a) y señal de control u (b) del control con acción
integral para el ejemplo 5.13.

5.9.3. Un controlador de dos grados de libertad


Los sistemas de control prácticos a menudo tienen especi…caciones
que involucran propiedades de servo y de regualción. Esto es resuelto
tradicionalmente utilizando una estructura con dos grados de libertad, como
se muestra en la …gura 5.17.
Esta con…guración tiene la ventaja de que los problemas de servo y de
regulación son separados. El controlador de realimentación Hf b se diseña
para obtener un sistema en lazo cerrado que es insensitivo a perturbaciones
del proceso, ruido en la medida e incertidumbres del proceso. El compensador
en lazo directo Hf f es diseñado luego para obtener las propiedades del servo
deseado. Se mostrará como resolver el problema del servo en el contexto de
176 Diseño por reubicación de polos por el método de espacio de estado

r u ff
H ff

u fb u y
− H fb +
+ Proceso

Figura 5.17: Diagrama de bloques de un sistema de realimentación con una


estructura de dos grados de libertad.

realimentación del estado.

Una estructura del controlador


En un diseño de espacio de estado es natural suponer que el comportamiento
del servo se especi…ca en términos de un modelo que da la respuesta deseada
de la salida o las variables de estado a cambios en la señal de comando. Esto
se puede especi…car con el modelo

xm (k + 1) = m xm (k) + m r (k) (5.61)


ym (k) = Cm xm (k)

Es entonces natural usar la ley de control

u (k) = L (xm (k) x^ (k)) + uf f (k) (5.62)

en donde xm es el estado deseado y uf f es una señal de control que da


la salida deseada cuando es aplicada en lazo abierto. Las coordenadas se
deben escoger de manera que los estados del sistema y del modelos sean
compatibles. En aplicaciones actuales es útil a menudo escogerlas de modo
que las componentes del estado tengan buenas interpretaciones físicas.
El término uf b = L (xm (k) x^ (k)) representa la realimentación y uf f
representa la señal en lazo directo. La ecuación (5.62) tiene una buena
interpretación física. La señal en lazo directo uf f producirá idealmente la
variación en el tiempo deseado en el estado del proceso. Si el estado del
proceso estimado x^ es igual al estado deseado xm , la señal de realimentación
5.9 El problema del servo 177

L (xm x^) es cero. Si hay una diferencia entre x^ y xm , la realimentación


generará acciones correctivas. El término de realimentación puede ser visto
como una generalización de la realimentación del error en sistemas de control
ordinario, ya que el error representa desviaciones de todas las variables de
estado y no solo los errores de las salidas. Un diagrama de bloques del sistema
se muestra en la …gura 5.18.

u ff
r Modelo y
lazo directo
xm
u fb u y
−+ +
L + Proceso

Observador

Figura 5.18: Un controlador con dos grados de libertad basado en


realimentación de estado y un observador.

Generación de la señal en lazo directo


Dado el modelo (5.61) es directo generar los estados deseados. Falta discutir
la generación de la señal uf f . Sean las funciones de transferencia del proceso
y del modelo H (z) y Hm (z), respectivamente. Si la señal:

Hm (z)
uf f = r (k) (5.63)
H (z)

pudiera ser generada, se obtendría el resultado deseado; varias condiciones


se requieren para esto. El modelo Hm debe ser estable, el exceso de polos
del modelo no debe ser menor que el exceso de polos del proceso, y ceros
inestables del proceso también deben ser ceros del modelo.
En el caso de una entrada y una salida, la generación de uf f es
particularmente simple si el orden y los ceros del modelo y del proceso son
los mismos. Supóngase que H (z) = B(z)
A(z)
y Hm (z) = AB(z)
m (z)
, entonces (5.63)
178 Diseño por reubicación de polos por el método de espacio de estado

se reduce a:

A (q) (a1 a1m ) q n 1 + + (an anm )


uf f (k) = r (k) = 1 n n 1
r (k)
Am (q) q a1m q + + anm
(5.64)
La señal uf f se puede generar entonces de los estados del modelo de referencia.
La generación de las señales en lazo directo se simpli…ca aún más si el modelo
de referencia (5.61) tiene forma canónica alcanzable, es decir,
2 3 2 3
a1m a2m a(n 1)m anm
6 1 0 0 7 607
6 .. 7 6 7
6 .. 7 6 7
m =6 0 1 . . 7; m = 6 ... 7 (5.65)
6 . .. .. 7 6 7
4 .. . . 5 4 5
0 0 1 0 0

Se sigue entonces de la ecuación (5.64) que

uf f = r (k) + Cf f xm (k) (5.66)

en donde

Cf f = (a1 a1m ) (a2 a2m ) a(n 1) a(n


anm )1)m (an
(5.67)
y donde es el inverso de la ganancia del modelo de referencia en estado
estable, asi
am (1)
= (5.68)
b (1)
Una vez obtenida la solución en forma cerrada, se puede obtener otras
representaciones por transformación de las variables de estado. Una discusión
completa del diseño de la compensación en lazo directo está fuera del alcance
de este curso. Basta mencionar que a menudo es útil no linealidades en la
trayectoria de alimentación directa de modo que el sistema no sea conducido
muy severamente en respuesta a las señales de comando. Ya que la señal uf f
se usa principalmente para lograr que el sistema se mueva rápidamente en la
dirección correcta, también es posible usar modelos aproximados del proceso;
las desviaciones pequeñas son manejadas fácilmente por realimentación.
Combinando las soluciones a los problemas de regulación del servo se tiene
5.9 El problema del servo 179

un controlador poderoso, el cual es descrito por

u (k) = uf f (k) + uf b (k) (5.69)


uf f (k) = r (k) + Cf f xm (k)
uf b (k) = L (xm (k) x^ (k)) L! ! ^ (k)
x^ (k + 1) = x^ (k) + x! ! ^ (k) + u (k) + K" (K)
!
^ (k + 1) = !!^ (k) + K! " (k)
" (k) = y (k) C x^ (k)
xm (k + 1) = m xm (k) + m r (k)

Este controlador captura muchos aspectos de un problema de control tales


como atenuación de la perturbación de carga, reducción de los efectos del
ruido en la medida, y seguimiento de la señal de comando. Las respuestas
a las perturbaciones de carga, señales de comando y ruido son separadas
completamente. La respuesta a la señal de comando se determina por el
modelo de referencia. La respuesta a las perturbaciones de carga y ruido en
la medida es afectada por el observador y la realimentación del estado. Ella
puede ser ajustada por las matrices L, L! , K y K! . El hecho de que todos los
estados estimados sean comparados con los del comportamiento deseado, da
una buena posibilidad para ejercer control preciso. Un diagrama de bloques
del sistema en lazo cerrado se muestra en la …gura 5.19.

u ff
r Modelo y
lazo directo
xm
u fb u y
−+ L ++ Proceso
xˆ −


ωˆ

Observador

Figura 5.19: Diagrama de bloques de un controlador general que combina


seguimiento por modelo con realimentación de los estados estimados y los
estados de la perturbación.
180 Diseño por reubicación de polos por el método de espacio de estado

El controlador dado por la ecuación (5.69) se puede representar de diferentes


maneras. Todas ellas son equivalentes ya que el sistema es lineal e invariante
con el tiempo. En la práctica es útil usar modelos de referencia no lineales, los
actuadores y conversores podrían ser no lineales, y podrían haber efectos no
lineales en los cálculos tales como el redondeo. En tales casos, las diferentes
estructuras podrían tener drásticamente propiedades diferentes.
Un conocimiento profundo se obtiene introduciendo la diferencia entre el
estado estimado x^ y el estado del modelo xm . Supóngase que los sistemas
son dados en formas canónicas alcanzables y que el modelo y ell proceso
tiene los mismos ceros. Se puede entonces escoger Cm = C y m = r (k). Se
introduce:
e^ = xm x^ (5.70)

De las ecuaciones (5.61) y (5.69) se sigue que:

e^ (k + 1) = m xm + m r (k) x^ (k) x! !
^(k) u (k) K" (k)
= e^ (k) x! !
^ (k) + ( m ) xm (k) + r (k) u (k) K" (k)

Solo el primer elemento del vector

( m ) xm (k) + r (k)

es diferente de cero. Este elemento es dado por:

(a1 a1m ) xm1 +(a2 a2m ) xm2 + +(an anm ) xmn + r = r (k)+Cf f xm (k)

Además se tiene:

" (k) = y (k) C x^ (k)


= y (k) C x^ (k) + Cxm (k) Cxm (k)
= y (k) ym (k) C e^ (k)

con:
u (k) = uf b (k) + uf f (k)

en donde
uf f (k) = r (k) + Cf f xm (k)
5.9 El problema del servo 181

y el controlador (5.69) es ahora

u (k) = uf b (k) + uf f (k) (5.71)


uf f (k) = r (k) + Cf f xm (k)
uf b (k) = L^
e (k) L! ! ^ (k)
e^ (k + 1) = e^ (k) x! !^ (k) uf b (k) + K (y (k) ym (k) C e^ (k))
xm (k + 1) = m xm (k) + m r (k)

En el caso especial de una perturbación constante a la entrada se tiene ! = v,


! = 1, x! = . En este caso el controlador tendrá acción integral. Para
ver esto claramente, se reescriben las ecuaciones (5.71) para el controlador.
Después de manipulaciones algebraicas se tiene

u (k) = uf b (k) + uf f (k) (5.72)


uf f (k) = r (k) + Cf f xm (k)
uf b (k) = L^ e (k) v^ (k)
e^ (k + 1) = ( L KC) e^ (k) + K (y (k) ym (k))
v^ (k + 1) = v^ (k) K! (ym (k) y (k) e^ (k))
xm (k + 1) = m xm (k) + m r (k)

La función de transferencia desde y ym a e^ (k) es dada por la ecuación


(5.51). Un diagrama de bloques del controlador se muestra en la …gura 5.20.
Se ilustrarán las ideas controlando el integrador doble.

Ejemplo 5.14 Control del integrador doble.

Considérese la planta con el integrador doble y supóngase que hay una


perturbación en el proceso en la forma de una constante desconocida que
actúa a la entrada del proceso. El vector de realimentación L se determina
como en los ejemplos 5.2 y 5.4 con la frecuencia natural de lazo cerrado ! = 1,
amortiguamiento = 0:7 y h = 0:44.
Diseño del control del ejemplo 5.14:
El modelo de la planta es

0 1 0
x_ = x+ u; y = 1 0 x
0 0 1 | {z }
| {z } |{z} C
A B
182 Diseño por reubicación de polos por el método de espacio de estado

r Modelo y u ff
lazo directo

ym eˆ u fb u y
+
+ Observador L + + Proceso
− −


C

− Kω
+
z −1

Figura 5.20: Otra representación de la estructura general del controlador


con realimentación de los estados estimados, estado de la perturbación y
seguimiento del modelo.

Discretizando la planta con el tiempo de muestreo h = 0:44 se obtiene

1 0:44 0:097
x (k + 1) = x (k) + u (k)
0 1 0:44
y (K) = 1 0 x (k)

La función de transferencia del sistema discretizado es


0:097 (z + 1) 0:097 (z + 1)
G (z) = 2 = 2
(z 1) z 2z + 1

Así, la forma canónica alcanzable, del sistema discretizado es

2 1 0 1
x0 (k + 1) = x (k) + u (k)
1 0 0
| {z } |{z}
C C
0
y (k) = 0:097 0:097 x (k)
| {z }
CC

Para la regulación se desea un sistema en lazo cerrado continuo, equivalente


a tener la ecuación característica

s2 + 1:4s + 1 = (s + 0:7 + j0:714) (s + 0:7 j0:714)


= 0:7; ! = 1
5.9 El problema del servo 183

Modelo de
r referencia xm
+
+
en FCA C ff
u ff
Φ m , Γm v
xm u fb u y
+ + + Planta
L + + +
− − A, B, C

Kω vˆ
z −1

++
Observador ΓC
xˆ'
en FCA
Φ C , ΓC K +
eˆ −

CC

Figura 5.21: Estructura del controlador del ejemplo 5.14.

Los polos del sistema discreto en lazo cerrado se obtienen con z = ehs , donde
h = 0:44. Así,
z1;2 = 0:7 J0:227
La ecuación característica es
z2 1:4z + 0:541
Utilizando la realimentación de x0 a través del vector de ganancia:
L = l1 l2
z 2l1 1 + l2
det (zI C + C L) = det
1 z
= z 2 + (l1 2) z + (1 + l2 ) = z 2 1:4z + 0:541
Comparando coe…cientes y resolviendo para l1 y l2 se obtiene
L = l1 l2 = 0:6 0:459
Se utiliza un observador para realimentar las variables de estado estimadas de
la forma canónica alcanzable, x0 y un observador para estimar la perturbación
v^.
184 Diseño por reubicación de polos por el método de espacio de estado

Diseño del observador:


Usando las dos últimas ecuaciones de (5.49) con x! = y ! = 1, con:
K1
K = ;
K2
2 3
2 0:097K1 1 0:097K1 1
KCC 4
C C
= 0 = 1 0:097K2 0:097K2 05
K! CC 1
0:097K! 0:097K! 1
y ubicando todos los polos del observador en z = 0:75, entonces
det (zI 0) = (z 0:75)3 = z 3 2:25z 2 + 1:6875z 0:4219
2 3
z 2 + 0:097K1 1 + 0:097K1 1
= det 4 1 + 0:097K2 z + 0:097K2 0 5
0:097K! 0:097K! z 1
Comparando coe…cientes se obtienen las ecuaciones
K1 + K2 = 7:732
4K2 + K! = 13:531
K1 + 3K2 + K! = 5:96
cuya solución es
4:3291
K= ; K! = 0:0805
3:4029
El modelo de referencia. Se desea que el servo responda dos veces más
rápido, que cuando responde el regulador (diseño de L). Así, la ecuación
característica del sistema continuo equivalente sería:
s2 + 1:4 2s + 22 = s2 + 28s + 4; s1;2 = 1:4 j1:428
Discretizando estos polos con z = ehs y h = 0:44: z1;2 = 0:437 J0:317. Así
la ecuación característica del sistema discreto es:
Am (z) = z 2 0:874z + 0:292
El modelo de referencia en forma canónica alcanzable es
xm (k + 1) = m xm (k) + m xm (k)
0:874 0:29
m = ; m=
1 0 0
5.9 El problema del servo 185

Planta discretizada

r (k ) u ff y (k )
1
H m (q ) H (q )
H (q )

Figura 5.22: Señal de control en lazo directo para el servo.

Para que este modelo tenga los mismos ceros de la forma canónica alcanzable,
entonces
Cm = C = 0:097 0:097
Así,
Cf f = a1C a1m a2C a2m = 1:126 0:708
y
uf f = r (k) + Cf f xm (k)
Cálculo de . Para el servo únicamente, considérese la …gura 5.22
Como Hm (q) tiene los ceros de H (q):
(z z1 ) (z z2 ) (z zm )
en donde
(z z1 ) (z
z2 ) (z zm )
H (Z) =
A (z)
En este caso particular: z1 = 1, = 0:097: (z z1 ) = 0:097 (z 1). Como
los polos de Hm (q) se selccionan de acuerdo al comportamiento deseado, con
el modelo de referencia, entonces:
(z z1 ) (z z2 ) (z zm )
Hm (Z) =
Am (z)
se escoge de modo que si r (k) es un escalón, y (k) en estado estacionario
es la unidad. Como:
H (q)
y (k) = Hm (q) r (k) = Hm (q) r (k)
H (q)
Utilizando el teorema del valor …nal
1
yss (k) = l m y (k) = l m 1 z Hm (z) R (z)
k!1 z!1
1 z
= lm 1 z Hm (z) = Hm (1)
z!1 z 1
186 Diseño por reubicación de polos por el método de espacio de estado

Así, Hm (1) = 1, entonces

Am (1)
=
(z z1 ) (z z2 ) (z zm )

Para el caso particular

1 0:874 + 0:292
= = 2:1546
0:097 (1 + 1)

La …gura 5.23 muestra el control del integrador doble cuando se usa el


controlador (5.72). Primero hay una perturbación de carga a la entrada en
el instante t = 5 y luego un cambio en el valor de referencia para el modelo
t = 30. El modelo es diseñado de modo que sea dos veces más rápido que
cuando se diseña L. La simulación muestra que los problemas de regulación
y de servo se pueden separar y dar dinámicas diferentes.

5.10. Un ejemplo de diseño


Para ilustrar el método de diseño, se considerará el control de una unión
elástica de un robot. Considérese un motor con constante de corrinte KI
que alimenta (maneja) una carga que consiste de dos masa acopladas con un
resorte constante K, como se muestra en la …gura 5.24.
Se supone que la fricción y el amortiguamiento pueden ser despreciados. La
señal de entrada es la corriente del motor I. Las velocidades angulares, y los
ángulos de las masas son ! 1 , ! 2 , '1 y '2 ; los momentos de inercia son J1 y
J2 . Se supone que hay un amortiguamiento relativo, d, en el resorte y que la
primera masa podría ser perturbada por un torque v. Finalmente, la salida
del proceso es la velocidad angular ! 2 . La …gura 5.25 muestra los diagramas
de cuerpo libre de J1 y J2 .
Aplicando la segunda ley de Newton para sistemas rotacionales se tiene:

d! 1
v + KI u = J 1 + d (! 1 ! 2 ) + K ('1 '2 )
dt
d! 2
0 = d (! 1 ! 2 ) + K ('1 '2 ) J2
dt
5.10 Un ejemplo de diseño 187

1.5

1
(a)
0.5 y
ym
0
0 10 20 30 40 50

2
u
1
(b)

0
-1
0 10 20 30 40 50

0.2
(c)

0.1 v
v^
0

0 10 20 30 40 50
Tiempo

Figura 5.23: Control del integrador doble usando el controlador (5.39). (a)
Salida y y salida del modelo ym , (b) señal de control u, (c) perturbación v y
perturbación estimada v^.

Introduciendo las variables de estado:

x1 = '1 '2
!1
x2 =
!0
!2
x3 =
!0

en donde
s
K (J1 + J2 )
!0 =
J 1 J2
188 Diseño por reubicación de polos por el método de espacio de estado

Figura 5.24: Brazo de un robot ‡exible

Figura 5.25: Diagrama de cuerpo libre para J1 y J2

Nótese que x_ 1 = '_ 1


'_ 2 = ! 0 x2 ! 0 x3 . El proceso es entonces descrito por
2 3 2 3 2 3
0 1 1 0 0
dx
= !0 4 1 1 1
5 x + 4 5 u + 4 5v (5.73)
dt
2 2 0 0
y = 0 0 !0 x
en donde
J1 d d KI 1
= , 1 = , 2 = , = , =
J1 + J2 J1 ! 0 J2 ! 0 J1 ! 0 J1 ! 0
Los siguientes valores han sido utilizados en el ejemplo: J1 = 10
9
, J2 = 10,
K = 1, d = 0:1, KI = 1, lo cual da ! 0 = 1. Con estos valores, el proceso
(5.73) tiene 3 polos, p1 = 0, p2;3 = 0:05 j0:999, y un zero Z1 =0 10.
Nótese que el sistema tiene un integrador puro. Los polos complejos tienen
un amortiguamiento de p = 0:05 y una frecuencia natural ! p = 1 rad-seg:La
grá…ca de Bode del proceso se muestra en la …gura 5.26 y la respuesta al
impulso en la …gura 5.27.
Especi…caciones: se desea que el sistema en lazo cerrado tenga una respuesta
desde la señal de referencia tal que los modos dominantes tengan una
frecuencia natural ! m = 0:5 rad-seg. y un amortiguamiento m = 0:7.
5.10 Un ejemplo de diseño 189

0
Ganancia(dB)

-100

-200

-1 0 1
10 10 10

0
Fase (grados)

-100

-200

-300
-1 0 1
10 10 10
Frecuencia (rad/s)

Figura 5.26: Grá…ca de bode del proceso de brazo ‡exible del robot.

0.2

0.1
y

0
0 25 50 75
Tiempo

Figura 5.27: Respuesta al impulso del brazo ‡exible del robot.


190 Diseño por reubicación de polos por el método de espacio de estado

Selección del intervalo de muestreo: El modelo deseado tiene una frecuencia


natural ! m = 0:5 rad-seg. Utilizando la regla dada por la ecuación (5.17) da
h = 0:5 segundos como una selección razonable para el intervalo de muestreo.
Esto da una frecuencia de Nyquist WN = h = 6 rad-seg.
En este primer diseño no se consideran perturbaciones, y el diseño es hecho
para la planta únicamente.
Diseño de la realimentación de estado: Se supone que todos los estados son
medidos. El sistema es de tercer orden, lo cual implica que los tres polos
pueden ser reubicados usando el controlador
u (k) = Lx (k) + LC r (k) (5.74)
Los polos deseados se especi…can por
s2 + 2 m!ms + ! 2m (s + 1!m) =0 (5.75)
Seleccionando 1 = 2 (nótese que el polo 1 ! m está más lejos del eje
imaginario que los polos complejos conjugados), los polos deseados son
s1;2 = 0:35 j0:3571
s3 = 1
Trans…riendo estos polos al sistema discretizado con h = 0:5 se obtiene
z1;2 = ehs1;2 = 0:826 j0:149
z3 = ehs3 = 0:606
Es decir, el polinomio característico del sistema discreto en lazo cerrado es:
(z z1 ) (z z2 ) (z z3 ) = z 3 2:258z 2 + 1:705z 0:427
el cual debe ser igual al det (zI + L) para determinar el vector L que
contiene las ganancias de la realimentación de estado, en donde y se
obtienen discretizando 5.73 con h = 0:5.
Si se usa Matlab, por ejemplo y se de…nen las matrices A; B; C; y D del
sistema análogo se pueden usar los siguientes comandos
%modelo analogo en espacio de estados
sisc=ss(A,B,C,D)
%la funcion sisc discretiza el sistema continuo
%con h=0.5 y con un retenedor de orden cero
sisd=c2d(sisc,0.5,’zoh’)
5.10 Un ejemplo de diseño 191

r (k ) y (k )
Lc H lc (z )

Figura 5.28: Diagrama de bloques que muestra una manera simple de


introducir la señal de referencia de un controlador con realimentación de
estado.

Utilizando el Matlab se obtiene:


2 3 2 3
0:8796 0:4676 0:4676 0:1084
= 4 0:4209 0:8495 0:1505 5 ; = 40:42385
0:0468 0:0167 0:9833 0:0029
De:
det (zI + L) = z 3 2:258z 2 + 1:705z 0:427
y comparando los coe…cientes de términos semejantes se obtienen tres
ecuaciones lineales de las cuales se puede hallar L = l1 l2 l3 .
También se puede utilizar el comando acker de Matlab:
%funcion que implementa la formula de Ackermann
L=acker(sisd.a,sisd.b,P_C)
en donde PC es un vector que contiene los polos deseados del sistema discreto
en lazo cerrado
T
PC = z1 z2 z3
Utilizando la anterior función
L= 0:3449 1:1552 0:7688
Para el diseño de LC considérese el sistema de la …gura 5.28, en donde Hl c (z)
es la función de transferencia del sistema discreto en lazo cerrado usando
realimentación del estado. El parámetro LC se determina de modo que la
ganancia en estado estacionario desde r hasta y es la unidad, es decir, no se
introduce un integrador en le controlador.
La función de transferencia en lazo cerrado se peude hallar usando el comando
ss2tf del Matlab que convierte un modelo de espacio de estado a su función
de transferencia. Haciéndolo se obtiene
0:0029z 2 + 0:0071z + 0:0007
Hl c (z) =
z 3 2:258z 2 + 1:7056z 0:4269
192 Diseño por reubicación de polos por el método de espacio de estado

Como se desea que en estado estacionario la salida sea igual a la señal de


referencia, cuando ésta es un escalón, entonces

1 z
yss (k) = l m y (k) = l m 1 z LC H l c (z) = LC Hl c (1) = 1
k!1 z!1 z 1
Así
1
LC = = 1:9346
Hl c (1)
La …gura 5.29 muestra el comportamiento del sistema en lazo cerrado cuando
el controlador por realimentación de estado (5.74) es utilizado.

1.5

1
y

0.5

0
0 10 20 30 40 50 60 70 80

1
u

-1
0 10 20 30 40 50 60 70 80
Tiempo

Figura 5.29: Salida y entrada cuando la señal de referencia r es un escalón y


la perturbación v es un pulso corto.

La señal de referencia es un escalón en t = 0 y la perturbación v es un pulso


en t = 25 de altura 10 y una duración de 0:1 unidades de tiempo.
Diseño del observador. Se supone ahora que solo la salida puede ser medida.
Los estados se reconstruyen usando un observador completo de estado de la
forma (5.33). Los valores propios de KC se escogen de la misma manera
que los polos en lazo cerrado, pero un factor 0 más lejos del origen, es decir,
5.10 Un ejemplo de diseño 193

en el tiempo continuo se supone que se tiene la ecuación característica del


observador:
2
s2 + 2 m 0!ms +( 0!m) (s + 0 1!m) =0

Seleccionando 0 = 2 se tiene

s2 + 1:4s + 1 (s + 2) = 0
s1;2 = 0:7 j0:714; s3 = 2

El polo más rápido equivalente en tiempo continuo del sistema en lazo cerrado
cuando se usa el observador es 0 1!m = 2. Esto implica que el intervalo
de muestreo (h = 0:5) es un poco grande. Sin emabrgo, no hay diferencia
signi…cativa en la respuesta cuando h se disminuye a 0:25.
Trans…riendo los anteriores polos al observador discretizado con h = 0:5 se
obtiene:

z1;2 = ehs1;2 = 0:66 j0:246


z3 = ehs3 = 0:368

De la ecuación de salida

y (k) = Cx (k) = 0 0 1 x (k)

en decir
C= 0 0 1
y con
(z z1 ) (z z2 ) (z z3 ) = det (zI + KC)
se pueden obtener las ganancias K del observador.
Puesto que det (zI + KC) = det (zI + KC)T =
T
det zI + C T K T se puede usar la fórmula de Ackermann. Usando
Matlab:

Kt=acker(Phi’,C’,P_0)
K=Kt’

se obtiene
T
K = 3:5454 4:5590 1:0244
194 Diseño por reubicación de polos por el método de espacio de estado

r (k )
Lc
v(k )

u (k ) y (k )
−L ++ ++ Proceso
xˆ(k )

xˆ(k + 1) xˆ(k ) yˆ(k )


+
Γ ++ q −1 C − +

Figura 5.30: Esquema para el simulink del ejemplo de diseño.

La …gura 5.31 muestra el esquema de la …gura 5.29 cuando se usa un


observador.
Resumen. El ejemplo muestra el diseño usando realimentación del estado y
el observador. La respuesta al cambio en el valor de referencia es la misma,
ya que el sistema y el observador tienen los mismos valores iniciales. La
respuesta a la perturbación se deteriora ligeramente cuando el observador es
usado, comparada con la realimentación directa del estado. El observador es
dos veces más rápido que la respuesta deseada del sistema en lazo cerrado.
Un aspecto importante del problema de control que no ha sido considerado
es el efecto de la incertidu,bre del modelo. Nótese que no hay integradores
en el controlador. El error de estado estacionario será cero aún en presencia
de una perturbación ya que la dinámica del proceso tiene un integrador.

5.11. Conclusiones
Este capítulo muestra como los problemas de diseño del regualdor y del
servo se pueden resolver usando reubicación de polos y observadores. La
solución tiene 3 componentes principales: la matriz de realimentación L,
el observador y la respuesta del modelo. La matriz L se escoge de modo
que las perturbaciones de carga decaigan adecuadamente usando las técnicas
discutidas en la regulación por realimentación de estado. El observador se
5.11 Conclusiones 195

1.5

1
y

0.5

0
0 10 20 30 40 50 60 70 80

1
u

-1
0 10 20 30 40 50 60 70 80
Tiempo

Figura 5.31: Lo mismo que en la …gura 5.29, pero utilizando realimentación


de los estados observados cuando 0 = 2.

diseña considerando las perturbaciones de carga y el ruido en la medida,


como se discutió en la sección de realimentación de la salida.
Existe un compromiso importante entre convergencia rápida y sensitividad
a errores de medida. Las propiedades de regulación se tienen en cuenta con
la matriz L y el observador. El modelo de respuesta y el modelo del proceso
inverso son escogidos para obtener el comportamiento deseado del servo en
respuesta a señales de comando.
El diseño por reubicación de polos es hecho para el caso escalar. Con n
parámetros en el vector de realimentación del estado, es posible ubicar n
polos arbitrariamente, si el sistema es alcanzable.
En el caso multivariable hay más grados de libertad.
196 Diseño por reubicación de polos por el método de espacio de estado

5.12. Ejercicios propuestos


Ejercicio 5.2 Dado el sistema

1:0 0:1 1:0


x (k + 1) = x (k) + u (k)
0:5 0:1 0:0
y (k) = 1:0 1:0 x (k)

Determinar un controlador por realimentación lineal del estado:

u (k) = Lx (k)

tal que los polos en lazo cerrado estén en 0:1 y 0:25.

Ejercicio 5.3 Hallar el controlador dead beat para el motor normalizado de


la …gura 5.32y con modelo de espacio de estados continuo dado por

u (t ) 1 x1 1 y (t ) = x2
s +1 s

voltaje velocidad

Figura 5.32: Sistema del problema 5.3.

1 0 1
x_ = x+ u
1 0 0
y = 0 1 x
T
Suponer que x (0) = 1 1 . Hallar el intervalo de muestreo tal que la señal
de control sea menor qeu uno en magnitud. Se puede asumir que el máximo
valor u (k) es en k = 0.

Ejercicio 5.4 Considérese el sistema continuo

3 1 0
x_ = x+ u
0 2 1
y = 1 0 x
5.12 Ejercicios propuestos 197

Muestreándolo con h = 0:2 se obtiene:


0:55 0:12 0:01
x (k + 1) = x (k) + u (k)
0 0:67 0:16

a. Determinar una ley de control por realimentación de estado tal que el


polinomio característico en lazo cerrado sea z 2 0:63z + 0:21.

b. Hallar el correspondiente polinomio característico de tiempo continuo


y discutir la escogencia del periodo de muestreo.
T
c. Simular el sistema en lazo cerrado cuando x (0) = 1 0 .

Ejercicio 5.5 El sistema

0:78 0 0:22
x (k + 1) = x (k) + u (k)
0:22 1 0:03
y (k) = 0 1 x (k)

representa el motor normalizado para un h = 0:25. Hallar observadores de


estado basados en la salida mediante

a. Cálculo directo

b. Un sistema dinámico que da x (k + 1 j k)

Sea el observador del tipo dead beat, es decir, los polos del observador deben
estar en el origen.

Ejercicio 5.6 Hallar el observador completo de estado para el sistema de


tanques del problema 2.6. Escoger la ganancia del observador tal que éste sea
2 veces más rápido que el sistema en lazo abierto.

Ejercicio 5.7 Dado el sistema discreto

0:5 1 0:2 1
x (k + 1) = x (k) + u (k) + v (k)
0:5 0:7 0:1 0
y (k) = 0 1 x (k)

en donde v es una perturbación constante. Hallar controladores tal que la


in‡uencia de v se puede eliminar en estado estacionario en cada caso:
198 Diseño por reubicación de polos por el método de espacio de estado

a. El estado y v se pueden medir.

b. El estado puede ser medido.

c. Sólo la salida puede ser medida.

Ejercicio 5.8 Considere el sistema de 2 tanques del ejercicio 2.6 para h =


12 segundos.

a. Hallar un controlador por realimentación del estado tal que los polos en
lazo cerrado son dados por la ecuación característica z 2 1:55z +0:64 =
0. Esto corresponde a = 0:7 y ! = 0:027 radianes/segundo.

b. Introducir una señal de comando (referencia) y hallar un controlador


tal que el error de estado estacionario entre la señal de comando y la
salida sea cero; es decir, introducir un integrador en el sistema.

c. Simular el sistema usando los reguladores en a. y b.

Ejercicio 5.9 Considérese el integrador doble con una perturbación de carga


actuando a la entrada del proceso. La perturbación puede ser descrita como
una sinusoide con frecuencia ! 0 , pero con amplitud y fase desconocidas.
Diseñar un controlador por realimentación de estado y un observador tal que
no exista error de estado estacionario debido a la perturbación sinusoidal.

Ejercicio 5.10 Considérese el proceso descrito por

0:9 0 1
x (k + 1) = x (k) + u (k)
1 0:7 0
y (k) = 0 1 x (k)

a. Hallar un controlador dead beat que de una ganancia estática unitaria,


es decir, hallar Lc y L en el controlador:

u (k) = Lc uc (k) Lu (k)

b. Hallar el rango de los parámetros de L antes de que el sistema en lazo


cerrado se vuelva inestable.
Apéndice A

Implementación en tiempo real

A continuación se presenta la implementación en tiempo real para los


algoritmos de control en tiempo discreto correspondiente a realimentación
de variables de estado con ganancia en lazo abierto, acción integral y control
de dos grados de libertad, usando MatlabTM y una tarjeta de adquisición de
datos USB de National InstrumentsTM .

A.1. Ganancia en lazo directo


ai=analoginput(’nidaq’,’Dev4’);
set(ai,’InputType’,’Differential’);
addchannel(ai,0);
ao=analogoutput(’nidaq’,’Dev4’);
addchannel(ao,0);
%inicializacion en tiempo real
t_muestreo=0.5;
%observador
a=[-2.8 -5.6 -8;1 0 0;0 1 0];
b=[3;0;0];
c=[0 0 4/3];
d=0;
h_discreto=c2d(ss(a,b,c,d),t_muestreo);
lt=acker(h_discreto.a’,h_discreto.c’,[0.1 0.1 0.2]);
L=lt’;
%controlador

199
200 Implementación en tiempo real

a_z=[h_discreto.a zeros(3,1);-c 1];


b_z=[h_discreto.b;0];
k_t=acker(a_z,b_z,[0.2 0.2 0.3 0.2]);
kd=k_t(1:3);
sysdlc=ss(h_discreto.a-h_discreto.b*kd,h_discreto.b,...
h_discreto.c,h_discreto.d,t_muestreo);
g=dcgain(sysdlc);
%datos para graficas
tf=20;
n=20/t_muestreo;
y=zeros(n,1);
yest=zeros(n,1);
u=zeros(n,1);
t=t_muestreo:t_muestreo:t_muestreo*length(y);
j=1;
%inicializacion de datos
xest=zeros(3,n);
%vector ded referencia
r=zeros(n,1);
r(end/2+1:end)=2*ones(n/2,1);
t_inicial=clock;
while(j*t_muestreo<=tf),
if(etime(clock,t_inicial)>=t_muestreo)
t_inicial=clock;
putsample(ao,u(end));
y(end)=getsample(ai);
u(end)=r(j)*(1/g)-kd*xest(:,end-1);
%algoritmo del observador
yest(end)=h_discreto.c*xest(:,end-1);
xest(:,end)=h_discreto.a*xest(:,end-1)+...
h_discreto.b*u(end)+L*(y(end)-yest(end));

%graficos
j=j+1;
subplot(211)
plot(t,y,’b’,t,u,’r--’,t,yest,’g’)
ylim([-0.5 5.5]);
legend(’y’,’u’,’y^’)
A.2 Acción integral 201

subplot(212)
plot(t,xest)
ylim([-3.5 3.5]);
legend(’x1^’,’x2^’,’x3^’)

y(1:end-1)=y(2:end);
yest(1:end-1)=yest(2:end);
u(1:end-1)=u(2:end);
xest(:,1:end-1)=xest(:,2:end);
end
end

delete(ai)
delete(ao)
clear ai
clear ao

A.2. Acción integral


ai=analoginput(’nidaq’,’Dev4’);
set(ai,’InputType’,’Differential’);
addchannel(ai,0);
ao=analogoutput(’nidaq’,’Dev4’);
addchannel(ao,0);

%inicializacion en tiempo real


t_muestreo=0.5;

%datos del observador


a=[-2.8 -5.6 -8;1 0 0;0 1 0];
b=[3;0;0];
c=[0 0 4/3];
d=0;
%modelo discreto
h_discreto=c2d(ss(a,b,c,d),t_muestreo);
lt=acker(h_discreto.a’,h_discreto.c’,[0.1 0.1 0.2]);
L=lt’;
202 Implementación en tiempo real

%controlador
a_z=[h_discreto.a zeros(3,1);-c 1];
b_z=[h_discreto.b;0];
k_t=acker(a_z,b_z,[0.2 0.2 0.2 0.1]);
kd=k_t(1:3);
kz=-k_t(4);

%datos para graficas


tf=20;
n=20/t_muestreo;
y=zeros(n,1);
yest=zeros(n,1);
u=zeros(n,1);
t=t_muestreo:t_muestreo:t_muestreo*length(y);
j=1;

%inicializacion de datos
xest=zeros(3,n);

%vector de referencia
r=zeros(n,1);
r(end/2+1:end)=2*ones(n/2,1);
e=0;
t_inicial=clock;
while(j*t_muestreo<=tf),
if(etime(clock,t_inicial)>=t_muestreo)
t_inicial=clock;
putsample(ao,u(end));
y(end)=getsample(ai);
e=e+t_muestreo*(r(j)-y(end));
u(end)=e*kz-kd*xest(:,end-1);
%algoritmo del observador
yest(end)=h_discreto.c*xest(:,end-1);
xest(:,end)=h_discreto.a*xest(:,end-1)+...
h_discreto.b*u(end)+L*(y(end)-yest(end));

%graficos
A.3 Control de dos grados de libertad 203

j=j+1;subplot(211)
plot(t,y,’b’,t,u,’r--’,t,yest,’g’)
ylim([-0.5 5.5]);
legend(’y’,’u’,’y^’)
subplot(212)
plot(t,xest)
ylim([-3.5 3.5]);
legend(’x1^’,’x2^’,’x3^’)

y(1:end-1)=y(2:end);
yest(1:end-1)=yest(2:end);
u(1:end-1)=u(2:end);
xest(:,1:end-1)=xest(:,2:end);
end
end

delete(ai)
delete(ao)
clear ai
clear ao

A.3. Control de dos grados de libertad


ai=analoginput(’nidaq’,’Dev4’);
set(ai,’InputType’,’Differential’);
addchannel(ai,0);
ao=analogoutput(’nidaq’,’Dev4’);
addchannel(ao,0);

%inicializacion en tiempo real


t_muestreo=0.5;

%datos del observador


a=[-2.8 -5.6 -8.1;1 0 0;0 1 0];
b=[3;0;0];
c=[0 0 4/3];
204 Implementación en tiempo real

d=0;
h_discreto=c2d(ss(a,b,c,d),t_muestreo);
lt=acker(h_discreto.a’,h_discreto.c’,[0.1 0.1 0.2]);
L=lt’;

%diseno del controlador


k=acker(h_discreto.a,h_discreto.b,[0.2 0.2 0.3]);

%matriz de transformacion para la forma canonica controller


detA=poly(h_discreto.a);
i_co_c=[1 detA(2:end-1);0 1 detA(2:end-2);0 0 1];
co_c=inv(i_co_c);
co=ctrb(h_discreto.a,h_discreto.b);
T=co_c*inv(co);

%polos deseados
P_i=4*eig(a);
P=P_i’;
P_deseado=exp(t_muestreo*P);
P_servo=poly(P_deseado);
Am=[-P_servo(2:end);1 0 0;0 1 0];
Cm=h_discreto.c*inv(T);
lambda=polyval(P_servo,1)/polyval(Cm,1);
Bm=[lambda;0;0];

%calculo Cff
A=T*h_discreto.a*inv(T);
Cff=-A(1,:)+Am(1,:);

%datos para graficas


tf=20;
n=20/t_muestreo;
y=zeros(n,1);
yest=zeros(n,1);
u=zeros(n,1);
t=t_muestreo:t_muestreo:t_muestreo*length(y);
j=1;
A.3 Control de dos grados de libertad 205

%inicializacion de datos
xest=zeros(3,n);
xm=zeros(3,1);

%vector de referencia
r=zeros(n,1);
r(end/2+1:end)=2*ones(n/2,1);

t_inicial=clock;
while(j*t_muestreo<=tf),
if(etime(clock,t_inicial)>=t_muestreo)
t_inicial=clock;
putsample(ao,u(end));
y(end)=getsample(ai);
u(end)=Cff*xm+lambda*r(j)+k*inv(T)*(xm-T*xest(:,end-1));
yest(end)=h_discreto.c*xest(:,end-1);
xest(:,end)=h_discreto.a*xest(:,end-1)+...
h_discreto.b*u(end)+L*(y(end)-yest(end));
xm=Am*xm+Bm*r(j);
%graficos
j=j+1;
subplot(211)
plot(t,y,’b’,t,u,’r--’,t,yest,’g’)
ylim([-0.5 5.5]);
legend(’y’,’u’,’y^’)
subplot(212)
plot(t,xest)
ylim([-3.5 3.5]);
legend(’x1^’,’x2^’,’x3^’)

y(1:end-1)=y(2:end);
yest(1:end-1)=yest(2:end);
u(1:end-1)=u(2:end);
xest(:,1:end-1)=xest(:,2:end);
end
end

delete(ai)
206 Implementación en tiempo real

delete(ao)
clear ai
clear ao
Apéndice B

Diseño de sistemas de control


en el espacio de estados en
tiempo continuo

Este capítulo presenta métodos de diseño basados en modelos internos del


sistema, denominados por reubicación de polos desde el punto de vista de la
realimentación de estado. En lugar de realimentar la salida del sistema y (t),
se realimenta el vector de estado del sistema x (t), ya que el vector de estado
resumen toda la información actual del sistema. La realimentación de las
variables de estado puede ser usada para modi…car las frecuencias naturales
del sistema, y en particular, hacerlas todas estables, siempre y cuando la
realización usada para de…nir los estados del sistema sea controlable por
realimentación de las variables de estado, es decir la matriz de controlabilidad
C de la realización fA; B; Cg tenga rango n. El hecho de que el diseño se
formula en términos de obtener un sistema en lazo cerrado con los polos
especi…cados se conoce como reubicación de polos. Incialmente, para el caso
de realimentación de las variables de estado, se supone que todas las variables
de estado son medidas y que las perturbaciones son impulsos ampliamente
espaciados.
A través de la realimentación lineal de las variables de estado se pueden
resolver dos problemas fundamentales: el problema de regulación y el
problema de seguimiento. El problema de regulación consiste en llevar todos
los estados del sistema a cero, mientras que el problema de seguimiento
consiste en que el sistema siga una referencia.

207
208Diseño de sistemas de control en el espacio de estados en tiempo continuo

Se discute el problema de reconstruir o estimar los estados a partir de las


salidas medidas y las entradas aplicadas. Aquí es necesario veri…car que la
realización usada para de…nir los estados del sistema sea observable, es decir
que la matriz de observabilidad O de la realización fA; B; Cg tenga rango
n. El problema de estimación de estados se realiza a través de observadores.
Combinando los observadores con la realimentación de estados , se obtiene
una solución al problema de regulación para el caso de realimentación de
estados.
También se analiza el caso de perturbaciones más generales, considerándolas
como salidas de sistemas dinámicos cuyas entradas son impulsos. Así,
se pueden tratar casos clásicos de perturbaciones tales como: escalones,
sinusoides, etc.. Aquí, se diseñan observadores especí…cos para estimar las
perturbaciones y compensar su efecto en el sistema dinámico.
Luego se discute el problema de seguimiento, el cual se formula en el espacio
de estados. Combinando este resultado, con los anteriores se obtiene un
controlador que puede seguir señales de referencia y rechazar perturbaciones
que actúan sobre el sistema. La estructura del controlador obtenida es muy
interesante, ya que las diferentes tareas del controlador son separadas en
forma natural.

B.1. Regulación por realimentación de


estados
Considere un sistema dinámico descrito por la ecuación (B.1)

x_ (t)= Ax (t) +Bu (t) (B.1)


y (t)= Cx (t) (B.2)

con el polinomio característico:

a (s) = det (sI A) = sn + a1 sn 1


+ + an 1 s + an (B.3)

Se desea modi…car el sistema dado, mediante realimentación de las variables


de estado, para obtener un nuevo sistema con valores propios especi…cados,
o en otras palabras, para obtener un polinomio caracterítico deseado (s).
Es decir,
(s) = sn + 1 sn 1 + + n 1s + n (B.4)
B.1 Regulación por realimentación de estados 209

Para tal …n se utiliza como señal de control una realimentación lineal


ponderada de las variables de estado de la forma
u (t) = Kx (t) (B.5)
donde K es llamada la matriz de ganancias de realimentación. El uso de
u (t) = Kx (t) en lugar de u (t) = Kx (t) es puramente convencional, ya
que la realimentación es usualmente negativa. Al reemplazar la ecuación (B.5)
en la ecuación (B.1) se obtiene
x_ (t) = Ax (t) BKx (t)
x_ (t) = (A BK) x (t) (B.6)
Este esquema de regulación se observa en la …gura B.1.

Figura B.1: Reubicación de polos por realimentación de variables de estado

El sistema dinámico resultante de la ecuación (B.6) tiene como polinomio


característico:
aK (s) = det (sI A + BK)
El objetivo es seleccionar los valores de K tal que aK (s) = (s). Estos
valores existen únicamente si el sistema de la ecuación (B.1) es controlable,
es decir, si la matriz de controlabilidad C de la realización fA; B; Cg tiene
rango n.

B.1.1. Cálculo de la ganancia de realimentación


Se presentará a continuación el caso general para el cálculo de la ganancia de
realimentación. La solución del problema de reubicación de polos será dada
210Diseño de sistemas de control en el espacio de estados en tiempo continuo

para sistemas con una señal de entrada u (t). Considere un modelo de espacio
de estados descrito por la ecuación (B.7).

x_ (t) = Ax (t) +Bu (t) (B.7)


y (t) = Cx (t) (B.8)

y con polinomio característico a (s) dado por la ecuación B.3 y supóngase que
la matriz de controlabilidad C es de rango n, es decir, el sistema es controlable.
El sistema puede ser transformado a la forma canónica controller a través de
la transformación xc (t) = Tx (t) descrita en la sección 4.2; la ecuación de
estado transformada es

x_ c (t) = Ac xc (t) +Bc u (t) (B.9)

donde Ac y Bc son las matrices del sistema en la forma canónica controller


de la forma 2 3 2 3
a1 a2 an 1
6 1 0 0 7 607
6 7 6 7
Ac = 6 .. . . . . .. 7 , Bc = 6 .. 7 (B.10)
4 . . . . 5 4.5
0 1 0 0
Los coe…cientes del polinomio característico a (s) dado por la ecuación (B.3)
aparecen explícitamente en esta expresión. Si Kc es el vector de ganancia de
realimentación para la forma canónica controller dado por

Kc = Kc1 Kc1 Kcn

y con
u (t) = Kc xc (t)
entonces al reemplazar en la ecuación (B.9) se tiene

x_ c (t) = (Ac Bc Kc ) xc (t)

de forma que
2 3
(a1 + Kc1 ) (a2 + Kc2 ) (an + Kcn )
6 1 0 0 7
6 7
Ac Bc Kc = 6 .. .. .. .. 7
4 . . . . 5
0 1 0
B.1 Regulación por realimentación de estados 211

donde el polinomio característico del sistema en lazo cerrado estaría dado


por

det (sI Ac + Bc Kc ) = sn + (a1 + Kc1 ) sn 1


+ + (an + Kcn ) (B.11)

y al comparar con el polinomio caracterítico deseado (s) de la ecuación


(B.4) los valores Kc quedan determinados en términos de los coe…cientes 1 ,
2 , . . . , n y a1 , a2 , . . . , an como

Kci = i ai (B.12)

Para obtener la matriz de ganancia de realimentación K para el modelo de


espacio de estados descrito por la ecuación (B.7), se tiene

u (t) = Kc xc (t) = Kc Tx (t)

de donde
K = Kc T (B.13)

y puesto que la matriz de transformación T está dada en términos de las


matrices de controlabilidad por

1
T = Cc C

donde Cc es la matriz de controlabilidad de la forma canónica controller


dada por la realización fAc ; Bc g, entonces de la ecuación (B.13) la matriz de
ganancias está dada por

1 1
K = Kc Cc C = 1 a1 2 a2 n an Cc C (B.14)

Esta ecuación se puede expresar de una forma ligeramente diferente como:

1
K= 0 0 1 C (A) (B.15)

donde 0 0 1 C 1 es la última …la de C 1 y (A) es la matriz


A evaluada en el polinomio deseado (s). La ecuación (B.15) es llamada
fórmula de Ackerman.
212Diseño de sistemas de control en el espacio de estados en tiempo continuo

B.1.2. Realimentación de estado y los ceros de la


función de transferencia
Se ha demostrado que mediante la realimentación del estado se puede cambiar
el denominador de la función de transferencia de a (s) a cualquier polinomio
mónico (s) del mismo grado. Se analizará ahora el efecto sobre los ceros
b (s).
Una manera simple es suponer que la realización es de tipo controller
fAc ; Bc ; Cc g. Nótese que después de realimentar el vector de estados la
realización es fAc Bc Kc ; Bc ; Cc g, por lo que la función de transferencia
está dada por
Y (s) b (s)
=
R (s) (s)
Es decir, la realimentación del estado no afecta los ceros de la función
de transferencia, a menos por supuesto, que estos sean cancelados por la
selección adecuada del nuevo polinomio del denominador (s). Esto resuelve
el problema de los ceros ubicados indeseablemente (limitaciones en las
características de fase y atraso del sistema).

B.2. Perturbaciones
Es altamente deseable manejar otras perturbaciones diferentes a impulsos,
o equivalentes a estados iniciales perturbados. Una manera de hacer esto
es considerar perturbaciones que son generadas por impulsos enviados
a sistemas dinámicos. De esta manera, es posible obtener muchos tipos
de perturbaciones tales como escalones o sinusoides. Para se especí…cos,
supóngase que el sistema es descrito por

x_ (t) = Ax (t) +B (u (t) + v (t))

es decir
x_ (t) = Ax (t) +Bu (t) + Bv (t) (B.16)
donde v (t) es una perturbación descrita por

!_ (t) = A! ! (t)
v (t) = C! ! (t)
B.2 Perturbaciones 213

con condiciones iniciales dadas. La matriz A! típicamente tiene valores


propios sobre el eje imaginario o en el semiplano complejo derecho. Un caso
común es cuando la perturbación v (t) es una constante. Ésta se obtiene con

A! = 0, C! = 1

Otro caso es el de perturbaciones sinusoidales, que corresponde a

0 !0
A! = , C! = 1 0
!0 0

y un caso combinado con perturbación senoidal y perturbación constante,


estaría dado por
2 3
0 !0 0
A! = 4 ! 0 0 05 , C! = 1 0 1
0 0 0

El sistema completo incluyendo la perturbación puede ser descrito como

x_ (t) = Ax (t) +Bu (t) + BC! ! (t) (B.17)


!_ (t) = A! ! (t) (B.18)

La …gura B.2 muestra el diagrama de bloques de una planta con perturbación


correpondiente a las ecuaciones (B.17) y B.18.
Ahora, se de…ne el vector de estado aumentado:

x
(B.19)
!

de forma tal que las ecuaciones (B.17) y (B.18) se pueden reescribir usando
(B.19) como
x_ A BC! x B
= + u (B.20)
!_ 0 A! ! 0
Así, se tiene un problema de la misma forma que el problema básico
de reubicación de polos. Hay, sin embargo, una diferencia importante: el
sistema (B.20) no es completamente controlable. Los polos asociados con la
descripción de la perturbación, es decir, los valores propios de A! , no pueden
ser afectados completamente por la realimentación. Esto es muy natural, ya
214Diseño de sistemas de control en el espacio de estados en tiempo continuo

Figura B.2: Sistema con perturbación generalizada

que las perturbaciones son variables exógenas que no están in‡uenciadas por
el control.
Si se considera que la perturbación v (t) es medible, se puede de…nir la
realimentación lineal de estado como

u (t) = Kx (t) K! v (t) (B.21)


u (t) = Kx (t) K! C! ! (t) (B.22)

La ley de control de la ecuación (B.22) al reemplazarla en las ecuaciones


(B.17) y (B.18) genera el siguiente sistema en lazo cerrado:

x_ (t) = (A BK) x (t) + (B BK! ) C! ! (t) (B.23)


x_ (t) = (A BK) x (t) + (B BK! ) v (t) (B.24)
!_ (t) = A! ! (t) (B.25)

que expresa como el sistema en lazo cerrado es in‡uenciado por el control.


Nótese que la ley de control en la ecuación (B.21) se puede interpretar como
una combinación de un término de realimentación Kx (t) y un término
B.3 Observadores 215

en lazo directo de las perturbaciones medidas K! v (t). Si la realización


fA; Bg es controlable, se puede encontrar la matriz de realimentación K
tal que la matriz del sistema en lazo cerrado (A BK) tenga valores
propios especi…cados. De esta forma, el término de la solución que es causado
por los valores iniciales decae adecuadamente. La matriz A! no puede ser
in‡uenciada por la realimentación. El efecto de la perturbación sobre el vector
x (t) en la ecuación(B.24) puede ser reducido por una selección adecuada de
K! , el cual debe ser escogido de forma tal que la matriz B BK! sea cercana a
cero, o cero. Por ejemplo, para que B BK! = 0 se debe seleccionar K! = 1:

B.3. Observadores
Es poco realístico suponer que todos los estados de un sistema pueden ser
medidos, particularmente si las perturbaciones son parte del vector de estado,
como en la ecuación (B.20). Por esto, es necesario determinar los estados de
la realización, a partir de medidas disponibles: entrada u (t) y salida y (t), y
de un modelo. Para tal …n es necesario que el sistema sea observable, es decir,
que la matriz de observabilidad asociada con la realización fA; B; Cg tenga
rango n. O, si el sistema incluye las perturbaciones en el vector de estado, la
realización asociada a las ecuaciones (B.20) y (B.2) debe ser observable.
De esta forma, un observador de estado es un sistema dinámico que permite
estimar las variables de estado x (t) con base en las mediciones del vector de
salida y (t) y del vector de entrada u (t).

B.3.1. Observador en lazo abierto


Considérese el sistema (B.7). Supóngase que el estado x (t) es aproximado
por el estado x
~ (t) de un modelo dinámico de la forma
~_ (t) = A~
x x (t) +Bu (t) (B.26)
el cual tiene la misma entrada que el sistema (B.7). Si el modelo es perfecto
en el sentido que los elementos de las matrices A y B son idénticos a los
del sistema (B.7) y si las condiciones iniciales son las mismas, entonces el
estado x~ del modelo (B.26) será idéntico al estado x del sistema real (B.7) y
la salida estimada
y~ (t) = C~
x (t) (B.27)
también será idéntica a y (t).
216Diseño de sistemas de control en el espacio de estados en tiempo continuo

Si las condiciones inciales son diferentes, entonces x


~ convergerá a x sólo si el
sistema (B.26) es estable asintóticamente. La …gura B.3 muestra el observador
en lazo abierto descrito por las ecuaciones (B.26) y (B.27).La estimación con

Figura B.3: Observador en lazo abierto

la ecuación B.26 da el estado como una función de las entradas pasadas.


Sin embargo, la estimación se puede mejorar utilizando también las salidas
medidas. Esto puede ser hecho introduciendo realimentación de la diferencia
entre las salidas medidas y (t) y las estimadas y~ (t).

B.3.2. Observador completo


Considere el observador en lazo abierto de la ecuación (B.26). Si se incluye
la diferencia entre la salida medida y la estimada y (t) y~ (t) en la ecuación
B.3 Observadores 217

(B.26), se obtiene

~_ (t) = A~
x x (t) +Bu (t) + L (y (t) y~ (t)) (B.28)

o
~_ (t) = A~
x x (t) +Bu (t) + L (y (t) x (t))
C~ (B.29)
en donde L es una matriz de ganancias. Nótese que el término de
realimentación L (y (t) C~ x (t)) no contribuye si la salida estimada por el
modelo y~ (t) coincide excatamente con las medidas. Para determinar la matriz
L se introduce el error de estimación de las variables de estado como

~e (t) = x (t)
x ~ (t)
x (B.30)

y restando la ecuación (B.29) de (B.7) se tiene

~_ (t) = Ax (t) +Bu (t) A~


x_ (t) x x (t) Bu (t) L (y (t) x (t))
C~
~_ (t) = A (x (t) x
x_ (t) x ~ (t)) L (y (t) C~x (t)) (B.31)

y reemplazando la ecuación (B.8) en (B.31) se tiene

x_ (t) x ~_ (t) = A (x (t) x


~ (t)) L (Cx (t) x (t))
C~
x_ (t) x ~_ (t) = (A LC) (x (t) ~ (t))
x
~_ e (t) = (A LC) x
x ~e (t) (B.32)

Si L se escoge de tal manera que el sistema de la ecuación B.32 sea


asintóticamente estable, entonces el error de estimación x ~e (t) siempre
convergerá a cero. Así, introduciendo realimentación de las medidas en la
estimación, es posible hacer que el error tienda a cero, aún si el sistema
(B.7) es inestable. El sistema en (B.29) es llamado un observador completo o
simplemente un observador para el sistema (B.7), ya que produce el estado
del sistema a partir de medidas de las entradas y las salidas. La …gura
B.4 muestra el diagrama de bloques correspondiente al sistema (B.7) con el
observador (B.29). Falta ahora encontrar una manera deseable para escoger
la matriz L de manera que el sistema B.29 sea estable. Dadas las matrices A
y C, el problema es encontrar una matriz L tal que la matriz A LC tenga
valores propios especi…cados. Ya que una matriz y su transpuesta tienen los
mismos valores propios, el problema es el mismo que encontrar una matriz
LT tal que AT CT LT tenga valores propios especi…cados. sin embargo, este
problema fue resuelto en la sección B.1.1. Si se trasladan aquellos resultados,
218Diseño de sistemas de control en el espacio de estados en tiempo continuo

Figura B.4: Observador completo para el sistema (B.7)

se encuentra que el problema puede ser resuelto si la matriz de observabilidad


transpuesta h i
T
OT = CT AT CT (An 1 ) CT

tiene rango total (rango n). El resultado se puede expresar de la siguiente


manera. Considere el sistema de la ecuación (B.7). Sea (s) un polinomio
de grado n, en donde n es el orden del sistema. Suponiendo que el sistema
es completamente observable, entonces existe una matriz L tal que la matriz
A LC del observador (B.29) tenga polinomio característico (s).

Cálculo de la ganancia del observador


La determinación de la matriz L en el observador (B.29) es el mismo problema
matemático para determinar la matriz de realimentación K en el problema
B.3 Observadores 219

de reubicación de polos. La selección de los polos del observador es un


compromiso entre la sensitividad a los errores de la medida y la recuperación
rápida de los errores iniciales. Un observador rápido convergerá rápidamente,
pero también será sensitivo a los errores de medida.
La determinación de la matriz L es el problema dual de hallar la matriz de
ganancias K para reubicación de polos por realimentación de variables de
estado. Este problema es resuelto por la fórmula de Ackerman, utilizando las
relaciones
K ! LT , C ! OT , A ! AT , B = CT
De la ecuación (B.15) se obtiene que L es dada por
1
LT = 0 0 1 OT AT (B.33)

o también
1 T
L= (A) O 0 0 1 (B.34)
El polinomio característico de A LC es entonces (s). La dualidad con
el problema de reubicación de polos también implica que L es especialmente
simple para determinar si el sistema está en forma canónica observer.

B.3.3. Observador de orden reducido


En el modelo de espacio de estados de las ecuaciones (B.1) y B.2 es posible
conocer algunas de las variables del vector de estado x (t) directamente. Por
tanto, se puede diseñar un observador de estado de orden reducido, donde se
estimen únicamente las variables de estado restantes. Sean

x1 : vector de estado que se puede medir directamente


x2 : vector de estado que no se puede medir directamente

entonces, se puede dividir el modelo de espacio de estados de la siguiente


manera
x_ 1 A11 A12 x1 B1
= + u (t) (B.35)
x_ 2 A21 A22 x2 B2
y con la ecuación de salida

x1
y (t) = C1 0 (B.36)
x2
220Diseño de sistemas de control en el espacio de estados en tiempo continuo

donde C1 debe ser cuadrada y no singular, por lo que es posible obtener x1


directamente con la relación

x1 = C1 1 y

y cuando las variables de estado correponde directamente a la salida del


sistema, entonces C1 = I. A partir de la ecuación (B.35) se pueden escribir
las ecuaciones para x1 y x2 como

x_ 1 = A11 x1 + A12 x2 + B1 u (B.37)


x_ 2 = A21 x1 + A22 x2 + B2 u (B.38)

y de la ecuación (B.37) se puede obtener la ecuación de salida como

x_ 1 A11 x1 B1 u = A12 x2 (B.39)

donde los términos x_ 1 A11 x1 B1 u corresponden a cantidades conocidas.


La ecuación (B.38) se puede reescribir como

x_ 2 = A22 x2 + A21 x1 + B2 u (B.40)

donde los términos A21 x1 + B2 u son cantidades conocidas. La ecuación B.38


describe la dinámica de cambio de las variables que no pueden ser medidas
directamente. Para estas variables se puede formular un observador como

~_ 2 = A22 x
x ~2 + A21 x1 + B2 u + Lr y
^ ^ x2
C~ (B.41)

donde Lr es la ganancia de realimentación para el observador de orden


reducido, y
^ son las variables conocidas de la ecuación (B.39) dadas por

^ = x_ 1
y A11 x1 B1 u (B.42)

y con C^ = A12 . Se tiene entonces la ecuación para el observador de orden


reducido como

~_ 2 = A22 x
x ~2 + A21 x1 + B2 u + Lr (x_ 1 A11 x1 B1 u ~2 )
A12 x (B.43)

Reescribiendo la ecuación (B.43) se tiene

~_ 2 = (A22
x Lr A12 ) x
~2 + A21 x1 + B2 u + Lr (x_ 1 A11 x1 B1 u) (B.44)
B.3 Observadores 221

donde los términos A21 x1 + B2 u + Lr (x_ 1 A11 x1 B1 u) son conocidos.


Sin embargo, en la ecuación B.44 se tiene el término x_ 1 . Para eliminarlo, se
reescribe la ecuación (B.44) como

~_ 2
x Lr x_ 1 = (A22 Lr A12 ) x
~2 + (A21 Lr A11 ) x1 + (B2 Lr B1 ) u (B.45)

y se le suma y se le resta el término (A22 Lr A12 ) Lr x1 a la ecuación (B.45)


la cual se reescribe como

~_ 2
x Lr x_ 1 = (A22 Lr A12 ) (~
x2 Lr x1 ) (B.46)
+ [(A21 Lr A11 ) + (A22 Lr A12 ) Lr ] x1 + (B2 Lr B1 ) u

Ahora, si se hace el cambio de variable, ~ = x


~2 Lr x1 , se puede plantear la
ecuación (B.46) como

~_ = (A22 Lr A12 ) ~ (B.47)


+ [(A21 Lr A11 ) + (A22 Lr A12 ) Lr ] x1 + (B2 Lr B1 ) u

La ecuación (B.47) describe la dinámica del observador de orden reducido,


donde el vector de estados x
~ (t) puede ser estimado como

I 0
~ (t) =
x x + x
~ (B.48)
0 1 I 2

Si se de…ne el error de estimación como

~e = x
x ~2 x2 = ~ (B.49)

se tiene que la dinámica del error está dada por

~_ e = (A22
x Lr A12 ) x
~e (B.50)

y donde Lr puede ser calculada de acuerdo a la ecuación (B.34) para el


sistema dual AT22 AT12 LTr . En la …gura B.5 se muestra el diagrama de bloques
del observador de orden reducido.

B.3.4. Regulación con un observador completo


A partir del vector de estado estimado x
~ (t) es posible generar una ley de
control de la forma
u (t) = K~x (t) (B.51)
222Diseño de sistemas de control en el espacio de estados en tiempo continuo

Figura B.5: Diagrama de bloques del sistema con observador de orden


reducido

de forma tal, que al reemplazar la ley de control (B.51) en la ecuación de


estado (B.7) se obtiene

x_ (t) = Ax (t) +Bu (t)


x_ (t) = Ax (t) BK~ x (t) (B.52)

Si se reescribe esta ecuación como

x_ (t) = Ax (t) BK~


x (t) + BKx (t) BKx (t)
x_ (t) = (A BK) x (t) + BK (x (t) ~ (t))
x (B.53)

y reemplazando en (B.53) la ecuación (B.30), se tiene

x_ (t) = (A BK) x (t) + BK~


xe (t) (B.54)
B.3 Observadores 223

y con la ecuación (B.54) y la ecuación (B.30) se puede escribir el sistema


aumentado de la forma

x_ (t) A BK BK x (t)
_x =
~e (t) 0 A LC ~e (t)
x

y donde la ecuación característica del sistema aumentado está dada por

A BK BK
det sI = det (sI A + BK) det (sI A + LC)
0 A LC

donde se observa que la dinámica del observador es completamente


independiente de la dinámica del observador. La …gura B.6 muestra el
diagrama de bloques de un sistema de regulación con observador completo.

Figura B.6: Realimentación de variables de estado con observador completo


224Diseño de sistemas de control en el espacio de estados en tiempo continuo

B.3.5. Observador de perturbaciones


Considere el sistema de la ecuación (B.20) con ecuación de salida dada por

x
y (t) = C 0
!

Es poco realista asumir que la perturbación puede ser medida, de forma tal
que para poder compensar la perturbación de acuerdo a la ecuación B.21
es necesario calcular la perturbación v~ (t) a partir de la estimación de !
~ (t).
Nótese que el estado de la perturbación ! es observable pero no controlable.
Para esto, se diseña un observador completo aumentado, de la forma

~_
x A BC! x
~ B L
= + u+ (y (t) x (t))
C~ (B.55)
~_
! 0 A! !
~ 0 L!

donde el observador para la perturbación está dado por

~_ = A! !
! ~ + L! (y (t) x (t))
C~ (B.56)

donde
v~ (t) = C! !
~
y el observador de estados por

~_ = A~
x x + BC! !
~ + Bu (t) + L (y (t) x (t))
C~ (B.57)

Considere la ley de control (B.21) en términos del vector de estados estimado


y la perturbación estimada como

u (t) = x (t)
K~ K! v~ (t)
u (t) = x (t)
K~ K! C! ! ~

entonces al reemplazar la ley de control en el sistema (B.57) se tiene

~_ = A~
x x + BC! !
~ x (t)
BK~ ~ + L (y (t)
BK! C! ! x (t))
C~ (B.58)

y con K! = 1 se tiene

~_ = A~
x x x (t) + L (y (t)
BK~ x (t))
C~
B.3 Observadores 225

que corresponde al mismo observador completo sin perturbaciones cuando se


realimenta con el vector de estados. Adicionalmente, al reemplazar la ley de
control en la ecuación (B.17) se tiene
x_ (t) =Ax (t) x (t)
BK~ ~ + BC! ! (t)
BK! C! ! (B.59)
Las ecuaciones para el sistema en lazo cerrado (B.58) y B.59 dan un
conocimiento profundo del comportamiento del sistema. La matriz K asegura
que el estado x tiende a cero a la velocidad deseada después de una
perturbación. Una selección adecuada de la ganancia K! reduce el efecto
de la perturbación v (t) sobre el sistema por alimentación directa de las
perturbaciones estimadas ! ~ . Esta acción de control por alimentación directa
es particularmente efectiva si la matriz B BK! se puede hacer igual a
cero. Las ganancias del observador L y L! in‡uyen en la velocidad a la cual
los errores de estimación tienden a cero. Estas últimas se pueden hallar del
sistema aumentado (B.55) usando la ecuación para el cálculo de las ganancias
del observador dada por (B.34).
En la …gura B.7se muestra el diagrama de bloques correspondiente a un
sistema de regulación con observador de perturbaciones y con ganancia K! =
1.
Ejemplo B.1 Considere un modelo de espacio de estados dado por
2 15 1
A = ;B =
1 0 0
C = 0 1
el cual tiene los polos en s = 5, s = 3. Y con una perturbación senoidal con
amplitud 1 y con frecuencia ! 0 = 2:5. Diseñe un regulador por realimentación
de variables de estado tal que los polos deseados sean s = 5, s = 3. Diseñe
también un observador de estados y un observador de perturbación. Utilice
Matlab y Simulink para hacer los cálculos.
Se de…nen inicialmente las matrices de estado
A=[-2 15; 1 0]
B=[1;0]
C=[0 1]
Se veri…ca que el sistema sea controlable calculando la matriz de
controlabilidad y mirando si ésta tiene rango total
226Diseño de sistemas de control en el espacio de estados en tiempo continuo

Figura B.7: Diagrama de bloques de un sistema con regulación, observador


completo y observador de perturbaciones

co=ctrb(A,B)
rank(co)
Dado que el rango de la matriz de controlabilidad es 2, entonces se calcula,
usando la fórmula de Ackerman, las ganancias de realimentación tal que los
polos se encuentren en s = 5, s = 3.
k=acker(A,B,[-5,-3])
obteniendo como vector de ganancias
K = 6 30
Se calculan las matrices para la dinámica de la perturbación teniendo en
cuenta que es una perturbación senoidal como
B.3 Observadores 227

Aw=[0 2.5;-2.5 0]
Cw=[1 0]

Se calculan las matrices aumentadas para el observador de estados y


perturbaciones de acuerdo a (B.55) como

a_e=[A B*Cw;zeros(2,2) Aw]


b_e=[B;0]
c_e=[C 0 0]

Se veri…ca que el sistema aumentado sea observable calculando el rango de


la matriz de observabilidad

ob=obsv(a_e,c_e)
rank(ob)

Dado que el rango es 4 se calculan las ganancias para el observador y el


observador de perturbaciones en el sistema dual teniendo en cuenta que los
polos sean más rápidos que los del sistema en lazo cerrado como

L1=acker(a_e’,c_e’,[-10,-6,-4,-5])

Se separan las ganacias correspondientes al observador de estados y al de


perturbaciones

L=L1(1:2)
Lw=L1(3:4)

obteniendo

L = 186:75 23
L! = 703:75 64:375

Se construye un diagrama de bloques en Simulink con los valores calculados


para las matrices como se observa en la …gura B.8. Si se asumen como
1
condiciones iniciales x0 = las repuestas obtenidas para la salida, los
0
estados estimados, y la perturbación estimada del sistema se observan en las
…guras B.9 (a), (b) y (c) respectivamente.
228Diseño de sistemas de control en el espacio de estados en tiempo continuo

u y
x' = Ax+Bu
y = Cx+Du
State -Space salida

w
v
1
K*uvec K*uvec
s
v estimado Cw Lw

*uvec

Aw

K*uvec

u 1
*uvec *uvec
s
B C

K*uvec

K*uvec

K x estimado

Figura B.8: Diagrama de bloques en Simulink para el ejemplo B.1

B.4. Sistemas de seguimiento


Hasta ahora se ha discutido el problema del regulador. El cirterio ha sido
eliminar las perturbaciones y conducir los estados del sistema a cero. El
problema de seguimiento o problema del servo, es otro problema prototipo
importante, en donde el objetivo es hacer que los estados y las salidas del
sistema respondan a señales de referencia de una manera especí…ca.

B.4.1. Ganancia del sistema en lazo cerrado


Considere entonces un sistema como el de la …gura B.6. Una manera simple
de obtener la respuesta deseada a una señal de referencia es reemplazar la
ley de control u (t) = K~x (t) por

u (t) = x (t) + Kc r (t)


K~ (B.60)

donde r (t) es la señal de referencia. De esta forma, el sistema completo en


B.4 Sistemas de seguimiento 229

0.1 y
(a)

-0.1
0 5 10 15 20

0.2 x_1^
x_2^
(b)

0
-0.2
-0.4
0 5 10 15 20
4
v^
2
(c)

0 5 10 15 20
Tiempo

Figura B.9: (a) Salida del sistema y, (b) estados estimados x


^, (c) perturbación
estimada v~ (t).

lazo cerrado estaría dado por

x_ (t) = Ax (t) +Bu (t)


y (t) = Cx (t)
~_ (t)
x = A~
x (t) +Bu (t) + L (y (t) x (t))
C~
u (t) = K~x (t) + Kc r (t)

El diagrama de bloques simpli…cado para el sistema en lazo cerrado de la


…gura B.6 que incluye la ecuación (B.60) se muestra en la …gura B.10.
Reemplazando u (t) y considerenado el error de estimación x ~e (t) = x (t)
230Diseño de sistemas de control en el espacio de estados en tiempo continuo

Figura B.10: Diagrama de bloques simpli…cado para un modelo simple de


seguimiento con regulación y observador completo

~ (t) se tiene
x
x_ (t) = (A BK) x (t) + BK~
x (t) + BKc r (t)
~_ e (t) = (A LC) x
x ~e (t) (B.61)
y (t) = Cx (t)
Nótese que el error de estimación del observador x ~e (t) no es afectado por el
valor de r (t). Esto tiene sentido, ya que sería altamente indeseable introducir
señales de referencia de tal manera que causaran errores en el observador. De
la ecuación (B.61) la función de transferencia del sistema en lazo cerrado es
Y (s) 1 b (s)
= Hl c (s) = C (sI A + BK) BKc = Kc
R (s) (s)
De esta forma, con el …n de que en estado estable la salida del sistema y (t)
tienda al valor de referencia r (t), y asumiendo que r (t) = r es un comando
de referencia constante, es necesario que
(0)
Kc =
b (0)

con la condición de que b(0)(0)


6= 0, es decir, la función de transferencia en
lazo abierto no debe tener ceros en el origen. Pero como se demostró antes,
los ceros de Hl c (s) son los mismos ceros de la función de transferencia del
sistema original
b (s)
H (s) = C (sI A) 1 B =
a (s)
B.4 Sistemas de seguimiento 231

De esta forma, x (t)t!1


! 0 a una velocidad determinada por los valores propios
de A BK, y por lo tanto y (t)t!1 ! r a esa misma velocidad. Así, si la
referencia r es cambiada lo su…cientemente lento, el anterior esquema puede
desarrollar un trabajo razonable de seguimiento.
Este mismo esquema de seguimiento se puede aplicar en un sistema con
observador completo y observador de perturbaciones como se observa en la
…gura B.11.

Figura B.11: Esquema de control con observador completo y observador de


perturbaciones

Ejemplo B.2 En la línea que conecta el centro de la tierra con el centro de


la luna hay un punto L1 , como se muestra en la …gura B.12, en donde la
fuerza de atracción de la tierra sobre un satélite (en una órbita alrededor de
la tierra con el mismo periodo de la orbita de la luna) es exactamente igual a
la fuerza de atraación de la luna más la fuerza centrífuga. sin embargo, este
punto de equilibrio es inestable como se verá. Después se demostrará que
usando realimentación de estado, a través de un pequeño motor de reacción,
un satélite en ese punto puede ser estabilizado. Las ecuaciones dinámicas
para pequeñas desviaciones del punto de equilibrio se puede demostrar que
son

x• 2! y_ 9! 2 x = 0
y• + 2! x_ + 4! 2 y = u
232Diseño de sistemas de control en el espacio de estados en tiempo continuo

Figura B.12: Diagrama del ejemplo B.2

en donde
x : perturbación radial
y : perturbación de la posició acimutal
u = F=m! 2
F : fuerza del motor en la dirección y
m : masa del satélite
2
! = rad/dia
29
1. Con u = 0, demostrar que el punto de equilibrio es inestable.
2. Para estabilizar el sistema usar realimentación de las variables de
estado:
u = K1 x K2 x_ K3 y K4 y_
Determinar los Ki de modo que el sistema en lazo cerrado tenga los
polos en s1 = 3!, s2 = 4!, s3 = ( 3 j3) !.
3. Diseñar un controlador con la anterior realimentación y con una
entrada de referencia para la posición y.
4. Explicar poque un controlador como el anterior para la posición x no
puede ser diseñado para el satélite.

Utilizando como variables de estado x, x,


_ y y y,
_ entonces:
2 3 2 3
0 1 0 0 0
69! 2 0 0 2! 7 607
A =6 4 0
7;B =6 7
0 0 15 405
0 2! 4! 0 1
B.4 Sistemas de seguimiento 233

La ecuación característica es

a (s) = det (sI A) = s4 ! 2 s2 36! 4

cuyas raices de determinan con


p 2
p
2 4 + 144! 4 ! 1 145
! !
s2 = =
2 2
por lo tanto los valores propios son:

f 2:35!; j2:55!g

y el sistema es claramente inestable.


Como el sistema es controlable, ya que la matriz de controlabilidad C (A; B)
es no singular (det C = 36! 4 ), se pueden reubicar los valores propios por
realimentación de las variables de estado. El polinomio característico deseado
es

(s) = (s + 3!) (s + 4!) (s + 3 + j3!) (s + 3 j3!)


(s) = s4 + 13!s3 + 72! 2 s2 + 198! 3 s + 216! 4

Por comparación de coe…cientes de los polinomios a (s) y (s) se obtiene

K1 = 157:5! 2 ; K2 = 50:5!; K3 = 28! 2 ; K4 = 13!

Como la salida es y (t) entonces

C= 0 0 1 0

Calculando la función de transferencia en lazo cerrado en cero se tiene


1 1
Hl c (0) = C ( A + BK) B=
24! 2
con la ganancia de realimentación

K = 157:5! 2 50:5! 28! 2 13!

Entonces la ganancia para seguimiento Kc está dada por

Kc = 24! 2
234Diseño de sistemas de control en el espacio de estados en tiempo continuo

y la ley de control para ese caso sería


u (t) = Kx (t) 24! 2 r (t)
Si se quiere diseñar un controlador para la salida x, entonces se tiene que
C= 1 0 0 0
y si se calcula la función de transferencia en lazo cerrado en cero se obtiene
1
Hl c (0) = C ( A + BK) B =0
para todo valor de K. Así, es imposible encontrar una entrada de referencia
r (t) para ajustar cualquier valor deseado de x.

B.4.2. Realimentación integral de la salida


El principio básico del sistema de seguimiento con acción integral consiste en
incluir un integrador a la salida del comparador entre el vector de referencia
r (t) y el vector de salida y (t), para obtener una integral de la señal de error
y sumarlo a la señal de control correspondiente a la realimentación lineal de
las variables de estado, como se muestra en la …gura B.13.

Figura B.13: Servo con acción integral

El sistema mostrado en la …gura B.13 está descrito por el siguiente modelo


de espacio de estados
x_ (t) = Ax (t) +Bu (t) (B.62)
y (t) = Cx (t) (B.63)
x_ r (t) = r (t) Cx (t) (B.64)
u (t) = Kx (t) + Ki xr (B.65)
B.4 Sistemas de seguimiento 235

donde xr corresponde a la salida del integrador (integral del error x_ r ) y se


considera como una variable de estado adicional. Se asume que el modelo de
espacio de estados dado en la ecuación (B.62) es completamente controlable
y que no tiene ceros en el origen.
Para obtener las ganancias de realimentación de la acción integral y del vector
de estados original, se aumneta el modelo de espacio de estados, así
x_ (t) A 0 x (t) B 0
= + u (t) + r (t)
x_ r (t) C 0 xr (t) 0 I
donde se debe diseñar un sistema que sea asintóticamente estable tal que
x (t), xr (t), y u (t) se aproximen a valores constantes cuando t ! 1.
Entonces en estado estable xr (t) = 0 y se obtiene y (t) = r (t). Si se de…ne

^ = A 0 ^ B x (t)
A ;B = ;x
^=
C 0 0 xr (t)
Se tiene que el diseño del servo con acción integral se convierte en el diseño
de un regulador de orden n + p con p el número de salidas para el sistema
aumentado dado por
^_ = A^
x ^ x + Bu
^ (B.66)
donde el vector de control está de…nido por

u= ^x
K^ (B.67)
^ de…nido como
con K
^ = K
K Ki
Si se reemplaza el vector de control de la ecuación (B.67) en (B.66), el sistema
en lazo cerrado se convierte en

^_ = A
x ^ ^K
B ^ x
^

Este modelo aumnetado se utiliza para el cálculo de la ganancia K^ de acuerdo


a lo presentado en la sección B.1.1, para lo cual se debe garantizar que el
sistema aumentado sea controlable.
Usualmente no se conoce el vector de variables de estado completamente, por
lo que es necesario utilizar un observador para la estimación de x (t). En este
caso el vector de control de la ecuación (B.65) se puede reescribir como

u (t) = x (t) + Ki xr
K~
236Diseño de sistemas de control en el espacio de estados en tiempo continuo

Figura B.14: Servo con acción integral usando un observador de estados

En la …gura B.14 se muestra el esquema del servo con realimentación integral


usando un observador de estados.
De manera similar, es posible incluir un observador de perturbaciones de
acuerdo a la ecuación (B.56) en el sistema de la B.14 para mejorar el
desempeño del sistema frente a perturbaciones rápidas. Sin embargo, frente
a perturbaciones constantes o más lentas que la dinámica del sistema, la
acción integral elimina el error en estado estable, por lo que no es necesario
el observador de perturbaciones.

B.4.3. Controlador de dos grados de libertad


Los sistemas de control prácticos a menudo tienen especi…caciones que
involucran propiedades del servo y de regulación. Esto es resuelto
tradicionalmente utilizando una estructura de dos grados de libertad, como
se muestra en la …gura
Esta con…guración tiene la ventaja de que los problemas de servo y de
regulación son separados. El controlador de realimentación Hf b se diseña
para obtener un sistema en lazo cerrado que es insensible a perturbaciones
del proceso. El compensador en el lazo directo Hf f es diseñado para obtener
las propiedades del servo deseado. Se mostrará como resolver el problema del
servo en el contexto de la realimentación de estado.
B.4 Sistemas de seguimiento 237

Figura B.15: Diagrama de bloques de un sistema de realimentación con una


estructura de dos grados de libertad

En un diseño de espacio de estados es natural suponer que el comportamiento


del servo se especi…ca en términos de un modelo que da la respuesta deseada
de la salida o las variables de estado a cambios en la señal de comando. Esto
se puede especi…car con el modelo

x_ m (t) = Am xm (t) + Bm r (t) (B.68)


ym (t) = Cm xm (t) (B.69)

Es entonces natural usar la ley de control

u (t) = uf b (t) + uf f (t) (B.70)

donde
uf b (t) = K (xm (t) ~ (t))
x (B.71)
en donde xm es el estado deseado y uf f es una señal de control que da la
salida deseada cuando es aplicada al sistema en lazo abierto. Las coordenadas
se deben escoger de manera que los estados del sistema y del modelo sean
compatibles. En aplicaciones actuales es útil a menudo escogerlas de modo
que las componentes del estado tengan buenas interpretaciones físicas.
El término uf b = K (xm x ~) representa la realimentación y uf f representa
la señal de control en lazo directo. La ecuación (B.70) tiene una buena
interpretación física. La señal en el lazo directo uf f producirá idealmente
la variación en el tiempo deseada en el estado del proceso. Si el estado del
proceso estimado x ~ es igual al estado deseado xm , la señal de realimentación
K (xm x ~) es cero. Si hay una diferencia entre x ~ y xm , la realimentación
238Diseño de sistemas de control en el espacio de estados en tiempo continuo

generará acciones correctivas. El término de realimentación puede ser visto


como una generalización de la realimentación del error en sistemas de control
ordinario, ya que el error representa desviaciones de todas las variables de
estado y no solo los errores de las salidas. Un diagrama de bloques del sistema
se muestra en al …gura B.16.

Figura B.16: Un controlador con dos grados de libertad basado en


realimentación del estado y un observador

Dado el modelo (B.68), es directo generar los estados deseados. Falta discutir
la generación de la señal uf f . Sean las funciones de transferencia del proceso
y del modelo H (s) y Hm (s) respectivamente, entonces, si la señal

Hm (s)
uf f (t) = r (t) (B.72)
H (s)
pudiera ser generada, se obtendría el resultado deseado; varias condiciones
se requieren para esto. El modelo Hm (s) debe ser estable, el exceso de polos
del modelo no debe ser menor que el exceso de polos del proceso, y ceros
inestables del proceso, también deben ser ceros del modelo.
En el caso de una entrada y una salida, la generación de uf f es
particularmente simple si el orden y los ceros del modelo y del proceso son
los mismos. Supóngase que
b (s)
H (s) =
a (s)
y
b (s)
Hm (s) =
am (s)
B.4 Sistemas de seguimiento 239

entonces la ecuación (B.72) se reduce a


a (s) (a1 a1m ) sn 1 + + (an anm )
uf f (s) = r (s) = 1+ n n 1
r (s)
am (s) s + a1m s + + anm
(B.73)
y, si el modelo de referencia tiene forma canónica controller, asi
2 3 2 3
a1m a2m a(n 1)m anm
6 1 0 0 7 607
6 .. 7 6 7
6 .. .. 7
Am = 6 0 1 . . . 7 ; Bm = 6607
7 (B.74)
6 . ... ... ... . 7 405
4 .. .. 5
0 0 1 0 0

y donde la matriz de salida del modelo Cm = C: Se sigue entonces de la


ecuación (B.73) que

uf f (t) = r (t) + Cf f xm (t) (B.75)

en donde
Cf f = a1 a1m a2 a2m an anm (B.76)
y donde es el inverso de la ganancia del modelo de referencia en estado
estable, asi
am (0)
= (B.77)
b (0)
Una vez obtenida la solución en forma cerrada, se puede obtener otras
representaciones por transformación de las variables de estado. A menudo
es útil introducir no linealidades en la trayectoria de alimentación directa de
modo que el sistema no sea conducido muy severamente en repuesta a las
señales de referencia. Ya que la señal uf f se usa principalmente para lograr
que el sistema se mueva rápidamente en la dirección correcta, también es
posible usar modelos aproximados del proceso; las desviaciones pequeñas son
mejoradas fácilmente por la realimentación.
Es posible incluir el observador de perturbaciones en la ley de control de la
ecuación (B.71) de la forma

uf b (t) = K (xm (t) ~ (t))


x v~ (t) (B.78)

tal como se observa en el diagrama de bloques de la …gura B.17. Se debe tener


en cuenta que para realizar la diferencia xm (t) x ~ (t) es necesario que las
240Diseño de sistemas de control en el espacio de estados en tiempo continuo

variables de estado estimadas x ~ (t) se encuentren en la misma forma que las


del modelo de referencia. Si el modelo de referencia está en forma canónica
controller, entonces se debe incluir la matriz de transformación T; de la
sección 4.2, a la salida del observador. Adicionalmente, se debe modi…car el
valor de la ganancia de realimentación K para que esté en la misma forma
canónica. Esto se puede hacer a partir de la ecuación (B.13) al reemplazar
K como KT 1 .

Figura B.17: Diagrama de bloques de un controlador general que combina


seguimiento por modelo con realimentación de los estados y de la
perturbación

El controlador de la …gura B.17 captura muchos aspectos de un problema de


control, tales como atenuación de la perturbación de carga, reducción de los
efectos del ruido en la medida, y seguimiento de la señal de comando. Las
respuestas a las perturbaciones de carga, señales de referencia y ruido en la
medida son separadas completamente. La respuesta a la señal de comando
se determina por el modelo de referencia. La respuesta a las perturbaciones
y ruidos en la medida es afectada por el observador y la realimentación de
estado. Ella no puede ser ajustada por las matrices K, L y Lw . El hecho de
que todos los estados estimados sean comparados con los del comportamiento
deseado, da una buena posibilidad para ejercer control preciso.

Ejemplo B.3 Considere un modelo de espacio de estados del ejemplo


B.1dado por
2 15 1
A = ;B =
1 0 0
C = 0 1
B.4 Sistemas de seguimiento 241

el cual tiene los polos en s = 5, s = 3. Y con una perturbación senoidal


con amplitud 1 y con frecuencia ! 0 = 2:5 y perturbación constante . Diseñe
un controlador de dos grados de libertad con regulador por realimentación de
variables de estado tal que los polos deseados sean s = 5, s = 3. Diseñe
también un observador de estados y un observador de perturbación. Considere
para el modelo de referencia un sistema con los polos en s1;2 = 2 j5. Utilice
Matlab y Simulink para hacer los cálculos.

De manera similar al ejemplo B.1, se de…nen inicialmente las matrices de


estado
A=[-2 15; 1 0]
B=[1;0]
C=[0 1]
Se veri…ca que el sistema sea controlable calculando la matriz de
controlabilidad y mirando si ésta tiene rango total
co=ctrb(A,B)
rank(co)
Dado que el rango de la matriz de controlabilidad es 2, entonces se calcula,
usando la fórmula de Ackerman, las ganancias de realimentación tal que los
polos se encuentren en s = 5, s = 3.
k=acker(A,B,[-5,-3])
obteniendo como vector de ganancias

K = 6 30

Se calculan las matrices para la dinámica de la perturbación teniendo en


cuenta que se tiene una perturbación senoidal y una constante, de la forma
Aw=[0 0.5 0;-0.5 0 0; 0 0 0]
Cw=[1 0 1]
Se calculan las matrices aumentadas para el observador de estados y
perturbaciones de acuerdo a (B.55) como
a_e=[A B*Cw;zeros(3,2) Aw]
b_e=[B;0;0;0]
c_e=[C 0 0 0]
242Diseño de sistemas de control en el espacio de estados en tiempo continuo

Se veri…ca que el sistema aumentado sea observable calculando el rango de


la matriz de observabilidad

ob=obsv(a_e,c_e)
rank(ob)

Dado que el rango es 5 se calculan las ganancias para el observador y el


observador de perturbaciones en el sistema dual teniendo en cuenta que los
polos sean más rápidos que los del sistema en lazo cerrado como

L1=acker(a_e’,c_e’,[-10,-6,-4,-5, -2])

Se separan las ganacias correspondientes al observador de estados y al de


perturbaciones

L=L1(1:2)
Lw=L1(3:5)

obteniendo

L = 238:75 25
L! = 8298:8 5703:1 9600

Se de…nen las ecuaciones de estado deseadas para el modelo de referencia


a partir de los polos deseados tal que los dos sistemas se encuentren en la
misma forma canónica. Puesto que el sistema original está en forma canónica
controller, no es necesario utilizar matrices de transformación y se puede
diseñar el modelo de referencia en forma canónica controller como sigue

P=[-2+j*5; -2-j*5]
Polservo=poly(P)
Am=[-Polservo(2:3); 1 0]

Para que el modelo de referencia tenga los mismos ceros del sistema original
se hace Cm = C

Cm=C

El cálculo de se hace de acuerdo a (B.77) como

lambda=polyval(Polservo,0)/polyval(Cm,0)
B.4 Sistemas de seguimiento 243

1 y
(a)

0.5 r
0

0 5 10 15 20

20
0
(b)

-20
u
-40
0 5 10 15 20

5 v^
(c)

0
0 5 10 15 20
Tiempo

Figura B.18: Respuesta del sistema de control de dos grados libertad para
una entrada de referencia.

tal que Bm de acuerdo a (B.74) es calculado como

Bm=[lambda;0]

por último, Cf f se obtiene a partir de la primera …la de Am y A como

Cff=-A(1,:)+Am(1,:)
1
Si se asumen como condiciones iniciales x0 = ; las respuestas
0
correspondientes a la salida del sistema, la señal de control y la estimación de
la perturbación se muestran en las …guras B.18 (a), (b) y (c) respectivamente.

Y el diagrama de bloques del sistema implementado en Simulink, utilizando


un subsistema para el observador de estados y de perturbación, se muestra
en la …gura B.19.
244Diseño de sistemas de control en el espacio de estados en tiempo continuo

u_ff
*uvec

lambda

Cff
K*uvec
Sine Wave
y
r
x' = Ax+Bu x' = Ax+Bu
*uvec
y = Cx+Du xm u_fb u y = Cx+Du
Step Modelo de referencia k Add 2 State -Space
r,y
x_est

Step 1
v

v u

x_est y

Observador x y v

Figura B.19: Diagrama de bloques en Simulink para el ejemplo B.3


Apéndice C

De…nición alternativa de la
transformada Z

En el análisis de sistemas análogos la transformada de Laplace juega un


papel muy importante. Permite introducir la función de transferencia y la
interpretación frecuencial del sistema. La analogía de la transformada Z,
una herramienta conveniente para estudiar ecuaciones lineales de diferencia
con o sin condiciones iniciales.
La transformada Z mapea una secuencia semi in…nita en el tiempo en
una función de variable compleja. Nótese la diferencia en rango para la
transformada Z y el cálculo con operadores. En este se consideró secuencias
doblemente in…nitas en el tiempo. La diferencia principal es debido a que la
transformada Z tiene en cuenta condiciones iniciales. La variable z es una
variable compleja y se debe distinguir del operador q.
De…nición C.1 Transformada Z.
Considere la señal discreta ff (kh) : k = 0; 1; : : :g. La transformada Z de
f (kh) se de…ne como:
X
1
k
Z ff (kh)g = F (z) = f (kh) z (C.1)
k=0

en donde z es una variable compleja. La transformada Z de f se denota por


Z ff go F. La transformada inversa es dada por:
I
1
f (kh) = F (z) z k 1 dz (C.2)
2 j

245
246 De…nición alternativa de la transformada Z

en donde el contorno de integración encierra todas las singularidades de F (z).

Ejemplo C.1 Transformada de un escalón unitario.

Considere una señal de escalón unitario de…nida por y (kh) = 1 para k 0.


Entonces
X
1 X
1
1 z
k 1 k
Y (z) = 1z = z = 1
=
k=0 k=0
1 z z 1
Bibliografía

[1] B. C. KUO, Automatic Control Systems, Prentice-Hall, NJ, 3a. edición,


1975.

[2] K. OGATA, Ingeniería de Control Moderna, Prentice-Hall


Hispanoamericana, 2a. edición, 1993.

[3] O. I. ELGERD, Control System Theory, McGraw-Hill Kogakusha, 1967.

[4] T. KAILATH, Linear Systems, Prentice-Hall, NJ, 1980.

[5] C. T. CHEN, Linear System Theory and Design, CBS College


Publishing, 1984.

[6] C. E. ROHRS, J. L. MELSA y D. G. SCHULTZ, Sistemas de Control


Lineal, McGraw-Hill, 1994.

[7] R. C. DORF, Sistemas Modernos de Control, Addison-Wesley


Iberoamericana,2a. edición, 1989.

[8] K. OGATA, Dinámica de Sistemas, Prentice-Hall Hispanoamericana,


1987.

[9] A. NETUSHIL, Theory of Automatic Control, MIR Publishers, Moscow,


2a. edición, 1978.

[10] F. H. RAVEN, Automatic Control Engineering, McGraw-Hill, 1961.

[11] G. H. HOSTETTER, C. J. SAVANT y R. T. STEFANI, Sistemas de


Control, Interamericana, México, 1984.

[12] K. J. ÅSTRÖM y B. WITTENMARK, Computer Controlled Systems,


Prentice-Hall, NJ, 1984.

247
248 BIBLIOGRAFÍA

[13] G. F. FRANKLIN y J. D. POWELL, Digital Control of Dynamic


Systems, Addison-Wesley Publishing Company, 1981.
[14] R. J. SCHWARZ y B. FRIEDLAND, Linear Systems, McGraw-Hill
Book Company, NY, 1965.
[15] M. ATHANS y P. L. FALB, Optimal Control, McGraw-Hill, NY, 1966.
[16] H. KWAKERNAAK y R. SIVAN, Linear Optimal Control Systems,
Wiley-Interscience, NY, 1972.
[17] A. P. SAGE y C.C. WHITE, Optimum System Control, Prentice-Hall,
NJ, 2a. edición, 1977.
[18] G. C. GOODWIN y K. S. SIN, Adaptive Filtering Prediction and
Control, Prentice-Hall, NJ, 1984.
[19] O. I. ELGERD, Electric Energy Systems Theory: An Introduction, Tata
McGraw-Hill Publishing Company, New Delhi, 1976.
[20] G. J. THALER y M. L. WILCOX, Máquinas Eléctricas, Editorial
Limusa, México, 1974.
[21] A. PAPOULIS, Probability, Random Variables and Stochastic
Processes, McGraw-Hill Book Company, 2a. edición, 1984.
[22] A. PAPOULIS, The Fourier Integral and its Applications, McGraw-Hill
Book Company, 1962.
[23] C. A. DESOER y E. S. KUH, Basic Circuit Theory, McGraw-Hill
Kogakusha,1969.
[24] A.ACOSTA, J. E. CALLE y D. GIRALDO, Introducción al Análisis de
Circuitos Eléctricos, Universidad Tecnológica de Pereira.
[25] S. P. SHAN y otros, Analysis of Linear Networks and Systems, Addison
Wesley,1972.
[26] G. STRANG, Linear Algebra and its Applications, Academic Press, Inc.,
2a.edición, 1980.
[27] E. KREYSZIG, Advanced Engineering Mathematics, John Wiley &
Sons, 1983.
BIBLIOGRAFÍA 249

[28] I. S. SOKOLNIKOFF y R. M. REDHEFFER, Mathematics of Phisics


and Modern Engineering, McGraw-Hill, NY, 1966.

[29] J. MILLMAN y C. C. HALKIAS, Integrated Electronics, McGraw-Hill


Kogakusha,1972.

[30] J. MILLMAN, Microelectronics: Digital and Analog Circuits and


Systems,McGraw-Hill Book Company, 1979.

[31] B. SHAHIAN y M. HASSUL, Control System Design Using MATLAB,


Prentice-Hall, NJ.

También podría gustarte