Sie sind auf Seite 1von 254

Indice general

Lista de figuras

IX

1. Introducci
on al control por computador

1.1. Conceptos basicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2. Ventajas e inconvenientes de un sistema de control por computador . .

1.3. Funciones de un sistema de control por computador . . . . . . . . . . .

1.4. Estructuras de los sistemas de control . . . . . . . . . . . . . . . . . . .

1.5. Instrumentacion especfica de los sistemas de control por computador .

1.6. Software de control . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

2. Secuencias y transformada Z

13

2.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13

2.2. Secuencia de ponderacion

. . . . . . . . . . . . . . . . . . . . . . . . .

14

2.3. Ecuaciones en diferencias lineales . . . . . . . . . . . . . . . . . . . . .

16

2.4. Transformada en Z . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18

2.4.1. Transformadas de algunas se


nales tpicas . . . . . . . . . . . . .

19

INDICE GENERAL

ii

2.5. Propiedades de la transformada Z . . . . . . . . . . . . . . . . . . . . .

23

2.6. Transformada Z inversa . . . . . . . . . . . . . . . . . . . . . . . . . . .

25

2.6.1. Descomposicion en fracciones . . . . . . . . . . . . . . . . . . .

26

2.7. Funcion de transferencia en Z . . . . . . . . . . . . . . . . . . . . . . .

30

2.8. Resolucion de ecuaciones en diferencias lineales usando la transformada Z 32


2.9. Algebra de Bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32

2.10. Algunas funciones u


tiles de Matlab . . . . . . . . . . . . . . . . . . . .

34

3. Proceso de muestreo

37

3.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

37

3.2. Repaso de la transformada de Fourier . . . . . . . . . . . . . . . . . . .

38

3.3. Muestreo de sistemas continuos . . . . . . . . . . . . . . . . . . . . . .

39

3.4. Reconstruccion de una se


nal muestreada . . . . . . . . . . . . . . . . .

42

3.5. Aliasing o enmascaramiento de frecuencias . . . . . . . . . . . . . . . .

45

3.6. Reconstruccion usando mantenedores . . . . . . . . . . . . . . . . . . .

47

3.7. Obtencion de la funcion de transferencia pulsada . . . . . . . . . . . . .

53

4. An
alisis de sistemas muestreados

57

4.1. Estabilidad en sistemas de control por computador . . . . . . . . . . .

57

4.1.1. El criterio de estabilidad de Jury . . . . . . . . . . . . . . . . .

61

4.2. Respuesta transitoria: relacion con el diagrama de polos . . . . . . . . .

63

INDICE GENERAL

iii

4.3. Errores en regimen permanente . . . . . . . . . . . . . . . . . . . . . .

71

4.3.1. Errores en regimen permanente para sistemas en bucle cerrado .

72

4.4. Caractersticas frecuenciales. Correspondencia entre el plano s y el plano z 74


4.4.1. Otras correspondencias . . . . . . . . . . . . . . . . . . . . . . .

5. Dise
no de controladores discretos

75

81

5.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

81

5.2. Discretizacion de reguladores continuos . . . . . . . . . . . . . . . . . .

82

5.2.1. Aproximacion rectangular hacia delante (Euler I) . . . . . . . .

83

5.2.2. Aproximacion rectangular hacia atras (Euler II) . . . . . . . . .

85

5.2.3. Aproximacion bilineal (trapezoidal o Tustin) . . . . . . . . . . .

86

5.3. Correspondencia s z para las aproximaciones de la integral . . . . .

88

5.3.1. Rectangular hacia delante . . . . . . . . . . . . . . . . . . . . .

89

5.3.2. Rectangular hacia atras . . . . . . . . . . . . . . . . . . . . . .

90

5.3.3. Trapezoidal o Bilineal . . . . . . . . . . . . . . . . . . . . . . .

90

5.4. Estabilidad de las aproximaciones de la integral . . . . . . . . . . . . .

93

5.5. Metodo de dise


no directo . . . . . . . . . . . . . . . . . . . . . . . . . .

98

5.5.1. Causalidad

. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

98

5.5.2. Estabilidad Interna . . . . . . . . . . . . . . . . . . . . . . . . .

99

5.5.3. Errores en regimen permanente . . . . . . . . . . . . . . . . . . 101


5.6. Control en un n
umero finito de intervalos. Control dead-beat . . . . . . 103

INDICE GENERAL

iv

6. Control de sistemas discretos en el espacio de estados

107

6.1. Representacion de sistemas discretos en el espacio de estados . . . . . . 107


6.2. Obtencion de la representacion de en espacio de estados de sistemas discretos108
6.2.1. Metodo de programacion directa . . . . . . . . . . . . . . . . . . 109
6.2.2. Metodo de programacion anidada . . . . . . . . . . . . . . . . . 111
6.3. La representacion en espacio de estados de un sistema no es u
nica . . . 112
6.4. Resolucion de las ecuaciones del espacio de estados . . . . . . . . . . . 113
6.4.1. Procedimiento recursivo . . . . . . . . . . . . . . . . . . . . . . 113
6.4.2. Matriz de transicion de estados . . . . . . . . . . . . . . . . . . 114
6.4.3. Metodo basado en la transformada Z . . . . . . . . . . . . . . . 115
6.4.3.1. Procedimiento alternativo para calcular (zI G)1 . . 116
6.5. Discretizacion de las ecuaciones de estado continuas . . . . . . . . . . . 118
6.6. Controlabilidad y Observabilidad . . . . . . . . . . . . . . . . . . . . . 121
6.6.1. Controlabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
6.6.2. Controlabilidad de la salida completa . . . . . . . . . . . . . . . 123
6.6.3. Observabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.6.4. Principio de Dualidad . . . . . . . . . . . . . . . . . . . . . . . 125
6.7. Transformacion de un sistema en formas canonicas

. . . . . . . . . . . 125

6.7.1. Obtencion de la forma canonica controlable . . . . . . . . . . . 126


6.7.2. Obtencion de la forma canonica observable . . . . . . . . . . . . 126

INDICE GENERAL

6.8. Colocacion de polos mediante realimentacion del vector de estados . . . 127


6.8.1. Condicion necesaria y suficiente para la colocacion arbitraria de polos127
6.8.2. Procedimientos para calcular K . . . . . . . . . . . . . . . . . . 128
6.8.2.1. Procedimiento alternativo: la formula de Ackermann . 130
6.8.3. Control Dead-Beat . . . . . . . . . . . . . . . . . . . . . . . . . 130
6.9. Observadores del estado . . . . . . . . . . . . . . . . . . . . . . . . . . 133
6.9.1. Procedimiento iterativo para la estimacion del estado . . . . . . 134
6.9.2. Observador del estado completo . . . . . . . . . . . . . . . . . . 136
6.9.2.1. Calculo de Ke . . . . . . . . . . . . . . . . . . . . . . . 138
6.9.2.2. Comentarios acerca del papel de Ke

. . . . . . . . . . 140

6.9.2.3. Efectos de la adicion del observador . . . . . . . . . . . 141


6.9.3. Observador de orden mnimo . . . . . . . . . . . . . . . . . . . . 142
6.10. Control optimo LQR . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
6.10.1. Solucion de la ecuacion de Riccatti . . . . . . . . . . . . . . . . 149
6.11. Filtro de Kalman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

7. Modelos de procesos y perturbaciones

151

7.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151


7.2. Perturbaciones deterministas a trozos . . . . . . . . . . . . . . . . . . . 152
7.3. Procesos estocasticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
7.4. Modelos de procesos con ruidos . . . . . . . . . . . . . . . . . . . . . . 154

INDICE GENERAL

vi

8. Introducci
on a la identificaci
on de sistemas

157

8.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157


8.2. Ideas basicas sobre identificacion de sistemas . . . . . . . . . . . . . . . 158
8.2.1. Planificacion de los experimentos . . . . . . . . . . . . . . . . . 158
8.2.2. Seleccion del tipo de modelo . . . . . . . . . . . . . . . . . . . . 159
8.2.3. Eleccion de un criterio . . . . . . . . . . . . . . . . . . . . . . . 160
8.2.4. Estimacion de los parametros . . . . . . . . . . . . . . . . . . . 160
8.2.4.1. Identificacion en lnea . . . . . . . . . . . . . . . . . . 160
8.2.4.2. Identificacion fuera de lnea . . . . . . . . . . . . . . . 161
8.2.5. Validacion del modelo . . . . . . . . . . . . . . . . . . . . . . . 161
8.2.6. Resumen del proceso de identificacion . . . . . . . . . . . . . . . 163
8.3. Algunas propiedades . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
8.3.1. Excitacion persistente . . . . . . . . . . . . . . . . . . . . . . . 164
8.3.2. Convergencia e identificabilidad . . . . . . . . . . . . . . . . . . 165
8.3.2.1. Identificacion en bucle cerrado . . . . . . . . . . . . . . 166
8.3.3. Niveles de supervision y acondicionamiento . . . . . . . . . . . . 168

9. Identificaci
on por mnimos cuadrados

169

9.1. El metodo de los mnimos cuadrados . . . . . . . . . . . . . . . . . . . 169


9.2. Algoritmo recursivo para identificacion en linea . . . . . . . . . . . . . 171
9.3. Interpretacion estadstica . . . . . . . . . . . . . . . . . . . . . . . . . . 173

INDICE GENERAL

vii

9.4. Mnimos cuadrados ponderados . . . . . . . . . . . . . . . . . . . . . . 176


9.5. Mnimos cuadrados extendidos y generalizados . . . . . . . . . . . . . . 177
9.6. Estimacion de los valores de continua . . . . . . . . . . . . . . . . . . . 178
9.6.1. Utilizacion de los incrementos de las variables . . . . . . . . . . 179
9.6.2. Calculo de los valores medios . . . . . . . . . . . . . . . . . . . 179
9.6.3. Estimacion de una constante . . . . . . . . . . . . . . . . . . . . 179
9.7. Importancia del orden del modelo . . . . . . . . . . . . . . . . . . . . . 180
9.8. Identificacion de sistemas con retardo o no lineales . . . . . . . . . . . . 183
9.9. Consideraciones finales . . . . . . . . . . . . . . . . . . . . . . . . . . . 184

10.Control de sistemas con grandes retrasos

187

10.1. Sistemas con retraso . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187


10.1.1. Representacion matematica del retraso . . . . . . . . . . . . . . 189
10.1.2. Problematica del control de sistemas con retraso . . . . . . . . . 190
10.2. El Predictor de Smith . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
10.2.1. Efecto de los errores de modelado en el Predictor de Smith . . . 198
10.2.2. El Predictor PI . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
10.2.3. El Predictor de Smith para sistemas en tiempo discreto . . . . . 200
10.3. Control de sistemas con respuesta inversa . . . . . . . . . . . . . . . . . 201

11.Control de procesos con perturbaciones medibles

205

INDICE GENERAL

viii

11.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205


11.2. Control en cascada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
11.2.1. Estructura de un sistema de control en cascada . . . . . . . . . 207
11.2.2. Sintonizacion de controladores en cascada . . . . . . . . . . . . 208
11.3. Control anticipativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
11.3.1. Consideraciones practicas sobre los controladores anticipativos . 211

12.Control de procesos multivariables

213

12.1. Introduccion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213


12.2. Sistemas multivariables . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
12.3. Medida de las interacciones. Metodo de Bristol . . . . . . . . . . . . . . 216
12.4. Control de procesos multivariables mediante desacoplo . . . . . . . . . 220

13.Introducci
on al control adaptativo

227

13.1. Planteamiento del problema . . . . . . . . . . . . . . . . . . . . . . . . 227


13.1.1. Clasificacion grosso modo de los sistemas de control adaptativo . 229
13.2. Justificacion del uso de control adaptativo . . . . . . . . . . . . . . . . 230
13.3. Control adaptativo por modelo de referencia (MRAC) . . . . . . . . . . 233
13.3.1. La regla del MIT . . . . . . . . . . . . . . . . . . . . . . . . . . 235

Indice de figuras

1.1. Seleccion de que datos se deben guardar, con que frecuencia y en que formato en los historicos de

1.2. Todos los sistemas de control por computador presentan mmicos mas o menos realistas con la in
1.3. Herramientas para creacion de mmicos en un sistema de control por computador.

1.4. Los historicos presentan informacion relevante sobre la evolucion de las variables monitorizadas b
1.5. Tareas de un sistema de control por computador . . . . . . . . . . . . .

1.6. Sistema de control con estructura centralizada.

. . . . . . . . . . . . .

1.7. Sistema de control con estructura distribuida. . . . . . . . . . . . . . .

1.8. Sistema de control con estructura jerarquica.

. . . . . . . . . . . . . .

1.9. Esquema de un sistema de control por computador .

. . . . . . . . . .

10

1.10. Simulink es un lenguaje grafico que se puede utilizar para programar algoritmos de control. 11

2.1. Secuencia de ponderacion de un sistema. . . . . . . . . . . . . . . . . .

15

2.2. Listado en lenguaje de programacion de Matlab que calcula la secuencia de Fibonacci usando la
2.3. Secuencias de entrada, salida y ponderacion de un sistema. . . . . . . .

31

2.4. Algunas reglas fundamentales del algebra de bloques . . . . . . . . . .

33

ix

INDICE DE FIGURAS

3.1. Esquema de un sistema de control por computador. . . . . . . . . . . .

38

3.2. Muestrador mediante impulsos y mantenedor o retenedor de orden cero.

38

3.3. Muestreador ideal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

40

3.4. Tren de pulsos ideal. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

40

3.5. Muestreador mediante impulsos como modulador. . . . . . . . . . . . .

41

3.6. Espectro en frecuencia de una se


nal muestreada, observandose como se repite el espectro origi

3.7. Uso de un filtro paso banda para obtener el espectro en frecuencia de la se


nal original a partir

3.8. Espectro en frecuencia de una se


nal muestreada con una frecuencia de muestreo insuficiente (

3.9. Repeticiones en frecuencia del espectro de una se


nal muestreada en las que el tiempo de mues
3.10. Ejemplo de muestreo correcto.

. . . . . . . . . . . . . . . . . . . . . .

45

3.11. Ejemplo de muestreo a una tasa insuficiente con aparicion de ((aliasing)).

46

3.12. Ejemplo de ((aliasing)). . . . . . . . . . . . . . . . . . . . . . . . . . . .

47

3.13. Explicacion del ((aliasing)). . . . . . . . . . . . . . . . . . . . . . . . . .

48

3.14. Ejemplo de oscilaciones ocultas. . . . . . . . . . . . . . . . . . . . . . .

48

3.15. Reconstruccion mediante un mantenedor de orden cero.

. . . . . . . .

49

3.16. Respuesta impulsional del mantenedor de orden cero. . . . . . . . . . .

50

3.17. Respuesta en frecuencia correspondiente al mantenedor de orden cero.

51

3.18. Interpretacion frecuencial del proceso de muestreo de una senoide y posterior reconstruccion c
3.19. Aspecto de la se
nal original y la reconstruida en el ejemplo de la figura 3.18. 52
3.20. Funcionamiento del mantenedor de orden 1. . . . . . . . . . . . . . . .

53

INDICE DE FIGURAS

xi

3.21. Respuesta en frecuencia del mantenedor de orden 1 (trazo continuo) comparada con la del mante

4.1. Evolucion de una secuencia de la forma (4.3) para distintos valores de pi . 59


4.2. Frontera de la region de estabilidad en el plano z. . . . . . . . . . . . .

59

4.3. Region del espacio de coeficientes de un polinomio de la forma z 2 + a1 z + a2 = 0 en la que las rai

4.4. Respuestas transitorias correspondientes a la localizacion de varios polos complejos conjugados en

4.5. Respuestas transitorias correspondientes a la localizacion de varios polos complejos conjugados en


4.6. Respuestas ante un impulso para un sistema con un polo en el eje real.

67

4.7. Respuestas ante un impulso para un sistema con polos conjugados en el eje imaginario. 68
4.8. Respuestas ante un impulso para un sistema con polos conjugados dentro del circulo unidad. 69
4.9. Respuestas ante un impulso para un sistema con polos conjugados en el circulo unidad. 70
4.10. Regiones de interes en el plano s. . . . . . . . . . . . . . . . . . . . . .

75

4.11. Puntos de interes en la franja primaria del plano s. . . . . . . . . . . .

76

4.12. Lugares de atenuacion constante en el plano s y z.

. . . . . . . . . . .

77

4.13. Lugares de frecuencia constante en el plano s y z. . . . . . . . . . . . .

78

4.14. Lugares de amortiguacion y frecuencia natural constante en el plano s.

79

4.15. Lugares de amortiguacion constante en el plano z.

79

. . . . . . . . . . .

4.16. Lugares de amortiguacion y frecuencia natural constante en el plano z.

80

5.1. Eventos que ocurren en cada instante de muestreo. . . . . . . . . . . .

82

5.2. Aproximacion rectangular hacia delante de la integral.

84

. . . . . . . . .

INDICE DE FIGURAS

xii

5.3. Aproximacion rectangular hacia detras de la integral. . . . . . . . . . .

85

5.4. Aproximacion bilineal de la integral.

. . . . . . . . . . . . . . . . . . .

86

5.5. PID continuo usado con el sistema del ejemplo 5.1. . . . . . . . . . . .

87

5.6. PID discretizado mediante Euler I (izquierda) y Tustin (derecha) usado con el sistema del eje
5.7. Integral de u(t) para un periodo de muestreo. . . . . . . . . . . . . . .

89

5.8. Simulacion del controlador del ejemplo 5.3.

93

. . . . . . . . . . . . . . .

5.9. Region de estabilidad en el plano s (sombreada).

. . . . . . . . . . . .

94

5.10. Transformacion en el plano z de la region de estabilidad del plano s al aplicar la aproximacion

5.11. Transformacion en el plano z de la region de estabilidad del plano s al aplicar la aproximacion

5.12. Transformacion en el plano z de la region de estabilidad del plano s al aplicar la aproximacion


5.13. Simulacion de las tres aproximaciones al sistema continuo (5.6). . . . .

97

6.1. Diagrama de bloques de la representacion en espacio de estados de un sistema LTI.108

6.2. Diagrama de bloques de un sistema controlado por una realimentacion del vector de estados.1

6.3. Diagrama de bloques de un sistema LTI controlado mediante una realimentacion del vector de
6.4. Diagrama de bloques de un observador de orden completo. . . . . . . . 137

7.1. Procesos estocasticos: realizaciones y variables aleatorias.

. . . . . . . 153

7.2. Modelo de Box-Jenkins. . . . . . . . . . . . . . . . . . . . . . . . . . . 154

8.1. Esquema de la identificacion en lnea.

. . . . . . . . . . . . . . . . . . 161

8.2. Diagrama de flujo del proceso de identificacion. . . . . . . . . . . . . . 163

INDICE DE FIGURAS

xiii

8.3. Ejemplo de se
nal de entrada del tipo PRBSS. . . . . . . . . . . . . . . 165

9.1. Diagrama de flujo del proceso de identificacion mediante mnimos cuadrados recursivos. 173

9.2. Diagrama de Bode de un sistema de segundo orden (linea continua) y de un modelo de primer or
9.3. Misma situacion que en la figura 9.2 pero con una se
nal de entrada senoidal de frecuencia = 1
9.4. Evolucion de los parametros identificados en un caso de sobreparametrizacion. 182
9.5. Evolucion de unos parametros frente a otros para el modelo sobreparametrizado. 183

10.1. Ejemplo de sistema con retraso. . . . . . . . . . . . . . . . . . . . . . . 188


10.2. Sistema de control realimentado para un proceso con retraso tm . . . . . 189
10.3. Diagrama de Bode para distintos valores de un retraso puro etm s . . . . 190

10.4. Diagrama de Bode para distintos valores de un retraso puro tm s para el sistema C(s)G(s)etm s c

10.5. Diagrama de Bode para distintos valores de tm s para el sistema de la figura 10.4 con C(s) = 0,2.

10.6. Sistema de control realimentado para un proceso con retraso donde el sensor se ha dispuesto ante

10.7. Sistema de control en donde se realimenta la prediccion de la salida mediante un modelo en bucl
10.8. Estructura del Predictor de Smith. . . . . . . . . . . . . . . . . . . . . 195
10.9. Bode de C(s)G(s) para el ejemplo. . . . . . . . . . . . . . . . . . . . . 196
10.10.Bode de C(s)G(s) para el ejemplo, desintonizando el controlador de manera que la ganancia sea

10.11.Respuesta del sistema en bucle cerrado con el controlador desintonizado de manera que la ganan

10.12.Respuesta del sistema en bucle cerrado con el predictor de smith (trazo solido) comparada con la

10.13.Respuestas del sistema en bucle cerrado con el predictor de smith cuando se tienen diversos error

xiv

INDICE DE FIGURAS

10.14.Estructura del Predictor PI. . . . . . . . . . . . . . . . . . . . . . . . . 200


10.15.Algoritmo del Predictor de Smith. . . . . . . . . . . . . . . . . . . . . . 201
10.16.Estructura de control para procesos con respuesta inversa. . . . . . . . 203

10.17.Ejemplo de control de un sistema de fase no mnima con un PI usando un lazo simple de reali

11.1. Ejemplo de sistema con perturbacion a la entrada. . . . . . . . . . . . . 206


11.2. Ejemplo de sistema con perturbacion a la entrada. . . . . . . . . . . . . 207
11.3. Ejemplo de sistema con perturbacion a la salida. . . . . . . . . . . . . . 210
11.4. Sistema con perturbacion a la salida controlado con un lazo simple de realimentacion.210
11.5. Sistema con perturbacion a la salida controlado con un control anticipativo.211

11.6. Sistema con perturbacion a la salida controlado con un control anticipativo con control realim

12.1. Respuesta de un sistema multivariable de dos entradas y dos salidas cuando se aplican escalon
12.2. Representacion de un sistema multivariable de orden 2. . . . . . . . . . 214

12.3. Representacion de un sistema multivariable de orden 2 en bucle cerrado con dos controladores
12.4. Representacion de un sistema multivariable controlado por desacoplo. . 222

12.5. Respuesta del sistema multivariable del ejemplo cuando se aplican escalones en sus entradas.2
12.6. Respuesta del sistema multivariable desacoplado cuando se aplican escalones en sus entradas.
12.7. Simulacion del sistema multivariable en bucle cerrado. . . . . . . . . . . 225

13.1. Configuracion generica de un controlador adaptativo. . . . . . . . . . . 228


13.2. Sistema realimentado con actuador con caracterstica v = f (u).

. . . . 231

INDICE DE FIGURAS

13.3. Sistema realimentado con actuador con caracterstica v = f (u).

xv

. . . . 231

13.4. Respuestas en bucle abierto (izquierda) y cerrado (derecha) del sistema dado en (13.1). 232
13.5. Respuestas en bucle abierto (izquierda) y cerrado (derecha) del sistema dado en (13.2). 233
13.6. Configuracion generica de un controlador adaptativo por modelo de referencia (MRAC). 234

xvi

INDICE DE FIGURAS

Captulo 1
Introducci
on al control por
computador
1.1.

Conceptos b
asicos

El control por computador surge de la evolucion del control analogico clasico (usado
extensivamente en sistemas mecanicos, electricos y electronicos), en la cual el computador se ve como medio para ampliar las capacidades y funcionalidades de los sistemas
de control. Esa incorporacion del computador digital comienza ya en etapas tan tempranas del desarrollo de los computadores como la decada de 1950. En esa epoca el
uso que se le daba al computador en los sistemas de control era el de supervisor de los
lazos de control analogico tradicional. El siguiente paso es el de sustituir directamente
a los controladores analogicos (habitualmente de tipo PID) en lo que se vino a llamar
el Control Digital Directo. En este tipo de control el computador calcula la se
nal de
control que se aplicara directamente al proceso.
La decada de los 70 ve la aparicion de los microprocesadores como sustitutos en un
solo circuito integrado de los principales componentes de un computador. La dramatica
reduccion de costes, espacio y consumos unido a la escalada en prestaciones hace que
se contemple dedicar un sistema basado en microprocesador a cada lazo de control,
descargando de tareas al computador central. Esto lleva a la aparicion de los sistemas
de control distribuidos en los que diversos computadores se reparten las distintas tareas
de control de una planta. Esos computadores se conectaran entre si mediante diferentes
topologas de red, propiciando la aparicion de normas de interconexion especficas de
los entornos industriales: los buses de campo. Dentro de las redes se pueden establecer
1

VENTAJAS E INCONVENIENTES DE UN SISTEMA DE CONTROL POR COMPUTADOR

jerarquas entre los diversos controladores y computadores conectados. As se establecen


diversos niveles de supervision y control.
En epocas mas reciente, los sistemas de control han ido ocupando cada vez mas
campos de aplicacion de los controladores clasicos como por ejemplo el sector de automocion y los sistemas de control de vuelo. Por otra parte el abaratamiento y simplificacion de estas tecnologas han hecho que acaben aplicando incluso en el entorno
domestico dentro del campo de la domotica.
El avance de este tipo de sistemas de control es tal que hoy en dia ya no se concibe
ninguna aplicacion de control automatico de cierta complejidad en la que no se haga
uso del control por computador como tecnologa principal. Esta tecnologa tiene su
propia idiosincracia, diferente a la de la tecnologa clasica, de ah que surja una teora
especfica que trata con estos sistemas: la teora del control por computador.

1.2.

Ventajas e inconvenientes de un sistema de


control por computador

Toda tecnologa nueva suele venir cargada de ventajas pero tambien suele presentar
nuevos inconvenientes. En esta seccion se describiran brevemente ambas caractersticas.
Dentro de las principales ventajas del control por computador podemos encontrar:

Los sistemas de control por computador son mas eficientes a la hora de controlar
sistemas complejos. Ademas al ser sistemas programables, se pueden incorporar
algortmos de control mas sofisticados que los que se pueden realizar con componentes analogicos.
Mayor flexibilidad a la hora de cambiar la sintona o incluso el algoritmo de
control de un lazo determinado. Esta mayor flexibilidad viene dada por el hecho
de que el software es intrnsecamente mas flexible que el hardware.
Mayor precision en los calculos. Con instrumentacion analogica alcanzar una alta
precision en los calculos es muy caro, mientras que con los computadores digitales
la precision en muchos casos es arbitraria.
Invariabilidad de los calculos. No hay envejecimiento ni derivas ya que los calculos
se realizan usando aritmetica digital.

AL CONTROL POR COMPUTADOR


CAPITULO 1. INTRODUCCION

Centralizacion de la informacion en un sistema que coordina todas las funciones.


Informacion con marcas precisas de tiempo.
Los sistemas de control por computador presentan muchas funciones adicionales
y complementarias como por ejemplo visualizacion de la informacion, gestion de
historicos, alarmas, calculos estadsticos sobre el rendimiento, etc. . .

Por otra parte los sistemas de control por computador tambien presentan inconvenientes, entre ellos:

Coste elevado. Este coste es ademas muy dependiente del n


umero de lazos de
control que se hayan de implementar.
Problemas de fiabilidad. Si hay mucha centralizacion, todo depende de un computador. Se ha de usar un equipo de respaldo (backup) que releve al computador
principal en caso de fallo de este. Las estructuras de control distribuido palian
este problema al no existir un computador central que deba ocuparse de todo.

1.3.

Funciones de un sistema de control por computador

Las tareas que un sistema de control por computador realiza van mas alla de las de
control que realiza un sistema de control clasico.
El primer grupo de funciones que se pueden enumerar es la de adquisicion y tratamiento de datos. El sistema adquiere las se
nales y realiza operaciones de adecuacion entre
las que se encuentran:

Filtrado de se
nales.
Linealizacion de la caracterstica de sensores y actuadores.
Conversion a unidades de ingeniera.

Ademas de esas funciones de tratamiento de la se


nal se realizan otras tareas entre las
que se incluyen:

FUNCIONES DE UN SISTEMA DE CONTROL POR COMPUTADOR

Almacenamiento de los datos adquiridos en historicos. Se seleccionan que datos


se almacenaran y en que formato (ver figura 1.1).
Calculos auxiliares: rendimientos, consumos, etc. . .
Analisis estadsticos.

Figura 1.1: Seleccion de que datos se deben guardar, con que frecuencia y en que formato en los
historicos de un sistema de control por computador.

Otra de las tareas mas importantes de un sistema de control es la de presentar la


informacion disponible del sistema al operador. El objeto de esta informacion es el de
la monitorizacion y supervision de la planta. Esta tarea se realiza dentro del interfaz
hombre-maquina (MMI o HMI) que desempe
na entre otras las siguientes tareas de
comunicacion con el usuario:
Presentacion de la informacion de la planta (medidas de sensores, valores en
los actuadores, etc. . . ) mediante un mmico o sinoptico (ver figura 1.2). Estos
mmicos se refrescan en tiempo real por lo que el operador tiene en todo momento
una vision clara de lo que ocurre en la planta. Todos los sistemas de control por
computador incluyen libreras y herramientas para crear mmicos mas o menos
realistas de la planta que se controla (ver figura 1.3).
Otra de las tareas del MMI es la gestion de alarmas ante condiciones anormales de
operacion de la planta y su presentacion al operador. Las alarmas se traducen en avisos
al operador y se pueden tratar en funcion de su importancia. Ademas las incidencias y
alarmas se almacenan en las bases de datos del sistema de control por computador.

AL CONTROL POR COMPUTADOR


CAPITULO 1. INTRODUCCION

Figura 1.2: Todos los sistemas de control por computador presentan mmicos mas o menos realistas
con la informacion de la planta.

Figura 1.3: Herramientas para creacion de mmicos en un sistema de control por computador.

FUNCIONES DE UN SISTEMA DE CONTROL POR COMPUTADOR

Los sistemas de control por computador son capaces ademas de ayudar o asistir en
la toma de decisiones sobre la manera de operar el sistema. Suele ser habitual el uso
de simuladores que permiten ensayar y ver el efecto de cambios en la planta sin tener
que realizarlos sobre el sistema real. Complementando a los simuladores se pueden
encontrar en algunos sistemas de control por computador programas de inteligencia
artificial como los sistemas expertos, que tienen la mision de sugerir cual es la posible
solucion a cualquier incidencia que se presente o indicar los puntos de funcionamiento
o modos de operacion que sean mas productivos. Es decir, un sistema experto emula
el conocimiento de un ((experto humano)).
Otra de las funciones mas importantes de un sistema de control por computador es
la de almacenar historicos (ver figura 1.4) de todas las variables (sensores, actuadores,
etc. . . ) que se considere necesario (no necesariamente solo las que se muestran en
los mmicos). Esta informacion es de gran utilidad para analizar el funcionamiento del
proceso, estudiar el efecto de cambios en la operacion del sistema y averiguar las causas
de fallos y alarmas.

Figura 1.4: Los historicos presentan informacion relevante sobre la evolucion de las variables monitorizadas bien en forma grafica o numerica.

Ademas de las tareas de adquisicion de datos y de monitorizacion otras dos tareas


fundamentales de un sistema de control por computador son el telemando y el control en
s mismo (figura 1.5. El telemando consiste en la posibilidad que se le da al operador de
modificar manualmente desde el puesto de control los valores de actuadores, etc. . . Por
otra parte en la tarea de control, el computador cierra el bucle de realimentacion
dejando al operador la tarea de cambiar los puntos de consigna o referencia a seguir.

AL CONTROL POR COMPUTADOR


CAPITULO 1. INTRODUCCION

Figura 1.5: Tareas de un sistema de control por computador .

1.4.

Estructuras de los sistemas de control

Los sistema de control por computador presentan distintos tipos de estructuras en


funcion de la forma en la que se conectan los distintos elementos, de la concentracion
de funciones en ellos y de las tareas asignadas.
Una de las primeras estructuras en emplearse fue la estructura centralizada. En esta
estructura un solo computador central realiza todas las tareas antes mencionadas (ver
figura 1.6). Aunque esta estructura estaba plenamente justificada cuando los computadores eran muy costosos, presenta bastantes problemas. En primer lugar se depende de
un solo equipo para todas las tareas. Si este falla todo falla. Por tanto la fiabilidad de
esta estructura es baja. Por otra parte la instalacion es costosa en el sentido de que el
cableado se complica mucho al tener que conectarse todos los elementos de la planta
al computador. En la practica ademas es necesario tener un computador de reserva o
al menos paneles de controladores convencionales. Esta estructura es bastante rgida y
dificil de ampliar.

Figura 1.6: Sistema de control con estructura centralizada.

ESTRUCTURAS DE LOS SISTEMAS DE CONTROL

Una estructura alternativa es la estructura distribuida. En esta estructura (ver figura 1.7), diversos elementos de control y computadores se conectan a traves de una
red (llamada bus de campo) que reparte datos y se
nales entre ellos. Esta estructura es
mas fiable y redundante por lo que hay una mayor seguridad ante fallos. Las tareas
y responsabilidades se reparten entre los distintos elementos y se obtiene mayor rapidez de procesamiento y respuesta. Ademas el coste de instalacion es menor pues los
controladores se situan mas cerca de los elementos de medida y control. Sin embargo
se impone la necesidad de definir y usar estandares de interconexion y protocolos de
comunicaciones.

Figura 1.7: Sistema de control con estructura distribuida.

Finalmente, en los sistemas de control distribuidos puede ademas imponerse una


estructura jerarquica (ver figura 1.8), en las que se definen distintos niveles de complejidad en los elementos de control y en las tareas que estos realizan. Los niveles mas bajos
vendran ocupados por controladores de bajo nivel, sensores inteligentes y actuadores.
Los niveles intermedios estaran ocupados por controladores programables, automatas
y computadores con software de control. Los niveles mas altos estaran ocupados por
maquinas mas complejas y computadores con el software mas complejo. Es de destacar
que los tiempos de ciclo de estos elementos son mas largos cuanto mas alto sea el nivel.

AL CONTROL POR COMPUTADOR


CAPITULO 1. INTRODUCCION

Figura 1.8: Sistema de control con estructura jerarquica.

1.5.

Instrumentaci
on especfica de los sistemas de
control por computador

Los sistemas de control por computador poseen instrumentacion especfica diferente


de aquella que encontramos en los sistemas convencionales (ver figura 1.9). Algunos de
esos elementos son inherentes a la naturaleza digital de estos sistemas, por ejemplo los
convertidores analogico/digital y digital/analogico. Estos convertidores traducen las
se
nales analogicas de los sensores a valores numericos entendibles por el computador (y
al reves) y lo hacen de manera cuantizada con una resolucion que viene determinada
por el n
umero de cifras binarias (bits) asignadas a cada medida proporcionada por el
convertidor. Por otra parte un sistema de control por computador lee los valores de los
sensores y manda los valores correspondientes a los actuadores solo en determinados
instantes de tiempo generalmente separados por un intervalo de tiempo fijo (intervalos
de muestreo). Es decir son elementos muestreados y discretos. Para mantener la aplicacion de los valores en los actuadores se emplean mantenedores de se
nal. El tipo mas
com
un es el mantenedor de orden cero (MOC) que mantiene la se
nal constante entre
intervalos de muestreo.
Aparte de los elementos anteriormente mencionados en un moderno sistema de
control por computador podemos encontrar otros elementos mas sofisticados como
sensores inteligentes que proporcionan las medidas ya tratadas, filtradas y/o digitalizadas. Ademas pueden realizar operaciones con distintas medidas o inferir magnitudes
indirectamente a partir de otras.

10

SOFTWARE DE CONTROL

SINCRONA

REF

ERROR

ENTRADA
COMPUTADOR

C. D/A +
M.O.C.

PLANTA

C. A/D

SALIDA

PLANTA DISCRETIZADA

Figura 1.9: Esquema de un sistema de control por computador .

Finalmente hay que recordar que los distintos componentes se conectan a traves de
redes de comunicaciones digitales llamadas buses de campo. Esas redes estan regidas
por diferentes protocolos de comunicaciones estandarizados.

1.6.

Software de control

Ya se han comentado las funciones de un sistema de control por computador. A la


hora de programar un controlador hay que tener en cuenta que el programa se ejecuta
siempre de manera cclica, repitiendose siempre tres bloques de acciones:

1. Medir u obtener las medidas de los sensores.


2. Calcular los valores que se aplicaran a los actuadores.
3. Mandar los valores a los actuadores.

Otro factor a tener en cuenta es que los sistemas operativos han de cumplir diversas
caractersticas para ser validos en sistemas de control. Estos requisitos estan normalmente relacionados con la temporizacion de tareas y la necesidad de garantizar que
los programas que implementan algoritmos de controlador se ejecutaran en el tiempo
necesario a toda costa. Los sistemas que cumplen esto son los que se suelen denominar
sistemas operativos para operacion en tiempo real o sistemas en tiempo real.
Finalmente hay que destacar que existen diferentes posibilidades a la hora de programar un controlador, pudiendose elegir entre implementarlo en un lenguaje de bajo
nivel, en un lenguaje de proposito general, en un lenguaje especfico del sistema de
control o incluso un lenguaje grafico (ver figura 1.10).

AL CONTROL POR COMPUTADOR


CAPITULO 1. INTRODUCCION

11

Figura 1.10: Simulink es un lenguaje gr


afico que se puede utilizar para programar algoritmos de
control.

12

SOFTWARE DE CONTROL

Captulo 2
Secuencias y transformada Z
En este captulo se introducira el concepto de secuencia de ponderacion, el cual
resulta clave para obtener la secuencia que aparece a la salida de un sistema en funcion de la secuencia que se tiene en su entrada. Tambien se presentaran las ecuaciones
en diferencias lineales como otra forma de modelar la relacion entre la entrada y la
salida de un sistema. Dichas ecuaciones en diferencias son el equivalente en sistemas
discretos a las ecuaciones diferenciales que pueden usarse para modelar sistemas continuos. Por otra parte, se describiran los conceptos basicos de la transformada Z, una
herramienta matematica que puede utilizarse para resolver ecuaciones en diferencias
de la misma manera que la transformada de Laplace se puede utilizar para resolver
ecuaciones diferenciales ordinarias. Se estudiara tambien la transformada Z inversa y
finalmente se introducira el concepto de funcion de transferencia en el dominio Z o
funcion de transferencia discreta como forma para modelar un sistema lineal discreto.
Esta funcion de transferencia discreta es analoga a la funcion de transferencia en el
dominio S utilizada en sistemas continuos.

2.1.

Introducci
on

En un sistema de control por computador el algoritmo de control se concreta en


un programa que calcula la salida del controlador cada cierto tiempo y lee (muestrea)
la salida de la planta cada cierto tiempo. Las acciones ocurren por tanto cada cierto
periodo de muestreo T:
u(kT ), y(kT )
13

k = 0, 1, . . .


SECUENCIA DE PONDERACION

14

Notese que no solo el tiempo esta discretizado sino que debido a la naturaleza digital
del elemento de control (el computador) los valores de ambas se
nales son tambien
discretos. El sistema de control por computador es por tanto un sistema discreto que
recibe se
nales yk 1 y genera salidas uk . Los valores de esas se
nales a lo largo del tiempo
forman secuencias, por ejemplo:
{yk } = {0, 0, 1, 1, . . .}

{uk } = {1, 1, 0, 2, . . .}

Estas secuencias {yk } y {uk } seran, respectivamente, las secuencias de salida y entrada
del sistema que se pretende controlar2 . La relacion que pueda existir entre la secuencia
de entrada y la de salida del sistema o proceso a controlar proporciona un conocimiento
fundamental sobre el proceso, por lo que es fundamental hallar esta relacion. En las
secciones que vienen a continuacion se vera como estas dos secuencias estan relacionadas
con una tercera que es la secuencia de ponderacion. Tambien es posible relacionar
ambas secuencias mediante ecuaciones en diferencias (analogas en sistemas discretos a
las ecuaciones diferenciales en sistemas continuos):
yk = a1 yk1 + a2 yk2 + + an ykn + b0 uk + b1 uk1 + + bm ukm
Y por otra parte tambien es posible relacionar las secuencias de entrada y salida mediante el uso de funciones de transferencia discretas, analogas a las funciones de transferencia que se emplean para describir sistemas en tiempo continuo. Tanto las ecuaciones
en diferencias como la funcion de transferencia constituyen formas comunes de modelar
sistemas discretos, cuyos conceptos fundamentales se veran a lo largo del captulo.

2.2.

Secuencia de ponderaci
on

Denominaremos secuencia de ponderacion {gk } = {g0 , g1 , } a la secuencia obtenida a la salida de un sistema discreto cuando a la entrada hay una secuencia de impulso
unitario {k } = {1, 0, 0, } (ver figura 2.1). Este es un concepto analogo al de respuesta impulsional y como veremos a continuacion, permite caracterizar la salida de
un sistema lineal.
Notese que cualquier secuencia {uk } puede expresarse de la forma:
{uk } =
1

l=
X

l=

ul {kl }

Notese que con la notacion yk se esta indicando y(kT ), de manera que yk1 = y((k 1)T ) y
as sucesivamente. Por otra parte es habitual utilizar tambien la notacion y(k),y(k 1), etc. . .
2
Notese que se han invertido los terminos con respecto al sistema de control. As lo que para el
sistema de control es una secuencia de entrada, desde el punto de vista del sistema a controlar es la
secuencia de salida, y viceversa.

CAPITULO 2. SECUENCIAS Y TRANSFORMADA Z

 


 

15

  


  

Figura 2.1: Secuencia de ponderacion de un sistema.

aunque en general consideraremos que l comienza en 0. As, por ejemplo, la secuencia


{7, 4, 5} se puede poner como:
{7, 4, 5} = 7 {1, 0, 0} + 4 {0, 1, 0} + 5 {0, 0, 1}
donde u0 = 7, {k } = {1, 0, 0}, u1 = 4, {k1 } = {0, 1, 0}, u2 = 5, {k2 } = {0, 0, 1}.
Notese que la secuencia {ki} es la secuencia {k } retrasada i tiempos de muestreo, y
vale 1 en el instante de tiempo k = i y cero en los demas.
Si a un sistema lineal se le excita con una secuencia de entrada {uk } (por ejemplo
la ley de control calculada en cada instante por el computador), tal que
{uk } =

l=
X

ul {kl }

l=
X

ul {gkl }

l=0

se obtendra una secuencia de salida:


{yk } =

l=0

pues por el concepto de secuencia de ponderacion, a la secuencia {kl } le corresponde


a la salida la secuencia {gkl }, que es la secuencia de ponderacion {gk } retrasada l
tiempos de muestreo. Esa expresion se puede desarrollar de manera que se obtiene:
{yk } = u0 {g0 , g1 , g2, } + u1 {0, g0 , g1, } + u2 {0, 0, g1, } +
= u 0 g0 + u 0 g1 + u 0 g2 + + u 1 g0 + u 1 g1 + + u 2 g0 +
= g0 {uk } + g1 {uk1} + g2 {uk2} +
llegandose a:
{yk } =

l=
X
l=0

gl {ukl }

Esto implica que conociendo la secuencia de ponderacion de un sistema podemos calcular la salida para cualquier secuencia de entrada. La expresion anterior es equivalente
a:
l=
X
{yk } =
gl {ukl} = {gk } {uk }
(2.1)
l=0

16

ECUACIONES EN DIFERENCIAS LINEALES

donde indica la operacion de convolucion entre la secuencia {gk } y la secuencia {uk }.


Este resultado sin embargo no esconde que trabajar directamente con secuencias como
aqu se ha mostrado es muy engorroso, al tener que estar enumerando los valores que
toman dichas secuencias. A continuacion se vera como es mas conveniente describir la
relacion entre la secuencia de entrada y la de salida de un sistema mediante el uso de
ecuaciones en diferencias lineales.

2.3.

Ecuaciones en diferencias lineales

Como se ha mencionado en la seccion anterior, trabajar con secuencias es muy engorroso. Tambien lo es describir a un sistema en base a su secuencia de ponderacion.
En cursos basicos de control de sistemas continuos se presenta el uso de ecuaciones
diferenciales lineales como una forma de describir el comportamiento de un sistema
dinamico. En el caso de sistemas discretos podemos hacer uso de una forma de descripcion analoga a las ecuaciones diferenciales que son las ecuaciones en diferencias. Estas
relacionan el valor de la salida del sistema en el instante k con valores pasados de la
salida y valores presentes y pasados de la se
nal de control u (si la hubiese):
yk = a1 yk1 + a2 yk2 + + an ykn + b0 uk + b1 uk1 + + bm ukm
Notese que en la ecuacion anterior, el valor de la salida en el instante k depende
linealmente de los valores pasados de la salida y de los valores presentes y pasados de
la se
nal de control. De ah que la ecuacion anterior sea una ecuacion en diferencias
lineal. Siendo la dependencia de la salida de hasta n valores pasados de la misma, se
dice que n es el orden de la ecuacion en diferencias.
Es evidente que una ecuacion en diferencias lineal permite obtener los valores de
la secuencia de salida de un sistema conocida la secuencia de entrada y una serie de
condiciones iniciales que son los valores y1n , y2n , , y0. Pero como se obtiene la
secuencia de salida ?. Existen diferentes posibilidades. La mas obvia es usar la propia
ecuacion en diferencias en un bucle para ir obteniendo los terminos. Por ejemplo si se
considera la ecuacion en diferencias que genera la conocida sucesion de Fibonacci:
yk = yk1 + yk2

y0 = y1 = 1

se puede obtener la secuencia {yk } = {1, 1, 2, 3, 5, 8, 13, . . .} mediante el codigo Matlab


mostrado en la figura 2.2. Este procedimiento es sumamente sencillo y se puede generalizar facilmente a cualquier ecuacion en diferencias lineal. Sin embargo presenta un
inconveniente muy evidente: no permite obtener la expresion del ((termino general)) de
la secuencia y por tanto no aporta demasiada informacion sobre la forma de la solucion

CAPITULO 2. SECUENCIAS Y TRANSFORMADA Z

17

yk1=1;
yk2=1;
for cont = 2:10,
yk = yk1+yk2;
disp(yk)
yk2=yk1;
yk1=yk;
end

Figura 2.2: Listado en lenguaje de programacion de Matlab que calcula la secuencia de Fibonacci
usando la propia ecuacion en diferencias.

de la ecuacion en diferencias. Por tanto se debera recurrir a procedimientos mas elaborados que permitan obtener dicho ((termino general)) de la secuencia correspondiente
a una ecuacion en diferencias dada.
Existe un metodo clasico para resolver ecuaciones en diferencias cuyos principios
fundamentales se veran a continuacion aplicandolo sobre la ecuacion en diferencias que
genera la sucesion de Fibonacci. El metodo se puede resumir en los siguientes pasos:
1. Supongase una solucion de la ecuacion de la forma yk = z k .
2. Sustituyase dicha solucion en la propia ecuacion y resolverla hallando los n valores
zi que satisfacen la ecuacion:

1 5
k
k1
k2
2
z =z
+z
z = z + 1 z1,2 =
2
3. Construir una solucion general mediante la combinacion lineal de las soluciones
anteriores:
n
X
yk =
Ai zik yk = A1 z1k + A2 z2k
i=1

4. Calcular los coeficientes Ai haciendo uso las condiciones iniciales:

1+ 5
1 + 5
y0 = 1 = A1 + A2

A1 = , A2 =
y1 = 1 = A1 z1 + A2 z2
2 5
2 5
5. Finalmente, sustituir los coeficientes Ai de la solucion general por sus valores
calculados en el paso anterior:
yk =

!
1+ 5

2 5

!k
1+ 5
+
2

!
1 + 5

2 5

!k
1 5
2

18

TRANSFORMADA EN Z

El metodo clasico permite obtener el ((termino general)) de la sucesion asociada


a una ecuacion en diferencias. Es decir permite obtener la solucion de la ecuacion
en diferencias y as conocer la forma que tiene dicha solucion. Sin embargo es un
metodo bastante engorroso y no resulta apropiado cuando lo que se pretende resolver
son ecuaciones en diferencias que modelan un sistema dinamico discreto. Para estos
casos, se necesitara de una potente herramienta matematica que ademas de servir
para resolver ecuaciones en diferencias nos proporcionara otra forma de modelar los
sistemas dinamicos. Dicha herramienta, la cual se introduce en la seccion siguiente, es
la transformada Z.

2.4.

Transformada en Z

La transformada en Z cumple el mismo papel en sistemas discretos que la transformada de Laplace en sistemas continuos. Permite obtener la solucion de ecuaciones en
diferencias y por tanto representar se
nales y secuencias de una manera mas compacta.
Para entender la transformada en Z se parte de una se
nal continua x(t). Esta se
nal es
muestreada con un tiempo de muestreo T . Eso implica que se registra una secuencia:
x(0), x(T ), x(2T ), , x(kT )
Teniendo en cuenta que la funcion delta de Dirac (t kT ) vale 1 para t = kT y cero
en todos los demas casos, es claro que la se
nal muestreada es igual a:
x (t) =

X
k=0

x(kT )(t kT )

La transformada de Laplace de x (t) se calcula como:


X(s) = L {x (t)} =
=
=
=

x (t)est dt

R P

0 k=0

R
P

k=0 0

[x(kT )(t kT )] est dt


[x(kT )(t kT )] est dt

x(kT )ekT s

k=0

Se define ahora una nueva variable z como:

z = eT s

CAPITULO 2. SECUENCIAS Y TRANSFORMADA Z

19

y haciendo el cambio de variable la transformada Z de una secuencia {xk } queda como:


Z {xk } = X(z) =

xk z k

(2.2)

k=0

que como puede verse por el desarrollo anterior se ha obtenido de la transformada de


Laplace de la se
nal muestreada. Esta es la llamada transformada Z unilateral, puesto
que considera los valores de la se
nal en 0 k < . Existen otras transformadas Z en
los que se consideran otros valores de k, como la bilateral en la que < k < .
Estas transformadas no son u
tiles en el contexto de este libro, por lo que no se trataran
aqu.

2.4.1.

Transformadas de algunas se
nales tpicas

Calcular la transformada Z puede ser bastante complejo, de ah el uso de tablas con


las transformadas de las se
nales mas comunes. Algunas de las se
nales mas sencillas si
pueden calcularse facilmente.

Se
nal impulso. Esta se
nal tiene como secuencia asociada
{k } = {1, 0, 0, }
En este caso la transformada Z se calcula facilmente como:
Z {k } =

k z k = 0 z 0 = 1

k=0

Se
nal escalon. En este caso la se
nal es
{uk } = {1, 1, 1, }
En este caso la transformada Z se calcula facilmente3 como:
Z {uk } = U(z) =
3

uk z

k=0

z k =

k=0

Recuerdese que

k=0

xk =

1
si |x| < 1
1x

por lo cual este resultado es valido siempre que |z| > 1.

1
z
=
1
1z
z1

20

TRANSFORMADA EN Z

Se
nal {ak }:

 
X
 k X
a k
1
k k
Z a =
a z =
=
z
1
k=0
k=0

a
z

z
za

Se
nal {eak }. En este caso se aplica el resultado anterior con a = ea obteniendose


z
Z eak =
z ea
Se
nal {kak }:




Z kak = aZ kak1 = aZ

1
d
1 az 1
da
az
az 1
=
2 =
1
(1 az )
(z a)2

= a

d  k
Z a
da
2

= a(1) 1 az 1
z 1
d k
a
da

=a

Se
nal {kT }. En este caso se aplica el resultado anterior a la secuencia equivalente
{kT 1kT }, obteniendose:
Tz
Z {kT } =
(z 1)2
Aplicando consideraciones similares se puede ir obteniendo la transformada Z de las
secuencias mas habituales. En las tablas 2.1 y 2.2 se enumeran las transformadas Z de
dichas secuencias y sus equivalentes en transformada de Laplace.
Comentario 2.1 En las transformadas Z anteriores no se ha insistido de manera
intencionada en un detalle importante, y es que la transformada Z de una secuencia,
como todo ejemplo de suma de serie infinita, puede o no converger. La regi
on del plano
Z en la que la transformada Z converge es la llamada regi
on de convergencia (ROC,
por sus siglas en ingles) de la transformada Z:

(
)
X



ROC = z :
x[k]z k <


k=0

Caracterizar esta region es importante desde un punto de vista matem


atico por que la
transformada Z de una se
nal existe y est
a unvocamente definida en la ROC, la cual
se debe especificar. Los autores no pretenden en esta obra profundizar demasiado en
los detalles matematicos de la transformada Z, por lo que se supondr
a que las condiciones de convergencia se cumplen siempre. No obstante a continuaci
on se comentan
someramente algunos resultados concerniente a la forma de la ROC:

CAPITULO 2. SECUENCIAS Y TRANSFORMADA Z

Cuadro 2.1: Tabla con las transformadas Z mas usuales.

21

22

TRANSFORMADA EN Z

Cuadro 2.2: Tabla con las transformadas Z mas usuales (continuacion).

CAPITULO 2. SECUENCIAS Y TRANSFORMADA Z

23

El valor z = 0 no esta incluido en la ROC de ninguna secuencia causal (es decir


diferente de cero solo para valores de k 0), mientras que el valor z = siempre
estar
a incluido en la ROC.
La ROC de la transformada Z de una se
nal de duraci
on finita y causal (es decir
diferente de cero solo en un n
umero finito de valores de k 0) es todo el plano
Z, excepto el valor z = 0.
La ROC de la transformada Z unilateral vista en este captulo tiene la forma de
un disco que se extiende desde el circulo delimitado por el mayor de los m
odulos
de los polos de X(z) hasta el infinito, pero sin contener dicho crculo.

2.5.

Propiedades de la transformada Z

En esta seccion se veran las propiedades mas importantes de la transformada Z.

1. Linealidad. Se verifica que


Z {a {xk } + b {yk }} = aX(z) + bY (z)
2. Desplazamiento en k. Con este nombre se recogen dos resultados relacionados:
a) Z {xk+n } = z n X(z). La demostracion es muy sencilla. Basta tener en cuenta
que:

P
Z {xk+n } =
xk+n z k tomando l = k + n
=

k=0

xl z (ln)
l=n

n1
P
n
l
= z X(z)
xl z

= z n X(z) z n
el termino z n

n1
P

l=0
n1
P

xl z l

l=0

xl z l son condiciones iniciales (analogo a lo que ocurre en

l=0

la transformada de Laplace), con lo que el resultado queda demostrado.


b) Z {xk1 } = z 1 X(z) y en general Z {xkn } = z n X(z). La demostracion
pasa por considerar una secuencia {yk } = {xk1 }. La transformada Z de

24

PROPIEDADES DE LA TRANSFORMADA Z

esta secuencia es:

P
Y (z) =
yk z k
k=0

k=0

= z 1
= z
= z

1
1

xk1 z k

xk1 z (k1) tomando k = k 1

k=0

xk z k

k
 =1

x1 z +

= z 1 X(z)

xk z

k =0

teniendo en cuenta que x1 = 0

Por tanto Z {xk1 } = z 1 X(z) y en general se puede demostrar que Z {xkn } =


z n X(z). Notese que z 1 X(z) se corresponde con la secuencia {xk } retrasada en un tiempo de muestreo. Por tanto, se entiende que a z 1 se le conozca
tambien como operador retraso. Analogamente, z n X(z) se corresponde con
la secuencia {xk } retrasada n tiempos de muestreo.
3. Convolucion. Se cumple que:
Z {{xk } {yk }} = Z

( k
X

xl ykl

l=0

= X(z)Y (z)

(2.3)

4. Teorema del valor final. El valor en k = de la secuencia {xk } viene dado por:
x = lm xk = lm (z 1)X(z)
k

z1

Nota: en algunos textos aparece como lm(1 z 1 )X(z). Por otra parte este
z1
teorema es valido si el lmite existe.
Ejemplo 2.1
Sea
X(z) =
El valor final sera

z
z1

x = lm z = 1
z1

Este resultado es congruente con el hecho de que la secuencia es un escalon


unitario.
5. Teorema del valor inicial. El valor inicial para k = 0 de la secuencia {xk } viene
dado por:
x0 = lm X(z)
z

CAPITULO 2. SECUENCIAS Y TRANSFORMADA Z

25

Ejemplo 2.2
Sea {xk } un escalon unitario. En este caso
x0 = lm

2.6.

1
z
= lm
z
z1
1

1
z

=1

Transformada Z inversa

En esta seccion trataremos el problema de obtener la representacion temporal de un


se
nal a partir de la transformada Z. Esto se hace a traves de la llamada transformada
Z inversa:
Z1 {X(z)} = {xk }
La transformada inversa Z puede calcularse de diversas maneras. Ademas de usar
tablas, se puede utilizar la ecuacion en diferencias equivalente suponiendo condiciones
iniciales nulas y una entrada tipo delta de Kronecker, esto es un pulso unitario: {uk } =
{1, 0, 0, 0, 0, . . .}. Los valores de la salida ante estas condiciones constituiran la transformada inversa. La ecuacion en diferencias se obtiene facilmente usando las propiedades
de la transformada Z, como se ve en el siguiente ejemplo.
Ejemplo 2.3
Sea
X(z) =
Esto implica que:

Y (z)
0,4673z 1 0,3393z 2
=
U(z)
1 1,5327z 1 + 0,6607z 2

Y (z) 1,5327z 1 Y (z) + 0,6607z 2 Y (z) = 0,4673z 1 U(z) 0,3393z 2 U(z)


Teniendo en cuenta la propiedad de desplazamiento en k vista en la seccion 2.5, se llega
a que la ecuacion en diferencias equivalente es:
y(k) 1,5327y(k 1) + 0,6607y(k 2) = 0,4673u(k 1) 0,3393u(k 2)
Suponiendo condiciones iniciales nulas y {uk } = {1, 0, 0, 0, 0, . . .} se obtiene:
{yk } = {0, 0,4673, 0,3769, 0,269, . . . , 0,0001, . . .}
Otro metodo u
til para calcular la transformada inversa es el metodo de division
larga (tambien llamada de serie infinita de potencias). El metodo consiste en realizar

26

TRANSFORMADA Z INVERSA

la division entre el numerador y el denominador de la transformada Z de manera que


el cociente sea un polinomio en potencias de z. Los coeficientes de ese polinomio seran
la representacion temporal de la secuencia.
Ejemplo 2.4
Sea

z
zc
obtener la representacion temporal por el metodo de la division larga. En este caso, al
realizar la division se obtiene:
X(z) =

z
= 1 + cz 1 + c2 z 2 + c3 z 3 +
zc
es decir, los coeficientes forman la secuencia:
{xk } = {1, c, c2 , c3 , } = {ck }
Ejemplo 2.5
Sea
X(z) =
Si se realiza la division se obtiene:

0,1z 2
z 2 1,9z + 0,9

0,1z 2
= 0,1 + 0,19z 1 + 0,271z 2 +
2
z 1,9z + 0,9
por lo que la secuencia sera {xk } = {0,1, 0,19, 0,271, }.
Estos dos metodos son bastante engorrosos y no permiten conocer facilmente la
forma explcita o ((termino general)) de la secuencia temporal que se obtiene como
resultado. Este es mas evidente al usar el metodo de descomposicion en fracciones, el
cual se expone a continuacion.

2.6.1.

Descomposici
on en fracciones

El metodo consiste en descomponer la representacion en transformada Z en fracciones simples y aplicar las equivalencias correspondientes a cada fraccion. Para ello
basta con buscar en las tablas de la transformada Z. Un detalle a tener en cuenta es que

CAPITULO 2. SECUENCIAS Y TRANSFORMADA Z

27

cuando la transformada Z tiene en su numerador un termino z es mejor descomponer


X(z)
en lugar de X(z) directamente. Despues de descomponer se multiplican todos los
z
terminos por z y se mira en las correspondientes tablas buscando la antitransformada
de cada uno de los terminos.
Existen diferentes casos que por ser frecuentes merecen ser tratados aqu. El mas
sencillo es en el que X(z) o X(z)
tienen todos sus polos reales y diferentes. En este caso,
z
la descomposicion que se busca es del tipo:
X(z) =

a1
a2
an
+
++
z p1 z p2
z pn

donde:
ai = (z pi )X(z)|z=pi
A continuacion se veran dos ejemplos, uno sin termino z en el numerador y otro con
dicho termino.
Ejemplo 2.6
Sea
X(z) =

(1 eaT )z
(z 1)(z eaT )

Aplicar el metodo de la descomposicion en fracciones simples. Como se tiene el factor


z en el numerador expandimos X(z)
:
z
X(z)
A
B
=
+
z
z 1 z eaT
Se obtiene que A = 1 y B = 1, por tanto
X(z) =

z
z

z 1 z eaT

Mirando en la tabla de transformadas Z y sustituyendo se obtiene:


{xk } = {1 eakT }

Ejemplo 2.7
Sea
X(z) =

(1 eaT )
(z 1)(1 eaT )

28

TRANSFORMADA Z INVERSA

La descomposicion resulta ser


X(z) =

(1 eaT )
1
1
=

aT
(z 1)(1 e )
z 1 z eaT

Notese que

1
z
= z 1
z1
z1
es decir corresponde a un escalon unitario retrasado, {1k1 }. Aplicando al otro termino
esta consideracion se ve que corresponde con {eaT (k1) }. Por tanto:
{xk } = {1k1 + eaT (k1) }
Notese que este tipo de terminos aparecera siempre en sistemas con retardo (en este
caso el retardo es 1).
Otro caso particular con el que nos podemos encontrar es aquel en el que el grado
del numerador y del denominador de X(z) son el mismo. En ese caso se debe hacer la
division de polinomios y calcular la transformada inversa de cada termino. Por ejemplo
en:
39z 58
6z 2 + 3z + 2
=3+ 2
X(z) = 2
2z + 14z + 20
2z + 14z + 20
se calculara la transformada inversa de los dos terminos resultantes de la division.
Un caso muy frecuente es el de polos reales repetidos, es decir con multiplicidad
igual o superior a 2. En este caso, para cada polo pi con multiplicidad n, se tendran
una serie de terminos de la forma:
+

Ai1
Ai2
Ai3
Ain
+
+
++
2
3
(z pi ) (z pi )
(z pi )
(z pi )n

Para hallar los coeficientes en este tipo de descomposicion se propone como alternativa
mas sencilla el uso de la tecnica de la multiplicacion cruzada. Esta tecnica consiste
en igualar la expresion original de X(z) con la descomposicion propuesta y efectuar
la multiplicacion de ambos terminos por el denominador de X(z), de manera que
se obtengan dos polinomios que permitan, por igualacion de coeficientes, plantear un
sistema de ecuaciones lineales en el que las incognitas sean los coeficientes a determinar.
El siguiente ejemplo ilustra este metodo.
Ejemplo 2.8
Sea
X(z) =

z+3
z(z + 2)2 (z + 5)

CAPITULO 2. SECUENCIAS Y TRANSFORMADA Z

29

En este caso la descomposicion que se propone es:


z+3
A1
A2
A3
A4
=
+
+
+
2
2
z(z + 2) (z + 5)
z
(z + 2) (z + 2)
(z + 5)
Multiplicando por el denominador de X(z):




z+3
A1
A2
A3
A4
2
2
z(z+2) (z+5)
= z(z+2) (z+5)
+
+
+
z(z + 2)2 (z + 5)
z
(z + 2) (z + 2)2 (z + 5)
El producto queda:
z + 3 = (z + 2)2 (z + 5)A1 + z(z + 2)(z + 5)A2 + z(z + 5)A3 + z(z + 2)2 A4
Agrupando por coeficientes:
z +3 = (A1 +A2 +A4 )z 3 +(9A1 +7A2 +A3 +4A4 )z 2 +(24A1 +10A2 +5A3 +4A4 )z +20A1
Igualando los coeficientes de ambos polinomios se puede formar el siguiente sistema de
ecuaciones:
A1 + A2 + A4 = 0
9A1 + 7A2 + A3 + 4A4 = 0
24A1 + 10A2 + 5A3 + 4A4 = 1
20A1 = 3
El cual se resuelve obteniendose:
A1
A2
A3
A4

=
=
=
=

0,1500
0,1944
0,1667
0,0444

Otro caso frecuente es que aparezcan polos complejos conjugados. Si se aplica el


metodo para polos reales distintos, se obtendran coeficientes Ai complejos, por lo que
no es recomendable. Se propone dejar un termino de segundo grado de manera que por
ejemplo:
z+3
A
Bz + C
=
+ 2
X(z) =
2
(z + 5)(z + 4z + 5)
z + 5 z + 4z + 5
Ahora se puede usar el metodo de la multiplicacion cruzada:


A
Bz + C
2
z + 3 = (z + 5)(z + 4z + 5)
+
z + 5 z 2 + 4z + 5
para obtener un sistema de ecuaciones:
A+B = 0
4A + 5B + C = 1
5A + 5C = 3

DE TRANSFERENCIA EN Z
FUNCION

30

cuya solucion en este caso sera:


A = 0,2
B = 0,2
C = 0,8

Finalmente, existe un procedimiento general para obtener la descomposicion en


fracciones simples de cualquier X(z), mediante una descomposicion en residuos de
Heaviside. En este caso se propone la siguiente descomposicion:
m

X(z) =

r
XX
B(z) X Ai z
Brj z
=
+
j +c
A(z)
z

p
(z

p
)
i
r
r j=1
i

donde los pi son los polos con multiplicidad 1 y los pr los polos con multiplicidad
mr 2. La transformada inversa de los terminos que aparecen en el segundo sumatorio
no aparecera en general en las tablas de transformada Z y se calcula como:




Brj z
k
1
Z
= Brj
pkj1
r
j
j1
(z pr )
Los coeficientes que aparecen se calculan mediante la formula de Heaviside:

(z pi )U(z)
Ai =

z
z=pi
1
Brj =
(mr j)!

dmr j (z pr )mr
U(z)
dz mr j
z

z=pr

Como se puede apreciar este metodo implica derivar por lo que es mas recomendable
probar con los anteriores antes de usar este.

2.7.

Funci
on de transferencia en Z

La funcion de transferencia en sistemas discretos cumple el mismo papel que su


homonima en sistemas continuos, es decir, se busca una forma de relacionar la entrada
de un sistema discreto con su salida a traves de sus transformadas en Z. Sea un sistema
cuya secuencia de ponderacion es {gk } y cuyas secuencias de entrada y salida son {uk }
y {yk } respectivamente (ver figura 2.3). Si denotamos las transformadas Z como
Y (z) = Z {yk }

U(z) = Z {uk }

G(z) = Z {gk }

CAPITULO 2. SECUENCIAS Y TRANSFORMADA Z

{u}

{g}

31

{y }

Figura 2.3: Secuencias de entrada, salida y ponderacion de un sistema.

Teniendo en cuenta las ecuaciones (2.1) y (2.3) se obtiene:


Y (z) = Z {yk } = Z

(
X
l=0

gl {ukl }

= G(z)Y (z)

Luego la relacion entre las transformadas en Z de la entrada y la salida es


G(z) =

Y (z)
U(z)

que es la funcion de transferencia del sistema en transformada Z .


En la practica, la funcion de transferencia se puede obtener tomando transformadas
Z en la ecuacion en diferencias que modela al sistema:
yk = a1 yk1 + a2 yk2 + + an ykn + b0 uk + b1 uk1 + + bm ukm
Como esta ecuacion se cumple para todo k, se verifica que:
{yk } = a1 {yk1}+a2 {yk2}+ +an {ykn}+b0 {uk }+b1 {uk1}+ +bm {ukm }
Usando la transformada Z , se obtiene:
Y (z) = a1 z 1 Y (z) + a2 z 2 Y (z) + + an z n Y (z) + b0 U(z) + + bm z m U(z)
Sacando factor com
un se llega a:
Y (z)
b0 + b1 z 1 + + bm z m
G(z) =
=
U(z)
1 a1 z 1 an z n
(z)
.
Notese que la funcion de transferencia es una funcion racional en z, es decir G(z) = N
D(z)
Aquellos valores z = zi para los que N(z) = 0 se llaman ceros de G(z). Aquellos valores
z = pi para los que D(z) = 0 se llaman polos de G(z). Por otra parte, si una funcion
de transferencia G(z) tiene un polo en p0 y se cumple que G (z) = (z p0 )p G(z) no
tiene ning
un polo o cero en p0 , entonces se dice que G(z) tiene un polo de orden p en
p0 .

DE ECUACIONES EN DIFERENCIAS LINEALES USANDO LA TRANSFORMADA Z


32RESOLUCION

2.8.

Resoluci
on de ecuaciones en diferencias lineales usando la transformada Z

En la seccion 2.3 se presentaba a la transformada Z como un metodo matematico


para resolver ecuaciones en diferencias. En control de sistemas por computador su
utilidad va mas alla, usandose como medio para hallar una forma de representar la
dinamica de un sistema mediante el concepto de funcion de transferencia. Sin embargo
tambien puede ser u
til emplearla para resolver ecuaciones en diferencias, cuando estas
modelan el comportamiento de un sistema. Se vera con un ejemplo:
yk = 0,9yk1 + uk
Para resolver esta ecuacion en diferencias, que modela a un sistema de primer orden,
se comienza por obtener su funcion de transferencia usando la transformada Z:
yk = 0,9yk1 + uk Y (z) =

1
z
U(z) =
U(z)
1
1 0,9z
z 0,9

Supondremos que la entrada es un escalon unitario, obteniendose Y (z):


Y (z) =

z
z
z 0,9 z 1

Se obtiene la descomposicion en fracciones simples:


Y (z) =

z
z
9z
10z
=
+
z 0,9 z 1
z 0,9 z 1

de manera que se puede obtener la solucion de la ecuacion usando la transformada Z


inversa:
yk = 9(0,9)k + 10

2.9.

Algebra de Bloques

En cursos basicos de control se muestra el uso de diagramas de bloques para representar distintas configuraciones de sistemas de control y se muestra como dichos
diagramas se pueden simplificar usando el algebra de bloques. Dicha algebra de bloques es aplicable a sistemas continuos y discretos indistintamente, por lo que no se
vera aqu en profundidad. Sin embargo es conveniente recordar los resultados principales. En la figura 2.4 se muestran algunas equivalencias o reglas fundamentales del
algebra de bloques.

CAPITULO 2. SECUENCIAS Y TRANSFORMADA Z

Figura 2.4: Algunas reglas fundamentales del algebra de bloques

33


ALGUNAS FUNCIONES UTILES
DE MATLAB

34

Dentro de las reglas tpicas, las mas importantes son las que muestran distintas
relaciones entre las variables en una estructura de control realimentado. En primer
lugar, considerese un lazo de realimentacion como el que sigue:

En este caso, la funcion de transferencia de bucle cerrado, es decir la relacion entre


R(z) y C(z), vale:
C(z)
G(z)
GBC (z) =
=
R(z)
1 + G(z)H(z)
Por otra parte, la funcion de transferencia entre el error y la referencia vale:
GERR (z) =

E(z)
1
=
R(z)
1 + G(z)H(z)

Otro caso habitual es una realimentacion con un controlador en la cadena directa:

En este caso, la funcion de transferencia de bucle cerrado, vale:


GBC (z) =

C(z)
Gc (z)Gp (z)
=
R(z)
1 + Gc (z)Gp (z)H(z)

Tambien es interesante conocer la funcion de transferencia entre la perturbacion a la


entrada de la planta y la salida de la misma:
GD (z) =

2.10.

C(z)
Gp (z)
=
D(z)
1 + Gc (z)Gp (z)H(z)

Algunas funciones u
tiles de Matlab

La mayor parte de las funciones u


tiles de Matlab que estan relacionadas con la
transformada Z estan en el toolbox de matematica simbolica. No se pretende aqu dar

CAPITULO 2. SECUENCIAS Y TRANSFORMADA Z

35

una explicacion exhaustiva de todas las funciones ni de su funcionamiento, por lo


que se remite al lector a la documentacion propia de Matlab para un tratamiento en
profundidad de las mismas.

La funcion syms se usa para definir los smbolos que intervendran en las funciones
que se usaran despues. Ademas permite listar los smbolos ya definidos. As si
queremos definir n, k y z como smbolos y ver despues los smbolos definidos
usaremos:
>> syms n k z
>> syms
k

>>

Para obtener la transformada Z de una expresion se usara la funcion ztrans.


Notese que el resultado que se obtiene no tiene por que coincidir aparentemente
con el que aparece por ejemplo en las tablas de transformadas Z. Esto es debido
a que el metodo que emplea Matlab es diferente y conduce a diferentes niveles de
simplificacion. Considerese el siguiente ejemplo:
>> ztrans(-9*(0.9)^k+10)
ans =
-10*z/(10/9*z-1)+10*z/(z-1)
>>

La transformada Z inversa se puede obtener usando la funcion iztrans. Continuando con el ejemplo anterior:
>> iztrans(-10*z/(10/9*z-1)+10*z/(z-1))
ans =
-9*(9/10)^n+10
>>

La funcion residue se puede usar para obtener los residuos de una descomposicion
en fracciones mediante la formula de Heaviside:


ALGUNAS FUNCIONES UTILES
DE MATLAB

36

>> [R,P,K] = residue([1 0 0],[1 -1.9 0.9])


R =
10.0000
-8.1000

P =
1.0000
0.9000

K =
1
>>

lo que se puede interpretar como la siguiente descomposicion:


z2
10
8,1

+
+1
2
z 1,9z + 0,9
z 1 z 0,9

Captulo 3
Proceso de muestreo
3.1.

Introducci
on

En este captulo se estudiara como se muestrea un sistema continuo al ser controlado


mediante un esquema de control por computador y como este muestreo afecta a la
dinamica del proceso que es percibida por el sistema de control. Tambien se vera como
es posible reconstruir una se
nal a partir de su equivalente muestreada. A grandes
rasgos, el proceso de muestreo significa que una se
nal continua es reemplazada por
una secuencia de n
umeros que representan los valores de la se
nal en los instantes de
muestreo. Tras el proceso de muestreo, esa secuencia de n
umeros sera empleada por
alg
un tipo de algoritmo de control o proceso de se
nal, que producira otra secuencia de
n
umeros que, usualmente, se utilizara para producir otra se
nal continua mediante un
proceso de reconstruccion de se
nal.
A continuacion veremos los elementos del proceso de muestreo en el contexto de
un sistema de control por computador. Comenzaremos recordando el esquema de un
sistema de control por computador tal y como se muestra en la figura 3.1. Puede observarse, ademas de los convertidores digital/analogico y analogico/digital que adaptan
la se
nal de formato, dos elementos fundamentales en el proceso de muestreo: en primer
lugar la se
nal de error solo llega al computador en determinados instantes de tiempo
separados por un tiempo T . Por otra parte la salida del computador, es decir la se
nal
de control solo se conecta a la planta en esos mismos instantes de tiempo. Entre un
instante y el siguiente se usa un mantenedor de orden cero que mantiene la se
nal de
control que se aplica a la planta constante. Por tanto la se
nal de control solo cambia en
los instantes en los que la salida del computador se conecta a la planta. Esos instantes
37

38

REPASO DE LA TRANSFORMADA DE FOURIER

SINCRONA

MUESTREO

REF

T
e(t) {ek}

COMPUTADOR

{uk}

C. D/A +
M.O.C.

u(t)
PLANTA

C. A/D

SALIDA
y(t)

PLANTA DISCRETIZADA

Figura 3.1: Esquema de un sistema de control por computador.

son los intervalos de muestreo y a T se le llama tiempo de muestro. La figura 3.2 ilustra el muestreo de una se
nal continua y la aplicacion de un mantenedor o retenedor de
orden cero a la se
nal muestreada.

Figura 3.2: Muestrador mediante impulsos y mantenedor o retenedor de orden cero.

En resumen en cuanto al proceso de muestreo hay que:

1. Muestrear la se
nal continua.
2. Mantener la salida (se
nal de control) hasta el siguiente periodo de muestreo (reconstruccion de la se
nal de salida).

3.2.

Repaso de la transformada de Fourier

La transformada de Fourier es un instrumento matematico que resulta u


til en el
estudio de se
nales y sistemas de control. Recordemos que la transformada de Fourier

CAPITULO 3. PROCESO DE MUESTREO

39

de una se
nal periodica fT (t) de periodo T se calcula como:
T

FT (n ) =

Z2

fT (t)ejn t dt

donde n =

2
n
T

n = 0, 1, . . .

(3.1)

T2

Por otra parte, la transformada de Fourier inversa o antitransformada, se calcula como:

1 X
1X
jn t
fT (t) =
FT (n )e
=
FT (n )ejn t
T
2

donde =

2
T

(3.2)

En el caso de que la se
nal a transformar no fuese periodica se considera que el periodo
T tiende a infinito por lo que el sumatorio de la antitransformada se aproxima por una
integral y el termino se sustituye por d, de manera que queda:
F () =

1
f (t) =
2

f (t)ejt dt

(3.3)

(3.4)

f ()ejtdw

Notese que F () es un n
umero complejo, por lo que a la hora de representarla se
utilizaran dos graficas, una para el modulo y otra para la fase.
La transformada de Fourier nos da informacion sobre la distribucion de la energa
de una se
nal a lo largo del espectro de frecuencias que esta ocupa. Una diferencia
entre la transformada de una se
nal periodica y la de otra que no lo es, es que una se
nal
periodica tiene un espectro de frecuencia finito, mientras que una no periodica presenta
energa (en mayor o menor medida) en todas las frecuencias.

3.3.

Muestreo de sistemas continuos

El elemento que se va a emplear para muestrear sistemas continuos se denomina


muestreador. El muestreador obtiene la secuencia discreta de n
umeros a partir de la
se
nal continua. En la figura 3.3 se ilustra un muestreador ideal. Este funciona como
un contacto que se cierra cada T segundos de manera que es solo en esos instantes
(llamados instantes de muestreo) cuando se ((deja pasar)) la se
nal continua. Por tanto,

la se
nal muestreada x (t) sera igual a la continua original x(t) en esos instantes de
muestreo y cero en todos los demas.

40

MUESTREO DE SISTEMAS CONTINUOS


x*(t)

x(t)

T x*(t)

x(t)

 !

#

"

'& (&

&

)&

*&

Figura 3.3: Muestreador ideal.

Por otra parte, los instantes en los que se cierra el contacto se pueden representar
como un tren de impulsos p(t) igual al que se muestra en la figura 3.4. Ese tren de

p(t)

3T

2T

2T

3T

Figura 3.4: Tren de pulsos ideal.

impulsos se puede describir mediante la expresion:


p(t) =

(t kT )

donde (t kT ) vale 1 para t = kT y cero en otro caso.


Teniendo en cuenta el papel del tren de impulsos, el esquema de muestreo ilustrado
en la figura 3.3 funciona de manera analoga a un proceso de modulacion de manera
que a la salida se obtiene el resultado de modular la se
nal original x(t) (llamada se
nal
moduladora) con el tren de impulsos p(t) al que se le denomina se
nal portadora (ver
figura 3.5).
La se
nal muestreada x (t) se calculara como:

x (t) =

X
k=0

x(t)(t kT ) = x(t) p(t)

(3.5)

Notese que a la se
nal x(t) se le corresponde su transformada de Fourier X(), mientras que a la se
nal portadora, por ser periodica le corresponde como transformada de

CAPITULO 3. PROCESO DE MUESTREO

41

Figura 3.5: Muestreador mediante impulsos como modulador.

Fourier:

P (n ) =

Z2

(t)ejn t dt = 1

n =

2
n
T

T2

Cual sera la relacion entre el espectro de la se


nal muestreada y el espectro de la
se
nal original ? Seg
un se ha visto en (3.5):
x (t) = p(t) y(t)
Esto lo podemos usar al hallar X (w) (transformada de Fourier de la se
nal muestreada):
X (w) =

x (t)ejt dt =

x(t) p(t)ejt dt

(3.6)

Teniendo en cuenta que P (n ) = 1, usando la antitransformada se infiere que

1 X jn t
p(t) =
e
T

LLevando esto a (3.6) se tiene que:


"
#
Z
Z

X
1
1 X
jn t
jt

X (w) =
x(t)
e
e
dt =
x(t)ej(n )t dt
T
T n=

(3.7)

lo que finalmente equivale a:

1 X
X (w) =
X( n )
T n=

Lo anterior se puede interpretar como que

n =

2
n
T

(3.8)

DE UNA SENAL

RECONSTRUCCION
MUESTREADA

42

El espectro en frecuencia de la se
nal muestrada x (t) tiene la misma forma
que la de la se
nal sin muestrar x(t), atenuada por un factor T1 y repetida
en la frecuencia cada = 2
radianes por segundo.
T
Esto se ilustra en la figura 3.8. Notese que para n = 0 entonces n = 0 y X (0 ) =
1
X().
T

Figura 3.6: Espectro en frecuencia de una se


nal muestreada, observandose como se repite el espectro
original atenuado cada s = 2
.
T

Es decir, el espectro de la se
nal muestreada contiene infinitas repeticiones (atenuadas) del espectro de la se
nal original. Esto da pie a una reflexion muy interesante:
se podra reconstruir la se
nal continua original a partir de la muestreada a partir de
alguna de esas repeticiones del espectro ?

3.4.

Reconstrucci
on de una se
nal muestreada

Cuando se habla de reconstruir una se


nal muestreada se esta aludiendo a la tarea de

obtener x(t) a partir de x (), es decir a obtener la se


nal temporal original a partir del
espectro de la muestreada. El proceso desde un punto de vista conceptual sera simple:
bastara con poner un filtro paso banda idela de ganancia T centrado en 0 y esto nos
dara el espectro en frecuencia de la se
nal original, es decir X(). Este procedimiento
se ilustra en la figura 3.7. A partir de ah, aplicaramos la antitransformada de Fourier
para obtener x(t).
Notese que este proceso es posible siempre que las repeticiones de X() esten suradianes por segundo, por
ficientemente separadas. Las repeticiones aparecen cada 2
T
lo que si el tiempo de muestreo T crece la separacion disminuira, hasta que llegue un
momento en el que las repeticiones se ((montaran)) unas sobre otras, solapandose y
dejando irreconocible el espectro original (ver figura 3.8). En ese caso no sera posible
reconstruir la se
nal original.

CAPITULO 3. PROCESO DE MUESTREO

234567

0
,-8. /,

+10

43

,-. / ,

Figura 3.7: Uso de un filtro paso banda para obtener el espectro en frecuencia de la se
nal original a
partir del de la muestreada.

Figura 3.8: Espectro en frecuencia de una se


nal muestreada con una frecuencia de muestreo insuficiente
(tiempo de muestreo demasiado alto) para poder reconstruir la original.

DE UNA SENAL

RECONSTRUCCION
MUESTREADA

44

Cual es el tiempo de muestreo maximo a partir del cual se da el solape de las


repeticiones ? Tal y como se ha visto en la seccion anterior y se ilustra en la figura 3.6,
radianes por segundo.
las ((centros)) de las repeticiones estan separados por s = 2
T
Por otra parte esas repeticiones contendran energa hasta una determinada frecuencia
c . La figura 3.9 muestra la situacion lmite a partir de la cual el solape comenzara a
imposibilitar la reconstruccion. Claramente si s es menor que dos veces la mitad de

<=>? @<
9:;

Figura 3.9: Repeticiones en frecuencia del espectro de una se


nal muestreada en las que el tiempo de
muestreo es el lmite para poder reconstruir.

la ((banda de frecuencias)) que ocupa el espectro de la se


nal original (es dedir que c )
se producira el solape. Por tanto la condicion que buscamos es que:
s 2c
Este resultado se enuncia en el Teorema de Shannon (tambien llamado teorema del
muestreo):
Teorema 3.1 Teorema de Shannon : La frecuencia s a la que debe muestrearse una
se
nal debe ser al menos el doble de aquella frecuencia m
as alta c para la que el sistema
tiene alguna energa
Evidentemente como s = 2
la condicion para que el tiempo de muestreo sea tal que
T
permita la reconstruccion de la se
nal es:

T
(3.9)
c
Por tanto el teorema de Shannon lo podemos reescribir como:
Si una se
nal no contiene componentes en frecuencias superiores a c , puede
ser completamente caracterizada por los valores muestreados en instantes
de tiempo separados por T c .

CAPITULO 3. PROCESO DE MUESTREO

45

Como regla practica este resultado no se lleva al lmite, pues los filtros reales distan
mucho de ser ideales, de manera que se suele usar un tiempo de muestreo entre 10 y 20
veces mas rapido que la constante de tiempo caracterstica del sistema continuo. Mas
adelante veremos como se utilizan los mantenedores para reconstruir la se
nal continua
original a partir de la muestreada.

3.5.

Aliasing o enmascaramiento de frecuencias

Considerese la figura 3.10. En ella se ve una fotografa de la pantalla de un osciloscopio donde aparece una se
nal senoidal y el resultado de muestrearla y pasar la se
nal
muestreada a traves de un mantenedor de orden cero (vease la seccion 3.6). La se
nal
reconstruida por el mantenedor mantiene una gran semejanza con la se
nal original, y
claramente son de la misma frecuencia. El muestreo en este caso se ha llevado a cabo
de manera correcta.

Figura 3.10: Ejemplo de muestreo correcto.

Que puede pasar si una se


nal es muestreada a una tasa insuficiente (por debajo
del lmite de Shannon) ? Puede que se obtenga algo que ni de lejos se parece a la se
nal
original. Pero tambien puede darse otro caso, en el que se obtenga una se
nal enga
nosamente correcta. La figura 3.11 nos muestra un ejemplo de esta situacion. En ella se
ve que la se
nal reconstruida es aparentemente una senoide, lo cual es correcto, pero de
una frecuencia que no coincide con la de la original. Esto es, la se
nal reconstruida es

46

ALIASING O ENMASCARAMIENTO DE FRECUENCIAS

aparentemente una se
nal correcta pero no lo es por que su frecuencia no es la que debe
ser. Este fenomeno se llama ((aliasing)) y es especialmente problematico por que puede
confundirse el resultado de un muestreo incorrecto con uno correcto.

Figura 3.11: Ejemplo de muestreo a una tasa insuficiente con aparicion de ((aliasing)).

Este fenomeno se da bajo ciertas condiciones cuando se muestrea una se


nal a una
tasa inferior a la dictada por el teorema de Shannon y se intenta reconstruir despues.
Mas especificamente este problema se da cuando los valores que se obtienen al muestrear
de dos se
nales diferentes son identicos. Claramente si para dos se
nales diferentes se
obtienen los mismos valores muestreados, al reconstruir la se
nal no se podran diferenciar
entre ellas, de ah el termino ((aliasing)), pues una de ella es alias de la otra. Esto se
ilustra en la figura 3.12. En la parte superior de dicha figura encontramos la se
nal sin t,
la cual si la muestreamos a 3 rad/s permite una reconstruccion correcta. Mas abajo
aparece una se
nal de frecuencia superior, sin 4t, la cual al ser muestreada a 3 rad/s,
no solo no puede reconstruirse, si no que produce la misma secuencia que la anterior,
por lo que es indistinguible de esta. Es decir, el muestreo a 3 rad/s de la se
nal sin 4t
produce una secuencia que la hace parecer como el resultado de muestrear la se
nal sin t.
Como se ha visto, al muestrear a una tasa insuficiente, aparecen frecuencias ((alias)).
Sabemos que, desde el punto de vista del espectro, cuando se muestrea a una tasa
insuficiente, las repeticiones del espectro de la se
nal original en el de la muestreada
se solapan. Como se relaciona esto con el ((aliasing)) ? La figura 3.13 muestra una
situacion en la que los espectros se han solapado. Debido al solape, el espectro en
= 2 tiene dos componentes, |E(j2 )| y |E(j(s 2 ))|. Si este espectro se filtra con
un filtro pasa-bajas o un mantenedor de orden cero, algunos de los armonicos mas altos
apareceran en la salida. Este fenomeno por el que la componente frecuencial s 2

CAPITULO 3. PROCESO DE MUESTREO

47

Figura 3.12: Ejemplo de ((aliasing)).

(en general, ns 2 , siendo n entero) aparece tambien en 2 cuando se muestrea la


se
nal continua es el ((aliasing)). La frecuencia s 2 (en general ns 2 ) aparece
como si fuese de frecuencia 2 , por lo que se la llama frecuencia alias de 2 .
Otro fenomeno que esta relacionado con el muestreo a frecuencias por debajo de la
del lmite de Shannon es el de las oscilaciones ocultas. Este fenomeno es consecuencia de
la perdida de informacion que se produce por un muestreo incorrecto y consiste en que
parte del comportamiento de la se
nal continua original, fundamentalmente oscilaciones
de mayor frecuencia, desaparecen en la se
nal muestreada. Como ilustracion considerese
la figura 3.14. En ella se puede ver que la se
nal x(t) es la suma de dos se
noidales,
pero debido a la tasa de muestreo, la de mayor frecuencia no aparece en la se
nal
muestreada. En general, si la se
nal x(t) contiene una componente con frecuencia n
veces la frecuencia de muestreo, entonces esta componente puede no aparecer en la
salida. Estas oscilaciones entre los tiempos de muestreo son las oscilaciones ocultas.

3.6.

Reconstrucci
on usando mantenedores

Una de las tareas mas habituales es reconstruir una se


nal continua a partir de una
muestreada. En el contexto que nos ocupa esto es necesario, por ejemplo, para aplicar

USANDO MANTENEDORES
RECONSTRUCCION

48

E ( j )
j

E ( j N ) = +

==

E G

1
E ( j K )
T

M
1
E ( j ( L ) )
T

F D

J I

Figura 3.13: Explicacion del ((aliasing)).

x (t ) =
xO(Pt )

+ x (t )

xQ(t )
3

xR ( t )

x(k )

5
3

Figura 3.14: Ejemplo de oscilaciones ocultas.

CAPITULO 3. PROCESO DE MUESTREO

49

la se
nal de control sobre el proceso controlado, pues una se
nal muestreada, que no
existe entre los instantes de muestreo no es en general admisible como se
nal de entrada
al proceso. La primera idea sera usar un filtro ideal, tal y como se plantea en la seccion
3.4. Esto no es posible por que el filtro necesario es no causal y por tanto no realizable.
La alternativa practica es usar mantenedores. Un mantenedor generico de orden n
responde a la siguiente expresion:
x (t)
= xr (t) = x (kT ) + x (kT ) (t kT ) + +

x(n) (kT )
n!

(t kT )n kT t < (k + 1) T

donde xr (t) es la se
nal reconstruida que aproxima a la original continua y x(n) (kT )
denota la enesima derivada de x(t) en t = kT . El orden n del mantenedor va a determinar la calidad de la aproximacion, pero tambien tiene como contrapartida la inclusion
de dinamicas adicionales que pueden resultar en problemas de estabilidad. Es por esto
por lo que se suelen usar mantenedores de orden 0 o 1, siendo los primeros los mas
usados con mucha diferencia.
En primer lugar estudiaremos el mantenedor de orden cero, que aproxima a la se
nal
continua mediante la expresion:
x (t) xr (t) = x (kT )

kT t < (k + 1) T

Es decir, este tipo de mantenedor reconstruye la se


nal manteniendola constante e igual
a x(kT ) hasta el siguiente instante de muestreo. La figura 3.15 muestra un ejemplo
de reconstruccion con este tipo de mantenedores. Como se ve, la se
nal reconstruida
muestra un aspecto de ((escalera)) muy caracterstico.

xr (t )

x* (t )

x(t )

x(t )
xr (t )

x* (t )

M.O.C

0 T 2T 3T

7T

Figura 3.15: Reconstrucci


on mediante un mantenedor de orden cero.

Dado que el mantenedor esta interpuesto entre el computador o sistema de control y


el proceso a controlar conviene analizar cual es su funcion de transferencia continua, la
dinamica que introduce y como filtra el espectro de la se
nal muestreada para reconstruir
la continua. Para obtener la funcion de transferencia del mantenedor de orden cero, nos
fijaremos en su respuesta impulsional (figura 3.16). Cuando a la entrada del mantenedor
se aplica un impulso unitario, a la salida se obtiene un pulso unitario. Dicho pulso

USANDO MANTENEDORES
RECONSTRUCCION

50

(k )

M.O.C
1
s

0
0

-1

1 ST
e
s

Figura 3.16: Respuesta impulsional del mantenedor de orden cero.

unitario, es la suma de dos se


nales escalon de signo opuesto y una de ellas retrasada
T segundos. Teniendo en cuenta la funcion de transferencia continua de las se
nales
escalon (figura 3.16), la funcion de transferencia continua del mantenedor de orden
cero sera:
1 1 T s 1 eT s
Gho (s) = +
e
=
s
s
s
Usando esta funcion de transferencia, y teniendo en cuenta que s = j:
T

ej 2 ej
1 ejT
=T
Gho (j) =
j
2j T
2

T
sin
T
= T T 2 ej 2

T
2

ej

T
2

y como

T
2

 
2
s

,
s

se llega a:
sin
Gho (j) = T

ej s

La respuesta en frecuencia correspondiente a esta funcion de transferencia es el que se


muestra en la figura 3.17. Puede observarse que el mantenedor de orden cero amplifica
con factor T en torno a = 0, por lo que a frecuencias bajas tiende a cancelar la
amortiguacion de T1 propia del proceso de muestreo. Por otra parte se puede ver que
en torno a donde se sit
uan las repeticiones del espectro (los m
ultiplos de la frecuencia
de muestreo), la funcion de transferencia se hace cero, por lo que se bloquearan o
atenuaran las frecuencias en tono a dichos m
ultiplos de s . Se deduce por tanto que la
reconstruccion sera buena si los m
ultiplos estan lo suficientemente separados en relacion
a la parte del espectro ocupada por la se
nal muestreada, es decir, si el muestreo se ha
realizado a una tasa suficientemente rapida. Por otra parte, el mantenedor de orden
cero introduce un retardo de fase creciente que llega hasta -180 para cada repeticion del

CAPITULO 3. PROCESO DE MUESTREO

51

G UV ( j )
T

0
G \] ( j )
0

2 X

3 Y

90 [
180 Z

Figura 3.17: Respuesta en frecuencia correspondiente al mantenedor de orden cero.

espectro de la se
nal original. Veamos este analisis sobre un ejemplo. La grafica superior
de la figura 3.18 muestra el espectro de una se
nal sinusoide de frecuencia 1 . Al sufrir
esta un proceso de muestreo ideal el espectro de la se
nal muestreada resultante contiene
infinitas repeticiones atenuadas del espectro original centradas en los m
ultiplos de la
se
nal de muestreo (grafica intermedia de la figura 3.18). A continuacion se realiza la
reconstruccion de la se
nal original pasando la se
nal muestreada a traves de un mantenedor de orden cero. En la grafica inferior de la figura 3.18 se puede observar como el
espectro original se reproduce casi exactamente en el de la se
nal reconstruida (ligeramente atenuado) mientras que las primeras repeticiones aparecen pero muy atenuadas,
por lo que su contribucion a la se
nal reconstruida sera menor. La figura 3.19 muestra
el aspecto de la se
nal continua original y el de la se
nal reconstruida, observandose
el tpico efecto de ((escalera)), que no evita que la se
nal original sea reconocible en la
reconstruida.
Finalmente, hay que tener en cuenta que son posibles otros esquemas de reconstruccion diferentes del uso de mantenedores de orden cero. Si bien estos son los aceptados
de manera universal, tambien es posible emplear mantenedores de orden superior. Hay
que tener en cuenta, entonces, que la dinamica que se interpone entre el computador
y el proceso a controlar tiene una complejidad creciente con el orden del mantenedor,
por lo que en la practica no se suele considerar mas alla del mantenedor de orden 1.
En el mantenedor de orden 1, el valor de la se
nal reconstruida entre los instantes de
muestreo se aproxima (o interpola) mediante rectas. Dado que la reconstruccion debe
ser causal, el valor de x((k + 1)T ) no se supone conocido en kT , por lo que la salida
en el periodo kT t < (k + 1)T se obtiene mediante la recta que es la extrapolacion

USANDO MANTENEDORES
RECONSTRUCCION

52

X ( j )

1
3

p_ q` 2

re

X ( j )

Muestreo
ideal
3

o^

xn

vl

wm

2
1

X ( j )

M.O.C.

g sh 2

uk

tj

Figura 3.18: Interpretacion frecuencial del proceso de muestreo de una senoide y posterior reconstruccion con un mantenedor de orden cero.

salida
entrada

Figura 3.19: Aspecto de la se


nal original y la reconstruida en el ejemplo de la figura 3.18.

CAPITULO 3. PROCESO DE MUESTREO

53

de los valores de la se
nal en (k 1)T y kT , por lo que la se
nal se obtendra mediante
la expresion:
x (t)
= xr (t) =

t KT
(x(kT ) x((k 1)T )) + x(kT )
T

kT t < (k + 1)T

La figura 3.20 ilustra el funcionamiento de este tipo de mantenedor. Por otra parte, la
funcion de transferencia en tiempo continuo de este mantenedor es:
Ts + 1
Gho (j) =
T

1 eT s
s

2

La respuesta en frecuencia de este mantenedor se muestra en la figura 3.21, ob-

xy (t )
x(t )

x (t )
T

2T

3T

4T

5T

6T

Figura 3.20: Funcionamiento del mantenedor de orden 1.

servandose que la atenuacion entorno a los centros de las repeticiones del espectro
es mayor que la del mantenedor de orden cero, lo cual asegura a este respecto un
mejor bloqueo de las repeticiones del espectro y por tanto una mejor reconstruccion.
Observese, sin embargo, que en ciertas frecuencias la amplificacion es superior a T, por
lo que distorsionara la reconstruccion del espectro original que, recordemos, sufre una
atenuacion de T1 en todas las frecuencias. As mismo, puede observarse que la dinamica
es mas compleja que la del mantenedor de orden 0, por lo que en la practica, se suele
utilizar el mantenedor de orden cero en casi todas las aplicaciones de control.

3.7.

Obtenci
on de la funci
on de transferencia pulsada

En esta seccion veremos como obtener la funcion de transferencia discreta G(z)


para un sistema dinamico cuya funcion de transferencia continua es G(s) y al que se

54

DE LA FUNCION
DE TRANSFERENCIA PULSADA
OBTENCION

Figura 3.21: Respuesta en frecuencia del mantenedor de orden 1 (trazo continuo) comparada con la
del mantenedor de orden 0 (trazo discontinuo).

le muestrea con tiempo T y un mantenedor de orden cero. El hallar directamente la


transformada Z de G(s) no es la solucion a esto pues no se esta teniendo en cuenta
que hay un mantenedor antes del sistema continuo tal y como ilustra la figura 3.1. Por
tanto, hay que tener en cuenta el efecto de la dinamica del mantenedor de orden cero
sobre el proceso muestreado. La funcion de transferencia del sistema mas el mantenedor
de orden cero sera lo que se conozca como la funcion de transferencia pulsada.
El procedimiento de obtencion de la funcion de transferencia pulsada sera el siguiente:

1. Dado G(S) obtener g(t) mediante la transformada de Laplace inversa.


2. Formar la secuencia de ponderacion {gk } = g(kT ).
3. Obtener la transformada Z como G(z) =

gk z k .

En el primer paso hay que tener en cuenta que la funcion de transferencia G(s) se
obtiene multiplicando la funcion de transferencia del sistema por la del mantenedor de
orden cero, que es:
1 esT
H(s) =
s
Un procedimiento mas comodo pero menos riguroso sera el siguiente:

1. Dado G(s) obtener G (s) =

G(s)
.
s

CAPITULO 3. PROCESO DE MUESTREO

55

2. Obtener la transformada Z de G (s), es decir G (z) (para esto se puede recurrir


a las tablas 2.1 y 2.2).
3. Obtener G(z) = (1 z 1 )G (z).
Existen en la literatura tablas que directamente obtienen la funcion de transferencia
pulsada a partir de la funcion de transferencia continua del sistema.
Ejemplo 3.1
Sea el sistema cuya funcion de transferencia en continuo es
1
s+a
Obtener la funcion de transferencia pulsada en discreto.
Ha de tenerse en cuenta la funcion de transferencia del mantenedor por lo que
G(s) =

1 esT 1
s
s+a

El primer paso sera obtener g(t):






 sT 
1
esT
1
e
1
1
1
g(t) = L

=L
L
s(s + a) s(s + a)
s(s + a)
s(s + a)
Notese que en la expresion anterior, las funciones a las que se aplica la antitransformada
son la misma, excepto que la segunda es la primera retrasada un tiempo T ,por lo
que calcularemos la primera expresion y luego le restaremos (ya en el dominio z) la
retrasada. La antitransformada se calcula como:




1
11 1 1
1
1
1
g1 (t) = L
=L

= (1 eat )
s(s + a)
as as+a
a
Luego


1
1 eakT
a
Aplicamos la transformada Z a lo anterior obteniendose (en este caso se pueden usar
directamente las tablas):


1
1  akT 1
z
z
G1 (z) = Z {1} Z e
=

a
a
a z 1 z eaT
{g1k } =

Y usando este resultado se puede calcular la funcion de transferencia pulsada del sistema original:


1
1
1 1 eaT
1
1 z
G(z) = (1 z )G1 (z) = (1 z )

=
a z 1 z eaT
a z eaT

56

DE LA FUNCION
DE TRANSFERENCIA PULSADA
OBTENCION

Captulo 4
An
alisis de sistemas muestreados
4.1.

Estabilidad en sistemas de control por computador

En esta seccion se procedera a presentar un estudio de estabilidad para sistemas


muestreados analogo al que se hace paras sistemas en tiempo continuo. En el caso que
nos ocupa la transformada de Laplace se sustituye por la transformada Z. De la misma
manera, el controlador analogico se sustituye por un computador digital.
En primer lugar recuerdese que la funcion de transferencia de un sistema expresada
en el dominio Z nos dice que
Y (z) = G(z)U(z)
(4.1)
siendo G(z) la funcion de transferencia el cociente de polinomios
G(z) =

b0 + b1 z 1 + + bm z m
Y (z)
=
U(z)
1 + a1 z 1 + + an z n

Supongase asi mismo que la se


nal de entrada U(z) es otro cociente de polinomios, es
decir
Nu (z)
U(z) =
Du (z)
Teniendo en cuenta las expresiones anteriores en la ecuacion (4.1) se tiene que
Y (z) =

b0 z n + b1 z n1 + + bm z nm Nu (z)
N(z)
Nu (z)

n
n1
z + a1 z
+ + an
Du (z)
(z p1 ) (z pn ) (z pu1 ) (z pum )
57

58

ESTABILIDAD EN SISTEMAS DE CONTROL POR COMPUTADOR

Descomponiendo en fracciones simples se obtiene que


Y (z) =

A1
A2
An
Bu1
Bum
+
++
+
++
z p1 z p2
z pn z pu 1
z pu m

(4.2)

Por otra parte es conocido que la antitransformada Z de la expresion


z
za
es la secuencia
ak
Este resultado lo podemos explotar para obtener la secuencia correspondiente a las
fracciones simples obtenidas en (4.2) pues es evidente que
Ai
z
= Ai z 1
z pi
z pi
Multiplicar por Ai implica un escalado, mientras que multiplicar por z 1 supone atrasar
en un tiempo de muestreo la secuencia, luego la antitransformada de las fracciones
simples de (4.2) es
Ai pk1
(4.3)
i
Luego cada la antitransformada de Y (z), es decir la secuencia {yk } sera igual a la suma
de una serie de terminos de la forma (4.3).
A partir de estos resultados como determinar si un sistema es estable o inestable?
Dado que la secuencia {yk } es la suma de una serie de terminos, dicha secuencia sera estable si todos los terminos son a su vez estables. Con solo un termino inestable la
secuencia {yk } sera inestable. De que depende la estabilidad de cada termino? La
respuesta a esta pregunta es que la estabilidad de cada termino depende del valor de
pi , es decir del valor de los polos. La figura 4.1 muestra la evolucion de una secuencia
de la forma (4.3) para distintos valores de pi . Puede observarse que los terminos que
se amortiguan son aquellos en los que 1 < p < 0 y 0 < p < 1. Se comprueba que
pk = signo(p)k |p|k
y para que esa expresion tienda a cero debe cumplirse que el modulo de p sea menor
que uno (esto tambien es valido por supuesto para polos complejos). Este resultado lo
resumimos en la siguiente propiedad.
Propiedad 4.1 Un sistema descrito por una funci
on de transferencia G(z) es estable
si y solo si el modulo de todos sus polos es menor que uno, es decir si todos los polos
pertenecen estrictamente al crculo unidad (crculo de radio uno centrado en p = 0)
ilustrado en la figura 4.2.


CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS

59

0.8

2.5

0.6
2
0.4
1.5

0.2
0

4
6
0<p<1

10

10

10

p>1

3
2

0.5

1
0

1
2

0.5

4
6
1 < p < 0

10

4
p < 1

Figura 4.1: Evolucion de una secuencia de la forma (4.3) para distintos valores de pi .

Figura 4.2: Frontera de la region de estabilidad en el plano z.

60

ESTABILIDAD EN SISTEMAS DE CONTROL POR COMPUTADOR

Si hay un polo fuera del crculo unidad, es decir |pi | > 1, el termino correspondiente
no se amortiguara con lo que el sistema no sera estable.
En el estudio de sistemas continuos el resultado de estabilidad mas conocido establece que un sistema es estable si todos sus polos tienen parte real negativa. Es esto
equivalente al resultado enunciado en la propiedad 4.1? Recuerdese que
z = eTm s
Tomese un punto de la frontera de estabilidad del plano s, es decir un punto en el eje
imaginario del plano s. Estos puntos son los que cumplen que
s = j
es decir con parte real igual a cero. Esto supone que
z = eTm j = 1Tm
es decir, z es un n
umero complejo de modulo unidad y argumento Tm . Por tanto un
punto en la frontera de estabilidad del plano s se transforma en un punto en la frontera
de estabilidad del plano z.
Que ocurre si tenemos un punto en el plano s con parte real distinta de cero ? Ese
punto tendra la forma s = + j, por lo que su correspondencia en el plano z sera
z = eTm s = eTm (+j) = eTm eTm j
lo que implica que
z = eTm Tm
o lo que es lo mismo un n
umero complejo con modulo eTm y argumento Tm . Si
consideramos que es constante y variamos , esto nos da un crculo de radio eTm . Si
es mayor que cero, el punto en el plano s corresponde a la zona inestable. El crculo
correspondiente en el plano z tendra modulo mayor que la unidad, pues eTm > 1 para
> 0. Si es menor que cero, entonces es facil ver que eTm < 1, por que e estara
elevado a un exponente negativo. Por tanto el crculo asociado sera de modulo inferior
a la unidad y por tanto el punto en la region estable del plano s se transformara en
un punto estable en el plano z.
Que ocurre para el caso de s = 0 ? En este caso z = eTm 0 = 1, por lo que se
transforma en z = 1. Esto nos indica que un polo en cero en continuo, es decir un
polo integrador, corresponde a un polo en z = 1 para un sistema en tiempo discreto.
Analogamente es facil ver que si s = , la transformacion correspondiente es z =
0. Finalmente partiendo de estos dos resultados se puede comprobar, que, la parte
negativa del eje real en el plano s (es decir todos los valores reales de s desde s = 0
hasta s = ), se transforma en la parte del eje real del plano z que va desde z = 1
hasta z = 0.


CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS

4.1.1.

61

El criterio de estabilidad de Jury

Tal y como se ha explicado anteriormente, un sistema en tiempo discreto es estable


si todas las raices del denominador estan dentro del crculo unidad Como averiguar si
esta condicion se cumple? Hallar todas las raices del polinomio y comprobar su valor es
la respuesta mas evidente a esta pregunta, pero no siempre es posible. En esta seccion
se vera el criterio de Jury, debido a Schur, Cohn y Jury. Dicho criterio lo podemos ver
como el equivalente en tiempo discreto al criterio de Routh-Hurwitz. Su proposito es
el de aseverar si todas las raices de un determinado polinomio en z estan dentro del
crculo unidad sin tener que calcularlas. Sea un polinomio en z

A(z) = a0 z n + a1 z n1 + + an = 0
El criterio de Jury se basa en la construccion de una tabla, cuyas dos primeras filas
son los coeficientes de A(z) en orden directo e inverso, es decir
a0
an

a1
an1

an1
a1

an
a0

Una tercera fila se calcula restando a los elementos de la primera fila los de la
segunda multiplicados cada uno por n = aan0 , resultando
a0
an

a1
an1

an1
a1

an
a0

a0n1

an1
1

n1
an1

A continuacion se a
nade una cuarta fila formada por los coeficientes de la tercera
fila (excepto el u
ltimo) escritos en orden inverso:
a0
an

a1
an1

an1
a1

an
a0

a0n1
n1
an1

an1
1
an1
n2

n1
an1
a0n1

Una quinta linea se obtiene restando a la tercera fila los elementos de la cuarta
an1
multiplicados por n1 = an1
n1 , obteniendo:
0

62

ESTABILIDAD EN SISTEMAS DE CONTROL POR COMPUTADOR

a0
an

a1
an1

an1
a1

an
a0

a0n1
n1
an1

an1
1
an1
n2

an1
n1
an1
0

a0n2

an2
1

El proceso continuara a
nadiendo una sexta fila formada por los coeficientes de la
quinta (menos el u
ltimo) escritos en orden inverso, etc . . . hasta que al final se obtendra
una tabla con 2n + 1 filas:
a0
an

a1
an1

an1
a1

an
a0

a0n1
n1
an1

an1
1
an1
n2

an1
n1
an1
0

a0n2
n2
an2

an2
1
an2
n3

..
.
a00
En general los elementos de la tabla se calculan mediante la expresion:
ak1
= aki k akki
i

siendo

k =

akk
ak0

Teorema 4.1 Si a0 > 0 entonces el polinomio A(z) tiene todas las raices dentro del
crculo unidad si y solo si todos los ak0 con k = 0, 1, 2, . . . , n 1 son positivos. Ademas,
si ning
un ak0 es cero, entonces el n
umero de valores ak0 negativos es igual al n
umero de
raices de A(z) que estan fuera del crculo unidad.
Corolario 4.1.1 Si todos los ak0 para k = 1, . . . , n 1 (n
otese que se excluye k = 0)
0
son positivos, entonces la condici
on a0 > 0 es equivalente a las condiciones:
A(1) > 0

(1)n A(1) > 0

Estas condiciones son necesarias para la estabilidad, por lo que se pueden usar antes
de formar la tabla.


CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS

63

Ejemplo 4.1
Estabilidad de un sistema de segundo orden generico. Considerese la ecuacion caracterstica:
A(z) = z 2 + a1 z + a2 = 0
Se forma la tabla:
1
a2

a1
a1

a2
1
2 = a2

a22

1
a1 (1 a2 )
1 a22

a21 (1a2 )
1+a2

a1 (1 a2 )
1 a22

0
1 =

a1
1+a2

De esta tabla se desprende que todas las raices estaran en el crculo unidad si
1 a22
1 a22

a21 (1a2 )
1+a2

> 0
> 0

que a su vez es equivalente a


a2 < 1
a2 > 1 + a1
a2 > 1 a1
Estas condiciones se cumplen en un triangulo en el espacio de coeficientes del polinomio
caracterstico. Dicho triangulo se ilustra en la figura 4.3.

4.2.

Respuesta transitoria: relaci


on con el diagrama
de polos

En esta seccion se vera los distintos tipos de respuesta transitoria de sistemas discretos en funcion de la posicion de los polos. Como ya se ha visto en la seccion 4.1,
los sistemas cuyos polos esten fuera del circulo unidad son inestables y sus respuestas
transitorias son inestables. Los que esten dentro del circulo unidad seran estables y la
respuesta se amortigua, mas o menos lentamente dependiendo de lo cerca que esten
de la frontera de estabilidad. Los que esten en la frontera de estabilidad produciran
una respuesta oscilatoria estable en el sentido de que permanece acotada pero no se
amortiguara. Las figuras 4.4 y 4.5 muestran las distintos casos para polos en el plano

64

CON EL DIAGRAMA DE POLOS


RESPUESTA TRANSITORIA: RELACION
2.5

1.5

a2

0.5

0.5

1.5

2.5
2.5

1.5

0.5

0.5

1.5

2.5

a1

Figura 4.3: Region del espacio de coeficientes de un polinomio de la forma z 2 + a1 z + a2 = 0 en la que


las raices estan dentro del crculo unidad.

s y sus equivalentes en el plano z. Puede observarse que las respuestas la forma de las
respuestas se preserva al muestrear pero tambien como la posicion de los polos cambia.

Por otra parte, es interesante tambien observar como va variando la respuesta impulsional de un sistema en funcion de la localizacion de sus polos. En la figura 4.6 puede
observarse que en el caso de que los polos esten en el eje real, la respuesta impulsional
sera oscilatoria en la parte negativa y no oscilatoria en la parte positiva. Como es logico
fuera del crculo unidad la respuesta es siempre inestable. Por otra parte si los polos son
complejos conjugados en el eje imaginario, puede observarse (ver figura 4.7) que son
siempre oscilatorios, tardandose mas en amortiguar la respuesta conforme se acercan
a la frontera de la region de estabilidad. En el caso de sistemas en los que los polos
sean complejos conjugados y esten dentro del circulo unidad la respuesta sera siempre estable y oscilatoria (ver figura 4.8), salvo en el caso en el que la parte real sea
positiva, en el que conforme la parte imaginaria se hace mas peque
na el caracter oscilatorio disminuye. Finalmente, cuando los polos estan en el cirtulo unidad la respuesta
es oscilatoria y no se amortigua, aunque la frecuencia de las oscilaciones depende de la
posicion de los polos (ver figura 4.9). Fuera del circulo unidad la respuesta impulsional
sera oscilatoria e inestable.


CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS

65

Figura 4.4: Respuestas transitorias correspondientes a la localizacion de varios polos complejos conjugados en el plano s (a). Respuestas transitorias a los correspondientes polos discretos (b).

66

CON EL DIAGRAMA DE POLOS


RESPUESTA TRANSITORIA: RELACION

Figura 4.5: Respuestas transitorias correspondientes a la localizacion de varios polos complejos conjugados en los lmites de las franjas periodicas del plano s (c). Respuestas transitorias a los correspondientes polos discretos (d).


CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS

Figura 4.6: Respuestas ante un impulso para un sistema con un polo en el eje real.

67

68

CON EL DIAGRAMA DE POLOS


RESPUESTA TRANSITORIA: RELACION

Figura 4.7: Respuestas ante un impulso para un sistema con polos conjugados en el eje imaginario.


CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS

69

Figura 4.8: Respuestas ante un impulso para un sistema con polos conjugados dentro del circulo
unidad.

70

CON EL DIAGRAMA DE POLOS


RESPUESTA TRANSITORIA: RELACION

Figura 4.9: Respuestas ante un impulso para un sistema con polos conjugados en el circulo unidad.


CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS

4.3.

71

Errores en regimen permanente

En esta seccion se estudiara el error en regimen permanente que presenta un sistema


frente a distintos tipos de entradas. Considerese un sistema cuya funcion de transferencia es G(z) y que tiene como entrada una secuencia {rk } que provoca la aparicion
a la salida de la secuencia {yk }. Se define como secuencia de error {ek } la secuencia
diferencia entre las dos anteriores, es decir , la que cumple que
ek = rk yk
Aplicando la transformada Z y teniendo en cuenta el concepto de funcion de transferencia se obtiene
E(z) = R(z) Y (z) = R(z) G(z)R(z) = (1 G(z))R(z)
Aplicando el teorema del valor final, se tiene que
e = lm(1 z 1 )ek
z1

Supongase que se aplica al sistema como entrada un escalon unitario, cuya transformada
Z es
z
R(z) =
z1
El error en regimen permanente lo calcularemos como
z
erpescalon = lm zz (1 z 1 )(1 G(z))R(z) = lm z1
(1 G(z)) z1
z
z1

z1

1 z++bm z
= lm(1 G(z)) = 1 lm ba00+b
+a1 z++an z n

z1

= 1

m
P

i=0
n
P

z1

bi
ai

i=0

Ejemplo 4.2
Sea el sistema
G(z) =

0,2
z 0,9

El error en regimen permanente frente a una entrada escalon es


0,2
erpescalon = 1
= 1
1 0,9

72

ERRORES EN REGIMEN PERMANENTE

Ejemplo 4.3
Sea un sistema de primer orden cualquiera
yk = ayk1 + buk1
determinar las condiciones para que tenga error en regimen permanente nulo frente a
una entrada escalon.
En este caso la funcion de transferencia es
G(z) =
Y el error en regimen permanente sera
erpescalon = 1
luego el error sera cero si b = 1 a.

4.3.1.

b
za

b
1ab
=
1a
1a

Errores en regimen permanente para sistemas en bucle


cerrado

El caso mas interesante es el de los errores para sistemas en bucle cerrado. Supongamos un sistema cuya funcion de transferencia en bucle abierto es G(z) y que se coloca
en la configuracion usual de bucle cerrado con realimentacion unitaria. En este caso se
cumple que
Y (z) = G(z)E(z)
donde E(z) = R(z) Y (z)
y de ah se deduce que
E(z) = R(z) G(z)E(z)

que reordenando es igual a

E(z) =

1
R(z)
1 + G(z)

Supongamos una entrada en escalon. En este caso el error en regimen permanente


sera
1
erpescalon = lm z1
E(z) = lm z1
R(z)
z1 z
z1 z 1+G(z)
z1
1
z
1
= lm z 1+G(z) z1 = 1+ lm G(z)
z1

z1

Definimos Kp = lm G(z) y la expresion del error en regimen permanente frente a


z1
entrada escalon sera
1
erpescalon =
1 + Kp


CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS

73

Notese que Kp es en realidad la ganancia estatica del sistema, por lo que seg
un la
expresion anterior a mayor ganancia, menor error en regimen permanente. Por otra
parte si se desea que el error en regimen permanente frente a escalon sea cero, Kp debe
ser infinita. Eso se consigue si G(z) tiene un polo en z = 1. Este tipo de sistemas se
llama sistemas de tipo 1, y de manera mas general se considera la siguiente definicion:
Definici
on 4.1 Se llama tipo de un sistema al n
umero de polos en z = 1 que tiene
dicho sistema.
Notese que un polo en z = 1 se corresponde con un polo en s = 0 para sistemas en
tiempo continuo, por lo que esta definicion es congruente con la que se da para sistemas
continuos.
Veamos a continuacion el error en regimen permanente cuando la entrada es una
rampa. En este caso la transformada Z de la se
nal de entrada es:
R(z) =

zT
(z 1)2

por lo que el error en regimen permanente se puede calcular como:


z1
1
zT
= lm
z1
z 1 + G(z) (z 1)2 z1
lm

1
(z1)
zT

(z1)G(z)
zT

1
lm (z1)G(z)
zT

1
Kv

z1

donde Kv = lm (z1)G(z)
. Veamos cuanto vale el error en funcion del tipo del sistema.
zT
z1

Si el sistema es tipo 0, no tendra ning


un polo en z = 1, por lo que el factor (z 1) no
se cancela y Kv = 0. Esto implica que el error en regimen permanente es infinito. Si el
sistema es tipo 1, el factor (z 1) se cancela y Kv tiene un valor distinto de cero pero
finito. Por tanto el error en regimen permanente es finito. Por otra parte si el sistema
es de tipo 2 Kv = y el error en regimen permanente es nulo en este caso.
Otra se
nal de entrada com
un es la entrada en parabola. Siguiendo los procedimientos
anteriores se puede demostrar facilmente que en este caso se puede definir:
1
Ka = lm 2 (z 1)2 G(z)
z1 T
y comprobar que el error en regimen permanente es infinito para sistemas de tipo 0 y
1, K1a para sistemas de tipo 2 y cero para sistemas de tipo superior. Todo lo anterior
se puede resumir en la siguiente tabla:
Tipo 0 Tipo 1 Tipo 2
1
errpescalon
0
0
1+Kp
1
errprampa

0
Kv
1
errpparabola

Ka

74CARACTERISTICAS FRECUENCIALES. CORRESPONDENCIA ENTRE EL PLANO S Y EL PLANO Z

4.4.

Caractersticas frecuenciales. Correspondencia


entre el plano s y el plano z

Recuerdese que por definicion


z , eT s
por lo que es evidente que los valores de z que corresponden a un valor dado de s
dependen del tiempo de muestreo. Por otra parte la variable compleja s es equivalente
a s = + j, por tanto
z , eT (+j) = eT ejT
Es decir el modulo de s es eT y la fase ejT . Por las propiedades de los n
umeros
complejos:
z , eT ej(T +2k) k = 0, 1, 2, . . .
Considerese ahora la frecuencia de muestreo s = 2
. Sea un n
umero s1 del plano s, y
T
sea s2 otro n
umero que se diferencia de s1 por un m
ultiplo de la frecuencia de muestreo
en el eje imaginario, es decir
2
s2 = s1 +
j
T
El valor en el plano z que le corresponde a s2 sera
z2 = eT s2 = eT s1 e2j = z1 e2j = z1
Luego

A puntos del plano s que difieran en m


ultiplos de la frecuencia de muestreo
en el eje imaginario le corresponden el mismo lugar en el plano z. Cualquier
punto en el plano z tiene infinitos equivalentes en el plano s.

Este resultado tiene como consecuencia que solo una determinada region del plano
s es la que resulta de interes. Esta region conocida como franja primaria es la que
2
esta entre j 2s y j 2s o lo que es lo mismo entre los n
umeros con fase 2T
T = y
(ver figura 4.10). Por encima y por debajo de esa franja tendramos infinitas franjas
complementarias en la que los n
umeros tienen los mismos equivalentes en z que los
correspondientes en la franja primaria.
Centrando la atencion en la franja primaria, considerese la figura 4.11a. Se definen
en ella una serie de puntos de interes en el plano s, de los que veremos cual es su
equivalente en el plano z. Dichos puntos seran:


CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS

75

Figura 4.10: Regiones de interes en el plano s.

1. El punto s = 0 se transforma en z = e0 = 1.
2. El punto s = j 2s se transforma en z = ej
con modulo uno y fase (180 grados).

s
T
2

= ej o lo que es lo mismo un punto

3. Un punto s = + j 2s se transforma en z = e ej
modulo tendiendo a cero y fase .

s
T
2

4. Un punto s = j 2s se transforma en z = e ej
con modulo tendiendo a cero y fase .

, es decir un n
umero con
s
T
2

, es decir un n
umero

5. El punto s = j 2s se transforma en z = ej , es decir un punto con modulo uno


y fase .
Estos puntos equivalentes se muestran en la figura 4.11b. Si se repite esta analisis para
puntos equivalentes en otras franjas se vera que el resultado es el mismo.

4.4.1.

Otras correspondencias

Veamos algunas correspondencias interesantes.

76CARACTERISTICAS FRECUENCIALES. CORRESPONDENCIA ENTRE EL PLANO S Y EL PLANO Z

Figura 4.11: Puntos de interes en la franja primaria del plano s.


CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS

77

Eje imaginario. Como ya se ha visto anteriormente la frontera de la region de


inestabilidad del plano s se transforma en el circulo unidad, que es la frontera de
la region de estabilidad del plano z (ver figura 4.2).
Eje real. En el eje real del plano s se cumple que s = . Si 0 entonces
z = eT luego el modulo de z es eT > 1 y la fase es cero. En caso de que < 0
entonces el modulo de z esta entre 0 y 1 y la fase sigue siendo 0. Esto implica
que el eje real del plano s se transforma en la parte positiva del eje real del plano
z de manera que de 0 a 1 esta la parte negativa del eje real en s y a partir de 1
la parte positiva.
Lugares de atenuaci
on constante. La atenuacion, calculada como n
esta relacionada con el tiempo de establecimiento (calculado como 3 n . En el
plano s los lugares de atenuacion constante son, como se ilustra en la figura 4.12,
son lneas verticales con parte real 1 y parte imaginaria desde a . Eso
implica que se transforma en n
umeros z cuyo modulo es e1 T y fase de 0 a 2.
El lugar geometrico del plano z es por tanto una circunferencia de radio e1 T y
centrada en z = 0 (ver figura 4.12). El interior de la circunferencia corresponde
a los puntos de s con atenuacion inferior a 1 . Por otra parte si la atenuacion
es superior a cero el radio es superior a 1, mientras que en el caso de de ser la
atenuacion inferior a cero, el radio es inferior a 1.

}~ } }
Figura 4.12: Lugares de atenuacion constante en el plano s y z.

Lugares de frecuencia constante. En este caso los n


umeros en el plano s
forman una lnea horizontal (ver figura 4.13) de la forma s = + j1 . Estos
n
umeros se transforman en z = eT ej1 T . Esto es una recta (ver figura 4.13) que
parte de z = 0 con angulo determinado por la fase omega1 T y que para =

78CARACTERISTICAS FRECUENCIALES. CORRESPONDENCIA ENTRE EL PLANO S Y EL PLANO Z

le hace corresponder z = 0 mientras que conforme crece el modulo del n


umero
z correspondiente sobre la recta crece.

Figura 4.13: Lugares de frecuencia constante en el plano s y z.

Lugares de factor de amortiguamiento constante. El factor de amortiguamiento en sistemas continuos de segundo orden esta relacionado con el
denominador de la funcion de transferencia:
D(s) = s2 + 2ns + n2
Los lugares de amortiguamiento constante en el p
plano s son rectas (ver figura
4.14) dadas por s = n T + jd T , donde d = 1 2 n . La transformacion
en z es z = e(n +jd )T , cuyo modulo y fase resulta ser:
2

|z| = e 12 s
z = 2 ds
donde s = 2
. La curva que describen estos n
umeros al variar n se llama espiral
T
logartmica. Dicha curva, representada para frecuencias entre 0 12 s y
diversos valores de , se muestra en la figura 4.15. Para valores de la frecuencia
entre 12 s 0, las curvas son imagenes especulares de 4.15.
Lugares de frecuencia natural n constante. Como se muestra en la figura
4.14 los lugares de frecuencia natural constante en el plano s son crculos perpendiculares a los lugares de amortiguacion constante. La transformacion de s
en z es un mapeo conforme que preserva los angulos entre lugares, por lo que
los lugares de frecuencia natural constante seran tambien perpendiculares en z.
La figura 4.16 muestra ambos lugares en el plano z para diversos valores de y
n . Notese que los lugares para frecuencias entre 21 s 0, tambien son
imagenes especulares de 4.16.


CAPITULO 4. ANALISIS
DE SISTEMAS MUESTREADOS

Figura 4.14: Lugares de amortiguacion y frecuencia natural constante en el plano s.

Figura 4.15: Lugares de amortiguacion constante en el plano z.

79

80CARACTERISTICAS FRECUENCIALES. CORRESPONDENCIA ENTRE EL PLANO S Y EL PLANO Z

Figura 4.16: Lugares de amortiguacion y frecuencia natural constante en el plano z.

Captulo 5
Dise
no de controladores discretos
5.1.

Introducci
on

En anteriores captulos sehan establecido los fundamentos matematicos de la teora


de sistemas discretos, se ha tratado el proceso de muestreo de sistemas continuos y
se han analizado las propiedades mas importantes de los sistemas discretos. En el
presente captulo se tratara el dise
no de controladores para sistemas discretos desde la
perspectiva de los modelos de entrada a salida. Se introduciran dos alternativas para
realizar dicho dise
no:
Discretizar un controlador previamente dise
nado para el sistema en tiempo continuo.
Dise
nar un controlador directamente para el sistema discretizado.
En cualquier caso, una vez que se ha dise
nado el controlador, su implementacion es
la misma, independientemente del metodo de dise
no. As, todo controlador discreto se
implementara siguiendo un algoritmo cuyos pasos basicos seran:
Repetir
Esperar siguiente instante de muestreo
Adquirir las variables controladas
Calcular la se~
nal de control
Aplicar se~
nal de control
Hasta Fin
81

DE REGULADORES CONTINUOS
DISCRETIZACION

82

La figura 5.1 muestra como se desarrollan las tareas en cada instante de muestreo k,
teniendo en cuenta que la aplicacion de la se
nal de control no se hace exactamente al
principio del tiempo de muestreo debido al tiempo de calculo de la misma. Normalmente, ese tiempo de calculo se ignora, pero si es importante en relacion al tiempo de
muestreo, lo mas aconsejable sera aumentar el tiempo de muestreo, de manera que los
efectos percibidos en k + 1 sean realmente los debidos a u(k).
Lectura
sensores

Se percibe el
efecto de u(k)

Tiempo de
clculo

k+1

Aplicacin u(k)

Figura 5.1: Eventos que ocurren en cada instante de muestreo.

A continuacion se mostrara como discretizar reguladores continuos, tomandose como


caso mas habitual la discretizacion de controladores PID continuos.

5.2.

Discretizaci
on de reguladores continuos

A la hora de dise
nar un controlador en tiempo discreto es frecuente partir de un
controlador continuo obtenido mediante los metodos clasicos y discretizar este u
ltimo,
en lugar de realizar el dise
no directamente en tiempo discreto. El resultado de esta
discretizacion es implementado despues en forma de programa en un computador.
El caso mas com
un (y el que trataremos aqu) es el de los controladores PID, cuya
expresion en tiempo continuo es

Zt
1
de(t)
u(t) = Kp e(t) +
e( )d + Td
Ti
dt
0

DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO

83

donde u(t) es la entrada que se aplica en el instante t y e(t) = y(t) ref(t), es decir
la diferencia entre la salida y la referencia a seguir en t. Es importante destacar que el
resultado que se obtiene al aplicar la discretizacion es una aproximacion del controlador
original. Para obtener dicha aproximacion se pueden usar diferentes alternativas.

Comentario 5.1 En este tema se supone que el lector est


a familiarizado con la sintona de controladores PID continuo, que normalmente se suele hacer a partir de las
reglas de Ziegler-Nichols. Estas reglas se resumen en la siguiente tabla:
Kp
Ti
Td

P
Km
0,9
PI K
3m
m
1,2
PID Km 2m 0,5m
donde es la constante de tiempo, m el tiempo muerto y K es la ganancia estatica
del sistema.

5.2.1.

Aproximaci
on rectangular hacia delante (Euler I)

En este caso la derivada se aproxima por


de(t)
ek ek1
=
dt
T
donde T es el tiempo de muestreo. Ademas la integral se aproxima por
Zt
0

e( )d =

k1
X
i=0

e(i)T =

k1
X

T ei

i=0

Esta aproximacion se ilustra en la figura 5.2, en la que la suma del area de los rectangulos sombreados sera la aproximacion de la integral.
Sustituyendo estas expresiones en la ley de control PID queda:
!
k1
T X
Td
uk = Kp ek +
ei +
(ek ek1 )
Ti i=0
T
Notese que esta expresion puede ser retrasada en el tiempo de manera que:
!
k2
T X
Td
uk1 = Kp ek1 +
ei +
(ek1 ek2 )
Ti i=0
T

DE REGULADORES CONTINUOS
DISCRETIZACION

84

T
e(t)

K-1

Figura 5.2: Aproximacion rectangular hacia delante de la integral.

Restando ambas expresiones se llega a que




T
Td
uk uk1 = Kp ek ek1 + ek1 +
(ek 2ek1 + ek+2 )
Ti
T
que a su vez se puede poner como
uk uk1 = q0 ek + q1 ek1 + q2 ek2
con


q0 = Kp 1 + TTd
q1 = Kp 1 2 TTd +

q2 = Kp TTd

T
Ti

(5.1)

Aplicamos la transformada Z a la ecuacion (5.1) obteniendose:


U(z)(1 z 1 ) = (q0 + q1 z 1 + q2 z 2 )E(z)
Finalmente se define la funcion de transferencia del controlador como:
C(z) =

U(z)
q0 + q1 z 1 + q2 z 2
=
E(z)
1 z 1

(5.2)

Este controlador se puede implementar mediante un programa de ordenador, el


cual, seguira el siguiente algoritmo:

Repetir:
1. Esperar a que se cumpla el tiempo de muestreo T .

DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO

85

2. Leer yk .
3. Calcular ek = rk yk .

4. Calcular uk seg
un la expresion (5.1).

5. Aplicar uk .
6. Actualizar uk1, ek1 , ek2 .
Como se comprobara en la seccion 5.3 la aproximacion de la integral vista en esta
seccion equivale a aplicar la siguiente sustitucion:
z1
s,
T

5.2.2.

Aproximaci
on rectangular hacia atras (Euler II)

En este caso la integral se aproxima por la integral se aproxima por


Zt

e( )d =

k
X

e(i)T =

i=1

k
X

T ei

i=1

Esta aproximacion se ilustra en la figura 5.3. Nuevamente la aproximacion sera la suma


de las areas de los rectangulos sombreados.

e(t)

K-1

Figura 5.3: Aproximacion rectangular hacia detras de la integral.

El desarrollo es similar y se llega a que:


u k = Kp

k
T X
Td
ek +
ei +
(ek ek1 )
Ti i=1
T

DE REGULADORES CONTINUOS
DISCRETIZACION

86

y de ah a:
uk uk1 = q0 ek + q1 ek1 + q2 ek2
con

q0 = Kp 1 +

T
Ti

q1 = Kp 1 2 TTd
q2 = Kp TTd

Td
T

En este caso se vera que el resultado es igual que si se sustituye s por


s,

5.2.3.

Tz
z1

Aproximaci
on bilineal (trapezoidal o Tustin)

En el caso la aproximacion bilineal la integral se aproxima por:


Zt
0

k
X

X ei + ei1
e(i) e(i 1)
)T =
T
e( )d =
(e(i 1 +
2
2
i=1
i=1

Esta aproximacion es la mas cercana al valor real de la integral, como se ilustran en la


figura 5.4.

T
e(t)

K-1

Figura 5.4: Aproximacion bilineal de la integral.

Como en los casos anteriores se llega a un resultado igual en forma, pero variando

DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO

87

el valor de los coeficientes:


q0
q1



Td
T
= Kp 1 + 2Ti + T


Td
T

2
= Kp 2T
T
i

q2 = Kp TTd

Como se vera en la seccion siguiente, esta aproximacion se corresponde con una sustitucion de s por
2 z1
s,
T z+1

Ejemplo 5.1
Sea el sistema:
G(s) =

1 0,1s
e
s+1

Se dise
na un PID en tiempo continuo usando las reglas de Ziegler-Nichols, siendo los
parametros resultantes Kp = 2,4, Ti = 0,2 y Td = 0,05. La figura 5.5 muestra la
simulacion de dicho PID al aplicar un escalon unitario a la entrada del sistema.
1.5

0.5

10

10

5
4
3
2
1
0

Figura 5.5: PID continuo usado con el sistema del ejemplo 5.1.

Se desea discretizar el PID anterior usando un tiempo de muestreo de 0,1 segundos,


de manera que usando las expresiones para q0 , q1 y q2 vistas en las secciones anteriores,
se obtiene que el PID discreto usando la aproximacion Euler I es:
C(z) =

3,6 3,6z 1 + 1,2z 2


1 z 1

88

CORRESPONDENCIA S Z PARA LAS APROXIMACIONES DE LA INTEGRAL

mientras que si se usa Tustin se obtiene:


C(z) =

4,2 4,2z 1 + 1,2z 2


1 z 1

La figura 5.6 muestra la simulacion de ambos controladores, puede observarse que


ambas aproximaciones resultan estables1 , aunque la discretizacion mediante Tustin
produce unos resultados que son mas parecidos a los del controlador en tiempo continuo.

1.5

2
1.5

1
0.5

0.5
0

10

-1

10

10

10

Figura 5.6: PID discretizado mediante Euler I (izquierda) y Tustin (derecha) usado con el sistema del
ejemplo 5.1.

5.3.

Correspondencia s z para las aproximaciones


de la integral

En esta seccion se vera como las aproximaciones de la integral vistas anteriormente


se corresponden con sustituciones de s en la funcion de transferencia de controlador
por una cierta expresion en z. El estudio se hara a traves de un ejemplo, en el que se
supondra que el controlador tiene como funcion de transferencia en continuo:
U(S)
a
=
E(S)
s+a
Esto implica que
du(t)
+ au(t) = ae(t)
dt
1

En la seccion 5.4 se comprobara que esto no tienen por que ser siempre as.

(5.3)

DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO

89

y de ah
du(t)
= au(t) + ae(t)
dt
Integrando la expresion anterior podemos obtener el valor de u(kT ):
u(kT ) =
=

kT
R

du(t)
dt
dt

0
(k1)T
R
0

du(t)
dt
dt

kT
R

= u((k 1)T ) +

(k1)T
kT
R

du(t)
dt
dt

(5.4)

(au(t) + ae(t)) dt

(k1)T

= u((k 1)T ) + A

Donde A es la integral de u(t) entre los instantes de muestreo k 1 y k tal y como se


muestran en la figura 5.7. A continuacion se vera cada caso particular de aproximacion

e(t)
A

Figura 5.7: Integral de u(t) para un periodo de muestreo.

de la integral.

5.3.1.

Rectangular hacia delante

En este caso se cumple que u(t) = u((k 1)T ) en todo el intervalo de integracion
de A por lo que:
A=

ZkT

(k1)T

(au((k 1)T ) + ae((k 1)T )) dt = (au((k 1)T ) + ae((k 1)T )) T

90

CORRESPONDENCIA S Z PARA LAS APROXIMACIONES DE LA INTEGRAL

Teniendo en cuenta lo anterior en (5.4):


uk = uk1 T auk1 + T aek1
Aplicando la transformada Z:
U(z)
T az 1
Ta
=
=
=
1
1
E(z)
1 z + T az
z 1 + Ta

a
+a

z1
T

por lo que comparando con (5.3) se tiene que


s,

z1
T

o tambien
z , Ts + 1

5.3.2.

Rectangular hacia atr


as

En este caso u(t) = u(kT ) en todo el intervalo de integracion de A, por lo que:


A = aT u(kT ) + aT e(kT )
al igual que antes teniendo en cuenta lo anterior en (5.4):
uk = uk1 T auk + T aek
que lleva a:
U(z)
aT
=
=
E(z)
1 + aT z 1

a
1z 1
T

+a

por lo que comparando con (5.3) se tiene que


s,

1 z 1
z1
=
T
zT

o tambien
z,

5.3.3.

1
1 Ts

Trapezoidal o Bilineal

En este caso el valor de u(t) a lo largo del intervalo de integracion de A no es


constante sino que viene dado por la expresion de una recta:
u(t) = u((k 1)T ) +

u(kT ) u((k 1)T )


(t (k 1)T )
T

(k 1)T t kT

DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO

91

Teniendo en cuenta esto se obtiene que






uk + uk1
ek + ek1
A = aT
+ aT
2
2
por lo que llevandolo a (5.4):
uk = uk1 aT

uk + uk1
2

+ aT

ek + ek1
2

lo que al aplicar transformada Z y operar resulta:


aT
(1 + z 1 )
U(z)
2
=
=
E(z)
(1 z 1 ) + aT
(1 + z 1 )
2

aT
2
(1z 1 )
+ aT
(1+z 1 )
2

a
2 (z1)
T (z+1)

+a

por lo que comparando con (5.3) se tiene que


s,

2 (z 1)
T (z + 1)

o tambien
1+
z,
1

Ts
2
Ts
2

Ejemplo 5.2
Describir un algoritmo que corresponda a un controlador que aproxime al controlador
en tiempo continuo:
1
Gc (s) = 2
s + 2s + 1
de forma discreta con un tiempo de muestreo de T = 0,1 segundos mediante la Euler
hacia delante.

La aproximacion es:
s,

z1
T

por lo que sustituyendo en Gc (s) queda


c (z) =
G
=

1
= z2 2z+1 1 2z2
+ T +1
+2 z1
+1
T
T2
1
1
= 100z 2 180z+81
100z 2 200z+100+20z20+1

( z1
T )

92

CORRESPONDENCIA S Z PARA LAS APROXIMACIONES DE LA INTEGRAL

Notese que la expresion del controlador obtenida no es valida para su implementacion


pues al ponerla en forma de secuencias aparecen terminos en el futuro, por lo que la
transformamos de manera que quede de la forma
Y (z)
b0 + b1 z 1 + b2 z 2 + + bn z n
=
U(z)
1 + a1 z 1 + a2 z 2 + + an z n

G(z) =
resultando en este caso:

c (z) =
G

0,01z 2
1 1,8z 1 + 0,81z 2

y de ah se obtiene que:
uk = 1,8uk1 0,81uk2 + 0,01ek2

(5.5)

El algoritmo tendra los siguientes pasos:


1. Repetir:
a) Esperar(T).
b) Leer(ek ).
c) Calcular uk seg
un la expresion (5.5).
d ) Aplicar uk .
e) Actualizar: uk2 = uk1 , uk1 = uk , ek2 = ek1 , ek1 = ek .

Ejemplo 5.3
Sea el sistema:
G(s) =

1
10s + 1

Partiendo del controlador:

100s + 10
10s
Se pide discretizarlo usando la equivalencia entre s y z cuando se usa la aproximacion
bilineal. En este caso:
2 (z 1)
s,
T (z + 1)
C(s) =

por lo que:
C(z) =

100 T2 (z1)
+ 10
(z+1)
10 T2 (z1)
(z+1)

( 200
+ 10)z + (10
T
20
z 20
T
T

200
)
T

DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO

93

Usando como tiempo de muestreo T = 0,1 segundos, se obtiene:


C(z) =

10,05z 9,95
z1

La version implementable de este controlador es:


C(z) =

U(z)
10,05 9,95z 1
=
,
E(z)
1 z 1

por lo que la ley de control se calculara mediante la expresion:


u(k) = u(k 1) + 10,05e(k) 9,95e(k 1)
La figura 5.8 muestra la simulacion de este controlador.
1

11

0.9

10
9

0.8

0.7

7
0.6

6
0.5

5
0.4

0.3

0.2

0.1

10

15

10

15

Figura 5.8: Simulacion del controlador del ejemplo 5.3.

5.4.

Estabilidad de las aproximaciones de la integral

En esta seccion se vera la transformacion en el plano z de la region de estabilidad


en continuo, es decir el semiplano izquierdo del plano s (ver figura 5.9), al aplicar las
aproximaciones anteriores.

1. Rectangular hacia delante. En este caso se tiene que z , T s + 1, por lo


que la region de estabilidad del plano s se transforma en una region equivalente

94

ESTABILIDAD DE LAS APROXIMACIONES DE LA INTEGRAL

Figura 5.9: Region de estabilidad en el plano s (sombreada).

Figura 5.10: Transformacion en el plano z de la region de estabilidad del plano s al aplicar la aproximacion rectangular hacia delante (sombreada).

DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO

95

pero desplazada en una unidad hacia el semiplano derecho, tal y como muestra
la figura 5.10. Es muy significativo que la transformacion en el plano z incluye
la region de estabilidad del plano z pero tambien un infinito puntos del plano z
fuera de dicha region, por lo que un controlador estable en el plano s no tiene
por que resultar en un controlador estable en el plano z cuando se aplica esta
aproximacion.
2. Bilineal o Trapezoidal. La sustitucion era:
Ts
2
Ts
2

1+
z,
1
Teniendo en cuenta que s = j, se obtiene:
z,

1+
1

jT
2
jT
2

1 + jT
1+

2 T 2
4

2 T 2
4

1
1+

2 T 2
4
2 T 2
4

T
2 2 j
1 + 4T

que se puede reescribir como


x+yj
con
x=

1
1+

2 T 2
4
2 T 2
4

y=

T
2 2
1 + 4T

Se comprueba que
x2 + y 2 = 1
Esta region describe un circulo de radio uno centrado en el origen en el plano z
(ver figura 5.11) que es precisamente la region de estabilidad en el plano z. Esto
implica que un controlador estable en el plano s se corresponde con un controlador
estable en el plano z (y viceversa) cuando se aplica esta aproximacion.
3. Rectangular hacia atr
as. La sustitucion para esta aproximacion implicaba
que:
1
1
1
1
1 1 1 + Ts
z,
= +
= +
1 Ts
2 1 Ts 2
2 2 1 Ts

Notese que este caso la sustitucion es similar a la que se ve en la aproximacion


bilineal. En este caso se puede comprobar que la region de estabilidad
 del plano
s se transforma en un circulo de radio 21 y centrado en el punto 12 , 0 (ver figura
5.12). Esto implica que esta dentro de la region de estabilidad del plano z, por
lo que todo controlador estable en el plano s se transformara en un controlador
estable en el plano z. Sin embargo, a diferencia de lo que ocurre con la aproximacion bilineal, un controlador estable en z no tiene por que corresponderse con
uno estable en s.

96

ESTABILIDAD DE LAS APROXIMACIONES DE LA INTEGRAL

Figura 5.11: Transformacion en el plano z de la region de estabilidad del plano s al aplicar la aproximacion bilineal (sombreada).

0,5

Figura 5.12: Transformacion en el plano z de la region de estabilidad del plano s al aplicar la aproximacion rectangular hacia atras (sombreada).

DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO

97

De todo lo anterior se desprende que la mejor de las tres aproximaciones es la


bilineal.
Ejemplo 5.4
Sea el siguiente sistema estable:
G(s) =

s2

1
+s+4

(5.6)

Usando un tiempo de muestreo de T = 0,3 segundos, y la aproximacion bilineal (Tustin)


se obtiene la siguiente funcion de transferencia:
Gtustin (z) =

0,01815z 2 + 0,03629z + 0,01815


z 2 1,468z + 0,7581

Si la que se usa es la Euler hacia delante, se obtiene:


Geuadel (z) =

z2

0,09
1,7z + 1,06

Y finalmente, al usar la Euler hacia detras:


Geuatr (z) =

0,05422z 2 6,5 1018 z


z 2 1,386z + 0,6024

En la figura 5.13 se observa la simulacion del sistema continuo y de las tres aproximaciones. Puede verse como las aproximaciones de Tustin y Euler hacia atras resultan
en un sistema estable, como es de esperar, mientras que la de Euler hacia adelante
transforma un sistema continuo estable en uno discreto inestable.
0.4

0.7

0.35

0.6

Euler Atrs

0.5

0.3
0.4

0.25
0.3

0.2

Tustin

0.15

0.2
0.1

0.1

0.05

-0.1

Euler
Adelante

-0.2

0
0

10

12

Figura 5.13: Simulacion de las tres aproximaciones al sistema continuo (5.6).


DIRECTO
METODO
DE DISENO

98

5.5.

M
etodo de dise
no directo

En esta seccion se vera una alternativa a la discretizacion de controladores continuos, el metodo de dise
no directo o metodo de Ragazzini-Truxal. Este metodo se
basa en dise
nar el controlador directamente en tiempo discreto, imponiendo una serie
de condiciones a su funcion de transferencia y la funcion de transferencia de bucle
cerrado.
El principio tras el metodo directo es que habitualmente se tienen unas especificaciones de dise
no que debe cumplir el sistema en bucle cerrado. En base a esas
especificaciones es posible obtener por tanto la funcion de transferencia de bucle cerrado deseada, Gd (z). Por otra parte se sabe que seg
un la configuracion clasica de control
realimentado la funcion de transferencia de bucle cerrado sera:
Gd (z) =

C(z)G(z)
1 + C(z)G(z)

Donde G(z) es la funcion de transferencia de bucle abierto del sistema y C(z) es la


funcion de transferencia del controlador. Es evidente que se puede despejar C(z) en la
ecuacion anterior, quedando:
C(z) =

1
Gd (z)
G(z) 1 Gd (z)

(5.7)

La funcion de transferencia del controlador obtenida as directamente puede que no


sea implementable o puede que resulte en un sistema mal condicionado. Por lo tanto,
para garantizar que el controlador sea implementable hay que imponer una serie de
condiciones: causalidad, estabilidad interna y errores en regimen permanente.

5.5.1.

Causalidad

El controlador debe ser causal pues de lo contrario necesitara valores futuros de


la secuencia {ek } para calcular la se
nal de control uk . La causalidad implica que si la
funcion de transferencia del controlador2 es
C(z) =

Nc (z)
Dc (z)

entonces
grado(Nc (z)) grado(Dc (z))
2

Notese que la funcion de transferencia se expresa en potencias de z no de z 1

DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO

99

Veamos la causa de esta condicion. Si C(z) es igual a


C(z) =

b0 z m + b1 z m1 + + bm
U(z)
= n
E(z)
z + a1 z n1 + + an

para obtener la ecuacion en diferencias que da la se


nal uk hay que dividir todo por z n
para que quede 1 + a1 z 1 + en el denominador. Si m > n quedaran terminos de
la forma z p (con p > 0) que equivalen a terminos de la se
nal de error ek+p , es decir
terminos en el futuro.
Por otra parte, la ecuacion (5.7) se puede reescribir como
Nd (z)

D(z) Dd (z)
Nd (z)
Nc (z)
D(z)
C(z) =
=
=
N
(z)
N(z) 1 d
N(z) Dd (z) Nd (z)
Dc (z)
Dd (z)

Esto implica que


grado(Nc (z)) = grado(D(z)) + grado(Nd (z))
grado(Dc (z)) = grado(N(z)) + grado(Dd (z))
Suponiendo que se cumple la condicion de causalidad tanto en la funcion de transferencia del controlador como de la planta se verifica que
grado(D(z)) + grado(Nd (z)) grado(N(z)) + grado(Dd (z))
y de ah
grado(D(z)) grado(N(z)) grado(Dd (z)) grado(Nd (z))

(5.8)

Esta desigualdad se traduce en la siguiente condicion impuesta sobre la funcion de


transferencia de bucle cerrado deseada Gd (z):
El exceso de polos sobre ceros de la funci
on de transferencia de bucle cerrado
deseada debe ser mayor o igual que el exceso de polos sobre ceros de la
funcion de transferencia de bucle abierto de la planta.
Esto implica que si el sistema tiene un retardo la funcion deseada de bucle cerrado ha
de tener al menos el mismo retardo (por que la planta no puede reaccionar antes de
que cambie la referencia).

5.5.2.

Estabilidad Interna

El principio detras de las condiciones de estabilidad interna es que se deben evitar


las cancelaciones entre polos y ceros inestables (es decir fuera del circulo unidad) de


DIRECTO
METODO
DE DISENO

100

C(z) y G(z). Tomemos la ecuacion caracterstica de bucle cerrado:


1 + C(z)G(z) = 0
Es conocido que las raices de esta ecuacion son los polos de bucle cerrado del sistema.
Esta ecuacion se puede reescribir como:
1+

Nc (z) N(z)
=0
Dc (z) D(z)

que equivale a
Dc (z)D(z) + Nc (z)N(z) = 0

(5.9)

Supongase que la planta tiene un polo inestable, por lo que el denominador de la


funcion de transferencia puede ponerse como:

D(z) = (z )D(z)

donde || > 1

c (z),
Si lo cancelamos con un cero en el numerador de C(z), es decir Nc (z) = (z )N
entonces teniendo en cuenta (5.9) la ecuacion caracterstica sera:


c (z)N(z) = (z ) Dc (z)D(z)

c (z)N(z) = 0
Dc (z) (z )D(z)
+ (z )N
+N

Es decir, la ecuacion caracterstica tiene una raiz inestable, lo que implica que uno de
los polos de bucle cerrado es inestable. El mismo analisis se podra repetir para los
ceros inestables de G(z).
El analisis anterior se refuerza por el hecho de que si bien es posible que analticamente se pueda cancelar un cero inestable con un polo inestable y viceversa, en la
practica por cambios y tolerancias en la dinamica de la planta o del controlador es
muy dificil lograr tal cancelacion o mantenerla en el tiempo. Por lo tanto se acabara
teniendo un cero y un polo inestable.
Veamos como se concretan estas ideas. Como se tiene que:
C(z) =

D(z) Gd (z)
N(z) 1 Gd (z)

se ve que se tienen que cumplir dos condiciones:

1. Todos los polos inestables de G(z) deben aparecer como ceros de 1 Gd (z). La
razon de esto es para evitar que en Nc (z) no aparezcan los polos inestables de
G(z), que si se cumple esta condicion seran cancelados por 1 Gd (z).

DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO

101

2. Todos los ceros inestables de G(z) deben aparecer como ceros de Gd (z). Cumpliendose
esta condicion se evita que en Dc (z) aparezcan los ceros inestables de G(z), que
seran anulados por Gd (z).
Notese que estas condiciones se imponen sobre Gd (z) y no sobre G(z), que evidentemente viene dada por el proceso y no se puede modificar.

5.5.3.

Errores en r
egimen permanente

Estas condiciones sirven para fijar Gd (z) especificando si se desea o no error en


regimen permanente nulo ante determinadas referencias. Notese que el error para la
configuracion en bucle cerrado sera:
E(z) = R(z) Y (z) = R(z) R(z)Gd (z) = (1 Gd (z))R(z)
por lo que el error en regimen permanente sera (usando el teorema del valor final):
erp = lm (z 1)(1 Gd (z))R(z)
z1

Dependiendo de la referencia que se desee seguir con error en regimen permanente nulo
se tendran diferentes condiciones a imponer sobre Gd (z):
1. Error en r
egimen permanente nulo ante referencia escal
on: En este caso
R(z) =

z
z1

por lo que
erp = lm (z 1)(1 Gd (z))
z1

z
= lm z(1 Gd (z)) = 1 Gd (1)
z 1 z1

Claramente si se desea que el error sea cero se ha de cumplir que


Gd (1) = 1
2. Error en r
egimen permanente nulo ante referencia escal
on: La referencia
en este caso sera:
Tz
R(z) =
(z 1)2
El error sera:

erp = lm(z 1)(1 Gd (z))


z1

Tz
0
=
2
(z 1)
0


DIRECTO
METODO
DE DISENO

102

Este lmite se resolvera usando la regla de LHopital. En cualquier caso, si previamente se ha impuesto la condicion anterior, Gd (1) = 1 o lo que es lo mismo
lm Gd (z) = 1, se cumple que:
z1

erp = lm T
z1

d
(1
dz
d
(z
dz


Gd (z))
dGd (z)
= T
dz z=1
1)

por que el error en regimen permanente ante rampa y escalon sera nulo si
Gd (1) = 1
d (z)
T dGdz
= 0

z=1

Ejemplo 5.5
Sea

1
z+2
Se pide hallar el controlador C(z) tal que el sistema en bucle cerrado tenga sus polos
en z = 0 y z = 0,8 y que el error en regimen permanente ante escalon sea cero.
G(z) =

En primer lugar se vera que forma ha de tener Gd (z). Se ha de cumplir que el exceso
de polos sobre ceros de Gd (z) sea mayor o igual que el de G(z), que en este caso es 1.
Por tanto, Gd (z) tendra como forma:
Gd (z) =

b0 z + b1
z(z 0,8)

De esta forma ya estan especificados los polos y se cumple que el exceso de polos es
igual.
En segundo lugar hay que imponer las condiciones de estabilidad interna. G(z) tiene
un polo inestable en z = 2 por lo que 1 Gd (z) tiene que tener un cero en z = 2.
Calcularemos primero 1 Gd (z):
1 Gd (z) = 1

b0 z + b1
z(z 0,8) b0 z b1
=
z(z 0,8)
z(z 0,8)

Impondremos ahora que tenga un cero en z = 2:


1 Gd (2) =

2(2 0,8) + b0 2 b1
=0
2(2 0,8)

DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO

103

que a su vez equivale a:


5,6 + 2b0 b1 = 0 b1 = 2b0 + 5,6

(5.10)

La tercera condicion es la de error permanente nulo, que se consigue con Gd (1) = 1:


b0 + b1
b0 + b1
=
= 1 b0 + b1 = 0,2 b1 = b0 + 0,2
1(1 0,8)
0,2

(5.11)

Usando (5.10) y (5.11) se obtiene:


b0 = 1,8

b1 = 2

Por tanto ya se tiene cual es Gd (z):


Gd (z) =

2(0,9z + 1)
1,8z + 2
=
z(z 0,8)
z(z 0,8)

Y a partir de Gd (z) ya se puede calcular C(z):


2(0,9z+1)

1
Gd (z)
2(1 0,9z)
2(z 1 0,9)
z(z0,8)
C(z) =
= (z + 2)
=
=
G(z) 1 Gd (z)
(z 1)
1 z 1
1 2(0,9z+1)
z(z0,8)

Luego
C(z) =
Por tanto:

U(z)
2(z 1 0,9)
=
E(z)
1 z 1

U(z)(1 z 1 ) = E(z)(1,8 + 2z 1 ) uk = uk1 1,8ek + 2ek1

5.6.

Control en un n
umero finito de intervalos. Control dead-beat

Este tipo de control no tiene equivalente en tiempo continuo. El objetivo es lograr


un tiempo de asentamiento finito con error en regimen permanente nulo. Esto implica
que el sistema en bucle cerrado debe tener respuesta impulsional finita y por lo tanto
Gd (z) debe ser un polinomio de cierto orden N, es decir:
Gd (z) = a0 + a1 z 1 + + an z N =

a0 z N + a1 z N 1 + + aN
zN

104

CONTROL EN UN NUMERO
FINITO DE INTERVALOS. CONTROL DEAD-BEAT

donde N es mayor o igual que el orden del sistema n. Notese que en esta Gd (z) todos
los polos de bucle cerrado estan en z = 0. En esta configuracion el error llega a 0 en N
tiempos de muestreo y el tiempo de asentamiento es t = N T , donde T es el tiempo
de muestreo.
Es habitual que N tome el valor mnimo posible, es decir N = n. En este tipo
de control, llamado dead-beat el u
nico parametro de dise
no es el tiempo de muestreo.
Si tomamos un tiempo de muestreo muy peque
no la magnitud de la se
nal de control
aumenta drasticamente y el sistema puede sobreoscilar mucho.
Veremos como se dise
na el controlador en este caso, partiendo de que Gd (z) sera
Gd (z) =

Nd (z)
zN

Por otra parte segun (5.7):


C(z) =

Gd (z)
D(z)
1
=
G(z) 1 Gd (z)
N(z)

Nd (z)
zN
z N Nd (z)
zN

D(z) Nd (z)
N(z) z N Nd (z)

(5.12)

Por otra parte la funcion de transferencia entre la referencia y la salida del controlador
(z)
Gu (z) = UR(z)
debe tener tambien una respuesta impulsional finita, de manera que
Gu (z) =

U(z)
U(z) Y (z)
1
=
=
Gd (z)
R(z)
Y (z) R(z)
G(z)

debe ser un polinomio en z 1 y en


Gu (z) =

D(z) Nd (z)
N(z) z N

podemos tomar
Nd (z) = M(z)N(z)
donde M(z) nos da mas grados de libertad. Sabiendo entonces que Nd (z) = M(z)N(z),
se lleva a (5.12) de manera que
C(z) =

D(z) M(z)N(z)
D(z)M(z)
= N
N
N(z) z M(z)N(z)
z M(z)N(z)

Siendo una condicion es que el error en regimen permanente ante escalon sea nulo,
se puede elegir M(z) de manera que Gd (1) = 1 es decir
Gd (z) =

M(z)N(z)
1
1
M(1) N(1) = 1 M(1) =
=P
N
z
N(1)
bi

DE CONTROLADORES DISCRETOS
CAPITULO 5. DISENO

Por tanto hacemos

1
m= P

105

bi

y la funcion de transferencia del controlador en un n


umero finito de intervalos sera
C(z) =

D(z) m
z N m N(z)

Ejemplo 5.6
Sea
G(z) =

b0 z + b1
(z a)

Obtener el controlador dead-beat correspondiente.

La funcion de transferencia del controlador sera:


C(z) =

1
(z a) b0 +b
1

z1

1
(b z
b0 +b1 0

+ b1 )

1
(1 az 1 ) b0 +b
1

1
(b
b0 +b1 0

+ b1 z 1 )

(1 az 1 )
b1 (1 z 1 )

106

CONTROL EN UN NUMERO
FINITO DE INTERVALOS. CONTROL DEAD-BEAT

Captulo 6
Control de sistemas discretos en el
espacio de estados
6.1.

Representaci
on de sistemas discretos en el espacio de estados

El metodo de espacio de estados esta basado en la descripcion del sistema mediante


n ecuaciones en diferencias, que se agrupan en una ecuacion vectorial matricial en
diferencias.

Definici
on 6.1 Concepto de estado: El estado de un sistema din
amico es el conjunto mas peque
no de variables (llamadas variables de estado) tal que, el conocimiento
de esas variables en un determinado instante t0 junto con el conocimiento de los valores
de la se
nal de entrada para los instantes t t0 , permite determinar el comportamiento
y evolucion del sistema para cualquier instante de tiempo t t0 .

Las variables de estado se agrupan en el llamado vector de estado y el espacio ndimensional que determinan los posibles valores de esas variables, se denomina espacio
de estados.
La dinamica de un sistema se puede describir en funcion del valor del vector de
estados y de la se
nal de entrada (asumiendo que el sistema es no aut
onomo mediante
107

DE LA REPRESENTACION
DE EN ESPACIO DE ESTADOS DE SISTEMAS DISCRETOS
108OBTENCION

unas ecuaciones que tendran la forma:


x(k + 1) = f (x(k), u(k), k)
y(k) = g(x(k), u(k), k)
donde la notacion (k) indica el valor tomado por en el instante de tiempo tk y f y g
pueden ser cualquier tipo de funcion. No obstante en esta asignatura nos centraremos
en los Sistemas Lineales e Invariantes en el tiempo (LTI). Este tipo de sistemas son
descritos mediante las siguientes ecuaciones:
x(k + 1) = Gx(k) + Hu(k)

(6.1)

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


que corresponderan al diagrama de bloques:

u(k)

x(k+1)
+

z-1

x(k)

G
Figura 6.1: Diagrama de bloques de la representacion en espacio de estados de un sistema LTI.

6.2.

Obtenci
on de la representaci
on de en espacio
de estados de sistemas discretos

Partiremos de un sistema discreto descrito por:


y(k)+a1 y(k1)+a2 y(k2)+ +an y(kn) = b0 u(k)+b1 u(k1)+ +bn u(kn) (6.2)
Es bien conocido de anteriores temas de la asignatura que este sistema puede ser
descrito por la siguiente funcion de transferencia:
Y (z)
b0 + b1 z 1 + b2 z 2 + + bn z n
G(z) =
=
U(z)
1 + a1 z 1 + a2 z 2 + + an z n

(6.3)

A continuacion se expondran dos de los metodos disponibles para obtener la representacion en espacio de estados del sistema descrito por (6.3).

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

6.2.1.

109

M
etodo de programaci
on directa

Parte de la premisa que la funcion de transferencia (6.3) puede reescribirse como:


G(z) = b0 +

(b1 a1 b0 )z 1 + (b2 a2 b0 )z 2 + + (bn an b0 )z n


1 + a1 z 1 + a2 z 2 + + an z n

teniendo en cuenta que G(z) =


Y (z) = b0 U(z) +

Y (z)
U (z)

(6.4)

se obtiene:

(b1 a1 b0 )z 1 + (b2 a2 b0 )z 2 + + (bn an b0 )z n


U(z)
1 + a1 z 1 + a2 z 2 + + an z n

(6.5)

que a su vez se puede expresar como:


Y (z) = b0 U(z) + Y (z)U(z)

(6.6)

con:

(b1 a1 b0 )z 1 + (b2 a2 b0 )z 2 + + (bn an b0 )z n


Y (z) =
(6.7)
1 + a1 z 1 + a2 z 2 + + an z n
Por otra parte, teniendo en cuenta la expresion de Y (z) se puede definir un Q(z) que
cumple que:
Q(z) =

Y (z)
U(z)
=
(b1 a1 b0 )z 1 + + (bn an b0 )z n
1 + a1 z 1 + + an z n

(6.8)

De ah se obtiene que:
Q(z) = a1 z 1 Q(z) a2 z 2 Q(z) an z n Q(z) + U(z)

(6.9)

Y (z) = (b1 a1 b0 )z 1 Q(z) + (b2 a2 b0 )z 2 Q(z) + + (bn an b0 )z n Q(z) (6.10)


A continuacion se eligen las variables de estado como:
X1 (z) = z n Q(z)
X2 (z) = z

(n1)

Q(z)

Xn (z) = z 1 Q(z)
lo que teniendo en cuenta las propiedades de la transformada Z, implica que:
zX1 (z) = X2 (z)
zX2 (z) = X3 (z)

zXn1 (z) = Xn (z)

(6.11)

DE LA REPRESENTACION
DE EN ESPACIO DE ESTADOS DE SISTEMAS DISCRETOS
110OBTENCION

lo que a su vez equivale a:


x1 (k + 1) = x2 (k)

(6.12)

x2 (k + 1) = x3 (k)

xn1 (k + 1) = xn (k)
Notese que seg
un la u
ltima igualdad de (6.11) se tiene que Q(z) = zXn (z), luego
teniendo en cuenta esto y el resto de las igualdades de (6.11) podemos reescribir la
expresion de Q(z) en (6.9) como:
zXn (z) = a1 Xn (z) a2 Xn1 (z) an X1 (z) + U(z)

(6.13)

o lo que es lo mismo:
xn (k + 1) = an x1 (k) an1 x2 (k) a1 xn (k) + u(k)

(6.14)

De esta manera y si tenemos en cuenta (6.12) obtenemos la siguiente expresion de la


ecuacion de estado:

0
x1 (k)
0
1
0
0
x1 (k + 1)

x2 (k + 1) 0
0
1
0 x2 (k) 0

..
..

..
..
..
..
..
+
=
u(k)

.
.
.
.
.
.
.

xn1 (k + 1) 0
0
0
1 xn1 (k) 0
1
xn (k)
an an1 an2 a1
xn (k + 1)
(6.15)
Por otra parte, podemos reescribir tambien (6.10) teniendo en cuenta las igualdades
de (6.11) de manera que:
Y (z) = (b1 a1 b0 )Xn (z) + (b2 a2 b0 )Xn1 (z) + + (bn an b0 )X1 (z)

(6.16)

Esto se puede llevar a la ecuacion (6.6) de manera que antitransformando se obtiene:


y(k) = (bn an b0 )x1 (k) + (bn1 an1 b0 )x2 (k) + + (b1 a1 b0 )xn (k) + b0 u(k) (6.17)
lo cual se puede escribir como:

y(k) =

bn an b0 bn1 an1 b0

x1 (k)
x2 (k)
..
.

b1 a1 b0

xn1 (k)
xn (k)

+ b0 u(k)

(6.18)

Las ecuaciones (6.15) y (6.18) forman una representacion en espacio de estados del
sistema descrito por la funcion de transferencia (6.3) que se denomina forma canonica
controlable.

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

6.2.2.

111

M
etodo de programaci
on anidada

En este caso se parte de que de la funcion de transferencia (6.3) se obtiene la


siguiente ecuacion:
Y (z) b0 U(z) + z 1 (a1 Y (z) b1 U(z)) + + z n (an Y (z) bn U(z)) = 0

(6.19)

que a su vez se puede reescribir como:


Y (z) = b0 U(z) + z 1 b1 U(z) a1 Y (z) + z 1 (b2 U(z) a2 Y (z)

+z 1 (b3 U(z) a3 Y (z) + )

(6.20)

Xn (z) = z 1 (b1 U(z) a1 Y (z) + Xn1 (z))

(6.21)

Teniendo en cuenta esto se definen las siguientes variables de estado:

Xn1 (z) = z
..
.

(b2 U(z) a2 Y (z) + Xn2 (z))

X2 (z) = z 1 (bn1 U(z) an1 Y (z) + X1 (z))


X1 (z) = z 1 (bn U(z) an Y (z))

Notese que seg


un esta definicion de las variables de estado la expresion (6.20) se puede
reescribir en forma condensada como:
Y (z) = b0 U(z) + Xn (z)

(6.22)

Sustituyendo esta expresion en la definicion de las variables de estado (6.21) y multiplicando por z en ambos lados de cada igualdad se obtiene:
zXn (z) = Xn1 (z) a1 Xn (z) + (b1 a1 b0 )U(z)

zXn1 (z) = Xn2 (z) a2 Xn (z) + (b2 a2 b0 )U(z)


..
.
zX2 (z) = X1 (z) an1 Xn (z) + (bn1 an1 b0 )U(z)
zX1 (z) = an Xn (z) + (bn an b0 )U(z)

Antitransformando lo anterior:
x1 (k + 1) = an xn (k) + (bn an b0 )u(k)

x2 (k + 1) = x1 (k) an1 xn (k) + (bn1 an1 b0 )u(k)


..
.

xn1 (k + 1) = xn2 (k) a2 xn (k) + (b2 a2 b0 )u(k)

xn (k + 1) = xn1 (k) a1 xn (k) + (b1 a1 b0 )u(k)

(6.23)

112

EN ESPACIO DE ESTADOS DE UN SISTEMA NO ES UNICA

LA REPRESENTACION

Antitransformando tambien la expresion (6.22) se obtiene:


y(k) = xn (k) + b0 u(k)
Finalmente, agrupando las

x1 (k + 1)
0
x2 (k + 1)
1

.
..

= ..
.

xn1 (k + 1)
0
xn (k + 1)
0

dos expresiones anteriores

0 0 0 an

0 0 0 an1

..
.. ..
..

.
. .
.

0 1 0 a2
0 0 1

a1

x1 (k)
x2 (k)



..
y(k) =
0 0 0 1
.

xn1 (k)
xn (k)

(6.24)

se obtiene:

x1 (k)
bn an b0

x2 (k) bn1 an1 b0



..
..
+
.
.

xn1 (k)
b2 a2 b0
xn (k)
b1 a1 b0

+ b0 u(k)

u(k)

(6.25)

A esta representacion en espacio de estados del sistema descrito por la funcion de


transferencia (6.3) se la denomina forma can
onica observable.

6.3.

La representaci
on en espacio de estados de un
sistema no es u
nica

Se ha comprobado que a un mismo sistema descrito por su funcion de transferencia


le corresponden, al menos, dos representaciones en espacio de estado distintas. De
hecho, la representacion en espacio de estados de un sistema no es u
nica. Por ejemplo,
podemos tomar otras variables de estado que describan la dinamica del sistema que
sean a su vez combinaciones lineales de las variables de estado originales, o considerar
que estas son a su vez combinaciones lineales de otras. Dicho de otro modo, dado un
sistema LTI como el descrito en (6.1) podemos considerar que el vector de estado x(k)
esta relacionado con otro vector x(k) con variables de estado distintas mediante una
transformacion:
x(k) = P x(k)
(6.26)
donde P es una matriz invertible. Esto se puede llevar a la ecuacion de estado del
sistema de manera que obtendramos:
P x(k + 1) = GP x(k) + Hu(k)
Premultiplicando por P 1 :
x(k + 1) = P 1 GP x
(k) + P 1 Hu(k)

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

113

por lo que la ecuacion de estado se puede expresar como:


x(k) + Hu(k)

x(k + 1) = G

(6.27)

= P 1 GP y H
= P 1 H. De la misma manera la ecuacion, de la salida del
con G
sistema se puede expresar como:

y(k) = C x(k) + Du(k)

(6.28)

= D. As pues, las ecuaciones (6.27) y (6.28) describen una reprecon C = CP y D


sentacion del sistema en espacio de estados que es diferente de la original pero equivalente a ella1 .

6.4.

Resoluci
on de las ecuaciones del espacio de estados

En esta seccion se trata el tema de la resolucion de las ecuaciones de estado. Es


decir, se presentaran procedimientos para obtener el valor del vector de estado para
un determinado instante de tiempo k > 0 a partir del valor de x(0), es decir, del valor
inicial del vector de estados.

6.4.1.

Procedimiento recursivo

Iterando las ecuaciones del estado para un sistema LTI como (6.1) a partir de k = 0:
x(1) = Gx(0) + Hu(0)
x(2) = Gx(1) + Hu(1) = G2 x(0) + GHu(0) + Hu(1)
x(3) = Gx(2) + Hu(2) = G3 x(0) + G2 Hu(0) + GHu(1) + Hu(2)
..
.
generalizando para cualquier k > 0:
k

x(k) = G x(0) +

k1
X

Gkj1Hu(j)

(6.29)

j=0

Observese que en la ecuacion (6.28) el estado aparece con , indicando que el vector de estados
es diferente al original. La salida sin embargo si coincide con la del sistema original pues ambas
representaciones son equivalentes.

DE LAS ECUACIONES DEL ESPACIO DE ESTADOS


RESOLUCION

114

Observese que x(k) depende del estado inicial y de los valores de la entrada. Por otra
parte, la salida se puede expresar como:
y(k) = CGk x(0) + C

k1
X

Gkj1Hu(j) + Du(k)

(6.30)

j=0

6.4.2.

Matriz de transici
on de estados

Considerese la ecuacion:
x(k + 1) = Gx(k)

(6.31)

En este caso, al no tener se


nal de entrada la solucion de la ecuacion viene dada por:
x(k) = (k)x(0)
con:
(k + 1) = G(k)

(0) = I

es decir:
(k) = Gk
A (k) se le llama la matriz de transicion de estados y contiene toda la informacion
sobre los movimientos libres del sistema descrito por (6.31). Estos movimientos libres
se refieren a los cambios de estado o evolucion del estado del sistema en ausencia de
entrada.
En terminos de (k) la solucion de la ecuacion de estados para el sistema (6.1)
viene dada por:
x(k) = (k)x(0) +

k1
X
j=0

= (k)x(0) +

k1
X
j=0

(k j 1)Hu(j)

(6.32)

(j)Hu(k j 1)

lo que lleva a:
y(k) = C(k)x(0) + C

k1
X
j=0

(j)Hu(k j 1) + Du(k)

(6.33)

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

6.4.3.

115

M
etodo basado en la transformada Z

Aplicando la transformada Z a ambos lados de la ecuacion de estados del sistema


(6.1) se obtiene:
zX(z) zx(0) = GX(z) + HU(z)
y de ah:
(zI G)X(z) = zx(0) + HU(Z)
Premultiplicando por (zI G)1 :
X(z) = (zI G)1 zx(0) + (zI G)1 HU(Z)
y antitransformando:




x(k) = Z1 (zI G)1 z x(0) + Z1 (zI G)1 HU(z)

Esta ecuacion la podemos comparar con la solucion mediante el procedimiento recursivo


indicado en la ecuacion (6.29), e identificando terminos tenemos que:


Gk = Z1 (zI G)1 z

k1
X
j=0



Gkj1Hu(j) = Z1 (zI G)1 HU(z) (6.34)

La dificultad de este metodo consiste en realizar la transformada Z de las expresiones


anteriores. Para ilustrar el procedimiento considerese el siguiente ejemplo:
Ejemplo 6.1
Dado un sistema LTI como (6.1) con:
G=

0
1
0,16 1

H=

1
1

C=

1 0

Se pide calcular (k) = GK = Z1 {(zI G)1 z}. En primer lugar calculamos:


(zI G)

z
1
0,16 z + 1

"

z+1
(z+0,2)(z+0,8)
0,16
(z+0,2)(z+0,8)

"

1
4 1
13 z+0,8
3 z+0,2
1
1
0,8
+ 0,8
3 z+0,2
3 z+0,8

1
(z+0,2)(z+0,8)
z
(z+0,2)(z+0,8)

5 1
1
53 z+0,8
3 z+0,2
1
1
13 z+0,2
+ 43 z+0,8

(6.35)

116

DE LAS ECUACIONES DEL ESPACIO DE ESTADOS


RESOLUCION

Multiplicando lo anterior por z y antitransformando se obtiene:


 4

5


(0,2)k 13 (0,8)k
(0,2)k 53 (0,8)k
k
1
1
3
3
(k) = G = Z
(zI G) z =
0,8
(0,2)k + 0,8
(0,8)k 31 (0,2)k + 43 (0,8)k
3
3
(6.36)
El ejemplo se puede completar resolviendo completamente la ecuacion de estado y la
de la salida para una se
nal de entrada dada por:


1
u(k) = 1 k = 0, 1, 2,
x(0) =
1
Teniendo en cuenta la transformada Z de la entrada (escalon unitario) y que se sabe
que:
X(z) = (zI G)1 [zx(0) + HU(z)]
se calcula:
zx(0) + HU(z) =

z
z

z
z1
z
z1

"

z2
z1
z 2 +2z
z1

que premultiplicado por el resultado de la ecuacion (6.35) lleva a:


" 17 z
#
22
25
z
z
6
9
18
+
+
z+0,2
z+0,8
z1
X(z) =
3,4
7
z
17,6
z
z
6
9
18
+
+
z+0,2
z+0,8
z1
y de ahi, antitransformando:
x(k) =

17
(0,2)k + 22
(0,8)k +
6
9
3,4
(0,2)k 17,6
(0,8)k +
6
9

25
18
7
18

Finalmente la ecuacion de salida sera:




y(k) =
1 0 x(k)
17
22
25
= (0,2)k + (0,8)k +
6
9
18


6.4.3.1.

Procedimiento alternativo para calcular (zI G)1

Se observa en el ejemplo 1.1 que gran parte del calculo se emplea en calcular (zI
G) . Esto puede ser muy engorroso cuando el orden de las matrices involucradas es
superior a 3. A continuacion se detalla un procedimiento alternativo para esos casos.
En primer lugar es conocido que, por definicion de matriz inversa:
1

(zI G)1 =

Adj(zI G)
|zI G|

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

117

donde ((Adj)) indica la matriz adjunta. El determinante |zI G| se puede expresar


como:
|zI G| = z n + a1 z n1 + a2 z n2 + + an
Por otra parte se puede demostrar que:
Adj(zI G) = Iz n1 + H1 z n2 + H2 z n3 + + Hn1
donde las matrices Hi se calculan mediante:
H1 = G + a1 I
H2 = GH1 + a2 I
..
.
Hn1 = GHn1 + an1 I
Hn = GHn1 + an I = 0
y los ai se calculan a su vez como:
a1 = traza(G)
1
a2 = traza(GH1 )
2
1
a3 = traza(GH2 )
3
..
.
1
an = traza(GHn1)
n
Ejemplo 6.2
A continuacion se calculara la inversa de (zI G) para el ejemplo 1.1 mediante este
procedimiento alternativo. Dado que el orden de la matriz es n = 2, se tiene que:
|zI G| = z 2 + a1 z + a2

Adj(zI G) = Iz + H1
donde:

a1 = traza(G)
a2 = 12 traza(GH1 )

H1 = G + a1 I

La traza de G es igual a 1, luego a1 = 1 y de ah se obtiene que H1 = G + I, con lo


que se puede calcular:



1
0
1
1
1
a2 = traza
= 0,16
0,16 1
0,16 0
2

DE LAS ECUACIONES DE ESTADO CONTINUAS


DISCRETIZACION

118

con lo que se obtiene:




1
1
Adj(zI G) = Iz +
0,16 0


z+1 1
=
0,16 z

|zI G| = z 2 +z +0,16 = (z +0,2)(z +0,8)

Finalmente:
(zI G)1


z+1 1
0,16 z
=
(z + 0,2)(z + 0,8)

que evidentemente es el mismo resultado obtenido en el ejemplo 1.1.

6.5.

Discretizaci
on de las ecuaciones de estado continuas

En esta seccion veremos como se puede pasar de un modelo en espacio de estado


continuo a discreto. Se partira de un sistema lineal e invariante en el tiempo continuo:
x = Ax + Bu
y = Cx + Du

(6.37)

Supondremos que la entrada solo cambia en ciertos instantes igualmente espaciados en


el tiempo, es decir, solo puede cambiar en t = kT , para k = 0, 1, 2, . Al discretizar
la ecuacion de estado esta tomara la forma:
x((k + 1)T ) = G(T )x(kT ) + H(T )u(kT )

(6.38)

donde puede observarse que las matrices G y H dependen del tiempo de muestreo T .
Para determinar el valor de G(T ) y H(T ) usaremos la solucion de la ecuacion de estado
en tiempo continuo:
At

At

x(t) = e x(0) + e

eA Bu( )d

(6.39)

Supondremos que la entrada u(t) es muestreada mediante un mantenedor de orden


cero, por lo que se cumple que:
u(t) = u(kT )

para

kT t kT + T

(6.40)

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

119

Se tiene que:
A(k+1)T

x((k + 1)T ) = e

A(k+1)T

x(0) + e

(k+1)T

eA Bu( )d

(6.41)

AkT

x(kT ) = e

AkT

x(0) + e

kT

eA Bu( )d

(6.42)

Mutiplicando la ecuacion (6.42) por eAT y restandola de la ecuacion (6.41) se obtiene:


Z (k+1)T
AT
A(k+1)T
x((k + 1)T ) = e x(kT ) + e
eA Bu( )d
(6.43)
kT

Teniendo en cuenta la suposicion de que u(t) es constante en el intervalo de integracion


(ver (6.40)) se puede sustituir u( ) por u(kT ). Aplicando esto y operando se llega a:
Z T
AT
AT
x((k + 1)T ) = e x(kT ) + e
eA Bu(kT )d
0
Z T
= eAT x(kT ) +
eA Bu(kT )d
(6.44)
0

donde = T . Sea:

G(T ) = eAT
R T A 
H(T ) =
e d B
0

(6.45)

entonces la ecuacion (6.44) queda:

x((k + 1)T ) = G(T )x(kT ) + H(T )u(kT )

(6.46)

que es la ecuacion a la que tenamos que llegar y por tanto se ha obtenido la ecuacion
de estado continuo discretizada.
En el caso particular (aunque muy com
un, y por tanto interesante) de que A sea
una matriz invertible se tiene que:

H(T ) = eAT I A1 B
Por otra parte, la ecuacion de la salida al ser discretizada queda:
y(kT ) = Cx(kT ) + Du(kT )

(6.47)

con C, D matrices constantes e iguales a la de la ecuacion en tiempo continuo.


Existen diferentes metodos para calcular eAT . Quizas el mas sencillo de aplicar
cuando se trata de calcular la exponencial con papel y lapiz sea utilizar la equivalencia:


eAt = L1 (sI A)1
(6.48)

DE LAS ECUACIONES DE ESTADO CONTINUAS


DISCRETIZACION

120

donde L1 indica la transformada de Laplace inversa. Desde el punto de vista practico


el metodo consistira en calcular (sI A)1 (notese que puede emplearse el metodo para
calcular (zI G)1 dado en la seccion 6.4.3.1) y aplicar a posteriori la transformada
de Laplace inversa a cada elemento de la matriz.
Ejemplo 6.3
Se ilustrara en este ejemplo el calculo de eAt siendo:


0 1
A=
0 2
Para ello se calcula:
(sI A) =

s 0
0 s

0 1
0 2

s 1
0 s+2

y aplicando los metodos vistos en la seccion 6.5 y subsiguientes se calcula la inversa:


"
#
(sI A)1 =

1
s

1
s(s+2)
1
(s+2)

Finalmente se aplica la transformada inversa de Laplace a cada elemento de la matriz


anterior de manera que se obtiene:




1 12 (1 e2t )
At
1
1
e =L
(sI A)
=
0
e2t


Ejemplo 6.4
Como ejemplo de discretizacion de las ecuaciones de estado en tiempo continuo, considerese el siguiente sistema:
x = ax + u
y = x
Usando las expresiones de (6.45) se obtiene:
G(T ) = eAT
= eaT
y
H(T ) =
=
=

R

T A
e d B
0
R

T a
e
d
0
1eaT
a

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

121

Luego:
x(k + 1) = eaT x(k) +
y(k) = x(k)

6.6.

1eaT
a

u(k)

Controlabilidad y Observabilidad

En esta seccion se pasan a tratar dos conceptos clave en el estudio de sistemas


dinamicos, la controlabilidad y la observabilidad. El primero se refiere a la existencia
de una secuencia de actuaciones para llevar el sistema a un estado arbitrario. Por
otro lado, la observabilidad tiene que ver con la posibilidad de determinar el valor del
vector de estados de un sistema a partir de observaciones de las salidas y la entradas
de dicho sistema. Ambos conceptos se deben a Kalman y son claves en estrategias de
control como la colocacion de polos por realimentacion del vector de estados o el control
optimo.

6.6.1.

Controlabilidad

Definici
on 6.2 Un sistema dinamico es completamente controlable o de estado completamente controlable, si es posible transferir al sistema desde un estado inicial arbitrario a cualquier estado deseado en un tiempo finito. Tambien puede decirse que
sera completamente controlable, si cada variable de estado se puede controlar en un
tiempo finito por una se
nal de control que no este sujeta a ning
un tipo de restriccion.

Como es habitual nos centraremos en el estudio de la controlabilidad de sistemas


LTI:
x((k + 1)T ) = Gx(kT ) + Hu(kT )
(6.49)
siendo la se
nal u(kT ) constante en el intervalo de tiempo kT t (k + 1)T . En este
caso, la controlabilidad de estado completo implica que existe una se
nal de control
constante entre cada tiempo de muestreo que transfiere al sistema, desde un estado
x(kT ) cualquiera a un estado deseado xf en como mucho n periodos de muestreo,
donde n es el tama
no del vector de estados.
Recordemos que la solucion de la ecuacion de estados es:
x(nT ) = Gn x(0) +

n1
X
j=0

Gnj1Hu(jT )

122

CONTROLABILIDAD Y OBSERVABILIDAD

= Gn x(0) + Gn1 Hu(0) + Gn2 Hu(T ) + + Hu((n 1)T )


de ah se obtiene:

x(nT ) G x(0) =

.
.
.
H .. GH .. .. Gn1 H

donde la matriz
Mc =

.
.
.
H .. GH .. .. Gn1 H

es la llamada matriz de controlabilidad .

u((n 1)T )
u((n 2)T )
..
.
u(0)
i

(6.50)

(6.51)

Supongase un estado final arbitrario x(nT ) = xf . Si el sistema fuera controlable


debera existir un vector de actuaciones que al multiplicarlo por la matriz de controlabilidad (6.51) diese como resultado xf Gn x(0). Como xf y x(0) pueden ser cualquier
par de valores del vector de estado, es facil entender que xf Gn x(0) puede ser cualquier
vector de Rn . De esto se desprende que para que el sistema sea controlable, el espacio de vectores generado por los vectores que forman la matriz de controlabilidad (es
decir, sus columnas) debe ser todo Rn . La condicion necesaria y suficiente para que
se cumpla esto es que el rango de la matriz de controlabilidad sea n. Este resultado
permite enunciar el siguiente lema.
Lema 6.1 Dado un sistema LTI de orden n representado por (6.49), es condicion
necesaria y suficiente para que el sistema sea completamente controlable que el rango
de la matriz de controlabilidad (6.51) sea igual a n.
Comentario 6.1 El sistema que cumpla la condici
on establecida en el lema 6.1 podra alcanzar cualquier estado como m
aximo en n periodos de muestreo, pero s
olo si no
existen restricciones sobre la se
nal de control. En caso contrario, se tardara mas.
Si el sistema es controlable, se podra determinar la secuencia de valores de la entrada
necesaria para llevar al sistema a xf resolviendo el sistema de ecuaciones (6.50).
Por otra parte, la controlabilidad se puede comprobar a partir de la funcion de
transferencia de un sistema observando si hay cancelaciones de polos y ceros. En el
caso de que las hubiese, el sistema no sera controlable. Por tanto, el sistema
z + 0,2
Y (z)
=
U(z)
(z + 0,8)(z + 0,2)
no sera controlable pues existe una cancelacion de un polo con un cero.

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

6.6.2.

123

Controlabilidad de la salida completa

En control automatico el objetivo mas com


un es controlar la evolucion de la salida
del sistema. Se puede demostrar que la controlabilidad del estado no implica la controlabilidad de la salida. Sin embargo, podemos comprobar dicha controlabilidad de una
manera analoga a la de la controlabilidad del estado completo. Sea un sistema cuya
ecuacion de estado es (6.49) y la ecuacion de la salida es:
y(kT ) = Cx(kT )

(6.52)

La condicion para comprobar la controlabilidad de la salida completa sera que


nh
io
.
.
.
n1
.
.
.
Rango
=m
(6.53)
CH . CGH . . CG H
donde m es el n
umero de salidas. Por otra parte, si la ecuacion de la salida es:
y(kT ) = Cx(kT ) + Du(kT )
la condicion a comprobar
nh
Rango
D

(6.54)

sera:
.
.
.
..
. CH .. CGH .. .. CGn1 H

io

=m

(6.55)

Notese que en esta segunda forma de la ecuacion de salida, la presencia del termino
Du(kT ) no empeora la controlabidad del sistema, sino justo lo contrario. De hecho, al
introducirse una columna extra en la matriz de controlabilidad (la correspondiente a
D), se puede dar el caso que se pase de tener m1 columnas linealmente independientes
a tener m, por lo que se lograra la controlabilidad de la salida. Dicho de otra manera,
encontrar m vectores linealmente independientes siempre sera igual o mas facil entre
n + 1 vectores que entre solo n de esos vectores.

6.6.3.

Observabilidad

Considerese un sistema autonomo:


x((k + 1)T ) = Gx(kT )
y(kT ) = Cx(kT )

(6.56)

Definici
on 6.3 El sistema autonomo (6.56) es completamente observable si todo estado inicial x(0) se puede determinar de la observaci
on de y(kT ) durante un n
umero
finito de intervalos de muestreo. Para que ello ocurra, cada transici
on del estado debe
afectar a todos los elementos del vector de salida.

124

CONTROLABILIDAD Y OBSERVABILIDAD

La observabilidad juega un papel esencial en el control de aquellos sistemas en los


que algunas de las variables de estado no son accesibles, es decir, no son medibles
directamente. Notese que se ha considerado un sistema autonomo. La razon de esto es
que la observabilidad de un sistema no autonomo se reduce a la del sistema autonomo
equivalente.
Se sabe que la solucion de la ecuacion de estado para el sistema autonomo (6.56)
es:
x(kT ) = Gk x(0)
y de ah
y(kT ) = CGk x(0)
La observabilidad completa implica que usando
y(0), y(T ), y(2T ), , y((n 1)T )
se pueden determinar
x1 (0), x2 (0), , xn (0)
donde xi (0) indica la iesima componente de x(0). Es decir el sistema es completamente
observable si las ecuaciones:
y(0) = Cx(0)
y(T ) = CGx(0)
..
.
y((n 1)T ) = CGn1 x(0)
permiten determinar x1 (0), x2 (0), , xn (0). Como y(kT ) es un m-vector (asumiendo
que el sistema tiene m salidas) el sistema de ecuaciones anterior es en realidad un
sistema de n m ecuaciones, en las que las incognitas son las n componentes de x(0).
Para que la solucion de este sistema sea u
nica debe haber entre ellas n ecuaciones
linealmente independientes. Esto se traduce en la siguiente condicion de observabilidad
completa:
nh
io
.
.
.

n1

.
.
.
Rango
=n
(6.57)
C . G C . . (G ) C
donde indica la conjugada traspuesta de una matriz y a la matriz que aparece en la
condicion se la llama matriz de observabilidad.
Por otra parte, de una manera analoga a la de la controlabilidad, la observabilidad
de un sistema a partir de su funcion de transferencia se puede asegurar si esta no
presenta cancelaciones de polos y ceros.

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

125

Finalmente, se enuncia a continuacion una propiedad que sera u


til para poder obte
ner la representacion de un sistema en forma canonica, sin que por ello pueda argumentarse que existe la posibilidad de variar la controlabilidad u observabilidad del
mismo.
Propiedad 6.1 Sea un sistema LTI dado en la forma usual (6.1), cuya matriz de
controlabilidad es M y la de observabilidad es N. Si se define una transformacion
como (6.26) con:
= P 1 GP
G
= P 1 H
H
C = CP
siendo P una matriz invertible, entonces las matrices de controlabilidad y observabilidad
del sistema equivalente tienen el mismo rango que M y N.

6.6.4.

Principio de Dualidad

Este principio, que es debido a Kalman, relaciona la controlabilidad y observabilidad


de un sistema con la de otro sistema llamado dual del primero. Sea un sistema S1 :

x((k + 1)T ) = Gx(kT ) + Hu(kT )
S1 :
(6.58)
y(kT ) = Cx(kT )
Sea S2 el sistema dual de S1 :

x((k + 1)T ) = G x(kT ) + C u(kT )
S2 :
y(kT ) = H x(kT )

(6.59)

Entonces se puede afirmar que2 :






CONTROLABLE
OBSERVABLE
SI S1
ENTONCES S2
OBSERVABLE
CONTROLABLE

6.7.

Transformaci
on de un sistema en formas can
onicas

Sea un sistema controlable y observable:


x(k + 1) = Gx(k) + Hu(k)
y(k) = Cx(k) + Du(k)
2

(6.60)

Notese que los sistemas S1 y S2 son diferentes, es decir, S2 no es una representacion alternativa
de S1 .

DE UN SISTEMA EN FORMAS CANONICAS

TRANSFORMACION

126

A continuacion, se vera el procedimiento para obtener las formas canonicas a partir de


ese sistema.

6.7.1.

Obtenci
on de la forma can
onica controlable

Sea una matriz de transformacion T = MW con:

M=

.
.
.
H .. GH .. .. Gn1 H

W =

an1 an2
an2 an3
..
..
.
.
a1
1
1
0

a1
1
..
.

0
0

1
0
..
.

0
0

donde los coeficientes ai son los coeficientes de la ecuacion caracterstica del sistema,
es decir:
|zI G| = z n + a1 z n1 + + an1 z + an = 0
Se define el estado x(k) en funcion de la transformacion de otro vector de estados x(k):
x(k) = T x(k)
Entonces el sistema:

x(k) + Hu(k)

x(k + 1) = G

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

(6.61)

= T 1 GT , H
= T 1 H, C = CT , D
= D esta en forma canonica controlable.
con G

6.7.2.

Obtenci
on de la forma can
onica observable

En este caso la matriz de transformacion es:


Q = (W N )1
con
N=

..
.
.
. G C .. .. (G )n1 C

= Q1 GQ, H
= Q1 H, C = CQ, D
= D y defnase el estado x(k) como
Sea G
x(k) = Q
x(k). Entonces el sistema (6.61) esta en forma canonica observable.

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

6.8.

127

Colocaci
on de polos mediante realimentaci
on
del vector de estados

En esta seccion se presentara una estrategia de control que permite elegir la situacion
de los polos de bucle cerrado del sistema, mediante la realimentacion lineal del vector
de estados. Se vera que la condicion necesaria para que esto se pueda conseguir es que
el sistema sea controlable. Por otra parte, se asumira que todas las variables de estados
son accesibles, es decir, podemos medirlas directamente sin tener que estimarlas por
otros procedimientos.

6.8.1.

Condici
on necesaria y suficiente para la colocaci
on arbitraria de polos

Sea un sistema LTI:


x(k + 1) = Gx(k) + Hu(k)
Se escoge una ley de control que tiene la forma:
u(k) = Kx(k)
es decir, la se
nal de control se obtiene de la realimentacion negativa del vector de
estados multiplicado por una cierta matriz de ganancias K. Este tipo de ley de control
se la denomina usualmente realimentacion del vector de estados. Con esta ley de control
el sistema en bucle cerrado quedara:
+

x(k+1)

z-1

x(k)

G
u(k)

-K

Figura 6.2: Diagrama de bloques de un sistema controlado por una realimentacion del vector de
estados.

y la ecuacion de estado del sistema en bucle cerrado resultara ser:


x(k + 1) = (G HK)x(k)

DE POLOS MEDIANTE REALIMENTACION


DEL VECTOR DE ESTADOS
128 COLOCACION

De manera analoga a lo que se da en sistemas continuos, los autovalores de (G HK)


son (o coinciden con) los polos de bucle cerrado del sistema. Por tanto, lo que buscamos
es ver que condicion es necesario cumplir para que exista una matriz de ganancias K
determinada, que nos permita colocar los autovalores de (G HK) en unos valores
elegidos a voluntad.

Lema 6.2 Se demuestra que la condici


on necesaria y suficiente para que por medio de
una realimentacion del vector de estados puedan escogerse los polos de bucle cerrado
(es decir, los autovalores de (G HK)) es que el sistema en bucle abierto sea de estado
completamente controlable. Si esta condici
on no se cumple, no se podr
an elegir todos
los polos de bucle cerrado.

6.8.2.

Procedimientos para calcular K

Sean 1 ,2 , ,n los valores deseados para los polos de bucle cerrado, es decir,
para los autovalores de (G HK). Aquellos que sean complejos siempre iran por pares
conjugados. La ecuacion caracterstica del sistema en bucle abierto es:
|zI G| = z n + a1 z n1 + + an = 0
Se define una matriz de transformacion T = MW exactamente igual que la matriz
de transformacion necesaria para obtener la forma canonica controlable descrita en la
seccion 6.7.1. Se obtiene:

0
0
1
0
0
0
0
0
1
0

.
.
.
.
1
1

.
.
.
.
T H = H = ...
T GT = G = .

.
.
.

0
0
0
0
1
1

an an1 an2 a1

Se define a continuacion:

= KT =
K
Entonces:

HK =

0
0
..
.

n n1 1

0
0
..
.


0
0
..
.

0
0

..
.




n n1 1 =

0
0
1
n n1 1

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

129

Por otra parte, la ecuacion caracterstica del sistema en B.C. es:


+ HK|

|zI G HK| = |zI G




1
0

0
0
1
0

0

0 1 0 0
0
1
0

.. ..

.
.
.
.
.
.
.
.
.
.
= z . .

.
.
.
.
.


0 0 0 0
0
0
1


a an1 an2 a1
0 0 1

n
0
0 0
0

0 0

..
..
+ ...

.
.

0 0
n n1 1




z
1

0




0
z

0




.
.
.
.
.
.
=

.
.
.




0
0

1


an + n an1 + n1 z + a1 + 1
= z n + (a1 + 1 )z n1 + + (an1 + n1 )z + (an + n ) = 0
A su vez, la ecuacion caracterstica correspondiente a los autovalores deseados sera:
(z 1 )(z 2 ) (z n ) = z n + 1 z n1 + 2 z n2 + + n1 + n = 0
Igualando los coeficientes de ambas ecuaciones caractersticas:
1 = a1 + 1
2 = a2 + 2
..
.
n = an + n
se obtiene la siguiente expresion para K:
1
K = KT

= h n n1 1 T 1
i
..
.. ..
1
=
n an .n1 an1 . .1 a1 T

(6.62)

que coloca los polos de bucle cerrado del sistema en los valores deseados. Notese
que si el sistema en bucle abierto viene dado en forma canonica controlable, se verifica
que T = I = T 1 .

DE POLOS MEDIANTE REALIMENTACION


DEL VECTOR DE ESTADOS
130 COLOCACION

6.8.2.1.

Procedimiento alternativo: la f
ormula de Ackermann

Existen otros procedimientos alternativos para el calculo de la matriz K. Aqu mencionaremos uno muy conocido, el que emplea la formula de Ackermann. Seg
un esto, la
expresion para K tomara la forma:
i1

h
..
..
..
n1
K = 0 0 0 1
(G)
H . GH . . G H
donde:

(G) = Gn + 1 Gn1 + + n1 G + n I
Los coeficientes i se calcularan como en el apartado anterior.
Finalmente, otro procedimiento que puede ser u
til para sistemas de bajo orden
consiste en tomar


K = k1 k2 kn
plantear la ecuacion caracterstica en funcion de los ki :
|zI G + HK| = 0
e igualar a los coeficientes de
z n + 1 z n1 + 2 z n2 + + n1 + n = 0

6.8.3.

Control Dead-Beat

Este es un tipo de control que resulta ser un caso particular del control por colocacion de polos.
Definici
on 6.4 Dado un sistema LTI, entenderemos como control dead-beat aquel que
consigue llevar el estado a cero en como m
aximo n intervalos de muestreo, donde n es
el orden del sistema.
Para obtener este tipo de control se deben especificar los polos de bucle cerrado conforme a lo que se establece en el siguiente lema.
Lema 6.3 Se demuestra que si se escogen los polos de bucle cerrado de manera que
esten todos en el origen (es decir, todos los autovalores de (G HK) igual a cero) se
consigue un control dead-beat.

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

131

Esto se lleva a la practica con una matriz de realimentacion del vector de estados
calculada mediante:


K = an an1 a1 T 1

Este tipo de control no goza de una reputacion excesivamente favorable porque habitualmente se precisa de una se
nal de control de amplitud muy grande para obtener la
respuesta dead-beat. De hecho en este tipo de control, el u
nico parametro de dise
no
que se ha de elegir es el tiempo de muestreo. Si este es muy peque
no, los n intervalos
de muestreo supondran un tiempo total muy corto, de manera que para llevar el estado
a cero partiendo de un estado inicial arbitrario se precisara un valor muy alto de la
se
nal.
Ejemplo 6.5
Sea un sistema
x(k + 1) = Gx(k) + Hu(k)
con
G=

0
1
0,16 1

H=

0
1

Se desea determinar una matriz K, tal que los polos de bucle cerrado sean el par
complejo conjugado z = 0,5 j0,5.
En primer lugar hay que determinar la controlabilidad del sistema. Para ello, se
forma la matriz de controlabilidad:
h
i  0 1 
..
H . GH = 1 1
cuyo rango es igual a dos (basta comprobar que su determinante es distinto de cero),
por lo que el sistema es controlable y se puede proceder a calcular K. La ecuacion
caracterstica de bucle cerrado deseada es:
|zI G + HK| = (z 0,5 j0,5)(z 0,5 + j0,5) = z 2 z + 0,5 = 0

(6.63)

por tanto, los coeficientes i son en este caso 1 = 1 y 2 = 0,5. Por otra parte, la
ecuacion caracterstica de bucle abierto del sistema es:


z
1

|zI G| =
0,16 z + 1

por lo que los coeficientes ai son a1 = 1 y a2 = 0,16. A partir de aqu se puede aplicar
cualquiera de los metodos explicados anteriormente.

DE POLOS MEDIANTE REALIMENTACION


DEL VECTOR DE ESTADOS
132 COLOCACION

Metodo 1

K=

2 a2

..
. 1 a1

T 1

Observese que el sistema viene dado en forma canonica controlable, por lo que T = I
y por tanto:


K = 0,34 2
Metodo 2 (formula de Ackermann)
En este caso la formula de Ackermann sera:
i1

h
.
.
K= 0 1
(G)
H . GH

donde (G) es

(G) = G2 G + 0,5I

 
 

0,16 1
0
1
0,5 0
+
=

0,16 1
0 0,5
0,16 0,84


0,34 2
=
0,32 2,34
por lo que


0 1
K =
0 1
1 1

=
0,34 2


1 

0,34 2
0,32 2,34

Metodo 3
Este procedimiento es apropiado para sistemas de bajo orden como el que nos ocupa.
En primer lugar, se toma K = [k1 k2 ] y se formula la ecuacion caracterstica de bucle
cerrado en funcion de K:


 
  
z 0


0
1
0
|zI G + HK| =

+
k1 k2
0 z
0,16 1
1




z
1

=
0,16 + k1 z + 1 + k2
= z 2 + (1 + k2 )z + k1 + 0,16 = 0

la comparamos con la ecuacion caracterstica deseada (6.63) e identificamos coeficientes:


1 + k2 = 1
k1 + 0,16 = 0,5

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

133

de donde se obtiene que k1 = 0,34 y k2 = 2, por lo que se tiene ya el valor de K, que


evidentemente coincide con el obtenido mediante los dos metodos anteriores.
Ejemplo 6.6
Calcular para el mismo sistema del ejemplo anterior la matriz K que conlleva un
control dead-beat, y comprobarlo calculando la evolucion del sistema a partir de un
estado inicial arbitrario.
En este caso:
K=

a2 a1

T 1 =

0,16 1

Vamos a verificar que el control es dead-beat. Para ello, obtenemos la ecuacion de


estado del sistema en bucle cerrado:




  


 x1 (k)
x1 (k + 1)
0
1
x1 (k)
0 
=
+
0,16 1
x2 (k + 1)
0,16 1
x2 (k)
1
x2 (k)



0 1
x1 (k)
=
0 0
x2 (k)
Supongamos ahora que el estado inicial es

  
x1 (0)
a
=
x2 (0)
b
entonces se tiene que:


x1 (1)
x2 (1)

x1 (2)
x2 (2)

0 1
0 0



a
b

0 1
0 0



b
0

b
0

0
0

e iterando una vez mas:

luego este control lleva al estado a cero en 2 pasos y es efectivamente un control deadbeat.

6.9.

Observadores del estado

En el control por colocacion de polos se asume que el estado se puede medir directamente. En ocasiones, sin embargo, puede que esta suposicion no se cumpla y todas

134

OBSERVADORES DEL ESTADO

o algunas de las variables de estado no puedan ser medidas. Es decir, puede que haya
variables de estado no accesibles. En cualquier caso, para poder controlar el sistema se
deberan estimar los valores de esas variables de estado no accesibles. Este proceso de
estimacion es lo que se conoce como observaci
on.
Un observador del estado es un subsistema del sistema de control, que realiza la
estimacion de las variables de estado basandose en los valores medidos (observados) de
las salidas y la se
nal de control. Se distinguen tres tipos de observadores, en funcion
de las variables de estado que se estimen:
1. Observador del estado completo. Es aquel que estima todas las variables de estado.
2. Observador de orden mnimo. En este caso solo se estiman aquellas variables de
estado que no son accesibles.
3. Observador de orden reducido. Este tipo de observador estima todas las variables
no accesibles y algunas de las accesibles.
En esta asignatura nos centraremos en los dos primeros tipos de observadores. Como
en el caso de la colocacion de polos, formularemos en primer lugar las condiciones para
que se pueda llevar a cabo la observacion.
Lema 6.4 Condicion necesaria y suficiente para la observaci
on del estado. Dado un
sistema LTI, se puede determinar x(k + 1) a partir de y(k), y(k 1), ,y(k n + 1) y
u(k),u(k 1), ,u(k n + 1), donde n es el orden del sistema, s y s
olo s, el sistema
es completamente observable.
Por tanto x(k + 1) se puede determinar, si el sistema es observable, en n pasos. Sin
embargo, no debe olvidarse que sobre el sistema act
uan ruidos y perturbaciones. Por
esta razon no es posible utilizar un procedimiento algebraico para determinar el estado,
sino que se ha de acudir a un procedimiento iterativo para estimarlo.

6.9.1.

Procedimiento iterativo para la estimaci


on del estado

Sea un sistema LTI


x(k + 1) = Gx(k) + Hu(k)
y(k) = Cx(k)

(6.64)

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

135

Si se dispone de una aproximacion del estado en k, que denotaremos x(k), esta evolucionara seg
un la dinamica del sistema
x(k + 1) = G
x(k) + Hu(k)
y(k) = C x(k)

(6.65)

Si las condiciones iniciales son las mismas, es decir, si x(0) = x(0) entonces se verifica
que x(k) = x(k). Sin embargo, si las condiciones iniciales son diferentes entonces, de
manera general, x(k) 6= x(k). Podemos pues, definir el error de estimacion en k como:
e(k) = x(k) x(k)
Restando la ecuacion de estado aproximada (6.65) de la real (6.64):
x(k + 1) x(k + 1) = G (x(k) x(k))
que teniendo en cuenta la definicion del error de aproximacion es equivalente a:
e(k + 1) = Ge(k)
que se puede considerar como un sistema dinamico autonomo. Si G es una matriz
estable (es decir, si sus autovalores estan dentro del crculo unidad) el ((estado)) de este
sistema tiende a cero, es decir:
e(k) 0 x(k) x(k)
Por tanto, si el sistema es estable, la propia dinamica del sistema hace que la aproximacion del estado tienda al valor real del mismo. Esto quiere decir que podramos usar
la propia ecuacion del sistema para obtener en cualquier instante k una aproximacion
del estado, cuyo error ira decayendo a lo largo del tiempo. Esta convergencia al valor
real, sin embargo, puede ser muy lenta, y por otra parte no siempre se tratara con
sistemas estables. Por tanto, esta estrategia no es muy aconsejable.
Notese que en el esquema que se ha presentado, no se hace uso de la salida del sistema, que siempre sera accesible. Esto puede ser aprovechado para mejorar el rendimiento del observador introduciendose un termino corrector, de manera que la ecuacion para
obtener la aproximacion del estado para el instante k + 1 sera:
x(k + 1) = G
x(k) + Hu(k) + Ke (y(k) C x(k))
donde Ke es una matriz de ponderacion o ganancia. Este termino se puede elegir de
manera que se mejore el rendimiento, incluso si existen discrepancias entre las matrices
del sistema y las del proceso real al que dicho sistema representa.

136

6.9.2.

OBSERVADORES DEL ESTADO

Observador del estado completo

Sea un sistema LTI observable (6.64) con una ley de control por realimentacion
negativa del vector de estados,
u(k) = Kx(k)
siendo el estado del sistema x(k) no accesible pero s observable. Por tanto, podemos
sustituir el valor del estado por una aproximacion de manera que
u(k) = K x(k)
y de ah, aplicando las consideraciones de la seccion 6.9.1 se obtiene
x(k + 1) = G
x(k) + Hu(k) + Ke (y(k) y(k))
= (G Ke C)
x(k) + Hu(k) + Ke y(k)
= (G Ke C HK)
x(k) + Ke y(k)

(6.66)

Esta
es la llamada ecuacion del observador predictivo. La palabra predictivo se utiliza
para indicar que la estimacion del valor futuro del estado en k + 1, se realiza utilizando
informacion disponible en el instante k. A los autovalores de la matriz (G Ke C)
se les suele denominar polos del observador, y como se hizo en la seccion 6.9.1, se
vera a continuacion que marcan la dinamica de la evolucion del error de observacion.
En efecto, si se resta la ecuacion del observador de la del sistema real (6.64) se llega a
que
e(k + 1) = (G Ke C)e(k)
de lo que puede observarse que los polos del observador determinan la dinamica del
error. Si G Ke C es estable, el error convergera a cero independientemente de la
estimacion del estado inicial x(0).
La ecuacion del observador y del propio sistema en espacio de estados controlado
por la realimentacion lineal del vector de estados, pueden representarse mediante un
diagrama de bloques que se ilustra en las figuras 6.3 y 6.4.
Finalmente, es evidente que interesa que la estimacion del estado converja rapidamente al valor real de dicho estado. Una manera evidente de lograr esto es colocar todos
los polos del observador en cero, de manera que se consiga que el error de aproximacion
muestre una respuesta dead-beat. Esto se consigue eligiendo de manera apropiada Ke .

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

u(k)

x(k+1)
+

z-1

137

y(k)

x(k)

G
u(k)

-K

x(k)

y(k)

u(k)
OBSERVADOR

Figura 6.3: Diagrama de bloques de un sistema LTI controlado mediante una realimentacion del vector
de estados que estima el estado con un observador.

x(k)

u(k)

+
+

x(k+1)
+

z-1

x(k)

y(k)

Ke

Figura 6.4: Diagrama de bloques de un observador de orden completo.

y(k)

138

OBSERVADORES DEL ESTADO

6.9.2.1.

C
alculo de Ke

El procedimiento para elegir Ke de manera que se coloquen los polos del observador
en unos valores especificados es analogo al de la colocacion de polos vista en la seccion
6.8. Si la ecuacion caracterstica deseada del observador es:
z n + 1 z n1 + + n1 z + n = 0
y la del sistema es
z n + a1 z n1 + + an1 z + an = 0

entonces

Ke = (W N )1

donde

W =

an1 an2
an2 an3
..
..
.
.
a1
1
1
0

a1
1
..
.

0
0

1
0
..
.

0
0

n an
n1 an1
..
.

N=

1 a1

(6.67)

.
.
..
. G C .. .. (G )n1 C

es decir, la misma matriz W empleada en la colocacion de polos y la matriz de observabilidad3 . Notese que si el sistema viene indicado en forma canonica observable
(W N )1 = I. Tambien puede emplearse la formula de Ackermann, que para este caso
es:
1

0
C
CG 0

Ke = (G)
..
..
.

.
CGn1

donde

(G) = Gn + 1 Gn1 + + n1 G + n I = 0
Ejemplo 6.7
Considerese un sistema como (6.64) con




1 1
0,5
G=
H=
0 1
1
3

C=

1 0

A fin de obtener un texto mas legible se evita en lo posible hacer referencias a material anterior,
a
un a pesar de que esto pueda alargar la exposicion del tema al repetirse ecuaciones y expresiones.

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

139

dise
naremos un observador del estado. En primer lugar, se ha de comprobar que el
sistema es observable. Para ello se comprueba que


nh
io
1 1
.

.
= rango
rango
=2
C . G C
0 1
luego el sistema es completamente observable. El siguiente paso es hallar la ecuacion
caracterstica del sistema en bucle abierto:

 

z 0
1 1

|zI G| =
0 1
0 z
= z 2 2z + 1 = 0
luego a1 = 2 y a2 = 1. Deseamos que el observador tenga una respuesta dead-beat,
luego la ecuacion caracterstica deseada del observador sera:
z 2 = 0 1 = 2 = 0
A continuacion se calculara Ke :
1

Ke = (W N )
con
N=

1 1
0 1

W =

resultando
Ke =

a1 1
1 0
2
1

1
2

2 1
1 0

C
alculo de Ke mediante la f
ormula de Ackermann
En este caso la formula de Ackermann es:

1  
C
0
Ke = (G)
CG
1
con
(G) = G2 + 1 G + 2 I = G2
resultando
Ke =

1 1
0 1

2 

1 0
1 1

1 

0
1

2
1

que evidentemente es el mismo resultado que el obtenido con el procedimiento anterior.

140

OBSERVADORES DEL ESTADO

Estudio de la evoluci
on del error de estimaci
on
Vamos a comprobar que el error cae a cero seg
un una respuesta dead-beat. Sea




a1
a2
x(0) =
x(0) =
b1
b2
entonces
e(0) = x(0) x(0) =

a1 a2
b1 b2

G Ke C =

1 1
1 1

ademas se tiene que

a
b

el error evoluciona, por tanto, seg


un

 


e1 (k + 1)
1 1
e1 (k)
=
e2 (k + 1)
1 1
e2 (k)
por lo que se calcula la evolucion de este



e1 (1)
=
e2 (1)

=



e1 (2)
=
e2 (2)

=

error:

1 1
1 1

a + b
a + b

1 1
1 1

0
0

a
b

a + b
a + b

luego, tal y como se pretenda, la estimacion del vector de estados coincide con el
valor real de dicho vector dos tiempos de muestreo despues de iniciarse la estimacion.
Finalmente, la ecuacion del observador es:

 

 

 
x1 (k + 1)
1 1
x1 (k)
0,5
2
=
+
u(k) +
y(k)
x1 (k + 1)
1 1
x1 (k)
1
1


6.9.2.2.

Comentarios acerca del papel de Ke

Se ha visto que Ke se utiliza para corregir la estimacion, disminuyendo el efecto de


las incertidumbres que se tengan sobre la dinamica real de la planta. Si estas incertidumbres son importantes (es decir, si se tiene poca confianza en que el modelo de la

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

141

planta coincida con la dinamica real de la misma) este termino corrector debera tomar
un valor alto. Sin embargo, si la se
nal de salida esta contaminada por perturbaciones y
ruido en general procedente, por ejemplo, de los sensores de medida, entonces la se
nal
de salida no es fiable en el sentido de que no proviene u
nicamente de la dinamica real de
la planta. Por tanto, en estas situaciones el termino corrector debera ser mas peque
no.
Al seleccionar Ke se debe pensar no solo en reducir el error en base a una correccion
energica, sino que hay que tener en cuenta que cuando hay ruidos o perturbaciones,
una ganancia Ke alta no contribuira a reducir el error, porque las correcciones no iran
en la ((direccion)) correcta. Es decir, hay que llegar a un compromiso entre la velocidad
de respuesta y la sensibilidad a ruidos y perturbaciones.

6.9.2.3.

Efectos de la adici
on del observador

Hemos supuesto que al no disponerse de x(k) para calcular la se


nal de control, se
usa el observador para producir una estimacion x(k), de manera que
u(k) = K x(k)

(6.68)

Cabe preguntarse si al usar el observador, se colocan los polos del sistema en el sitio
que se pretende al calcularse la ganancia de realimentacion del vector de estado K.
Que efectos tiene el observador sobre los polos de bucle cerrado? Para estudiar esto,
se analizara el efecto que tiene la adicion del observador sobre la ecuacion caracterstica
del sistema en bucle cerrado.
Sea el sistema (6.64) controlado mediante (6.68). La ecuacion de estado puede
reescribirse como:
x(k + 1) = Gx(k) HK x(k)
= (G HK)x(k) + HK(x(k) x(k))
= (G HK)x(k) + HKe(k)
donde e(k) es el error de observacion en el instante k. Recordemos que el error de
observacion viene dado por:
e(k + 1) = (G Ke C)e(k)
La ecuacion de estado y la del error, se pueden combinar en la ecuacion de un sistema
autonomo aumentado que describe la dinamica del sistema observado (es decir, de todo
el conjunto sistema-controlador-observador):

 


x(k + 1)
G HK
HK
x(k)
=
e(k + 1)
0
G Ke C
e(k)

142

OBSERVADORES DEL ESTADO

La ecuacion caracterstica de este sistema es

es decir,


zI G + HK
HK


0
zI G + Ke C



=0

|zI G + HK||zI G + Ke C| = 0
Dado que las races de esta ecuacion son las races de cada uno de los dos determinantes
que aparecen, esto implica que los polos del sistema completo son los polos del sistema
en bucle cerrado, tal y como se han colocado mediante el dise
no de K junto con los
polos del observador. Por tanto, la colocacion de polos y la observacion son dos cosas
independientes, porque la adicion del observador no modifica los polos de bucle cerrado
del sistema tal y como se eligieron al dise
nar K. Por tanto:

Los polos del sistema se eligen para que se cumplan las especificaciones del sistema
de control.
Los polos del observador se escogen de manera que la respuesta del observador
sea mas rapida que la del sistema (para que esta u
ltima resulte dominante),
tpicamente 4 o 5 veces mas rapida.

6.9.3.

Observador de orden mnimo

Supongase que x(k) es un n-vector y que y(k) es un m-vector. Como las m salidas
son combinaciones lineales del estado, hay m variables que no necesitan ser estimadas.
El observador de orden mnimo sera el que estime las n m restantes.
Para dise
nar el observador de orden mnimo estableceremos una particion del vector
de estados:

xa (k)
x(k) =
xb (k)
donde el m-vector xa (k) son las variables medibles (accesibles) y el n m-vector xb (k)
son las variables no medibles (no accesibles). Esta particion del vector de estados

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

143

determina una particion en la ecuacion de estados:

..

Gaa . Gab
xa (k + 1)
x
(k)
H
a
a

= ... + u(k)

..
xb (k + 1)
xb (k)
Hb
Gba . Gbb

h
i xa (k)
.
y(k) =
I .. 0
xb (k)

donde Gaa Rmm , Gab Rm(nm) , Gba R(nm)m , Gbb R(nm)(nm) , Ha


Rm1 , Hb R(nm)1 . La ecuacion de la parte del estado que es accesible (medible)
sera:
xa (k + 1) = Gaa xa (k) + Gab xb (k) + Ha u(k)
Notese que en esta ecuacion hay terminos que no son medibles, por lo tanto la podemos
reescribir agrupando los terminos medibles a la izquierda y los no medibles a la derecha:
xa (k + 1) Gaa xa (k) Ha u(k) = Gab xb (k)

(6.69)

Por otro lado, la parte del vector de estados que no se puede medir se puede escribir
como:
xb (k + 1) = Gba xa (k) + Gbb xb (k) + Hb u(k)
Observese que en esta ecuacion, los terminos que dependen de xa (k) y u(k) son conocidos mientras que el termino que depende de xb (k) es desconocido. Esta ecuacion la
podemos reescribir como
xb (k + 1) = Gbb xb (k) + [Gba xa (k) + Hb u(k)]

(6.70)

El dise
no del observador de orden mnimo se realiza tomando como referencia el del
observador de orden completo, cuya ecuacion de estados es
x(k + 1) = Gx(k) + Hu(k)
En el caso del observador de orden mnimo, la ecuacion (6.70), es decir, la ecuacion
que describe la evolucion de la parte del estado no medible, es la que hace el papel
de ecuacion de estado. Por otra parte, se conoce que la ecuacion de salida para el
observador de orden completo es:
y(k) = Cx(k)
donde y(k) es medible y Cx(k) es no medible (por serlo x(k)). Observese que se puede
establecer un paralelismo entre los terminos de esta ecuacion y los de la ecuacion (6.69).
En el caso del observador de orden mnimo, por tanto, se considera como ecuacion de
salida la ecuacion (6.69).

144

OBSERVADORES DEL ESTADO

Recordemos que la ecuacion del observador de orden completo es


x(k + 1) = (G Ke C)
x(k) + Hu(k) + Ke y(k)
Comparando las ecuaciones de estado y salida del observador de orden completo y las
del observador de orden mnimo, se establecen las siguientes analogas:
Observador de orden completo Observador de orden mnimo
x(k)
G
Hu(k)
y(k)
C
Ke Rnm

xb (k)
Gbb
Gba xa (k) + Hb u(k)
xa (k + 1) Gaa xa (k) Ha u(k)
Gab
Ke R(nm)m

Teniendo en cuenta esto, se obtiene


xb (k+1) = (Gbb Ke Gab )
xb (k)+Gba xa (k)+Hb u(k)+Ke [xa (k + 1) Gaa xa (k) Ha u(k)]
(6.71)
Ademas, de la ecuacion del sistema sabemos que
y(k) = xa (k)
luego, aplicando esto en la ecuacion (6.71) se obtiene
xb (k + 1) = (Gbb Ke Gab )
xb (k) + Ke y(k + 1) + (Gba Ke Gaa )y(k) + (Hb Ke Ha )u(k)
que sera la ecuacion del observador de orden mnimo. Los polos del observador de
orden mnimo seran los autovalores de (Gbb Ke Gab ). Observese, sin embargo, que en
esta ecuacion aparece un termino que multiplica a y(k + 1). Como es logico el valor
de la salida en k + 1 no esta disponible en el instante k, por lo que esta ecuacion ha
de ser modificada. Se puede demostrar (no se hara aqu), que esta ecuacion se puede
reescribir como:
xb (k) = (k) + Ke xa (k)
(k + 1) = (Gbb Ke Gab )
(k) + [(Gbb Ke Gab )Ke + Gba Ke Gaa ] y(k)
+(Hb Ke Ha )u(k)

(6.72)

La ecuacion caracterstica del observador de orden mnimo es:


|zI Gbb + Ke Gab | = 0
y como en el caso del observador de orden completo, Ke se puede elegir para colocar
los polos del observador donde se desee mediante los metodos indicados en la seccion

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

145

6.9.2.1. Por ejemplo, si la salida y(k) es un escalar, es decir m = 1, se tienen que estimar
n 1 variables. La formula de Ackermann, por ejemplo, quedara:
1

Gab
0
Gab Gbb 0


Ke = (Gbb )
..
..

.
.
n2
Gab Gbb
1
donde

n2
(Gbb ) = Gn1
+ + n1 I
bb + 1 Gbb

De manera analoga a la del observador de orden completo, se comprueba que la ecuacion


caracterstica del conjunto formado por el observador de orden mnimo y el sistema
controlado por una realimentacion lineal del vector de estados es:
|zI G + HK||zI Gbb + Ke Gab | = 0
por lo que, nuevamente se ve que los problemas de dise
no del controlador y del observador son independientes.
Ejemplo 6.8
Sea un sistema LTI cuyas matrices son




1 0,2
0,02
G=
H=
0 1
0,2
se pide

C=

1 0

1. Dise
nar un controlador que coloque los polos de bucle cerrado en z = 0,6 j0,4.
2. Asumiendo que y(k) = x1 (k) es el u
nico estado accesible, dise
nar un observador
de orden mnimo con respuesta dead-beat.
En primer lugar, se ha de comprobar la controlabilidad y observabilidad del sistema:


nh
io
0,02
0,06
.
rango
= rango
=2
H .. GH
0,2 0,2


nh
io
1 1
.

.
rango
= rango
=2
C . G C
0 0,2

Luego el sistema cumple ambas condiciones. La ecuacion caracterstica del controlador


es:


z 1 0,2
= z 2 2z + 1
|zI G| =
0
z1

146

OBSERVADORES DEL ESTADO

luego a1 = 2 y a2 = 1. La ecuacion caracterstica de bucle cerrado deseada es:


(z 0,6 j0,4)(z 0,6 + j0,4) = z 2 1,2z + 0,52
luego 1 = 1,2 y 2 = 0,52. Por tanto,




K = 2 a2 1 a1 T 1 = 0,48 0,8 T 1
donde la matriz T se calcula
h
T = H

como

i  a 1   0,02 0,02 
1
=
1 0
0,2 0,2

..
. GH

lo que lleva a

K=

25 2,5
25 2,5
8 3,2

la ley de control se formulara por tanto, como

u(k) = K x(k)





 x1 (k)

 y(k)
= 8 3,2
= 8 3,2
x2 (k)
x2 (k)
En cuanto al observador de
que es de orden 1. La particion


..
G
. Gab
aa .

.. =


..
Gba . Gbb

orden mnimo, este estimara una sola variable, por lo


de la ecuacion de estado en este caso sera:

..

1 . 0,2
H
0,02
a

.
=
..

.
Hb
0,2
0 .. 1

La ecuacion caracterstica deseada del observador es


(z) = z = 0
luego
Ke = (Gbb )[Gab ]1 [1] = (1)(0,2)1 (1) = 5
Las ecuaciones del observador seran
(k + 1) = (Gbb Ke Gab )
(k) + [(Gbb Ke Gab )Ke + Gba Ke Gaa ] y(k)
+(Hb Ke Ha )u(k)
= (1 5 0,2)
(k) + [(1 5 0,2) 5 + 0 5 1] y(k) + (0,2 5 0,02)u(k)
= 5y(k) + 0,1u(k)
x2 (k) = Ke y(k) + (k)
= 5y(k) + (k)

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

147

y la ley de control sera por tanto,


u(k) =
=
=
=

K x(k)
8y(k) 3,2
x2 (k)
8y(k) 3,2(5y(k) + (k))
24y(k) 3,2
(k)


6.10.

Control
optimo LQR

Las tecnicas de control optimo conforman una de las ramas del control automatico
mas importantes en el desarrollo de las estrategias modernas de control mas utilizadas
hoy en da. Se han escrito numerosas monografas dedicadas a su estudio, y se ha
publicado una ingente cantidad de artculos en revistas especializadas. No obstante,
en estos apuntes solo se dara una pincelada sobre este particular, centrandonos en el
caso particular del control LQR con horizonte infinito, tambien conocido como LQR
de regimen permanente.
Las estrategias de control optimo calculan la ley de control de manera que se optimiza una cierta medida del rendimiento del controlador. Se parte de un sistema descrito
por
x(k + 1) = Gx(k) + Hu(k)
El objetivo es calcular una ley de control
u(k) = Kx(k)
de tal manera que se minimiza el funcional (que expresa un ndice de funcionamiento)

1X
(x (k)Qx(k) + u (k)Ru(k))
J=
2 k=0

(6.73)

siendo Q y R matrices de ponderacion que cumplen que Q = Q > 0, R = R > 0.


Notese que este ndice de funcionamiento pondera la diferencia entre el estado y el origen el instante inicial, hasta un tiempo infinito. Por tanto, cuanto mas rapido se llegue
al origen menor valor de J se tendra. Esto implica que al minimizarse J, se encontrara la ley de control que lleva el estado al origen mas rapidamente y manteniendolo


CONTROL OPTIMO
LQR

148

siempre lo mas cerca posible del origen4 . Por otra parte, se observa que en el funcional
hay otro termino que pondera el valor de la secuencia de se
nales de actuacion. Este
termino impide que se obtenga una ley de control que lleve el estado al origen a expensas de una actuacion muy grande. Al minimizarse J, por tanto, se conseguira una ley de
control que por una parte acerque el estado al origen lo mas rapido posible, pero manteniendo un nivel de actuaciones moderado, encontrandose por tanto, una solucion de
compromiso entre el rendimiento del controlador y su nivel de actuacion. El sentido de
este compromiso puede venir dictado por diferentes razones, como por ejemplo moderar
el gasto de energa o combustible necesario para proporcionar la se
nal de actuacion.
Existen razones mas sutiles pero no por ello menos importantes para incorporar esta
ponderacion del esfuerzo de control. Por ejemplo, cuando existen discrepancias entre
el modelo del sistema y su dinamica real (algo que ocurre casi siempre, pues los modelos matematicos no pueden recoger todas las complejidades de los sistemas o procesos
reales) esta ponderacion del esfuerzo de control resulta en un sistema mas estable.
Para calcular la ley de control que minimiza el ndice (6.73) se define una matriz P
que satisface la siguiente ecuacion de Riccatti:
P = Q + G P G G P H(R + H P H)1H P G

(6.74)

La solucion de esta ecuacion es una matriz P que es hermtica y definida positiva. Se


demuestra que la matriz
K = (R + H P H)1H P G
es la que minimiza el ndice (6.73) mediante la ley de control
u(k) = (R + H P H)1 H P Gx(k)
La ecuacion de estado del sistema en bucle cerrado sera por tanto:
x(k + 1) = (G H(R + H P H)1H P G) x(k)
= (I + HR1 H P )1 Gx(k)
Para este desarrollo se ha empleado el lema de inversion
(A + BC)1 = A1 A1 B(I + CA1 B)1 CA
con A = I, B = H y C = R1 H P .
4

Esta es una interpretacion que hay que tomar con cierto cuidado, pues puede que se obtenga una
ley de control que provoque que el estado no se acerque al origen todo lo posible al principio pero que
lo lleve a dicho origen muy rapidamente en los instantes siguientes, manteniendo pues el valor de J
muy bajo.

CAPITULO 6. CONTROL DE SISTEMAS DISCRETOS EN EL ESPACIO DE ESTADOS

6.10.1.

149

Soluci
on de la ecuaci
on de Riccatti

Para calcular la ley de control optima LQR en regimen permanente es necesario


resolver la ecuacion de Riccatti (6.74). Esto no es algo trivial en general, pero si podemos resolverla facilmente si se dispone de un computador. Para ello formularemos un
proceso iterativo en que tomando como valor inicial de P = 0 (es decir una matriz de
ceros) se calculara el valor de la matriz P en el paso i + 1 como
Pi+1 = Q + G Pi G G Pi H (R + H Pi H)1 H Pi G
La condicion de parada del bucle o proceso iterativo sera que Pi+1 Pi 0, esto es,
que la diferencia entre Pi+1 y Pi sea una matriz cuyos elementos esten todos cerca del
cero.

6.11.

Filtro de Kalman

El filtro de Kalman es un estimador del estado (en realidad tambien se puede


interpretar como filtro y como predictor), que tiene en cuenta la presencia de ruidos
en la ecuacion de estados y la salida. En este sentido es un estimador optimo, pues
la estimacion obtenida tiene el menor error posible teniendo en cuenta que al haber
ruidos actuando, nunca se podra obtener una estimacion perfecta. Al igual que en el
caso del control LQR no se entrara en profundidad en el estudio de este estimador, sino
que solo se presentara la formulacion de un caso particular, el filtro de Kalman para
regimen permanente.
Sea un sistema:
x(k + 1) = Gx(k) + Hu(k) + (k)
y(k) = Cx(k) + (k)
donde (k) y (k) son variables aleatorios que act
uan como ruidos aditivos. Se demuestra que se puede obtener una estimacion optima del vector de estados mediante
el siguiente esquema:
x(k + 1) = G
x(k) + Hu(k) + Ke (k) (y(k) C x(k))
Ke (k) = GPk C (R + CPk C )1
Pk+1 = Q + (G Ke (k)C) Pk G
donde

R = E {(k) (k)}
Q = E {(k) (k)}
P0 = E {(0) (0)}

(6.75)

150

FILTRO DE KALMAN

donde E {} denota la esperanza matematica y R,Q se asumen constantes. Se demuestra


que conforme k :
Pk+1 P
Ke (k) Ke
donde P y Ke son matrices constantes y ademas P es semidefinida positiva. Usando
esto, las ecuaciones de estimacion (6.75) se pueden reescribir como:
x(k + 1) = G
x(k) + Hu(k) + Ke (y(k) C x(k))
Ke = GP C (R + CP C )1
P = Q + GP G GP C (R + CP C )1 CP G

(6.76)

que son las ecuaciones del filtro de Kalman de regimen permanente. Notese que para
resolver la ecuacion de Riccatti se puede usar el mismo metodo usado en el LQR.

Captulo 7
Modelos de procesos y
perturbaciones
7.1.

Introducci
on

En este captulo se expondran diversos tipos de formas de modelar perturbaciones


y procesos cuya evolucion se ve afectada por perturbaciones. Es importante tener en
cuenta que los modelos de procesos con perturbaciones tienen su origen en el modelado
de perturbaciones y no al reves.
En la teora clasica del control automatico siempre se ha tenido en cuenta el comportamiento de los sistemas frente a perturbaciones a la hora de dise
nar sistemas de
control. Dichas perturbaciones se modelaban siempre de manera muy simplificada. Es
por tanto com
un en esta teora el considerar que las perturbaciones van a tener la
forma de
Pulsos.
Escalones.
Rampas.
Sinusoides.
Todos estos modelos tienen en com
un que son absolutamente predecibles en su evolucion en funcion de las condiciones iniciales. Es decir, en cuanto la perturbacion aparece
151

152

PERTURBACIONES DETERMINISTAS A TROZOS

podemos predecir su evolucion futura. Es una suposicion com


un en estos casos, consi
derar que estas perturbaciones vienen generadas por sistemas dinamicos.

7.2.

Perturbaciones deterministas a trozos

Como fuente de perturbaciones con una mayor variabilidad que los modelos clasicos
antes comentados, se pueden considerar las perturbaciones deterministas a trozos. Surgen de la necesidad de estudiar el efecto de perturbaciones mas realistas en sistemas
de control que se basan en alg
un tipo de esquema predictivo para calcular la se
nal
de control. En este tipo de sistemas, el considerar una perturbacion absolutamente
predecible (como en el caso de los modelos clasicos) no tiene utilidad alguna, pues se
pueden considerar directamente en el calculo de la ley de control.
Los modelos de perturbaciones deterministas a trozos parten de la suposicion de
que son generados por un sistema lineal, en el que la entrada es cero excepto en ciertos
instantes de tiempo separados por mas de n tiempos de muestreo, donde n es el orden
del sistema:
C(z 1 )
y(k) =
w(k)
A(z 1 )
suponiendose que el grado de C(z 1 ) es igual al grado de A(z 1 ). Si la entrada es
cero excepto en ciertos instantes de tiempo que estan separados, quiere decir que la
se
nal w(k) es un tren de pulsos. La amplitud y momento de aparicion de esos pulsos
son desconocidos. Esto es lo que le da variabilidad a la fuente de perturbaciones. Sin
embargo, una vez que aparecen y se conoce la amplitud del pulso, la evolucion de la
salida y(k) es perfectamente predecible pues la dinamica del sistema es conocida. De
ah el nombre de determinista a trozos.

7.3.

Procesos estoc
asticos

Es natural utilizar el concepto de aleatorio o estocastico1 para describir una amplia


clase de perturbaciones, suficientemente realistas para formular problemas de prediccion con postulados cercanos a la realidad.
1

Estocastico: relativo a una variable aleatoria; algo que sigue una determinada distribuci
on de
probabilidad, usualmente con varianza finita.

CAPITULO 7. MODELOS DE PROCESOS Y PERTURBACIONES

153

El concepto de proceso estocastico es complejo y alcanza su madurez en los trabajos


de Kolmogorov (1930). Aqu presentaremos solo algunas ideas basicas. Un proceso
estocastico puede ser considerado como una funcion de dos variables
X(t, w)
donde t es la variable tiempo con su significado habitual y w es una variable aleatoria.
Si consideramos un valor fijo de w, esto es w = w0 y dejamos la variable t libre, lo que
denotaremos como
X(:, w0 )
estaremos hablando de una ((realizacion)) del proceso. Esta realizacion es una funcion
temporal com
un sin ning
un tipo de caracter aleatorio una vez que se conoce que w =
w0 . Si por otra parte se considera un instante de tiempo fijo, es decir t = t0 , que
denotaremos como
X(t0 , :) , X(t0 )
tendremos una variable aleatoria. Se puede considerar por tanto, que la evolucion del
proceso esta dictada por un generador de se
nales aleatorias. En la figura 7.1 se ilustran
estos conceptos. Puede observarse que el valor de la funcion en cada instante es un
valor aleatorio que en la figura se considera variable en un determinado rango. Por
otra parte, cuando se habla de una realizacion no es mas que una funcion com
un que
depende de t.

w=w0

t0

t1

t2

t3

t4

......

Figura 7.1: Procesos estocasticos: realizaciones y variables aleatorias.

Definici
on 7.1 Se denomina proceso estoc
astico determinista, a aquel cuya evolucion
puede ser predicha exactamente con un predictor lineal 2 en base a medidas pasadas.
En estos procesos, el caracter estocastico s
olo se manifiesta en la aleatoriedad de las
condiciones iniciales. Para aplicaciones basadas en predicci
on no son muy interesantes.
2

Es decir, haciendo evolucionar hacia delante un modelo lineal.

154

MODELOS DE PROCESOS CON RUIDOS

Definici
on 7.2 Se denomina proceso estoc
astico estacionario, a aquel cuya distribucion estadstica para X(t1 ), X(t2 ),. . . ,X(tn ) es la misma que para X(t1 + ), X(t2 +
),. . . ,X(tn + ). Es decir, su distribuci
on no vara con el tiempo.

Definici
on 7.3 Se denomina ruido blanco discreto, a un proceso aleatorio que se puede
considerar como una secuencia cuyos elementos son variables aleatorias independientes
entre s cuya distribucion es identica. Se suele suponer que
E {x(k)} = 0
es decir, que el valor esperado es cero y adem
as
E {x(i)x(j)} =

0 si i 6= j (por ser variables independientes)


2 si i = j

Al ruido blanco se le suele considerar prototipo de una se


nal impredecible.

7.4.

Modelos de procesos con ruidos

En esta seccion veremos como se pueden generar diversos tipos de procesos estocasticos, cuando a un sistema lineal se le inyecta un ruido blanco v(k) ademas de
una entrada externa u(k) a traves de sendas funciones de transferencia.
El caso mas general es el llamado modelo de Box-Jenkins, el cual se ilustra en la
figura 7.2. Esta estructura es demasiado general, y normalmente se utilizan diversas
v(k)

u(k)

y(k)

Figura 7.2: Modelo de Box-Jenkins.

simplificaciones de las cuales veremos a continuacion las mas comunes:

CAPITULO 7. MODELOS DE PROCESOS Y PERTURBACIONES

155

Modelo de Media Movil (MA : Moving Average). Es el caso mas sencillo y viene
descrito por
y(k) = v(k) + c1 v(k 1) + c2 v(k 2) + + cn v(k n)
Con este modelo se pueden describir muchos tipos de perturbaciones aleatorias. Sin embargo, no incluye a los valores pasados de la salida por lo que no
servira para modelar procesos que tengan dinamica.
Modelo Autoregresivo (AR). Viene descrito por
y(k) + d1 y(k 1) + d2 y(k 2) + + dn y(k n) = v(k)
En este caso, la parte aleatoria correspondiente a la perturbacion tiene una estructura muy simple porque no depende de los valores pasados.
Modelo Autoregresivo de Media Movil (ARMA). Es la combinacion de los dos
anteriores, por lo que tomara la forma
y(k) + d1 y(k 1) + + dn y(k n) = v(k) + c1 v(k 1)
+c2 v(k 2) + + cn v(k n)
Este modelo permite describir procesos mas ricos que los anteriores. Sin embargo,
desde el punto de vista del control es interesante poder considerar el efecto de una
entrada externa, por lo que se considera el siguiente tipo de modelos de procesos
con ruidos.
Modelo Autoregresivo de Media Movil con una entrada exogena (ARMAX). Tambien llamado modelo CARMA (Controlled ARMA). Viene descrito por
y(k) + a1 y(k 1) + + an y(k n) = b1 u(k 1) + + bn u(k n)
+v(k) + c1 v(k 1) + + cn v(k n)
Modelo Autoregresivo con entrada exogena para mnimos cuadrados (ARX-LS ).
Este modelo surge como version simplificada del anterior, para el caso en el que
no se necesita que la fuente de perturbaciones tenga una estructura tan compleja.
Viene descrito por
y(k) + a1 y(k 1) + + an y(k n) = b1 u(k 1) + + bn u(k n) + v(k)
Como su nombre indica se utiliza en la identificacion por el metodo de los mnimos
cuadrados (vease el tema 9).

156

MODELOS DE PROCESOS CON RUIDOS

Modelo Autoregresivo de Media Movil integrada y con una entrada exogena


(ARIMAX o CARIMA). Este modelo incorpora un integrador en la fuente de
perturbaciones, por lo que viene descrito por
y(k) + a1 y(k 1) + + an y(k n) = b1 u(k 1) + + bn u(k n)
v(k) + c1 v(k 1) + + cn v(k n)
+

donde = 1z 1 . Este tipo de modelos es u


til en esquemas de control predictivo
para formular leyes de control que incorporen un efecto integral, de manera que
sean capaces de rechazar perturbaciones en escalon.

Los modelos anteriores pueden escribirse en forma condensada utilizando polinomios


en z 1 tal y como se muestra en la siguiente tabla resumen:
Modelo
Expresion
MA
AR
ARMA
ARMAX
ARX-LS
ARIMAX

y(k) = C(z 1 )v(k)


D(z 1 )y(k) = v(k)
D(z 1 )y(k) = C(z 1 )v(k)
1
A(z )y(k) = B(z 1 )u(k 1) + C(z 1 )v(k)
A(z 1 )y(k) = B(z 1 )u(k 1) + v(k)
1
A(z 1 )y(k) = B(z 1 )u(k 1) + C(z )v(k)

Cuando en los modelos anteriores el polinomio que convoluciona con la se


nal v(k) es
distinto de la unidad se habla de ruido coloreado, y en caso contrario, de ruido blanco.

Captulo 8
Introducci
on a la identificaci
on de
sistemas
8.1.

Introducci
on

Un modelo de un proceso es una forma de resumir el conocimiento que se tiene


sobre su dinamica, y por tanto es una herramienta importante en el dise
no y analisis
de sistemas de control. Sin embargo, al construir modelos estamos obteniendo representaciones simplificadas de la dinamica real del proceso. Un solo modelo no suele ser
suficiente para describir un proceso. Por otra parte, seg
un sea el uso destinado al modelo este debera ser mas o menos detallado. Por tanto, se establece una jerarqua de
modelos que describe al proceso con mayor o menor detalle.
Hay dos maneras de abordar la construccion de un modelo: obtenerlo mediante
principios y leyes fsicas que describan la dinamica del proceso, o bien obtenerlo mediante experimentacion sobre el proceso que se quiere modelar. La primera opcion
requiere un conocimiento muy preciso del proceso que se quiere modelar. Por ejemplo,
hay que elegir las variables que vayan a ser los estados del sistema, y esto puede ser un
problema. Es, en general un proceso complicado y muy arduo, excepto en casos muy
simples. Normalmente, se debe combinar con la otra estrategia que es la denominada
identificacion de sistemas. Esta estrategia sera el objeto de este tema.
157


DE SISTEMAS
IDEAS BASICAS
SOBRE IDENTIFICACION

158

8.2.

Ideas b
asicas sobre identificaci
on de sistemas

La identificacion de sistemas es la aproximacion experimental al modelado de sistemas. Consiste en obtener un modelo a partir de observaciones obtenidas directamente
del propio sistema que se pretende modelar. La identificacion de un sistema conlleva
una serie de actividades y herramientas, de las que podemos destacar:

Planificacion de los experimentos.


Seleccion del tipo de modelo.
Eleccion de un criterio para expresar la bondad del modelo que se va a obtener.
Estimacion de los parametros del modelo.
Validacion del modelo obtenido.

A continuacion, se iran desglosando las principales ideas de cada uno de estos aspectos.

8.2.1.

Planificaci
on de los experimentos

Dado que la identificacion de sistemas involucra experimentar con el proceso a modelar, es necesario tener en cuenta que, en general, es muy costoso experimentar con procesos industriales. Por tanto, es necesario elegir una tecnica que nos sea lo mas rentable
desde el punto de vista del tipo de experimentos necesarios. Algunas tecnicas son muy
sencillas, en el sentido de que una vez hecho el experimento es facil obtener el modelo.
Estas tecnicas, sin embargo, requieren que en los experimentos se utilicen se
nales de
entradas preestablecidas de manera muy precisa: pulsos, sinusoides, etc. . . Puede que
el proceso a modelar no pueda ser sometido a este tipo de entradas por consideraciones
de seguridad o motivos economicos. Otras tecnicas de identificacion pueden emplear
casi cualquier tipo de se
nal de entrada (es decir, son menos exigentes en el tipo de
experimentos necesarios), pero una vez realizado el experimento es mas complicado
obtener el modelo. Como comentario general, es necesario que en el experimento se
utilicen se
nales de entrada que exciten todos los modos del sistema. Mas alla de eso,
un buen metodo de identificacion debe ser insensible a las caractersticas de la entrada.
Otro aspecto es que a veces no se puede identificar en bucle abierto y hay que hacerlo
en bucle cerrado. Esto no es siempre posible, pues aunque el sistema sea identificable en

A LA IDENTIFICACION
DE SISTEMAS
CAPITULO 8. INTRODUCCION

159

bucle abierto esta propiedad puede perderse en bucle cerrado. Esto ocurre, por ejemplo,
si los perfiles de la consigna o referencia que se usan son muy simples. Tambien, si los
lazos de control son demasiado simples. En general, cuanto mas complejos sean los
lazos de control y mas se mueva la consigna, mas facil sera la identificacion en bucle
cerrado.

8.2.2.

Selecci
on del tipo de modelo

En teora, la seleccion del tipo de modelo debera venir dada por un conocimiento
del proceso y de las perturbaciones que deban ser tenidas en cuenta. Dependiendo de
si conocemos mucho o poco la estructura del proceso elegiremos entre uno u otro tipo
de modelo. En general, los modelos los clasificaremos como:

Modelos de Caja Blanca. Son los obtenidos a partir de leyes fsicas (esto no sera
realmente identificacion porque no se estaran haciendo experimentos).
Modelos de Caja Negra. En estos modelos se postula una estructura matematica
con una serie de parametros libres, a los cuales se les da valor a partir de los
datos obtenidos en los experimentos.
Modelos de Caja Gris. Corresponden a un tipo intermedio entre los dos anteriores.
Parte del modelo se obtiene mediante leyes fsicas y otra parte, se ajusta usando
medidas experimentales. Por ejemplo, mediante leyes fsicas podemos determinar
la estructura del modelo (o de parte de el) y usar experimentos para terminar de
caracterizar el modelo.

Tambien se pueden clasificar los tipos de modelos en parametricos y no parametricos. En los primeros se tienen una serie de parametros que hay que ajustar. Por ejemplo,
en una funcion de transferencia se tendran que ajustar el orden y los coeficientes de
los polinomios. En modelos de espacio de estados tendramos la misma situacion pero
con las matrices del sistema. En los modelos no parametricos, el modelo no tiene una
serie de parametros que definen la dinamica sino que se compone de una cantidad de
informacion sobre la misma, por ejemplo los modelos basados en la respuesta en frecuencia de un sistema. En el caso que aqu nos ocupa los modelos que emplearemos
seran de caja negra y parametricos.

160

8.2.3.

DE SISTEMAS
IDEAS BASICAS
SOBRE IDENTIFICACION

Elecci
on de un criterio

En el proceso de estimacion del modelo y su subsiguiente validacion es necesario


contar con un criterio que exprese la bondad del ajuste del modelo a los datos, es
decir, que exprese la calidad del modelo obtenido. Normalmente, se utilizan criterios
que toman la forma:
N
X
J() =
g(e(k))
k=1

donde es el vector de parametros que se trata de ajustar, e(k) es el error de estimacion


para la medida k, N es el n
umero de observaciones o medidas disponibles y g() es una
funcion usualmente cuadratica.

Usualmente, el proceso de ajuste del modelo se realiza de manera que se busca el


valor del vector de parametros que hace mnimo al ndice o criterio J(). El metodo
mas antiguo que emplea esta estrategia es el de los mnimos cuadrados, debido a Gauss.
Por otra parte, cuando los procesos se describen mediante modelos estocasticos, el
problema es de estimacion estadstica. Un metodo muy popular en este caso, es el del
estimador de maxima verosimilitud.

8.2.4.

Estimaci
on de los par
ametros

Para resolver el problema de estimacion de los parametros del modelo se requiere


de los elementos comentados anteriormente: datos experimentales, un tipo de modelo
y un criterio. Estimar los parametros es resolver un problema de optimizacion en el
cual, el mejor modelo es el que hace mnimo el criterio. Es necesario tener en cuenta
que el modelo obtenido dependera de los elementos anteriores, como por ejemplo de la
amplitud y contenido frecuencial de la se
nal de entrada. Hay diversas formas de llevar
a cabo el proceso de estimacion. Una distincion amplia, es aquella que distingue entre
identificacion en lnea e identificacion fuera de lnea.

8.2.4.1.

Identificaci
on en lnea

En los metodos de identificacion en lnea la estimacion se efect


ua usando medidas
que se van obteniendo en tiempo real, y normalmente se usan calculos recursivos.
El esquema de este tipo de identificacion sera el mostrado en la figura 8.1. En este
esquema aparece un nivel de supervision que es necesario para evitar, por ejemplo, que

A LA IDENTIFICACION
DE SISTEMAS
CAPITULO 8. INTRODUCCION

161

y(k)

u(k)

PLANTA

IDENTIFICACIN
MODELO
ACTUALIZADO

SUPERVISIN

MODELO
CORREGIDO

Figura 8.1: Esquema de la identificacion en lnea.

el modelo actualizado se salga de ciertos lmites o cambie bruscamente (esto no sera


bueno para ciertas leyes de control basadas en modelos). Este metodo suele ser el u
nico
apropiado cuando se pretende usar una estrategia de control adaptativo, o el proceso
vara su dinamica con el tiempo.

8.2.4.2.

Identificaci
on fuera de lnea

En este caso se toman los datos del experimento (es decir, series de medidas) y
posteriormente, se ajusta el modelo usando para ello todo el conjunto de datos. Este
tipo de procedimientos suelen obtener modelos mas precisos y son mas fiables en cuanto
a la convergencia de los parametros estimados a los parametros reales del proceso1 . En
cualquier caso, existe un consenso general en que no existe un metodo universalmente
bueno, por tanto, dependiendo de la situacion unos funcionaran mejor que otros.

8.2.5.

Validaci
on del modelo

La validacion del modelo consiste en comprobar la bondad del modelo que se ha


obtenido por el proceso de identificacion. Una tecnica muy com
un para comprobar la
bondad de un modelo identificado es la validacion cruzada.
1

Notese que aunque el proceso real no correspondera en general exactamente con el modelo (pues
todo modelo implica un cierto grado de simplificacion de la realidad) se asume que existe un valor del
vector de parametros que es el que mejor describe al proceso.


DE SISTEMAS
IDEAS BASICAS
SOBRE IDENTIFICACION

162

La idea del metodo de validacion cruzada es dividir el conjunto de datos disponible


en dos partes o subconjuntos:
Conjunto de estimacion. Es usado para estimar el modelo mediante la resolucion
de un problema de optimizacion, de tal manera que el vector de parametros
estimados sobre el conjunto de estimacion CE sera
CE = arg mn VCE (, CE)

donde VCE es el criterio de estimacion.


Conjunto de prueba o validacion. Con este modelo se eval
ua el estimador obtenido
mediante un criterio de prueba, que puede ser el mismo que el usado en la estimacion u otro distinto:
FCE = VCP (CE , CP)
La idea tras el concepto de validacion del modelo es estimar distintos tipos de modelos
(por ejemplo con distintos ordenes) y quedarse con el que mejor ajusta (es decir, el que
de menor FCE ). Mediante esta tecnica de validacion cruzada, lo que se trata de ver es
si el modelo es capaz de reproducir los datos de salida para entradas que no se han
empleado en la estimacion.
Como se ha comentado anteriormente, el criterio VCP no tiene por que ser el mismo
que el VCE . Por ejemplo, se puede usar como criterio para validacion el conocido criterio
de Akaike o criterio AIC (Akaikes Information Criterion), el cual asumiendo que las
perturbaciones siguen una distribucion gaussiana se calcula mediante la formula
VCP (, CP) =

2dimension()
1+
N

N
1 X 2
e (t, )
N t=1

donde e(t, ) = y(t) y(t, ) es el error de estimacion para los datos obtenidos en el
instante t.
Tampoco puede descartarse la posibilidad de no usar criterio de validacion alguno y
efectuar una inspeccion visual sobre una simulacion, en la que se usa el modelo estimado
para predecir la salida en base a datos de entradas experimentales.
Finalmente, la tecnica de validacion cruzada, aunque muy popular no es la u
nica.
Otra tecnica que a veces se utiliza es el analisis de residuos. Se entiende por residuos
los errores que comete el modelo una vez ajustado, es decir e(t) = y(t) y(t, ). Si el
modelo estimado es suficientemente bueno, estos residuos tienen que ser independientes

A LA IDENTIFICACION
DE SISTEMAS
CAPITULO 8. INTRODUCCION

163

de la informacion disponible en el instante anterior (es decir, el residuo en t tiene que


ser incorrelado con las medidas obtenidas en los instantes anteriores). Esto es as por
que si existe correlacion entre e(t) y alguna entrada pasada u(t ), quiere decir que
una parte del valor de y(t), que depende de u(t ) no ha sido reproducida por el
modelo en y(t, ). Por tanto, el modelo no estara reproduciendo toda la dinamica del
proceso.

8.2.6.

Resumen del proceso de identificaci


on

El proceso de identificacion de un sistema rara vez se concluye con la sola ejecucion


de los pasos anteriormente descritos. En lugar de esto, se realizan numerosas repeticiones de esta secuencia de pasos, a veces variandose el tipo de modelo, o repitiendose
los experimentos hasta que se obtenga un buen modelo. Por tanto, podemos ver el
proceso de identificacion como un metodo iterativo que se puede describir mediante
el diagrama de flujo mostrado en la figura 8.2. En esa figura el hecho de que el flujo
INICIO

TOMA DE DATOS

ACONDICIONAMIENTO DE
DATOS

ELEGIR ESTRUCTURA DEL


MODELO

AJUSTAR MODELO

VALIDAR MODELO

NO
VALIDO ?
SI
USAR MODELO

Figura 8.2: Diagrama de flujo del proceso de identificacion.

pueda retornar a cualquiera de las pasos intermedios, indica que puede que en cada

164

ALGUNAS PROPIEDADES

iteracion no se realicen todos los pasos. Por otra parte, aparece un paso sobre el que no
se ha comentado nada, el acondicionamiento de datos. Esta tarea consiste en manipular los datos de manera que sean apropiados para el metodo de ajuste elegido. Es algo
que es especfico para cada procedimiento. As por ejemplo, una tarea muy com
un de
acondicionamiento de datos es la eliminacion de los valores de continua de las se
nales
de entrada y salida. Esto sera tratado en mayor profundidad en el tema 9. Finalmente,
en el caso de la identificacion en linea el proceso es mas simple, ya que por ejemplo
no es posible cambiar la estructura del modelo sin descartar el resultado que se ha
obtenido hasta ese momento. Ademas, los datos se toman seg
un van llegando, pues
recordemos que en este tipo de identificacion la identificacion se hace como su propio
nombre indica en tiempo real, es decir, ((en lnea)).

8.3.

Algunas propiedades

En esta seccion, veremos algunas propiedades relacionadas con la identificacion de


sistemas. Concretamente se trataran los conceptos de excitacion persistente, convergencia e identificabilidad. Ademas, se veran las tareas de supervision y acondicionamiento
que aparecen en las figuras 8.1 y 8.2.

8.3.1.

Excitaci
on persistente

Se ha comentado en la seccion 8.2.1, que para poder identificar correctamente un


sistema la se
nal de entrada debe excitar (es decir, poner de manifiesto) todos los modos
del sistema (toda su dinamica). Formalmente, se dice que si el sistema es de orden n
se debera contar con una se
nal persistentemente excitadora de orden n.
Se puede probar que una se
nal de entrada u(k) es persistentemente excitadora de
orden n, s y solo s se cumple que
1
lm
N N

N
X
k=1

A(z 1 )u(k)

!2

>0

para todo polinomio A(z 1 ) no nulo de grado inferior a n. Usando este resultado se
pueden caracterizar las se
nales mas comunes:

Pulso: no excita persistentemente para ning


un orden n.

A LA IDENTIFICACION
DE SISTEMAS
CAPITULO 8. INTRODUCCION

165

Escalon: excita persistentemente para orden 1.


Ruido blanco: excita persistentemente para todo orden n.

Esto quiere decir que el ruido blanco sera una se


nal de entrada muy buena para identificar sistemas. En la practica, sin embargo, es muy difcil obtener una se
nal de entrada
que se comporte como un ruido blanco ideal, porque es muy difcil obtener una secuencia de valores puramente aleatorios. Es posible obtener sin embargo, secuencias de
valores seudoaleatorios, por lo que en la practica se recurre a secuencias seudoaleatorias
de escalores binarios (PRBSS: Pseudo Random Binary Step Sequence). En la figura
8.3 se muestra una de esas secuencias. Notese que los escalones no tienen por que tener
amplitud unitaria, el concepto de binario se refiere solamente a dos niveles de entrada
distintos. Por otra parte, la aleatoriedad esta en la duracion de los escalones y en el
momento de aparicion de los mismos.
6.5

voltaje

5.5

4.5

3.5

20

40

60

80

100

120

140

160

180

200

intervalos de muestreo

Figura 8.3: Ejemplo de se


nal de entrada del tipo PRBSS.

8.3.2.

Convergencia e identificabilidad

Se dice que un sistema es identificable cuando usando un metodo de identificacion


adecuado se tiene que
= 0
lm E())
N

y ademas la salida obtenida mediante el modelo estimado es posible. Es decir, para


un sistema identificable el valor del vector de parametros estimado convergera con un
n
umero de observaciones suficientes al valor real de esos parametros. No obstante, esta

166

ALGUNAS PROPIEDADES

convergencia tiene a su vez una serie de requisitos o condiciones que se pueden resumir
en:

El orden del modelo y el retardo deben ser conocidos.


Los valores de continua de la se
nal de entrada y la de salida deben ser conocidos.
Si el sistema es de orden n, la se
nal de entrada debe ser persistentemente excitadora de orden n o mayor.
Las perturbaciones sobre la salida deben ser ruidos estacionarios.
El error en el instante k debe ser incorrelado con los elementos de los que depende
la salida en el instante k (es decir, de los valores pasados de la entrada y la salida).
El valor esperado (esperanza matematica) del error en k debe ser cero, es decir
E{e(k)} = 0.
Finalmente, la convergencia tambien depende de los valores iniciales del estimador.

8.3.2.1.

Identificaci
on en bucle cerrado

Como se comento en la seccion 8.2.1, a veces resulta bastante difcil identificar en


bucle cerrado. Esto es especialmente cierto cuando el lazo de control es simple, el regulador lineal y ademas no se emplean se
nales externas (a modo de perturbaciones) para
excitar toda la dinamica del sistema. Existen una serie de condiciones para establecer
la identificabilidad de un sistema en bucle cerrado. Supongase que se parte del siguiente
modelo para identificar un sistema:
A(z 1 )y(k + d) = B(z 1 )u(k) + C(z 1 )e(k + d)
donde d es el retraso del proceso, y los grados de los polinomios A(z 1 ), B(z 1 ), C(z 1 )
son ma , mb , mc respectivamente. Supongase ademas que el sistema esta gobernado por
un regulador que toma la expresion:
u(t) =

Q(z 1 )
y(t)
P (z 1 )

donde los grados de Q y P son v y w respectivamente. Teniendo en cuenta todo esto,


se formulan las siguientes condiciones de identificabilidad en bucle cerrado.

A LA IDENTIFICACION
DE SISTEMAS
CAPITULO 8. INTRODUCCION

167

Primera condici
on de identificabilidad en bucle cerrado
Los ordenes del modelo del proceso y de las perturbaciones deben ser conocidos con
exactitud.
Segunda condici
on de identificabilidad en bucle cerrado
Si los polinomios A(z 1 ) y C(z 1 ) tienen p ceros comunes (en caso de que sean primos
entre si, p = 0) se ha de cumplir que
max(w mb , d + v ma ) p
Si esto no se cumpliese, la solucion pasa por fijar alguno de los parametros del modelo
a fin de bajar los grados ma o mb . Si fuera factible aumentar el retraso, tambien
podra usarse esto para lograr la identificabilidad en bucle cerrado. Notese que por
estos procedimientos lo que se consigue es que el proceso de identificacion converja a
un valor del vector de parametros que corresponde con el que da un menor error. No
quiere decir que el sistema real se describa mejor por ese modelo. Es decir, puede que
exista otro modelo del mismo orden mejor, pero si no se toman las medidas indicadas
no se llegara a ese modelo ni probablemente se convergera a ning
un otro.
Un caso com
un es que p = 0 y ma = mb = n, por lo que esta condicion se puede
expresar como
max(w, v + d) n
Ejemplo 8.1
Supongamos que ma = mb = n y que
u(k) =

G(z 1 )
y(k)
zB(z 1 )F (z 1 )

y que los ordenes de G(z 1 ) y F (z 1 ) son n 1 y d respectivamente. Entonces se


cumple que
v =n1
w =n+d1
por lo que la condicion de identificabilidad sera que
max(n + d 1, n 1 + d) n
Esto implica que para que el sistema sea identificable en bucle cerrado, d 1. Otra
solucion sera fijar un parametro.


168

ALGUNAS PROPIEDADES

8.3.3.

Niveles de supervisi
on y acondicionamiento

En la identificacion en lnea es habitual introducir un nivel de supervision y tratamiento de las se


nales a fin de evitar que se produzcan situaciones que desestabilicen la
identificacion, es decir, que el valor del vector de parametros identificado no converja
o converja a un valor incorrecto. Las tareas que se pueden realizar en estos niveles
incluyen:

Filtrado de datos a la entrada del identificador para evitar cambios bruscos en


los parametros estimados.
Acondicionamiento de se
nales: eliminacion de los valores de continua y escalado
de las variables.
Supervisar que la evolucion de los parametros este dentro de unos rangos determinados.
Monitorizar otros elementos del algoritmo de identificacion.
Monitorizar la introduccion de riqueza dinamica al sistema: paradas temporales
del identificador e inyeccion de perturbaciones.

Captulo 9
Identificaci
on por mnimos
cuadrados
9.1.

El m
etodo de los mnimos cuadrados

Este metodo permite la identificacion en tiempo real de modelos con el u


nico requisito de que estos sean lineales en los parametros. Esto incluye, por tanto, a modelos
lineales y no lineales que sean lineales en los parametros. El mayor interes practico reside, sin embargo, en la identificacion de los primeros, dado que son los mas utilizados
en control.
Considerese el siguiente modelo parametrico lineal monovariable1 :
y(k) + a1 y(k 1) + + an y(k n) = b1 u(k 1) + + bn u(k n)

(9.1)

Notese que este modelo es determinista en el sentido de que no considera ruidos aleatorios como en los modelos vistos en el tema 7. Es inmediato comprobar que este modelo
corresponde a la siguiente funcion de transferencia:
G(z 1 ) =

b1 z 1 + + bn z n
1 + a1 z 1 + + an z n

El modelo (9.1) se puede reescribir como:


y(k) = m(k)
1

(9.2)

Este metodo se puede aplicar sin cambios conceptuales a modelos multivariables. Sin embargo por
simplicidad nos ce
niremos al caso de modelos monovariables.

169


EL METODO
DE LOS MINIMOS CUADRADOS

170

donde el vector
m(k) =

y(k 1) y(k n) u(k 1) u(k n)

es llamado regresor y
=

a1 an b1 bn

(9.3)

T

el error de
es el vector de parametros. Dado un valor del vector de parametros ,
predicci
on para el instante k sera
= y(k) y(k) = y(k) m(k)
e(k, )
Notese que conocido el valor de los valores presentes y pasados de la salida y la entrada,
la expresion (9.2) es una ecuacion en las que las 2n incognitas son los parametros que
forman . Si el proceso a identificar correspondiese exactamente con un modelo como
(9.1) se podra determinar el valor del vector de parametros a partir de 2n medidas u
observaciones de la salida para una serie de entradas conocidas. Es decir, se formara
un sistema de 2n ecuaciones con el que se podra determinar el valor ((real)) de .
El metodo de los mnimos cuadrados parte de N pares (y(k), m(k)) donde N es
generalmente mucho mayor de 2n (este sera el conjunto de estimacion) y permite
ajustar un modelo del tipo (9.1). En el supuesto poco realista de que el proceso coincida
con un modelo como el que se intenta ajustar, se tendra un sistema de ecuaciones
sobredeterminado compatible, de manera que tendra solucion y el error de prediccion
alcanzado sera cero para todas las medidas del conjunto de estimacion. Sin embargo,
en la practica el proceso no se puede describir a la perfeccion mediante un modelo lineal
del tipo (9.1) por lo que el sistema de ecuaciones no tiene solucion en el sentido de que
no existe un valor del vector de parametros que haga que el error de prediccion sea cero
para todas las medidas del conjunto de estimacion. Es decir, el sistema de ecuaciones
es incompatible. Sin embargo si se puede encontrar un valor del vector de parametros
que haga mnimo el error de prediccion, de manera mas precisa que haga mnima la
suma de los cuadrados de los errores de prediccion del conjunto de estimacion. Esta es
precisamente la estrategia del metodo de mnimos cuadrados2 .
Las medidas obtenidas desde k = n hasta k = N se agrupan en vectores de manera
que se obtiene:
E(N, ) = Y (N) M(N)
donde los vectores E(N) e Y (N) son
E(N, ) =
Y (N) =
2

e(n, ) e(N, )

T
y(n) y(N)

T

En un contexto matematico se dira que el vector de parametros que se calcula es la pseudosoluci


on
en el sentido de los mnimos cuadrados de un sistema sobredeterminado incompatible.

POR MINIMOS CUADRADOS


CAPITULO 9. IDENTIFICACION

171

y la matriz M(N) esta formada por los regresores correspondientes, es decir

m(n)

..
M(N) =

.
m(N)
Se define el ndice de bondad de ajuste como

J() = kE(N, )k =

N
X

e2 (k, )

k=n

Este ndice lo podemos reescribir como


J() = (Y (N) M(N))T (Y (N) M(N))
El mnimo valor de J() se dara en el valor del vector de parametros que cumpla que
dJ()
=0
d
es decir,
2(M(N) Y (N))T M(N) = 0
de donde se obtiene que el valor del vector de parametros que hace mnimo el ndice
de bondad de ajuste es
= [M T (N)M(N)]1 M T (N)Y (N)

(9.4)

y ese es por tanto el valor del vector de parametros del modelo identificado.
Notese que para que el problema de identificacion tenga solucion la matriz [M T (N)M(N)]
tiene que ser invertible al igual que M(N). Sin entrar en demasiados detalles, tal condicion se verifica cuando la entrada cumple las condiciones de excitacion persistente del
sistema. Se debera acudir por tanto a se
nales de entrada parecidas al ruido blanco (ver
tema 8).

9.2.

Algoritmo recursivo para identificaci


on en linea

La expresion (9.4) implica la inversion de una matriz que puede tener unas dimensiones apreciables, tanto mas si se tiene en cuenta que para identificar correctamente

EN LINEA
ALGORITMO RECURSIVO PARA IDENTIFICACION

172

un sistema se deben tener suficientes medidas para eliminar el efecto de ruidos y perturbaciones ajenas a la dinamica del sistema. Intentar efectuar estos calculos en linea
es bastante ambicioso para el hardware de control habitual3 . Por tanto este algoritmo
se destina a la identificacion fuera de linea. En linea se emplea otro procedimiento que
se muestra a continuacion.
La estimacion para el instante k usando las medidas obtenidas desde el instante n
vendra dada por

(k)
= [M T (k)M(k)]1 M T (k)Y (k)
= P (k)M T (k)Y (k)
= P (k)(M T (k 1)Y (k 1) + mT (k)y(k))
donde
P (k) = [M T (k)M(k)]1 =

" k
X

mT (i)m(i)

i=n

(9.5)

#1

es la llamada matriz de covarianza. Se puede comprobar que


P 1 (k 1) = P 1 (k) mT (k)m(k)
Por otra parte tambien se puede obtener que
1)
M T (k 1)Y (k 1) = P 1(k 1)(k
1) mT (k)m(k)(k
1)
= P 1(k)(k
Combinando las dos ultimas expresiones con (9.5) se obtiene

(k)
=
=
=

1) P (k)mT (k)m(k)(k
1) + P (k)mT (k)y(k)
(k
1) + P (k)mT (k)(y(k) m(k)(k
1))
(k
1) + K(k)(y(k) m(k)(k
1))
(k

(9.6)

donde K(k) = P (k)mT (k). Por tanto (k)


se puede expresar en forma recursiva, es
decir en funcion del valor del estimador en el instante anterior mas un termino corrector
que consiste en el error de prediccion en el instante actual cometido por el estimador
calculado en el instante anterior multiplicado por una ganancia de adaptacion K(k).
Esta formula da lugar al llamado algoritmo de minimos cuadrados recursivos, que
consiste en
1. Dar valores iniciales a la matriz P y al vector de parametros .
3

Tengase en cuenta que el hardware industrial no se renueva tan rapidamente como el usado
en informatica personal y que ademas tampoco se incorporan las u
ltimas tecnologias con la misma
rapidez.

POR MINIMOS CUADRADOS


CAPITULO 9. IDENTIFICACION

173

2. En cada instante k
a) Leer los valores de y(k) y u(k).
b) Formar el vector regresor m(k) seg
un la expresion (9.3).
c) Calcular P (k) mediante
P (k) = P (k 1)

P (k 1)mT (k)m(k)P (k 1)
1 + m(k)P (k 1)mT (k)

d ) Calcular K(k) segun la expresion


K(k) = P (k)mT (k)
e) Calcular (k):
= (k
1) + K(k)[y(k) m(k)(k
1)]
(k)
Este algoritmo puede intepretarse graficamente como se ilustra en la figura 9.1.

PLANTA

FORMAR
REGRESOR

ALGORITMO
RECURSIVO

Z-1

Figura 9.1: Diagrama de flujo del proceso de identificacion mediante mnimos cuadrados recursivos.

9.3.

Interpretaci
on estadstica

En esta seccion se presentan las propiedades estadsticas del estimador obtenido


por el metodo de mnimos cuadrados en funcion de las caractersticas del proceso que
se trata de identificar.

174

ESTADISTICA
INTERPRETACION

Supongase que el proceso que se pretende modelar responde bien a un modelo


ARMAX o bien a un modelo ARX-LS (vease la seccion 7.4). Considerese que la variable
aleatoria v(k) corresponde a un ruido blanco. La diferencia entre estos dos tipos de
modelos es el grado del polinomio coloreador del ruido C(z 1 ) que denotaremos por
cn . En el ARMAX cn > 0 por lo que la variable aleatoria v(k) y sus valores pasados
hasta el instante k cn afectan al valor de la salida en k. En el caso del ARX LS el
grado de C(z 1 ) es cero, por lo que la salida en k viene afectada por el valor de la se
nal
de ruido en el instante k exclusivamente. Esto implica que en el caso del ARMAX la
salida depende de los valores pasados de v(k) mientras que en el caso del ARX-LS esta
dependencia es exclusivamente con el valor actual de v(k).
Un hecho a tener en cuenta es que al ser v(k) una variable aleatoria, y(k) es a su
vez una variable aleatoria al ser el ruido aditivo. Esto implica a su vez que el valor
del vector de parametros estimado tambien es una variable aleatoria que se puede
estudiar desde un punto de vista estadstico. Por responder el proceso exactamente a
uno de los dos tipos de modelos considerados existe un valor del vector de parametros
que consideraremos como verdadero. Es decir
y(k) = mT (k) + C(z 1 )v(k)
Resulta muy interesante saber si al aplicar el metodo de los mnimos cuadrados, el

vector de parametros estimados (k)


coincide con . Dado que (k)
es una variable
aleatoria estudiaremos su valor esperado, es decir su esperanza matematica. Se define
el sesgo de la estimacion como
n
o

= E (k)

es decir como la diferencia entre el valor esperado de (k)


y el valor ((verdadero)) . Se
comprueba que


= E [M T (k)M(k)]1 M T (k)V (k)
(9.7)

donde V (K) es una matriz donde la fila correspondiente al instante k esta formada por
los valores v(k), ,v(k cn ). Notese ademas que la fila de M(k) correspondiente al
instante k contiene los valores de la salida y de la entrada en los instantes k 1, ,k n
pero no los del instante k (ver expresion (9.3)).
Considerese el caso del modelo ARMAX. Claramente existe relacion entre los componentes de la matriz M(k) y V (k). En efecto, la matriz de regresores esta formada por
valores de la salida y la entrada. Los primeros dependen de los valores de la se
nal de
ruido y los segundos son deterministas, por lo que existe una correlacion entre la matriz
M(k) y V (K). Por lo tanto tambien existe esa correlacion entre [M T (k)M(k)]1 M T (k)
y V (k). Eso implica que seg
un la expresion (9.7) es distinto de cero. Por tanto no
esta garantizada la convergencia del vector de parametros estimados con el ((real)).

POR MINIMOS CUADRADOS


CAPITULO 9. IDENTIFICACION

175

La situacion es diferente con el modelo ARX-LS. En este caso los valores de M(k)
no pueden estar relacionados con V (k) (que, al ser cn = 0, solo esta formada por los
valores presentes de v(k) para cada instante k). Por tanto, el estimador por mnimos
cuadrados es insesgado, es decir = 0 y por tanto el valor esperado del estimador
coincide con el valor real del vector de parametros, es decir
n
o

E (k) =
Por otra parte, el hecho que de que el proceso responda a uno u otro tipo de
modelo tiene una interpretacion fsica inmediata. En el caso del proceso ARMAX el
ruido presenta una cierta dinamica , mientras que en el caso del ARX-LS el ruido no
presenta dinamica alguna y responde u
nicamente a un ruido proveniente del sensor
de medida. Es en este u
ltimo caso cuando el metodo de mnimos cuadrados produce
estimaciones consistentes.
Otra propiedad que resulta interesante conocer es la varianza del estimador. Claramente interesa que esta varianza sea peque
na o por lo menos que disminuya conforme
se acumulan medidas disponibles para usarlas en la estimacion. De esa manera, el vector de parametros estimados estara con seguridad cerca del vector real. La varianza del
estimador se puede calcular como
n
o

)T ((k)
)
varianza((k))
= E ((k)
= 2 P (k)

donde = E{v(i)v(j)} para i = j. Notese que para que la varianza sea peque
na
interesa que P (k) sea ((peque
na)) o que al menos decrezca a medida de que k aumenta.
Una medida del tama
no de P (k) es su traza, por lo que se usa como una medida de la
exactitud de la estimacion, de manera que se busca que la traza vaya decreciendo.
Esta interpretacion estadistica del tama
no de P (k) tambien proporciona una regla
para dar un valor inicial a la matriz P (k). En efecto, en general no se tendra demasiada
confianza en que el valor inicial del vector de parametros estimados, por lo que se
escogera una matriz P (0) ((grande)) para reflejar esa desconfianza, por ejemplo P (0) =
pI donde p es un n
umero muy alto (por ejemplo 10000). Este n
umero sera mas peque
no

si se sabe que el valor inicial del vector de parametros esta cerca de .


Por otra parte, es evidente que a medida que el numero de observaciones N crece
la suma
N
X
mT (k)m(k)
k=n

MINIMOS CUADRADOS PONDERADOS

176

crece. Recuerdese que, segun se definio en la seccion 9.2


P (k) =

k
X

mT (i)m(i)

i=n

!1

lo que implica que a medida que N crece P decrece. Se puede demostrar que si el
tama
no del regresor no cambia demasiado P decrece como N1 . Esto quiere decir que la
incertidumbre en la estimacion decrece, es decir, que cada vez se obtiene un estimador
mas cercano al valor real. Ademas la ganacia de adaptacion K(k) tambien decrece
(vease su definicion en la seccion 9.2) lo cual es congruente con el hecho de que cuanto
mas exacta es la estimacion menos correccion de su valor se necesita. Esto es bueno
si la dinamica del proceso no cambia con el tiempo, pero si esto no es as habra que
modificar este esquema.

9.4.

Mnimos cuadrados ponderados

A veces es conveniente dar mas peso a algunas medidas que a otras en la estimacion. Por ejemplo si se identifica un proceso cuya dinamica cambia con el tiempo
interesara dar mas peso a las medidas mas recientes, pues estas seran las que reflejen la
dinamica mas actualizada. Para conseguir esto hay que modificar el ndice de bondad
de ajuste, de manera que se use
J() = E(N, )T W (N)E(N, )k2 =

N
X

w(k)e2 (k, )

k=n

siendo W (N) la matriz diagonal de pesos

w(n)

..
W (N) =
.

La solucion del problema de ajuste es en este caso

w(N)

= [M T (N)W (N)M(N)]1 M T (N)W (N)Y (N)

(9.8)

El esquema de ponderacion mas habitual es el llamado olvido exponencial . En este


caso
w(k) = N K

POR MINIMOS CUADRADOS


CAPITULO 9. IDENTIFICACION

177

, donde (0, 1) es el llamado factor de olvido. Es facil entender por que se le llama
olvido exponencial: el peso dado a la medida disminuye exponencialmente cuanto mas
antigua sea. De esta manera las medidas muy antiguas se olvidan, pues su peso es tan
peque
no que es como si no se contribuyesen a la estimacion. Habitualmente se usa
[0,98, 1). Por ejemplo, si = 0,99 el estimador tendra una ((memoria)) de unas 100
muestras. En aquellos casos que la dinamica del proceso cambie muy rapidamente se
puede optar por valores mas bajos (por ejemplo, = 0,95).
En el caso de la tecnica de olvido la formulacion recursiva puede aplicarse modificando las expresiones para el calculo de P (k) de manera que:
P (k) =

P (k 1) P (k 1)mT (k)m(k)P (k 1)

+ m(k)P (k 1)mT (k)

Puede observarse que, dado que K(k) = P (k)mT (k), la ganancia de adaptacion K(k)
depende de y a menor mayor ganancia de adaptacion. Esto quiere decir que a menor
mejor se adaptara la identificacion a una dinamica cambiante, ya que se considerara
en la optimizacion solo la informacion mas reciente.
Sin embargo si en el sistema o en las medidas hay mucho ruido, es conveniente
que la dinamica se identifique sobre un conjunto amplio de medidas ya que si no se
identificara el ruido mas que la dinamica del proceso. Por tanto en estos casos conviene
que no sea muy peque
no. Por tanto hay que llegar a un compromiso entre la capacidad
de seguir una dinamica cambiante y el rechazo del ruido en la identificacion.

9.5.

Mnimos cuadrados extendidos y generalizados

Seg
un se explico en la seccion 9.3 el estimador obtenido mediante mnimos cuadrados es insesgado si el proceso responde a un modelo ARX-LS, pero no si responde a
un modelo ARMAX. En la practica, si la relacion se
nal-ruido es baja el proceso ha de
modelarse con un modelo de perturbaciones mas complejo que el del ARX-LS ya que
la se
nal de ruido y su influencia sobre la dinamica son importantes. En estos casos se
debe recurrir a un modelo ARMAX.
El metodo de los mnimos cuadrados extendidos trata de resolver el problema del
sesgo en la estimacion de modelos ARMAX. La solucion es incluir los coeficientes del
polinomio C(z 1 ) en el vector de parametros del estimador, es decir
=

a1 an b1 bn c1 cn

T

DE LOS VALORES DE CONTINUA


ESTIMACION

178

Sin embargo, los valores pasados de la se


nal de ruido v(k) no son medibles, por lo que
no se pueden incluir en el regresor. Lo que se hace es aproximarlos por los errores de
prediccion, es decir
1)
e(k) = y(k) m(k)(k
Si el proceso coincidiera exactamente con el modelo para algun valor del vector de
parametros, entonces si los parametros evolucionasen en la direccion correcta la aproximacion de los valores de los ruidos por los errores cada vez sera mas correcta y
eventualmente se igualaran, es decir v(k) = e(k). El regresor se formara entonces
como,


m(k) = y(k 1) y(k n) u(k 1) u(k n) e(k 1) e(k n)

El resto del procedimiento es exactamente igual, tanto en las formulaciones fuera de linea como en linea. Con este metodo se consiguen estimaciones insesgadas y consistentes
para procesos que respondan como un modelo ARMAX. Los problemas son un aumento de la carga de calculo y una menor velocidad de convergencia en los parametros ci
debido a que la se
nal de ruido no es la mas preponderante.
Finalmente, existe otra variante de los mnimos cuadrados que son los mnimos
cuadrados generalizados. Sin entrar en demasiados detalles, esta formulacion se usa
cuando se tiene alg
un conocimiento del valor real del polinomio C(z 1 ) o de la matriz
P (matriz de covarianza). En este caso si la matriz N definida como


N = E vv T

es distinta de la matriz identidad se obtienen mejores resultados si el criterio que se


utiliza es
X
J() =
eT (k, )N 1 e(k, )

9.6.

Estimaci
on de los valores de continua

Una de las condiciones necesarias para asegurar la convergencia que se mencionaron


en el tema 8 era que es necesario conocer los valores de continua de la se
nal y eliminarlos
de las medidas usadas en la identificacion. Es decir para identificar un proceso hay que
utilizar se
nales sin componente continua:
u(k) = U(k) U

y(k) = Y (k) Y

donde U(k) e Y (k) son los valores reales de la salida y la entrada y U e Y son
los valores de continua de ambas se
nales. Para estimar dichos valores existen diversas
opciones.

POR MINIMOS CUADRADOS


CAPITULO 9. IDENTIFICACION

9.6.1.

179

Utilizaci
on de los incrementos de las variables

En este caso se toman los incrementos de las se


nales, es decir
uID (k) = u(k) u(k 1) = (U(k) U ) (U(k 1) U ) = U(k) U(k 1)
donde la se
nal uID (k) es la se
nal de entrada que se utiliza en la identificacion. Como
se puede observar, al usarse el incremento, se resta de manera implicita la componente
continua. Lo mismo se hace con la salida
yID (k) = y(k) y(k 1) = (Y (k) Y ) (Y (k 1) Y ) = Y (k) Y (k 1)
Evidentemente, lo que se obtiene al identificar es un modelo incremental, es decir
formulado en incrementos de y(k) y u(k) y este incremento se tendra que deshacer si
lo que se quiere son los valores no incrementales de dichas se
nales.

9.6.2.

C
alculo de los valores medios

La idea es aproximar los valores de continua por los valores medios de las se
nales.
En el caso de la formulacion fuera de linea estos valores medios se calculan mediante
las expresiones tradicionales, es decir
U

N
1 X
=
u(i)
N i=1

N
1 X
=
y(i)
N i=1

para la identificacion en linea, es decir mediante algoritmos recursivos, se emplean las


siguientes expresiones

9.6.3.

U (k) = U (k 1) +

1
(U(k) U (k 1))
k

Y (k) = Y (k 1) +

1
(Y (k) Y (k 1))
k

Estimaci
on de una constante

La idea en este caso es que el modelo que se pretende identificar puede reescribirse
como
Y (k) Y = a1 (Y (k 1) Y ) a2 (Y (k 1) Y ) an (Y (k n) Y )
+b1 (U(k d 1) U ) + + bn (U(k d n) U )

180

IMPORTANCIA DEL ORDEN DEL MODELO

lo cual a su vez se puede poner como


Y (k) = a1 Y (k 1) an Y (k n)
+b1 U(k d 1) + + bn U(k d n) + K
siendo K una constante que vale
K = (1 + a1 + + an )Y (b1 + + bn )U

(9.9)

Para estimar la componente continua se modifica el algoritmo de manera que en el


vector de parametros se incluye K

T
= a1 an b1 bn K
y en el regresor se incluye un 1


m(k) = y(k 1) y(k n) u(k 1) u(k n) 1

Una vez estimado el valor de K, lo que se hace es dar un valor arbitrario a Y , por
ejemplo igual al valor de la referencia o consigna. Con ese valor se calcula U mediante
la expresion (9.9).

9.7.

Importancia del orden del modelo

El orden del sistema a identificar es algo que debe ser conocido para asegurar la
convergencia e identificabilidad (ver tema 8). En la practica esto no es sencillo, y se
debe recurrir a probar con varios modelos de ordenes y estructuras distintas a ver cual
resulta mejor. Esto quiere decir que se pueden dar situaciones de mala estimacion del
orden del modelo por defecto (incurriendose en lo que se llama infraparametrizacion)
o por exceso (sobreparametrizaci
on).
Veamos que ocurre cuando se intenta aproximar un sistema por un modelo de
orden inferior. Si esto sucede se llega a una situacion en la que el modelo solo puede
aproximar al sistema real en una banda de frecuencia relativamente estrecha. Si durante
el transcurso del proceso de identificacion la se
nal de entrada cambia su contenido
frecuencial, el modelo estimado (es decir su vector de parametros) evoluciona hasta
aproximar al sistema en torno a la nueva banda de frecuencias. Todo esto implica que
se obtendra un modelo distinto dependiendo de la se
nal de entrada. Este problema se
ilustra en las figuras 9.2 y 9.3. En ambas se muestra el diagrama de bode de un sistema
de segundo orden sobre el que ha sido identificado un modelo de primer orden mediante
dos entradas senoidales de distinta frecuencia. Puede observarse en ambas figuras que

POR MINIMOS CUADRADOS


CAPITULO 9. IDENTIFICACION

181

20

amplitud dB

10
0
10
20
30
40
1
10

10

10

desfase (grados)

50
100
150
200
250
1
10

10
frecuencia rad/s

10

Figura 9.2: Diagrama de Bode de un sistema de segundo orden (linea continua) y de un modelo de
primer orden estimado para una entrada senoidal de frecuencia = 0,2 rad s1 .

20

amplitud dB

10
0
10
20
30
40
1
10

10

10

desfase (grados)

50
100
150
200
250
1
10

10
frecuencia rad/s

10

Figura 9.3: Misma situacion que en la figura 9.2 pero con una se
nal de entrada senoidal de frecuencia
= 1 rad s1 .

182

IMPORTANCIA DEL ORDEN DEL MODELO

el modelo obtenido no es sino una aproximacion del sistema original en el entorno de


la frecuencia de la entrada. Esto ocasiona por tanto que ambos modelos sean distintos.

A la vista de lo que ocurre cuando existe infraparametrizacion, parecera logico que


resulte mejor sobreestimar el orden del modelo para evitar el continuo cambio de los
parametros del modelo estimado. Sin embargo esto no es una buena idea, pues puede
ocurrir que haya parametros del modelo estimado que puedan tomar cualquier valor sin
que cambie la relacion que liga las entradas del modelo con las salidas. Esto se manifiesta
en que algunos parametros experimentan una deriva tomando valores arbitrarios muy
altos o muy bajos. Esto ocasionara problemas numericos. Esta situacion se ilustra
en la figura 9.4. En ella se muestra la evolucion de los parametros de un modelo de
cuarto orden identificado sobre el sistema de segundo orden utilizado en las figuras 9.2
y 9.3. Puede observarse que algunos de los ocho parametros identificados convergen y
permanecen estables a lo largo del proceso de identificacion. Sin embargo otros no solo
no convergen sino que derivan hacia valores muy altos o muy bajos.
1.5
1

uey

0.5
0
0.5
1
1.5

10

15

20

25

30

35

40

10

15

20
tiempo (s)

25

30

35

40

1.5

ai, bi estimados

1
0.5
0

0.5
1

1.5
2

Figura 9.4: Evolucion de los parametros identificados en un caso de sobreparametrizaci


on.

Matematicamente el exceso de parametros conduce a una situacion en la que mas


de una combinacion de los valores del vector de parametros producen la misma relacion
entre la entrada y la salida. Por tanto la sobreparametrizacion se manifiesta tambien si
se traza la grafica de un parametro del modelo frente a otros por que aparecen relaciones
lineales. Esta situacion se ilustra en la figura 9.5. En ella se muestran dos ejemplos en
los que se presentan los valores de un parametro en funcion del otro a medida que
el proceso de identificacion avanza. Puede observarse que existe un marcado patron
lineal, que indica una dependencia lineal entre ambos parametros.

POR MINIMOS CUADRADOS


CAPITULO 9. IDENTIFICACION

183

0.025
k=30

0.02
k=100
b3

0.015
0.01
0.005
0
0.005
2

1.8
k=180

1.6

1.4

1.2

0.8

0.8

0.6

1.5

0.5

k=180
k=100

0
k=30
0.5
2

1.8

1.6

1.4

1.2

0.6

Figura 9.5: Evolucion de unos parametros frente a otros para el modelo sobreparametrizado.

9.8.

Identificaci
on de sistemas con retardo o no lineales

El metodo de los mnimos cuadrados puede aplicarse a procesos con retardo, siempre
que se tengan en cuenta algunas cuestiones. El modelo determinista de un sistema con
retardo puro de d periodos de muestreo se puede poner como
A(z 1 )y(k) = B(z 1 )u(k d 1)
Eso quiere decir que el regresor en el instante k debe contener valores pasados de la
entrada desde k d 1 a k d n donde n es el grado del polinomio B(z 1 ). Por
tanto el regresor queda


m(k) = y(k 1) y(k n) u(k d 1) u(k d n)
Con esta modificacion cualquiera de los algoritmos de mnimos cuadrados vistos anteriormente se puede aplicar a procesos con retardo. El problema estriba en que se ha
de conocer exactamente el retardo (vease tema 8). El metodo usual para conocer este
dato es provocar un cambio en la entrada y observar cuando se manifiesta dicho cambio en la salida (ha de tenerse en cuenta que en todo sistema muestreado los cambios
en la entrada se manifestaran como mucho en el siguiente periodo de muestreo). Este
sencillo esquema se puede complicar por ejemplo si el retardo es variable. Esto es mas
com
un de lo que se cree, pues el retardo as como el resto de parametros de un sistema
suele depender del punto de funcionamiento (por ejemplo, los retardos de transporte
ocasionados por tuberias dependen del caudal de material que se transporta). El problema es que, aunque los metodos de identificacion propuestos puedan seguir cambios

184

CONSIDERACIONES FINALES

en los parametros del modelo (se adaptan a esos cambios) no recogen la posibilidad
de un retardo variable (existen remedios a este problema, pero no se trataran aqu).
Otro problema que puede suceder es que el retardo no sea multiplo exacto del tiempo
de muestreo. Aunque existen formas para describir retardos no enteros (por ejemplo,
el uso de una expansion de Pade) es mas sencillo y menos problematico emplear si es
posible otro tiempo de muestreo para hacer que el retardo sea entero.
Finalmente se comento al principio del tema que el metodo de mnimos cuadrados
tambien permite la identificacion de sistemas no lineales con la limitacion de que el
modelo a identificar sea lineal en los parametros. De este modo, si el sistema se pretende
identificar con un modelo que por ejemplo podra ser
y(k) + ay(k 1) = bu2 (k 1)
el regresor y el vector de parametros seran
m(k) =
respectivamente.

9.9.

y(k 1) u2 (k 1)

(k) =

a b

T

Consideraciones finales

En esta seccion se enunciaran algunas cuestiones practicas a tener en cuenta cuando


se implementa alguno de los algoritmos presentados en este tema. En primer lugar si
no se emplea la tecnica de factor de olvido, la ganancia de adaptacion K(k) decrece
hasta hacerse casi cero, por lo que cuando eso ocurre ya no se pueden seguir cambios
posteriores de la dinamica. Por tanto para identificar sistemas cuya dinamica vara
lentamente se ha de emplear mnimos cuadrados ponderados. Por otra parte, existen
situaciones en las que la matriz de covarianzas P puede crecer demasiado, por lo que
el identificador se hara muy sensible a cualquier peque
no cambio de la dinamica o al
ruido. Esto ocurre por ejemplo cuando el punto de funcionamiento no vara. Lo que se
puede hacer en este caso es utilizar un factor de olvido variable, de manera que si la
traza de P crece demasiado se toma = 1. Si la traza de P baja mucho se va bajando
, pero sin sobrepasar un cierto lmite que evita que el proceso de identificacion se haga
demasiado sensible al ruido.
Otro aspecto es la eleccion del valor inicial de P . Se ha comentado que en el caso de
que no se tenga mucha confianza en el valor del vector de parametros inicial, se propone
elegir P como una matriz diagonal pI siendo p un n
umero arbitrariamente alto. Por

POR MINIMOS CUADRADOS


CAPITULO 9. IDENTIFICACION

185

otra parte si antes de comenzar la identificacion ya se dispone de 2n observaciones,


donde 2n es el n
umero de parametros a estimar, es posible tomar como valor inicial
1
P (0) = M T (2n)M(2n)
y como valor inicial del vector de parametros se puede usar = P (0)M(2n)Y (2n).

186

CONSIDERACIONES FINALES

Captulo 10
Control de sistemas con grandes
retrasos
10.1.

Sistemas con retraso

Los tiempos muertos o retrasos puros estan presentes en muchos sistemas dinamicos
y especialmente en la industria de procesos. Los retrasos pueden deberse al tiempo que
tarda en circular un fluido o material de un punto a otro (retraso ((distancia-velocidad)),
o deberse por ejemplo al tiempo de mezcla imperfecta de un equipo tipo tanque agitado
o quizas al tiempo de medida de los sensores que miden las variables a controlar. En
la figura 10.1 se muestra un ejemplo tpico. La variable a controlar en este caso es
la temperatura a la salida de un intercambiador de calor al que se suministra calor
controlado mediante la apertura de la valvula de entrada de un quemador de gas.
El retardo viene provocado en este caso por el hecho de que el termopar de medida
esta situado a una distancia apreciable de la salida del intercambiador (se supone que
la tubera no tiene perdidas, por lo que la temperatura medida coincide con la de la
salida). Intuitivamente se ve que el retraso en este caso sera
distancia al sensor
.
retraso =
velocidad de transporte del fluido

De una manera un poco mas formal, el retraso en un sistema dinamico se puede


definir de la siguiente manera:
Definici
on 10.1 El retardo de un sistema din
amico se define como el tiempo que
187

188

SISTEMAS CON RETRASO

Figura 10.1: Ejemplo de sistema con retraso.

transcurre entre el momento en el que se produce un cambio en una variable de entrada


y el momento en el que se observa una variaci
on en la salida imputable a la variacion
en la entrada.

La presencia de retrasos en un sistema dinamico o proceso incrementa notablemente la


dificultad de obtener un buen control. El motivo de esto es, como se vera mas adelante,
que el retraso introduce una gran cantidad de retardo de fase en el sistema, incluso
a bajas frecuencia. La postura mas sencilla ante este problema es la de ignorar los
efectos del retraso e intentar encontrar el mejor control posible con un lazo sencillo
de realimentacion. Esta es la postura que se adopta en cursos basicos de control. Esta
estrategia puede funcionar razonablemente bien cuando el retraso es peque
no en comparacion con la dinamica del sistema. Sin embargo, cuando los retrasos son apreciables
o incluso dominantes, esta estrategia difcilmente llevara a un comportamiento aceptable. La solucion es la de emplear estructuras de control avanzadas como las que se
presentan en este captulo. Estas estructuras deben tener un caracter eminentemente
predictivo o anticipativo para poder contrarrestar el retardo puro. La bondad de estos
metodos predictivos depende en gran medida de la exactitud del modelo del sistema
que se utilice. Los errores de modelado, especialmente los cometidos en la estimacion
del retraso afectaran a la calidad del control. Dado que estas estructuras son mas complejas, se aconseja su uso cuando la relacion entre el retraso y la dinamica mas lenta
del sistema sea superior a 2.

CAPITULO 10. CONTROL DE SISTEMAS CON GRANDES RETRASOS

189

Figura 10.2: Sistema de control realimentado para un proceso con retraso tm .

10.1.1.

Representaci
on matem
atica del retraso

Comenzaremos por indicar cual es la representacion matematica que tiene un determinado tiempo muerto tm en el dominio s, es decir en tiempo continuo1 . Supongase
que una determinada funcion gp (t) es igual a otra g(t) pero retrasada un tiempo tm .
Es decir, gp (t) = g(t tm ). Gp (s), es decir la transformada de Laplace de gp (t) se
calculara como:
Z
Gp (s) = g(t tm )est dt
0

Haciendo un cambio de variable t tm = t se tiene que:


Gp (s) =

s(t +tm )

g(t)e

dt = estm

g(t )est dt

es decir
Gp (s) = estm G(S).

(10.1)

Por tanto, el retraso tm se representa por un termino estm que multiplica a la transformada de Laplace de gp (t). La figura 10.2 muestra la configuracion de un lazo de control
realimentado para un proceso con retraso tm y cuya funcion de transferencia excluido
el retraso es G(s).
Lo anterior se refiere a tiempo continuo. Para sistemas descritos en tiempo discreto,
el retraso se mide en periodos de muestreo, es decir un determinado sistema tendra un
retraso de d periodos de muestreo2 . En este caso el retraso se representa por un termino
de la forma z d , de manera que la funcion de transferencia se representara por
Gp (z 1 ) = z d G(z 1 ).
1

Todas las estructuras presentadas en este captulo estan inicialmente formuladas para sistemas en
tiempo continuo, pero son facilmente extensibles al caso discreto e implementables en un computador.
En el captulo se indicaran las diferencias entre ambos casos.
2
En caso de que el n
umero de que el retraso sea un n
umero no m
ultiplo del periodo de muestreo
se recomienda cambiar dicho periodo de muestreo para que el retraso sea o bien un m
ultiplo exacto o
bien la parte fraccionaria sea muy peque
na y se pueda despreciar.

190

SISTEMAS CON RETRASO


t s

Diagrama de Bode para e

0
0.5
1
4

x 10

tm=1

0.5
To: Y(1)

Phase (deg); Magnitude (dB)

0.5

tm=2

1
tm=3

1.5
2 1
10

10

10

10

Frequency (rad/sec)

Figura 10.3: Diagrama de Bode para distintos valores de un retraso puro etm s .

10.1.2.

Problem
atica del control de sistemas con retraso

Como se ha comentado anteriormente, la presencia de un gran retraso en un sistema


hace difcil su control. En esta seccion justificaremos este problema. Se comenzara analizando el efecto de sobre la magnitud y fase del sistema. Para un retraso tm , el termino
estm que multiplica a G(s) en la expresion (10.1) es un n
umero complejo igual a etm j
cuyo modulo es siempre 1 independientemente del valor de la frecuencia y cuya fase
sera tm . Es decir, siempre se introducira un desfase adicional en el sistema, desfase
que sera mayor a mayor frecuencia . El retraso sin embargo tiene ganancia 1 y por
tanto no produce amplificacion o atenuacion alguna en la salida del sistema (lo que por
otra parte se ve intuitivamente ya que el retraso no modifica los valores de la salida
sino su aparicion temporal). En la figura 10.3 se puede ver el diagrama de Bode para
distintos valores de un retraso puro. Puede apreciarse el gran retardo de fase introducido en altas frecuencias. Al introducirse retardo de fase, es evidente que, para un
determinado sistema con retraso, el margen de fase sera menor que para el mismo sistema sin retraso. Esto puede llevar incluso a la perdida de estabilidad en bucle cerrado
del sistema.
Para ilustrar mejor los efectos del retraso sobre un sistema considerese la funcion

CAPITULO 10. CONTROL DE SISTEMAS CON GRANDES RETRASOS

191

Diagramas de Bode para distintos valores de tm


20

10
0
t =0
m

90

t =0.01
m

To: Y(1)

Phase (deg); Magnitude (dB)

10

t =0.1
m

180
tm=1

270 2
10

10

10

10

Frequency (rad/sec)

Figura 10.4: Diagrama de Bode para distintos valores de un retraso puro tm s para el sistema
10
.
C(s)G(s)etm s con C(s) = 1 y G(s) = 1+s
10
de transferencia G(s) = 1+s
y un controlador C(s) = K, donde inicialmente K = 1.
En la figura 10.4 se muestra el diagrama de Bode para este sistema para distintos
retrasos. Puede observarse que conforme aumenta el retraso aumenta el desfase y de
hecho disminuye el margen de fase hasta hacerse negativo. En este u
ltimo caso, el
sistema sera inestable en bucle cerrado para ese controlador C(s).

De la figura 10.4 puede as mismo deducirse que disminuyendo K, se conseguira que


la grafica de magnitud del diagrama de Bode baje, de manera que el corte con cero
decibelios se produzca en una frecuencia menor, por lo que el desfase sera menor y
eventualmente el margen de fase sera positivo. Esta situacion puede observarse en la
figura 10.5 donde para K = 0,2 se observa un margen de fase positivo para todos los
valores de tm considerados.
La observacion anterior se puede generalizar de manera que cuando el tiempo muerto
sea elevado en relacion a la dinamica del sistema, se obtendra un mejor control desintonizando el controlador. Esto se puede conseguir por ejemplo bajando la ganancia de
realimentacion o en el caso de un controlador con accion integral usando un tiempo
integral alto. El control mejorara en cuanto a estabilidad de bucle cerrado, pero a costa
de obtener una respuesta muy lenta y una escasa capacidad para rechazar perturba-

192

SISTEMAS CON RETRASO

Diagramas de Bode para distintos valores de tm


10
5

5
10
15
0
tm=0

90
To: Y(1)

Phase (deg); Magnitude (dB)

t =0.1

tm=1

tm=0.01

180

270 1
10

10

10

Frequency (rad/sec)

Figura 10.5: Diagrama de Bode para distintos valores de tm s para el sistema de la figura 10.4 con
C(s) = 0,2.

CAPITULO 10. CONTROL DE SISTEMAS CON GRANDES RETRASOS

193

Figura 10.6: Sistema de control realimentado para un proceso con retraso donde el sensor se ha
dispuesto antes del retardo.

ciones. En cuanto a la accion derivativa de los controladores PID, no afecta de manera


significativamente favorable.
Finalmente se concluye este breve analisis sobre los efectos de los retrasos haciendo
notar en el siguiente comentario que el retraso no puede ser evitado de ninguna manera.

Comentario 10.1 Dado un sistema con un retraso tm , los cambios en la variable


manipulada no se manifestaran en la variable controlada hasta ese tiempo tm . Esta
situacion no puede alterarse con estrategia de control alguna. Es decir el retraso que
presente un sistema no puede ser eliminado del sistema en bucle cerrado. Lo que si se
puede conseguir mediante una estrategia de control avanzada es mejorar la respuesta
del sistema tras el retraso.

10.2.

El Predictor de Smith

El Predictor de Smith es el mas popular de los algoritmos de control para compensacion de retardos. Aunque desarrollado para sistemas continuos en la decada de 1950,
su implementacion con circuitos analogicos es muy complicada y su para su aplicacion
es mas apropiado el control por computador.
La idea fundamental de la que se parte es la de cambiar la disposicion del sensor que
mide la variable controlada, situandolo antes del retraso puro (vease la figura 10.6. De
esta manera se esta controlando el sistema sin retraso, es decir, se ha sacado el retraso
del bucle de control. La funcion de transferencia de bucle cerrado sera por tanto:
GBC (s) =

C(s)G(s) tm s
e
1 + C(s)G(s)

(10.2)

Es decir la salida del sistema en bucle cerrado sera la salida del sistema sin retraso en
bucle cerrado retrasada un tiempo tm .

194

EL PREDICTOR DE SMITH

Figura 10.7: Sistema de control en donde se realimenta la prediccion de la salida mediante un modelo
en bucle abierto.

Comentario 10.2 En el caso de poder disponer el sensor antes del retraso, al sacar
el retraso del sistema, se disminuye de manera dr
astica el retraso de fase, aumentando
el margen de fase, permitiendo una sintonizaci
on m
as apropiada del controlador y
obteniendose por tanto una mejor respuesta y rechazo de perturbaciones. Esto sera,
por tanto, la solucion ideal al problema de control de sistemas con retraso.
Desgraciadamente en muchos casos no sera posible colocar el sensor antes del retraso. Por ejemplo cuando el retraso este asociado al propio sensor (caso de un cromatografo). Tambien cuando el proceso sea de parametros distribuidos de manera que
la variable y(t + tm ) no sea posible medirla y haya de ser estimada mediante un algoritmo que tiene un tiempo de ejecucion tm .
Cuando la salida sin retraso, es decir y(t+tm )3 , no se puede medir, se puede recurrir
a estimar su valor, o de manera mas precisa a predecir su valor en t + tm . Para ello se
puede usar un modelo suficientemente exacto de G(s) que denotaremos por Gm (s). Este
es por tanto un modelo del proceso sin retraso, que podemos llamar ((modelo rapido))
del proceso. La prediccion de y(t + tm ) (denotada a veces como y(t + tm |t)) puede ser
usada en un lazo de control como se ilustra en la figura 10.7. En esta estructura en
lugar de realimentar la salida y(t) del proceso, se realimenta la prediccion de y(t + tm )
efectuada en tiempo t mediante el modelo Gm (s). Los valores de la se
nal de control
calculados mediante C(s) se aplican directamente al proceso. Esta estructura tendra
como funcion de transferencia de bucle cerrado la expresion:
GBC (s) =

C(s)G(s)
etm s
1 + C(s)Gm (s)

(10.3)

En el caso de que el modelo del proceso sin retardo fuera perfecto, es decir Gm (s) =
G(s), claramente la funcion de transferencia (10.3) es entonces igual a la de (10.2).
3

Notese que en tiempo t + tm lo que hay en la salida del sistema es lo que haba en tiempo t a la
salida de G(s) antes del retraso, es decir y(t + tm ) es la salida sin retraso.

CAPITULO 10. CONTROL DE SISTEMAS CON GRANDES RETRASOS

195

Figura 10.8: Estructura del Predictor de Smith.

Por tanto si Gm (s) = G(s) este esquema funciona como si se pudiese sacar el retraso
cambiando la posicion del sensor. Esta situacion no se dara en la realidad, por que
siempre habra errores de modelado.
Notese que la estructura de control de la figura 10.7 es esencialmente una estructura
de control en bucle abierto, por que no se esta haciendo uso del valor de la variable
controlada y(t). Por tanto no sera capaz de hacer frente a perturbaciones o errores de
modelado. No se esta aprovechando el valor de y(t) para, por ejemplo, determinar los
errores de prediccion cometidos al usar el ((modelo rapido)). Precisamente este uso es
el que se le da en el Predictor de Smith.
La estructura del Predictor de Smith se muestra en la figura 10.8. Difiere de la
estructura de la figura 10.7 en que en este caso si se usa la variable controlada, es decir
es una estructura en bucle cerrado. Lo que se hace es que se compara la salida y(t)
con la salida del ((modelo rapido)) retrasada un tiempo tm (donde tm es la estimacion
del valor del retraso tm ), obteniendose por tanto una estimacion de y(t) (que se puede
denotar por y(t|t)). La comparacion permite obtener una se
nal de error de prediccion
e(t) = y(t) y(t|t) que se suma a la prediccion de y(t + tm ), de manera que los que se
realimenta es y(t + tm |t) + e(t).
Ademas del ((modelo rapido)) Gm (s), en el Predictor de Smith se tiene el ((modelo

de planta)) cuya funcion de transferencia es Gm (s)etm s . La funcion de transferencia

de bucle cerrado cuando el ((modelo de planta)) es perfecto, es decir Gm (s)etm s =


G(s)etm s coincide con la de la ecuacion (10.2). Por tanto esta funcion de transferencia
coincide con la de un proceso sin retraso, seguido de un retraso despues del lazo. Esto
implica que la sintona del controlador C(s) se realiza como si realmente no existiera el
retraso, ya que al utilizar el Predictor de Smith se supone que el retraso sale del bucle
de control.
Ejemplo 10.1

196

EL PREDICTOR DE SMITH
60

Phase (deg); Magnitude (dB)

40
20
0
20
0

90

180

270 3
10

10

10

10

Frequency (rad/sec)

Figura 10.9: Bode de C(s)G(s) para el ejemplo.

En este ejemplo se ilustrara el control de sistemas con retraso y el uso del Predictor de
Smith. Considerese el siguiente sistema:
G(s) =

1
e20s
1 + 10s

En primer lugar se considera un lazo de realimentacion simple, en este caso con un PI,
dise
nado de manera que cancele el polo del sistema y para que la constante de tiempo
del sistema en bucle cerrado sin retraso sea la mitad del original. El PI resulta ser:
C(s) =

1 1 + 10s
5
s

La figura 10.9 muestra el diagrama de Bode del conjunto C(s)G(s). Claramente el


margen de fase es negativo, por lo que este controlador inducira la inestabilidad del
sistema en bucle cerrado.
La solucion habitual pasa por desintonizar el controlador. En este caso se opta por
rebajar la ganancia del controlador de manera que sea cuatro veces menor. En la figura
10.10 se observa el diagrama de Bode en este caso. Puede observarse que ahora el
margen de fase es positivo y por tanto el sistema en bucle cerrado sera inestable.
Como es logico la respuesta en bucle cerrado no sera la esperada, como se ilustra en
la figura 10.11. Puede observarse que la respuesta es muy oscilatoria, prueba del escaso
margen de fase.

CAPITULO 10. CONTROL DE SISTEMAS CON GRANDES RETRASOS

197

40

Phase (deg); Magnitude (dB)

20
0
20
40
0

90

180

270 3
10

10

10

10

Frequency (rad/sec)

Figura 10.10: Bode de C(s)G(s) para el ejemplo, desintonizando el controlador de manera que la
ganancia sea cuatro veces menor.

1.5

0.5

0
0

50

100

150

200

250

300

350

400

Figura 10.11: Respuesta del sistema en bucle cerrado con el controlador desintonizado de manera que
la ganancia sea cuatro veces menor.

198

EL PREDICTOR DE SMITH
1.5

0.5

0
0

50

100

150

200

250

300

350

400

Figura 10.12: Respuesta del sistema en bucle cerrado con el predictor de smith (trazo solido) comparada con la del lazo simple (trazo discontinuo).

La figura 10.12 muestra la evolucion de la salida cuando se usa la estructura anterior


comparada con la que se da cuando se usa el Predictor de Smith. Puede verse que en
ambos casos la salida comienza a cambiar tras el tiempo muerto, es decir, como ya se ha
mencionado ninguna estrategia es capaz de eliminar el retraso. Sin embargo, como se
muestra en la figura, la respuesta tras el tiempo muerto si se puede mejorar. El uso de
Predictor de Smith permite alcanzar los objetivos de control y obtener una respuesta
mucho mejor que en el caso del control realimentado simple.

10.2.1.

Efecto de los errores de modelado en el Predictor de


Smith

Como se ha comentado numerosas veces, los modelos matematicos siempre presentan diferencias con la dinamica real del proceso. Esas diferencias son imputables a la
propia simplificacion tpica de los modelos, o tambien por errores en la identificacion
de los parametros o bien por que la dinamica del proceso ha cambiado desde que se
obtuvo el modelo. En esta seccion analizaremos brevemente la influencia de los errores
de modelado sobre la funcion de bucle cerrado cuando se usa el Predictor de Smith.

Para ello se emplea el ((modelo de planta)) es decir Gm (s)etm s en comparacion con la

CAPITULO 10. CONTROL DE SISTEMAS CON GRANDES RETRASOS

199

dinamica real de la planta que es G(s)etm s4 . La diferencia sera:

G(s) = G(s)etm s Gm (s)etm s


La funcion de transferencia de bucle cerrado del sistema sera:
GBC (s) =

1+

C(s)
1+C(s)Gm (s)
G(s)etm s
C(s)
G(s)
1+C(s)Gm (s)

(10.4)

En caso de no existir errores de modelado, es decir G(s) = 0 la funcion de transferencia de bucle cerrado coincide con la del proceso controlado sin retraso seguido del
retraso. Reordenando la expresion (10.4) se tiene:
GBC (s) =

C(s)G(s)
etm s
1 + C(s)Gm (s) + C(s)G(s)

(10.5)

La diferencia entre esta funcion de transferencia y la correspondiente al sistema sin


errores de modelado esta en el termino C(s)G(s). Este termino modifica el polinomio
caracterstico y por tanto afecta a la estabilidad de bucle cerrado. Este sumando puede
disminuir el margen de fase y como se ve depende no solo de los errores de modelado sino
tambien del controlador dise
nado. Claramente cuando el termino G(s) sea grande, el
controlador C(s) debera ser ((peque
no)) (es decir poca ganancia) para que el termino
C(s)G(s) afecte poco. En general los errores de modelado limitan la ganancia del
controlador, ya que los efectos del termino C(s)G(s) en el polinomio caracterstico
son iguales al producto de los errores de modelado por la ganancia del controlador.
A fin de ilustrar los efectos de los errores de modelado, considerese la figura 10.13.
En ella se muestra la salida del sistema del ejemplo 10.2 cuando se cometen diversos
errores de estimacion en el retardo del sistema. Como se ve, los errores de modelado
separan a la respuesta del sistema de la respuesta ideal, provocando la aparicion de
oscilaciones y un mayor tiempo de amortiguamiento.

10.2.2.

El Predictor PI

El Predictor PI es una simplificacion del Predictor de Smith que se suele usar en


aquellos procesos cuya dinamica viene dominada fundamentalmente por el retraso.
Son procesos en los que la constante de tiempo es sustancialmente mas peque
na que el
retraso. En estos casos lo que se hace es despreciar la dinamica del sistema y considerar
que se comporta como puna ganancia mas un retraso, es decir el ((modelo de planta))
4

Evidentemente aqu se esta suponiendo que existe un modelo lineal con retraso que describe
perfectamente al proceso.

200

EL PREDICTOR DE SMITH

20%

1.2

10%

1
+10%

0.8

+20%

0.6

0.4

0.2

0
0

20

40

60

80

100

120

140

160

180

200

Figura 10.13: Respuestas del sistema en bucle cerrado con el predictor de smith cuando se tienen
diversos errores en la estimacion del retardo.






 

 




  

 

 

Figura 10.14: Estructura del Predictor PI.

que se utiliza sera Kp etm s . Dicho de otra manera, el ((modelo rapido)) sera Gm (s) = Kp .
El resto de la estructura es igual a la del Predictor de Smith. Dicha estructura se ilustra
en la figura 10.14.

10.2.3.

El Predictor de Smith para sistemas en tiempo discreto

El Predictor de Smith es directamente aplicable al caso discreto. Como se ha comentado, el retardo puro se expresa como z d , donde d es el n
umero de periodos de
muestreo que comprende el retardo. Por lo demas la estructura es la misma, con el
logico cambio de funciones de transferencia en tiempo continuo por sus equivalentes en
tiempo discreto.

CAPITULO 10. CONTROL DE SISTEMAS CON GRANDES RETRASOS

201

En tiempo discreto el Predictor de Smith se programara en un computador digital.


En la figura 10.15 se indica de manera esquematica el algoritmo del Predictor de Smith.

Hacer
esperar(Tiempo_de_Muestreo);
k=k+1;
ymr(k+d) = salida_modelo_rapido(k+d);
ymp(k) = salida_modelo_planta(k);
y(k) = leer(sensor);
realim(k) = y(k) - ymp(k) + ymr(k+d);
e(k) = ref(k) - realim(k);
u(k) = calcula_control_C(e);
aplica(u(k));
Hasta STOP

Figura 10.15: Algoritmo del Predictor de Smith.

10.3.

Control de sistemas con respuesta inversa

Como probablemente es conocido para el lector, los sistemas de fase no mnima, es


decir, aquellos que tienen ceros inestables, presentan respuesta inversa. Esta respuesta
inversa consiste en que la respuesta del sistema evoluciona en sentido inverso al de
la se
nal de control durante un cierto tiempo, pasado el cual, la respuesta recupera su
sentido habitual. Es decir, si la se
nal de control se incrementa en un escalon, durante
un cierto tiempo la respuesta sera de manera que la variable de salida se decrementara.
Pasado ese tiempo, la salida comienza a incrementarse.
La razon fsica tras este comportamiento es que el cambio en la variable manipulada pone en marcha dos fenomenos fsicos de consecuencias opuestas sobre la variable
controlada, uno rapido pero poco intenso, y otro lento pero mas intenso, que es el que
finalmente predomina.
Podemos considerar que la funcion de transferencia se puede expresar como la suma
de otras dos que representan ambos fenomenos opuestos:
G(s) = G1 (s) + G2 (s)

202

CONTROL DE SISTEMAS CON RESPUESTA INVERSA

Supondremos que ambas funciones se corresponden con sistemas de primer orden:


G1 (s) =

K1
1 + 1 s

G2 (s) =

K2
1 + 2 s

Observese que el caracter opuesto de ambos fenomenos se manifiesta en las ganancias


de signo opuesto. La funcion de transferencia completa es:
G(s) =

K1
K2

1 + 1 s 1 + 2 s

que se puede escribir como:


G(s) =

(K1 2 K2 1 )s + (K1 K2 )
(1 + 1 s)(1 + 2 s)

En G(S) encontramos los polos correspondientes a ambos fenomenos y ademas un cero


cuyo valor es:
K1 K2
c=
K1 2 K2 1

Para que el proceso sea de fase no mnima, el cero debe ser inestable, es decir positivo,
lo cual sucedera cuando K1 > K2 y 1 2 o tambien cuando K2 > K1 y 2 1 .
Fsicamente, la respuesta inversa se producira cuando el efecto mas intenso sea a la vez
el mas lento.
El control de sistemas con respuesta inversa presenta ciertas dificultades, tales como
por ejemplo que se deben limitar la amplitud de los componentes de alta frecuencia.
Por tanto esto sugerira limitar la accion derivativa en los PID. Sin embargo el efecto
derivativo es tambien beneficioso, pues la primera parte de la respuesta inversa se puede
asimilar a un retardo y es sabido que para sistemas con retraso la accion derivativa es
positiva (solo cuando el retardo es peque
no).
Considerando la analoga con los sistemas con retraso se puede pensar que una
estrategia basada en un predictor como el del Predictor de Smith puede ser apropiada para controlar este tipo de sistemas. Una estructura propuesta para este tipo de
sistemas se muestra en la figura 10.16.
Observese que en esta estructura, de manera analoga al Predictor de Smith, lo que
se realimenta es la diferencia entre la salida del proceso y la salida de un predictor que
modela la respuesta inversa. Es decir, lo que se busca es cancelar la realimentacion de
la respuesta inversa. Para ello, el predictor toma la forma:


1
1
G(s) = k

(10.6)
1 + 1 s 1 + 2 s

CAPITULO 10. CONTROL DE SISTEMAS CON GRANDES RETRASOS

 


K1
1 + s 1

!

203



-K2
1 + s 2
(
&
&
k'

1
1

1 + s 1 1 + s 2


%
#
#
$


" 

Figura 10.16: Estructura de control para procesos con respuesta inversa.

El resultado de esta estrategia en comparacion con un control realimentado simple


se ilustra en la figura 10.17. En esta figura el controlador es el mismo en ambos casos,
concretamente un PI. Puede observarse como la estructura propuesta mitiga en gran
parte el efecto de la respuesta inversa, mientras que mejora en general el transitorio.
Finalmente, si en lugar del predictor propuesto en (10.6) se utiliza un modelo del
proceso se obtiene una estructura de control avanzada que se conoce como Internal
Model Control (IMC).

204

CONTROL DE SISTEMAS CON RESPUESTA INVERSA

1.5

0.5

0.5
0

10

20

30

40

50

60

70

80

Figura 10.17: Ejemplo de control de un sistema de fase no mnima con un PI usando un lazo simple
de realimentacion (trazo discontinuo) y la estructura de control para procesos con respuesta inversa
propuesta en la figura 10.16.

Captulo 11
Control de procesos con
perturbaciones medibles
11.1.

Introducci
on

En este captulo y el siguiente se expondran tecnicas o estructuras de control avanzadas que son bastante u
tiles en control de procesos. Ambos captulos tienen en com
un
que las tecnicas que se exponen utilizan variables adicionales a la entrada y salida del
proceso que es lo que hasta ahora se ha usado u
nicamente.
La primera de las tecnicas que se expondran en este captulo es el control en cascada.
Esta tecnica utiliza la medida de variables internas para detectar rapidamente el efecto
de perturbaciones a la entrada del sistema y poder as iniciar antes la accion correctora.
Fsicamente esta estrategia conlleva el uso de varios lazos de realimentacion anidados,
de ah el nombre.
Ademas del control en cascada en este captulo se estudia el control anticipativo o
control en adelanto. Este tipo de control usa como variables adicionales perturbaciones
medibles que incidan sobre la salida del proceso. Se usa por tanto para cancelar lo mas
rapidamente posible el efecto de perturbaciones a la salida del proceso.
205

206

CONTROL EN CASCADA
D8;@385E: F@7 <734G7:; 7
<785H7 43 >43:; 3 =83@634A
7; 8BC
3I78; 363 >9 < J

234563 674 89:;<94369< =>9<87:; 3? 7


67 3 >7<;@<3A 7; 8BC
1

)*+,

0*+,

- *+,

/
KLMNOLPQ R PQSQPTUSVWTLPQ
LMWTQXQYQ YUX QPTZQYRS

Figura 11.1: Ejemplo de sistema con perturbacion a la entrada.

11.2.

Control en cascada

En muchos procesos es posible medir variables internas que permiten detectar perturbaciones antes de que tengan efectos apreciables sobre la salida o variable controlada
del proceso. La idea es usar estas variables internas para evitar que se acumule el efecto
de la perturbacion o error sobre la salida.
Uno de los casos mas frecuentes es el de las perturbaciones a la entrada que inciden
sobre los actuadores. El efecto de una perturbacion sobre los actuadores es el de variar
la magnitud de la accion esperada por el controlador para un determinado nivel de la
se
nal de entrada. De este modo, la accion de control efectiva que realmente se aplica
puede no ser la adecuada para controlar el sistema. Por ejemplo, en un proceso donde
se controle un determinado nivel con una valvula, una perturbacion sobre la dinamica
o caracterstica de la valvula hara que para un mismo porcentaje de apertura, el
flujo o caudal variase desviandose del esperado. En este razonamiento se esta haciendo
mencion explcita al hecho de que los actuadores tienen su propia dinamica, y por tanto
se pueden representar por su propia funcion de transferencia. La dinamica del actuador
sera por lo general mas rapida que la del proceso, y en algunos casos la diferencia
sera tal que se pueda ignorar su efecto o considerarlo subsumido en la dinamica de la
planta. Cuando el actuador esta sometido a perturbaciones es conveniente considerarlo
como un elemento autonomo como se ilustra en la figura 11.1. En ella puede observarse
la dinamica del actuador V (s), interpuesta entre las del controlador C(s) y la planta
propiamente dicha, G(s). Puede observarse ademas una perturbacion que incide sobre el
actuador, de manera que la actuacion que realmente recibe la planta estara perturbada
por P .
Como se comporta la estructura de control de la figura 11.1 ante el efecto de la
perturbacion P ? Es evidente que P afecta a la se
nal de control, y que esa desviacion
se manifestara en una desviacion en la salida al cabo de un cierto tiempo. Una vez se

CAPITULO 11. CONTROL DE PROCESOS CON PERTURBACIONES MEDIBLES

207

ab

[ ^_
\]

[ ^_
e]

c ^_
]

` ^_
]

Figura 11.2: Ejemplo de sistema con perturbacion a la entrada.

detecte esta variacion, el controlador actuara sobre el proceso para corregir la desviacion
de la salida. El problema es el tiempo que pasa entre que se produce la perturbacion
sobre el actuador hasta que esta se manifiesta en todo su efecto sobre la salida del
proceso. Durante todo ese tiempo, la perturbacion ha estado acumulando un exceso
o defecto de energa o masa aportada al sistema. Esta acumulacion sera corregida
por el controlador, pero demasiado tarde, cuando ya sea inevitable un notable efecto
pernicioso en la salida.
El control en cascada trata de hacer frente a este problema actuado sobre el proceso
sin tener que esperar a que la perturbacion a la entrada se manifieste a la salida. Esto se
consigue midiendo una variable interna que se vea afectada mucho antes que la salida.
Esta variable suele ser el valor de la actuacion que realmente se aplica.

11.2.1.

Estructura de un sistema de control en cascada

Como se ha comentado, el control en cascada se basa en las medidas obtenidas de


una variable interna que permitan detectar el efecto de perturbaciones en la entrada
mucho antes de que estas se manifiesten en la salida. Lo mas habitual es medir directamente la actuacion que realmente se aplica o al menos estimarla de manera indirecta.
La estructura de control en cascada se implementa mediante un lazo de realimentacion interno en el que la posicion del actuador es la variable manipulada y la
actuacion efectiva medida es la variable controlada. La referencia de dicho lazo interno
es la salida del controlador del lazo externo. Esta estructura se ilustra en la figura 11.2.
El lazo mas interno se llama lazo secundario o esclavo (slave) mientras que el externo
recibe el nombre de lazo primario o maestro (master). Esta tecnica tambien se llama
control maestro-esclavo (master-slave). El nombre de control en cascada es evidente
si observamos que la salida del primario se convierte en la entrada o referencia del
secundario.
El modo en que funciona esta estrategia es facil de entender. El control secundario

208

CONTROL EN CASCADA

se encarga de corregir el efecto de las perturbaciones sobre la dinamica del actuador, de


manera que la actuacion que realmente recibe la planta es en la medida de lo posible la
que espera el controlador primario. De esta manera se evita que la perturbacion en la
entrada provoque un error que al acumularse en el tiempo se manifieste con una gran
desviacion de la salida antes de que el controlador primario pueda corregirla.
Esta estructura es tan frecuente en la industria, que los controladores industriales
(generalmente del tipo PID) incorporan una opcion de configuracion que les permite
tomar el punto de consigna, bien del panel de control o bien de una entrada que en su
caso se puede conectar a la salida de otro controlador para configurar un control en
cascada.
Para que un sistema de control en cascada sea eficaz es necesario que el lazo interno
sea mas rapido (o a lo mas igual) que el lazo externo. Esto es debido a que solo si el
lazo interno es mas rapido que el externo se podra actuar con la suficiente celeridad
para evitar que se acumule el efecto de la perturbacion en la entrada.
El beneficio obtenido con el uso de esta estrategia no se advierte mucho en el
seguimiento de consigna. Tampoco en los sistemas con perturbaciones a la salida. La
mejora es evidente cuando se dan las condiciones para las que ha sido ideado, es decir,
para casos en los que hay perturbaciones a la entrada. En general, la frecuencia de
corte del conjunto es algo mayor que la del proceso sin lazo secundario, por lo que se
puede usar una ganancia en el primario algo mayor.

11.2.2.

Sintonizaci
on de controladores en cascada

El procedimiento a seguir para la sintonizacion de este tipo de controladores pasa


por advertir, que, en primer lugar se ha de sintonizar el lazo secundario y despues
sintonizar el primario con el secundario en automatico. Los pasos seran los siguientes:

1. Obtener un modelo de la parte del proceso a controlar por el lazo secundario


(veanse los captulos 7 a 9).
2. Sintonizar el controlador esclavo por cualquiera de los metodos aplicables y pasarlo a automatico. Es usual emplear un PI en este caso a fin de obtener una respuesta
rapida.
3. Obtener un modelo de la variable controlada (es decir la salida) frente a cambios
en la consigna del controlador esclavo que debera estar en automatico.

CAPITULO 11. CONTROL DE PROCESOS CON PERTURBACIONES MEDIBLES

209

4. Sintonizar el controlador maestro por cualquier metodo aplicable a partir del


modelo anterior. Esto implica que el proceso a controlar desde el punto de vista
del controlador primario engloba a la planta y al lazo secundario.

11.3.

Control anticipativo

Una de las misiones encomendadas a los sistemas de control realimentado, es la de


compensar el efecto que tienen sobre la salida perturbaciones externas. Una vez que
se detecta la desviacion con respecto al punto de consigna el sistema de control act
ua
sobre el proceso para corregirla. Es importante hacer notar que ese esfuerzo corrector
se realiza despues de haber sido detectado el efecto de la perturbacion sobre la salida.
Esta forma de actuacion implica, por tanto, un cierto retraso en la accion correctiva y
puede hacer pensar que el control no sera todo lo eficiente que se desea.
La idea basica del control anticipativo (tambien llamado control en adelanto o
control por prealimentacion (feedforward)) es la de medir las perturbaciones que inciden
sobre la salida y actuar sobre el proceso inmediatamente, sin esperar a que dichas
perturbaciones afecten a la salida (variable controlada). Para ello se utiliza un modelo
del efecto de la perturbacion sobre la salida para poder compensarlo.
Usando un modelo de la planta y un modelo de las perturbaciones que afectan
a la salida, se tendra la tentacion de pensar que sera posible un control perfecto
sin necesidad de realimentar la variable controlada. Esto sera as por que el control
anticipativo no tendra que esperar a que hubiese error para empezar a corregirlo. En
la practica esto no funciona por las siguientes razones:
No es posible medir todas las perturbaciones que afectan a la salida.
Siempre existira un error en la medida de las perturbaciones.
El modelo del proceso y el de las perturbaciones siempre tendra errores de modelado.
A veces el controlador anticipativo resultante no es realizable. Esto sucede cuando
el retraso entre la perturbacion y la salida es inferior al que hay entre la salida y
la entrada (este caso se comentara mas adelante).
Debido a estas razones, el control anticipativo siempre se integra en sistemas de control
realimentado. En este caso el control anticipativo se usa sobre las perturbaciones mas

210

CONTROL ANTICIPATIVO
pmno

fkhij

r
lmno

fghij

qmno

Figura 11.3: Ejemplo de sistema con perturbacion a la salida.


}z{|

sx vw
u

vw
u

yz{|

s vw
tu

~z{|

Figura 11.4: Sistema con perturbacion a la salida controlado con un lazo simple de realimentaci
on.

importantes y mejor modeladas, dejandose al control realimentado la tarea de cancelar


las demas. El control resultante no sera perfecto, pero sera mejor que usando un lazo
de realimentacion simple.
Como ya se ha dicho este tipo de estrategia de control se emplea cuando hay perturbaciones que afectan a la salida que pueden ser medidas. Esta situacion se describe
en la figura 11.3. De acuerdo a ese diagrama de bloques, la funcion de la salida se puede
escribir como:
Y (s) = Gp (s)U(s) + Gd (s)D(s)
El esquema clasico de control es el que se muestra en la figura 11.4. Es decir, en
esta configuracion no se hace nada de manera especfica para combatir el efecto de la
perturbacion sobre la salida. El u
nico efecto corrector es el que proporciona de manera
intrnseca la realimentacion.
El control anticipativo utiliza la medida de los valores de la perturbacion para
actuar sobre la variable manipulada tal y como se indica en la figura 11.5. La actuacion

CAPITULO 11. CONTROL DE PROCESOS CON PERTURBACIONES MEDIBLES

211

Figura 11.5: Sistema con perturbacion a la salida controlado con un control anticipativo.

sobre el proceso viene determinada por la funcion de transferencia GF F (s) y el propio


valor medido de la perturbacion. Evidentemente GF F (s) es dise
nada de manera que
compense el efecto que sobre la salida tiene la perturbacion, es decir que compense el
efecto introducido por GD (s).
Cuando se usa el control anticipativo, la relacion entre la salida y la perturbacion
se puede expresar como:
Y (s) = (GD (s) + GP (s)GF F (s)) F (s)
Notese que para que GF F (s) anule completamente el efecto de la perturbacion se debe
verificar que:
GD (s) + GP (s)GF F (s) = 0
De manera que el valor apropiado de GF F (s) resulta ser:
GF F (s) =

GD (s)
GP (s)

(11.1)

Finalmente, la estructura de control propuesta para el control anticipativo es claramente una estructura de control en bucle abierto, por lo que cualquier discrepancia
entre el modelo del efecto de la perturbacion y dicho efecto evitara la cancelacion
perfecta de la perturbacion. La solucion es bien sencilla: utilizar el control anticipativo
o feed-forward en una estructura de control realimentado que cancele esas diferencias.
Esta estructura es la que se muestra en la figura 11.6.

11.3.1.

Consideraciones pr
acticas sobre los controladores anticipativos

Como se ha comentado antes, el control anticipativo para un determinado sistema


obtenido mediante la expresion (11.1) puede resultar no realizable fsicamente. A con-

212

CONTROL ANTICIPATIVO

Figura 11.6: Sistema con perturbacion a la salida controlado con un control anticipativo con control
realimentado.

tinuacion se mostrara un caso en el que esto ocurre. Considerense los siguientes valores
para GD (s) y GP (s):
KD tmD s
e
1 + D s
KP
GP (s) =
etmP s
1 + P s

GD (s) =

El controlador anticipativo resultante es:


GF F (s) =

KD 1 + P s (tmD tmP )s
e
KP 1 + D s

Esta expresion solo sera realizable si el retraso puro que aparece es positivo, es decir si
(tmD tmP ) 0. En el caso de que tmD < tmP esta funcion de transferencia incorporara un adelanto en lugar de un retraso que es fsicamente imposible de realizar. Esto
correspondera a una situacion en la que el efecto de la perturbacion se transmite mas
rapidamente que el efecto de la variable manipulada lo que evidentemente impide que
se pueda actuar sobre la perturbacion con suficiente tiempo.
Por otra parte la condicion de anular completamente el efecto de la perturbacion
puede ser demasiado estricta, por lo que en la practica se pretende reducir el efecto de
la perturbacion mas que cancerlarla completamente. Una forma de lograr esto es la de
emplear un control anticipativo est
atico, que consiste en una simple ganancia calculada
para corregir el efecto de la perturbacion en regimen permanente. Esta ganancia coincide con la ganancia estatica del control anticipativo calculado con la expresion (11.1),
es decir:
GD (s)
KD
lm GF F (s) = lm
=
s0
s0 GP (s)
KP
Evidentemente este tipo de control solo cancela el efecto del regimen permanente de
las perturbaciones pero ademas reduce el transitorio de las mismas.

Captulo 12
Control de procesos multivariables
12.1.

Introducci
on

Hasta ahora se ha supuesto de manera implcita que los sistemas a controlar cuentan
tan solo con una entrada y una salida. Las tecnicas de control vistas son por tanto
tecnicas de control SISO (Single Input Single Output). En la practica los sistemas o
plantas a controlar son suficientemente complejos y tienen siempre mas de una variable
controlada (salida) y mas de una variable manipulada (entrada). El uso de controladores
dise
nados con tecnicas SISO en estos sistemas puede llevar a rendimientos muy pobres
fundamentalmente por las interacciones existentes entre las diversas entradas y salidas.
Esto es as porque una entrada puede afectar a mas de una salida y por que una salida
puede depender de mas de una entrada. La figura 12.1 ilustra este hecho.
Los problemas causados por las interacciones son mas evidentes cuando los lazos de
control estan en automatico, y usualmente se desintonizan los controladores, perdiendo
rapidez y rendimiento en el control a fin de minimizar los efectos de las interacciones.
El mejor metodo para abordar los problemas de control en sistemas multivariables
comienza por evaluar las interacciones entre entradas y salidas a fin de poder establecer
los mejores emparejamientos posibles entre entradas y salidas. Como se vera, al usar
controladores SISO en sistemas multivariables, se obtienen mejores rendimientos si las
entradas se emparejan con las salidas correctas. Otro aspecto que se estudiara en este
captulo es el uso de desacopladores, que buscaran eliminar o al menos reducir las
interacciones. La idea tras este metodo es que un sistema multivariable desacoplado
puede ser controlado por controladores SISO en la misma manera que un conjunto de
213

214

SISTEMAS MULTIVARIABLES
1

1.6

0.9

1.4

0.8

1.2

0.7
1
2

u y

0.5

0.8

u y

0.6

0.6

0.4
0.4

0.3

0.2

0.2

0.1
0
0

20

40

60

80

100

120

140

160

0.2
0

20

40

60

80

100

120

140

160

Figura 12.1: Respuesta de un sistema multivariable de dos entradas y dos salidas cuando se aplican
escalones en sus entradas. Pueden observarse las interacciones en el hecho de que las salidas varan
cuando las entradas respectivas estan en reposo.

Figura 12.2: Representacion de un sistema multivariable de orden 2.

sistemas SISO independientes.

12.2.

Sistemas multivariables

Considerese un sistema dinamico con dos entradas u1 (s),u2 (s) y dos salidas y1 (s),y( 2).
Cada una de las salidas depende de las dos entradas, de manera que se puede considerar
un modelo lineal como el que sigue:
y1 (s) = G11 (s)u1 (s) + G12 (s)u2 (s)
y2 (s) = G21 (s)u1 (s) + G22 (s)u2 (s)

(12.1)

Este modelo lineal se representa con el diagrama de bloques que aparece en la figura
12.2. Estas expresiones se pueden reescribir en forma vectorial-matricial como:
Y(s) = G(s)U(s)

(12.2)

CAPITULO 12. CONTROL DE PROCESOS MULTIVARIABLES

215

Figura 12.3: Representacion de un sistema multivariable de orden 2 en bucle cerrado con dos controladores multivariables.

donde
Y(s) =
y

y1 (s)
y2 (s)

M(s) =

U(s) =

u1 (s)
u2 (s)

G11 (s) G12 (s)


G21 (s) G22 (s)

es la matriz de transferencia o tambien llamada matriz de din


amicas .
Supongase que se opta por controlar este sistema con dos controladores SISO
GC1 (s), GC2 (s) (vease la figura 12.3) de manera que se empareja y1 con u1 e y2 con
u2 . Tomando como referencias a r1 (s) y r2 (s), las se
nales de entrada tomaran como
valores:
u1 (s) = GC1 (s) (r1 (s) y1 (s))
(12.3)
u2 (s) = GC2 (s) (r2 (s) y2 (s))
El efecto cualitativo de las interacciones se puede analizar si suponemos que se inyecta
una perturbacion en el lazo 1. En este caso el error que introduce la perturbacion
tratara de ser corregido por el controlador GC1 actuando sobre u1 . Los cambios en u1
tambien afectaran a y2 a traves de la funcion de transferencia G21 , provocando una
desviacion e2 . El controlador GC2 tratara de contrarrestar este error e2 modificando
el valor de u2 . El cambio de u2 afecta tambien a y1 a traves de G12 , por lo que la
perturbacion en el lazo 1 no solo afecta al lazo 2, sino que ademas rebota de nuevo
afectando al lazo 1, a traves de la perturbacion inducida en el lazo 2.
Visto el analisis anterior, es evidente que la interaccion anteriormente descrita se
da siempre que no se cumpla alguna de las condiciones siguientes:

1. G21 (s) = 0, es decir u1 no afecta a y2 .

216

MEDIDA DE LAS INTERACCIONES. METODO


DE BRISTOL

2. G12 (s) = 0, u2 no afecta a y1 .


3. GC2 (s) = 0, es decir, el lazo 2 esta en manual.
Notese que en los casos 2 y 3, la perturbacion del lazo 1 afecta al 2, pero no hay
rebote de nuevo al lazo 1, por lo que se considera que no hay interaccion en estos dos
casos. Cuando no hay interaccion en un sistema multivariable se pueden dise
nar los
controladores de manera independiente como si se tratase de sistemas monovariables.
El efecto de una perturbacion en un lazo sobre el otro cuando los controladores
estan en automatico es bastante complejo, aunque se puede cuantificar estudiando la
funcion de transferencia por ejemplo entre u1 e y1 cuando:
y1 (s)
G12 (s)G21 (s)GC2 (s)
= G11 (s)
u1 (s)
1 + GC2 (s)G22 (s)

(12.4)

Notese que para dise


nar GC1 habra que tenerse en cuenta el dise
no de GC2 (y viceversa). De hecho, si el controlador GC1 se dise
na de manera independiente del GC2 (la
forma de conseguir esto sera sintonizar con el lazo 2 abierto), al ponerse el lazo 2 en
automatico el comportamiento obtenido en el lazo 1 puede ser muy deficiente e incluso
aparecer inestabilidad. Observese de hecho, que el efecto dinamico de la interaccion
puede reducirse desintonizando GC2 es decir reduciendo mucho la ganancia de GC2 de
manera que GC2 (s) 0. Por supuesto esto reducira la capacidad de GC2 para mantener
a y2 en el punto de consigna, por lo que esta solucion solo es valida si el control de la
variable y2 fuese mucho menos prioritario o importante que el de la variable y1 .
A modo de conclusion se puede decir que el controlador del lazo 1 debe dise
narse con
el lazo 2 en automatico controlado por un controlador GC2 previamente dise
nado. Dado
que esta discusion es igualmente aplicable a la sintona del lazo 2 con respecto al lazo
1, se concluye que solo sintonizando simultaneamente los dos controladores se puede
garantizar un comportamiento aceptable en bucle cerrado. Es evidente que esta tarea
se antoja compleja, especialmente si consideramos sistemas con mas de dos entradas y
salidas.

12.3.

Medida de las interacciones. M


etodo de Bristol

El metodo de Bristol de las ganancias relativas es una tecnica que permite evaluar
con facilidad las interacciones en regimen permanente y que, en consecuencia, se utiliza

CAPITULO 12. CONTROL DE PROCESOS MULTIVARIABLES

217

para afrontar el problema del emparejamiento entre entradas y salidas en un sistema


multivariable. La idea es que este metodo nos va a dar una medida del grado en que
cada una de las entradas influye sobre cada una de las salidas. Es evidente que para
controlar una salida se debera escoger como entrada aquella que tenga una mayor
influencia en su comportamiento.
Supongase un sistema multivariable con dos entradas y dos salidas, el cual se estabiliza en torno a un punto de equilibrio. Si se introducen cambios en las entradas
(u1 , u2 ), estos se manifestaran en las salidas en forma de variaciones (y1 , y2 ),
cuyo valor en regimen permanente se pueden calcular como:


y1
y1
y1 = u1
u1 + u2
u2
u2 cte
u1 cte
(12.5)
y2
y2
u
+
u
y2 = u


1
2
u
1
2
u2 cte

u1 cte

Los cocientes incrementales que aparecen en las expresiones anteriores corresponden a


las ganancias estaticas de cada uno de los bloques Gij de la matriz de transferencia
M(s), que se denotaran por Kij de manera que:




y1
y1
y2
y2
K11 = u
K
=
K
=
K
=



(12.6)
12
21
22
u2
u1
u2
1
u2 cte

u1 cte

u2 cte

u1 cte

Las ganancias estaticas de bucle abierto pueden determinarse facilmente mediante los
modelos del proceso o experimentalmente mediante ensayos en escalon en cada una de
las entradas mientras las restantes se mantienen constantes. Las ganancias estaticas de
bucle abierto definen la influencia de las entradas del sistema sobre sus salidas cuando
este esta en bucle abierto.

Las ganancias de bucle abierto no son una buena eleccion para la medida de las
interacciones debido a que:
Nos se pueden comparar entre si al tener distintas unidades.
No consideran lo que ocurre al cerrar los demas lazos de control.
Para analizar que ocurre con la ganancia del sistema cuando se cierran los demas
lazos de control deberemos analizar otras ganancias, definidas de la forma siguiente:




y1
y1
y2
y2
KC11 = u1
KC12 = u2
KC21 = u1
KC22 = u2
y2 cte

y2 cte

y1 cte

y1 cte

Las ganancias KCij miden la influencia en regimen permanente de la entrada j sobre


la salida i cuando el resto de las variables de salida permanecen en su valor deseado y
constantes. Notese que aqu las demas salidas estan controladas.


MEDIDA DE LAS INTERACCIONES. METODO
DE BRISTOL

218

Le metodo de Bristol utiliza las ganancias relativas definidas como:


ij =

Kij
KCij

donde ij es la ganancia relativa entre la salida i y la entrada j. Queda por solventar el

modo de calculo de las ganancias KCij . Estas


pueden calcularse a partir de las ganancias
de bucle abierto Kij . Para ello considerese que las ecuaciones (12.5) se pueden reescribir
mediante las definiciones (12.6):
y1 = K11 u1 + K12 u2
y2 = K21 u1 + K22 u2

(12.7)

Por definicion de KC11 se obtiene:


y2 = 0 = K21 u1 + K22 u2
Que resuelta para U2 queda:
u2 =

K21
u1
K22

que sustituido en (12.7) resulta en:



 

K21
K12 K21
y1 = K11 u1 + K12
u1 = K11
u1
K22
K22
Por tanto:
KC11


K12 K21
K11 K22 K12 K21
y1
= K11
=
=

u1 y2 cte
K22
K22

Las otras ganancias se pueden calcular de la misma manera resultando:



y1
K12 K21 K11 K22
KC12 =
=

u2 y2 cte
K21
KC21
KC22


y2
K12 K21 K11 K22
=
=

u1 y1 cte
K12

y2
K11 K22 K12 K21
=
=

u2 y1 cte
K11

En general si definimos una matriz de ganancias en buclehabierto


i como K = [Kij ] y la
1
se puede establecer la
matriz de ganancias en bucle cerrado como M = [mij ] = KCij
relacion:
T
M = K 1

CAPITULO 12. CONTROL DE PROCESOS MULTIVARIABLES

es decir en el caso de un sistema 2 2:


"
#
1

KC11
1
KC21

KC12
1
KC22

K11 K12
K21 K22

219

1 !T

Por tanto, una vez calculada M = [mij ] las ganancias relativas ij se obtienen mediante:
ij =

Kij
= Kij mij
KCij

La interpretacion del significado de las ganancias relativas es la de que si la ganancia


de un determinado lazo no se altera por la interaccion de los demas (es decir Kij =
KCij ), entonces ij = 1. Por tanto aquellos pares en los que la ganancia relativa es lo
mas cercana a 1 posible representan los mejores emparejamientos.

Propiedad 12.1 Dada la matriz definida como:


= [ij ]
se cumple que la suma de sus filas o columnas es igual a 1.

Ejemplo 12.1
Considerese a modo de ejemplo un sistema consistente en un tanque bien aislado donde
se aportan un caudal Q1 de agua fria a temperatura T1 y otro de agua caliente con
caudal Q2 y temperatura T2 . El tanque desagua y se pretende que lo haga con un
caudal Q0 y temperatura T0 . Las variables que se pueden manipular son los caudales
(es decir Ui = Qi , mientras que las variables a controlar son la temperatura y caudal
de salida. Despreciando perdidas, el permanente (que es lo que interesa en el metodo
de Bristol) vendra dado por:
Y1 = U1 + U2 Y2 =

U1 T1 + U2 T2
U1 + U2

Este modelo teorico nos permite calcular las ganancias de bucle abierto usando derivadas:
K11 =
K21 =

Y1
Y1
= 1 K1 2 =
=1
U1
U2

Y2
T1 (U1 + U2 ) (U1 T1 + U2 T2 )
U2 (T1 T2 )
=
=
2
U1
(U1 + U2 )
(U1 + U2 )2

220

CONTROL DE PROCESOS MULTIVARIABLES MEDIANTE DESACOPLO

K22 =

T2 (U1 + U2 ) (U1 T1 + U2 T2 )
U1 (T2 T1 )
Y2
=
=
U2
(U1 + U2 )2
(U1 + U2 )2

Suponiendo un punto de funcionamiento con:


U1 = 2 l/s

T1 = 60 C

U2 = 1 l/s

se obtienen los siguientes valores:



 
K11 K12
1
K=
= 10
K21 K22
3
de ah:
M = (K

1 T

) =

de donde se obtiene que:


=

2
3
1
3


1
3
2
3

2
3
1
10

T2 = 30 C
1

20
3

1
3
1
10

Por lo tanto los emparejamientos mas apropiados son Y1 con U1 y Y2 con U2 o lo que
es lo mismo el caudal de agua de salida se controla con el caudal del agua caliente y la
temperatura de salida se regula con el caudal de agua fria.
Notese que los emparejamientos pueden ser dependientes del punto de operacion.
Efectivamente, si consideramos que

se obtiene
K=
de donde se obtiene que:

U1 = 1 l/s

U2 = 2 l/s

K11 K12
K21 K22
=

1
3
2
3

=
2
3
1
3

20
3

10
3

lo que implica en este caso Y1 emparejada con U2 e Y2 emparejada con U1 . Es decir en


este caso, al contrario del anterior, la temperatura se regulara con el caudal de agua
caliente y el caudal de salida con el caudal de agua fria.

12.4.

Control de procesos multivariables mediante


desacoplo

Ya se ha comentado anteriormente que en el caso de que la matriz de transferencia


de un sistema multivariable sea diagonal, se puede controlar dicho sistema como si

CAPITULO 12. CONTROL DE PROCESOS MULTIVARIABLES

221

fueran n sistemas monovariables independientes. Por otra parte se ha estudiado un


procedimiento, el metodo de Bristol, para establecer los emparejamientos entradassalidas de manera que se minimice el efecto de las interacciones. Sucede, sin embargo,
que a veces, las ganancias relativas obtenidas no estan en ning
un caso significativamente
cerca de la unidad. Esto implica que no podremos seleccionar un emparejamiento que
nos garantice que el nivel de interaccion sea lo suficientemente bajo, por lo que el
rendimiento esperado del sistema de control sera pobre. En este caso la solucion pasa
por utilizar una tecnica de desacoplo que haga que la matriz de transferencia del sistema
sea lo mas diagonal posible.
Considerese que la salida del sistema se puede calcular como:
Y(s) = G(s)U(s)

(12.8)

y que a su vez U(s) viene dada por:


U(s) = Gc (s)E(s)

(12.9)

donde E(s) es el error que a su vez se calcula como:


E(s) = R(s) H(s)Y(s)

(12.10)

Sustituyendo en la ecuacion (12.8):


Y(s) = G(s)Gc (s) (R(s) H(s)Y(s))

(12.11)

(I + G(s)Gc (s)H(s)) Y(s) = G(s)Gc (s)R(s)

(12.12)

y de ah:
Podemos entonces definir la funcion de transferencia de bucle cerrado como:
Gbc (s) = (I + G(s)Gc (s)H(s))1 G(s)Gc (s)

(12.13)

Para que el sistema en bucle cerrado sea estable, los polos de todos los elementos
de la matriz Gbc (s) deben ser estables, es decir deben estar en el semiplano izquierdo
en el caso de sistemas continuos o dentro del crculo unidad en el caso de los sistemas
discretos.
Por otra parte, el sistema estara desacoplado cuando la Gbc (s) sea diagonal. A
continuacion se estudiaran las condiciones en las que esto se verifica. Supongase que
H(s) = I, entonces:
Gbc (s) = (I + G(s)Gc (s))1 G(s)Gc (s)

(12.14)

222

CONTROL DE PROCESOS MULTIVARIABLES MEDIANTE DESACOPLO

R(s)

E(s)

U(s)

Y(s)

Figura 12.4: Representacion de un sistema multivariable controlado por desacoplo.

Claramente, G(s)Gc (s) es diagonal entonces Gbc (s) tambien lo sera. Veamos que al
contrario tambien se verifica. Supongase que Gbc (s) es diagonal. De la expresion anterior se tiene que:
Gbc (s) (G(s)Gc (s))1 = (I + G(s)Gc (s))1

(12.15)

G(s)Gc (s)Gbc (s)1 = I + G(s)Gc (s)

(12.16)

lo que implica que:


post-multiplicando por Gbc (s) se obtiene
G(s)Gc (s) = Gbc (s) + G(s)Gc (s)Gbc (s)

(12.17)

reordenando y despejando se obtiene:


G(s)Gc (s) = Gbc (s) (I Gbc (s))1

(12.18)

En esta expresion, Gbc (s) es diagonal y tambien lo es (I Gbc (s))1 por lo que se
puede concluir que G(s)Gc (s) es tambien diagonal. Por tanto, la condicion necesaria
y suficiente para que Gbc (s) sea diagonal es que G(s)Gc (s) lo sea. Notese que esto
u
ltimo implica que la cadena directa en bucle abierto debe ser diagonal. Si esto se
verifica entonces el proceso de dise
no se reduce a sintonizar n lazos monovariables.
En el proceso de dise
no por desacoplo se considera que
Gc (s) = Gd (s)Gcn (s)

(12.19)

donde Gd (s) es la matriz de desacoplo y Gcn (s) es una matriz diagonal que corresponde a los n reguladores. Es decir, el bucle cerrado desacoplado puede conseguirse
calculando un bloque de desacoplo que diagonalice la matriz de transferencia del sistema y ajustando cada bucle como si fuera un sistema monovariable independiente.
Esta estructura de control se muestra en la figura 12.4.
En el calculo de las matrices de desacoplo puede llegarse a casos en los que las
matrices resultantes sean muy complejas o irrealizables (puede suceder cuando los
retrasos son diferentes).

CAPITULO 12. CONTROL DE PROCESOS MULTIVARIABLES

223

4
1

2
0.8

Y U

0.6

Y1 U1

0.4

0.2

0
0

20

40

60

80

100

120

140

8
0

160

20

40

60

80

100

120

140

160

tiempo

tiempo

Figura 12.5: Respuesta del sistema multivariable del ejemplo cuando se aplican escalones en sus entradas.

Notese que Gc (s) se puede calcular directamente a partir de G(s) y Gbc (s) mediante
la expresion:
Gc (s) = G(s)1 Gbc (s) (I Gbc (s))1
(12.20)
Ejemplo 12.2
Sea el siguiente sistema multivariable:

 "
Y1 (s)
=
Y2 (s)

10
3

20
3

1+5s

1+5s

#

U1 (s)
U2 (s)

(12.21)

La respuesta en bucle abierto de este sistema se muestra en la figura 12.5. Puede


observarse el acoplamiento existente.
A continuacion se procede a encontrar la matriz de transformacion que nos sirve
para diagonalizar la matriz de transferencia:

1
1
1
0

 10
20
30

103

3
3
3
C2
G
1+5s

1+5s C2 = C2 C1 1+5s
1+5s C1 = C1 +
=

I
1
1
3
0
1
0
1
0
1

1
0

2
3
1
3

0
10
1+5s

1
1

224

CONTROL DE PROCESOS MULTIVARIABLES MEDIANTE DESACOPLO


2
1
0.9

0
0.8

2
2

0.6

Y U

0.5

Y1 U1

0.7

0.4

6
0.3
0.2

0.1
0
0

20

40

60

80

100

120

140

10
0

160

20

40

60

80

100

120

140

160

tiempo

tiempo

Figura 12.6: Respuesta del sistema multivariable desacoplado cuando se aplican escalones en sus
entradas.

Luego la matriz de desacoplo vale:


Gd (s) =

2
3
1
3

1
1

y la matriz de transferencia equivalente al anteponer la Gd (s) sera:




1 0
G(s) =
10
0 1+5s
En la figura 12.6 se muestra la respuesta del sistema con la matriz de desacoplo interpuesta. Puede comprobarse que las interacciones han desaparecido.
El dise
no de los controladores puede realizarse mediante cualquier metodo conocido
para controladores monovariables. Por ejemplo, si se quiere que el error en regimen
permanente ante escalon sea cero y que la constante de tiempo de bucle cerrado sea
1 segundo para ambos bucles, el dise
no sera como sigue. En primer lugar, Gbc (s) es
igual a:
 1

0
1+s
Gbc (s) =
1
0 1+s

Teniendo en cuenta que la funcion de transferencia de bucle abierto del primer lazo es
1:
GC1
1
1
GBC1 =
=
1 + GC1 = GC1 (1 + s) GC1 =
1 + GC1
1+s
s
Por otra parte, dado que la funcion de transferencia de bucle abierto del segundo lazo
10
es 1+5s
, el dise
no del segundo controlador GC2 a partir de la funcion de transferencia
de bucle cerrado deseada sera:
GBC2 =

10
GC2 1+5s

10
GC2 1+5s

1
10
10
1 + 5s
1GC2
= GC2
(1+s) GC2 =
1+s
1 + 5s
1 + 5s
10s

0.8

0.8

0.6

0.6

R Y

225

R Y

CAPITULO 12. CONTROL DE PROCESOS MULTIVARIABLES

0.4

0.4

0.2

0.2

0
0

20

40

60

80

100

120

140

160

180

200

0
0

20

40

60

80

100

120

140

160

180

tiempo

tiempo

Figura 12.7: Simulacion del sistema multivariable en bucle cerrado.

En cuanto a las se
nales de control que realmente se aplican al sistema, estas se
calculan teniendo en cuenta los controladores dise
nados y la matriz de desacoplo:
U1 (s) =

2
1 + 5s
e1 (s) +
e2 (s)
3s
10s

U2 (s) =

1
1 + 5s
e1 (s)
e2 (s)
3s
10s

En la figura 12.7 se muestra la simulacion del sistema en bucle cerrado. Puede


observarse que el desacoplo propicia que el sistema se comporte como dos lazos independientes sin interaccion alguna.

200

226

CONTROL DE PROCESOS MULTIVARIABLES MEDIANTE DESACOPLO

Captulo 13
Introducci
on al control adaptativo
13.1.

Planteamiento del problema

En el contexto del control automatico el termino adaptativo se refiere a la facultad


de cambiar el comportamiento o parametros del control en respuesta a cambios en las
circunstancias del sistema controlado. Un regulador adaptativo sera aquel que pueda
modificar su comportamiento en respuesta a cambios en la dinamica del sistema y/o en
las perturbaciones a las que se ve sometido dicho sistema. En realidad esto es tambien
lo que se persigue cuando se introduce la realimentacion en un sistema de control. En
efecto, el control realimentado fundamenta su efectividad en el hecho de que es capaz
de reaccionar a los cambios del estado o salida del proceso (los cuales pueden venir
motivados por perturbaciones o tambien cambios en la dinamica del proceso) actuando
de manera que dicho estado o salida se mantenga controlado.
En general se acepta que el control adaptativo es un tipo de control no lineal en el
que el estado del proceso puede ser separado en dos escalas de tiempo que evolucionan
a diferente velocidad. La escala lenta corresponde a los cambios en los parametros del
regulador y la escala rapida a la dinamica del bucle ordinario de realimentacion.
La configuracion tpica de un controlador adaptativo es la que se ilustra en la
figura 13.1. Como se puede observar hay un bucle principal de realimentacion negativa
en el que aparece un regulador ajustable y otro bucle que se utiliza para ajustar los
parametros de dicho regulador. Para ello, se obtiene un cierto ndice de actuacion
en el cual se expresa la bondad o comportamiento del controlador. Dicho ndice de
actuacion se compara con un cierto comportamiento deseado y seg
un el resultado de
227

228

PLANTEAMIENTO DEL PROBLEMA

REFERENCIA

COMPORTAMIENTO
DESEADO

Figura 13.1: Configuracion generica de un controlador adaptativo.

dicha comparacion se ajustan los parametros del regulador. Para ello se utiliza un
mecanismo de adaptacion que en algunos casos (no siempre) tambien puede actuar
directamente sobre la actuacion o se
nal de control que recibe el proceso. En algunos
casos se a
nade un tercer bucle que tiene como tarea la supervision del sistema de
manera que, por ejemplo, se garantice la estabilidad del sistema en bucle cerrado o se
eviten ciertos comportamientos indeseados tales como cambios demasiado abruptos en
los parametros del regulador ajustable.
Es facil ver que en el esquema anterior el mecanismo de adaptacion realiza la tarea
de resolver en tiempo real el problema de dise
nar un regulador apropiado (en el caso
mas sencillo con una estructura predefinida) para un sistema dado de manera que se
cumplan unas determinadas especificaciones de dise
no (dadas por el ((comportamiento
deseado))).
Existen otros controladores que proporcionan una cierta capacidad de adaptacion
pero que no encajan en la definicion anterior ya que la adaptacion se realiza en bucle
abierto, es decir, para adaptar la ley de control no se usan las medidas de la salida o
estado de la planta. Este es el caso de los controladores gain scheduling los cuales se
trataran en la seccion ??.

AL CONTROL ADAPTATIVO
CAPITULO 13. INTRODUCCION

13.1.1.

229

Clasificaci
on grosso modo de los sistemas de control
adaptativo

De una manera general los sistemas de control adaptativo se pueden clasificar en


dos grandes grupos:

Controladores adaptativos por modelo de referencia (MRAC).


Reguladores autoajustables (STR).

Ambas estrategias suponen que para cualquier juego de valores de los parametros del
sistema y las perturbaciones, existe un controlador lineal que hace que el sistema en
bucle cerrado cumpla los requisitos de dise
no.
Los MRAC intentan alcanzar un comportamiento en bucle cerrado deseado que
viene especificado por un modelo de referencia. Por otra parte, los STR intentan alcanzar un control lo mejor posible (optimo) a partir de un tipo de controlador prefijado y
la informacion obtenida del proceso (se
nales de entrada, salida, etc. . . ).
Las dos tecnicas tienen sus ventajas e inconvenientes. Las ventajas del MRAC pasan
por una rapida adaptacion y la posibilidad de utilizar formulaciones que garanticen
estabilidad (usando metodos de Lyapunov). Sin embargo, la capacidad de adaptacion
de estas estrategias dependen en gran medida de la riqueza dinamica de la se
nal de
control (esto es analogo a lo que ocurre en la identificacion de sistemas, vease el tema
8). Por otra parte, los STR se adaptan bien en casi todas las situaciones y son faciles de
implementar pues admiten tecnicas de programacion modular. Sin embargo, tambien
presentan sus propios inconvenientes como se vera mas adelante.
Otra posible clasificacion de los sistemas de control adaptativos es aquella que
atiende a la forma de obtener los parametros del controlador. En este esquema podemos
encontrarnos:

Controladores adaptativos con dise


no mediante criterio optimo.
Controladores adaptativos con dise
no mediante criterio no optimo.

En los primeros el valor de los parametros se obtiene buscando entre los posibles valores
aquellos que hacen optimo un cierto criterio de comportamiento del sistema. Es decir,

230

DEL USO DE CONTROL ADAPTATIVO


JUSTIFICACION

optimizan un criterio de comportamiento o funcionamiento. En este grupo estudiaremos los controladores de mnima varianza y mnima varianza generalizado. Tambien
se puede considerar en este grupo el control predictivo basado en modelo (al que dedicaremos un amplio captulo mas adelante) cuando este tipo de control se utiliza como
controlador ajustable en alguno de los esquemas de control adaptativo referidos al
principio del tema.
Los controladores adaptativos sin criterio optimo buscan los parametros del controlador no mediante la optimizacion de un criterio de funcionamiento sino entre aquellos
que cumplen unas ciertas especificaciones, por ejemplo, la colocacion de los ceros y los
polos de bucle cerrado. En estos esquemas el controlador ajustable puede ser por ejemplo un regulador PID, un controlador dead-beat como los estudiados anteriormente o
un controlador por asignacion de polos o de ceros y polos. En tiempo real se resolvera el
problema de dise
nar dichos controladores, de manera que a pesar de los cambios en el
proceso se sigan cumpliendo las especificaciones de dise
no.

13.2.

Justificaci
on del uso de control adaptativo

El control adaptativo conlleva una serie de inconvenientes que pueden hacernos cuestionar su uso. Por ejemplo, su sintona no suele ser tan sencilla como la de los clasicos
controladores PID. Por tanto, hay que ver en que situaciones puede ser ventajoso su
uso y en que situaciones es mejor quedarse con controladores mas sencillos.
En general un controlador convencional esta pensando para controlar sistemas cuyos
parametros permanecen constantes (es decir, su dinamica no vara). Esta suposicion se
corresponde mas o menos con la de un sistema que suele operar siempre cerca de un
determinado punto de operacion y cuyas perturbaciones no son grandes (en relacion a
la variable controlada) y no varan demasiado. Sin embargo, puede suceder que el punto
de trabajo vare frecuentemente y en algunos sistemas puede suponer una variacion de
su dinamica lo suficientemente importante para afectar al rendimiento del controlador.
Por ejemplo, supongamos un sistema realimentado en el que el actuador presenta una
caracterstica de transferencia no lineal (figura 13.2). Esta situacion corresponde por
ejemplo a la caracterstica instalada de un valvula que usualmente suele ser no lineal.
Supongamos que el caudal de salida de la valvula viene dado por una expresion C =
A4 , donde es una cierta constante y A la apertura porcentual de la valvula. En
la figura 13.3 se muestra dicha caracterstica instalada (trazo solido). A la hora de
dise
nar el sistema de control se intentara obtener un modelo linealizado del actuador,
que evidentemente saldra diferente en funcion del punto de operacion. Si el controlador

AL CONTROL ADAPTATIVO
CAPITULO 13. INTRODUCCION

f(u)

231

G(s)

Figura 13.2: Sistema realimentado con actuador con caracterstica v = f (u).

se ve forzado a trabajar en distintos puntos de operacion su rendimiento no podra ser


igual de bueno en todos, de manera que este esquema ira bien si el punto de operacion no
se mueve demasiado. Una solucion sera trabajar con un modelo linealizado a tramos
de la caracterstica de la valvula (figura 13.3 trazo discontinuo), de manera que en
cada punto de funcionamiento el controlador adaptara su comportamiento (variando
sus parametros de dise
no) de acuerdo al modelo linealizado que se tenga en cada caso.
En general, cuando la variacion en los parametros del sistema o los actuadores se conoce
16

14

12

caudal (m /h)

10

10

20

30

40

50

60

70

80

90

100

apertura (%)

Figura 13.3: Sistema realimentado con actuador con caracterstica v = f (u).

de antemano y ademas se puede establecer una dependencia entre dichos parametros


y el punto de operacion (o una variable auxiliar) se puede recurrir a tecnicas sencillas
de control adaptativo como el gain scheduling (vease la seccion ??). En caso contrario
tendramos que recurrir a tecnicas mas sofisticadas.
Otro hecho a tener en cuenta es que no siempre es facil juzgar la necesidad o
no de utilizar el control adaptativo. Considerese el sistema dado por la funcion de
transferencia
G(s) =

1
(s + 1)(s + a)

donde a = 0,01, 0, 0,01

(13.1)

DEL USO DE CONTROL ADAPTATIVO


JUSTIFICACION

232

La primera aproximacion a este sistema sera hallar su respuesta ante escalon, para
los diversos valores de a. Como se ilustra en la figura 13.4 (izquierda), dicha respuesta
vara mucho en funcion de los valores del parametro a, pasando de hecho de ser un
sistema estable a otro inestable. Parecera que el sistema vara lo suficiente como para
justificar el uso del control adaptativo. Sin embargo, la configuracion que realmente
nos interesa es la del sistema realimentado. En la figura 13.4 (derecha) se muestra la
respuesta del sistema en bucle cerrado (realimentacion unitaria). En contra de lo que
podramos suponer la respuesta en bucle cerrado es mas o menos la misma, por lo que,
siendo esta la configuracion en la que se va a trabajar, no sera necesario usar control
adaptativo.
Step Response

Step Response

1.4

600

1.2

500

400

0.8

Amplitude

Amplitude

700

300

0.6

200

0.4

100

0.2

20

40

60

80

100

120

140

160

180

200

Time (sec)

10

12

Time (sec)

Figura 13.4: Respuestas en bucle abierto (izquierda) y cerrado (derecha) del sistema dado en (13.1).

Es facil poner un ejemplo en el que la situacion sea la inversa de la anterior. Considerese el sistema dado por la funcion de transferencia
G(s) =

20(1 T s)
(s + 1)(s + 20)(T s + 1)

donde T = 0, 0,015, 0,03

(13.2)

En este caso la respuesta en bucle abierto del sistema es muy parecida independientemente de los valores de T (figura 13.5 izquierda). Cuando se le realimenta usando como
entrada u = 15(ref y) se obtienen, sin embargo, comportamientos muy diferentes en
funcion del valor de T (figura 13.5 derecha). Es por tanto que en este caso s estara
justificado el uso de tecnicas de control adaptativo. El lector puede comprobar ademas
que no solo hay que juzgar en funcion del comportamiento en bucle cerrado en general, sino que hay que tener en cuenta cuales van a ser las condiciones de operacion
particulares en las que se va a trabajar. En efecto, si se obtiene la respuesta en bucle
cerrado para el sistema (13.2) pero utilizando una realimentacion unitaria (esto es,
u = (ref y)) entonces las respuestas son esencialmente iguales independientemente
del valor de T .

AL CONTROL ADAPTATIVO
CAPITULO 13. INTRODUCCION
Step Response

233
Step Response

1.5
0.9
0.8
0.7
1

Amplitude

Amplitude

0.6
0.5
0.4
0.5
0.3
0.2
0.1
0
0
0

3
Time (sec)

0.5

1.5

2.5

Time (sec)

Figura 13.5: Respuestas en bucle abierto (izquierda) y cerrado (derecha) del sistema dado en (13.2).

13.3.

Control adaptativo por modelo de referencia


(MRAC)

Es una de las tecnicas mas antiguas de control adaptativo y se basa, como su nombre
indica, en disponer de un modelo de bucle cerrado que es el que se desea que describa al
conjunto controlador-planta. Es decir, se debe partir de un conjunto de especificaciones
deseadas de bucle cerrado que se expresan mediante el modelo de referencia. El controlador ajustable debera adaptar sus parametros para que el modelo de bucle cerrado
del conjunto coincida o se acerque lo mas posible al modelo de referencia. La figura
13.6 muestra la configuracion mas popular (no es la u
nica sin embargo) para este tipo
de controladores. En dicha figura puede observarse un controlador primario ajustable
que en principio puede ser cualqier tipo de controlador. El mecanismo de adaptacion
es el que se va a encargar de ajustar los parametros del control primario para que la
diferencia entre la salida de la planta y el modelo de referencia sea lo mas peque
na
posible (es decir, que independientemente del valor inicial de esa diferencia, esta vaya
tendiendo a cero progresivamente).
Ademas de utilizar las se
nales tomadas de las salidas de la planta y el modelo,
el mecanismo de adaptacion puede utilizar las se
nales de entrada, de referencia y si
estuviesen disponible las variables de estado. En suma, toda la informacion disponible
sobre la planta y el comportamiento del sistema en bucle cerrado.
Para dise
nar un MRAC se ha de definir el modelo de referencia, el controlador y
la ley de adaptacion. En cuanto al modelo de referencia, sabemos que este especifica
el comportamiento en bucle cerrado deseado. Por tanto, el modelo ha de ser tal que

234

CONTROL ADAPTATIVO POR MODELO DE REFERENCIA (MRAC)

ym

+
REFERENCIA

yp

Figura 13.6: Configuracion generica de un controlador adaptativo por modelo de referencia (MRAC).

el conjunto controlador ajustable-planta pueda reproducir dicho modelo. Es decir, no


se puede escoger el comportamiento deseado de bucle cerrado sin pensar si el controlador ajustable es capaz de lograr (para alguna combinacion de sus parametros) dicho
comportamiento. Esto impone una serie de requisitos sobre el modelo, principalmente
sobre el orden del mismo. Tampoco es realista escoger un modelo de referencia con
una dinamica muy rapida en comparacion con la de la planta en bucle abierto. Por
supuesto es normal escoger la dinamica de bucle cerrado mas rapida que la de bucle abierto, pero no se puede escoger de manera arbitrariamente rapida, ya que ello
desembocara en problemas de convergencia en los parametros del controlador.
Por otra parte para el controlador primario se puede pensar en casi cualquier estructura de control lineal, incluyendo los populares PI, PID, etc. . . Se deben cumplir
sin embargo varios requisitos, entre ellos que la se
nal de control debe ser una funcion
lineal de los parametros. Tambien (suponiendose fijado el modelo) se debe escoger un
controlador ajustable que permita reproducir el modelo.
Finalmente, para la ley de adaptacion existen diferentes estrategias en la literatura
de las cuales nombraremos el metodo de hiperestabilidad y la estrategia basada en la
teora de estabilidad de Lyapunov (ambas estrategias aseguran la estabilidad de bucle
cerrado del sistema) y la primera y mas popular, el enfoque de sensibilidad o regla del
MIT.

AL CONTROL ADAPTATIVO
CAPITULO 13. INTRODUCCION

13.3.1.

235

La regla del MIT

Se basa en un ndice de actuacion, usualmente cuadratico, que mide la bondad de


la adaptacion en base a las discrepancias entre las salidas del modelo y la planta a lo
largo de un intervalo de tiempo:
Z t+T
J(t + T ) =
e2 ( )d
con e(t) = yproceso (t) ymodelo (t)
(13.3)
t

donde T es un periodo fijo de tiempo. La idea de la regla del MIT es ajustar el vector
de parametros del controlador en el instante t + T , de manera que haga decrecer J. Es
decir,
Z t+T
e( )
J
(t + T ) = (t)
= (t)
2e( )
d
(13.4)

t
donde Rnn es una matriz definida positiva que act
ua como ganancia de adaptacion.
Es facil entender que el controlador solo tiene influencia sobre la salida de la planta,
no sobre la del modelo. Por tanto ymodelo (t) no depende de y al variar este tampoco
lo hace ymodelo (t), luego
e( )
yproceso ( )
=

Finalmente, podemos conocer la variacion instantanea de los parametros del controlador tomando T 0 en el segundo miembro de (13.4) y teniendo en cuenta lo anterior
se llega a
d
yproceso
= 2e(t)
(13.5)
dt

Notese que yproceso


representa como vara la salida del proceso frente a variaciones del

vector de parametros, es decir la sensibilidad de yproceso (t) frente a variaciones de , de


ah el nombre alternativo de ((enfoque de sensibilidad)).
En la practica la sensibilidad de la salida del proceso puede ser difcil de conocer.
Por tanto, se la suele sustituir por la del modelo de referencia (que s es conocido). Este
esquema funciona porque despues de un tiempo el comportamiento en bucle cerrado del
sistema acaba convergiendo al del modelo de referencia. En cualquier caso, la ganancia
de adaptacion no debe ser muy grande pues si no puede aparecer un comportamiento
inestable (especialmente si hay discrepancias iniciales fuertes entre la sensibilidad del
proceso y la del modelo, porque las correcciones al valor de seran muy energicas y en
la direccion equivocada).
Finalmente hay que decir que esta regla presenta diversas formulaciones alternativas. De hecho la formulacion original del MIT se basaba en el ndice
1
J(t) = e2 (T )
2

236

CONTROL ADAPTATIVO POR MODELO DE REFERENCIA (MRAC)

que resulta en la regla


d
e(t)
= e(t)
dt

y hay otras posibilidades como


J(t) = |e(t)|

que resulta en

d
e(t)
=
signo(e(t))
dt

o directamente ajustar mediante


d
= signo
dt

e(t)

signo(e(t))

Ejemplo 13.1
Supongamos que tenemos un proceso cuya funcion de transferencia viene dada por
G(s) = kF (s)
donde k es ganancia desconocida y F (s) es perfectamente conocida. Se pretende que
el sistema en bucle cerrado se comporte acorde al modelo de referencia
GM (s) = k0 F (s)

(13.6)

donde k0 es una ganancia conocida (es un dato de entrada del problema). El controlador
ajustable del que se dispone tiene la estructura
u = uc
donde u es la entrada que se aplica a la planta y uc es la entrada al controlador (es
decir el parametro que se ha de ajustar es simplemente una ganancia). Se supone una
configuracion del sistema de control tal que es una ganancia feed-forward , es decir,
la funcion de transferencia desde uc a la salida del proceso yp es
Y (s)
= kF (s)
UC (s)
Como se pretende que la funcion de transferencia sea como en (13.6), lo logico sera
tomar
k0
=
k
pero es evidente que esto no se puede hacer, porque se desconoce el valor de k. Se
propone ajustar mediante la regla del MIT en el contexto de un control adaptativo
MRAC. El error es en este caso
e(t) = yp (t) ym (t) = kF (s)uc (t) k0 F (s)uc (t)

(13.7)

AL CONTROL ADAPTATIVO
CAPITULO 13. INTRODUCCION

237

La sensibilidad1 vendra dada por


e(t)
= kF (s)uc (t)

(13.8)

ahora bien, de (13.7) se obtiene que


ym (t) = k0 F (s)uc(t)
luego,
F (s)uc(t) =

ym (t)
k0

por lo que llevando esto a (13.8) se obtiene


k
e(t)
= ym (t)

k0
La variacion de los parametros seg
un la regla del MIT sera
d
k
= ym (t)e(t)
dt
k0
Notese que se sigue desconociendo el valor de k0 , sin embargo esto no plantea problema
alguno, pues como es una constante cualquiera podemos agrupar las constantes que
aparecen en una sola , de manera que la regla sera
d
= ym (t)e(t)
dt

Con el objeto de simplificar las cosas en la ecuacion (13.7) se ha abusado notablemente de la


notacion pues se estan incluyendo simultaneamente funciones en el dominio s (de la transformada de
Laplace) y se
nales en el dominio temporal. Esto no es correcto y quizas sera mejor utilizar la notaci
on
d
F (p) donde p = dt
, es decir, sustituir las funciones en s por su equivalente en el operador derivada.

238

CONTROL ADAPTATIVO POR MODELO DE REFERENCIA (MRAC)

Das könnte Ihnen auch gefallen