control de sistemas no lineales

279
Control de Sistemas No Lineales Linealización aproximada, extendida, exacta Hebertt Sira-Ramírez, CINVESTAV-IPN Richard Márquez, ULA Franklin Rivas-Echeverría, ULA Orestes Llanes-Santiago, ISPJAE Mayo 2004

Upload: cesar-david-arango-osorio

Post on 21-Oct-2015

492 views

Category:

Documents


8 download

DESCRIPTION

Control de sistemas no lineales Hebertt Sira-Ramírez

TRANSCRIPT

Control deSistemas No Lineales

Linealización aproximada, extendida, exacta

Hebertt Sira-Ramírez, CINVESTAV-IPNRichard Márquez, ULAFranklin Rivas-Echeverría, ULAOrestes Llanes-Santiago, ISPJAE

Mayo 2004

Contenido

Notación XIII

Introducción 1

1. Algunos Modelos de Sistemas No Lineales 31.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.2. Clase de sistemas bajo estudio . . . . . . . . . . . . . . . . . . . 51.3. Puntos de equilibrio . . . . . . . . . . . . . . . . . . . . . . . . . 51.4. Sistemas de naturaleza física real . . . . . . . . . . . . . . . . 81.5. Modelos empleados a lo largo del texto . . . . . . . . . . . . . . 111.6. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . 201.7. Resumen del capítulo y Lecturas adicionales . . . . . . . . . . 23

Parte I: Control Lineal de Sistemas No Lineales: Linea-lización Aproximada 29

2. Linealización aproximada 312.1. Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322.2. Linealización aproximada: expansión en serie de Taylor . . . . 322.3. Sistema linealizado: espacio de estado . . . . . . . . . . . . . . 342.4. Validez del modelo linealizado . . . . . . . . . . . . . . . . . . . 412.5. Primer ejemplo en Matlab (R) . . . . . . . . . . . . . . . . . . . 442.6. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . 492.7. Resumen del capítulo y Lecturas adicionales . . . . . . . . . . 51

3. Realimentación del vector de estados 533.1. Motivación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543.2. Diseño de controladores mediante linealización aproximada . 543.3. Ejemplos en Matlab (R) . . . . . . . . . . . . . . . . . . . . . . . 623.4. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . 723.5. Resumen del capítulo y Lecturas adicionales . . . . . . . . . . 76

III

IV CONTENIDO

4. Observadores dinámicos de estado 784.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 784.2. Reconstrucción del vector de estado . . . . . . . . . . . . . . . . 794.3. Observador de Luenberger: convergencia . . . . . . . . . . . . 834.4. Observador de Luenberger: separabilidad . . . . . . . . . . . . 884.5. Observadores de orden reducido . . . . . . . . . . . . . . . . . . 994.6. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . 1124.7. Resumen del capítulo y Lecturas adicionales . . . . . . . . . . 114

5. Síntesis de compensadores clásicos 1165.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1165.2. Diseño de reguladores del tipo P, PI y PID . . . . . . . . . . . . 1175.3. Ejemplos basados en la regla de Ziegler-Nichols . . . . . . . . 1215.4. Método del controlador-observador clásico . . . . . . . . . . . . 1255.5. Ajuste de las ganancias de un compensador lineal . . . . . . . 1335.6. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . 1425.7. Resumen del capítulo y Lecturas adicionales . . . . . . . . . . 147

Parte II: Control No Lineal de Sistemas No Lineales:Linealización Extendida 149

6. Realimentación no lineal del vector de estado 1516.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1516.2. Realimentación no lineal basada en asignación de polos in-

variantes en familias de modelos parametrizados . . . . . . . 1546.3. Controlador no lineal basado en linealización extendida . . . . 1566.4. Ejemplos de diseño . . . . . . . . . . . . . . . . . . . . . . . . . 1586.5. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . 1696.6. Resumen del capítulo y Lecturas adicionales . . . . . . . . . . 172

7. Diseño de observadores dinámicos de estado no lineales basa-dos en linealización extendida 1807.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1817.2. Observador dinámico no lineal . . . . . . . . . . . . . . . . . . 1817.3. Linealización de la dinámica del error de observación . . . . . 1827.4. Ganancia no lineal del observador . . . . . . . . . . . . . . . . 1847.5. Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1857.6. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . 2017.7. Resumen del capítulo . . . . . . . . . . . . . . . . . . . . . . . . 203

8. Sintesis de compensadores no lineales G(·) 2048.1. Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2048.2. Diseño de reguladores no lineales del tipo P, PI y PID median-

te linealización extendida . . . . . . . . . . . . . . . . . . . . . 206

CONTENIDO V

8.3. Compensadores no lineales basados en el esquema controlador-observador clásico . . . . . . . . . . . . . . . . . . . . . . . . . . 217

8.4. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . 2248.5. Resumen del capítulo y Lecturas adicionales . . . . . . . . . . 224

Parte III: Control No Lineal de Sistemas No Lineales:Linealización Exacta 227

9. Introducción a la linealización exacta 2299.1. Motivación: método del control calculado . . . . . . . . . . . . . 2299.2. Linealización exacta de sistemas en la forma canónica contro-

lable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2419.3. Sistemas no lineales reducibles a la forma canónica controlable2449.4. Condiciones de existencia para la transformación a la Forma

Canónica Controlable . . . . . . . . . . . . . . . . . . . . . . . . 2499.5. Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . 2559.6. Resumen del capítulo y Lecturas adicionales . . . . . . . . . . 255

10.Linealización exacta de sistemas no lineales 25610.1.Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25610.2.Nociones básicas de geometría diferencial . . . . . . . . . . . . 25610.3.Interpretación geométrica del corchete de Lie y teorema de

Frobenius . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25610.4.Nueva formulación de las condiciones de existencia para la

transformación a la forma canónica controlable . . . . . . . . . 25610.5.El caso de sistemas lineales . . . . . . . . . . . . . . . . . . . . 25610.6.Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25610.7.Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . 25610.8.Resumen del capítulo y Lecturas adicionales . . . . . . . . . . 256

11.Linealización entrada-salida 25711.1.Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25711.2.Dinámica de los ceros y linealización entrada-salida . . . . . . 25711.3.Primer ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . 25711.4.Formulación de la linealización entrada-salida usando her-

ramientas de geometría diferencial . . . . . . . . . . . . . . . . 25711.5.Ejercicios propuestos . . . . . . . . . . . . . . . . . . . . . . . . 25711.6.Resumen del capítulo y Lecturas adicionales . . . . . . . . . . 257

12.Observadores no lineales con error lineal 25812.1.Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25812.2.Linealización del error de reconstrucción . . . . . . . . . . . . 259

Bibliografía 262

Índice de figuras

1.1. Diagrama de Bloques de un Sistema no lineal . . . . . . . . . . 61.2. Avión en vuelo horizontal . . . . . . . . . . . . . . . . . . . . . 71.3. Péndulo simple . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.4. Satélite mono-axial (cuerpo que gira alrededor de un eje me-

diante expulsión de gases) . . . . . . . . . . . . . . . . . . . . . 101.5. Esquema de un artefacto espacial que requiere control de su

orientación a un valor deseado (θ = Θ) . . . . . . . . . . . . . . 121.6. Convertidor de potencia DC–DC tipo “Boost” . . . . . . . . . . 131.7. Sistema de suspensión magnética . . . . . . . . . . . . . . . . . 141.8. Manipulador robótico de unión rígida . . . . . . . . . . . . . . 151.9. Motor serie de corriente continua . . . . . . . . . . . . . . . . . 171.10.Representación simplificada del comportamiento del TCP . . . 181.11.Aro rotatorio sobre el que desliza un anillo cuya posición an-

gular se desea controlar . . . . . . . . . . . . . . . . . . . . . . 201.12.Sistema masa–resorte–amortiguador . . . . . . . . . . . . . . . 211.13.Circuito de Chua controlado . . . . . . . . . . . . . . . . . . . . 221.14.Balanceo de una esfera sobre una barra . . . . . . . . . . . . . 231.15.Tanque de reacción continuamente agitado . . . . . . . . . . . 26

2.1. Relación entre las variables originales y las variables incre-mentales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.2. Representación entrada-salida del sistema linealizado . . . . . 372.3. Motor de corriente continua . . . . . . . . . . . . . . . . . . . . 402.4. Sistema de un tanque con pérdida de líquido . . . . . . . . . . 422.5. Perturbación de la señal de entrada al tanque . . . . . . . . . 422.6. Péndulo invertido sobre una plataforma móvil . . . . . . . . . 452.7. Comportamiento local del sistema lineal (línea continua —) y

el sistema no lineal (trazos - -) . . . . . . . . . . . . . . . . . . . 492.8. Manipulador robótico flexible . . . . . . . . . . . . . . . . . . . 50

3.1. Relación entre las variables originales y las variables incre-mentales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

3.2. Sistema lineal que describe, en forma aproximada, el compor-tamiento de las perturbaciones . . . . . . . . . . . . . . . . . . 55

VI

ÍNDICE DE FIGURAS VII

3.3. Sistema lineal realimentado linealmente . . . . . . . . . . . . 563.4. Esquema de control lineal por realimentación del vector de

estado para sistemas no lineales . . . . . . . . . . . . . . . . . 563.5. Ubicación de los polos del sistema (3.2) en lazo abierto . . . . 593.6. Polos del sistema (3.2) en lazo cerrado . . . . . . . . . . . . . . 603.7. Esquema de realimentación lineal de estados para el sistema

de levitación magnética . . . . . . . . . . . . . . . . . . . . . . . 613.8. Ubicación de polos, en el plano complejo, para el artefacto es-

pacial en lazo cerrado . . . . . . . . . . . . . . . . . . . . . . . . 643.9. Comportamiento en lazo cerrado del artefacto espacial con-

trolado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653.10.Comportamiento del artefacto espacial obtenido por simula-

ción del sistema controlado, para desviaciones iniciales signi-ficativas del punto de equilibrio . . . . . . . . . . . . . . . . . . 66

3.11.Respuesta en lazo cerrado del sistema de fermentación esta-bilizable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

3.12.Sistema de dos conductores acoplados magnéticamente . . . . 73

4.1. Esquema de realimentación lineal con medición total de lascomponentes del vector de estado . . . . . . . . . . . . . . . . . 80

4.2. Esquema de realimentación lineal del sistema aproximadocon medición total de las componentes del vector de estado . . 80

4.3. Esquema de aproximación del comportamiento entrada-salidadel sistema no lineal . . . . . . . . . . . . . . . . . . . . . . . . 81

4.4. Observador dinámico de estado . . . . . . . . . . . . . . . . . . 824.5. Esquema de realimentación lineal de salida para un sistema

no lineal, utilizando un observador dinámico de estado . . . . 824.6. Estructura del observador dinámico de estado . . . . . . . . . 854.7. Esquema de control realimentado de salida del sistema lineal

que aproxima al sistema no lineal . . . . . . . . . . . . . . . . . 894.8. Respuesta del sistema de orientación de un artefacto espa-

cial mediante realimentación lineal de la salida utilizando unobservador dinámico . . . . . . . . . . . . . . . . . . . . . . . . 92

4.9. Respuesta de un sistema aro – anillo controlado mediante re-alimentación completa del vector de estado . . . . . . . . . . . 97

4.10.Respuestas del sistema aro – anillo controlado por realimentaciónlineal de la salida utilizando un observador dinámico de estado 99

4.11.Sistema de tanques en cascada . . . . . . . . . . . . . . . . . . 1034.12.Esquema de control realimentado lineal de la salida para un

sistema de tanques mediante el uso de un observador de or-den reducido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

4.13.Estructura de un observador dinámico de orden reducido . . . 1094.14.Estructura de control por realimentación lineal de la salida,

a base de un observador dinámico de orden reducido . . . . . . 1104.15.Medición de la altura en el péndulo simple (cm = centro de

masa) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

VIII ÍNDICE DE FIGURAS

5.1. Determinación de la frecuencia última ω0 y la ganancia últi-ma K0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

5.2. Esquema de control PID para Sistemas No Lineales . . . . . . 1215.3. Gráfico de Nyquist de la función de transferencia para el sis-

tema de suspensión magnética . . . . . . . . . . . . . . . . . . 1225.4. Lugar de las raíces para el sistema de suspensión magnética . 1235.5. Gráfico de Nyquist de la función de transferencia del modelo

promedio de un convertidor de corriente continua tipo “Boost” 1235.6. Lugar de las raíces del modelo promedio del convertidor Boost 1245.7. Esquema de regulación promedio basado en un controlador

PI para un convertidor tipo “Boost” . . . . . . . . . . . . . . . . 1255.8. Interpretación del diseño en variables de estado . . . . . . . . 1275.9. Representación del esquema controlador-observador clásico . 1275.10.Esquema básico de compensación . . . . . . . . . . . . . . . . . 1345.11.Esquema de compensación por adelanto . . . . . . . . . . . . . 1355.12.Lugar de las raíces para el sistema compensado . . . . . . . . 1365.13.Detalle del lugar de las raíces para el sistema compensado.

El signo ‘*’ indica la ubicación aproximada de los polos parala ganancia Kc = 29,72 . . . . . . . . . . . . . . . . . . . . . . . 137

5.14.Diagrama de Nyquist del sistema compensado para Kc = 10.El sistema es inestable en lazo cerrado . . . . . . . . . . . . . . 137

5.15.Comportamiento dinámico del sistema de suspensión mag-nética en lazo cerrado con el compensador en adelanto diseñado138

5.16.Simulación para Kc = 29,72 para x1(0) = 0,07 . . . . . . . . . . 1405.17.Simulación para Kc = 20 para x1(0) = 0,07 . . . . . . . . . . . 1415.18.Descenso suave controlado en un planeta sin atmósfera . . . . 1425.19.Las figuras en Matlab (R) . . . . . . . . . . . . . . . . . . . . . 145

6.1. Esquema de control no lineal obtenido para el satélite mono-axial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160

6.2. Comportamiento del satélite mono-axial controlado median-te realimentación no lineal del vector de estados basada enlinealización extendida . . . . . . . . . . . . . . . . . . . . . . . 161

6.3. Comportamiento del satélite mono-axial controlado por linea-lización extendida, limitando la señal de control medianteUmax —-; sin limitar - - - . . . . . . . . . . . . . . . . . . . . . . . 162

6.4. Esquema de control no lineal obtenido para el satélite mono-axial con ley de control limitada por el valor Umax . . . . . . . 162

6.5. Comportamiento del brazo manipulador robótico controladopor linealización extendida . . . . . . . . . . . . . . . . . . . . . 166

6.6. Posición angular del brazo manipulador robótico controladopor linealización extendida para diferentes condiciones iniciales166

6.7. Posición angular del brazo manipulador robótico para difer-entes condiciones iniciales usando una ley de control lineal . . 167

ÍNDICE DE FIGURAS IX

7.1. Diagrama de bloques del observador dinámico de estados parael satélite mono-axial, basado en linealización extendida . . . 187

7.2. Diagrama de bloques en lazo cerrado del sistema de controlde un satélite, considerando un observador dinámico no lineal 187

7.3. Comportamiento de un satélite mono-axial controlado sobrela base de un observador dinámico de estados obtenido porlinealización extendida . . . . . . . . . . . . . . . . . . . . . . . 190

7.4. Diagrama de bloques en lazo cerrado de un manipulador robóti-co, considerando un observador dinámico no lineal . . . . . . . 193

7.5. Comportamiento de un manipulador robótico controlado so-bre la base de un controlador y un observador dinámico deestados, obtenidos por linealización extendida . . . . . . . . . 194

7.6. Diagrama de bloques en lazo cerrado de un manipulador robóti-co, considerando un observador dinámico no lineal . . . . . . . 198

7.7. Comportamiento de un sistema de dos conductores acopladosmagnéticamente controlado sobre la base de un controladory un observador dinámico de estados, obtenidos por linealiza-ción extendida . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

7.8. Tanque reactor continuamente agitado, no isotérmico . . . . . 201

8.1. Diagrama de bloques en lazo cerrado del modelo promedio delconvertidor Boost, controlado mediante un PI no lineal . . . . 208

8.2. Comportamiento del modelo promedio de un convertidor Boostregulado mediante un PI no lineal obtenido por linealizaciónextendida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208

8.3. Diagramas de Nyquist del sistema de tanques en cascadapara diferentes valores de n . . . . . . . . . . . . . . . . . . . . 212

8.4. Diagrama de bloques en lazo cerrado de un sistema de tan-ques regulado mediante un PID no lineal . . . . . . . . . . . . 214

8.5. Simulación del comportamiento de un sistema de tres tan-ques en cascada controlados por intermedio de un PID no lineal214

8.6. Simulación del comportamiento de un sistema de tres tan-ques en cascada controlados por intermedio de un PID no lineal216

8.7. Esquema no lineal controlador-observador . . . . . . . . . . . . 2188.8. Esquema de control no lineal controlador-observador para el

manipulador robótico . . . . . . . . . . . . . . . . . . . . . . . . 2258.9. Respuesta en lazo del manipulador robótico, regulado me-

diante una ley no lineal basada en el controlador-observadorclásico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226

9.1. Diagrama de bloques del sistema aro – anillo . . . . . . . . . . 2309.2. Diagrama de bloques del sistema “linealizado” . . . . . . . . . 2319.3. Simulación numérica del sistema aro-anillo controlado . . . . 2339.4. Posición angular del anillo y señal de control para diferentes

condiciones iniciales . . . . . . . . . . . . . . . . . . . . . . . . . 2349.5. Diagrama de bloques del manipulador robótico . . . . . . . . . 234

X ÍNDICE DE FIGURAS

9.6. Manipulador robótico transformado a una cadena de dos in-tegradores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237

9.7. Respuesta en lazo del control de un brazo manipulador robóti-co usando el método del control calculado . . . . . . . . . . . . 238

9.8. Diagrama de bloques del sistema en forma canónica controlable242

Índice de cuadros

1.1. Nomenclatura empleada para el TRCA, modelo 2 . . . . . . . . 27

2.1. Simulación del sistema no lineal spend.m . . . . . . . . . . . . 472.2. Simulación del sistema lineal y presentación gráfica lpend.m . 48

3.1. Programa de simulación del artefacto espacial sejem1.m . . . 673.2. Simulación del artefacto espacial: modelo ejemplo1.m . . . . . 683.3. Programa de simulación del proceso incontrolable de produc-

ción de etanol sejem2.m . . . . . . . . . . . . . . . . . . . . . . . 703.4. Modelo y ley de control ejemplo2.m empleados para la simu-

lación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 723.5. Parámetros usados en el sistema del péndulo invertido sobre

una plataforma móvil . . . . . . . . . . . . . . . . . . . . . . . . 72

4.1. Programa de simulación del artefacto espacial controlado me-diante un observador de Luenberger sejem3.m . . . . . . . . . 93

4.2. Simulación del artefacto espacial: modelo y observador ejemplo3.m 944.3. Programa de simulación del aro rotatorio controlado median-

te una ley de realimentación del vector de estados sejem4.m . 964.4. Simulación del aro rotatorio controlado: modelo ejemplo4.m . 984.5. Programa de simulación del comportamiento del aro rotatorio

controlado usando un observador sejem5.m . . . . . . . . . . . 1004.6. Simulación del aro rotatorio: modelo y sistema dinámico del

observador ejemplo5.m . . . . . . . . . . . . . . . . . . . . . . . 101

5.1. Parámetros KP , TI , TD del método de Ziegler-Nichols . . . . 1195.2. Parámetros K1, K2, K3 del método de Ziegler-Nichols . . . . 1205.3. Programa de simulación del sistema de suspensión magnética

smgto.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1395.4. Modelo y compensador en adelanto mgto.m . . . . . . . . . . . 1405.5. Programas para generar los gráficos de Nyquist y del lugar

de las raíces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

6.1. Parámetros del sistema de balance de un péndulo invertido . . . 170

XI

XII ÍNDICE DE CUADROS

6.2. Programa de simulación del satelite mono-axial, modelo deCayley-Rodrigues sejext1.m . . . . . . . . . . . . . . . . . . . . 174

6.3. Modelo y control de un saliélite mono-axial ejext1.m . . . . . 1756.4. Programa de simulación del satelite mono-axial con actuador

saturado sejext1b.m . . . . . . . . . . . . . . . . . . . . . . . . 1766.5. Modelo y control saturado ejext1b.m . . . . . . . . . . . . . . . 1776.6. Programa de simulación del manipulador robótico sejext2.m . 1786.7. Modelo + control no lineal por linealización extendida (se in-

cluye además el control linealizado) ejext2.m . . . . . . . . . . 179

7.1. Programa de simulación de la dinámica de un satélite mono-axial regulado mediante un controlador y un observador nolineales sejext3.m . . . . . . . . . . . . . . . . . . . . . . . . . . 188

7.2. Modelo, control y observador no lineales ejext3.m empleadospara la simulación . . . . . . . . . . . . . . . . . . . . . . . . . . 189

7.3. Programa de simulación de un manipulador robótico regula-do mediante una realimentación y un observador no lineales,basados en linealización extendida srobleob2.m . . . . . . . . 195

7.4. Modelo de un manipulador robótico y ley de control con obser-vador no lineal basada en linealización extendida robleob2.m 196

7.5. Programa de simulación de un sistema de dos conductoresregulado mediante una ley de control no lineal, basada en unobservador diseñado mediante linealización extendida sconexob.m199

7.6. Modelo y ley de control con observador no lineal basada enlinealización extendida conexob.m . . . . . . . . . . . . . . . . 201

8.1. Programa de simulación del comportmiento del modelo prome-dio del convertidor Boost, regulado mediante un PI nol linealsboostex.m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

8.2. Modelo del convertidor Boost y regulador PI no lineal boostext.m2108.3. Programa de simulación del sistema de tanques controlados

mediante un PID no lineal stanqext.m . . . . . . . . . . . . . . 2158.4. Modelo del sistema de tanques e implementación del contro-

lador PID no lineal tanqext.m . . . . . . . . . . . . . . . . . . . 216

9.1. Programa de simulación del sistema aro-anillo regulado me-diante control calculado sarole.m . . . . . . . . . . . . . . . . . 235

9.2. Simulación del sistema aro-anillo: modelo y observador arole.m2369.3. Programa de simulación del control del manipulador robótico

usando el método del torque calculado srobexa.m . . . . . . . . 2399.4. Simulación del manipulador robótico: modelo y control por el

método del torque calculado robexa.m . . . . . . . . . . . . . . 240

Notación

En muchas ocasiones repetiremos ecuaciones o expresiones que han si-do ya vistas a lo largo del texto. Estas expresiones serán numeradas dela manera como originalmente fueron presentadas. Para diferenciarlas, seañadirá un asterisco “*” indicando que fueron empleadas anteriormente, demanera de no confundir al lector con la numeración que viene siguiendo.Por ejemplo, la ecuación (5.6) es reutilizada en la página 134, lo cual seindica mediante la etiqueta (5.6*).

Los ejemplos se terminan con el símbolo . Los ejemplos en Matlab (R)se terminan con t y los modelos se concluyen con la letra M. Los ejerciciosindican la dificultad mediante una (?) o varias (??).

Consideraremos, salvo indicación expresa de lo contrario, la siguientenotación a todo lo largo del texto:

x, u, y representan, respectivamente, las variables de es-tado, entrada y salida.

(X, Y, U) valores de equilibrio (punto de operación) para x,y y u, respectivamente.

t el tiempot0 el instante t = t0.

x(t) “la variable x es función de t”, “valor de x en elinstante t”, “respuesta (solución) de x en funcióndel tiempo t”.

x =dx

dtderivada (tasa de variación) de x(t) respecto de t.

A, B generalmente representan, respectivamente, lamatriz del sistema y la matriz del control.

XIII

XIV NOTACIÓN

Introducción

[a completar]Se ha preferido utilizar los archivos tipo “script” y “function” de Mat-

lab porque pueden ser ejecutados en cualquiera de las versiones 5.1, 6.1o 6.5, con variaciones mínimas en la sintáxis. Sin embargo, los archivosSimulink (R) para la versión 6.5 están disponibles en la página web de estetexto http://www.ing.ula.ve/~marquez/snl/.

Este curso no es una introducción al uso de Matlab (R) para simulación,para ello referimos al lector a las muchas y excelentes referencias en eltema. Muchas de ellas están disponibles en Internet.

1

2 INTRODUCCIÓN

1

Algunos Modelos deSistemas No Lineales

Foto

Nuestra atención estará centrada en los sistemas de tipo no linealque puedan ser representados por modelos que involucren el usode sistemas de ecuaciones diferenciales ordinarias no lineales1.

En este capítulo precisaremos el tipo de sistemas que serán uti-lizados a lo largo de esta monografía. Vamos a introducir algunosmodelos que serán empleados a lo largo del texto. A medida queavancemos iremos encontrando diferentes modelos matemáticos,por medio de los cuales se ha intentado representar de maneraaproximada el comportamiento de sistemas reales. Las relacionesplanteadas tienen su origen en la física, la química, la temrodinádinámica, el balance de masa, energía, información, procedimien-tos empíricos, etc. Muchos de estos modelos se encuentran a todolo largo de la literatura existente de control automático.

1De allí que los métodos de análisis y diseño presentados NO se aplican a sistemas máscomplejos, conocidos con el nombre de sistemas a parámetros distribuidos, descritos, por logeneral, por ecuaciones y sistemas de ecuaciones diferenciales parciales.

3

4 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

Ilustraremos algunos conceptos, tales como el de punto de equi-librio, fundamentales para el estudio de los capítulos posteriores.

1.1. Introducción

Desde los inicios de la humanidad, el hombre ha tratado de entender yaprender de su medio ambiente a través de observaciones. A partir de estasobservaciones se fue creando en su cerebro un modelo de la realidad circun-dante. Los diferentes modelos que formaba le servían para actuar dentro desu medio y para tratar de solventar sus problemas en la caceria, construc-ción de vivienda, etc. Con el paso del tiempo, y en virtud de los cambiosen sus necesidades, estos modelos se fueron convirtiendo en modelos mássofisticados desde el punto de vista abstracto. Desde el punto de vista in-genieril, los modelos linguísticos y gráficos (diagramas, dibujos, etc.), loscuales transmitía a sus semejantes, le sirvieron para entender mejor y enuna forma más sistemática su entorno, pero a la vez le permitieron afrontarproblemas cada vez más complicados, como por ejemplo los sistemas de reg-ulación de la posición y de la velocidad en los molinos de viento, y los dis-positivos más simples, pero no menos ingeniosos, usados para controlar elnivel del líquido en los relojes de agua (clepsidra). Estos modelos, linguís-ticos y gráficos, constituyeron el origen de lo que posteriormente serían losllamados modelos matemáticos.

Newton tuvo mucha razón cuando dijo que el lenguaje de la naturalezaes la matemática. La realidad física que nos rodea la hemos tratado de in-terpretar de diferentes maneras. Los modelos matemáticos constituyen unaforma idónea de resolver muchos de los problemas que se nos presentan alenfrentarnos a esa realidad.

Un modelo matemático de un sistema real constituye una represen-tación abstracta realizada en términos de lenguaje y simbología matemáti-ca (ecuaciones algebraicas, ecuaciones diferenciales, en diferencias, etc.) lacual resalta propiedades importantes del sistema en estudio. En nuestro ca-so, estaremos interesados en que el modelo presente las propiedades “másimportantesrelativas al comportamiento dinámico (en el tiempo) del sis-tema a controlar, tomando en cuenta los requerimientos y la disponibilidadde recursos respecto a beneficios, costos, precisión y exactitud en represen-tar el comportamiento del sistema, seguridad o riesgos, etc. Por ejemplo,un modelo del comportamiento de varias sustancias en un reactor químicopodría ser representado mediante un conjunto de ecuaciones diferencialesparciales que reflejan un comportamiento muy preciso y una inversión muycostosa, contrastando con muchas situaciones en las cuales es suficienterepresentar el sistema dado en la forma de ecuaciones algebraicas de lasrelaciones estáticas entre las sustancias, el cual resulta un modelo con uncosto muy inferior al anterior. En el caso de un avión esto no puede ser

alejandra
Highlight

1.2 CLASE DE SISTEMAS BAJO ESTUDIO 5

así, el modelo a emplear tiene que ser lo suficientemente sofisticado co-mo para tomar en cuenta todas las variables necesarias: vientos, presión,condiciones climatológicas, etc. debido al elevado riesgo de vidas humanasinvolucradas.

Un modelo matemático, obtenido por medio de leyes y relaciones detipo físico, químico o de alguna otra índole, servirá para captar algunasde las propiedades importantes del sistema bajo estudio, dependiendo delas necesidades. Además de brindar la posibilidad de estudiar un sistemacualquiera, los modelos nos proporcionan las bases necesarias para teneruna idea de cómo influenciar (regular o controlar) el comportamiento delsistema real. En último término, éste es el interés práctico del modelo en sí,brindar información relevante del sistema susceptible de ser controlado.

Los sistemas de control de maquinaria, motores, aviones, reactores quí-micos, etc., están formados por procesos y plantas, habitualmente repre-sentados a través de modelos matemáticos que expresan las diferentes pro-piedades o comportamientos que satisfacen tales sistemas. Los sistemasdinámicos que estudiaremos describen procesos reales de naturaleza no li-neal. La herramienta matemática para su descripción está constituida porsistemas de ecuaciones diferenciales ordinarias no lineales a parámetrosagrupados.

1.2. Clase de sistemas bajo estudio

Considérese el siguiente conjunto de ecuaciones que representan un sis-tema no lineal con una sola entrada y una salida:

x(t) = f(x(t), u(t)), x(t0) = x0

y(t) = h(x(t))(1.1)

donde x(t) es una función vectorial del tiempo la cual toma valores en elespacio de n-dimensiones y representa el estado del sistema, x(t) ∈ Rn, u(t) Representación

en variables deestado

es una función escalar del tiempo y toma valores en la recta real, u(t) ∈ R.La variable y(t) es también una función escalar del tiempo y representa lasalida del sistema, y(t) ∈ R. Las funciones f(·) y h(·) son funciones con-tinuas, diferenciables al menos una vez con respecto a cada uno de susargumentos, definidas de tal forma que f : Rn × R → Rn y h : Rn → R.Representaremos este sistema no lineal mediante el diagrama de bloquesmostrado en la Figura 1.1. Recordemos que x = dx/dt representa la tasa devariación de la variable x respecto al tiempo.

1.3. Puntos de equilibrio

Como veremos con más detalle posteriormente, nuestro objetivo es di-señar leyes o estrategias de control para la regulación del comportamientoen lazo cerrado del sistema estudiado. En forma precisa, se deseará regular

6 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

Figura 1.1: Diagrama de Bloques de un Sistema no lineal

el comportamiento de las variables representativas del sistema alrededorde valores de referencia deseados. A estos valores de referencia se les llamapuntos de operación, los cuales están estrechamente ligados a los puntos deequilibrio del sistema, presentados a continuación.

Los puntos o trayectorias de equilibrio de un sistema no lineal se ob-Punto deequilibrio, puntode operación

tienen de resolver la ecuación x ≡ 0, ver (1.1), esto es, cuando la tasa devariación de x es cero:

f(x(t), U) = 0 ⇒ x(t) = X(U) (1.2)

De la ecuación (1.2) resulta claro que, para calcular el punto de equi-librio (X, U), debemos resolver una ecuación implicita que depende de laseñal de control en el equilibrio, dada por el valor U .

Consideraremos sistemas de ecuaciones diferenciales de la forma (1.1)que poseen puntos de equilibrio constantes, los cuales pueden están dadospor:

u(t) = U ; x(t) = X(U); y(t) = Y (U) = h(X(U)), para todo t. (1.3)

En este caso, diremos que el punto de equilibrio está parametrizado en fun-Parametrizacióncon respecto alcontrol

ción de la señal de control2 constante U .Nótese que, en general, pueden existir múltiples puntos de equilibrio,

con o sin sentido físico. Más aún, es posible que ni siquiera exista tal puntode equilibrio constante. A los sistemas donde aparezcan tales fenómenos losllamaremos casos patológicos.

Ejemplo 1.1: No existe ningún punto de equilibrioConsidere el sistema

x(t) =1

x(t)+ u(t)

y(t) = x(t)

2Por supuesto, un punto de equilibrio podrá estar parametrizado por cualquier otra variabledel sistema. De tal forma que, en función de un valor constante X del estado, tenemos:

u(t) = U(X); x(t) = X; y(t) = Y (X) = h(X), para todo t

1.3 PUNTOS DE EQUILIBRIO 7

Evidentemente, si u = U = 0, no existe ningún punto de equilibrio para la variable de estadox(t). Sin embargo, si u = U 6= 0 entonces si existe un punto de equilibrio, el cual toma el valorx(t) = X(U) = −1/U .

Ejemplo 1.2: Dos o más puntos de equilibrioEl sistema descrito por

x = u(x2 − 2)

y = x

tiene para u = U 6= 0 solamente dos puntos de equilibrio ubicados en x = ±√

2. Sin embargo,si u = U = 0 entonces el sistema tiene infinitos puntos de equilibrio, ya que, en este caso, paracualquier x = X = constante, se cumple que dx/dt = 0.

Los conceptos estudiados en este capítulo, y en capítulos posteriores,serán ilustrados mediante modelos matemáticos cuyo origen puede ser físi-co o no. Consideremos el siguiente modelo simplificado de un avión en vuelohorizontal.

Primer modeloModelo 1: Avión en vuelo horizontalConsidere las ecuaciones diferenciales que describen la trayectoria de un avión que vuela des-cribiendo un círculo de radio R a una cierta altura sobre el nivel del mar (cuyo valor no interesa),en un plano de dos dimensiones paralelo al plano tangente a la tierra (ver Figura 1.2). El planotiene por funciones coordenadas x1 y x2, las cuales describen la posición del avión en cada in-stante. El parámetro de control es la función u, la cual representa la dirección del avión relativa alas coordenadas fijas (x1, x2), la cual puede cambiarse a voluntad. El modelo del sistema es elsiguiente:

x1 = V cosu

x2 = V senu

y =√x21 + x2

2 −R

(1.4)

La salida del sistema representa la distancia a un círculo imaginario, trazado sobre el plano, concentro en el origen de coordenadas y radio R.

Figura 1.2: Avión en vuelo horizontal

M

Ejemplo 1.3: Punto de equilibrio en el avión en vuelo horizontalEn este caso no existe ningún punto de equilibrio constante pues el par de ecuaciones diferen-ciales igualadas a cero representan, para un valor fijo U de u, un sistema incompatible que no

8 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

posee solución alguna. Si expresamos el sistema anterior en coordenadas polares, a partir de latransformación de coordenadas dada por:

ρ =√x21 + x2

2, θ = arctan

(x2

x1

)x1 = ρ cos θ, x2 = ρ sen θ

obtenemos:

ρ = V cos(θ − u)

θ = V sen(θ − u)

y = ρ−R

Es fácil ver que, para una dirección fija θ = Θ, el valor del control u = U = Θ produce unángulo de dirección constante, en equilibrio, dado precisamente por θ = Θ, a partir de la segundaecuación diferencial. Sin embargo, el radio vector crece o decrece a una rata constante V y por lotanto ρ no tiene equilibrio constante.

No queremos inducir al lector a pensar que lo común es que no se dispon-ga de puntos de equilibrio constantes para los sistemas dinámicos. La mayo-ría de los sistemas que trataremos (de origen eminentemente real: mecáni-co, eléctrico, químico, biológico, etc.) poseen puntos de equilibrio constantes.De hecho, la mayor parte de la tecnología de regulación automática en sis-temas de producción industrial está basada en esta sola premisa!

1.4. Sistemas de naturaleza física real

Veremos ahora algunos modelos en los cuales se establece, posiblementebajo algunas condiciones, un punto de equilibrio único.

Modelo 2: Gas confinado a un recipiente cerradoLa ecuación diferencial que describe los cambios de presión de un gas dentro de un tanque, delcual se permite cierto escape en régimen subcrítico, está dada por:

dP

dt= −

RTK0A0

V

√P0(P − P0) +

RT

Vu (1.5)

donde u es el volumen de gas por unidad de tiempo, con que se alimenta el tanque usando uncompresor. Este valor, se supone, no depende de la presión. La alimentación se lleva a cabo de talmanera que los cambios de presión del gas son suficientemente lentos como para considerarlosisotérmicos. V es el volumen del recipiente, A0 y K0 son constantes que dependen de la válvulade entrada y del gas considerado. R es la constante universal de los gases y T es la temperaturaa la que se lleva a cabo el proceso. P0 es igualmente una constante.

M

Ejemplo 1.4: Punto de equilibrio: Gas confinado a un recipiente cerradoEvidentemente, si no alimentamos gas alguno al tanque, u = U = 0, el punto de equilibrio de lapresión es P = P0. Si, por el contrario, inyectamos una cantidad constante de gas u = U 6= 0, elpunto de equilibrio para la presión resulta ser ahora:

P (U) = P0 +1

P0

(U

K0A0

)2

(1.6)

el cual es mayor que el valor de equilibrio anterior, como es lógico suponer.

alejandra
Highlight

1.4 SISTEMAS DE NATURALEZA FÍSICA REAL 9

Figura 1.3: Péndulo simple

Modelo 3: Péndulo sin amortiguamientoEl modelo de un péndulo simple sin amortiguamiento (ver Figura 1.3) está dado por:

x1 = x2

x2 = −mgL

Jcosx1 +

1

Ju

y = x1

(1.7)

donde x1 = θ, x1 = x2 = θ representan la posición y la velocidad angular de la barra respectoal eje de referencia. u representa el torque aplicado por un servomotor. m es la masa total dela barra concentrada en su centro de masa; g representa la aceleración de gravedad, L es ladistancia desde el origen hasta el punto cm y J corresponde al momento de inercia de la barrarespecto al centro de masa.

M

Ejemplo 1.5: Punto de equlibrio: Péndulo sin amortiguamientoEl punto de equilibrio para x2 es, simplemente, x2 = 0. Sin embargo, si u = U = 0, entonces paratodo valor del ángulo x1 que haga cosx1 = 0, tendremos infinitos puntos de equilibrio constantepara x1. En efecto, x1 = ±k π/2, k = 1, 2, 3, . . ., son puntos de equilibrio del sistema. Sinembargo, si restringimos el espacio de estados a una región donde x1 pertecenece al intervalox1 ∈ [π/2 − δ, π/2 + δ], para un δ suficientemente pequeño, entonces el sistema (1.7) poseeráun único punto de equilibrio sobre ese rango de valores. Fisicamente, este punto de equilibriocorrepondería a la posición vertical, inestable, del péndulo.

Modelo 4: Tanque de reacción biológica continuamente agitadoLas siguientes ecuaciones diferenciales describen el crecimiento del metanol en un tanque dereacción biológica continuamente agitado que utiliza organismos conocidos como metilomonas.Si x1 representa la densidad de células de metilomonas y x2 representa la concentración delmetanol, el sistema se describe como:

x1 =Aµx2

B + x2x1 − ux1

x2 = −Aσx2

B + x2x1 + u(Af − x2)

y = x2

(1.8)

donde u es la tasa de disolución del substrato y Af es la concentración del substrato en la ali-mentación del tanque, la cual puede ser considerada constante. Aµ y Aσ son constantes conoci-das.

M

alejandra
Highlight

10 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

Ejemplo 1.6: Punto de equilibrio del tanque de reacción biológicaPara valores constantes de la tasa de disolución, u = U , el sistema tiene dos puntos de equilibrioconstantes. Uno de ellos ubicado en (0, Af ) y el otro en:

x1 = X1(U) =Aµ

(AfAµ − (Af +B)U)

Aµ − U; x2 = X2(U) =

BU

Aµ − U(1.9)

Como hemos visto, no solo la existencia sino la naturaleza misma de lospuntos de equilibrio de un sistema no lineal dependen en alto grado delvalor del punto de equilibrio del control. En aquellos casos en que el puntode equilibrio de las variables de estado y la variable de salida sean calcula-bles en términos del valor U de la señal de entrada u, diremos que el pun-to de equilibrio se encuentra parametrizado por el valor del control. Talesparametrizaciones son muy importantes en la teoría de la linealización ysus extensiones recientes.

Sin embargo, la parametrización de los puntos de equilibrio no es potes-tativa únicamente en términos del valor constante de la señal de control.También es posible parametrizar la familia de puntos de equilibrio posiblesde un sistema en términos de un valor constante de alguna de las variablesParametrización

con respecto alestado

de estado en particular. Veamos el siguiente ejemplo.

Figura 1.4: Satélite mono-axial (cuerpo que gira alrededor de un eje mediante expulsiónde gases)

Modelo 5: Satélite mono-axial (Cayley-Rodrígues)Considérese un cuerpo que gira alrededor de un eje fijo en el espacio ingrávido accionado portorques, los cuales son producidos gracias a la expulsión controlada de gases, mediante un sis-tema de toberas de reacción adosadas al cuerpo en forma opuesta, tal como se ilustra en la Figura1.4. El modelo que se presenta está asociado al problema de orientación de un satélite mono-axialcuyo ángulo de orientación, respecto de un eje oblicuo no coincidente con el eje principal, se mideutilizando la representación de Cayley-Rodrígues dada por:

alejandra
Highlight

1.5 MODELOS EMPLEADOS A LO LARGO DEL TEXTO 11

x1 = 0,5 (1 + x21)x2

x2 =1

Ju

y = x1

(1.10)

donde x1 es el ángulo de orientación del satélite medido respecto de un eje oblicuo, no coincidentecon el eje principal; x2 es la velocidad angular respecto al eje principal; la variable u representa eltorque aplicado.

M

Ejemplo 1.7: Parametrización respecto a un estado X en equilibrioComo se observa, en el equilibrio, la entrada u está dada por U = 0 y, además, para los estadostenemos x1 = X1 (constante arbitraria) y x2 = 0. Evidentemente, en este caso el punto deequilibrio se parametriza en términos de la posición angular X1 y no del valor del control el cualdebe ser cero, necesariamente, en el equilibrio.

En este capítulo no insistiremos más en parametrizaciones particulares,pues ellas tendrán realmente importancia cuando estudiemos el método dela Linealización Extendida más adelante. Así en lo sucesivo, expresaremosel punto de equilibrio asociado al sistema (1.1) como un conjunto dado por(U,X, Y ). En ocasiones, cuando la salida no sea considerada en forma espe-cial o de manera explícita, simplemente nos referiremos al punto de equlib-rio mediante (U,X).

1.5. Modelos empleados a lo largo del texto

En esta parte presentaremos un número significativo de sistemas no li-neales controlados. A pesar de que esta lista puede estar incompleta, estosmodelos han sido escogidos de tal forma que sean representativos e ilustra-tivos de las diferentes áreas donde pueden encontrarse sistemas controla- Modelos de

naturalezaquímica,eléctrica,mecánica, etc.

dos, representados por medio de ecuaciones diferenciales ordinarias no li-neales. Estos ejemplos, y otros que presentaremos en secciones posteriores,serán empleados a lo largo del texto para ilustrar el diseño de las diferentesestrategias de control empleadas.

En lo sucesivo, se propone al lector, como ejercicio, verificar los pun-tos de equilibrio de algunos de estos sistemas, tengan sentido físico o no.Nótese que se podrán presentar complicaciones al momento de obtenerparametrizaciones particulares respecto del punto de operación deseado y,por lo tanto, se debe recurrir en algunos casos a métodos numéricos (¡y has-ta simulaciones!) para obtener los valores adecuados. Parametrización

del punto deequilibriorespecto decualquiervariable

Por razones de índole didáctico, hemos tratado de presentar aquellosmodelos que permitan, en lo posible, obtener parametrizaciones particula-res respecto a un valor nominal de la señal de control, u = U . Sin embargo,el lector también encontrará sistemas cuyo punto de equilibrio esta para-metrizado respecto al valor nominal de alguna variable específica, sea éstauna variable de estado particular xi = X, o de salida y = Y .

12 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

Figura 1.5: Esquema de un artefacto espacial que requiere control de su orientación aun valor deseado (θ = Θ)

Modelo 6: Control de la orientación de un artefacto espacialSupóngase que deseamos controlar la posición angular θ de un artefacto espacial, como el quese muestra en la Figura 1.5. Para controlar este artefacto se dispone de una tobera que puedegirar alrededor de su base sobre un pivote especial. El ángulo de orientación de la tobera respectoal eje principal del cuerpo de la astronave es β. La tasa de variación del ángulo de la tobera esdirectamente proporcional a u. L es la distancia desde el punto de apoyo de la tobera en el cuerpodel artefacto hasta el centro de gravedad de la nave (cg). Se supone que la fuerza F de reacción,debida a la expulsión de los gases de la combustión del motor del artefacto, está aplicada sobre elpunto de apoyo de la tobera. Como consecuencia de la fuerza F el artefacto gira alrededor de sucentro de gravedad en uno u otro sentido. El problema de control consiste en mantener el ánguloθ en un valor fijo Θ, usando como control la velocidad de variación u del ángulo β de la tobera.Los sistemas

aeroespacialessiempre hanconstituido unafuente muy ricade modelos ysistemas acontrolar

Las ecuaciones diferenciales que rigen el movimiento del sistema se obtienen de la segundaLey de Newton:

Jd2θ

dt2= torque neto aplicado = fuerza× brazo = F senβL (1.11)

El ángulo β crece, o decrece, de acuerdo al control aplicado u mediante la ley de variación:

dt= Ru (1.12)

donde R es una constante conocida que representa una cierta ganancia estática del actuador otransductor que convierte el comando u en velocidad de variación del ángulo β. Supondremos queexiste cierta limitación en los valores de u, los cuales adscribiremos, arbitrariamente, al intervalocerrado [−1, 1].

Las variables de estado del sistema se escogen como:

x1 = θ; x2 =dθ

dt= ω; x3 = β

A partir de las ecuaciones (1.11) y (1.12), el sistema no lineal se describe de la manerasiguiente:

x1 = x2

x2 =FL

Jsenx3

x3 = Ru

(1.13)

1.5 MODELOS EMPLEADOS A LO LARGO DEL TEXTO 13

M

Ejemplo 1.8: Punto de operación: dinámica del artefacto espacialEl punto de equilibrio del sistema, físicamente significativo, se obtiene haciendo cero el miembroderecho de cada ecuación de estado. Este resulta ser:

x1 = arbitrario = Θ; x2 = 0; x3 = 0;u = 0 (1.14)

Nótese que el valor x3 = ±kπ también califica como punto de equilibrio, pero no es fisicamentefactible “introducir la tobera dentro de la nave". De hecho, la posición angular de la tobera se deberestringir a valores que están contenidos estrictamente dentro del intervalo [−π/2,+π/2], es decir,−π/2 < βmın < β < βmax < +π/2.

Figura 1.6: Convertidor de potencia DC–DC tipo “Boost”

Modelo 7: Modelo promedio de un convertidor DC-DC del tipo “Boost”En la Figura 1.6 se presenta el circuito eléctrico correspondiente a un convertidor tipo “Boost” Los convertidores

de potenciaconstituyensistemas nolineales prácticospor excelencia

DC-DC de corriente continua. Este circuito se puede describir mediante el siguiente sistema deecuaciones de estado3:

x1 = −ω0x2 + uω0x2 + b

x2 = ω0x1 − ω1x2 − uω0x1

y = x2

(1.15)

donde x1 = I√L, x2 = V

√C, representan las variables normalizadas de la corriente de entrada

a la bobina L del convertidor y la tensión de salida del condensador C, respectivamente. b =E/√L > 0 es el valor numérico normalizado de la fuente externa de tensión constante E. Las

constantes ω0 = 1/√LC y ω1 = 1/RC reciben el nombre, respectivamente, de frecuencia natural

de oscilación del circuito LC de entrada y constante de tiempo del circuito RC de salida. Lavariable u denota la función de posición del interruptor, la cual actua como variable de control,tomando valores en el conjunto discreto 0, 1. Esta señal es sintetizada mediante transistores.

Consideremos el modelo promedio, con variables normalizadas, del convertidor tipo ”Boost”regulado mediante un esquema de conmutación por modulación de ancho de pulsos: Modelo promedio

del convertidorBoost

z1 = −ω0z2 + µω0z2 + b

z2 = ω0z1 − ω1z2 − µω0z1

y = z2

(1.16)

donde z1 representa la corriente normalizada promedio de entrada, z2 es la tensión normalizadopromedio de salida. La señal de control u, de tipo discontinuo, se reemplaza aquí por la función

3Nótese que este modelo es del tipo bilineal, es decir, presenta productos de la forma xiu.Se dice que un sistema de control es bilineal si, al observar el control y el estado independien-temente, el sistema es lineal en el control u y es lineal respecto al estado x.

alejandra
Highlight
alejandra
Highlight

14 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

continua µ, denominada relación de trabajo del conmutador electrónico. La variable de control µsatisface la relación de saturación 0 ≤ µ ≤ 1.

En electrónica de potencia, sobretodo en el caso de convertidores de potencia DC–DC, seacostumbra emplear este tipo de modelos promedios para control y análisis de los circuitos. Estosmodelos permiten aproximar “en promedio” el comportamiento real conmutado que presentan es-tos convertidores. Detalles sobre este tópico pueden ser encontrados en [SR89, SNLV89, KBBL90,SV91].

M

Ejemplo 1.9: Punto de equilibrio del modelo promedio del convertidor BoostEl punto de equilibrio se obtiene a partir del modelo del convertidor (1.16), para una relación detrabajo constante µ = U , resolviendo el siguiente sistema de ecuaciones (no lineales):

−ω0Z2 + U ω0Z2 + b = 0

ω0Z1 − ω1Z2 − U ω0Z1 = 0

De aquí resultan los valores constantes de corriente y tensión promedio normalizados:

µ = U ; Z1(U) =b ω1

ω20(1− U)2

; Z2(U) =b

ω0(1− U)(1.17)

Figura 1.7: Sistema de suspensión magnética

Modelo 8: Sistema de levitación magnéticaLa Figura 1.7 muestra un sistema de suspensión magnética que permite mantener levitada unaEste ejemplo será

utilizada muchasveces a lo largodel texto

pequeña esfera metálica de masam. El objetivo del controlador será regular el valor de la corrientei del circuito del electroimán, de tal forma que la esfera se mantenga suspendida a una distanciaconstante x = X del electromagneto. La tensión (voltaje) aplicado al circuito es v(t) y actúa comovariable de control.

Las ecuaciones diferenciales que describen el sistema están dadas por:

Ldi

dt= −Ri+ v(t)

md2x

dt2= mg − fm = mg −

ci2

x

(1.18)

donde i es la corriente del circuito y x es el desplazamiento de la esfera medido desde el elec-tromagneto. L es la inductancia del electromagneto y c es una constante conocida. La fuerza fm

de atracción que ejerce el magneto sobre la esfera se supone inversamente proporcional a la dis-tancia x y directamente proporcional al cuadrado de la corriente. La salida se obtiene a través de

1.5 MODELOS EMPLEADOS A LO LARGO DEL TEXTO 15

un fotosensor mediante el cual se realiza la medición de la altura de la esfera metálica suspendi-da en el aire. Este modelo aunque aproximado describe con cierta precisión el fenomeno de lalevitación magnética. Sin embargo, tal modelo no es válido para distancias muy pequeñas o cero.Véase la referencia [CKS93], donde se puede conseguir un enfoque muy similar al utilizado parala obtención de este modelo.

Escogemos como variables de estado y como variable de control del sistema a las siguientesvariables físicas,

x1 = x ; x2 = x ; x3 = i ; u = v(t) ,

y reescribimos las ecuaciones diferenciales anteriores (1.18) como un sistema de ecuacionesdiferenciales de primer orden, dado por

x1 = x2

x2 = g −c

m

x23

x1

x3 = −R

Lx3 +

1

Lu

y = x1

(1.19)

M

Ejemplo 1.10: Varias parametrizaciones del punto de equilibrio: sistema delevitación magnéticaLos puntos de equilibrio se obtienen igualando a cero los segundos miembros de las ecuacionesdiferenciales anteriores con u = U = constante. Obtenemos entonces los puntos de equilibrio entérminos de una parametrización del valor deseado X de la distancia:

x1 = X1(X) = X ; x2 = 0 ;

x3 = X3(X) =

√mgX

c; u = U(X) = R

√mgX

c

(1.20)

Una parametrización diferente está constituida por aquella que utiliza el valor constante U delcontrol. Tal parametrización está dada por:

x1 = X1(U) =cU2

mgR2; x2 = 0

x3 = X3(U) =U

R; u = U

Figura 1.8: Manipulador robótico de unión rígida

16 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

Modelo 9: Manipulador robótico de una sola unión rígidaConsidérese el manipulador robótico de una sola unión que se muestra en la Figura 1.8. El modelono lineal de este sistema se puede representar mediante las siguientes ecuaciones:

x1 = x2

x2 = −B

Jx2 −

c

Jsen(x1

N

)+

1

Ju

y = x1

(1.21)

donde x1 = θp(Posición angular), x2 = θp (velocidad angular), son las variables de estado yla variable de control está dada por el torque aplicado u = τ . El parámetro N corresonde alfactor de reducción angular del juego de engranajes que acopla el eje del motor al eje del brazomanipulador; B es el coeficiente de fricción viscosa y J es el momento de inercia; c es unaconstante empírica que iguala al triple del producto MgL, donde M es la masa del brazo, g es laaceleración de la gravedad y L es la distancia del eje al centro de masa del brazo manipulador.

M

Ejemplo 1.11: Varias parametrizaciones del punto de equilibrio: Manipu-lador robóticoEl punto de equilibrio del sistema (1.21), parametrizado con respecto a la posición angular desea-da X, está dado por:

x1(X) = X; x2(X) = 0; u = U(X) = c sen

(X

N

)(1.22)

El punto de equilibrio del sistema, parametrizado con respecto al torque nominal U que pro-duce la posición angular deseada X, está dado por:

x1 = X(U) = N sen−1

(U

c

); x2(U) = 0; u = U (1.23)

donde, evidentemente, debe cumplirse que U < c.

Modelo 10: Tanque de reacción continuamente agitado (TRCA)Considérese el siguiente modelo sencillo, de naturaleza no lineal, de un tanque de reacción contin-uamente agitado (continuous stirred tank reactor, en inglés) en el cual se lleva a cabo una reacciónquímica, en fase líquida, de carácter isotérmica entre multicomponentes:

x1 = −(1 +Da1)x1 + u

x2 = Da1x1 − x2 −Da2x22

y = x1 + x2

(1.24)

donde x1 representa la concentración normalizada (adimensional) CP /CP0 de una cierta especieP en el reactor. Designaremos por Y = CP0 a la concentración nominal total de las especies Py Q, medida en [mol.m−3]. La variable de estado x2 representa la concentración normalizadaCQ/CP0 de la especie Q. La variable de control u se define como la relación de la tasa de ali-mentación molar por unidad volumétrica de la especie P , designada mediante NPF , y la concen-tración nominal CP0 , es decir, u = NPF /FCP0 donde F es la tasa volumétrica de alimentaciónen [m3s−1]. Las constantes Da1 y Da2 se definen respectivamente como k1V/F y k2V CP0/Fsiendo V el volumen del reactor, en [m−3], y las constantes k1 y k2 son las constantes de primerorden, dadas en [s−1]. Se puede tomar como valores de las constantes Da1 = 1 y Da2 = 1.

M

Ejemplo 1.12: Punto de equilibrio: TRCAEl punto de equilibrio parametrizado en función de la concentración de la especie P es:

x1 = arbitrario = X, x2 =1

2Da2

[√1 + 4Da1Da2 − 1

]; u = (1 +Da1)X (1.25)

1.5 MODELOS EMPLEADOS A LO LARGO DEL TEXTO 17

Figura 1.9: Motor serie de corriente continua

Modelo 11: Motor serie de corriente continuaLa Figura 1.9 representa el diagrama esquemático de un motor de corriente continua que poseeconexión en serie de su circuito de armadura (subíndice a) y su circuito de alimentación del campo(subíndice f ). Las ecuaciones de estado que describen este sistema no lineal están dadas por:

x1 = x2

x2 =KmKf

Jx23

x3 = −KbaKf

Lfx2x3 −

Ra +Rf

Lfx3 +

1

Lfu

(1.26)

donde x1 = θ corresponde al ángulo del eje del motor, x2 = ω, es la velocidad angular del eje delmotor, x3 = ia = if representa la corriente común que fluye por los circuitos de armadura y delcampo. La señal de control u = VT corresponde a la tensión de alimentación de la red.

M

Ejemplo 1.13: Punto de equilibrio: Motor serie de corriente continuaEl punto de equilibrio del sistema (1.26), parametrizado respecto a uno de los estados, es elsiguiente:

x1 = arbitrario = X ; x2 = 0 ; x3 = 0 ; u = 0

Modelo 12: Control de un reactor de fisiónEl siguiente sistema no lineal representa, de manera muy aproximada, la dinámica de una reacciónatómica en un proceso de fisión nuclear:

x1 =u− β

Lx1 + λx2

x2 =β

Lx1 − λx2

(1.27)

donde x1 representa la población de neutrones, x2 es la población de “precursores” y la variablede control u recibe el nombre de reactividad. Los parámetros β, λ y L son constantes conocidas.

M

Ejemplo 1.14: Punto de equilibrio: Control de un reactor de fisiónEl objetivo del control planteado para el sistema (1.27) será el de mantener la población de neu-trones a un nivel constante N , preestablecido. El punto de equilibrio parametrizado en términosde la población deseada de neutrones N , está dado por:

x1 = X1(N) = N ; x2 = X2(N) =βN

λL; u = 0 (1.28)

18 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

Figura 1.10: Representación simplificada del comportamiento del TCP

Modelo 13: Control de congestión de datos en Internet: TCPEl protocolo de control de transmisión o TCP (siglas en inglés de Transmission Control Protocol)es el protocolo de transmisión de datos más utilizado hoy en día para el envío de datos en Internet.Los protocolos HTTP, FTP, etc., lo utilizan para hacer sus conexiones. Una conexión se estableceLos mecanismos

dinámicosinherentes aInternetconstituyen hoyen día una parteimportante delestudio en teoríade control

entre una computadora fuente y una destino. El comportamiento TCP se ilustra en la Figura 1.10.Después de enviado un paquete, el destino genera una señal ACK (acuse de recibo), de confir-mación de la recepción del mismo. Estudiemos la etapa de congestión. Si la fuente se encuentraenviando W paquetes (desde el punto de vista de la fuente, en la red están circulando en esteinstante n paquetes que no tienen acuse de recibo), se dice que la ventana de congestión de lafuente es de W paquetes. Por cada ACK, el tamaño de la ventana aumenta en 1/W . Al recibirun número de W acuses de recibo, se dice que ha transcurrido un RTT (round trip time por susiglas en ingés), y el TCP hace que la ventana, entonces, aumente a W +1. La ocurrencia de unapérdida de un paquete (no hay confirmación de recepción) constituye una indicación de que la redpuede estar congestionada, e inmediatamente el tamaño de la ventana se reduce a la mitad W/2.Es decir, si no hay pérdidas de paquetes el tamaño de la ventana aumenta de manera aditiva, ycuando hay pérdidas, el tamaño de la ventana se disminuye a la mitad (se multiplica por 1/2). Deesta forma, el TCP está incluido en los llamados algoritmos de incremento aditivo–decrementomultipllicativo o AIMD por sus siglas en inglés.

Este algoritmo ha sido intensamente estudiado en los últimos años, ver por ejemplo [Kel01,HMTG02]. Un modelo promedio propuesto, que representa de manera simplificada el comport-miento de este sistema es el siguiente [MASA04] (véase también [Low03]):

RTTdx

dt= ε

[a−

(a+

2b

2− bx

](1.29)

donde a es el parámetro de incremento aditivo y b es el parámetro de decremento multiplicativo;los valores nominales de estos parámetros son a = 1 y b = 1/2. Las variables x y µ, representanrespectivamente el tamaño de la ventana de congestión, medido en número de paquetes, y la tasatemporal de pérdida de paquetes (la entrada); el parámetro RTT está dado en segundos.

M

Ejemplo 1.15: Punto de equilibrio del TCPPara un valor constante de la tasa de pérdida de paquetes µ = U = RTT/T , el punto de equilibriodel sistema (1.29) está dado por:

X =a(2− b)

2b

1− U

U=a(2− b)

2b

(T

RTT− 1

)(1.30)

Modelo 14: Proceso de producción de etanolUn proceso de fermentación de azucar para la producción de etanol se describe mediante el

1.5 MODELOS EMPLEADOS A LO LARGO DEL TEXTO 19

siguiente par de ecuaciones diferenciales ordinarias:

x1 = x2 − x1u

x2 = −x2 + (1− x2)u(1.31)

donde x1 representa la concentración de etanol, x2 describe la concentración de azúcar y u es latasa de alimentación del substrato que actúa como variable de control.

M

Ejemplo 1.16: Punto de operación: proceso de producción de etanolSe desea regular la concentración de etanol a un valor constante x1 = E. El punto de equilibriodel sistema se obtiene a partir de las ecuaciones diferenciales, igualando a cero las derivadas delas variables de estado:

x1 = X1(E) = E; x2 = X2(E) = 1− E; u = U(E) =1− E

E(1.32)

Puesto que ambas concentraciones deben ser, necesariamente, positivas; tenemos las si-guientes restricciones en equilibrio para el sistema:

0 < X1(E) = E < 1; U > 0; 0 < X2(E) < 1 (1.33)

Modelo 15: Sistema de nivel de líquido en un conjunto de tanques dis-puestos en cascadaConsidere el problema general de controlar la altura del líquido en el último tanque Tn, de unaserie de n tanques idénticos y no interactuantes, cuya entrada u(t) está representada por el flujo(no negativo), u ≥ 0, entregado al primer tanque y la salida está constituida por la altura del líquidoen el n-ésimo tanque. Si designamos por xi la altura en el i-ésimo tanque, el modelo dinámico quedescribe el sistema es el siguiente:

x1 = −c

A

√x1 +

1

Au

xi = −c

A

√xi +

c

A

√xi−1 ; i = 2, 3, . . . , n

y = xn

(1.34)

donde c es una constante que representa la resistencia a la salida de líquido y A es el área de labase de cualquiera de los tanques.

M

Ejemplo 1.17: Punto de equilibrio: Sistema de nivel de líquido en tanquesPara un valor constante del flujo de entrada u = U , el punto de equilibrio del sistema es, simple-mente:

u = U ; xi(U) = Xi(U) =U2

c2; i = 1, 2, . . . , n ;

y(U) = Y (U) =U2

c2

(1.35)

Modelo 16: Posición de un anillo sobre un aro rotatorioConsiderese el caso de un anillo que se desliza sin roce sobre un aro que se puede hacer girar avelocidad angular ω, regulable a voluntad (ver Figura 1.11).

Se desea mantener el valor del ángulo θ en un valor constante deseado dado por θ = Θ. Lavariable de control en este caso esta constituida por el cuadrado de la velocidad angular u = ω2.El radio del aro, que se supone indeformable por efecto de la fuerza centrífuga, está dado por a.

El modelo del sistema está dado por:

ad2θ

dt2= −g sen θ + aω2 sen θ cos θ

alejandra
Highlight
alejandra
Highlight

20 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

Figura 1.11: Aro rotatorio sobre el que desliza un anillo cuya posición angular se deseacontrolar

Este modelo lo podemos reescribir de la manera siguiente:

x1 = x2

x2 = −g

asenx1 + u senx1 cosx1

(1.36)

M

Ejemplo 1.18: Posición de equilibrio de un anillo sobre un aro rotatoriopara una velocidad U constanteAl parametrizar en términos de la posición angular x1 = Θ, el punto de equilibrio se expresacomo:

x1(X) = X = Θ; x2(X) = 0; u(X) = U =g

a cosX(1.37)

Debemos recalcar que el punto de equilibrio x1 = 0 carece de interés, pues para lograrlo bastacon detener el movimiento del aro alrededor de su eje.

Para un valor fijo u = U del cuadrado de la velocidad angular tenemos el siguiente punto deequilibrio:

x1(U) = arc cos( g

aU

); x2(U) = 0; u = U

Es fácil ver que Θ no puede adoptar por valores de equilibrio ±π/2,±3π/2, . . . , (2k + 1)π/2para i = ±1,±2, . . .. Para estos puntos de equilibrio es necesario imprimirle al aro una velocidadangular infinitamente grande, lo cual es imposible físicamente. Igualmente, en (1.36) se puedever que para los valores antes mencionados, se hace cero el término que acompaña al control,anulando el canal de entrada al sistema y perdiendo, por ende, la controlabilidad.

1.6. Ejercicios propuestos

En esta sección se presentan algunos ejercicios asociados al contenidoestudiado en este capítulo. Nuestro objetivo es permitirle al estudianteaplicar y/o profundizar los conceptos ilustrados a lo largo del texto.

Ejercicio 1.1: Modelado de un sistema masa–resorte–amortiguadorModele el sistema de dos masas de la Figura 1.12 y obtenga una representación

en variables de estado de dicho modelo. Considere dos casos,

1.6 EJERCICIOS PROPUESTOS 21

Figura 1.12: Sistema masa–resorte–amortiguador

1. Caso lineal: Los términos g1, g2, k1, k2 son constantes y permiten obtenerrelaciones lineales en el modelo.

2. Caso no lineal: asumimos que g1(·) y g2(·) son funciones que representanla característica de cada resorte, es decir, representan fuerzas en función dela elongación del resorte de tal manera de considerar los llamados resortessuaves y resortes duros:

g1(ε) = a1ε+ b1ε3

g2(ε) = a2ε+ b2ε3

donde ε se corresponde a la elongación del resorte.

Obtenga los puntos de equilibrio del sistema.(?)

Ejercicio 1.2: Modelo en variables físicas originales del convertidor BoostConsidere el Modelo 7 en la página 13. A partir del circuito mostrado en la

figura 1.6, obtenga el modelo del circuito Boost, en términos de la tensión Vc en losterminales del condensador y de la corriente IL que atraviesa la bobina. Compruebeque el modelo normalizado (1.15) se obtiene a partir de éste.

Ayuda: En la página web http://www.ing.ula.ve/~marquez/snl/ se encuentrauna descripción y algunos ejemplos acerca del modelado de este tipo de circuitos.

(??)

Ejercicio 1.3: Convertidor Cuk: modelo en variables físicas originalesEn el artículo H. Sira-Ramírez y M.T. Prada-Rizzo, "Nonlinear Feedback Regu-

lator Design for the Cuk Converter,"IEEE Transactions on Automatic Control. vol.37, pp. 1173-1180, 1992, [SRPR92], aparece el modelo normalizado de un conver-tidor de potencia Cuk. Obtenga el modelo en variables físicas originales a partir de

22 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

las leyes de Kirchoff. Tome como variables de estado las intensidades de corrienteen las bobinas, IL1 e IL2 , y la tensión Vc en el condensador. Compare con el modelonormalizado presentado en ese artículo.

(?)

Ejercicio 1.4: Modelado de un circuito con una resistencia no lineal

Figura 1.13: Circuito de Chua controlado

Obtenga las ecuaciones diferenciales que representan el comportamiento del cir-cuito mostrado en la Figura 1.13. ¿Cuál es el punto de equilibrio resultante para unvalor constante de la fuente If = constante? La tensión V en los extremos de laresistencia no lineal RN corresponde a una función no lineal de la corriente i quecircula por la resistencia, dada por V = f(i). (??)

Ejercicio 1.5: Modelos de sistemas de levitación magnéticaSe sugiere al lector revisar algunos modelos diferentes al Modelo 8 en la pági-

na 14. Considere por ejemplo las siguientes referencias: D. Cho, Y. Kato, D. Spilman,“Sliding mode and classical controllers in magnetic levitation systems”, IEEE Con-tr. Syst. Mag., vol. 13, pp. 42–48, 1993; D. L. Trumper, S. M. Olson, P. K. Subrah-manyan, “Linearizing control of magnetic suspension systems”, IEEE Trans. Contr.Syst. Technol., vol. 5, pp. 427–438, 1997. (??)

Modelo 17: Esfera sobre rielSe desea balancear una esfera montada sobre el riel de una barra metálica, de tal forma dellevarla al medio de la barra. Ver Figura 1.14. Al aplicar un torque al centro de rotación, la barrapuede rotar sobre el plano. La esfera puede desplazarse libremente sobre la barra. La esfera debepermanecer en contacto con el riel, sin deslizar. Escogiendo θ, el ángulo de la barra respecto ala horizontal, y r, la posición de la esfera, se obtienen las siguientes ecuaciones lagrangianas delmovimiento:

0 =

(Jb

R2+M

)r +Mg sen θ −Mrθ2

τ = (Mr2 + J + Jb)θ + 2Mrrθ +Mgr cos θ

(1.38)

donde τ es el torque o par aplicado a la barra; J es el momento de inercia de la barra; M y Jb

son, respectivamente, la masa y el momento de inercia de la esfera; el radio de la esfera es R y ges la aceleración de gravedad.

1.7 RESUMEN DEL CAPÍTULO Y LECTURAS ADICIONALES 23

Figura 1.14: Balanceo de una esfera sobre una barra

El modelo (1.38) puede simplificarse si se reemplaza el momento τ . Haciendo θ = u, de talforma que

τ = (Mr2 + J + Jb)u+ 2Mrrθ +Mgr cos θ (1.39)se obtiene entonces

0 =

(Jb

R2+M

)r +Mg sen θ −Mrθ2

θ = u

(1.40)

Los valores numéricos de los parámetros están dados por:M = 0,05 kg,R = 0,01 m, J = 0,02 kg-m2, J = 2 · 10−6 kg-m2 y g = 9,81 m/s.

M

Ejercicio 1.6: Espacio de estado y punto de equilibrio de la dinámica de laesfera sobre el riel

Obtenga la representación en el espacio de estados para cada uno de los modelos(1.38) y (1.40), con entradas τ y u, respectivamente, usando las siguientes variables:x1 = r, x2 = r, x3 = θ y x4 = θ. La salida está dada por y = r. Calcule los puntos deequilibrio para cada sistema resultante.

(?)

1.7. Resumen del capítulo y Lecturas adicionales

En este capítulo se presentan algunos modelos ilustrativos que seránempleados a lo largo del texto para ilustrar los diferentes conceptos y dise-ños propuestos. Estos ejemplos sirven de base para el estudio del conceptode punto de equilibrio, una de las caracteríticas que será necesario tenerbien clara en el desarrollo de las estrategias de control presentadas poste-riormente.

Un tema íntimamente relacionado al contenido de este capítulo, aunqueno lo hemos desarrollado directamente, es el modelado de sistemas físi-cos reales mediante ecuaciones diferenciales ordinarias, también lla-mado modelado de procesos continuos.

24 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

La clave del modelado de procesos continuos, sean éstos de origen eléc-trico, mecánico, químico, biológico o de otra índole, está basada en cincoaspectos fundamentales:

Conocer de antemano cuál será el uso que se le va a dar al modelo:Usodiseño de leyes de control, análisis del comportamiento del proceso,estimación de variables difíciles de medir, etc. Esto puede permitirtener una idea de los alcances del modelo y de la precisión con la cualse ejecutará el procedimiento de modelado.

En lo posible, conocer exhaustivamente el proceso. Esto viene de es-Conocerel proceso tudiar el sistema y subsistemas (planta, sensores, y actuadores) y los

posibles efectos e interrelaciones involucrados.

Aplicar los principios de la física, la química, la termodinámica, etc.,traducidos finalmente en las ecuaciones de balance de masa, energíaBalance de masa

y energía y/o información.

Proponer y fijar hipótesis simplificatorias razonables para hacer queHipótesissimplificatorias el modelo del sistema sea manejable o sea, al menos, de mediana com-

plejidad.

Adicionalmente, el ingeniero o “modelador” debería tener una ideaclara de sus propias limitaciones (falta de interés, poco conocimien-Limitaciones

del modelador to del área, etc.) al acometer esta tarea. En este caso, lo más impor-tante es estar conciente de que será necesario buscar la ayuda de unexperto!

Para afianzar algunos de estos conceptos existen amplias y detalladasreferencias al respecto. Puede ser de utilidad revisar e investigar la in-formación contenida en textos de circuitos lineales y no lineales, textos demecánica racional (estática y dinámica), textos sobre procesos químicos (laparte referida a modelos dinámicos representados por ecuaciones diferen-ciales ordinarias), etc. Muchos de los textos relacionados con el control desistemas lineales o no lineales proveen habitualmente algunos lineamien-tos básicos para enfrentar satisfactoriamente el modelado de cierto tipo desistemas.

Al momento de acometer un proyecto de modelado, en el cual se necesitaEl modelo seráutilizado parahacer control

obtener un modelo suficientemente preciso de una planta o proceso real,para ser utilizado, por ejemplo, para el diseño de leyes de control en unproceso industrial, hace falta tener conocimientos más sólidos y algo másde experiencia.

Una buena práctica consistiría en replantear el modelado de algunosde los ejemplos presentados hasta este momento y entender cómo se obtuvocada modelo y cuáles fueron las hipótesis simplificatorias involucradas (estose deja como ejercicio al lector).

A continuación se ejemplifica el modelado de dos sistemas físicos bienconocidos. Se presenta, a través de un péndulo simple, un procedimiento de

1.7 RESUMEN DEL CAPÍTULO Y LECTURAS ADICIONALES 25

modelado clásico basado en la ecuación de Euler-Langrange. Balances demasa y energía se estudian por medio de un tanque de reacción continua-mente agitado.

Modelo 18: Ecuaciones de Euler Lagrande: Péndulo simpleEn este ejemplo se ilustrará el uso la ecuación de Euler–Lagrange para el modelado de sistemasfísicos.

La ecuación de Euler–Lagrange es la siguiente:

∂L∂θ

−d

dt

∂L∂θ

= T (1.41)

donde el lagrangiano L se define como L = Ep−Ec, energía potencialEp menos energía cinéticaEc, y T representa la sumatoria de fuerzas externas que afectan al sistema dado.

Asumiendo una barra rígida, distribuida uniformemente, se puede suponer que la masa delpéndulo se concentra en la mitad de la barra de longitud 2l (una hipótesis que perfectamentepuede variar de acuerdo a la geometría y características propias del péndulo en cuestión). Ver,por ejemplo, Figura 1.3.

De esta forma, tenemos:

Ep = −mgh = −mgl cos θ

Ec =1

2m(x2 + y2) =

1

2m((l cos θθ)2 + (l sin θθ)2) =

1

2ml2θ2

donde x = l sin θ, y = −l cos θ. Por lo tanto,

L = −mgl cos θ −1

2ml2θ2 (1.42)

La única fuerza externa está dada por T = T = u (el torque aplicado externamente). A partirde (1.41) y (1.42) se deduce el módelo dinámico del péndulo simple (compare con el Modelo 3 ,en la página 9):

mgl sin θ +ml2θ = T

o equivalentementeml2θ = T −mgl sin θ

donde ml2 representa la momento de inercia J respecto al eje de giro del péndulo (J = ml2).Haciendo x1 = θ, x2 = θ en la ecuación (18) se obtiene la siguiente representación del

péndulo en variables de estado (compare con (1.7)):

x1 = x2

x2 =T

J−mgl

Jsenx1

Este modelo se puede completar si consideramos, además, la presencia de roce en el eje delpéndulo (bθ) y la elasticidad del mismo (kθ), de tal forma que en el sistema anterior se agregan altorque T , la fuerza de roce −bθ y la fuerza elástica −kθ.

M

Modelo 19: Hipótesis simplificatorias y balances de masa y energía: TRCA,modelo 2En la Figura 1.15 se presenta un esquema de un tanque de reacción continuamente agitado dondela reacción A→ B es exotérmica y de orden n.

Consideremos las siguientes hipótesis:

El volumen del fluido en el TRCA es constante, su temperatura es homogénea gracias a laagitación.

La chaqueta en adiabática.

La capacidad calorífica de la pared del tanque es despreciable respecto a la del líquido.

Las capacidades caloríficas son independientes de la temperatura así como de las densi-dades.

26 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

Figura 1.15: Tanque de reacción continuamente agitado

El vapor es saturado, el condensado está en equilibrio con el vapor.

El reactor y la chaqueta, se unen perfectamente.

Los volúmenes y las propiedades físicas son constantes.

Se consideran despreciables las pérdidas de calor.

Las ecuaciones que modelan el comportamiento dinámico del sistema, resultantes de losrespectivos balances de masa y energía, están representadas por:

Balance de masa del reactante A

VdCA

dt= F

(CAi

− CA

)− V k(T )Cn

A (1.43)

donde k(T ) = k0 exp(− ER(T+273,16)

).

Balance de energía en el tanque

CpV ρdT

dt= CpFρ(Ti − T )−∆HRV k(T )Cn

A − UA(T − TC) (1.44)

Balance de energía en la chaqueta

CpCVCρCdTC

dt= UA(T − TC)− FC CpCρC

(TC − TCi

)(1.45)

En las ecuaciones anteriores, u = FC ≥ 0 representa la señal de control (manipulada); CA

es la variable controlada y T representa la variable medida o salida. En la Tabla 1.1 se puedeobservar el significado físico de cada una de las variables y parámetros. Sugerencia: Escriba elmodelo obtenido en variables de estado.

M

1.7 RESUMEN DEL CAPÍTULO Y LECTURAS ADICIONALES 27

Tabla 1.1: Nomenclatura empleada para el TRCA, modelo 2Notación Descripción

VARIABLES DE ESTADO Y CONTROL:T temperatura en el tanque [ C]CA concentración del reactanteTC temperatura de la chaqueta [ C]FC Flujo de entrada del refrigerante —señal de control

[m3/seg]PARÁMETROS:

V volumen del tanque [m3]ρ densidad del fluido en el tanque [kg-mol/m3]Cp capacidad calórica del reactante [J/kg-mol C]A área del tanque [m2]ρc densidad del refrigerante [kg/m3]k0 constante de Arrhenius [m3/seg kg-mol]∆HR calor de reacción [J/kgmol]U coeficiente de transferencia de calor tanque–chaqueta

[J/s m2 C]VC volumen en la chaqueta [m3]CpC calor específico del refrigerante [J/kg C]E energía de activación de la reacción [J/kgmol]F flujo de entrada al tanque [m3/s]CAi concentración del reactante en el flujo de entrada

[kgmol/m3]Ti temperatura del flujo de entrada [ C]R constante de los gases [J/kgmol K]TCi

temperatura del refrigerante

28 ALGUNOS MODELOS DE SISTEMAS NO LINEALES

Lecturas y referencias útiles1. L. Ljung, T. Glad, Modeling of Dynamic Systems, Prentice Hall, En-

gllewood Cliffs, NJ, E.E.U.U., 1994, [LG94]. Comienza con una dis-cusión sobre sistemas y modelos, a partir de allí desarrolla diferentesejemplos (de tipo eléctrico, mecánico, de flujo, térmico, etc.). Se di-vide en dos partes: Modelado físico e identificación. Muy completodesde el punto de vista metodológico. Emplea un enfoque de diseñoelemento por elemento. Inluye además la metodología de diseño me-diante “Bond Graphs” y el modelado mediante herramientas computa-cionales.

2. K. Ogata, Dinámica de Sistemas, Prentice-Hall HispanoamericanaS.A., México, 1987, [Oga87]. Presenta los diferentes procedimientos demodelado asociados a sistemas eléctricos, mecánicos, hidráulicos, etc.,y sus respectivas analogías. Concluye con una introducción al análisisy control de sistemas lineales.

3. S. Walas, Modeling with Differential Equations in Chemical Engi-neering, Butterworth-Heinemann, Boston, 1991, [Wal91]. Presenta losprincipios de modelado matemático para sistemas químicos, tanto des-de el punto de vista estático como dinámico. Entre los tópicos tratadosincluye termodinámica, transferencia de calor, dinámica de fluidos yreacciones químicas. Presenta además una introducción al control desistemas químicos.

4. (En diferentes capítulos haremos referencia a enlaces y páginas WEB,en Internet, donde se puede conseguir información complementaria,relacionada con los temas tratados en cada parte.) Enlace WEB:www.mechatronics.me.vt.edu/book/Section3/motormodelling.html.En este enlace se presenta el desarrollo del modelo matemático de unmotor de corriente continua (DC), incluyendo indicaciones para iden-tificar los parámetros de este tipo de motores. Presentación muy com-prensible, bien explicado.

5. Como ya hemos indicado, se sugiere al lector indagar sobre mode-los promedios de convertidores, por ejemplo, en: S.R. Sanders, J.M.Noworolski, X.Z. Liu, G.C Verghese, “Generalized averaging methodfor power conversion circuits”, Trans. Power Electronics, vol. 6, no. 2,pp. 251–259, 1991, [SNLV89]; P.T. Krein, J. Bentsman, R.M. Bass, B.L.Lesieutre, “On the use of averaging for the analysis of power electron-ic systems”, Trans. Power Electronics, vol. 5, no. 2, pp. 182–190, 1990,[KBBL90]. Otra referencia interesante es [SR89].

6. Visite la página web http://www.ing.ula.ve/~marquez/snl/. En lamisma encontrará informaciones adicionales y enlaces actualizadosreferidos al modelado de sistemas físicos y a otros temas relacionados.

Parte IControl Lineal

de Sistemas No Lineales:Linealización Aproximada

29

30 CONTROL LINEAL DE SISTEMAS NO LINEALES: LINEALIZACIÓN APROXIMADA

En esta primera parte, vamos a plantear el análisis y diseño de con-troladores del tipo lineal, es decir, leyes de control lineales para regularsistemas de naturaleza eminentemente no lineal.

Los lineamientos mediante los cuales analizaremos los sistemas dinámi-cos no lineales, y sobre los cuales propondremos lazos de control en reali-mentación, son los siguientes:

Consideraremos el sistema no lineal desde el punto de vista de la des-cripción por variables de estado y determinación de los puntos de equi-librio constantes del sistema no lineal dado.Sistema

linealizadoalrededor de unpunto deequilibrio

Descripción aproximada de los efectos de las perturbaciones del estadoinicial y de las entradas al sistema mediante un modelo lineal dinámi-co de estado, el cual puede ser representado mediante la descripciónen variables de estado o mediante funciones de transferencia.

Utilización del modelo lineal obtenido en la prescripción de leyes decontrol realimentadas estabilizantes de las trayectorias del estado,perturbadas alrededor de la trayectoria de equilibrio.

En el primer capítulo se presenta el método de la linealización aproxi-mada: a partir del modelo no lineal se obtiene un modelo linealizado delsistema estudiado mediante una aproximación de primer orden de la ex-pansión en serie de Taylor. En los capítulos subsecuentes, la aproximaciónlineal obtenida será empleada para proponer, diseñar y ajustar esquemasde control realimentado para los sistemas no lineales originales. Fun-damentalmente trataremos sistemas de una entrada y una salida. Prime-ramente se considerará la medición completa del vector de estados y luegosolo medición de una variable o salida particular.

Los esquemas propuestos se clasificarán de la siguiente manera:Controladoreslineales

Esquemas o leyes de control basados en la descripción o representaciónen el espacio de estados:

1. Control mediante realimentación del vector de estados.2. Control mediante la realimentación de la salida utilizando

Observadores dinámicos de estado (observadores de orden com-pleto y de orden reducido).

Síntesis basada en la respuesta frecuencial (esquemas de control clási-co basados en la función de transferencia):

1. Controladores P, PI, PID2. Esquema controlador–observador clásico3. Redes compensadoras como compensadores por adelanto.

2

Linealización aproximada

Foto

Introduciremos la técnica de linealización aproximada medianteuna representación integral de las ecuaciones de estado. Propon-dremos ver al sistema no lineal como una ecuación integral yanalizaremos el efecto de pequeñas perturbaciones alrededor deun punto de equilibrio constante.

Despreciando los términos de orden superior del efecto de talesperturbaciones y reteniendo solamente los términos lineales, pre-sentaremos en un solo esquema la linealización que aproxima elcomportamiento del sistema perturbado.

El esquema conceptual presentado será utilizado en capítulos sub-secuentes para el diseño de acciones de regulación para el sistemano lineal.

Recomendamos al lector, a medida que vaya avanzando en el tex-to, hacer uso de herramientas computacionales para confirmar oavalar los resultados teóricos que se le proponen. En este capítulo,presentaremos nuestro primer ejemplo de simulación en el progra-ma Matlab (R).

31

32 LINEALIZACIÓN APROXIMADA

2.1. Motivación

Los fenómenos de naturaleza no lineal son susceptibles de aproxima-ciones lineales cuyo valor práctico es innegable. Nuestra comprensión delmundo circundante y las leyes que en él adivinamos son meras aproxima-ciones que tienden a extraer la parte más relevante de su naturaleza, lamayoría de las veces para poder explotarlas en nuestro beneficio inmedia-to. Tales aproximaciones se sustentan como modelos válidos de una realidadrestringida que no ha sido contradicha por la experiencia cotidiana.

En este capítulo, nos proponemos utilizar sistemas de ecuaciones dife-renciales lineales que aproximen, tanto en una región restringida del espa-cio de estado, y/o del espacio de las entradas y de las salidas del sistema,el comportamiento descrito por el conjunto de ecuaciones diferenciales nolineal original.

Es necesario acotar que en el análisis del comportamiento de sistemasdinámicos no lineales, el método de la linealización aproximada será útil enla vecindad de su punto de equilibrio, siempre y cuando las perturbacionesque afectan la evolución del sistema sean suficientemente pequeñas.La linealización

aproximada en elanálisis y diseñode estrategias decontrol

Como veremos en capítulos posteriores, el método de la linealizaciónaproximada también es útil no sólo en el análisis sino, en particular, en eldiseño de estrategias de control que mantengan la evolución del sistemaen un entorno alrededor del punto de equilibrio nominal.

2.2. Linealización aproximada:expansión en serie de Taylor

Consideremos nuevamente el sistema no lineal (1.1):

x(t) = f(x(t), u(t)), x(t0) = x0

y(t) = h(x(t))

cuyos puntos de equilibrio son constantes y están dados por (U,X, Y ). Escri-biremos el sistema de ecuaciones diferenciales dado en términos de la ecuaciónintegral equivalente, de la manera siguiente:

x(t) = x0 +∫ t

t0

f(x(σ), u(σ))dσ

y(t) = h

(x0 +

∫ t

t0

f(x(σ), u(σ))dσ

) (2.1)

Esta representación tiene sus ventajas al momento de evaluar el efectocausado sobre los estados y las salidas debido a posibles perturbaciones quese sucedan en el estado inicial x0 y en la función de entrada u(t).

Supondremos que el sistema dinámico se encuentra operando en per-fecto equilibrio (recuerde la noción de punto de equilibrio dada en la sec-

alejandra
Highlight
alejandra
Highlight

2.2 LINEALIZACIÓN APROXIMADA: EXPANSIÓN EN SERIE DE TAYLOR 33

ción 1.3). Esto se traduce en lo siguiente:

x(t0) = x0 = X; u(t) = U ; y(t) = h(x) = Y

Es decir, el estado inicial en que encontramos operando al sistema en elinstante t0 coincide enteramente con el estado de equilibrio constante X,el cual se produce de manera inmutable (si el sistema es asintóticamenteestable) sobre la base de sustentar la entrada constante u = U durante unperíodo de tiempo indefinidamente grande1.

Ahora consideremos sendas “perturbaciones”, tanto en el estado inicialde equilibrio x0 = X, como en la función de entrada de equilibrio u(t) = U ,descritas de la manera siguiente:

x(t0) = x0 + x0δ = X + x0δ; u(t) = U + uδ(t)

Con estas perturbaciones acaecidas alrededor de los valores de equili-brio, consecuentemente, se suceden cambios o perturbaciones tanto en elestado de equilibrio constante del sistema x(t) = X como en el valor de lasalida y(t) = Y . Utilizando el sistema de ecuaciones (2.1), el estado pertur-bado y la salida perturbada pueden ser descritos mediante:

x(t) = X + x0δ +∫ t

t0

f(X + xδ(σ), U + uδ(σ))dσ

y(t) = h(X + xδ(t))(2.2)

La expresión (2.2) constituye una representación exacta del efecto de lasperturbaciones. Ciertamente esta representación no es muy útil puesto quesigue describiendo mediante una ecuación integral no lineal el valor delnuevo estado x(t) = X + xδ(t) y como una relación no lineal el valor de lanueva salida y(t) = Y + yδ(t).

En efecto, a partir de (2.2) y de las definiciones que acabamos de dar delestado perturbado y la salida perturbada, obtenemos:

xδ(t) = x0δ +∫ t

t0

f(X + xδ(σ), U + uδ(σ))dσ

yδ(t) = h(X + xδ(t))− h(X)

Será preferible, por lo tanto, utilizar una aproximación lineal de estasrelaciones. Sabemos que, en virtud del teorema de expansión en serie de Expansión en

serie de TaylorTaylor, podemos escribir los valores perturbados de las funciones f(·) y h(·)como:

f(X + xδ(t), U + uδ(t)) = f(X, U) +∂f

∂x

∣∣∣∣(X,U)

xδ(t) +∂f

∂u

∣∣∣∣(X,U)

uδ(t)

+ . . . + T.O.S.

h(X + xδ(t)) = h(X) +∂h

∂x

∣∣∣∣X

xδ(t) + . . . + T.O.S.

1Aquí se puede notar de manera evidente el porqué de nuestro interés en puntos de equili-brio constantes!

34 LINEALIZACIÓN APROXIMADA

donde T.O.S. significa “términos de orden superior”.Tomando en cuenta que f(X, U) = 0, la cual viene de la definición de

punto de equilibrio, podemos calcular el valor del estado perturbado como

xδ(t) = x0δ +∫ t

t0

[∂f

∂x

∣∣∣∣(X,U)

xδ(t) +∂f

∂u

∣∣∣∣(X,U)

uδ(t) + . . . + T.O.S.

]dσ

y de la salida perturbada,

yδ(t) =[h(X) +

∂h

∂x

∣∣∣∣X

xδ(t) + . . . + T.O.S.

]− h(X)

=∂h

∂x

∣∣∣∣X

xδ(t) + . . . + T.O.S.

Si truncamos la serie de Taylor y despreciamos los términos de ordensuperior utilizados en las fórmulas anteriores, es evidente que, tanto enla ecuación integral del estado perturbado como en la ecuación de salida,obtendremos sólo una aproximación (lineal en este caso) a los valores dexδ(t) y de yδ(t).

Adoptaremos como valor aproximado de xδ(t) al valor xδ(t) el cual ob-tenemos al eliminar todos los términos de orden superior en la ecuaciónintegral, es decir:

xδ(t) = x0δ +∫ t

t0

[∂f

∂x

∣∣∣∣(X,U)

xδ(t) +∂f

∂u

∣∣∣∣(X,U)

uδ(t)

]dσ

yδ(t) =∂h

∂x

∣∣∣∣X

xδ(t)

Nótese que xδ(t) no es exactamente igual a xδ(t) y otro tanto sucede conyδ(t) y yδ(t). Sin embargo, no estableceremos diferencia entre el valor de laperturbación y el valor aproximado de la misma obtenido en (2.3).

Asumiremos, entonces, como valor perturbado del estado y como valor dela perturbación de la señal de salida, a la solución de la ecuación integral ya la relación lineal descritas en (2.3), es decir,

xδ(t) = x0δ +∫ t

t0

[∂f

∂x

∣∣∣∣(X,U)

xδ(t) +∂f

∂u

∣∣∣∣(X,U)

uδ(t)

]dσ

yδ(t) =∂h

∂x

∣∣∣∣X

xδ(t)

(2.3)

2.3. Sistema linealizado: espacio de estado

De esta forma, designaremos mediante la matriz A de n filas y n colum-nas, la matriz Jacobiana ∂f/∂x particularizada en el punto de equilibrio

2.3 SISTEMA LINEALIZADO: ESPACIO DE ESTADO 35

constante (X, U). Mediante el vector B de n filas designaremos al vector∂f/∂u evaluado en (X, U). Igualmente, designaremos mediante el vector fi-la C al vector ∂h/∂x, evaluado en X. De tal forma que las ecuaciones en(2.3) se reescriben entonces

xδ(t) = x0δ +∫ t

t0

(A xδ(σ) + B uδ(σ)) dσ

yδ(t) = C xδ(t)(2.4)

Si tomamos derivadas respecto del tiempo en esta ecuación integral, ob-tenemos una ecuación diferencial equivalente para xδ(t):

xδ(t) = A xδ(t) + B uδ(t) ; xδ(t0) = x0δ

yδ(t) = C xδ(t)(2.5)

Para dicho sistema de ecuaciones diferenciales, puede observarse que hemostomado en cuenta como condición inicial en t = t0, el valor x0δ = x0 −X.

La ecuación diferencial en la expresión (2.5) representa un sistema deecuaciones diferenciales lineales en xδ y en uδ. A este sistema se le llamarepresentación (lineal) en el espacio de estado, brevemente, representaciónde estado. Al sistema (2.5) también lo llamaremos modelo incremental, de-bido al procedimiento utilizado en su construcción.

La solución xδ(t) es una aproximación al comportamiento de las per-turbaciones que exhibe el sistema no lineal (2.1) por sobre los valores dela trayectoria de equilibrio x(t) = X y u(t) = U . Es evidente, a partir delconocimiento de sistemas lineales que poseemos, que para conocer íntegra-mente la solución de (2.5) deben conocerse tanto el valor de la perturbacióndel estado inicial xδ(t0) como los valores, en función del tiempo, de las per-turbaciones de la entrada en equilibrio uδ(t).

En resumen, el sistema dinámico que aproxima las perturbaciones ocu-rridas al sistema no lineal cuando éste opera en condiciones estables deequilibrio está representado por un sistema lineal cuyas ecuaciones de es-tado y de salida están dadas por (2.5).

Las matrices constantes (A,B,C), llamadas matrices Jacobianas, quedefinen a esta aproximación lineal están dadas por: matrices

jacobianas

A =∂f

∂x

∣∣∣∣(X,U)

; B =∂f

∂u

∣∣∣∣(X,U)

; C =∂h

∂x

∣∣∣∣X

Es por esto precisamente que a la linealización aproximada también se lallama con el nombre de linealización jacobiana.

En forma aproximada tendremos igualmente

x(t) = X + xδ(t); u(t) = U + uδ(t); y(t) = Y + yδ(t) (2.6)

o equivalentemente variablesincrementales

xδ(t) = x(t)−X; uδ(t) = u(t)− U ; yδ(t) = y(t)− Y (2.7)

alejandra
Highlight
alejandra
Highlight
alejandra
Highlight
alejandra
Highlight

36 LINEALIZACIÓN APROXIMADA

Figura 2.1: Relación entre las variables originales y las variables incrementales

A estas últimas las llamaremos variables incrementales.En el caso de la entrada u y el estado x, la interpretación de sus valo-

res perturbados en términos de las variables originales admite una repre-sentación gráfica como la que se muestra en la Figura 2.1.Consideramos

perturbacionesen una vecindad“pequeña” delpunto deequilibrio

Sobre la base de estas relaciones aproximadas, propondremos más ade-lante esquemas de control que estabilicen al sistema no lineal a su puntode equilibrio (X, Y, U), bajo la suposición fundamental de tener excur-siones de la perturbación xδ(t) relativamente pequeñas.

2.3.1. Representación en funciones de transferencia

A partir de la representación de estados incrementales propuesta an-teriormente, surge en forma inmediata la representación en funciones detransferencia asociadas al comportamiento linealizado del sistema.

Supóngase que tenemos un sistema no lineal, n-dimensional, de unaentrada y una salida (2.1):

x(t) = f(x(t), u(t))y = h(x(t))

Sea u(t) = U un punto de operación constante para la entrada escalar delsistema anterior. Correspondiente con este valor nominal de la entrada,tenemos un valor de equilibrio para el vector de estado y para la salida,dados, respectivamente, por x(t) = X(U) y y(t) = Y (U).

La expresión linealizada del sistema alrededor del punto de operacióngenérico (U,X(U), Y (U)), parametrizada como vemos en términos del valorconstante (en equilibrio) de la entrada de control U , está dada por

xδ = A(U)xδ + B(U)uδ

yδ = C(U)xδ

2.3 SISTEMA LINEALIZADO: ESPACIO DE ESTADO 37

Figura 2.2: Representación entrada-salida del sistema linealizado

donde

A(U) =∂f(x, u)

∂x

∣∣∣∣X(U),U

; B(U) =∂f(x, u)

∂u

∣∣∣∣X(U),U

;

C(U) =∂h(x)

∂x

∣∣∣∣X(U)

y

xδ = x−X(U); uδ = u− U ; yδ = y − Y (U)

Evidentemente, a partir de esta representación del sistema linealizado,mostrada en Figura 2.2, podemos obtener la función de transferencia delsistema en lazo abierto, dada por:

GU (s) = C(U)[sI −A(U)]−1B(U) (2.8)

2.3.2. Ejemplos

A continuación describiremos algunos ejemplos de linealización de sis-temas alrededor de puntos o trayectorias de equilibrio constantes.

Ejemplo 2.1: Convertidor DC-DC tipo BoostRecordemos el modelo promedio del convertidor “Boost", Modelo 7 , en la página 13:

z1 = −ω0z2 + µω0z2 + b

z2 = ω0z1 − ω1z2 − µω0z1

y = z2

cuyo punto de equilibrio está dado por, ver Ejemplo 1.9 ,

µ = U : Z1(U) =bω1

ω20(1− U)2

: Z2(U) =b

ω0(1− U)(1.17*)

Para realizar la linealización, debemos primero tomar en cuenta que se trata de un sistema desegundo orden, con lo cual las matrices constantes A, B y C planteadas anteriormente están

38 LINEALIZACIÓN APROXIMADA

dadas por:

A =∂f(z, u)

∂z

∣∣∣∣Z,U

=

[∂f1(z,u)

∂z1

∂f1(z,u)∂z2

∂f2(z,u)∂z1

∂f2(z,u)∂z2

]∣∣∣∣∣Z1(U),Z2(U),U

=

[0 −ω0(1− U)

ω0(1− U) −ω1

]B =

∂f(z, u)

∂u

∣∣∣∣Z,U

=

[∂f1(z,u)

∂u∂f2(z,u)

∂u

]∣∣∣∣∣Z1(U),Z2(U),U

=

[b

1−U

− bω1ω0(1−U)2

]

C =∂h(z)

∂u

∣∣∣∣Z

=[

∂h(z)∂z1

∂h(z)∂z2

]∣∣∣Z1(U),Z2(U)

=[

0 1]

La linealización del sistema alrededor del punto de equilibrio resulta entonces

[z1δ

z2δ

]=

[0 −ω0(1− U)

ω0(1− U) −ω1

] [z1δ

z2δ

]+

[b

1−U

− bω1ω0(1−U)2

]µδ

yδ =[

0 1] [ z1δ

z2δ

] (2.9)

La función de transferencia que relaciona el tensión incremental de salida con el valor incre-mental de la relación de trabajo, se obtiene del modelo linealizado (2.9) como:

GU (s) = −ω0Z1(U)s− b

Z1(U)

s2 + ω1s+ ω20(1− U)2

(2.10)

Ejemplo 2.2: Linealización del sistema de levitación magnéticaConsideremos ahora el Modelo 8 , en la página 14:

x1 = x2

x2 = g −c

m

x23

x1

x3 = −R

Lx3 +

1

Lu

y = x1

(1.19*)

cuyo punto de equilibrio está dado por:

x1 = X1(X) = X ; x2 = 0 ;

x3 = X3(X) =

√mgX

c; u = U(X) = R

√mgX

c

(1.20*)

En este caso se trata de un sistema de tercer orden, con lo cual las matrices constantes A, B

2.3 SISTEMA LINEALIZADO: ESPACIO DE ESTADO 39

y C están dadas por:

A =∂f(x, u)

∂x

∣∣∣∣X,U

=

∂f1(x,u)

∂x1

∂f1(x,u)∂x2

∂f1(x,u)∂x3

∂f2(x,u)∂x1

∂f2(x,u)∂x2

∂f2(x,u)∂x3

∂f3(x,u)∂x1

∂f3(x,u)∂x2

∂f3(x,u)∂x3

∣∣∣∣∣∣∣∣X1(X),X2(X),X3(X),U(X)

=

0 1 0gX

0 −2√

cgmX

0 0 −RL

B =∂f(x, u)

∂u

∣∣∣∣X,U

=

∂f1(x,u)

∂u∂f2(x,u)

∂u∂f3(x,u)

∂u

∣∣∣∣∣∣∣X1(X),X2(x),X3(X),U(X)

=

001L

C =

∂h(x)

∂u

∣∣∣∣X

=[

∂h(x)∂x1

∂h(x)∂x2

∂h(x)∂x3

]∣∣∣X1(X),X2(X),X3(X)

=[

1 0 0]

La evolución de las perturbaciones de estado del modelo (1.19) están gobernadas por elsistema de ecuaciones diferenciales lineales obtenido del proceso de linealización alrededor delos valores de equilibrio (1.20): x1δ

x2δ

x3δ

=

0 1 0gX

0 −2√

cgmX

0 0 −RL

x1δ

x2δ

x3δ

+

001L

yδ =[

1 0 0] x1δ

x2δ

x3δ

(2.11)

La función de transferencia asociada a este sistema está dada por:

GX(s) =yδ(s)

uδ(s)= −

2L

√cg

mX(s2 − g

X

) (s+ R

L

) (2.12)

Ejemplo 2.3: Linealización aproximada del TRCAEl punto de equilibrio estable, parametrizado respecto de u = U , para el tanque de reaccióncontinuamente agitado, Modelo 10 , en la página 16, está dado por:

u = U ; x1(U) =U

1 +Da1; x2(U) =

1

2Da2

(−1 +

√1 +

4Da1Da2U

1 +Da1

)(2.13)

La linealización del sistema (1.24) alrededor de este punto de equilibrio está dada por:

x1δ = −(1 +Da1)x1δ + uδ

x2δ = Da1x1δ −

√1 +

4Da1Da2U

1 +Da1x2δ

y = x1δ + x2δ

como puede verificarse sin mayores esfuerzos.

40 LINEALIZACIÓN APROXIMADA

Figura 2.3: Motor de corriente continua

Modelo 20: Motor de corriente continua con carga (modelo de velocidadangular)Considérese un motor de corriente continua controlado por campo, provisto de excitación separa-da, el cual está esquematizado en la Figura 2.3. Sea Va el voltaje constante de armadura y sea ifla corriente de campo, que actúa como variable de control. El conjunto de ecuaciones diferencialesque describen la dinámica del sistema controlado están dadas por:

Ladiadt

+Raia +Kvωif = Va

Jdω

dt+Bω = Kvif ia

(2.14)

Definamos las variables de estado y de control como:

x1 = ia ; x2 = ω

u = if ; Va = constante

De acuerdo a esta selección de las variables de estado, el sistema (2.14) queda representadomediante un modelo bilineal en el espacio de estado dado por:[

x1

x2

]=

[−Ra

La0

0 −BJ

][x1

x2

]+ u

[0 −Kv

LaKvJ

0

][x1

x2

]+

[ VaLa

0

](2.15)

donde x1 representa la corriente de armadura, x2 es la velocidad angular del eje del motor; La

y Ra son, respectivamente, la inductancia y la resistencia en el circuito de armadura, Kv es laconstante de torque del motor, mientras que J y B son, respectivamente, el momento de inercia yel coeficiente de fricción viscosa asociados a la carga.

M

Ejemplo 2.4: Linealización aproximada de un motor de corriente continuaConsideremos el modelo anterior. El punto de equilibrio del sistema, generado por una corrientede armadura constante dada por u = U , se obtiene directamente de (2.15). Resulta en:[

x1(U)x2(U)

]=

Va

RaB +K2vU

2

[B

KvU

](2.16)

La linealización del sistema (2.15) alrededor del punto de equilibrio descrito se obtiene como:

[x1δ

x2δ

]=

−Ra

La−KU

LaKU

J−B

J

[ x1δ

x2δ

]+

−K2VaU

La(RaB +K2U2)K2BVa

J(RaB +K2U2)

uδ (2.17)

2.4 VALIDEZ DEL MODELO LINEALIZADO 41

2.4. Validez del modelo linealizado:¿Qué tan bueno es el Método de la LinealizaciónAproximada?

La linealización aproximada está fundamentada en retener como válidapara la descripción de un sistema en las vecindades de un punto de equi-librio, a aquella representación que se obtiene de los términos de primerorden de la expansión en serie de Taylor de la no-linealidad que caracterizaal sistema como tal. Desde este punto de vista, las exigencias que hemosimpuesto al sistema son de diferenciabilidad por lo menos hasta un primerorden.

Es indudable que las cantidades que estamos despreciando al tomar co-mo sustitutos de las verdaderas perturbaciones a los primeros términos enla expansión propuesta, son cantidades que se tornan cada vez más im-portantes a medida que nos alejamos de las condiciones de equilibrio delsistema. El deterioro de la representatividad que tiene la aproximación li-neal con respecto al comportamiento verdadero, ocasionado por los efectosde las perturbaciones, puede hacerse tan burdo que cualquier resultado oconclusión que obtengamos sobre esta base puede llegar a carecer de todasignificación cualitativa y cuantitativa!

Es oportuno señalar, además, que el método de la linealización aproxi-mada no es aplicable a sistemas que exhiban no linealidades carentes dederivadas.

Ejemplo 2.5: Un sistema que no es diferenciableAsí, por ejemplo, el siguiente sistema no puede ser aproximado, bajo ninguna justificación razon-able, mediante la técnica de expansión en serie de Taylor que hemos descrito:

x = − signx (2.18)

Es fácil ver, sin embargo, que este sistema tiene por punto de equilibrio x = 0 (cuyo signotambién se supone cero). Justamente en el origen, la función signo, designada aquí mediante lassiglas “ sign ", no es diferenciable sobre la recta real.

Mostraremos a continuación un sencillo ejemplo, desarrollado de ma-nera analítica, el cual nos permitirá comenzar a comprender cuál es el gra-do de representatividad que puede tener la aproximación de primer ordenque se emplea en el método de la linealización aproximada, respecto delcomportamiento verdadero del sistema no lineal, sujeto a perturbacionesde magnitud creciente. Otro ejemplo, desarrollado mediante simulación, espresentado en la próxima sección.

Modelo 21: Tanque con pérdida de líquidoConsidérese el tanque de la Figura 2.4, el cual se alimenta a una rata constante u = U [m3/s]con un cierto líquido. El parámetro A es el área de la base del tanque y h representa la altura delnivel del líquido medido desde la base del recipiente. La constante c representa un coeficiente deresistencia al escape del líquido.

alejandra
Highlight

42 LINEALIZACIÓN APROXIMADA

Figura 2.4: Sistema de un tanque con pérdida de líquido

La ecuación diferencial que describe la variación de altura del líquido está dada por :

h = −c

A

√h+

1

Au

y = h

(2.19)

El punto de equilibrio del sistema, para un valor de entrada constante, u = U , está dado porh = H = U2/c2.

M

Como ejercicio, recomendamos al lector comparar este modelo, de un solotanque, con el Modelo 15, en la página 19, para varios tanques.

Ejemplo 2.6: Validez de la linealización en un sistema no lineal simpleConsidérese una pequeña perturbación en el valor constante del control dada por un súbito in-cremento fijo en la rata de alimentación de líquido al tanque, de valor ∆U , durante un período detiempo indefinido.

Figura 2.5: Perturbación de la señal de entrada al tanque

Nuestro objetivo es calcular, mediante linealización aproximada, el efecto de esta perturbación

2.4 VALIDEZ DEL MODELO LINEALIZADO 43

y compararlo con un cálculo preciso (es decir, sin aproximaciones) del nuevo valor de la altura deltanque en equilibrio. Ver Figura 2.5.

De acuerdo a la ecuación diferencial del sistema, el valor del nuevo estado de equilibrio (lanueva altura del nivel del líquido) está dada por:

H + hδ =(U + ∆U)2

c2=U2

c2+

2U∆U + ∆U2

c2(2.20)

es decir, el valor exacto del efecto de la perturbación de entrada sobre la altura final del nivel dellíquido está dada por :

hδ =2U∆U + ∆U2

c2(2.21)

Por otro lado, el sistema linealizado alrededor del punto de equilibrio está dado por:

hδ = −c

2A√Hhδ +

1

Auδ

yδ = hδ (2.22)

El valor final de hδ a un escalón de excitación uδ = ∆U en este sistema linealizado está dadopor el valor de equilibrio del sistema lineal a una entrada constante. Este valor resulta

hδ =2

c

√Huδ =

2U∆U

c2

El error que se comete en este ejemplo, al utilizar la linealización aproximada, tiene una mag-nitud cuadrática respecto de la perturbación de entrada y está dado por (∆U/c)2. El método delinealización es válido en la medida en que el término (∆U/c)2 sea completamente desprecia-ble frente al valor de equilibrio de la perturbación que hemos calculado de manera aproximada2U∆U/c2. Por lo tanto, si ∆U es grande, el error cometido es significativo.

Como veremos más adelante, el diseño basado en el sistema linealizadofuncionará en forma efectiva, al menos en un entorno “pequeño” alrededordel punto de operación deseado, para el sistema no lineal original, e in-cluso para el sistema real, asumiendo que el modelo es lo suficientementepreciso2. La hipótesis de que las aproximaciones de primer orden puedenresultar suficientes para caracterizar el comportamiento local de un sis- Comportamiento

local en unavecindad delpunto deequilibrio

tema, constituye uno de los más importantes supuestos en la teoría de con-trol, en muchas áreas de la matemática y, sobre todo, en las aplicaciones. Elprincipio de la técnica de linealización aproximada se puede establecer enla siguiente forma:

Validez de la Linealización AproximadaEl método de la linealización aproximada es válido en tanto quelas perturbaciones que afectan al comportamiento del sistema nolineal, operando en equilibrio, sean pequeñas, relativas a los va-lores de equilibrio de las variables del sistema.

La aproximación se deteriora en forma, cuando menos cuadráti-ca, al admitir perturbaciones que representan excursiones signi-ficativas a partir de los valores de equilibrio de las variables deentrada y estados iniciales del sistema.

2En este contexto, “suficientemente preciso” significa que el modelo permite reflejar con unacierta aproximación el comportamiento del sistema real original.

44 LINEALIZACIÓN APROXIMADA

2.5. Primer ejemplo en Matlab (R)

El siguiente ejemplo es el primero que presentaremos en el cual se em-plea el programa Matlab (R) como herramienta auxiliar al análisis y a losdiseños que propondremos. Recomendamos al lector familiarizarse con Mat-lab (R) ya que el mismo nos será útil durante el desarrollo de este texto, alMatlab es una

herramienta útilpara simularecuacionesdiferenciales

momento de ilustrar las propiedades de los sistemas no lineales controladosestudiados y el comportamiento de las estrategias de control propuestas.

Matlab (R) es un ambiente numérico de propósito general orientado aluso de estructuras de tipo vectorial y matricial, el cual permite ejecutaralgoritmos secuenciales con una amplia gama de aplicaciones. El uso prin-cipal que le daremos será como programa de simulación numérica, es decir,haremos uso de los algoritmos que tiene disponibles para la obtención delas soluciones de sistemas de ecuaciones diferenciales ordinarias.

2.5.1. Breve explicación para la simulación

En general, para simular un sistema no lineal controlado, se requierendos programas que llamaremos el programa de simulación y el sistema omodelo a simular. El programa de simulación permite definir los lineamien-scripttos básicos de la simulación: tiempo de simulación (inicial y final), condi-ciones iniciales y tipo de algoritmo de simulación (ode23, ode45,. . . ); inclu-sive podemos definir los parámetros del sistema controlado y hasta graficarlos resultados de la simulación. Este programa consiste en un conjunto lógi-co de instrucciones de ejecución secuencial denominado “script” en el am-biente Matlab (R). El corazón principal de este programa es el algoritmo desimulación. En este texto utilizaremos solamente dos tipos: ode23 o ode45,ode23,

ode45 los cuales son métodos de resolución de ecuaciones diferenciales mediantelas fórmulas de Runge-Kutta de 2do. y 3er. orden (ode23) y 4to. y 5to. orden(ode45).

El modelo a simular se presenta por medio de un programa o función,llamado function en Matlab (R), en el cual se plantean explícitamente lasfunctionecuaciones diferenciales asociadas al sistema de control. Esencialmente,posee dos parámetros de entrada, el tiempo t de simulación y la variablede estado x, debido a que éstas son las variables utilizadas directamentepor los algoritmos de simulación. Junto con las ecuaciones diferencialesque representan el modelo sistema, debe aparecer la ley de control diseña-da, la cual puede estar definida a través de variables auxiliares (locales).A diferencia del script, el modelo a simular requiere un encabezado conla palabra function <salida> = <nom\_arch>(t,x), donde <salida> corre-sponde al vector x que refleja la dinámica del sistema, <nom\_arch> es elnombre original del programa (el cual debera tener la extensión .m y el par(t,x) representan las variables de tiempo y de estado correspondientes dela simulación y del sistema a simular.

Visite la página http://www.ing.ula.ve/~marquez/snl/ o directamentePágina web

2.5 PRIMER EJEMPLO EN MATLAB (R) 45

http://www.ing.ula.ve/~marquez/matlab/ para obtener explicaciones adi-cionales y enlaces a referencias exitentes en la “web”.

2.5.2. Comparación entre el comportamiento de un pén-dulo invertido y su linealización

A continuación se presenta un problema de simulación detallado, dondese compara el comportamiento del modelo no lineal de un péndulo invertidocon el comportamiento del modelo lineal obtenido por linealización aproxi-mada, alrededor de un punto de operación dado (se considera la respuestaen lazo abierto de ambos sistemas a partir de una condición inicial dada).

Figura 2.6: Péndulo invertido sobre una plataforma móvil

Modelo 22: Péndulo invertido sobre una plataforma móvilConsidérese el sistema que se muestra en la Figura 2.6. Las ecuaciones que describen el compor-tamiento del ángulo del péndulo invertido, de longitud 2L, con respecto a la dirección vertical, asícomo el desplazamiento del móvil desde un punto fijo (medido desde el 0 en el plano horizontal)están dadas por:

(mL cosφ)ξ + (J +mL2)φ = −Cφ+mLg senφ

(M +m)ξ + (mL cosφ)φ = −F ξ + (mL senφ)φ2 + u(2.23)

donde se definen, como variables de estado, el desplazamiento horizontal del carro ξ, y su veloci-dad ξ, así como el desplazamiento angular del péndulo φ y su velocidad angular φ correspondi-ente. La variable de entrada u representa la fuerza con que se arrastra o se empuja al sistema,con el objeto de controlarlo. Las constantes C y F representan los coeficientes de fricción delmovimiento rotatorio del péndulo y del movimiento lineal del carrito; J es el momento de inerciacon respecto al centro de gravedad del péndulo y está dado, aproximadamente, por J = mL3/3.

El par de ecuaciones diferenciales de segundo orden (2.23) se puede representar con respec-to a las derivadas de mayor orden de la siguiente forma:[

φ

ξ

]=

[J +mL2 mL cosφmL cosφ M +m

]−1 [ −Cφ+mLg senφ

−F ξ +mL sen(φ)φ2 + u

]es decir, [

φ

ξ

]=

[ 1∆

[(M +m)∆1 −mL cosφ∆2]1∆

[−mL cosφ∆1 + (J +mL2)∆2

] ]

46 LINEALIZACIÓN APROXIMADA

donde ∆1 = −Cφ+mLg senφ, ∆2 = −F ξ +mL sen(φ)φ2 + u y ∆ = J(M +m) +mL2(M +m sen2 φ).

Seleccionando como variables de estado a

x1 = ξ; x2 = ξ; x3 = φ; x4 = φ ,

las dos ecuaciones diferenciales de segundo orden anteriores se pueden reescribir como un sis-tema de cuatro ecuaciones diferenciales de primer orden:

x1 = x2

x2 =−mL cosx3∆1 + (J +mL2)∆2

x3 = x4

x4 =(M +m)∆1 −mL cosx3∆2

(2.24)

M

Matlab 2.1: Simulación de un péndulo invertido sobre una plataforma móvilConsidere el sistema de control del péndulo invertido sobre una plataforma móvil anterior. El puntode equilibrio de este sistema, en la posición vertical hacia arriba, es el siguiente:

x1 = arbitrario = X, x2 = 0, x3 = 0, x4 = 0, u = 0 (2.25)

Físicamente, esto significa que podremos llevar la plataforma a una posición horizontal cualquiera,siempre y cuando llevemos el péndulo sobre la plataforma a su posición vertical en equilibrio.

El sistema linealizado asociado al modelo (2.24) está dado por

xδ = Axδ +Buδ (2.26)

donde

A =∂f

∂x

∣∣∣∣(xe,ue)=(0,0)

=

0 1 0 0

0 − F (J+mL2)

J(M+m)+mL2M− m2L2g

J(M+m)+mL2M

F (mLC

J(M+m)+mL2M

0 0 0 1

0 mLFJ(M+m)+mL2M

(M+m)mLg

J(M+m)+mL2M− C(M+m)

J(M+m)+mL2M

,

B =∂f

∂u

∣∣∣∣(xe,ue)=(0,0)

=

0

J+mL2

J(M+m)+mL2M

0

− mLJ(M+m)+mL2M

A continuación se presentan los programas de simulación y el modelo a simular necesarios,

en Matlab (R), mediante los cuales se pueden comparar las respuestas del sistema linealizado(2.26) y del sistema no lineal (2.24) en lazo abierto. Tomaremos como salida la posición del centrode gravedad (cg) del péndulo y(t) = x1(t) + L sen(x3(t)).

El contenido de cada uno de los programas utilizados (spend.m,mpend.m y lpend.m) se pue-de describir brevemente como sigue. El programa spend.m permite simular el modelo no lineal,mpend.m contiene el modelo no lineal del sistema, ver Listado 2.1. El programa lpend.m, ver Lis-tado 2.2, genera la comparación entre el modelo lineal y el modelo no lineal. Se incluye el scriptdel sistema lineal en el Listado 2.2, a manera de ilustración de algunas de las instrucciones quese pueden emplear en Matlab (R) en el caso de simulación de sistemas lineales. Las gráficaspermiten observar las simulaciones del sistema no lineal y comparar con los resultados obtenidosen el caso lineal. Nota: a partir del símbolo % se indican los comentarios para que el lector ten-ga mayor claridad y comprenda mejor cómo funcionan. Los programas mencionados se puedenencontrar en la página http://www.ing.ula.ve/~marquez/snl/.

2.5 PRIMER EJEMPLO EN MATLAB (R) 47

Listado 2.1: Simulación del sistema no lineal spend.m

%% spend.m%% Programa de simulacion del modelo%% del pendulo invertido sobre una plataforma movil.

%% Parametrosglobal M F r0 u0 m L J C g

%% Movil (’Cart ’)M = 0.48; % masaF = 3.83; % constante de friccion

%% Pendulom = 0.16; % masaL = 0.25; % longitud del pendulo (distancia entre el eje y el centro de

% gravedad)J = 0.0043; % momento de inercia alrededor del centro de gravedadC = 0.00218; % constante de fricciong = 9.8; % aceleracion de gravedad

%% condiciones inicialesx0 = [0.4 0 pi/40 0]’;

%% tiempo de simulacionti = 0; tf = 1;

[t,x] = ode45(’mpend’,[ti tf],x0);

subplot(221),plot(t,x(:,1))title(’Posicion del movil’),gridsubplot(222),plot(t,x(:,3))title(’Angulo de rotacion del pendulo’),gridsubplot(223),plot(t,x(:,1)+L*sin(x(:,3)))title(’Posicion del c.g. del pendulo’),grid% fin de spend.m

Modelo del sistema mpend.m

%% mpend.m%% modelo del pendulo invertido sobre una plataforma movil%% para utilizarlo hay que ejecutar el programa spend.mfunction xdot = mpend(t,x)

%% Parametrosglobal M F r0 u0 m L J C g

u = 0;

D1 = -C*x(4)+m*L*g*sin(x(3)); D2 = -F*x(2)+m*L*sin(x(3))*x(4)^2+u;D = J*(M+m)+m*L^2*(M+m*sin(x(3))^2);

xdot = [x(2);(-m*L*cos(x(3))*D1+(J+m*L^2)*D2)/D;x(4);((M+m)*D1-m*L*cos(x(3))*D2)/D];

%% fin de mpend.m

48 LINEALIZACIÓN APROXIMADA

Listado 2.2: Simulación del sistema lineal y presentación gráfica lpend.m

%% lpend.m%% Modelo incremental%% pendulo invertido sobre una plataforma movil.%%%% Se debe ejecutar despues de spend.m%% Los parametros son los mismos de spend.m

Dt = J*(M+m)+M*m*L^2;

A = [0 1 0 0;0 -F*(J+m*L^2)/Dt -m^2*L^2*g/Dt m*L*C/Dt;0 0 0 1;0 m*L*F/Dt (M+m)*m*L*g/Dt -C*(M+m)/Dt];

B = [0;(J+m*L^2)/Dt;0;-m*L/Dt];

C = [1 0 L 0]; %% Consideramos como salida la posicion%% del centro de gravedad y = x_1+L*sin(x_3)

D = 0;

T = (0:0.05:tf)’;

U = zeros(size(T));

%% condiciones iniciales x0, ver spend.m

[Y,X] = lsim(A,B,C,D,U,T,x0);

subplot(221),plot(t,x(:,1),’y--’,T,X(:,1),’r’)title(’Posicion del movil’),gridsubplot(222),plot(t,x(:,3)*180/pi,’y--’,T,X(:,3)*180/pi,’r’)title(’Angulo de rotacion del pendulo’),gridsubplot(223),plot(t,x(:,1)+L*sin(x(:,3)),’y--’,T,Y,’r’)title(’Posicion del cg’),grid

%% fin de lpend.m

2.6 EJERCICIOS PROPUESTOS 49

Figura 2.7: Comportamiento local del sistema lineal (línea continua —) y el sistema nolineal (trazos - -)

Para ejecutar los programas desde la ventana de comandos de Matlab (R), se escribe:> spend % ejecuta la simulacion del sistema no lineal> lpend % ejecuta la simulacion del sistema lineal y grafica

En la Figura 2.7 se puede observar la equivalencia local entre el modelo linealizado y elmodelo no lineal original. Se observa como, a partir de un cierto instante, las dos respuestas seseparan. Esto simplemente reafirma nuestra aseveración acerca de que, respecto al sistema nolineal, el modelo linealizado sólo servirá para mostrar el comportamiento del sistema original enun entorno limitado del punto de operación.

t

2.6. Ejercicios propuestos

Ejercicio 2.1: Modelo incremental del tanque biológicoConsidere el Modelo 4, en la página 9. Obtenga el modelo linealizado del sis-

tema alrededor del punto de equilibrio (1.9). (?)

Ejercicio 2.2: Modelo incremental de la dinámica de un artefacto espacialConsidere el Modelo 6, en la página 12. Obtenga el modelo en variables incre-

mentales del artefacto espacial alrededor del punto de equilibrio (1.14). (?)

50 LINEALIZACIÓN APROXIMADA

Ejercicio 2.3: Proceso de producción de etanol en Matlab (R)Obtenga el modelo incremental del Modelo 14, en la página 18, alrededor del

punto de equilibrio (1.32). Realice las simulaciones numéricas del comportamientodel sistema linealizado ante una señal escalón en lazo abierto uδ(t) = 0,2, con unaconcentración de etanol nominal x1 = E = 0,7 (con condiciones iniciales en el puntode equilibrio).

Realice el mismo experimento de simulación (idéntica señal de prueba y condi-ciones iniciales) sobre el sistema no lineal original (1.31), usando para ello larelación dada por (2.7). Le sugerimos que compare los resultados obtenidos en losdos sistemas y elabore sus propias conclusiones. (?)

Ejercicio 2.4: Péndulo invertido sobre una plataforma móvilDejamos como ejercicio verificar que en el punto de equilibrio

x1 = arbitrario; x2 = 0; x3 = 0; x4 = 0

la linealización del Modelo 22, en la página 45, con xδ = (x1δ, x2δ, x3δ, x4δ)T , está

dada por la expresión (2.26). Verifique además que otro punto de equilibrio de estesistema es:

x1 = arbitrario; x2 = 0; x3 = π ; x4 = 0

Dé una interpretación física de este punto. Calcule el sistema linealizado (calcule lasmatrices A, B y C) asociado al mismo. Nota: En general, en el punto de equilibrio elvalor de la posición angular está dado por x3 = kπ (k ∈ Z). Verifíquelo. (?)

Figura 2.8: Manipulador robótico flexible

Modelo 23: Manipulador robótico flexibleConsidere un manipulador robótico de un grado de libertad, con articulación flexible, representadoen la Figura 2.8. Las ecuaciones diferenciales que gobiernan este sistema no lineal están dadaspor:

JLθ +BLθ +MgL sen θ + k(θ − ψ) = 0

Jmψ +Bmψ − k(θ − ψ) = u(2.27)

2.7 RESUMEN DEL CAPÍTULO Y LECTURAS ADICIONALES 51

donde θ es la posición angular del brazo manipulador y ψ es la posición angular del eje del motor,la cual es ligeramente diferente de la anterior en virtud de la flexibilidad del acoplamiento entre elmotor y el manipulador. Esta flexibilidad ha sido modelada como un resorte torsional. La variableu representa el torque aplicado por el motor a su carga, constituida en este caso por el brazomecánico.

Definiendo como variables de estado las siguientes:

x1 = θ ; x2 = θ ; x3 = ψ ; x4 = ψ

el modelo (2.27), en el espacio de estado, del manipulador flexible resulta ser entonces:

x1 = x2

x2 = −MgL

JLsenx1 −

BL

JLx2 −

k

JL(x1 − x3)

x3 = x4

x4 = −Bm

Jmx4 +

k

Jm(x1 − x3) +

u

Jm

(2.28)

M

Ejercicio 2.5: Modelo incremental del manipulador flexibleVerifique que el punto de equilibrio del sistema (2.28), parametrizado respecto a

la posición angular deseada, es el siguiente:

x1 = arbitrario = X, x2 = 0, x3 = X +MgL

ksenX, x4 = 0, u = MgL senX

Obtenga el modelo linealizado del manipulador alrededor del punto equilibrio dado.(??)

2.7. Resumen del capítulo y Lecturas adicionales

Este capítulo constituye la base del diseño de controladores lineales me-diante el método de la linealización aproximada. Adicionalmente, como ver-emos más adelante, constituye la base, junto a los puntos de equilibrio para-metrizados, del método de linealización extendida.

A partir del modelo del sistema no lineal y usando el punto de equilibriodeseado se obtiene, mediante el cálculo de matrices jacobianas, el modelolinealizado del sistema no lineal. El modelo linealizado resultante, tambiénllamado modelo incremental, será empleado posterioemente para el diseñode estrategias de control lineales. El concepto de variables incrementalesconstituye la base de la aplicación de compensadores lineales al caso desistemas no lineales, alrededor de puntos de equilibrio deseados.

Lecturas recomendadasVarios de los textos que tratan a fondo el diseño de sistemas de control

lineales presentan en sus capítulos introductorios una reseña sobre lineali-zación de sistemas no lineales alrededor de puntos de equilibrio. Consultepor ejemplo:

52 LINEALIZACIÓN APROXIMADA

1. K. Furuta, A. Sano, D. Atherton, State Variable Methods in AutomaticControl, Wiley, 1988, [FSA88]. En la sección 1.2 se estudia el mode-lado por variables de estado y se incluye se manera breve y simple elenfoque de linealización presentado aquí.

2. K. Ogata, Ingeniería de Control Moderna, Prentice Hall, 2da. edición,1993, [Oga93]. Prácticamente un clásico entre los textos introducto-rios a la teoría de control.

3. G. F. Franklin, J. D. Powell, A. Emami-Naeini, Feedback Control ofDynamic Systems, Prentice Hall, 1994, [FPEN94]. Desde el punto devista de motivación y didáctica, un texto para aprender y disfrutar lalectura.

4. B. Kuo, Automatic Control Systems, Séptima edición, Prentice Hall,1995, [Kuo95]; N. Nise, Control System Engineering, Segunda edición,Addison Wesley, 1996, [Nis96].

Adicionalmente a los manuales que vienen con Matlab (R), de introduc-ción a sus características y potencialidades, existen diferentes textos deintroducción al uso de Matlab (R) para simulación con “scripts”. Muchosde estos manuales se encuentran disponibles en Internet. Existen actual-mente muchos textos de sistemas de control que recomiendan el uso deMatlab (R) como herramienta de trabajo, además existen libros enteros conaplicaciones de Matlab (R) al caso de sistemas de control.

Es de notar que Matlab (R) posee una herramienta muy útil y ver-sátil, llamada Simulink (R), la cual permite trabajar con diagramas debloques para hacer simulaciones. Esta herramienta será pocas veces em-pleada a lo largo del texto, sin embargo, muchos de los modelos propuestosya han sido escritos en Simulink (R) y se pueden encontrar en la direcciónhttp://www.ing.ula.ve/~marquez/snl/.

Para una introducción al uso de Matlab (R) en el análisis y diseño deleyes de control para sistemas lineales:

1. Existen diferentes textos introductorios, que constituyen verdaderoscursos de sistemas de control lineales, apoyados con Matlab (R). Entreellos tenemos, por ejemplo: J. Wilkie, M. Johnson, R. Katebi, ControlEngineering: An Introductory Course, Palgrave Macmillan, 2001; R.H.Bishop, Modern Control Systems Analysis & Design Using MATLAB& Simulink, Addison-Wesley, 1997. Visite la página web de Math-works, de los libros de texto basados en Matlab (R),http://www.mathworks.com/support/books/, rúbrica Controls & Sys-tems, para conseguir información relativa a este tópico.

2. Visite la página web de la Universidad Carnegie-Mellon “Control Tu-torials for Matlab”, http://www.engin.umich.edu/group/ctm/.

3

Realimentación del vectorde estados

Foto

Es imprescindible entender que, al tratar de establecer leyes decontrol sobre sistemas reales, y en particular sobre modelos no li-neales, en base a modelos lineales aproximados, la validez de talesacciones de regulación está necesariamente restringida al rangode validez de la linealización. No podrá por lo tanto pretenderse queun modelo así establecido sea válido en todo el ámbito de posiblevariabilidad del sistema.

Cabe destacar, sin embargo, que gran parte de la tecnología deregulación automática, diseñada para innumerables clases de pro-cesos en la industria durante los últimos 20 años, está basada eneste solo hecho!

53

54 REALIMENTACIÓN DEL VECTOR DE ESTADOS

3.1. Motivación

Es bien conocido que los procesos reales a ser controlados siempre seránafectados por perturbaciones que desvian, de sus puntos de equilibrio, alas variables que caracterizan al sistema. Se hace necesario, por lo tanto,diseñar mecanismos de control que ayuden a mantener las variables del sis-tema en sus valores nominales de operación, a la luz de las perturbacionesreinantes.

Estas perturbaciones pueden provenir del medio ambiente como influ-encias de caracter aleatorio o generadas por pequeñas variaciones de losparámetros que definen el sistema dinámico. En ocasiones, las perturba-ciones también pueden ser inducidas por operadores humanos en el deseode conducir experimentos sobre el sistema y su comportamiento controlado,con el objetivo de realizar, por ejemplo, el diseño del modelo matemático pormedio de identificación, o ajuste (“tuning” en inglés) de los parámetros delcontrolador.

En cualquiera de los casos enunciados, la linealización aproximada pue-de ser útil, en cuanto al diseño del controlador se refiere, pues ésta per-mite obtener un modelo lineal que describe el comportamiento del sistemaalrededor de sus valores nominales como respuesta a las perturbacionesque afectan al mismo.

El modelo linealizado exhibe en forma explícita la relación entre lasperturbaciones de entrada y estados iniciales y su efecto en las variablesperturbadas de estado y salida del sistema. En consecuencia, este mode-lo puede servirnos para proponer una perturbación de caracter controladora la entrada incremental del sistema. El propósito de diseñar tal entradaserá el de hacer que el efecto de las posibles perturbaciones en los estadosiniciales y variables de estado sea estabilizado a cero. Con esto se lograríaque el sistema no lineal original continúe operando en su punto de equi-librio nominal. Este capítulo se dedica a desarrollar los esquemas básicosde aplicación de la linealización aproximada en el diseño de estrategias decontrol.

Presentaremos a continuación el esquema de diseño de un controladorestático para un sistema linealizado basado en el conocimiento preciso delvector de estado, al cual generalmente se le conoce con el nombre de con-trolador por realimentación del vector de estado.

3.2. Diseño de controladores mediantelinealización aproximada

Supondremos, en primer lugar, que el valor del estado del sistema x(t)y de sus posibles perturbaciones xδ(t) están disponibles para medición.En este capítulo partiremos, entonces, de la suposición de que tenemosconocimiento pleno de todas y cada una de las variables de estado pertur-badas y podemos, por lo tanto, utilizarlas en esquemas de control realimen-

3.2 DISEÑO DE CONTROLADORES MEDIANTE LINEALIZACIÓN APROXIMADA 55

Figura 3.1: Relación entre las variables originales y las variables incrementales

Figura 3.2: Sistema lineal que describe, en forma aproximada, el comportamiento de lasperturbaciones

tado.El método que estudiaremos está basado en suponer que los valores de

las perturbaciones de estado se describen mediante un sistema lineal obte-nido por medio de linealización aproximada, a partir del modelo no linealoriginal, alrededor del punto de equilibrio nominal del sistema. De esta for-ma, reemplazaremos los valores reales de las perturbaciones por las aprox-imaciones obtenidas por linealización, representadas por un sistema lineal.Sabemos que esta sustitución es válida solo cuando los valores de las per-turbaciones son suficientemente pequeños.

En efecto, el esquema de la Figura 2.1, reproducido en la Figura 3.1, nosmuestra que el comportamiento de los efectos de las perturbaciones sobre elsistema no lineal son reemplazables, en forma aproximada, por un sistemalineal.

Observemos al sistema no lineal de la Figura 3.1 como una relación en-tre uδ(t) y xδ(t). Es evidente que al encontrar un control estabilizante comofunción de las variables perturbadas de estado xδ(t), entonces este controldebe garantizarnos la estabilización a cero de dichas variables perturbadas.

Entre uδ(t) y xδ(t) existe una relación lineal aproximada que podemosrepresentar como se muestra en la Figura 3.2.

Es indudable que si logramos establecer una prescripción que especi-fique al control, o entrada incremental, uδ(t) en términos del estado in-cremental xδ(t), nuestro problema no lineal original queda reducido a unproblema lineal. Esto es cierto en tanto que las magnitudes de las pertur-baciones, a las cuales se ve sometido el sistema original, sean lo suficiente-mente pequeñas como para no desviar significativamente los valores de lasvariables de estado originales de sus puntos de operación nominales.

56 REALIMENTACIÓN DEL VECTOR DE ESTADOS

Figura 3.3: Sistema lineal realimentado linealmente

Figura 3.4: Esquema de control lineal por realimentación del vector de estado parasistemas no lineales

La estrategia a seguir consistirá en diseñar una ley de control linealpara el sistema de la Figura 3.2, de manera de estabilizar a cero las va-riables de estado perturbadas xδ(t). El esquema de control, desde el puntode vista lineal, sería el que se muestra en la Figura 3.3. Finalmente, entérminos del sistema no lineal original, el esquema de control sería el rep-resentado en la Figura 3.4.

Cabe ahora preguntarnos: ¿cuándo será efectivo utilizar el esquema decontrol ilustrado en la Figura 3.4?. Es decir, ¿qué limitaciones deben existirpara que, en ciertos casos, el esquema de control propuesto no funcionesatisfactoriamente?.

Puesto que hemos reemplazado el problema de control no lineal por unolineal, estas preguntas se reducen a plantear las condiciones bajo las cualesel sistema de la Figura 3.2 es estabilizable mediante realimentación cons-tante de las variables de estado incrementales. Para ello recordemos el si-

3.2 DISEÑO DE CONTROLADORES MEDIANTE LINEALIZACIÓN APROXIMADA 57

guiente teorema básico de la teoría de sistemas lineales: Controlabilidad yrealimentacióndel vector deestado

Teorema 3.1: Estabilizabilidad usando realimentación de estadosLa condición necesaria y suficiente para que el sistema lineal

xδ = Axδ + Buδ (3.1)

sea estabilizable mediante una ley de control por realimentación constantedel vector de estado, es que el par (A,B) sea controlable. Si el sistema esincontrolable, éste puede aún estabilizarse mediante realimentación si y solosi los modos incontrolables son asintóticamente estables.

Este teorema está asociado al muy conocido teorema de colocación depolos, el cual asevera que los polos de un sistema controlable pueden serasignados de la manera deseada mediante una realimentación lineal de lasvariables de estado.

En la literatura siempre se distingue entre sistemas controlables y sis-temas estabilizables. Todo sistema controlable es estabilizable. Sin embar-go, no todo sistema estabilizable es per se controlable. De hecho existe, comoreza el teorema anterior, la posibilidad de tener un sistema incontrolableque sea estabilizable. La noción de estabilizabilidad de un sistema repre-senta un requerimiento más débil que el implicado por la noción de contro-labilidad. Más adelante ilustraremos estos conceptos mediante el ejemploMatlab 3.2, en la Sección 3.3.

Afortunadamente, casi todos los sistemas lineales son controlables! Paraexplicar esta aseveración debemos decir que si escogemos aleatoriamentelos valores numéricos que intervienen en la conformación de la matriz A ylos del vector B, entonces, “con probabilidad uno”1, el sistema resultante escontrolable. Esto se debe a que en el espacio de los parámetros del sistemalineal (cuya dimensión es n2 + n = n(n + 1)) el conjunto de valores de esosparámetros que hacen cero al determinante de la matriz de controlabilidad,es decir, los valores numéricos de la matriz A y del vector B que hacen cerola matriz de controlabilidad:

C = det[B : AB : . . . : An−1B

]forman una variedad algebraica, es decir, una unión de planos, cuya medidaes cero (entendamos por tal “medida” el hipervolumen). En consecuencia, alescoger un punto aleatoriamente en este espacio de dimensión n(n+1), conprobabilidad uno caeremos fuera de esta variedad algebraica. Una forma deilustrar lo que decimos consiste en dibujar una o varias líneas en una hojade papel en forma desordenada, luego proponer dos números aleatorios querepresenten coordenadas adoptadas sobre dos bordes contiguos de la hojay, por último, ver si los números propuestos al azar representan un puntode alguna de las lineas que hemos trazado. Como es fácil imaginarse, esmuy difícil caer exactamente sobre una de las líneas dibujadas. Es posible

1En términos prácticos, “con probabilidad uno” significa “casi con absoluta certeza”.

58 REALIMENTACIÓN DEL VECTOR DE ESTADOS

predecir que, si el experimento se hace adivinando en forma aleatoria, porejemplo, pidiéndole a un amigo —quien no ve la hoja ni el resultado desus intentos— el decir las coordenadas en cuestión, entonces es casi seguroque de cien intentos que hagamos caeremos cien veces ¡fuera de las rectasdibujadas!

El resultado anterior y nuestra seguridad de encontrarnos frente a unsistema controlable nos hace concluir que el método tendrá limitacionessolamente relativas a la magnitud de las perturbaciones que se requierecontrolar, es decir, las mismas deberán ser suficientemente pequeñas.

Ejemplo 3.1: Realimentación de estados: sistema de levitación magnéticaConsideremos el Modelo 8 , en la página 14. Tomaremos como punto de equilibrio aquel parame-trizado respecto a X, ver (1.20):

x1 = X1(X) = X ; x2 = 0 ;

x3 = X3(X) =

√mgX

c; u = U(X) = R

√mgX

c

Emplearemos esta parametrización pues, de esta manera, la ley de control lineal vendrá direc-tamente en términos del error de la variable que se desea controlar (y no en términos de unavariable que está indirectamente relacionada con ella).

Definiremos, como siempre, las variables de estado incrementales utilizando los valores deequilibrio de los estados y los controles:

x1δ = x1 −X =cU2

mgR2; x2δ = x2 ; x3δ = x3 −X3(X) ; uδ = u− U(X)

La evolución de las perturbaciones de estado están gobernadas por el sistema de ecuacionesdiferenciales lineales obtenido del proceso de linealización alrededor de los valores de equilibrio:

d

dt

x1δ

x2δ

x3δ

=

0 1 0g

X0 −2

√cg

mX0 0 −R

L

x1δ

x2δ

x3δ

+

001

L

uδ (3.2)

Verificamos, entonces, que el sistema linealizado es controlable:

C = [B : AB : A2B] =

0 0 −

2

L

√cg

mX

0 −2

L

√cg

mX

2R

L

√cg

mX

1L

−R

L2

R2

L3

y, por lo tanto, det C = − 4cg

L3mX6= 0, es decir, el sistema es controlable.

Resulta lógico pensar que si mediante una ley de control lineal, dada por:

uδ = −K1x1δ −K2x2δ −K3x3δ

logramos que el estado incremental xδ tienda a cero asintóticamente, habremos logrado que elestado x del sistema no lineal se acerque a su valor de equilibrio.

Examinemos brevemente la naturaleza del sistema en lazo abierto, es decir, sin control. Lamatriz A del sistema, extraida directamente de (3.2), está dada por

A =

0 1 0g

X0 −2

√cg

mX0 0 −R

L

3.2 DISEÑO DE CONTROLADORES MEDIANTE LINEALIZACIÓN APROXIMADA 59

Figura 3.5: Ubicación de los polos del sistema (3.2) en lazo abierto

Los autovalores de A determinan la estabilidad del sistema alrededor del origen (xδ = 0), cuandouδ = 0. Tales autovalores se obtienen a partir de las raíces del polinomio característico de lamatriz A, el cual se calcula de la manera siguiente:

pA(s) = det(sI −A) = s3 +R

Ls2 −

g

Xs−

gR

XL

= s2(s+

R

L

)−

g

X

(s+

R

L

)=

(s+

R

L

)(s2 −

g

X

)Las raíces de este polinomio resultan

s1 = −R

L; s2 = ±

√g

X

El sistema linealizado cuenta, por tanto, con dos raíces estables (ubicadas en el lado izquierdodel plano complejo) y una raiz inestable (ubicada en el semiplano derecho del plano complejo),tal como se muestra en la Figura 3.5. La respuesta en lazo abierto del sistema linealizado cuentaentonces con términos exponenciales de la forma exp(−R/Lt), exp(

√g/Kt) y exp(−

√g/Kt).

Uno de estos términos crece de manera indefinida dando lugar a inestabilidad. Ejercicio: ¿Cómose explica esta inestabilidad desde el punto de vista físico?

A pesar de que el sistema sea naturalmente inestable, podemos sin embargo, debido a queel sistema es controlable, garantizar la existencia de una ley de realimentación lineal que haceal sistema en lazo cerrado asintóticamente estable. La realimentación lineal permitirá ubicar lospolos del sistema en lazo cerrado en puntos pre-seleccionados del plano complejo.

Deseamos por ejemplo, que el sistema linealizado (de tercer orden) en lazo cerrado tenga suspolos ubicados en las raíces del siguiente polinomio característico deseado:

pd(s) = (s+ α)(s2 + 2ζωn + ω2n) = s3 + (2ζωn + α)s2 + (ω2

n + 2ζωnα)s+ ω2nα (3.3)

A manera de recordatorio, ζ es conocido como “relación de amortiguamiento” y ωn es la“frecuencia natural no amortiguada” correspondiente al par de polos complejos conjugados quegenera el factor de segundo grado. La Figura 3.6 muestra una posible disposición de los polosdeseados del sistema, en la cual los polos complejos conjugados son dominantes (en la Figura sehan tomado a = −α, b = −ξωn y c = ωn

√1− ξ2).

El sistema en lazo cerrado está dado por:

d

dt

x1δ

x2δ

x3δ

=

0 1 0g

X0 −2

√cg

mX−K1

L−K2

L−R

L− K3

L

x1δ

x2δ

x3δ

60 REALIMENTACIÓN DEL VECTOR DE ESTADOS

Figura 3.6: Polos del sistema (3.2) en lazo cerrado

y su polinomio característico resulta:

pA−BK(s) = det(sI −A)

= s3 +

(R

L+K3

L

)s2 +

(−2

K2

L

√cg

mX−

g

X

)s

+

(−2

K1

L

√cg

mX−

g

X

(R

L+K3

L

))Si igualamos este polinomio, término a término, con el polinomio deseado pd(s) dado por

(3.3), obtenemos el siguiente sistema de ecuaciones lineales para las ganancias de realimentaciónK1, K2 y K3,

R

L+K3

L= 2ζωn + α

− 2K2

L

√cg

mX−

g

X= ω2

n + 2ζωnα

− 2K1

L

√cg

mX−

g

X

(R

L+K3

L

)= ω2

de donde resultan

K1 = −L√mX

(2g ζ ωn + gα+ ω2

nαX)

2√cgX

; K2 = −L√mX

(g + ω2

nX + 2 ζ ωn αX)

2√cgX

;

K3 = −R+ 2 ζ ωn L+ αL

El esquema de control está representado entonces, al menos conceptualmente, por medio deldiagrama mostrado en la Figura 3.7.

El controlador lineal queda dado por la siguiente expresión:

u =

(L√mX

(2g ζ ωn + gα+ ω2

nαX)

2√cgX

)(x1 −X)

−(L√mX

(g + ω2

nX + 2 ζ ωn αX)

2√cgX

)x2 − (−R+ 2 ζ ωn L+ αL)

(x3 −

√mgX

c

)

Ejemplo 3.2: Diseño del control lineal de un reactor de fisión por medio delinealización aproximadaLa linealización del Modelo 12 , en la página 17, alrededor del punto de equilibrio

x1 = X1(N) = N ; x1 = X1(N) =βN

λL; u = 0

3.2 DISEÑO DE CONTROLADORES MEDIANTE LINEALIZACIÓN APROXIMADA 61

Figura 3.7: Esquema de realimentación lineal de estados para el sistema de levitaciónmagnética

se expresa mediante

x1δ = −β

Lx1δ + λx2δ +

N

Luδ

x2δ =β

Lx1δ − λx2δ

Así, las matrices del sistema A y de entrada B están dadas por:

A =

−β

β

L−λ

; B =

[ N

L0

]

El sistema es evidentemente controlable pues su matriz de controlabilidad es no singular comose puede constatar facilmente:

C = [B : AB] =

N

L−βN

L2

0βN

L2

; det C =βN2

L36= 0

De esta forma, utilizamos para el sistema lineal la ley de control incremental dada por

uδ = −K1x1δ −K2x2δ ,

lo cual hace que el sistema en lazo cerrado adquiera la forma:

xδ =

[− β

L− N

LK1 λ− N

LK2

βL

−λ

]xδ

El polinomio característico de este sistema está dado por:

pA−KB = s2 +

(λ+

β

L+N

LK1

)s+

(λN

LK1 +

βN

L2K2

)(3.4)

62 REALIMENTACIÓN DEL VECTOR DE ESTADOS

Evidentemente, las ganancias de diseño K1 y K2 pueden escogerse independientementepara hacer que el polinomio característico del sistema en lazo cerrado iguale a un cierto polinomiocaracterístico deseado, dado por

pd = s2 + 2ζωns+ ω2n (3.5)

Los valores de K1 y K2 se obtienen entonces igualando término a término los coeficientes delos polinomios (3.4) y (3.5):

K1 =L

N

(2ζωn − λ−

β

L

); K2 =

L2

βN

[ω2

n − λ

(2ζωn − λ−

β

L

)]La ley de control realimentado que estabiliza el modelo incremental se expresa entonces de

la manera siguiente:

uδ = −L

N

(2ζωn − λ−

β

L

)x1δ −

L2

βN

[ω2

n − λ

(2ζωn − λ−

β

L

)]x2δ

La ley de control lineal que estabiliza al sistema no lineal se consigue sustituyendo las varia-bles incrementales x1δ , x1δ y xδ por sus valores:

x1δ = x1 −N ; x2δ = x2 −βN

λL; uδ = u

de donde resulta

u = −L

N

(2ζωn − λ−

β

L

)(x1 −N)−

L2

βN

[ω2

n − λ

(2ζωn − λ−

β

L

)](x2 −

βN

λL

)

3.3. Ejemplos en Matlab (R)

Basados en la técnica de linealización aproximada, a continuación sepresenta el diseño de controladores basados en realimentación del vectorde estados para dos sistemas no lineales: un artefacto espacial y un reactorde fisión. Se ilustra por medio de Matlab (R) la respuesta en lazo cerrado,simulada numéricamente, para observar el desempeño de dichos contro-ladores.

Ejemplo 3.3: Diseño del control (lineal) de la orientación de un artefactoespacialConsideremos nuevamente el Modelo 6 , en la página 12:

x1 = x2

x2 =FL

Jsenx3

x3 = Ru

Bajo la suposición de que todas las variables de estado son medibles y, por lo tanto, utiliz-ables en cualquier política de control realimentado, procedemos a definir las variables perturbadasalrededor de los valores nominales de equilibrio, los cuales, se asume, son coincidentes con lascondiciones inherentes a la posición deseada:

x1δ = x1 −Θ; x2δ = x2; x3δ = x3; uδ = u

La linealización del sistema alrededor de su punto de equilibrio constante está dada por las ecua-ciones:

x1δ= x2δ

x2δ=

(FL

JcosX3

)X3=0

x3δ =FL

Jx3δ

x3δ= Ruδ

3.3 EJEMPLOS EN MATLAB (R) 63

las cuales se reescriben en términos matriciales en la forma:

d

dt

x1δ

x2δ

x3δ

=

0 1 0

0 0 FLJ

0 0 0

x1δ

x2δ

x3δ

+

00R

uδ (3.6)

A continuación, algunas características a notar. El sistema linealizado es independiente delpunto de equilibrio. También es fácil ver que el sistema es completamente controlable debido aque la matriz de controlabilidad, dada por:

C =

0 0 FLRJ

0 FLRJ

0R 0 0

,es de rango completo (es decir, rango C = 3) pues su determinante es distinto de cero.

Proponemos una ley de control realimentado del tipo lineal especificada mediante la expresión

uδ = −K1x1δ −K2x2δ −K3x3δ

Esta ley de control conlleva, en consecuencia, la siguiente expresión para el sistema contro-lado en lazo cerrado:

d

dt

x1δ

x2δ

x3δ

=

0 1 0

0 0 FLJ

−RK1 −RK2 −RK3

x1δ

x2δ

x3δ

Puesto que nuestro interés fundamental está en inducir una dinámica controlada, para el val-

or de las perturbaciones del estado, de naturaleza asintóticamente estable a cero, los valores delas ganancias K1, K2, K3 deben especificarse de tal manera que los autovalores del sistemaautónomo anterior (sistema en lazo cerrado) tengan parte real negativa. Con el objeto de obteneresta especificación calculamos el polinomio característico y lo igualamos a alguno del cual sabe-mos tiene sus raíces en el semiplano izquierdo en valores preestablecidos.

El polinomio característico del sistema lineal en lazo cerrado está dado por:

det(sI −A+BK) = det

s −1 0

0 s −FLJ

RK1 RK2 s+RK3

(3.7)

= s3 +RK3s2 +

FLRK2

Js+

FLRK1

J(3.8)

Como puede apreciarse, de la conformación de este polinomio característico resulta que los pa-rámetros de diseño K1, K2 y K3 intervienen independientemente en cada término del polinomio.Este hecho permitirá obtener estos valores al igualar el polinomio característico a uno deseadocuyos polos se encuentran en el semiplano izquierdo.

Supongamos que deseamos contar con una localización de polos como la que se muestraen la Figura 3.8. Es decir, deseamos que el polinomio característico pd en lazo cerrado esté dadopor:

pd(s) = (s+ a)(s+ b− j c)(s+ b+ j c) = (s+ a)(s2 + 2bs+ b2 + c2)

= s3 + (2b+ a)s2 + (b2 + c2 + 2ab)s+ a(b2 + c2) (3.9)

donde a, b y c son conocidos y se escogen de tal manera que la respuesta temporal, por ejemplo,tenga características deseables (tiempo de ascenso, sobrepaso, tiempo de estabilización, etc.).

Igualando los coeficientes de las mismas potencias de los polinomios (3.8) y (3.9) obtenemosel siguiente conjunto de ecuaciones para los parámetros de diseño:

RK3 = 2b+ a

FLRK2

J= b2 + c2 + 2ab

FLRK1

J= a(b2 + c2)

64 REALIMENTACIÓN DEL VECTOR DE ESTADOS

Figura 3.8: Ubicación de polos, en el plano complejo, para el artefacto espacial en lazocerrado

de donde obtenemos en forma inmediata los valores requeridos de los parámetros de diseño:

K1 = Ja(b2 + c2)

FLR; K2 = J

b2 + c2 + 2ab

FLR; K3 =

2b+ a

R

La ley de control lineal retroalimentada que estabiliza el modelo incremental alrededor delorigen está dada entonces por:

uδ = −Ja(b2 + c2)

FLRx1δ − J

b2 + c2 + 2ab

FLRx2δ −

2b+ a

Rx3δ

El controlador lineal que estabiliza el sistema a su punto de equilibrio x1 = Θ, x2 = 0, x3 = 0,se obtiene sustituyendo las variables incrementales en el controlador lineal por sus valores enfunción de las variables originales. En este caso, el controlador está dado entonces por:

u = uδ = −Ja(b2 + c2)

FLR(x1 −Θ)− J

b2 + c2 + 2ab

FLRx2 −

2b+ a

Rx3 (3.10)

Es necesario recalcar queValidez local

la validez del controlador lineal obtenido anteriormente se cir-cunscribe a valores cercanos al punto de equilibrio deseado.

En virtud de las no linealidades del sistema, cuando se pretende utilizarun control lineal simple que, de por sí, no toma en cuenta las complejidadesglobales del sistema y solo sus expresiones locales, el resultado puede serun rotundo fracaso en lograr el control del sistema. Esto se ilustra en lospróximos párrafos mediante simulaciones numéricas realizadas en el com-putador.Control lineal del

artefacto espacialmedianterealimentacióndel vector deestado

Matlab 3.1: Simulación del comportamiento en lazo cerrado del artefactoespacial, controlado mediante linealización aproximadaLas respuestas del sistema controlado (1.13) en lazo cerrado con la ley de control (3.10) se mues-tran en la Figura 3.9. En este gráfico se presentan la posición angular de orientación de la tobera,la velocidad angular de orientación, la posición angular de la tobera, así como la señal de controlusada en estabilizar el sistema. Note que el sistema tiene como condición inicial x1(0) = 2 rad,x2(0) = 0 rad/seg, x3(0) = 0 rad. Los valores utilizados en la simulación fueron:Parámetros del sistema:

F = 200; L = 3; R = 20; J = 50;

3.3 EJEMPLOS EN MATLAB (R) 65

Figura 3.9: Comportamiento en lazo cerrado del artefacto espacial controlado

66 REALIMENTACIÓN DEL VECTOR DE ESTADOS

Figura 3.10: Comportamiento del artefacto espacial obtenido por simulación del sistemacontrolado, para desviaciones iniciales significativas del punto de equilibrio

Parámetros del controlador:

a = 2,0; b = 3,5; c = 12,75; θ = 2,5

Como se observa en la Figura 3.9, el controlador (3.10) estabiliza, exitosamente, la posición an-gular del artefacto desde una posición “cercana” a la posición deseada.

El listado del programa sejem1.m, con el cual se pueden obtener las simulaciones numéricas,se presenta en el Listado 3.1. En el programa sejem1.m incluimos los comandos necesarios parala generación de los gráficos. En el Listado 3.2 se transcribe el programa ejemplo1.m, realizadoen Matlab (R), donde se presenta el modelo y la ley de control lineal del sistema no lineal.

Recordemos que hemos mencionado que el método de la linealización aproximada funcionaráen tanto las perturbaciones sean “suficientemente pequeñas”. Sin embargo, determinar cuandoesto ocurre solo depende del sistema estudiado en particular. Utilizaremos el ejemplo desarrol-lado para ilustrar nuestro punto. En la Figura 3.10 se ha repetido la simulación anterior desdeuna posición inicial suficientemente alejada de la posición final de equilibrio, en este caso parax1(0) = 0. Se puede observar que, bajo estas condiciones, el controlador lineal falla en estabilizarel sistema al valor de equilibrio deseado, el sistema ya no se estabiliza alrededor de Θ = 2,5 rad.Ejercicio: Explique este hecho. Determine los puntos de equilibrio del sistema en lazo cerrado yobserve cuáles son estables y cuáles inestables.

t

3.3 EJEMPLOS EN MATLAB (R) 67

Listado 3.1: Programa de simulación del artefacto espacial sejem1.m

% sejem1.m% Programa de generacion de los graficos del ejemplo1.m

% tiempo de simulacionti = 0; tf = 3;

%% condiciones iniciales:%% cerca del punto de equilibriox0 = [2 0 0]’;

%% lejos del p.e.%%x0 = [0 0 0]’;

%% simulacion[t,x] = ode45(’ejemplo1’,[ti tf],x0);

%% Posicion angular (x(1))subplot(2,2,1), plot(t,x(:,1))title(’Posición angular’)xlabel(’tiempo t’)ylabel(’theta’)

%% Velocidad angular (x(2))subplot(2,2,2), plot(t,x(:,2))title(’Velocidad angular’)xlabel(’tiempo t’)ylabel(’omega’)

%% Angulo de orientación de la tobera (x(3))subplot(2,2,3), plot(t,x(:,3))title(’Orientación de la tobera’)xlabel(’tiempo t’)ylabel(’beta’)

%% Variable de control (u)F = 200; L=3; R=20; J =50; a =2; b=3.5; c = 12.75; Theta = 2.5;

u = -J*a*(b^2+c^2)/F/L/R*(x(:,1)-Theta)-J*(b^2+c^2+2*a*b)/F/L/R*x(:,2)-...(2*b+a)/R*x(:,3);

subplot(2,2,4), plot(t,u)title(’Variable de control’)xlabel(’tiempo t’)ylabel(’u’)

% fin de sejem1.m

68 REALIMENTACIÓN DEL VECTOR DE ESTADOS

Listado 3.2: Simulación del artefacto espacial: modelo ejemplo1.m

function xdot=ejemplo1(t,x)%% ejemplo1.m%%%% Primer ejemplo de simulacion numerica:%% Control de orientacion de un artefacto espacial por medio%% de linealizacion aproximada%%%% Este programa simula la respuesta de un modelo de tercer%% orden, que representa un artefacto espacial del cual se requiere%% una reorientacion angular mediante control de las variables%% de estado: posicion, velocidad y orientacion de la tobera.%% El controlador disen~ado esta basado en linealizacion%% aproximada alrededor del punto de equilibrio deseado.

%% parametros del sistemaF = 200; L=3; R=20; J =50;

%% parametros del controladora =2.0; b=3.5; c = 12.75; Theta = 2.5;

%% Ley de controlu = -J*a*(b^2+c^2)/(F*L*R)*(x(1)-Theta)-J*(b^2+c^2+2*a*b)/F/L/R*x(2)-...(2*b+a)/R*x(3);

%% Ecuaciones de estadoxdot = [x(2) ; F*L/J*sin(x(3)) ; R*u];

%% Fin de ejemplo1.m

Matlab 3.2: Ejemplo de diseño para un proceso incontrolable de produc-ción de etanolLa linealización del Modelo 14 , en la página 18, alrededor del punto de equilibrio (1.32)

x1 = X1(E) = E; x2 = X2(E) = 1− E; u = U(E) =1− E

E,

arroja la siguiente expresión para la dinámica incremental:

x1δ = x2δ − x1δ1− E

E− Euδ

x2δ = −1

Ex2δ + (1− x2)uδ

(3.11)

Es decir, las matrices del sistema incremental resultante están dadas por

A =

−1− E

E1

0 −1

E

; B =

[−EE

]

Es fácil ver que el sistema lineal no satisface la condición de controlabilidad. En efecto, lamatriz de controlabilidad está dada por

C = [B : AB] =

[−E 1E −1

]de tal forma que su determinante se anula, det C = 0.

En este caso, el procedimiento a seguir consiste en transformar el sistema linealizado, conel objeto de esclarecer cuál de los modos del sistema es el modo incontrolable. Es necesarioseguir los siguientes pasos porque lo que queremos es determinar si el modo incontrolable esestabilizable (esto es, posee una dinámica asintóticamente estable a cero).

3.3 EJEMPLOS EN MATLAB (R) 69

Considérese la siguiente transformación del vector de estados:

z1δ = x1δ + x2δ

z2δ = x1δ

(3.12)

la cual es, evidentemente, invertible.Las ecuaciones diferenciales para zδ resultan ser:

z1δ =

(1−

1

E

)z1δ

z2δ = −1

Ez2δ + Euδ

De las ecuaciones resultantes, la última exhibe claramente a z1δ como modo incontrolable delsistema, mientras que z2δ representa el modo controlable del mismo.

Afortunadamente, como se observa, el modo incontrolable del sistema es, evidentemente,asintóticamente estable, en virtud de las restricciones, dadas por (1.33), que pesan sobre el valorde E desde un principio, 0 < E < 1. Esto hace que la cantidad 1 − 1/E, que representa elautovalor asociado a z1δ , sea, efectivamente, menor que cero. En conclusión, el valor de estavariable de estado transformada tiende a cero, por sí sola, en forma exponencial.

El diseño del controlador se reduce a prescribir una ley de control que estabilice al modo z2δ

a cero (z2δ = x1δ = concentración incremental de etanol.Hacemos, entonces,

uδ = −Kz2δ = −Kx1δ

de donde resulta un sistema en lazo cerrado de la forma

z2δ = −(

1

E+KE

)z2δ

Igualando el único autovalor a una cantidad real negativa −λ, se tiene:

uδ = −Kx1δ = −1

E

(λ−

1

E

)x1δ

Es evidente que el controlador no hace uso de la variable de estado (o modo) incontrolable delsistema.

Como consecuencia de la política de control adoptada para el sistema incremental transfor-mado, además del hecho de que la parte incontrolable del sistema presenta una dinámica asintóti-camente estable a cero, ambos valores de las variables z1δ y z2δ convergen a cero. Por lo tanto,debido a la transformación (3.12), x1δ y x2δ convergen también a cero. Los estados originales x1

y x2 del sistema convergen, como queríamos, a sus puntos de equilibrio.El controlador lineal, que regula al sistema no lineal, está dado entonces por:

u = U(E)−1

E

(λ−

1

E

)(x1 − E)

=1− E

E−

1

E

(λ−

1

E

)(x1 − E)

En la Figura 3.11 se muestra la simulación del comportamiento controlado del sistema en lalazo cerrado. El punto de equilibrio tomado para la concentración de etanol es de E = 0,7.

t

70 REALIMENTACIÓN DEL VECTOR DE ESTADOS

Listado 3.3: Programa de simulación del proceso incontrolable de producción de etanolsejem2.m

% sejem2.m% Programa de simulacion y generacion de los graficos del ejemplo2.m

% tiempo de simulacionti = 0;tf = 4;

%% condiciones iniciales:x0 = [0.1 0.9]’;

%% simulacion[t,x] = ode45(’ejemplo2’,[ti tf],x0);

%% Concentracion del etanol (x(1))subplot(2,2,1), plot(t,x(:,1))title(’Concentración del etanol’)xlabel(’tiempo t’)ylabel(’x1’)

%% Concentracion del azucar (x(2))subplot(2,2,2), plot(t,x(:,2))title(’Concentración de azúcar’)xlabel(’tiempo t’)ylabel(’x2’)

%% Variable de control (u)

E = 0.7 ; Ue = (1-E)/E;lambda = 1 ;

u = Ue -(1/E)*(lambda-1/E)*(x(:,1)-E) ;

subplot(2,2,3), plot(t,u)title(’Rata de alimentación del sustrato’)xlabel(’tiempo t’)ylabel(’u’)

% fin de sejem2.m

3.3 EJEMPLOS EN MATLAB (R) 71

Figura 3.11: Respuesta en lazo cerrado del sistema de fermentación estabilizable

72 REALIMENTACIÓN DEL VECTOR DE ESTADOS

Listado 3.4: Modelo y ley de control ejemplo2.m empleados para la simulación

function xdot=ejemplo2(t,x)%% ejemplo2.m%%%% Segundo ejemplo con simulaciones numericas del%% libro:%% Control de Sistemas No Lineales%% Hebertt Sira-Ramirez%%%% Control de un proceso incontrolable de produccion%% de etanol por medio del metodo de linealizacion aproximada%%

%% parametros del sistemaE = 0.7 ; Ue = (1-E)/E;

%% parametros del controladorlambda = 1 ;

%% Ley de controlu = Ue -(1/E)*(lambda-1/E)*(x(1)-E) ;

%% Ecuaciones de estadoxdot = [ x(2)-x(1)*u ; -x(2)+ (1-x(2))*u ];

%% Fin de ejemplo2.m

3.4. Ejercicios propuestos

Ejercicio 3.1: Control del péndulo invertido sobre una plataforma móvilmediante realimentación del vector de estado en Matlab (R)

Diseñe un controlador por realimentación del vector de estados basado en linea-lización aproximada para el sistema (2.24). Realice los programas necesarios enMatlab (R) para realizar las simulaciones. Los valores de los parámetros a usar enlas simulaciones se presentan en la tabla 3.5.

Tabla 3.5: Parámetros usados en el sistema del péndulo invertido sobre una plataformamóvil

Parámetro Valor Parámetro ValorM 0.5 [kg] m 0.2 [kg]J 0.006 [kg·m2] L 0.3 [m]C 0.0 F 0.1 [N/m/seg]

Como requerimiento de diseño, el comportamiento del sistema en lazo cerradodebe ser tal que el tiempo de asentamiento sea inferior a 5 segundos, ts < 5 [seg].

(? ? ?)

Ejercicio 3.2: Sistema de levitación magnéticaConsidere el sistema de levitación magnética, Modelo 8, en la página 14. Re-

alice las simulaciones correspondientes para el siguiente conjunto de valores de los

3.4 EJERCICIOS PROPUESTOS 73

Figura 3.12: Sistema de dos conductores acoplados magnéticamente

parámetros del sistema:

c = 1

[m2kg

seg2Amp2

]; g = 9,8 [m/seg2]; m = 0,1 [kg]

R = 1 [Ω]; L = 0,01 [Henrio]; X = 0,05 [m]

Las especificaciones de diseño se dejan a libre escogencia. ¿Qué criterios uti-lizaría para proponer una colocación de polos adecuada? Sugerencia: Tome en cuen-ta los diagramas utilizados en este capítulo.

(?)

Ejercicio 3.3: Control lineal de un aro rotatorio (giroscopio)Diseñe el controlador lineal por realimentación del vector de estado del Mo-

delo 16, en la página 19, alrededor del punto de equilibrio nominal del sistema.Busque los parámetros físicos necesarios para poder analizar, mediante simula-ciones numéricas, el comportamiento del sistema en lazo cerrado. Proponga, conla ayuda del instructor del curso, los objetivos de control necesarios que permitiríandefinir exactamente la estrategia de control.

(??)

Modelo 24: Conductores eléctricos acopladosUn conductor muy largo se fija en posición vertical y por él se hace pasar una corriente I que actúacomo variable de control. Otro pequeño conductor, de longitud L y masa m, también se coloca enposición vertical y se fija a un resorte que puede moverse horizontalmente. Ver Figura 3.12. Por elconductor pequeño se hace circular una corriente i, fija. La fuerza de atracción o de repulsión quese establece sobre el conductor móvil está dada por:

fe =2IiL

a− x

donde x corresponde a la distancia al conductor “pequeño”.

74 REALIMENTACIÓN DEL VECTOR DE ESTADOS

Cuando la corriente I = 0, el resorte se encuentra en reposo y sin ejercer fuerza alguna a ladistancia x = L0.

La ecuación del movimiento del conductor pequeño está dada por:

mx = −k(x− L0) +2IiL

a− x

donde a es la distancia que se muestra en la Figura3.12 y k es la constante de elasticidad delresorte. La ecuación anterior es válida para L0 < x < a. Supondremos, por tanto, que L0 < x <a.

Supóngase que se desea controlar la posición del conductor pequeño a un valor constantex = X tal que L0 < X < a. Escogiendo las variables del sistema como

x1 = x; x2 = x; u = I

las ecuaciones de estado del sistema resultan, entonces:

x1 = x2

x2 = −k(x1 − L0) +2iL

a− x1u

(3.13)

Evidentemente el punto x2 = 0, x1 = L0 y u = I = 0 constituye un punto de equilibrio,el cual es claramente estable. Pero estamos interesados en mantener como punto de equilibriola condición: x2 = 0, x1 = X > 0 con el resorte sujeto a cierta tensión constante. Para talesvalores de equilibrio se tiene la siguiente parameterización del punto de equilibrio (en términos dela distancia nominal X):

u = U(X) =k(X − L0)(a−X)

2iL; X1(X) = X; X2(X) = 0 (3.14)

M

Ejercicio 3.4: Control lineal de conductores eléctricos acopladosCalcule la ley de control por realimentación del vector de estados, dado un poli-

nomio genérico deseado de segundo orden, para el sistema (3.13), alrededor del pun-to de equilibrio (3.14). (?)

Modelo 25: Péndulo invertido controlado por un motor de corriente con-tinua a través de un sistema de engranajeConsideremos, otra vez, el modelo del manipulador robótico mostrado en la Figura 1.8, en la pági-na 15, viendolo esta vez como un péndulo invertido controlado por un motor de corriente continua.

Para obtener el modelo se pueden plantear las siguientes suposiciones:

1. El motor es controlado por armadura.

2. La inercia del motor Jm es insignificante comparada con la inercia del péndulo invertidoJp.

3. Jp = Ml2, es decir, la inercia del péndulo es calculada como si la masa estuviese concen-trada en el extremo del péndulo de longitud l.

4. El sistema de engranajes no presenta histéresis (“backlash” en inglés). Todos sus elemen-tos son rígidos.

5. Se desprecian las fuerzas de roce.

El esquema del motor de corriente continua controlado por armadura se presenta en la Figu-ra 2.3, página 40.

3.4 EJERCICIOS PROPUESTOS 75

Tomando como variables de estado x1 = θp, x2 = θp = ωp, x3 = ia, el modelo quedaexpresado por las siguientes ecuaciones: x1

x2

x3

=

x2gl

senx1 + NKvMl2

x3

−KbNLa

x2 − RaLax3

+

001

La

uy = [1 0 0]

x1

x2

x3

(3.15)

donde Kv es la constante de torque del motor, Kb es la constante de fuerza contra electromotriz(back emf, en inglés) y N es la relación de engranajes. El punto de equilibrio del sistema, para-metrizado en función de la corriente de armadura, es el siguiente:

x1 = sen−1

[−NKv

MlgRaU

], x2 = 0, x3 =

U

Ra, u = arbitrario = U

M

Ejercicio 3.5: Control por realimentación de estado: péndulo invertido con-trolado por un motor de corriente continua a través de un sistema de en-granaje

Tome el modelo precedente y haga un análisis del sistema linealizado, estudietanto la estabilidad del sistema en lazo abierto como la controlabilidad. Diseñe uncontrolador por realimentación del vector de estado, asumiendo un polinomio desea-do (¿de qué orden?) y suponiendo que se pueden medir todos los estados (discuta sifísicamente esta hipótesis se puede cumplir. (??)

Ejercicio 3.6: Fórmula de AckermannSe sugiere al lector investigar la fórmula de Ackermann, un conocido procedi-

miento utilizado en la demostración del teorema de colocación de polos. Muchostextos que tratan la teoría de control lineal estudian esta fórmula, incluyendo losmencionados más adelante en Lecturas recomendadas. El texto del autor orig-inario es J. Ackermann, Sampled-Data Control Systems, Springer-Verlag, Berlin,Alemania, 1985.

Otra fórmula que utilizaremos más adelante, sobre todo para el método de lalinealización extendida, es la siguiente:Fórmula de Bass-Gura. Esta fórmula La presentamos aquí con el objetivo de serautocontenido. Está dada por la siguiente expresión:

K(U) = (α− a(U))[R−1(U)]T C−1(U) (3.16)

donde α = [αn αn−1 . . . α1] es el vector formado por los coeficientes del polinomiocaracterístico deseado del sistema en lazo cerrado:

pd(s) = sn + αnsn−1 + . . .+ α1 , (3.17)

y a(U) = [an(U) an−1(U) ldots a1(U)] es el vector formado con los coeficientes delpolinomio característico de la matriz A(U), es decir,

p(s) = det(sI −A(U)) = sn + an(U)sn−1 + . . .+ a1(U) , (3.18)

76 REALIMENTACIÓN DEL VECTOR DE ESTADOS

R(U) es una matriz triangular de Toepliz, dada por

R(U) =

1 0 . . . 0

a1(U) 1 . . . 0...

.... . .

...an−1(U) an−2(U) . . . 1

(3.19)

yC(U) = [B(U) A(U)B(U) ... A(n−1)(U)B(U)] (3.20)

es la matriz de controlabilidad del par (A(U), B(U)). El polinomio característicodeseado se selecciona de tal manera que presente coeficientes constantes e indepen-dientes de U .

(??)

Ejercicio 3.7: Controlabilidad de la esfera sobre un rielConsidere el Modelo 17, en la página 22. Determine la controlabilidad local del

sistema (1.39) alrededor del punto de equilibrio calculado en la Sección 1.6.(??)

Ejercicio 3.8: Preguntas contenidas en el textoPágina 59: ¿Cómo se explica esta inestabilidad desde el punto de vista físico?Página 66: Explique este hecho. Determine los puntos de equilibrio del sistema

en lazo cerrado y observe cuáles son estables y cuáles inestables.(?)

3.5. Resumen del capítulo y Lecturas adicionales

A partir del modelo linealizado, cuya obtención ya se describió en elCapítulo 2, se plantea un esquema de diseño de leyes de control por re-alimentación del vector de estados. Este método es aplicable mientras sedisponga de la medición completa de cada una de las componentes del es-tado incremental. Como veremos en el próximo capítulo, será posible, sinembargo, obtener valores estimados de las componentes no medidas a par-tir de la medición de una o varias variables de salida.

Note que, para no ahondar en detalles que escapan a los objetivos deeste texto, hemos asumido que el lector posee conocimientos básicos sobrela realimentación del vector de estado. Recomendamos al lector dirigirsea la gran variedad de textos sobre sistemas de control lineal que tratandetalladamente este tema, en especial el diseño mediante realimentacióncompleta del vector de estado.

Lecturas recomendadasSobre las consideraciones de diseño de controladores lineales en el espa-

cio de estado, el lector puede consultar, por ejemplo (la fórmula de Acker-mann se puede encontrar en cualesquiera de los textos mencionados):

3.5 RESUMEN DEL CAPÍTULO Y LECTURAS ADICIONALES 77

1. T. Kailath, Linear Systems, Prentice-Hall, Englewood Cliffs, NJ, 1980,[Kai80]. Un texto muy completo, con una visión amplia de los difer-entes aspectos de la teoría de control lineal hasta finales de la décadade los 70. Es interesante remarcar que la fórmula de Bass-Gura seencuentra desarrollada aquía.

2. K. Ogata, Ingeniería de control moderna, Prentice Hall, 1993, [Oga93].

3. Gene F. Franklin, J. David Powell, A. Emami-Naeini, Feedback Con-trol of Dynamic Systems, 3ra. Edición, Addison-Wesley, 1994, [FPEN94].

4. K. Furuta, A. Sano, D. Atherton, State Variable Methods in AutomaticControl, Wiley, 1988, [FSA88].

Para una introducción a métodos de diseño en el espacio de estados másavanzados, como es el caso del regulador lineal cuadrático, llamado diseñoLQR, refiérase a:

P. Dorato, C. Abdallah, V. Cerone, Linear-Quadratic Control: An intro-duction, Prentice Hall, Englewood Cliffs, New Jersey, 1995, [DAC95].

Una referencia histórica sobre la asignación de polos es la siguiente:

W. M. Wonham, “On pole assignment in multi-input controllable lin-ear systems”, IEEE Trans. Automat. Contr., vol. 12, pp. 660–665, 1967,[Won67].

Una referencia útil sobre el uso de Matlab (R) para el caso de sistemaslineales (colocación de polos, LQR, diseño de compensadores PID, adelanto,adelanto-atraso, H∞, etc.) es el libro:

Bahram S., M. Hassul, Control System Design using Matlab, PrenticeHall, Englewood Cliffs, New Jersey, 1995, [BH95].

4

Observadores dinámicosde estado

Foto

Este capítulo considera la construcción de un controlador sobre labase de diseño de un observador o reconstructor del vector deestado, cuando sólo se dispone del conocimiento de la salida, dela entrada y de la estructura del sistema lineal.

En el caso en que se disponga de alguno o algunos de los estadoses posible además plantearse la construcción de observadores deorden reducido. La Sección 4.5 se dedica al caso de diseño deobservadores de orden reducido.

4.1. Introducción

En los desarrollos anteriores, hicimos la suposición explícita de que to-dos y cada uno de los estados del sistema no lineal estaban disponibles parasu utilización en las leyes de control retroalimentadas, las cuales fueron sin-tetizadas a partir de los errores de equilibrio de tales estados con respecto

78

4.2 RECONSTRUCCIÓN DEL VECTOR DE ESTADO 79

a sus valores de equilibrio nominales constantes.Esta suposición no siempre es válida, pues en una gran cantidad de ca-

sos prácticos solo algunos estados están disponibles fisicamente para llevara cabo mediciones sobre ellos. En la mayoría de los casos, solamente la vari-able de salida se encuentra a nuestra disposición y, por lo tanto, con todo loque contamos es con una relación (a través de las ecuaciones) entre el valorde la salida y su dependencia con respecto a los estados.

Esta situación debe resolverse, entonces, tratando de inferir un valorestimado del vector de los estados a partir de nuestro conocimiento delsistema, de nuestra disponibilidad de los valores de la salida y delconocimiento inequívoco de los valores del control que estamos sum-inistrando al sistema. Este proceso de inferencia recibe el nombre de esti-mación o reconstrucción del vector de estado.

El proceso de estimación del vector de estado para un sistema no li-neal ha sido investigado y resuelto solo recientemente y sus desarrollos re-quieren de una base adecuada de la geometría diferencial. Restringiremos,sin embargo, nuestra atención al problema de reconstruir el vector de esta-do incremental con el objeto de utilizarlo en la ley de realimentación linealbasada en la linealización aproximada del sistema no lineal.

Desde este punto de vista, el problema que nos planteamos en este mo-mento es mucho más sencillo pues se reduce a reconstruir u observar elvector de estados incrementales, o perturbados, que se suceden alrededorde los valores nominales de operación del sistema no lineal.

El modelo que hemos dado en aceptar como válido para tales valoresincrementales del estado es un modelo dinámico lineal (resultante de lalinealización aproximada), el cual resultó ser además invariante en el tiem-po. Debido a esto, solamente precisaremos utilizar la solución del problemade estimación de sistemas dinámicos lineales.

El problema de reconstrucción del vector de estado, o, equivalentemente,de construcción (diseño) de un observador para un sistema lineal fué resuel-to a principios de los años 60 por un profesor americano de nombre DavidLuenberger [Lue66, Lue71]. En su honor, el observador determinístico deestado recibe en la literatura el nombre de “Observador de Luenberger".

4.2. Reconstrucción del vector de estado

Considérese el sistema lineal, que suponemos aproxima dentro de unprimer orden los valores de las perturbaciones del vector de estado de unsistema no lineal.

xδ = A xδ + B uδ

yδ = C xδ

(4.1)

donde xδ es el vector de estado n-dimensional, uδ es un escalar que rep-resenta a la variable de control y la variable yδ es la salida (escalar) del

80 OBSERVADORES DINÁMICOS DE ESTADO

Figura 4.1: Esquema de realimentación lineal con medición total de las componentes delvector de estado

Figura 4.2: Esquema de realimentación lineal del sistema aproximado con medición totalde las componentes del vector de estado

sistema.Como yδ no coincide con el estado del sistema, por cuanto hay una obvia

diferencia en cuanto a las dimensiones se refiere, no disponemos del estadoincremental xδ para hacer control realimentado del sistema, tal como lohicimos en la sección anterior. El valor del estado inicial xδ(t0) es, además,desconocido.

Recordemos que en el esquema de control de la Sección 3.2, tuvimos lanecesidad de utilizar el vector de estado incremental completo, esto con elobjeto de sintetizar la acción de control realimentada incremental corre-spondiente que lograba la estabilización del sistema no lineal. Este esque-ma se transcribe nuevamente por razones didácticas en la Figura 4.1. Lavalidez del control lineal reside a en que este diagrama es equivalente, enuna primera aproximación, al de la Figura 4.2.

4.2 RECONSTRUCCIÓN DEL VECTOR DE ESTADO 81

Figura 4.3: Esquema de aproximación del comportamiento entrada-salida del sistema nolineal

A diferencia de esa situación, ahora solo tenemos disponible la salidaincremental yδ(t) del sistema no lineal. Es decir, ahora visualizamos lasituación de la manera como se muestra en la Figura 4.3. En esta figura,Y = Y (U) = h(X(U)) es el valor nominal (de equilibrio) de la salida. En lapráctica, al par de valores nominales (Y, U) se les llama punto de operacióndel sistema, éstos son precisamente los valores en los cuales el operadorestá generalmente interesado.

Debemos entonces tratar de reconstruir el estado incremental xδ a par-tir del conocimiento del sistema, es decir, a partir del conocmiento de lasmatrices A, B y C, de las mediciones realizadas sobre la salida yδ y del in-negable conocimiento que seguramente tendremos del valor del control uδ,el cual estamos en capacidad de suministrar al sistema (y, por lo tanto, encapacidad de medir y conocer a plenitud).

Con este objetivo en mente, debemos entonces

Sintetizar un proceso dinámico de estimación, es decir, debemosproponer un sistema dinámico el cual acepte por entradas losvalores del control y de la salida y produzca como resultado unvalor estimado del estado incremental del sistema linealiza-do.

Al valor resultante de este proceso de reconstrucción del estado incre-mental lo designaremos mediante xδ. El observador realizará, por ende,la función representada en el diagrama de bloques que se muestra en laFigura 4.4. Note que el diagrama se ha dispuesto a propósito de derechaa izquierda y no en la manera habitual, esto debido que este bloque serámayormente utilizado en el lazo de realimentación.

La idea es utilizar este reconstructor de estado en el esquema de controlque propusimos en el capítulo anterior (Cap. 3) tal como si el valor del esta-do reconstruido xδ coincidiera con el valor real (no disponible) del vector deestado xδ. Es decir, nuestra propuesta para controlar el sistema está basadaen el diagrama de bloques de la Figura 4.5.

82 OBSERVADORES DINÁMICOS DE ESTADO

Figura 4.4: Observador dinámico de estado

Figura 4.5: Esquema de realimentación lineal de salida para un sistema no lineal, uti-lizando un observador dinámico de estado

4.3 OBSERVADOR DE LUENBERGER: CONVERGENCIA 83

Para garantizar la validez de este esquema debemos saber, en primerlugar, bajo qué condiciones el valor del estado estimado converge al valordel estado verdadero del sistema, es decir, bajo qué condiciones el estadoestimado se aproxima asintóticamente al valor verdadero del estado. Dichode otra manera, necesitamos saber cuáles son las condiciones bajo las cualespodemos garantizar que el error de reconstrucción es asintóticamente establea cero.

En segundo lugar, durante aquel lapso de tiempo en el cual el valor delestado estimado no coincide en forma precisa con el valor del estado in-cremental verdadero, debemos garantizar que el sistema incremental, asíerróneamente controlado (aun cuando de manera temporal), siga siendo as-intoticamente estable a cero.

La primera preocupación resulta fácil de contestar, mientras que la se-gunda requerirá un poco más de análisis. Estudiaremos primeramente elproblema de la convergencia del error de estimación a cero.

4.3. Observador de Luenberger: convergencia

En virtud de que tratamos de estimar el estado de un sistema lineal,no resulta del todo ilógico proponer un reconstructor dinámico que tambiénsea lineal. Así pues, caracterizaremos este reconstructor, evidentemente,utilizando la representación de sistemas dinámicos mediante el vector deestado.

Tomaremos como nuestro observador de estados, o reconstructor, al sis-tema dinámico lineal dado por:

˙xδ = Φxδ + Γuδ + Lyδ , xδ(t0) = x0δ (4.2)

donde la matriz Φ y los vectores Γ y L serán determinados en lo sucesivo, detal manera que sea posible obtener un estimador asintótico de los estadosdel sistema lineal.

Primeramente, definimos el error de observación como la diferencia en-tre el valor real del vector de estado del sistema linealizado y el valor es-timado de tal vector de estado. Esta definición, por supuesto, se extiende alos valores iniciales de tales estados. En resumen, se define:

eδ = xδ − xδ

con valor inicial eδ(t0) = xδ(t0)−xδ(t0) = x0δ−x0δ. Puesto que el valor inicialdel estado verdadero es desconocido, no podemos hacer suposición algunaacerca del valor inicial del error de estimación. En general tendremos quesuponer que tal error inicial es diferente de cero pero no podremos dar cali-ficaciones adicionales sobre la magnitud de esta cantidad vectorial.

Es fácil establecer una ecuación diferencial que describa el comporta-miento del vector de error de estimación en términos de las matrices y vec-tores que definen tanto al sistema original linealizado (4.1) como al obser-vador propuesto (4.2). En efecto: Error de

observación

84 OBSERVADORES DINÁMICOS DE ESTADO

eδ = xδ − ˙xδ = Axδ + Buδ − (Φxδ − Γuδ − Lyδ)= Axδ − Φxδ + Φeδ + (B − Γ)uδ − LCxδ

= (A− Φ− LC)xδ + (B − Γ)uδ + Φeδ (4.3)

La dinámica del error de observación (4.3) no debe depender ni de losvalores de las acciones de control ni de los valores correspondientes queéstas producen en los estados del sistema.

Si hemos de manipular uδ para lograr, digamos, la estabilización delsistema linealizado hacia el origen de coordenadas, no parece lógico queel error de observación dependiera de cuan grandes o pequeñas deban sertales acciones de control. El mismo razonamiento nos conduce a concluirque es igualmente inconveniente que el error de estimación dependa de losvalores que va tomando el vector de estado en su camino hacia la estabi-lización, pues la existencia de sus transientes alejaría, aún más, el valordel estado estimado del real, actuando como perturbaciones en la dinámicadel error. En consecuencia, debemos anular, con una escogencia apropiadade las matrices y vectores Φ, Γ y L, la influencia de los estados y controlesdel sistema original linealizado.

De la ecuación (4.3) es fácil inferir que se requiere entonces que:

Φ = A− LC ; Γ = B (4.4)

lo cual hace que el error de observación evolucione de acuerdo con la dinámi-ca lineal y autónoma dada por:

eδ = (A− LC)eδ ; eδ(t0) = e0δ (4.5)

De esta forma, el error de estimación eδ solo dependerá de si mismo y, enparticular, de su valor inicial.

La solución de la ecuación diferencial lineal vectorial de primer orden,la cual representa al vector de error de estimación, estaría dada aún entérminos del vector columna desconocido L mediante la siguiente expresión:

eδ(t) = e(A−LC)(t−t0)e0δ

En virtud del resultado anterior, estamos en capacidad de predecir elcomportamiento cualitativo de eδ, el cual depende principalmente de la na-turaleza de los autovalores de la matriz Φ = A− LC.

Nuestro objetivo será entonces el de imponer, sobre la dinámica autóno-Convergenciaa cero del errorde observación

ma del error de estimación, un comportamiento asintóticamente estable acero a través de la escogencia juiciosa del vector L. Es decir, debemos es-coger L de tal manera que los autovalores de A − LC se encuentren enel semiplano izquierdo del plano complejo. Al hacer esto se garantiza, final-mente, que el valor del estado estimado converge, efectivamente, de maneraasintótica al valor del estado verdadero del sistema linealizado.

Antes de proceder a hallar el vector requerido L, en virtud de que yahemos determinado algunas matrices inicialmente desconocidas del obser-vador nos permitimos mostrar a continuación el esquema que va adoptando

4.3 OBSERVADOR DE LUENBERGER: CONVERGENCIA 85

Figura 4.6: Estructura del observador dinámico de estado

el mismo. A partir de (4.2) y (4.4), tenemos

˙xδ = (A− LC)xδ + Buδ + Lyδ

= Axδ + Buδ + Lyδ − LCxδ

= Axδ + Buδ + L(yδ − Cxδ) (4.6)

Si hacemosyδ = Cxδ

es decir, si damos el nombre de salida estimada al valor que produce el esta-do estimado cuando es afectado por el mapa de salida C, entonces podemosreescribir las ecuaciones del observador (4.6) como: Observador de

Luenberger˙xδ = Axδ + Buδ + L(yδ − yδ)yδ = Cxδ

(4.7)

al cual llamammos observador dinámico del vector de estado. Note que elsistema resultante representa una especie de “copia” del sistema lineal ori-ginal (4.1). El observador (4.7) puede representarse entonces mediante eldiagrama de bloques mostrado en la Figura 4.6.

La interpretación que podemos hacer de la estructura del observadores directa: el observador de estado no es más que una emulación, con ca-pacidad auto-correctora, de la dinámica del sistema cuyo estado se deseareconstruir.

El vector de parámetros L juega un papel de realimentador del error deestimación en cuanto a su reflejo en los valores de la salida. Precisamente,esta realimentación del error de salida, más propiamente llamada inyecciónde la salida, es la que trata de corregir cualquier discrepancia que existaentre el valor verdadero del vector de estado y su valor estimado.

Nótese que esta entrada adicional “inyectada” al modelo emulador delsistema solo puede tomar valores diferentes a cero cuando la salida del sis-tema no coincide con el valor de la salida estimada y, de hecho, tal error

86 OBSERVADORES DINÁMICOS DE ESTADO

se anula por completo cuando estos valores coinciden. Esto es un indicativode que el proceso de estimación se está llevando a cabo en forma correc-ta, al menos en principio. Sin embargo, debe quedar suficientemente claroque si la salida estimada coincide con la salida del sistema esto no impli-ca, necesariamente, que el estado estimado esté coincidiendo con el estadoverdadero.

En este caso, es enteramente posible que ambos estados (estimado yverdadero) se encuentren temporalmente ocultos por el mapa de salida rep-resentado por el vector fila C, es decir, en un subespacio de su subespacionulo1. La condición que nos permitiría asegurar que no existe dicho sube-spacio, diferente de cero, donde ambos vectores de estado puedan “ocul-tarse"por coincidencia de los valores que arrojan a la salida es la llamadacondición de observabilidad. Observemos en detalle este caso en los siguien-tes párrafos.

El problema de estabilizar asintóticamente el error de estimación a ceropuede verse como un problema de control sobre un sistema al cual daremosel nombre de dual del original (4.1).

En efecto, consideremos el sistema realimentado siguienteSistema dual

zδ = AT zδ + CT vδ

vδ = −LT zδ

(4.8)

y tratemos de responder la siguiente pregunta: ¿Bajo qué condiciones puedeestabilizarse a cero el sistema (4.8) por realimentación lineal del vector deestado zδ? La respuesta es, evidentemente, que el par (AT , CT ) debe ser unpar controlable. El sistema en lazo cerrado anterior se describe mediante:

zδ = (AT − CT LT )zδ (4.9)

Los autovalores que gobiernan la respuesta del sistema (4.9) son los dela matriz del sistema en lazo cerrado, la cual puede reescribirse como:

(AT − CT LT ) = (A− LC)T

En otras palabras, como los autovalores de cualquier matriz cuadradacoinciden con los autovalores de su traspuesta, el vector L deberá tener laposibilidad de asignarle los polos a la matriz (AT − CT LT ), en lugares pre-fijados del semiplano izquierdo del plano complejo. Esto es posible siemprey cuando el par (AT , CT ) sea un par controlable.

La relación de este problema de controlabilidad con nuestro problemade estimación es inmediata, pues el error de estimación se encuentra gob-ernado por la dinámica autónoma (4.5), dada por eδ = (A− LC)eδ.

Concluimos, por tanto, que el problema de estabilizar a cero el error deestimación del vector de estado, mediante inyección de la salida es factibleen tanto que el par de matrices (AT , CT ) sea un par controlable. Recordemos

1Para revisar este tipo de noción, el lector puede referirse a [FSA88].

4.3 OBSERVADOR DE LUENBERGER: CONVERGENCIA 87

que la matriz C y la condición de controlabilidad del par (AT , CT ) estándadas por

rango C = rango[CT : AT CT : . . . : (AT )n−1CT

]= n (4.10)

Puesto que el rango de una matriz iguala al rango de su traspuesta,

rango C = rango CT

es fácil ver que la condición de controlabilidad (4.10) del sistema “dual” (4.8)se traduce, entonces, en la siguiente condición Matriz de

observabilidad

rangoO = rango CT = rango

C

CA...

CAn−2

CAn−1

(4.11)

que es la conocida condición de observabilidad del sistema linealizado ori-ginal (4.1).

Así, concluimos lo siguiente:

La condición necesaria y suficiente para que exista un vector Lde ganancia del observador, el cual coloque los polos del sistemalineal (representado por el error de observación) en el semiplanoizquierdo del plano complejo y, por lo tanto, produzca un errorde estimación asintóticamente estable a cero para el observadordinámico de Luenberger, es que el sistema linealizado originalsea observable, es decir, que el par (A,C sea observable.

De manera dual a las nociones de controlabilidad y estabilizabilidad,existen las nociones de observabilidad y detectabilidad. Es posible que el Observabilidad

ydetectabilidad

sistema lineal de base no sea observable, pero que la dinámica que rigela parte inobservable del vector de estado sea, por sí sola, asintóticamenteestable a cero. En ese caso, no tendríamos por qué preocuparnos de recon-struir más que la parte observable del estado del sistema, ya que aquellosestados que no podamos reconstruir, por ser inobservables, tendrían porestimado obvio el valor cero ya que estaríamos seguros de que, tarde o tem-prano, estos estados llegarán, irremisiblemente, a tomar este último valorde cero. A tales sistemas se les conoce en la literatura como sistemas recon-struibles o detectables. Como hemos dicho, ellos juegan un papel dual al delos sistemas “estabilizables"que estudiamos en la sección anterior.

Ejemplo 4.1: Detectabilidad del sistema de fermentación de azúcarConsidere el sistema de fermentación de azúcar Modelo 14 , en la página 18, el cual fué expuestoen la Sección 1.5.

Este sistema está descrito por:

x1 = x2 − x1u

x2 = −x2 + (1− x2)u

y = x2

88 OBSERVADORES DINÁMICOS DE ESTADO

La linealización del sistema alrededor de su punto de equilibrio resultó, ver (3.11) en la pági-na 68:

x1δ = x2δ − x1δ1− E

E− Euδ

x2δ = −1

Ex2δ + (1− x2)uδ

yδ = x2δ

El sistema linealizado no es observable ya que la matriz de observabilidad está dada por:

O =

[0 10 1

E

]; rangoO = 1 6= 2

En equilibrio, el estado x2δ tiende a cero, ya que uδ también se supone cero en esta condición.El estado x1δ no puede reconstruirse a partir del conocimiento de x2δ y uδ ya que x1δ no influenciapara nada a x2δ , como es fácil ver de la estructura de las ecuaciones del sistema. En condicionesde equilibrio para x2δ y uδ es fácil ver que x1δ es también asintóticamente estable a cero, en lamedida en que la cantidad (1−E)/E sea positiva, tal y como, efectivamente, hemos supuesto. Elsistema estudiado es, por lo tanto, inobservable pero reconstruible. En el momento de diseñar unobservador a este sistema, no tendríamos necesidad de reconstruir x1δ . Además, en este caso,el observador para x2δ es trivial.

4.4. Observador de Luenberger: separabilidad

Tal como nos lo propusimos al inicio del estudio del problema de con-trol sin disponibilidad del vector de estado, hemos estudiado hasta aquí elproblema de la convergencia del error de estimación a cero y hemos logradoestablecer bajo qué condiciones podemos garantizar que tal error de recons-trucción sea asintóticamente estable a cero.

Debemos atender ahora la inquietud de cómo garantizar que, duranteaquel lapso de tiempo en el cual el valor del estado estimado no coincideexactamente con el valor del estado incremental verdadero, el sistema in-cremental erroneamente controlado sea asintoticamente estable a cero.

La pregunta fundamental se refiere a si el esquema de la Figura 4.5 esválido para la estabilización del sistema alrededor de un punto de opera-ción. Esta pregunta la contestaremos estudiando la validez del esquema decontrol realimentado presentado en la Figura 4.7, utilizando ahora el mo-delo linealizado en reemplazo de la parte incremental del modelo no linealde la Figura 4.5.

Las ecuaciones del sistema en lazo cerrado resultante están dadas por:Sistema en lazocerrado con elobservador xδ = Axδ + Buδ

yδ = Cxδ

uδ = −Kxδ

˙xδ = Axδ + Buδ + L (yδ − yδ) = (A− LC)xδ + Buδ + LCxδ

yδ = Cxδ

(4.12)

(Note que se reemplaza xδ por xδ en la expresión asociada al control uδ.)

4.4 OBSERVADOR DE LUENBERGER: SEPARABILIDAD 89

Figura 4.7: Esquema de control realimentado de salida del sistema lineal que aproximaal sistema no lineal

El sistema de ecuaciones (4.12) lo podemos reescribir en una sola ecuaciónvectorial de estado aumentado o estado compuesto de la planta y del obser-vador, de la manera siguiente:[

˙xδ

]=[

A −BKLC A− LC −BK

] [xδ

](4.13)

Es difícil ver el efecto de los vectores (o matrices) de diseño K y L enla ecuación lineal (4.13) pues los autovalores de la matriz ampliada en lazocerrado no son fáciles de discernir.

Para resolver este problema, aprovecharemos el hecho de que dos ma-trices similares, es decir, aquellas que se relacionan mediante una trans-formación similar, tienen los mismos autovalores. La transformación queutilizaremos es la siguiente:[

]=[

I 0I −I

] [xδ

]= P

[xδ

](4.14)

donde P es, evidentemente, una matriz invertible, la cual permite represen-tar el nuevo vector de estado por medio del estado de la planta y del error deobservación y no por medio de los estados de la planta y del observador. Es-ta transformación similar dada por P asegura que el sistema transformadopresenta los mismos autovalores que el sistema original.

El sistema transformado a partir de (4.14) resulta entonces:[xδ

]=[

A−BK BK0 A− LC

] [xδ

](4.15)

90 OBSERVADORES DINÁMICOS DE ESTADO

Es evidente que los autovalores del sistema (4.15) corresponden sencil-lamente a la unión de los autovalores de las matrices A − BK y A − LC.En otros, téminos, se puede concluir que los autovalores del sistema con-trolado en lazo cerrado (4.13) son los mismos a los obtenidos si el estadoestuviese disponible, dados por A−BK, más los autovalores que gobiernanla dinámica del error de observación, dados por A− LC.

Este resultado, el cual en su sentido más general es llamado principioPrincipio deseparación de separación, nos indica que el esquema de control presentado en la Figu-

ra 4.5 es válido, sobre la base del proceso de reconstrucción del vector deestado, en el sentido de que las variables de estado incrementales xδ con-vergen asintóticamente a cero si y solamente si tanto los autovalores de laLos autovalores

de la ley decontrol y delobservador sepueden escogerde maneraindependiente

matriz A−BK como los de la matriz A−LC se encuentran ubicados, graciasa la escogencia apropiada de los vectores K y L, en el semiplano izquierdodel plano complejo.

El esquema presentado, el cual involucra la ley de control u basa-da en el observador dinámico de estados, siempre será factiblesi los pares (A,B) y (A,C) son respectivamente controlables yobservables. De otro modo, debe cumplirse al menos que el par(A,B) sea estabilizable y el par (A,C) sea detectable.

En la práctica generalmente se escogen los autovalores del observadorde tal forma forma que su parte real (negativa) sea más grande en valor ab-soluto que la parte real de los autovalores escogidos para la realimentacióndel vector de estados.

Afortunadamente, “casi todos los sistemas son controlables y observ-ables”. Esto valida totalmente el esquema propuesto para controlar un sis-tema mediante realimentación de la salida utilizando un reconstructor, uobservador, del vector de estado.

Matlab 4.1: Control de la orientación de un artefacto espacial: diseño deun observador dinámico de estadosConsidérese de nuevo el ejemplo de reorientación del satélite, (6), para el cual ya habíamos dis-eñado un compensador por realimentación de estado en el ejemplo 3.3.

Supondremos ahora que solamente disponemos de un conocimiento preciso de la orientacióndel satélite, es decir, conocemos la variable y = x1 como salida del sistema. En virtud de nuestroconocimiento del modelo del sistema es razonable suponer que también conocemos a la per-fección, si bién por cálculo, el estado de equilibrio del sistema. En consecuencia, conocemos elestado incremental x1δ como salida del sistema linealizado.

Las ecuaciones linealizadas de estado y de salida de este sistema son, ver página 63:

d

dt

x1δ

x2δ

x3δ

=

0 1 0

0 0 FLJ

0 0 0

x1δ

x2δ

x3δ

+

00R

uδ (3.6*)

El sistema linealizado es observable pues la matriz de observabilidad tiene rango completo:

O =

1 0 00 1 0

0 0 FLJ

; detO =FL

J6= 0

Esto significa que podemos construir un observador para el sistema linealizado cuyo error dereconstrucción es asintóticamente estable a cero.

4.4 OBSERVADOR DE LUENBERGER: SEPARABILIDAD 91

Proponemos entonces el observador siguiente: ˙x1δ˙x2δ˙x3δ

=

0 1 0

0 0 FLJ

0 0 0

x1δ

x2δ

x3δ

+

00R

uδ +

L1

L2

L3

(yδ − yδ)

yδ = [1 0 0]

x1δ

x2δ

x3δ

El error de observación satisface entonces: e1δ

e2δ

e3δ

=

−L1 1 0

−L2 0 FLJ

−L3 0 0

e1δ

e2δ

e3δ

(4.16)

La estabilidad del sistema dinámico (4.16) dependerá de la ubicación en el plano complejo desus autovalores (que corresponden también a las raíces del polinomio característico) de la matrizdel sistema A− LC. En este caso, el polinomio característico está dado por:

det(sI −A+ LC) = s3 + L1s2 + L2s+

FL

JL3 (4.17)

La ganancia L garantiza un observador cuyo error de reconstrucción es asintóticamente es-table. Los valores de las componentes del vector L se obtienen a partir de una igualación delpolinomio característico (4.17) con un polinomio cuyas raíces sabemos están ubicadas en el semi-plano izquierdo. Podemos escoger tales raíces como las del polinomio siguiente:

pd = (s+ γ1)(s+ γ3)(s+ γ3)

= s3 + (γ1 + γ2 + γ3)s2 + (γ1γ2 + γ1γ3 + γ2γ3)s+ γ1γ2γ3

De donde resulta:

L1 = γ1 + γ2 + γ3

L2 = γ1γ2 + γ1γ3 + γ2γ3

L3 =J

FLγ1γ2γ3

Con estos valores, definidos plenamente, el vector de estado estimado convergerá al valordel estado verdadero de una manera asintótica. El estado estimado se utilizará entonces paraalimentar la ley lineal de control realimentado que dedujimos en el ejemplo 3.3.

A continuación se simula numéricamente el comportamiento del sistema no lineal en lazo ce-rrado regulado mediante una ley de control basada en un observador dinámico de Luenberger.Los programas utilizados se presentan en Listado 4.1 y 4.2. Las gráficas se presentan en la Figu-ra 4.8. Los parámetros del sistema y del controlador lineal son los mismos utilizados en el capítuloanterior (ver Listado 3.2 de ejemplo1.m).

t

Matlab 4.2: Diseño completo (realimentación del vector de estados y obser-vador de Luenberger) del control de la posición de un anillo sobre un arorotatorioConsideremos el Modelo 16 , en la página 19 representado por el sistema de ecuaciones diferen-ciales siguiente

x1 = x2

x2 = −g

asinx1 + u senx1 cosx1

(1.36*)

Utilizaremos el punto de equilibrio parametrizado en términos del valor de equilibrio de lavariable x1 = X:

x1(X) = X; x2(X) = 0; u = U =g

a cosX(1.37*)

92 OBSERVADORES DINÁMICOS DE ESTADO

Figura 4.8: Respuesta del sistema de orientación de un artefacto espacial medianterealimentación lineal de la salida utilizando un observador dinámico

4.4 OBSERVADOR DE LUENBERGER: SEPARABILIDAD 93

Listado 4.1: Programa de simulación del artefacto espacial controlado mediante un ob-servador de Luenberger sejem3.m

% sejem3.m% Programa de generacion de los graficos del ejemplo3.m

% tiempo de simulacionti = 0;tf = 2;

%% Parámetros del sistemaF = 200; L=3; R=20; J =50;a =2; b=3.5; c = 12.75; Theta = 2.5;

%% condiciones iniciales:%% cerca del punto de equilibriox0 = [2 0 0 0 0 0]’;

%% lejos del p.e.%% x0 = [0 0 0 0 0 0]’;

%% simulacion[t,x] = ode45(’ejemplo3’,[ti tf],x0);

%% Posicion angular (x(1))subplot(2,2,1), plot(t,x(:,1),t,x(:,4),’--’,t,x(:,4)+Theta,’y-.’)title(’Posición angular (real __, estimada - -)’)xlabel(’tiempo t’)ylabel(’theta theta_estim’)

%% Velocidad angular (x(2))subplot(2,2,2), plot(t,x(:,2),t,x(:,5),’--’)title(’Velocidad angular (real __, estimada - -)’)xlabel(’tiempo t’)ylabel(’omega omega_estim’)

%% Angulo de orientación de la tobera (x(3))subplot(2,2,3), plot(t,x(:,3),t,x(:,6),’--’)title(’Orientación de la tobera (real __, estimada - -)’)xlabel(’tiempo t’)ylabel(’beta beta_estim’)

%% Variable de control (u)u = -J*a*(b^2+c^2)/F/L/R*x(:,4)-J*(b^2+c^2+2*a*b)/F/L/R*x(:,5)-...(2*b+a)/R*x(:,6);

subplot(2,2,4), plot(t,u)title(’Variable de control’)xlabel(’tiempo t’)ylabel(’u’)

% fin de sejem3.m

94 OBSERVADORES DINÁMICOS DE ESTADO

Listado 4.2: Simulación del artefacto espacial: modelo y observador ejemplo3.m

function xdot=ejemplo3(t,x)

%% ejemplo3.m%%%% Tercer ejemplo con simulaciones numericas del%% libro: Control de Sistemas No Lineales%%%% Control de orientacion de un artefacto espacial por medio%% de linealizacion aproximada y uso de un observador dinamico%%

%% parametros del sistemaF = 200; L=3; R=20; J =50;

%% parametros del controladora =2.0; b=3.5; c = 12.75; Theta = 2.5;

%% parametros del observador (los tres polos de la dinamica%% del error se ubican en -5:lambda1 = 5;lambda2 = 5;lambda3 = 5;

Ll = lambda1+lambda2+lambda3;L2 = lambda1*lambda2+lambda1*lambda3+lambda2*lambda3 ;L3 = lambda1*lambda2*lambda3*J/(F*L);

%% Ley de controlu = -J*a*(b^2+c^2)/(F*L*R)*x(4)-J*(b^2+c^2+2*a*b)/F/L/R*x(5)-...(2*b+a)/R*x(6);

%% Ecuaciones de estadoxdot= [ x(2) ;F*L/J*sin(x(3)) ;R*u ;x(5)+Ll*(x(1)-Theta-x(4)) ;F*L/J*x(6)+L2*(x(1)-Theta-x(4)) ;R*u + L3*(x(1)-Theta-x(4))] ;

%% Fin de ejemplo3.m

4.4 OBSERVADOR DE LUENBERGER: SEPARABILIDAD 95

La linealización de (1.36) alrededor del punto de equilibrio (1.37) resulta:

x1δ = x2δ

x2δ = −( ga

senX tanX)x1δ +

1

2sen(2X)uδ

(4.18)

donde x1δ = x1 −X, x2δ = x2 y uδ = u− g/(a cosX).El diseño del controlador, cuando las variables de estado son completamente accesibles a

medición, procede de acuerdo al esquema general utilizado en la sección 3.2. La controlabilidaddel sistema se obtiene de determinar el rango de la matriz C de controlabilidad dada por:

C =

[0 1

2sen(2X)

12

sen(2X) 0

]; det C = −

1

4sen2 2X

de donde se deduce que el sistema se torna incontrolable en los puntosX = 0,±π/2,±3π/2, . . ..Bajo la suposición de que el estado incremental se encuentra disponible para ser usado en

una política de realimentación para estabilizar el sistema linealizado, se propone la siguiente leyde control por realimentación del vector de estado:

uδ = −K1x1δ −K2x2δ (4.19)

El sistema linealizado en lazo cerrado, resultante de aplicar (4.19), está dado por:

x1δ = x2δ

x2δ = −(g

asenX tanX −

1

2K1 sen(2X)

)x1δ −

1

2K2 sen 2X x2δ

Supóngase que deseamos obtener el siguiente comportamiento asintóticamente estable parael sistema en lazo cerrado:

x1δ = x2δ

x2δ = −ω2nx1δ − 2ζωnx2δ

donde 0 < ζ < 1, ωn > 0 son parámetros de diseño (el sistema en lazo cerrado se desea, eneste caso, del tipo subamortiguado). Es inmediato ver que la escogencia de K1 y K2 no puedeser otra que:

K1 = 2ω2

n −ga

tanX senX

sen 2X; K2 =

4ζωn

sen 2X(4.20)

Por lo tanto, el control lineal que habrá de regular al sistema no lineal original resulta entonces:

u =g

a cosX− 2

ω2n −

ga

tanX senX

sen 2X(x1 −X)−

4ζωn

sen 2Xx2 (4.21)

La escogencia de ωn y ζ se hacen, por ejemplo, sobre la base de fijar el tiempo de subida delsistema tr (en inglés, rise time), el cual viene dado por:

tr =0,8 + 2,5ζ

ωn

Típicamente se escoge a ζ como 0,707, con el objeto de lograr una respuesta suficientementeamortiguada, lo cual significa que, por ejemplo, para un tiempo de ascenso de 0,2 segundos (estoes, del 10 % al 90 % del valor final de equilibrio en 0,2 seg.) debemos tomar a ωn aproximadamentecomo 12,83 rad/s.

Los Listados 4.3 y 4.4 permiten simular el comportamiento del sistema no lineal controladomediante la ley realimentada basada en la linealización aproximada (4.21). En Listado 4.3 seañaden los comandos necesarios para generar las gráficas del comportamiento del sistema. Losdatos físicos y valores de equilibrio que utilizamos para la simulación son:

a = 0,20 [m]; g = 9,8 [m

seg2]; θ(X) = X =

π

4[rad]; u(X) = 69,296465 [

rad2

seg2]

La Figura 4.9 muestra las simulaciones correspondientes al comportamiento del sistema(1.36) en lazo cerrado.

96 OBSERVADORES DINÁMICOS DE ESTADO

Listado 4.3: Programa de simulación del aro rotatorio controlado mediante una ley derealimentación del vector de estados sejem4.m

% sejem4.m% Programa de generacion de los graficos del ejemplo4.m

% tiempo de simulacionti = 0;tf = 1;

%% condiciones iniciales:x0 = [0.2 0]’;

%% simulacion[t,x] = ode23(’ejemplo4’,[ti tf],x0);

%% Angulo theta (x(1))subplot(2,2,1), plot(t,x(:,1))title(’Posición angular del anillo sobre el aro’)xlabel(’tiempo t’)ylabel(’\theta [rad]’)

%% Velocidad angular (x(2))subplot(2,2,2), plot(t,x(:,2))title(’Velocidad angular del anillo’)xlabel(’tiempo t’)ylabel(’d\theta/dt [rad/s]’)

%% Variable de control (u)

%% parametros del sistemaa = 0.2; g = 9.8;

%% parametros del controladorX1e = 0.7854; Ue = g/(a*cos(X1e));wn = 12.83; xi = 0.707;K1 = 2*(wn^2-g/a*tan(X1e)*sin(X1e))/sin(2*X1e);K2 = 4*xi*wn/sin(2*X1e);

%% Ley de controlu = -K1*(x(:,1)-X1e)-K2*x(:,2)+Ue;w = sqrt(u);

subplot(2,2,3), plot(t,w)title(’Velocidad angular del aro’)xlabel(’tiempo t’)ylabel(’\omega = sqrt(u)’)

% fin de sejem4.m

4.4 OBSERVADOR DE LUENBERGER: SEPARABILIDAD 97

Figura 4.9: Respuesta de un sistema aro – anillo controlado mediante realimentacióncompleta del vector de estado

98 OBSERVADORES DINÁMICOS DE ESTADO

Listado 4.4: Simulación del aro rotatorio controlado: modelo ejemplo4.m

function xdot=ejemplo4(t,x)%% ejemplo4.m%%%% Sistemas No Lineales%%%% Sistema Controlado por linealizacion aproximada para%% regular la posicion de un anillo que desliza sobre%% un aro que gira alrededor%% de su eje vertical. El cuadrado de su velocidad angular%% sirve de se~nal de control al sistema.%%

%% parametros del sistemaa = 0.2; g = 9.8;

%% parametros del controladorX1e = 0.7854; Ue = g/(a*cos(X1e));wn = 12.83; xi = 0.707;K1 = 2*(wn^2-g/a*tan(X1e)*sin(X1e))/sin(2*X1e);K2 = 4*xi*wn/sin(2*X1e);

%% Ley de controlu = -K1*(x(1)-X1e)-K2*x(2)+Ue;

%% Ecuaciones de estadoxdot = [x(2) ;

-g/a*sin(x(1))+u*sin(x(1))*cos(x(1))];

%% Fin de ejemplo4.m

Supondremos ahora que no podemos medir todos los estados. Solamente la variable de es-tado y = x1, representando la posición angular del anillo sobre el aro, puede ser medida conpresición. De esta manera, realizaremos el diseño del controlador lineal que estabilice la salidadel sistema mediante un observador dinámico de estado.

El modelo linealizado del sistema con su salida linealizada está dado por:

x1δ = x2δ

x2δ = −( ga

senX tanX)x1δ +

1

2sen(2X)uδ

yδ = x1δ

(4.22)

A partir de este modelo es fácil de diseñar el observador dinámico de Luenberger apropiado:

˙x1δ = x2δ + L1(yδ − yδ)

˙x2δ = −( ga

senX tanX)x1δ +

1

2sen(2X)uδ + L2(yδ − yδ)

yδ = x1δ

(4.23)

La ley de control para el sistema (1.36), basada en tal estimador del vector de estado, estádada por:

u = U −K1x1δ −K2x2δ =g

a cosX−K1x1δ −K2x2δ (4.24)

con K1 y K2 definidos previamente en (4.20).De (4.22) y (4.23), se deduce que el error de estimación e = xδ − xδ evoluciona de acuerdo

con la siguiente dinámica autónoma:

e1δ = −L1e1δ + e2δ

e2δ = −( ga

senX tanX + L2

)e1δ

4.5 OBSERVADORES DE ORDEN REDUCIDO 99

Con el objeto de escoger apropiadamente las ganancias del observador L1 y L2 que garanti-cen un comportamiento asintóticamente estable a cero para el error de estimación e, obtenemosel polinomio característico del sistema anterior:

p(s) = s2 + L1s+ L2 +g

atanX senX

Igualamos los coeficientes de este polinomio a los de un polinomio característico deseadopd(s), dado por:

pd(s) = s2 + 2ζ1ωn1s+ ω2n1

donde ζ1 y ωn1 son números reales tales que el polinomio característico deseado tiene sus raícesen el semiplano izquierdo. Las ganancias L1 y L2 buscadas resultan

L1 = 2ζ1ωn1 ; L2 = ω2n1

g

atanX senX (4.25)

Como mencionamos anteriormente, se escojen los polos del error de observación un pocomás alejados hacia la izquierda del plano complejo, con respecto al los del sistema en lazo cerrado,con el objeto de que el error de observación se aproxime rapidamente a cero, de tal forma que,durante la porción inicial de la trayectoria de respuesta, el sistema reciba un control realimentadocon valores estimados del vector de estado muy similares a sus valores reales.

Figura 4.10: Respuestas del sistema aro – anillo controlado por realimentación lineal dela salida utilizando un observador dinámico de estado

Los programas presentados en los Listados 4.5 y 4.6 permiten simular numéricamente la re-spuesta del sistema en lazo cerrado dado por (1.36)–(4.23)–(4.24), esto es, utilizando la ley decontrol por realimentación del vector de estado basada en el observador de Luenberger diseñado.El comportamiento del sistema controlado en lazo cerrado se muestra en la Figura 4.10. Com-pare con los resultados obtenidos para el caso de realimentación completa del vector de estados,mostrados en la Figura 4.9.

t

4.5. Observadores de orden reducido

Es fácil darse cuenta que en los observadores que hemos construido enlas secciones anteriores existe una redundancia implícita sobre la cual no

100 OBSERVADORES DINÁMICOS DE ESTADO

Listado 4.5: Programa de simulación del comportamiento del aro rotatorio controladousando un observador sejem5.m

% sejem5.m% Programa de generacion de los graficos del ejemplo5.m

% tiempo de simulacionti = 0;tf = 1;

%% condiciones iniciales:%%x0 = [0.2 0.0 0.2 0.0]’;x0 = [0.2 0.0 0.0 -1.0]’;

%% simulacion[t,x] = ode23(’ejemplo5’,[ti tf],x0);

%% Angulo theta (x(1))subplot(2,2,1), plot(t,x(:,1))title(’Posición angular del anillo’)xlabel(’tiempo t’)ylabel(’theta [rad]’)

%% Angulo theta (x(1))subplot(2,2,2), plot(t,x(:,1),t,x(:,3),’-’)title(’Posición incremental del anillo (real y estimada --)’)xlabel(’tiempo t’)ylabel(’theta_inc [rad]’)

%% Velocidad angular (x(2))subplot(2,2,3), plot(t,x(:,2),t,x(:,4),’-’)title(’Velocidad angular del anillo (real y estimada --)’)xlabel(’tiempo t’)ylabel(’[rad/s]’)

%% Variable de control (u)

%% parametros del sistemaa = 0.2; g = 9.8;

%% parametros del controladorX1e = 0.7854; Ue = g/(a*cos(X1e));wn = 12.83; xi = 0.707;K1 = 2*(wn^2-g/a*tan(X1e)*sin(X1e))/sin(2*X1e);K2 = 4*xi*wn/sin(2*X1e);

%% Ley de controlu = -K1*(x(:,3))-K2*x(:,4)+Ue;w = sqrt(u);

subplot(2,2,4), plot(t,w)title(’Velocidad angular del aro’)xlabel(’tiempo t’)ylabel(’omega’)

% fin de sejem5.m

4.5 OBSERVADORES DE ORDEN REDUCIDO 101

Listado 4.6: Simulación del aro rotatorio: modelo y sistema dinámico del observadorejemplo5.m

function xdot=ejemplo5(t,x)%% ejemplo5.m%%%% Sistemas No Lineales%%%% Sistema Controlado por linealizacion aproximada para%% regular la posicion de un anillo que desliza sobre%% un aro que gira alrededor%% de su eje vertical. El cuadrado de su velocidad angular%% sirve de se~nal de control al sistema.%% La ley de control esta basada en la reconstruccion%% del vector de estado mediante un observador de Luenberger

%% parametros del sistemaa = 0.2; g = 9.8;

%% parametros del controladorX1e = 0.7854; Ue = g/(a*cos(X1e));wn = 12.83; xi = 0.707;K1 = 2*(wn^2-g/a*tan(X1e)*sin(X1e))/sin(2*X1e);K2 = 4*xi*wn/sin(2*X1e);

%% parametros del observadorwn1 = 15.5; xi1 = 0.707;L1 = 2*xi1*wn1;L2 = wn1^2-g/a*tan(X1e)*sin(X1e);

%% Ley de controlu = -K1*x(3)-K2*x(4)+Ue

%% Ecuaciones de estado del sistema y del observadorxdot = [x(2);

-g/a*sin(x(1))+u*sin(x(1))*cos(x(1));x(4)+L1*(x(1)-X1e-x(3));-g/a*sin(X1e)*tan(X1e)*x(3)+1/2*sin(2*X1e)*(u-Ue)+L2*(x(1)-X1e-x(3))];

%% Fin de ejemplo5.m

102 OBSERVADORES DINÁMICOS DE ESTADO

hemos llamado la atención. En efecto, en algunos de los ejemplos que hemospresentado hasta ahora, hemos procedido a construir observadores dinámi-cos de estado que reconstruyen absolutamente todas y cada una de las va-riables de estado del sistema. Sin embargo, la variable de salida, en algunasoportunidades, está representada por una variable de estado. Si ese estadoes perfectamente conocido, en virtud de las mediciones que de él tenemosen la forma de una salida, pudiéramos entonces utiilizarlo directamente enla elaboración de la ley de control lineal sin realizar ninguna aproximacióno estimación.

Evidentemente, esta situación puede ser cierta no solo para una de lasvariables de estado sino para varias de ellas. Es decir, un número de salidasbien pudiera estar representada por un conjunto de variables de estado. Lapregunta lógica es: ¿por qué debemos esforzamos en reconstruir o estimarvariables de estado que ya conocemos en forma precisa (debido a que sonsalidas del sistema)?. En otras palabras, el esfuerzo de reconstruir varia-bles de estado debe estar vinculado solamente a aquellas variables que noconocemos, evitando reconstruir las que ya conocemos.

Recordemos que los observadores de estado representan una cierta “emu-lación”, con facultades de autocorrección, del sistema dinámico que ellosobservan. En virtud de esto, un observador tiene, en principio, la mismadimensión que la planta del sistema. Si algunas variables de estado yason conocidas y no hace falta reconstruirlas, podemos entonces pensar quees factible obtener una economía en el orden del sistema que necesitamosutilizar como observador de la planta. Si sólo un número inferior de esta-dos debe ser reconstruido, el observador debería tener dimensión igual alnúmero de variables que deseamos reconstruir. Estas consideraciones nosconducen a la idea de proponer observadores de orden reducido (o.o.r.) paraaquellos sistemas donde ya poseemos conocimiento de una, o algunas, delas variables de estado.

Introduciremos, mediante un ejemplo, la posibilidad de reconstruir soloun número inferior de las variables de estado mediante un observador deorden reducido.

Modelo 26: Comportamiento de un sistema de tanques en cascada (modelo2)Considérese el sistema constituido por dos tanques, de forma diferente, tales como los que semuestran en la Figura 4.11 y en los cuales se vierte un cierto líquido. El modelo dinámico deeste sistema se obtiene facilmente mediante una aplicación sencilla de la ley de Bernoulli. Lasecuaciones son las siguientes:

x1 = x−21 u− x

−3/21

x2 = x1/21 − x

1/22

y = x2

(4.26)

donde x1 y x2 son, respectivamente, las alturas del líquido en cada uno de los tanques, medidasdesde el borde inferior del tanque correspondiente. La variable de control está constituida poru, el flujo del líquido que entra al primero de los tanques. El modelo dinámico se encuentra,evidentemente, en variables normalizadas pues no interviene en él constante alguna. Este modeloes ligeramente diferente al ya presentado, Modelo 15 , en la página 19.

4.5 OBSERVADORES DE ORDEN REDUCIDO 103

Figura 4.11: Sistema de tanques en cascada

M

Ejemplo 4.2: Observador de orden reducido: control de nivel en un sistemade tanquesEl punto de equilibrio del sistema (4.26) está representado por una altura x2 = X que se deseamantener en el segundo tanque. Parametrizando los puntos de equilibrio en términos de tal valorX, tenemos

x1(X) = X; x2(X) = X; u =√X (4.27)

Linealizando el sistema alrededor de este punto de equilibrio, se obtiene:

x1δ = −1

2X−5/2x1δ +X−2uδ

x2δ =1

2X−1/2x1δ −

1

2X−1/2x2δ

yδ = x2δ

(4.28)

El sistema (4.28) es controlable en tanto que la altura deseada X se mantenga en un valorpositivo finito, 0 < X <∞, lo cual es posible fisicamente.

Usando los métodos explicados anteriormente, diseñamos un controlador por realimentacióndel vector de estado incremental. La ley de control incremental estará dada, en caso de conocerperfectamente ambos estados incrementales, por:

uδ = −K1x1δ −K2x2δ

El sistema linealizado en lazo cerrado resulta entonces:[x1δ

x2δ

]=

[− 1

2X−5/2 −K1X−2 −K2X−2

12X−1/2 − 1

2X−1/2

] [x1δ

x2δ

]donde las ganancias K1 y K2 se obtienen de igualar el polinomio característico plc(s) del sistemaen lazo cerrado y un polinomio característico deseado pd(s), dados por:

plc(s) = det

[s+ 1

2X−5/2 +K1X−2 K2X−2

− 12X−1/2 s+ 1

2X−1/2

]= s2 +

(1

2X−1/2 +

1

2X−5/2 +K1X

−2

)s+

1

2(K1 +K2)X−5/2 +

1

4X−3 , y

pd(s) = s2 + 2ζωns+ ω2n

104 OBSERVADORES DINÁMICOS DE ESTADO

Así, las ganancias K1 y K2 resultan:

K1 = 2ζωnX2 − 1/2X3/2 −

1

2X−1/2

K2 = 2ω2nX

5/2 − 2ζωnX2 + 1/2x3/2

A partir de este resultado, la ley de control para el sistema linealizado está dada por:

uδ = −(

2ζωnX2 −

1

2X3/2 −

1

2X−1/2

)x1δ −

(ω2

nX5/2 − 2ζωnX

2 +1

2x3/2

)x2δ (4.29)

La ley de control (4.29) permite controlar el sistema si se conocen en forma exacta ambasvariables de estado. En este caso no disponemos de todos los estados, por lo tanto es necesarioutilizar variables estimadas del estado incremental, de la siguiente manera:

uδ = −(

2ζωnX2 −

1

2X3/2 −

1

2X−1/2

)x1δ −

(ω2

nX5/2 − 2ζωnX

2 +1

2x3/2

)x2δ

Sin embargo, la variable incremental yδ = x2δ es medible, es decir, no hace falta reconstruirsu valor. De allí que se puede proponer a partir de (4.29) la siguiente ley de control:

uδ = −(

2ζωnX2 −

1

2X3/2 −

1

2X−1/2

)x1δ −

(ω2

nX5/2 − 2ζωnX

2 +1

2x3/2

)yδ (4.30)

El problema entonces se centra en cómo estimar la altura incremental x1δ en el primer tanque,a partir del conocimiento de yδ = x2δ (la altura incremental en el segundo tanque) y de nuestroconocimiento del sistema linealizado.

Considere la segunda ecuación diferencial del sistema linealizado (4.28), la cual describe laevolución de la variable medida x2δ :

x2δ =1

2X−1/2x1δ −

1

2X−1/2x2δ (4.31)

Esta ecuación, evidentemente, guarda alguna información sobre x1δ . Al disponer en forma ex-acta x2δ podemos suponer también como conocida su derivada temporal. De la expresión (4.31),obtenemos entonces el siguiente valor para x1δ :

x1δ = 2X1/2x2δ + x2δ

Hagamos caso omiso, por los momentos, de la necesidad de tener que tomar derivadas tem-porales x2δ de la altura incremental. Podemos considerar la expresión en el miembro derecho deesta última ecuación como una medición o salida auxiliar. Denotaremos tal salida mediante zδ .

Consideremos la primera ecuación diferencial del sistema linealizado en conjunción con lasalida auxiliar que mide, de forma un poco incómoda, el valor de x1δ :

x1δ = −1

2X−5/2x1δ +X−2uδ

zδ = x1δ = 2X1/2x2δ + x2δ

(4.32)

En virtud de que disponemos al menos conceptualmente de la medición zδ , pudiéramosaprovechar el conocimiento de la ecuación diferencial de x1δ con el fin de implementar un procesode estimación para x1δ basado en estos dos datos. Un estimador dinámico del estado incrementalpara el sistema reducido (4.32) está dado por:

˙x1δ = −1

2X−5/2x1δ +X−2uδ + L1(zδ − zδ) (4.33)

zδ = x1δ

El error de estimación e1δ = x1δ − x1δ estaría dado por la solución de la ecuación diferencial:

e1δ = −(

1

2X−5/2 + L1

)e1δ

No existe, entonces, problema alguno en proponer un valor de la ganancia L1 de tal formaque el error de estimación sea asintóticamente estable a cero. De hecho, cualquier valor positivo

4.5 OBSERVADORES DE ORDEN REDUCIDO 105

L1 ≥ 0 > − 12X−5/2 de tal ganancia lo lograría. Sin embargo, este estimador aún requiere del

cálculo de la derivada temporal de la altura incremental en el segundo tanque (recordemos quezδ = 2X1/2x2δ + x2δ).

Note que sustituyendo zδ = 2X1/2x2δ + x2δ y zδ = x1δ en la ecuación diferencial (4.33),tenemos:

˙x1δ = −1

2X−5/2x1δ +X−2uδ + L1(2X1/2x2δ + x2δ − x1δ)

o, equivalentemente,

˙x1δ − 2L1X1/2x2δ = −

1

2X−5/2x1δ +X−2uδ + L1(x2δ − x1δ) (4.34)

Con el objeto de evitar el proceso de derivación para obtener la derivada temporal x2δ , defi-namos a partir de la expresión (4.34) la siguiente variable auxiliar:

ζδ = x1δ − 2L1X1/2x2δ (4.35)

De esta forma, podemos obtener una ecuación diferencial para esta nueva variable usandoprecisamente la ecuación (4.34). En efecto vemos que dicha ecuación es equivalente a la siguien-te:

˙x1δ − 2L1X1/2x2δ =

d

dt

[x1δ − 2L1X

1/2x2δ

]=

d

dtζδ

= −1

2X−5/2

[x1δ − 2L1X

1/2x2δ

]− L1X

−2x2δX−2uδ

+ L1(x2δ − [x1δ − 2L1X1/2x2δ ])− 2L2

1X1/2x2δ

la cual reescribimos comod

dtζδ = −(

1

2X−5/2 + L1)ζδX

−2uδ + [L1 − 2L21X

1/2 − L1X−2]yδ (4.36)

En esta última ecuación diferencial todos los términos son conocidos y no requieren procesoalguno de derivación. Adicionalmente, el valor de ζδ estáa directamente relacionado al valor delestimado de la altura incremental x1δ , el cual necesitamos. En efecto, puesto que ahora ζδ esenteramente calculable como solución de la ecuación diferencial anterior podemos establecer queel estimado de x1δ es:

x1δ = ζδ + 2L1X1/2yδ (4.37)

donde ζδ es solución de (4.36).La Figura 4.12 muestra el esquema de estimación de estados utilizado para el control del

sistema de tanques, el cual está basado sólo en una ecuación diferencial y no en dos como seríael caso de un observador de orden completo.

4.5.1. Observadores de orden reducido: caso generalSupóngase como salida yδ del sistema, un número n1 < n de variables de

estado incrementales representadas por el vector x1δ. Nuestro objetivo seráel de diseñar un observador que permita hallar el valor estimado del restode las variables de estado incremental que supondremos son en número, n2,donde n1 + n2 = n. Representamos estas variables no medibles mediante elvector x2δ. De acuerdo con estas dimensiones tenemos:

x1δ ∈ Rn1 ; x2δ ∈ Rn2 ; xδ ∈ Rn

Por lo tanto, el vector de estado incremental lo representamos mediante:

xδ =[

x1δ

x2δ

]∈ Rn1+n2

106 OBSERVADORES DINÁMICOS DE ESTADO

Figura 4.12: Esquema de control realimentado lineal de la salida para un sistema detanques mediante el uso de un observador de orden reducido

Nótese que no hay pérdida alguna de generalidad en suponer que las va-riables de estado directamente medibles ocupan las primeras n1 posicionesen el vector de estado. Si este no es el caso, mediante un reordenamientode las variables de estado podemos hacer que estas primeras componentessean precisamente las variables de estado medibles.

Podemos, entonces, particionar las matrices que intervienen en el sis-tema linealizado xδ = Axδ + Buδ y reescribir estas ecuaciones de estadoincremental como:[

x1δ

x2δ

]=[

A11 A12

A21 A22

] [x1δ

x2δ

]+[

B1

B2

]uδ (4.38)

donde A11 ∈ Rn1×n1 , A12 ∈ Rn1×n2 , A21 ∈ Rn2×n1 , A22 ∈ Rn2×n2 , B1 ∈ Rn1 ,B2 ∈ Rn2 . La ecuación vectorial de salida representada por el subvector deestados conocidos:

yδ = x1δ (4.39)

Es evidente que el problema de estimar el vector de estado a partir dela salida yδ puede reducirse a estimar solamente las variables de estadocontenidas en x2δ, pues todos los estados incrementales contenidos en x1δ

son conocidos a través de la medición directa representada por el vector yδ.Reescribamos las ecuaciones de estado linealizadas (4.38) en función de

4.5 OBSERVADORES DE ORDEN REDUCIDO 107

las variables conocidas (asumiremos como antes que yδ es medible):

x2δ = A21x1δ + A22x2δ + B2uδ

A12x2δ = yδ −A11yδ −B1uδ

Puesto que yδ y uδ son conocidas, es concebible que también podamosconocer como señal del tiempo al vector n1-dimensional dado por la segundaecuación anterior. Designemos a este vector como y2δ:

y2δ = A12x2δ = yδ −A11yδ −B1uδ (4.40)

El problema de estimación de x2δ puede verse como el problema de re-construir el estado del subsistema dado por:

x2δ = A22x2δ + v1δ

y2δ = A12x2δ

(4.41)

donde el vector v1δ = A21x1δ +B2uδ es completamente conocido, al igual quela señal y2δ.

La reconstrucción del estado incremental desconocido x2δ, con error deestimación asintóticamente estable a cero, es factible si el par (A22, A12) esobservable o, en su defecto, simplemente detectable.

Recordemos el siguiente teorema sobre la observabilidad de un sistema:

Teorema 4.1: Un sistema lineal z = Az, y = Cz es observable (es decir, elpar (A,C) es observable) si, y solamente si, el único vector η para el cual secumple que

C exp(At)η = 0

es para η = 0.

Prueba: Supongamos, por un momento, que el sistema lineal dado es inob-servable. Entonces, existe una transformación del vector de estado z queexhibe tal inobservabilidad. Tal transformación lleva al sistema a su formacanónica inobservable de Kalman:

z1 = A11z1

z2 = A21z1 + A22z2

w = z1 = [I 0][

z1

z2

]Puesto que la exponencial matricial de este sistema está dada por:

exp([

A11 0A21 A22

]t

)=[

expA11t 0? exp(A22t)

]entonces es claro que existen vectores η distintos de cero que hacen cero elsiguiente producto:

[I 0][

expA11t 0? expA22t

] [η1

η2

]= [exp(A11t) 0]

[η1

η2

]= exp(A11t)η1

108 OBSERVADORES DINÁMICOS DE ESTADO

pues para ello bastaría con tomar vectores η de la forma[0η2

]Esto demuestra la necesidad de la condición dada en el teorema. La de-mostración de la suficiencia se obtiene rapidamente a partir de una ex-pansión en serie del exponencial matricial. No haremos esta parte de lademostración aqui, se deja como ejercicio al lector.

A partir del teorema anterior, es fácil demostrar que si el sistema dadopor [

x1δ

x2δ

]=[

A11 A12

A21 A22

] [x1δ

x2δ

]yδ = x1δ

es observable (resp. detectable), entonces el subsistema

x2δ = A22x2δ

y2δ = A21x2δ

también es observable (resp. detectable).Regresemos al problema planteado, cual era reconstruir el vector de es-

tado del sistema:

x2δ = A22x2δ + v1δ

y2δ = A21x2δ

(4.41*)

donde el vector v1δ es conocido, al igual que la señal de salida y2δ.Un observador para este sistema se obtiene simplemente como:

˙x2δ = A22x2δ + v1δ + L2(y2δ − y2δ)y2δ = A21x2δ

El error de estimación está dado entonces por:

e2δ = x2δ − ˙x2δ

= A22x2δ + v1δ −A22x2δ − L2(A12x2δ −A12x2δ)− v1δ

= (A22 − L2A12)e2δ

Debemos encontrar una matriz (vector) L2 tal que esta dinámica delerror sea asintóticamente estable. Puesto que el sistema se ha supuestoobservable tal vector L2 siempre existe.

A pesar de esta solución, nuestro observador requiere de la señal y2δ

que involucra la derivacion de x1δ, es decir, derivación, numérica o analíti-ca del vector de salida original del sistema y1δ, ver (4.40). Tal práctica no

4.5 OBSERVADORES DE ORDEN REDUCIDO 109

Figura 4.13: Estructura de un observador dinámico de orden reducido

es aconsejable en problemas reales y su solución carece de sentido si lasmediciones se realizan físicamente. Mas aún, los “derivadores ideales” soncircuitos altamente inestables y sin visos de aplicabilidad práctica (véansealgunos comentarios al respecto al final del capítulo).

Reescribimos, como antes, la ecuación obtenida del observador de la ma-nera siguiente:

˙x2δ = A22x2δ + A21yδ + B2uδ + L2(yδ −A11yδ −B1uδ −A12x2δ)= (A22 − L2A12)x2δ + (A21 − L2A11)yδ + (B2 − L2B1)uδ + L2yδ

es decir:

ddt

(x2δ − L2yδ) = (A22 − L2A12)(x2δ − L2yδ)

+ (A22 − L2A12)L2yδ + (A21 − L2A11)yδ + (B2 − L2B1)uδ (4.42)

Si hacemosz2δ = x2δ − L2yδ (4.43)

entonces obtenemos, de (4.42) y (4.43),

z2δ = (A22 − L2A12)z2δ + ((A22 − L2A12)L2

+ A21 − L2A11)yδ + (B2 − L2B1)uδ

x2δ = z2δ + L2yδ

(4.44)

El sistema de ecuaciones (4.44) representa efectivamente un observadordinámico para la parte del estado no medible del sistema original. Pode-mos, en consecuencia, obtener el estimado de x2δ como salida del sistemaque genera a la variable auxiliar z2δ. El esquema del observador de ordenreducido obtenido se puede representar, entonces, por medio del diagramamostrado en la Figura 4.13.

El esquema general de control para un sistema no lineal sobre la basede un observador de estado incremental de orden reducido se muestra en laFigura 4.14.

110 OBSERVADORES DINÁMICOS DE ESTADO

Figura 4.14: Estructura de control por realimentación lineal de la salida, a base de unobservador dinámico de orden reducido

Ejemplo 4.3: Observador de orden reducido: control de la orientación deun artefacto espacialConsideremos nuestro ejemplo de reorientación del satelite. El modelo linealizado está dado por ,ver ecuación (3.6), x1δ

x2δ

x3δ

=

0 1 0

0 0 FLJ

0 0 0

x1δ

x2δ

x3δ

+

00R

yδ = x1δ

Deseamos utilizar la posición angular incremental yδ = x1δ , para emplearla directamente enel controlador por realimentación de estado (usaremos esta variable sin estimarla). Sobre la basedel conocimiento de esta variable incremental y de la entrada uδ , deseamos estimar o reconstruirlos valores de x2δ y x3δ con un observador de orden reducido.

Las ecuaciones particionadas resultan:

x1δ = x2δ[x2δ

x3δ

]=

[0 FL

J0 0

] [x2δ

x3δ

]+

[0R

]uδ

yδ = x1δ

De acuerdo a la formulación general, tenemos:

A11 = 0; A12 = [1 0]; A21 =

[00

]; A22 =

[0 FL

j

0 0

]; b1 = 0; b2 =

[0R

]Consideremos, entonces, el problema de estimar los estados x2δ y x3δ a partir de:[

x2δ

x3δ

]=

[0 FL

J0 0

] [x2δ

x3δ

]+

[0R

]uδ

y2δ = x2δ

4.6 EJERCICIOS PROPUESTOS 111

El observador dinámico para este subsistema está dado por:[˙x2δ˙x3δ

]=

[0 FL

J0 0

] [x2δ

x3δ

]+

[0R

]uδ + L(y2δ − y2δ)

y2δ = [1 0]

[x2δ

x3δ

]Nótese que el par (A22, A12), dado por las matrices([

0 FLJ

0 0

], [1 0]

),

es observable.Usando el procedimiento explicado anteriormente, reescribimos las ecuaciones del obser-

vador reducido de la manera siguiente:[˙x2δ˙x3δ

]=

[0 FL

J0 0

] [x2δ

x3δ

]+

[0R

]uδ +

[L21

L22

](x1δ − y2δ)

=

[0 FL

J0 0

] [x2δ

x3δ

]+

[0R

]uδ +

[L21

L22

]x1δ +

[L21 0L22 0

] [x2δ

x3δ

]En forma más sintética:[

˙x2δ − L21x1δ˙x3δ − L22x1δ

]=

[−L21

FLJ

−L22 0

] [x2δ

x3δ

]+

[0R

]uδ (4.45)

Hagamos ahora:

z21δ = x2δ − L21x1δ = x2δ − L21yδ

z22δ = x3δ − L22x1δ = x3δ − L22yδ

A partir de estas nuevas variables y de la ecuación diferencial (4.45) anterior, obtenemos elsiguiente observador dinámico de orden reducido:[

z21δ

z22δ

]=

[−L21

FLJ

−L22 0

] [z21δ

z22δ

]+

[0R

]uδ +

[−L21

FLJ

−L22 0

] [L21

L22

]yδ (4.46)

Las variable estimadas están dadas por:

x2δ = z21δ + L21yδ

x3δ = z22δ + L22yδ

La ubicación de los polos del observador en el semiplano izquierdo del plano complejo se lograescogiendo las ganancias del observador de forma tal que igualen el polinomio característico delsistema autónomo, p(s), a un polinomio escogido previamente pd(s),[

e21δ

e22δ

]=

[−L21

FLJ

−L22 0

] [e21δ

e22δ

]Los polos deseados habrán de regir el comportamiento del error de reconstrucción de los

estados no medibles directamente. Así:

p(s) = s2 + L21s+FL

JL22 ≡ pd(s) = s2 + 2ζrωnrs+ ω2

nr

y, finalmente,

L21 = 2ζrωnr; L22 =J

FLω2

nr

112 OBSERVADORES DINÁMICOS DE ESTADO

Figura 4.15: Medición de la altura en el péndulo simple (cm = centro de masa)

4.6. Ejercicios propuestos

Ejercicio 4.1: Medición del péndulo sin amortiguamientoConsidere el péndulo simple sin amortiguamiento, Modelo 3, en la página 9.

Estudie dos casos:

1. la salida está dada por y(t) = x2(t), es decir, se tiene disponible la velocidadangular del brazo del péndulo,

2. se mide la altura y(t) = h(t) del extremo de la barra. Ver Figura 4.15.

Se desea estabilizar el sistema alrededor de x1 = Θd. Diseñe, para cada caso, unobservador dinámico de estados. En el caso y(t) = x2(t), obtenga adicionalmente unobservador de orden reducido.

Responda las siguientes preguntas para cualquiera de los diseños anteriores:¿Es posible obtener tal observador? ¿Qué restricciones se deben imponer al sistemapara realizar este diseño? Explique las implicaciones prácticas o físicas asociadas aldiseño de un observador dinámico de esta naturaleza.

(?)

Modelo 27: Péndulo invertido sobre un móvil, modelo 2Consideremos un modelo simplificado del problema de balancear un péndulo invertido montadosobre un carrito o móvil, ligeramente diferente al Modelo 22 , en la página 45. En este caso pre-sentamos un sistema de segundo orden. El péndulo es modelado como una barra delgada demasa m y longitud 2L (el centro de masa está a una distancia L de la base), mopntado sobre unmóvil de masa M .

Las ecuaciones del movimiento del péndulo son:

x1 = x2

x2 =g sen(x1)− amLx2

2 sen(2x1)/2− a cos(x1)u

4L/3− amL cos2(x1)

(4.47)

donde x1 es el ángulo, medido en radianes con respecto a la vertical, x2 es la velocidad angularasociada y u es la fuerza que se aplica al carrito (en Newtons). El resto de los parámetros delsistema está dado por: g es la aceleración de gravedad; a = 1/(m+M) es una constante.

El punto de equilibrio del sistema para u = U = constante, está dado por:

X(U) =

[tan−1(aU

g)

0

](4.48)

4.6 EJERCICIOS PROPUESTOS 113

El punto de equilibrio del sistema para x1 = X = constante, está dado por:

x1 = arbitrario = X ; x2 = 0 ; u =g

atan(X) (4.49)

M

Ejercicio 4.2: Diseño de observadores de orden completo y orden reducido:péndulo invertido sobre un móvil

Considere el modelo anterior (4.47). Los valores de los parámetros están dadospor: m = 2 kg, M = 8 kg, L = 1/2 m y g = 9,8 m/seg2.

Suponga primeramente que la salida es la posición angular y = x1. En el puntode equilibrio se tendrá y = Y = X. Para la salida incremental yδ = y−Y , determinesi el sistema es observable o no. ¿Que pasa si la salida medida es en realidad lavelocidad angular x2?, ¿el sistema sigue siendo observable?

Calcule tanto el observador de orden completo como el de orden reducido para elsistema observable. Dibuje los diagramas de control asociados.

Simule en Matlab (R) el comportamiento de ambos observadores. Debe determi-nar, para ello, la ley de realimentación del vector de estado incremental necesariapara estabilizar el sistema alrededor de su punto de equilibrio. Fije los polos de laley de realimentación y del observador de manera apropiada.

(?)

Ejercicio 4.3: Observador de orden reducido para un tanque de reaccióncontinuamente agitado

Considere el Modelo 10, en la página 16. Note que la salida está dada por y =

x1 + x2. Hasta ahora solo hemos diseñado observadores de orden reducido cuandose puede medir uno o varios de los estados. Diseñe un o.o.r. para el sistema dado,considerando la salida dada y = x1 + x2. Simule el comportamiento del sistema enlazo cerrado. Ayuda: Primeramente realice una transformación de estados, de talforma que la salida reemplace uno de los estados dados. (?)

Ejercicio 4.4: Observador de orden reducido: sistema de levitación mag-nética

Diseñe la ley de control por realimentación del vector de estados para el sistemano lineal Modelo 8, en la página 14, utilizando un observador de orden reducido.Realice las simulaciones del comportamiento dinámico del sistema en lazo cerrado.Ayuda: Emplee los resultados obtenidos en el capítulo anterior. Recuerde que lasalida está dada por y(t) = x1(t). (?)

Ejercicio 4.5: Diseño de un observador de orden reducido: manipuladorrobótico flexible

Considere el Modelo 23, en la página 50. Se tienen disponibles para medicióndos de los cuatro estados del sistema. Se pueden medir las posiciones angularestanto en el eje del motor ψ, como del brazo robótico respecto a la vertical θ.

Diseñe:La ley de control por realimentación del vector de estado incremental, yEl observador de orden reducido de orden 2 asociado al sistema dado.

114 OBSERVADORES DINÁMICOS DE ESTADO

Proponga valores de los parámetros que físicamente sean adecuados al sistemadado (investigue en libros de robótica o en Internet por ejemplo, si no dispone de unsistema físico similar).

Simule el sistema en lazo cerrado con el observador dinámico de orden reducidodiseñado.

(??)

Ejercicio 4.6: Simulación de una derivada sucia: sistema aro-anilloDerivada sucia. La derivada sucia (llamada así por su nombre en inglés dirtyderivative), es utilizada en la práctica cuando la derivada de una variable x no sepuede medir directamente. Cuando se mide la variable x solamente, su derivada seestima con una aproximación, por ejemplo, del tipo

ˆx =ω2

0s

s2 + 1,4ω0s+ ω20

x (4.50)

donde ˆx denota un estimado de x; la frecuencia de corte ω0 es relativamente granderespecto a las constantes de tiempo de la dinámica del sistema.

Observador de orden reducido. Considere el ejemplo en Matlab 4.2, en la página 91.Diseñe un observador de orden reducido. Simule el observador de orden reducido enlazo cerrado con la ley de control (4.21), teniendo cuidado de reemplazar x2 por suestimación x2.

Esquema con derivada sucia. Estime la derivada x2 mediante la expresión (4.50).Simule esta aproximación en lazo cerrado con la ley de control para el sistema nolineal. Compare con los resultados obtenidos en el caso del observador de ordenreducido.

(??)

4.7. Resumen del capítulo y Lecturas adicionales

Cuando no se pueden medir todos los estados del sistema incrementaly deseamos emplear una estrategia de realimentación del vector de estado,la solución expedita es diseñar un observador dinámico de Luenberger. Siel sistema es observable, la rapidez del observador puede escogerse de lamanera deseada. El observador dinámico del estado incremental “copia” laestructura del sistema linealizado (por lo tanto, posee la misma dimensión),obteniendo un sistema dinámico que además es autocorregido.

Gracias al principio de separación, los polos del sistema en lazo cerrado,obtenidos mediante la realimentación de estados, pueden escogerse inde-pendientemente de los polos de la dinámica de observación.

En el caso de medir o disponer de una o más variables de estado, esposible diseñar un observador dinámico de orden reducido. Este observadorposee una dimensión inferior a la dimensión del sistema original.

4.7 RESUMEN DEL CAPÍTULO Y LECTURAS ADICIONALES 115

Lecturas recomendadasAl igual que en el capítulo anterior, le sugerimos consulte la información

referente al diseño de observadores, tanto de orden reducido como de ordencompleto, en los siguientes textos:

1. G.F. Franklin, J. David Powell, A. Emami-Naeini, Feedback Control ofDynamic Systems, 3ra. Edición, Addison-Wesley, 1994, [FPEN94].

2. K. Ogata, Modern Control Engineering, Prentice Hall, 1993, [Oga93].

3. S. Bahram, M. Hassul, Control System Design using Matlab, PrenticeHall, Englewood Cliffs, New Jersey, 1995. [BH95].

4. O’Reilly, Observers, Pergamon, 1980. [completar]. Un libro donde sedesarrolla la teoría de observadores, tanto para sistemas como discre-tos, con algunas orientaciones al diseño “óptimo”. Muy didáctico.

Las referencias originales sobre el diseño de observadores, tal y comoestán planteadas en este capítulo,

1. D. G. Luenberger, “Observers for multivariable systems”, IEEE Trans.Automat. Contr., vol. 11, pp. 190–197, 1966, [Lue66].

2. D. G. Luenberger, “An introduction to observers”, IEEE Trans. Au-tomat. Contr., vol. 16, pp. 596–602, 1971, [Lue71].

La dualidad es una propiedad particularmente interesante de los sis-temas lineales:

D. G. Luenberger, “A double look at duality”, IEEE Trans. Automat.Contr., vol. 37, pp. 1474 - 1482, October 1992, [Lue92]. En este artícu-lo se describe la dualidad tanto desde el punto de controlabilidad yobservabiliad, como desde el punto de vista de la convexidad (un tipode dualidad que caracteriza el diseño de leyes de control óptimo).

Sobre la derivación y sus aproximaciones, el lector puede referirse a lassiguientes referencias:

K.J. Åström, T. Hägglund, PID Controllers: Theory, Design, and Tun-ing, Instrument Society of America, 2da edición, Research TrianglePark, NC, 1995, [ÅH95]. En este texto se hace un estudio de la acciónderivativa y de su implementación numérica. Se discuten las limita-ciones prácticas que se generan con la aproximación numérica y elporqué la acción derivativa no es utilizada en general.

5

Síntesis decompensadores clásicos

Foto

Durante años el diseño de leyes de control estuvo basado exclu-sivamente en el uso de métodos frecuenciales. En la actualidad,el uso de reguladores o compensadores en el control de plantas yprocesos industriales no ha perdido su vigencia y sigue teniendouna gran importancia.

El método de la linealización aproximada ilustrado en los capítu-los previos, nos permitirá dedicarnos a la llamada teoría clásica desistemas de control lineales.

5.1. Introducción

El método de la linealización aproximada permite, en principio, el usode cualquiera de los métodos de diseño de controladores inherentementeválidos para sistemas lineales.

Como hemos visto hasta ahora, esto es cierto en tanto

116

5.2 DISEÑO DE REGULADORES DEL TIPO P, PI Y PID 117

1. el principio de linealización sea válido localmente en un entorno “su-ficientemente grande” alrededor del punto de operación deseado,

2. el modelo linealizado cumpla con las condiciones de controlabilidad yobservalidad requeridas.

3. se diseñe un controlador, en base al análisis llevado a cabo sobre el sis-tema linealizado, el cual induzca una estabilización local del sistemano lineal, alrededor de su punto de equilibrio.

En este capítulo seguiremos este mismo “procedimiento” para el diseñode esquemas de control clásicos basados en la función de transferencia.

Nuestro propósito no es desarrollar en profundidad los diferentes méto-dos de análisis frecuencial (lugar de las raíces, método de Bode, Nichols,etc.) para el diseño de compensadores1 Gc(s) (adelanto, atraso, adelanto–atraso, etc.) ya que existen excelentes y detalladas referencias al respecto,refiérase, por ejemplo, en la sección Lecturas recomendadas al final delcapítulo. En lugar de ello, presentaremos un conjunto de ejemplos ilustra-tivos de la aplicación de algunas de las estrategias de compensación máscomunmente empleadas.

En adelante, trataremos el diseño de compensadores en serie Gc(s) parasistemas no lineales. En la sección 5.2 trataremos en detalle los esquemasde diseño clásicos para la regulación, conocidos como controlador propor-cional o P, proporcional–integral o PI y proporcional-integral-derivativo oPID, todos ellos basados en el método frecuencial de Ziegler-Nichols. Enla sección 5.4 se presenta el desarrollo de compensadores basados en elmétodo de controlador-observador clásico. Finalmente, en la sección 5.5,presentaremos el procedimiento de diseño de un compensador en adelan-to, utilizando para ello el ejemplo del sistema de levitación magnética. Losesquemas presentados usan Matlab (R) en forma intensiva y podrán servircomo una guía en las experiencias de diseño de sistemas de control reali-mentado presentadas posteriormente.

5.2. Diseño de reguladores del tipo P, PI y PID

Los métodos de diseño de compensadores del tipo PID (proporcional–integral–derivativo) son de gran importancia en la estabilización de sis-temas reales que operan en la vecindad de puntos de equilibrio, prueba deello es el uso frecuente y entenso de compensadores PID en aplicacionesindustriales (se dice que hoy en día el 90 % de todos los sistemas de controlindustriales en el mundo son regulados por controladores PI!).

A continuación, usando como base el diseño basado en el sistema linea-lizado, presentaremos el método de Ziegler-Nichols en régimen frecuencial método de

Ziegler-Nichols1A las leyes de control diseñadas mediante los llamados métodos clásicos se las llama tam-bién redes de compensación. Este nombre proviene de los arraigados orígenes de esta teoría enla ingenierıa eléctrica; H. Black, H. Bode, H. Nyquist, por ejemplo, trabajaron todos para laBell Telephone Company resolviendo problemas de índole fundamentalmente eléctrico.

118 SÍNTESIS DE COMPENSADORES CLÁSICOS

para la entonación o ajuste de los parámetros del compensador. El métodousado es el basado en la respuesta crítica del sistema, el cual permite en-Método Z-N

basado en larespuesta crítica

contrar directamente, de una forma sistemática y analítica, los elementosnecesarios a partir del diagrama de Nyquist para el cálculo de los paráme-tros del controlador P, PI o PID.

Por supuesto, el método que expondremos sólo se aplica a sistemas deuna sola entrada y una salida o SISO (por sus siglas en inglés single-inputsingle-output). Los sistemas estudiados además presentarán la propiedadsistemas SISO,

estables en lazoabierto

de ser estables en lazo abierto. No utilizaremos el método de Ziegler-Nicholsbasado en los parámetros de la respuesta escalón, por cuanto la obtenciónen forma analítica de estos parámetros es un tanto más difícil.

El método de Ziegler-Nichols de respuesta crítica en régimen frecuencialconsiste en determinar dos parámetros, f0(U) y K0(U), a partir del diagra-ma de Nyquist de la función de transferencia en lazo abierto dada por, vienede la página 37,

GU (s) = C(U)[sI −A(U)]−1B(U) (2.8*)

Los parámetros a determinar son conocidos como la frecuencia últimafrecuencia últimay gananciaúltima

f0(U) y la ganancia última K0(U). En lugar de la frecuencia f0(U) nos in-terezará en particular la frecuencia última expresada en radianes ω0(U) yel período último P0(U), los cuales se expresan de la siguiente manera:

P0(U) =2π

ω0(U)=

1f0(U)

K0(U) =1

|GU (ω0(U))|

Los parámetros presentados en (5.1) corresponden a los que usaremosdirectamente en el método de Ziegler-Nichols. Note la dependencia de estosparámetros respecto al punto de operación U .

La frecuencia ω0(U) (o f0(U)) corresponde al valor de frecuencia finita,diferente de cero, para el cual Im G(jω(U)) = 0,2 es decir, cuando el sistemapresenta estabilidad marginal3. Este valor se determina directamente so-bre el gráfico de Nyquist, tal como se muestra en la Figura 5.1.

Analíticamente, los valores de K0(U) y ω0(U) se calculan a partir de lafunción de transferencia GU (s) de la manera siguiente:

arg [GU (jω0(U))] = −π

K0(U) =1

|GU (jω0(U))|(5.1)

2En el diagrama de Bode este valor corresponde a la frecuencia en que la fase cruza por−180 (−π radianes). Recuerde las nociones de margen de ganancia y de margen de fase.

3De hecho, la ganancia “crítica” corresponde al valor de ganancia proporcional para el cualel sistema se hace “críticamente estable”.

5.2 DISEÑO DE REGULADORES DEL TIPO P, PI Y PID 119

Figura 5.1: Determinación de la frecuencia última ω0 y la ganancia última K0

Tabla 5.1: Parámetros KP , TI , TD del método de Ziegler-Nichols

Tipo de Parámetro Parámetro Parámetrocontrolador KP TI TD

P 0,5K0(U) ∞ 0PI 0,45K0(U) 0,83P0(U) 0PID 0,6K0(U) 0,5P0(U) 0,125P0(U)

Regla de Ziegler-Nichols. La forma clásica (teórica) del compensadorPID que estabilizará la salida del sistema linealizado al valor de cero estádada por la expresión

Gc(s) = KP (U)[1 +

1TI(U)s

+ TD(U)s]

(5.2)

donde KP es la ganancia estática, TI y TD son constantes de tiempo asoci-adas a los términos integral y derivativo, respectivamente. Como se obser-va, las expresiones de los controladores P y PI se obtienen haciendo, respec-tivamente, TI(U) = ∞, TD(U) = 0 y TD(U) = 0. Para el caso del reguladorPD hacemos simplemente TI(U) = ∞.

Otra representación, un tanto más simple, del controlador (5.2) es lasiguiente:

Gc(s) = K1(U) +K2(U)

s+ K3(U)s (5.3)

Tomando en cuenta (5.2) o (5.3), el método Ziegler-Nichols se basa enproponer, a partir de los valores P0 y K0, los valores de los parámetros delcompensador lineal del tipo P, PI o PID a diseñar. La tabla 5.1 muestra losdiferentes valores paramétricos de KP , TI y TD recomendados por el método

120 SÍNTESIS DE COMPENSADORES CLÁSICOS

Tabla 5.2: Parámetros K1, K2, K3 del método de Ziegler-Nichols

Tipo de Parámetro Parámetro Parámetrocontrolador K1 K2 K3

P 0,5K0(U) 0 0

PI 0,45K0(U) 0,54K0(U)P0(U) 0

PID 0,6K0(U) 1,2K0(U)P0(U) 0,075K0(U)P0(U)

de Ziegler-Nichols. Estos valores caracterizan las constantes de los compen-sadores que permiten regular eficientemente a toda la familia de sistemaslineales parametrizada por el punto de equilibrio deseado. En términos delos parámetros K1,K2,K3, la tabla 5.1 se puede reescribir como aparece enla tabla 5.2.

Observe que no hemos considerado explícitamente el caso del contro-lador proporcional-derivativo PD (ver el ejemplo Matlab 8.2, página 211,El controlador

PD corresponde aunarealimentacióndel vector deestados

en la Parte II sobre la linealización extendida) por cuanto es fácil demostrarque este caso se corresponde, en general, con realimentación (estática) delvector de estado, cuyo tratamiento ya hemos visto en todo detalle en capí-tulos anteriores.

El controlador PID lineal, obtenido mediante el método de Ziegler-Nichols,puede escribirse fácilmente en términos de una representación de estado,donde la entrada corresponde al error linealizado de la salida incremen-tal eδ respecto de su valor nominal cero. Esta representación admite en laecuación de salida la presencia de un término en la derivada de dicha en-trada, es decir, deδ/dt, el cual excita al compensador directamente. Por lotanto tenemos:

ξδ = K2(U)eδ

uδ = ξδ + K1(U)eδ + K3(U)deδ

dt

(5.4)

donde eδ = yref − yδ = 0− yδ = −yδ.Evidentemente, la señal de control sintetizada por el compensador an-

terior adopta la forma:

uδ = K1(U)eδ + K2(U)∫ t

o

eδ(σ)dσ + K3(U)deδ

dt(5.5)

Dicha expresión constituye, ciertamente, un controlador PID clásico. Esteregulador permitirá estabilizar localmente al sistema no lineal dentro deun esquema de diseño como el planteado en el diagrama de bloques de laFigura 5.2.

5.3 EJEMPLOS BASADOS EN LA REGLA DE ZIEGLER-NICHOLS 121

Figura 5.2: Esquema de control PID para Sistemas No Lineales

5.3. Ejemplos basados en la regla de Ziegler-Nichols

El material expuesto hasta este punto será útil al momento de regularun sistema dado mediante un PID. Sin embargo, antes de proceder a re-alizar algunos ejemplos del uso de esta estrategia, debemos hacer notar lasiguiente observación: No siempre es posible aplicar el método de Ziegler-Nichols para el diseño de un compensador PID linealizado.

En general, sistemas de primer y segundo orden no puedenbeneficiarse de diseños derivados de esta técnica. La razónfundamental estriba en el hecho de que tales sistemas possenfunciones de transferencia cuyo gráfico de Nyquist no corta eleje real más que en ω = 0 y ω = ∞. Tampoco se aplicará estemétodo a sistemas inestables.

La determinación de la ganancia última se convierte, entonces, en unproceso singular. De hecho, este método se empleará en sistemas que pre-sentan una característica forma en “S” de la respuesta escalón unitario4.

Ejemplo 5.1: Ejemplo de diseño donde las condiciones fallan: control de unsistema de suspensión magnéticaConsideremos nuevamente el sistema de suspensión magnética Modelo 8 , en la página 14, elcual permite mantener levitada una pequeña esfera metálica de masa m.

La función de transferencia del sistema linealizado (2.11), en la página 39, la cual relaciona lacorriente de entrada al circuito del electroimán con la posición de la esfera metálica está dada por:

GX(s) =yδ(s)

uδ(s)=x1δ(s)

uδ(s)=

2L

√cg

mX

s3 + RLs2 − g

Xs− Rg

LX

(5.6)

(0bsérvese la inversión de signo respecto a la función de transferencia original (2.12), en estecaso hemos tomado la señal de salida de tal forma que yδ(t) = −x1(t), esto nos permitirá facilitarlos cálculos más adelante.)

Estudiemos este sistema mediante el criterio de estabilidad de Nyquist. Este criterio tiene que Criterio deestabilidad deNyquist

ver con la siguiente función de transferencia

1 +KcNG(s)

DG(s)(5.7)

4Véase, por ejemplo, [Oga93]. El lector puede referirse al final del capítulo donde se presen-tan otras referencias al respecto.

122 SÍNTESIS DE COMPENSADORES CLÁSICOS

donde GX(s) = NG(s)/DG(s). El numerador de (5.7) corresponde al polinomio característicodel sistema en lazo cerrado. El criterio dice que el diagrama de Nyquist cumple con la condiciónN = Z − P donde N es el número de vueltas contadas en sentido horario alrededor del punto−1 + 0 j , Z es el número de ceros inestables (Re(s) > 0) presentes en (5.7), es decir, Z secorresponde con el número de raíces inestables del polinomio característico del sistema en lazocerrado; P es el número de polos inestables de (5.7).

Figura 5.3: Gráfico de Nyquist de la función de transferencia para el sistema de suspensiónmagnética

El gráfico de Nyquist para este sistema se presenta en la Figura 5.3. Los valores empleadosde los parámetros fueron los siguientes:

g = 9,8 [m/seg2]; c = 1; m = 0,1 [kg]; R = 1 [Ω]; L = 0,01 [Henrios]; X = 0,05 [m] (5.8)

De acuerdo con el criterio de Nyquist, este sistema en lazo cerrado es inestable. En efecto, apartir del diagrama se deduce que N = 0, el sistema en lazo abierto presenta una raiz inestableP = 1 y, por lo tanto, Z = 1. Al aumentar la ganancia Kc, persisten las raíces inestables y dehecho aumentan a Z = 2. La ilustración de este hecho se observa, más adelante, en el lugar delas raíces del sistema (5.6) mostrado en la Figura 5.4. Este sistema, entonces, no se puede tratarmediante el método de diseño de Ziegler-Nichols descrito en esta sección.

Ejemplo 5.2: Diseño de un controlador PI para un modelo promedio de unconvertidor tipo “Boost” de corriente continuaConsideremos la función de transferencia (2.10), en la página 38, del modelo promedio del con-vertidor Boost:

GU (s) = −ω0Z1(U)s− b

Z1(U)

s2 + ω1s+ ω20(1− U)2

(2.10*)

donde

µ = U ; Z1(U) =bω1

ω20(1− U)2

: Z2(U) =b

ω0(1− U)

En la Figura 5.5 se presenta el gráfico de Nyquist de la función de transferencia (2.10), toman-do en cuenta los siguientes valores numéricos típicos de los parámetros:

ω0 = 1,5811 · 103; ω1 = 1,6667 · 103 : b = 106,066; U = 0,8 (5.9)

5.3 EJEMPLOS BASADOS EN LA REGLA DE ZIEGLER-NICHOLS 123

Figura 5.4: Lugar de las raíces para el sistema de suspensión magnética

Figura 5.5: Gráfico de Nyquist de la función de transferencia del modelo promedio deun convertidor de corriente continua tipo “Boost”

124 SÍNTESIS DE COMPENSADORES CLÁSICOS

Figura 5.6: Lugar de las raíces del modelo promedio del convertidor Boost

La forma particular del gráfico es indicativa de que podemos aplicar el método de Ziegler-Nichols presentado anteriormente, basado en la respuesta frecuencial, para el diseño de un con-trolador PI o PID. En este caso particular realizaremos el diseño de un controlador PI.

Sustituyendo s = jω en la función de transferencia (2.10), obtenemos la siguiente expresiónque nos permitirá determinar la parte imaginaria y la parte real de G( jω):

GU (s) = −ω0Z1(U)jω − b

Z1(U)

( jω)2 + ω1 jω + ω20(1− U)2

= −ω0Z1(U)

(jω − b

Z1(U)

)([ω2

0(1− U)2 − ω2]− jωω1)

[ω20(1− U)2 − ω2]2 + (ωω1)2

= ω0Z1(U)(ω2

0(1− U)2 − ω2) bZ1(U)

− ω2ω1

(ω20(1− U)2 − ω2)2 + (ωω1)2

− jω0Z1(U)ω(ω2

0(1− U)2 − ω2) + ωω1bZ1(U)

(ω20(1− U)2 − ω2)2 + (ωω1)2

En consecuencia,

ImGU ( jω) = −ω0Z1(U)ω(ω2

0(1− U)2 − ω2) + ωω1bZ1(U)

(ω20(1− U)2 − ω2)2 + (ωω1)2

= −ω0ωZ1(U)2ω2

0(1− U)2 − ω2

(ω20(1− U)2 − ω2)2 + (ωω1)2

(5.10)

Se puede observar en el gráfico 5.5 que la parte imaginaria (5.10) del gráfico de Nyquist sehace cero en ω = 0, ω = ∞, los cuales son valores que no podemos emplear. Entonces, lafrecuencia de cruce con el eje imaginario que nos interesa será:

ω(U) =√

2ω0(1− U)

El valor del módulo de la función de transferencia GU ( jω) para el valor de frecuencia angularω(U) está dado por

|GU ( jω(U))| =ω0

ω1Z1(U) =

b

ω0(1− U)

5.4 MÉTODO DEL CONTROLADOR-OBSERVADOR CLÁSICO 125

Figura 5.7: Esquema de regulación promedio basado en un controlador PI para un con-vertidor tipo “Boost”

De esta última expresión se obtienen el periodo último P0(U) y la ganancia última K0(U):

P0(U) =2π

ω(U)=

√2π

ω0 · (1− U); K0(U) =

ω0(1− U)2

b

De acuerdo a los valores de la tabla 5.2, las ganancias del controlador PI para el sistemalinealizado están dadas por:

K1(U) = 0,45ω0(1− U)2

b: K2(U) = 0,54

ω20(1− U)3√

2πb(5.11)

La representación del controlador PI en el espacio de estado, de acuerdo a la expresión (5.4)y tomando en cuenta los valores (5.11), resulta

ξδ = 0,54ω2

0(1− U)3√

2πbeδ

µδ = ξδ + 0,45ω0(1− U)2

beδ

(5.12)

donde eδ = −yδ .En este caso particular, además del controlador lineal uδ resultante del compensador PI y la

adición del valor del control en equilibrio µ = U , el esquema final de control involucra ademásla delimitación de la señal de entrada µ, puesto que µ debe cumplir la relación 0 ≤ µ ≤ 1. Estadelimitación se lleva a cabo mediante un saturador, el cual impide que la señal de entrada µ (larelación de trabajo), tome valores inferiores a 0 o superiores a 1. Por esta razón, aparece unlimitador con estas características en el diagrama de bloques presentado en la Figura 5.7.

5.4. Método del controlador-observador clásico

Un análisis relativamente sencillo del esquema de compensación linealbasado en el uso de realimentación del vector de estado a través de obser-vadores, nos conduce a convencernos de que es posible utilizar un esquemaequivalente en términos de funciones de transferencia. De esta forma notenemos necesidad de recurrir a la representación de estado y sus conceptosasociados de controlabilidad y observabilidad. A tal esquema de regulaciónse le conoce con el nombre de esquema del controlador-observador clásico.Las bases del enfoque lineal del método nos serán útiles sobretodo para pro-poner más adelante una extensión al caso no lineal (mediante la técnica dela linealización extendida).

126 SÍNTESIS DE COMPENSADORES CLÁSICOS

Supongamos que hemos resuelto el problema de realimentación de es-tado mediante el uso de un observador dinámico en un sistema linealizadoalrededor de un cierto punto de equilibrio. Las ecuaciones del controlador ydel observador serían, en tal caso, las siguientes:

uδ = eδ = vδ(s)−K(U)xδ

˙xδ = A(U)xδ + B(U)uδ + L(U)[yδ − yδ]yδ = C(U)xδ

donde vδ(s) representa la transformada de una señal de referencia conocida.La función de transferencia entre la salida del compensador, representa-

da por la señal realimentada incremental K(U)xδ(s), y la entrada al compen-sador, representada por la salida incremental de la planta yδ(s), está defini-da por la siguiente relación, obtenida directamente de las ecuaciones ante-riores:

−K(U)xδ = −K(U)[sI −A(U) + L(U)C(U)]−1L(U)yδ(s)

−K(U)[sI −A(U) + L(U)C(U)]−1B(U)uδ(s)= −Hyδ(U, s)yδ(s)−Huδ(U, s)uδ(s)

La expresión del controlador representado en la forma de funciones detransferencia es, entonces, la siguiente:

uδ(s) = vδ(s)−K(U)xδ(s) = vδ(s)−Hyδ(U, s)yδ(s)−Huδ(U, s)uδ(s) (5.13)

Resolviendo para la transformada de la entrada incremental a la planta,o error incremental, tenemos:

uδ(s) = −[1 + Huδ(U, s)]−1[vδ(s)−Hyδ(U, s)yδ(s)]

La Figura 5.8 muestra una interpretación en diagrama de bloques de laecuación (5.13), con respecto a la entrada incremental.

A menudo utilizaremos una parametrización en términos de la salidaen equilibrio para el bloque compensador que recibe la influencia directa dela salida incremental. Esta parametrización se muestra en la Figura 5.9.Como se observa en este diagrama, la notación usada anteriormente per-manece inalterada a excepción de la dependencia explícita del valor nomi-nal Y de la salida.

Este último esquema se corresponde, dentro de ciertas limitaciones, aun esquema clásico, bien conocido, de disposición de los bloques de compen-sación en sistemas lineales. Sin embargo, a diferencia del esquema clásico,existen ciertas limitaciones en la estructura de estos bloques.

Usando las expresiones obtenidas a partir de la transformada de la en-trada del control incremental en términos de sí misma y de la salida in-cremental, podemos ver, en primer lugar, que los denominadores en am-bas funciones de transferencia deben ser idénticos. En segundo lugar, es

5.4 MÉTODO DEL CONTROLADOR-OBSERVADOR CLÁSICO 127

Figura 5.8: Interpretación del diseño en variables de estado

Figura 5.9: Representación del esquema controlador-observador clásico

128 SÍNTESIS DE COMPENSADORES CLÁSICOS

sabido que la manipulación de bloques de funciones de transferencia puedecrear eliminaciones o simplificaciones de ciertos factores, los cuales puedenaparecer tanto en los numeradores como en los denominadores de las fun-ciones de transferencia resultantes. Estas simplificaciones pueden pasarinadvertidas y dejar en los diseños resultantes modos escondidos que, deser inestables, causarían un esquema de control inválido. No abundaremos,por ahora, en las especificidades de estos detalles que, aunque importantes,aparecerán en su debido momento durante los desarrollos que presentare-mos a continuación.

Supongamos que la familia de funciones de transferencia de la plantalinealizada y de los bloques de compensación, parametrizada respecto alpunto de equilibrio (X, U, Y ), está dada explícitamente por:

GU (s) =NG(U, s)DG(U, s)

; Hyδ(Y, s) =

Ny(Y, s)C(s)

; Huδ=

Nu(U, s)C(s)

Los numeradores de estas funciones de transferencia son polinomios degrado n − 1 como máximo. Aún cuando podemos suponer que los denom-inadores de las funciones de transferencia de los bloques compensadoressean de grado n, es fácil ver que podemos suponer, sin pérdida de genera-lidad, que C(s) es un polinomio de orden n − 1, en virtud de que siemprepodemos reducir el orden del observador de estado en una unidad (ya quela salida siempre puede considerarse como un estado observable del sis-tema). Recordemos también que, en general, hemos buscado diseños deobservadores cuyas dinámicas del error fuesen asintóticamente estables eindependientes del punto de operación (es decir, los autovalores de la ma-triz del sistema autónomo que describen la dinámica del error incrementaldeben exhibir parte real negativa y, además, ser independientes del pun-to de equilibrio). Impondremos, por tanto, la independencia, con respectoa U , de los coeficientes del polinomio C(s), así como la adscripción de susraíces al semiplano izquierdo del plano complejo. Adicionalmente, supon-dremos que no existe simplificación posible entre los factores que confor-man el numerador y el denominador de la función de transferencia de laplanta linealizada. Es decir, que los polinomios NG(U, s) y DG(U, s) debenPolinomios

coprimos ser coprimos. Esta suposición es equivalente a imponer, simultaneamente,las condiciones de controlabilidad y observabilidad en la planta linealizada.Esta última exigencia, como sabemos, no es restrictiva en grado alguno.

La función de transferencia del sistema en lazo cerrado está dada por:

yδ(s)vδ(s)

= FU (s) =GU (s)

1 + Huδ(U, s) + Hyδ(Y, s)GU (s)

=C(s)NG(U, s)

C(s)DG(U, s) + NU (U, s)DG(U, s) + Ny(Y, s)NG(U, s)

Daremos un argumento plausible que establece la posibilidad de escogerNu(U, s) y Ny(Y, s) de tal forma que el denominador de la función de trans-

5.4 MÉTODO DEL CONTROLADOR-OBSERVADOR CLÁSICO 129

ferencia del sistema en lazo cerrado verifique la siguiente identidad:

C(s)DG(U, s) + NU (U, s)DG(U, s) + Ny(Y, s)NG(U, s) ≡ C(s)D(U, s) (5.14)

donde D(U, s) representa el polinomio característico deseado del sistema enlazo cerrado.

La familia de funciones de transferencia que describen el sistema con-trolado estará dada entonces por:

yδ(s)vδ(s)

= FU (s) =NG(U, s)D(U, s)

El diseño de los bloques compensadores se lleva a cabo entonces a partirde la ecuación que relaciona los numeradores de sus funciones de transfer-encia con los polinomios conocidos y con los polinomios que determinan ladinámica asignada al sistema en lazo cerrado y al observador subyacente.Observamos que la igualdad polinomial involucra la identificación términoa término de los coeficientes de dos polinomios de grado 2n− 1 que arrojanun total de 2n ecuaciones y tenemos como incógnitas, precisamente, los 2ncoeficientes de los numeradores de las funciones de transferencia de los blo-ques compensadores, es decir, los coeficientes de Ny(Y, s) y Nu(U, s). Se pue-de demostrar que si los polinomios NG(U, s) y DG(U, s) son coprimos existe,entonces, solución para tal sistema de ecuaciones y, además, tal solución esúnica. Esto se deduce directamente del algoritmo de Euclides5. Algoritmo de

EuclidesA continuación ilustraremos el uso de este método de diseño de controllineal en un ejemplo sencillo, proveniente de una linealización.

Ejemplo 5.3: Cálculo de un controlador-observador clásico para el manipu-lador robótico de una sola unión rígidaConsidere el Modelo 9 , en la página 15, del manipulador robótico de una sola unión rígida (1.21).Su punto de equilibrio parametrizado respecto a u = U está dado por (1.23).

La linealización de este sistema alrededor del punto de equilibrio resulta:[x1δ

x2δ

]=

[0 1

− cNJ

√1− U2

c2−B

J

][x1δ

x2δ

]+

[01j

]uδ

yδ =[

1 0] [ x1δ

x2δ

] (5.15)

La función de transferencia de este sistema linealizado se obtiene de inmediato como:

GU (s) =yδ(s)

uδ(s)=NG(U, s)

DG(U, s)=

1/J

s2 + BJs+ c

NJ

√1− U2

c2

(5.16)

Para este sistema, proponemos el esquema de compensación lineal basado en el esquemaclásico del controlador-observador descrito en esta sección. Para ello,

definimos los siguientes bloques compensadores:

Huδ(U, s) =Nu(U, s)

C(s)=nu1(U)

s+ α+ nu2(U)

Hyδ(Y, s) =Ny(Y, s)

C(s)=ny1(Y )

s+ α+ ny2(Y )

5Este algoritmo es muy utilizado para el diseño de algoritmos de control, en [DFT92] sepresenta una introducción muy didáctica a este tema.

130 SÍNTESIS DE COMPENSADORES CLÁSICOS

La función de transferencia deseada en lazo cerrado está dada por:

FU (s) =NG(U, s)

D(s)=

1/J

s2 + 2ζωns+ ω2n

La ecuación fundamental (5.14) sobre la que basamos el diseño lineal resulta

(s+ α)(s2 + 2ζωns+ ω2n) ≡

(s+ α)

s2 +B

Js+

c

NJ

√1−

U2

c2

+ (nu2(U)s+ [αnu2(U) + nu1(U)])

s2 +B

Js+

c

NJ

√1−

U2

c2

+

1

J(ny2(U)s+ [αny2(Y ) + ny1(Y )])

Se igualan los coeficientes de las potencias iguales de s, de los polinomios que se en-cuentran a ambos lados de la identidad. Se obtienen así los siguientes valores para lasincógnitas, los cuales determinan los coeficientes de los numeradores de las funciones detransferencia de los bloques compensadores:

nu2(U) = 0; nu1(U) = nu1 = 2ζωn −B

J

ny2(U) = J

ω2n +

(α−

B

J

)(2ζωn −

B

J

)−

c

NJ

√1−

U2

c2

;

ny2(Y ) = J

[ω2

n +

(α−

B

J

)(2ζωn −

B

J

)−

c

NJcos

(Y

N

)];

ny1(U) = −(

2ζωn −B

J

) c

N

√1−

u2

c2+ αJ

(α−

B

J

) ;

ny1(Y ) = −(

2ζωn −B

J

)[c

Ncos

(Y

N

)+ αJ

(α−

B

J

)]El compensador clásico lineal resulta entonces:

Huδ(U, s) =2ζωn − B

J

s+ α

Hyδ(Y, s) = −

(2ζωn − B

J

) [cN

cos(

YN

)+ αJ

(α− B

J

)]J[ω2

n +(α− B

J

)(2ζωn − B

J

)− c

NJcos(

Yn

)]donde α es un número real positivo completamente arbitrario.Será útil considerar la siguiente realización de espacio de estado de los bloques compen-sadores:

zuδ = −αzuδ + uδ

yuδ =

(2ζωn −

B

J

)zuδ

zyδ = −αzyδ + yδ

yyδ =

(2ζωn −

B

J

)[c

Ncos

(Y

N

)+ αJ

(α−

B

J

)]zyδ

+ J

[ω2

n +

(α−

B

J

)(2ζωn −

B

J

)−

c

NJcos

(Y

N

)]yδ

(5.17)

donde yuδ y yyδ representan las contribuciones de cada bloque a la conformación de laseñal de entrada incremental. Las variables de estado zuδ y zyδ son los estados de losbloques compensadores.

5.4 MÉTODO DEL CONTROLADOR-OBSERVADOR CLÁSICO 131

Ejemplo 5.4: Diseño de un controlador no lineal del tipo controlador-observadorpara un sistema de suspensión magnéticaDamos a continuación en forma resumida los pasos principales del proceso de diseño de un regu-lador del tipo controlador-observador de índole no lineal obtenido por el método de la linealizaciónextendida.

El modelo no lineal del sistema satisface las siguientes expresiones:

x1 = x2

x2 = g −c

m

x23

x1

x3 = −R

Lx3 +

1

Lu

y = x1

Siendo el punto de equilibrio parametrizado por la corriente de entrada constante U :

u = U ; x1(U) = X1(U) =c

mg

U2

R2; x2(U) = 0; x3(U) = X3(U) =

U

R

Linealizando el sistema alrededor del punto de equilibrio genérico se obtiene:

x1δ = x2δ

x2δ =mg2R2

cU2x1δ −

2gR

Ux3δ

x3δ = −R

Lx3δ +

1

Luδ

yδ = x1δ

y la función de transferencia del sistema linealizado, parametrizada en términos de la corriente deentrada U es:

GU (s) =NG(U, s)

DG(U, s)=

(2gRLU

)(s2 − mg2R2

cU2

)(s+ R

L

) = −

(2gRLU

)s3 + R

Ls2 − mg2R2

cU2 s− mg2R3

cLU2

La estructura del compensador lineal esta dada entonces por:

Hu(U, s) =Nu(U, s)

C(s)=nu2(U)s+ nu1(U)

s2 + α2s+ α1+ nu3(U)

=nu3(U)s2 + [α2nu3(U) + nu2(U)]s+ [α1nu3(U) + nu1(U)]

s2 + α2s+ α1

Hy(Y, s) =Ny(Y, s)

C(s)=ny2(Y )s+ ny1(Y )

s2 + α2s+ α1+ ny3(Y )

=ny3(Y )s2 + [α2ny3(Y ) + ny2(Y )]s+ [α1ny3(Y ) + ny1(Y )]

s2 + α2s+ α1

Planteando la función de transferencia deseada en lazo cerrado:

FU (s) =NG(U, s)

D(U, s)=

(2gRLU

)(s+ β)(s2 + 2ζωns+ ω2

n)= −

(2gRLU

)s3 + (2ζωn + β)s2 + (2ζωnβ + ω2

n)s+ βω2n

Obteniendo la ecuación fundamental del diseño:(s2 + α2s+ α1)[s3 + (2ζωn + β)s2 + (2ζωnβ + ω2

n)s+ βω2n]

≡ (s2 + α2s+ α1)

(s3 +

R

Ls2 −

mg2R2

cU2s−

mg2R3

cLU2

)+ [nu3(U)s2 + (α2nu3(U) + nu2(U))s+ (α1nu3(U) + nu1(U))]

(s3 +

R

Ls2 −

mg2R2

cU2s−

mg2R3

cLU2

)− [ny3(Y )s2 + (α2ny3(Y ) + ny2(Y ))s+ (α1ny3(Y ) + ny1(Y ))]

(2gR

LU

)

132 SÍNTESIS DE COMPENSADORES CLÁSICOS

La representación entrada-salida del compensador lineal está dada por:

Hu(U, s) =Nu(U, s)

C(s)

=

(2ζωn + β − R

L

)s+

[(2βζωn + ω2

n) + α2(2ζωn + β)− RL

(2ζωn + β − R

L

)− α2

RL

+ mg2R2

cU2

]s2 + α2s+ α1

Hy(U, s) =Ny(U, s)

C(s)

=ny2(U)s+ ny1(U)

s2 + α2s+ α1−(mgRL

2cU

)[α2 + 2ζωn + β −

R

L

]+ (2βζωn + ω2

n)

(R

L− α2

)LU

2gR

+ (2ζωn + β)

(α2 −

R

L− 1

)LU

2gR+

(α1 − α2

R

L+R2

L2

)U

2g−βω2

nLU

2gR

Ejemplo 5.5: Diseño de un controlador no lineal, mediante el método delcontrolador-observador, de un tanque de reacción continuamente agitadoConsideremos ahora el modelo no lineal de un tanque reactor continuamente agitado en el cualtoma lugar una reacción química del tipo isotérmica en fase líquida

x1 = −(1 +Da1)x1 + u

x2 = Da1x1 − x2 −Da2x22

y = x1 + x2

Donde x1 representa la concentración normalizada (adimensional) Cp/Cpo de cierta especieP en el reactor, donde Cpo es la concentración deseada de las especies P y Q medidas enmol.m−3, La variable de estado x2 representa la concentracin normalizada CQ/Cpo de la es-pecie Q . La variable de control u se define como la razón de la rata de alimentación molar porunidad volumétrica de la especie P, la cual designamos mediante NPF , y la concentración desea-da CPO . Es decir, u = NPF /(FCPO) donde F es la rata de alimentación volumétrica en m3s−1.Las constantes Da1 y Da2 se definien, respectivamente como: k1V/F y k2V CPO/F siendo V elvolumen del reactor, en m−3, y k1, k2 son las constantes de primer orden en s−1.

Se supone que la especie Q es altamente ácida mientras que la especie reactante R es neu-tra. A fin de evadir problemas de corrosión en el equipo que se encuentra aguas abajo se desearegular la concentración total y a un valor de referencia constante dado por Y . Se supone ademásque la variable de control se encuentra acotada, de forma natural, en el intervalo [0, Umax] refle-jando así la imposición físicamente válida de nuestra disponibilidad de una rata de alimentaciónfinita para la especie P.

El punto de equilibrio para este sistema, a una rata fija de alimentación U , está dada por:

x1(U) =U

1 +Da1; x2(U) =

1

2Da2

[−1 +

√1 +

4Da1Da2U

1 +Da1

]

Y (U) =U

1 +Da1+

1

2Da2

[−1 +

√1 +

4Da1Da2U

1 +Da1

]

La linealización del sistema alrededor de este punto de equilibrio resulta ser:

x1δ = −(1 +Da1)x1δ + uδ

x2δ = Da1x1δ −

√1 +

4Da1Da2U

1 +Da1x2δ

yδ = x1δ + x2δ

La función de transferencia del sistema linealizado se obtiene directamente de las ecuaciones

5.5 AJUSTE DE LAS GANANCIAS DE UN COMPENSADOR LINEAL 133

diferenciales lineales anteriores como:

yδ(s)

uδ(s)= GU (s) =

NG(U, s)

DG(U, s)=

s+Da1 +√

1 + 4Da1Da2U1+Da1

(s+ 1 +Da1)(s+

√1 + 4Da1Da2U

1+Da1

)=

s+Da1 +√

1 + 4Da1Da2U1+Da1

s2 +[1 +Da1 +

√1 + 4Da1Da2U

1+Da1

]s+ (1 +Da1)

√1 + 4Da1Da2U

1+Da1

Las funciones de transferencia linealizadas de los bloques compensadores adoptan la formasiguiente:

yuδ(s)

uδ(s)= Hu(U, s) =

nu1(U)

s+ α+ nu2(U);

yyδ(s)

yδ(s)= Hy(U, s) =

ny1(U)

s+ α+ ny2(U)

De otra forma equivalente, expresamos estas funciones de transferencia,como:

yuδ(s)

uδ(s)= Hu(U, s) =

Nu(U, s)

C(s)=nu2(U)s+ αnu2(U) + nu1(U)

s+ α

yyδ(s)

yδ(s)= Hy(U, s) =

Ny(U, s)

C(s)=ny2(U)s+ αny2(U) + ny1(U)

s+ α

La identidad polinómica fundamental que nos permite diseñar el regulador clásico del tipocontrolador-observador, se escribe, en este caso, como:

(s+ α)

s2 +

[1 +Da1 +

√1 +

4Da1Da2U

1 +Da1

]s+ (1 +Da1)

√1 +

4Da1Da2U

1 +Da1

+

[nu2(U)s+ αnu2(U) + nu1(U)]

s2 +

[1 +Da1 +

√1 +

4Da1Da2U

1 +Da1

]s+ (1 +Da1)

√1 +

4Da1Da2U

1 +Da1

+ [ny2(U)s+ αny2(U) + ny1(U)]

[s+Da1 +

√1 +

4Da1Da2U

1 +Da1

]≡ (s+ α)(s2 + 2ζωn + ω2

n)

De la identificación, término a término, de ambos polinómios en la identidad anterior, surgenlos siguientes valores para las incognitas que conforman los numeradores de las funciones detransferencia de los bloques compensadores:

5.5. Ajuste de las ganancias de un compensador lineal

En esta sección solamente presentaremos un ejemplo de un compensa-dor por adelanto para un sistema no lineal particular. Nuestra intenciónes plantear, durante el desarrollo de este diseño particular, algunos de lospasos necesarios que de manera general se deben seguir para realizar sat-isfactoriamente las pruebas y simulaciones del comportamiento dinámicode sistemas no lineales regulados por medio de compensadores lineales.Debido a su gran versatilidad y propiedades de cómputo, esta sección estáorientada al uso de Matlab (R) como herramienta auxiliar en el diseño.

En particular, en el ejemplo ilustrado, las ganancias calculadas para eldiseño linealizado deben ser ajustadas para el sistema no lineal. El dise- Reajuste de las

ganancias delcontrolador parael sistema nolineal

ño se hace entonces en dos etapas: en la primera se calcula el controladorlinealizado (en este caso, un compensador por adelanto) y en la segunda se

134 SÍNTESIS DE COMPENSADORES CLÁSICOS

reajustan las ganancias de tal manera de mejorar la respuesta del sistemano lineal. Es interesante que en la práctica este procedimiento es natural,los diseños calculados en el papel siempre pasan por un proceso de recali-bración o reajuste al momento de ser efectivamente implementados.

Matlab 5.1: Red de compensación en adelanto para un sistema de suspen-sión magnéticaConsideremos el sistema de suspensión magnética, Modelo 8 , en la página 14. Ya habiamosanalizado este sistema más temprano en este mismo capíıtulo. Su función de transferencia estádada por (5.6), de la página 121,

GX(s) =yδ(s)

uδ(s)=x1δ(s)

uδ(s)=

2L

√cg

mX

s3 + RLs2 − g

Xs− Rg

LX

(5.6*)

donde yδ(t) = −x1(t) corresponde a la señal de salida en la representación en variables deestado. Este sistema es, evidentemente, inestable en lazo abierto (recuerde la pregunta de lapágina 59). Considere los valores de los parámetros dados en (5.8). Para este conjunto de pará-metros los polos del sistema en lazo abierto están ubicados en s1 = −100, s2 = −14 y s3 = 14.Como vemos presenta una raiz inestable.

Supondremos que se desconoce el tipo de compensador que será empleado en el diseño.Por lo tanto, debemos realizar primeramente un análisis del comportamiento actual del sistema.

Consideremos, primeramente, el sistema en lazo cerrado dado por un compensador de tipoP (proporcional) y la planta GX(s). Este esquema se presenta en la Figura 5.10. La Figura 5.4,mostrada con anterioridad, ilustra el lugar de las raíces asociado a dicho esquema. Se observaclaramente que el sistema en lazo cerrado presenta raíces inestables, independientemente delvalor que pueda asumir la ganancia K.

Para resolver este problema se intuye que el posible compensador debería poseer un cero z1a la derecha del polo s = −

√g/X. Este cero debe ser tal que Re (z1) < 0, lo cual nos permitiría

“atraer” la ubicación en lazo cerrado de los polos inestables hacia la parte izquierda del planocomplejo de tal forma que todas las raíces del polinomio característico en lazo cerrado presentenparte real negativa ( Re (si)lazo cerrado < 0).

Para que el compensador sea efectivamente realizable debe aparecer, además, un polo p1tal que la función de tranferencia asociada sea al menos propia, tal que el grado del denominadorFunción de

transferenciapropia

sea igual o mayor al grado del numerador. Adicionalmente, este polo no debe afectar sustancial-mente la dinámica en lazo cerrado generada por el cero z1, esto es, el polo p1 debe ser ubicadosatisfaciendo la restricción p1 < z1 (en la práctica se sugiere que p1 este colocado entre 5 a 15veces el valor de z1).

El compensador resultante está dado por la siguiente expresión:

Gc(s) =uδ(s)

eδ(s)= Kc

s+ z1

s+ p1(5.18)

el cual, dadas las consideraciones anteriores, corresponde a un compensador en adelanto. ElCompensador poradelanto sistema en lazo cerrado resultante dado por Gc(s) en serie con GX(s), se muestra en la Figura

5.11.

Figura 5.10: Esquema básico de compensación

5.5 AJUSTE DE LAS GANANCIAS DE UN COMPENSADOR LINEAL 135

Figura 5.11: Esquema de compensación por adelanto

Para efectos de resolver el problema planteado, fijemos valores adecuados de los parámetrosdel compensador en adelanto. Tomemos por ejemplo z1 = −10 y p1 = −50, los cuales satisfacenlas especificaciones de diseño planteadas.

Nos queda por asignar la ganancia Kc. Para ello, obtengamos el lugar de las raíces para elsistema compensado Gc(s)GX(s), el cual se ilustra en la Figura 5.12.

El valor de Kc a proponer debe permitir seleccionar una ubicación de los polos del sistemaen lazo cerrado tal que el sistema pueda comportarse en forma adecuada y, además, que todaslas raíces tengan parte real negativa. Utilizaremos Matlab (R) para obtener de manera simple elvalor de Kc. Del lugar de las raíces constatamos que al aumentar Kc, una de las raíces se vaacercando a −10 (la ubicación del cero z1 anterior) y al mismo tiempo se alejan en los poloscomplejos conjugados. Un criterio es proponer un valor de Kc tal que se obtenga la respuestamás rápida para el compensador propuesto, esto es en particular, cuando coinciden las partesreales de las tres raíces en lazo cerrado más cercanas al eje imaginario.

El valor de Kc se obtiene por ensayo y error. Empleando el comando rlocfind de Matlab (R)sobre el lugar de las raíces de la Figura 5.12, y ubicando el polo deseado de tal forma que estecerca de Re (s)lazo cerrado > z1, se obtiene aproximadamente un valor de Kc = 29,72 de tal formaque las tres raíces tienen parte real de alrededor −8,08. La Figura 5.13 ilustra la ubicación de lasraíces dominantes en lazo cerrado (la raiz más alejada está ubicada cerca de −126).

Por otro lado, un valor de Kc inferior a 11.0680, nos da un sistema en lazo cerrado inestable,esto se puede observar del diagrama de Nyquist de la Figura 5.14.

Note que estas conclusiones son ciertas en tanto nos encontremos en una vecindad sufi-cientemente pequeña del punto de equilibrio. De hecho el valor de ganancia obtenido deberáfinalmente ser corregido para, por ejemplo, ampliar el conjunto de condiciones iniciales para lascuales el sistema no lineal es asintóticamente estable. Observe la simulación numérica más ade-lante.

Como recordaremos, para realizar las simulaciones de los sistemas estudiados siempre ll-evamos las ecuaciones obtenidas a una representación en variables de estado. De aqui que lafunción de transferencia del compensador en adelanto (5.18) debe ser representada en esta for-ma. Una realización o programación de esta función de transferencia se puede obtener mediante Programación o

realización deuna función detransferencia

los siguientes pasos:

Escriba Gc(s) en la forma de una fracción estrictamente propia más un término constante:

uδ(s)

eδ(s)= Kc

s+ z1

s+ p1= Kc +Kc

z1 − p1

s+ p1(5.19)

Haciendouδ(s)

eδ(s)= Kc

z1 − p1

s+ p1(5.20)

se puede deducir, a partir de (5.19), la expresión para uδ(t):

uδ(t) = Kceδ(t) + uδ(t) (5.21)

De (5.20) resulta la siguiente representación dinámica para uδ(t):

˙uδ(t) = Kc(z1 − p1)eδ(t)− p1uδ(t) (5.22)

136 SÍNTESIS DE COMPENSADORES CLÁSICOS

Figura 5.12: Lugar de las raíces para el sistema compensado

5.5 AJUSTE DE LAS GANANCIAS DE UN COMPENSADOR LINEAL 137

Figura 5.13: Detalle del lugar de las raíces para el sistema compensado. El signo ‘*’indica la ubicación aproximada de los polos para la ganancia Kc = 29,72

Figura 5.14: Diagrama de Nyquist del sistema compensado para Kc = 10. El sistemaes inestable en lazo cerrado

138 SÍNTESIS DE COMPENSADORES CLÁSICOS

Figura 5.15: Comportamiento dinámico del sistema de suspensión magnética en lazocerrado con el compensador en adelanto diseñado

En definitiva, la representación en variables de estado del compensador en adelanto (5.18)resulta, a partir de las ecuaciones (5.21) y (5.22), en el subsistema:

uδ(t) = Kceδ(t) + uδ(t)

˙uδ(t) = Kc(z1 − p1)eδ(t)− p1uδ(t)

Este subsistema tiene como entrada eδ , como salida uδ y como variable de estado uδ .

A continuación, comprobaremos el desempeño de la estrategia de control propuesta. Em-plearemos, para ello, simulaciones numéricas del comportamiento del sistema compensado enlazo cerrado. Haremos uso de la función ode45; esta función permite una mayor precisión numéri-ca que la ode23.

Los programas desarrollados en Matlab (R) se muestran en los Listados 5.3 y 5.4. La respues-ta del comportamiento en lazo cerrado del sistema no lineal de suspensión magnética, usando elcompensador diseñado, se muestra en la Figura 5.15. Para ejecutar la simulación desde la ven-tana de comandos de Matlab (R), recuerde:

Matlab from MathWorks, Inc.

> smgto

La simulación presentada en la Figura 5.15 se realizó para una condición inicial en reposorelativamente cercano a la posición de equilibrio deseada (en x1(0) = 0,06). Supongamos quenos alejamos un poco más. Para x1(0) = 0,07, el compensador no logra llevar el sistema a suposición de equilibrio, Figura 5.16. Disminuyendo la ganancia Kc se obtiene la respuesta ilustrada

5.5 AJUSTE DE LAS GANANCIAS DE UN COMPENSADOR LINEAL 139

Listado 5.3: Programa de simulación del sistema de suspensión magnética smgto.m

%% smgto.m%% Programa para simular el comportamiento dinamico en lazo cerrado%% del sistema de suspension magnetica, controlado usando%% un compensador por adelanto. Utiliza el programa mgto.m

clear all

ti = 0.0; %% tiempo inicialtf = 1.0; %% tiempo final

% variables empleadasglobal C M G X R L U Kc A B YREF

% parametros del sistemaC = 1; M = 0.1; G = 9.8; R = 1; L = 1e-2;

% parametros del compensadorKc = 29.72; A = 10; B = 50;

%% sennal de referencia%% respecto de la salidad incrementalYREF = 0.0;

% punto de equilibrioX = 0.05; U = R*sqrt(M*G*X/C);

%% Diferentes condiciones iniciales que se pueden usar en las simulacionesx0 = [X*0.9 0 sqrt(M*G*X/C) 0]’;

[t,x] = ode45(’mgto’,[ti tf],x0);

subplot(221),plot(t,x(:,1)) title(’Posicion de la esfera’)xlabel(’tiempo t’) ylabel(’x1’)

subplot(222),plot(t,x(:,2)) title(’Velocidad vertical’)xlabel(’tiempo t’) ylabel(’x2’)

subplot(223),plot(t,x(:,3)) title(’Intensidad de corriente’)xlabel(’tiempo t’) ylabel(’x3’)

ery = 0 - (x(:,1)-X); u = U+Kc*ery+x(:,4); subplot(224),plot(t,u)title(’Tension de entrada’) xlabel(’tiempo t’) ylabel(’u’)

%% fin de smgto.m

140 SÍNTESIS DE COMPENSADORES CLÁSICOS

Listado 5.4: Modelo y compensador en adelanto mgto.m

function xdot = mgto(t,x)%% mgto.m%% Este programa presenta la programaci\’on del sistema de control%% en lazo cerrado para el sistema de suspension magnetica. Se%% emplea un compensador en adelanto como estrategia de control.

global C M G X R L U Kc A B YREF

y = -(x(1)-X); %% salida incremental del sistema%% --> Recuerde los principios basicos%% de la linealizacion aproximada

eyref = YREF - y; %% error incremental

udelta = Kc*eyref+x(4); %% sennal de entrada incremental

u = udelta+U; %% control para el sistema no lineal

xdot = [x(2);G - C/M*x(3)^2/x(1);-R/L*x(3)+1/L*u;(A-B)*Kc*eyref-B*x(4)];

%% fin mgto.m

Figura 5.16: Simulación para Kc = 29,72 para x1(0) = 0,07

5.5 AJUSTE DE LAS GANANCIAS DE UN COMPENSADOR LINEAL 141

Figura 5.17: Simulación para Kc = 20 para x1(0) = 0,07

142 SÍNTESIS DE COMPENSADORES CLÁSICOS

en la Figura 5.17, la cual no solo presenta una respuesta que converge a la posición de equilibriodeseada sino que además es algo menos oscilatoria que la obtenida en la Figura 5.15.

t

Este ejemplo ilustra uno de los procedimientos más comunes y másdifíciles que puede conseguir un ingeniero en la practica, el proceso deentonación o ajuste de las ganancias y parámetros de un controlador.Entonación de

ganancias

5.6. Ejercicios propuestos

Ejercicio 5.1: Diagramas de diseñoEn base a los desarrollados presentados, el lector puede proponer el esquema de

diseño y aplicación de un compensador lineal sobre el sistema no lineal estudiado.Sugerencia: Recuerde los conceptos de variables incrementales y de punto de equi-librio. Observe los diagramas presentados anteriormente, como el de la Figura 4.5,en la página 82, por ejemplo. (?)

Figura 5.18: Descenso suave controlado en un planeta sin atmósfera

Modelo 28: Descenso suave controlado en un planeta sin atmósferaConsidere el siguiente sistema dinámico controlado que representa la dinámica del módulo dedescenso vertical que se muestra en la Figura 5.18:

x1 = x2

x2 = g −σα

x3u

x3 = −αuy = x1 −K

(5.23)

donde x1 es la posición o altura medida sobre el eje vertical, orientada positivamente hacia abajo,es decir, x1 < 0 para alturas reales sobre la superficie, x2 es la velocidad de descenso y x3

representa la masa combinada del vehículo y el combustible.

5.6 EJERCICIOS PROPUESTOS 143

La variable u es el control y el producto αu representa la velocidad de consumo de combustiblepor unidad de tiempo; u está restringida a tomar valores entre 0 y 1. La constante σ es la velocidadrelativa de eyección de los gases y α es una constante de proporcionalidad, tal que σα resultaser la fuerza máxima de frenaje que puede imprimir la máquina al módulo en su descenso; g es laaceleración de la gravedad del planeta en cuestión.

La salida del sistema representa el error de posición respecto a una altura fija de valor K < 0.Por lo general esta altura es pequeña (inferior a un metro o algo así) de tal manera que el problemade control consiste en llevar la altura x1 al valor x1 = K (es decir y = 0). Mantener el móduloflotando a esta altura por un brevísimo tiempo y luego apagar el motor para lograr un descenso encaída libre desde muy baja altura.

El punto de equilibrio de este sistema es el siguiente:

x1 = arbitrario = X; x2 = 0; x3 = arbitrario = X3 6= 0;u = 0

M

Ejercicio 5.2: Diseño de observadores: descenso suave controladoConsidere el sistema (5.23). Diseñe observadores de orden reducido y de orden

completo asociados basados en el modelo incremental del sistema dado. (?)

Ejercicio 5.3: Gráficos de Nyquist y del lugar de las raíces en Matlab 6.1 omayor

En Listado 5.5 se presentan los programas necesarios para generar las Figuras5.3, 5.4, 5.5 y 5.6. Estudie las propiedades de los gráficos generados en Matlab.Marque mediante el cursor alguna posición en particular del gráfico estudiado. Veaque características del sistema se mencionan. Vea en la Figura 5.19 un ejemplo.

(?)

Ejercicio 5.4: Compensador Proporcional–Derivativo PDDemuestre que el caso del compensador PD es equivalente al empleo de la es-

trategia de asignación de polos por realimentación del vector de estados. Ayuda:Haga un ejemplo de primer o segundo orden y desarrolle los cálculos complementa-mente. Luego, generalice sus resultados. (?)

Ejercicio 5.5: Simulación en Matlab (R): respuesta del modelo promedio delconvertidor “Boost” controlado por medio de un compensador PI

Simule la respuesta en lazo cerrado para un modelo promedio de un convertidortipo “Boost", cuyos parámetros están dados por (5.9), empleando el controlador PIdesarrollado en este capítulo. Deseamos estabilizar la tensión de salida normalizadapromedio Z2(U) a un valor de equilibrio de:

X2(0,8) = 0,3354 (5.24)

(?)

Ejercicio 5.6: Respuesta del sistema en lazo cerrado con Matlab (R): mani-pulador robótico de una sola unión rígida

Deduzca los pasos necesarios para obtener la expresión en variables de estado(5.17) del esquema de conpensación propuesto en la página 129. Realice las simu-laciones correspondientes para comprobar la efectividad de la estrategia de control

144 SÍNTESIS DE COMPENSADORES CLÁSICOS

Listado 5.5: Programas para generar los gráficos de Nyquist y del lugar de las raícesSistema de levitación magnética linealizado

%% Parametros del sistema de levitacion magnetica%%c = 1;g = 9.8;m = 0.1;R = 1;L = 0.01;X = 0.05;

figure(1)nyquist([2/L*sqrt(c*g/m/X)],[1 R/L -g/X -R*g/L/X])

axis([-1 0 -0.06 0.06])xlabel(’Eje real’)ylabel(’Eje imaginario’)title(’Diagrama de Nyquist’)

figure(2)rlocus([2/L*sqrt(c*g/m/X)],[1 R/L -g/X -R*g/L/X])

xlabel(’Eje real’) ylabel(’Eje imaginario’) title(’Lugar de lasra\’\ices’)

Convertidor de potencia DC-DC Boost

%% Parametros del modelo promedio del convertidor Boost%%w0 = 1.5811e3;w1 = 1.6667e3;b = 106.06;U = 0.8;

Z1 = b*w1/w0^2/(1-U)^2;Z2 = b/w0/(1-U);

figure(1)nyquist(-w0*Z1*[1 -b/Z1],[1 w1 w0^2*(1-U)^2])

xlabel(’Eje real’)ylabel(’Eje imaginario’)title(’Diagrama de Nyquist’)

figure(2)rlocus(-w0*Z1*[1 -b/Z1],[1 w1 w0^2*(1-U)^2])

xlabel(’Eje real’) ylabel(’Eje imaginario’) title(’Lugar de lasra\’\ices’)

5.6 EJERCICIOS PROPUESTOS 145

Figura 5.19: Las figuras en Matlab (R)

146 SÍNTESIS DE COMPENSADORES CLÁSICOS

propuesta. Utilice el siguiente conjunto de parámetros:

B = 0,1 [N/m/seg]; J = 0,25 [kg m2];

c = 1 [kg m2/seg2]; N = 10; X =15π

180[rad].

(?)

Modelo 29: TRCA, modelo 3Considere el siguiente modelo de un TRCA en el cual una reacción exotérmica A → B tomalugar. El objetivo de control es regular la concentración de salida a través de la manipulación de latemperatura de la chaqueta. El calor de reacción es removido por medio de un líquido refrigeranteque pasa a través de una chaqueta alrededor del reactor. El volumen V se considera constante.

Las ecuaciones diferenciales que modelan este sistema son las siguientes:

x1 =F

V(c0 − x1)− ax1e

− bx2

x2 =F

V(T0 − x2) +

aL

Cpx1e

− bx2 −

h

V Cp(x2 − u)

y = x2 − T

(5.25)

donde la variable de estado x1 representa la concentración del producto y x2 representa la tem-peratura del reactor. La variable de control u es la temperatura del agua de la chaqueta; F es elflujo de salida del reactor [lb/hr], c0 es la concentración del flujo de entrada [lb/lb], T0 es la tem-peratura del flujo de entrada, medida en [ R], Cp es la capacidad calorífica del material [BTU/lb.

R], V es el volumen del tanque [lb], L es el calor de la reacción [BTU/hr. R], b es una constantede activación [ R], a es un factor pre-exponencial [hr−1] y h es un parámetros de transferenciade calor [BTU/hr. R].

Se desea regular el sistema a una temperatura constante T , la cual mantendrá de una manera“indirecta” la concentración de x1 en un valor de equilibrio constante. El punto de equilibrio paraeste sistema parametrizado en función de la temperatura fijada para el reactor es:

x2 = T, x1 = X1(T ) =c0

1 + vFae−

bT

, u = U(T ) = T −CpF

h(T0 − T )

aLV

h

c0e− b

T

1 + VFae−

bT

Algunos valores típicos de los parámetros antes mencionados son:

F = 2000 [lb/hr]; c0 = 0,5 [lb/lb]; V = 2400 [lb]; a = 7,08× 1010 [hr−1]; b = 15080 [R]

T0 = 5320 R; L = 600 [BTU/lb]; Cp = 0,75 [BTU/lb.R]; h = 15000 [BTU/hr.R]

M

Ejercicio 5.7: Estudio de un tanque reactor continuamente agitadoConsidere el tanque reactor continuamente agitado (5.25). Simule el comporta-

miento en lazo abierto de este sistema ante señales de prueba tipo escalón unitario.Proponga especificaciones de diseño en el sentido de mejorar la respuesta obtenida.En el sistema real, ¿qué variable de proceso se escoge como variable de medición?.Basados en la salida o medición propuesta, diseñe diversos tipos de compensadorespara este sistema, los cuales permitan satisfacer las especificaciones deseadas. In-cluya compensadores PI y PID obtenidos por el método de Ziegler-Nichols de respues-ta crítica y el método de Ziegler-Nichols de respuesta temporal (no estudiado aquí).Compare, por medio de simulaciones numéricas, el desempeño de los diferentes reg-uladores obtenidos. (??)

5.7 RESUMEN DEL CAPÍTULO Y LECTURAS ADICIONALES 147

Ejercicio 5.8: Simulación de los actuadores y sensores en el tanque reactorcontinuamente agitado

Analice el tipo y ubicación de los sensores y actuadores en el sistema presentadoanteriormente. Emule el sistema con todos los componentes propuestos. Incluya lainformación de la dinámica de los actuadores y sensores en los diseños realizados.Utilice Matlab (R) para realizar las simulaciones. Ayuda: Investigue en la literaturade control de procesos e instrumentación las diferentes características técnicas desensores y actuadores utilizados para este tipo de procesos industriales. (??)

Ejercicio 5.9: Estudio del sistema de suspensión magnética en Matlab (R).Región de atracción.

Estudie nuevamente el ejemplo Matlab 5.1. Estudie el comportamiento del sis-tema no lineal en lazo cerrado para diferentes valores deKc y diferentes condicionesiniciales. Cambie de manera adecuada la ubicación del cero y del polo dados.

Estudie la forma en que cambian los resultados y diga ¿qué compensadoraparentemente da los mejores resultados? Nota: Esta pregunta no tiene una solarespuesta, de hecho posiblemente no tenga una respuesta adecuada en el senti-do general, la significancia de la frase “mejores resultados” solo depende del dis-eñador! Nuestro enfoque hasta ahora no ha incluido, por ejemplo, índices de desem-peño que permitan hacer comparaciones entre diferentes controladores sobre unabase analítica. A pesar de lo extenso del tema y de los diferentes matices que puedetomar en la literatura, dejaremos al lector que ahonde por si mismo en estos delica-dos temas. Por ahora, dependeremos más de su intuición y de su experiencia en eldiseño de controladores lineales.

Un problema interesante conectado directamente con la variación de las condi-ciones iniciales es la determinación de la región de atracción. Definiremos informal- Región de

atracciónmente a la región de atracción alrededor de un punto de equilibrio dado como elconjunto (compacto y conexo) de condiciones iniciales para las cuales las trayecto-rias del sistema tienden asintóticamente a dicha posición de equilibrio. Estudie elsistema de suspensión magnética en lazo cerrado con el compensador por adelantopara Kc = 20, determine la región de atracción. Ayuda: Este problema se resuelvenuméricamente. Una técnica utilizada es hacer simulaciones en reverso a partir decondiciones iniciales (estables) muy cercanas a la pposición de equilibrio. Una ref-erencia que puede investigar sobre este tópico es la siguiente: [por agregar]

(? ? ?)

5.7. Resumen del capítulo y Lecturas adicionales

Con este capítulo termina el estudio de compensadores lineales para sis-temas no lineales. Hemos visto dos tipos de leyes de control basadas en lamedición de una o varias variables del sistema: la primera basada en el di-seño de observadores dinámicos de estado y la presentada en este capítulobasada en la síntesis de compensadores clásicos. Los ejemplos presentadosilustran brevemente algunos procedimientos de diseño bien conocidos en lallamada teoría clásica de control. Nuestra intención fue extender los con-ceptos desarrollados en el espacio de estados para el caso no lineal al caso

148 SÍNTESIS DE COMPENSADORES CLÁSICOS

de diseño de compensadores lineales. Nótese que aquí resultan igualementeimportantes los conceptos de punto de equilibrio y de variables incremen-tales, vistos desde el principio de este texto.

Lecturas RecomendadasPara esta parte le sugerimos consulte:

1. G.F. Franklin, J. David Powell, A. Emami-Naeini, Feedback Control ofDynamic Systems, 3ra. Edición, Addison-Wesley, 1994.

2. K. Ogata, Modern Control Engineering, Prentice Hall, 1993.

3. S. Bahram, M. Hassul, Control System Design using Matlab, PrenticeHall, Englewood Cliffs, New Jersey, 1995.

E diseño robusto de compensadores para sistemas de control realimen-tado, basado en desarrollos modernos fundamentados en factorizaciones co-primas y en el uso de la ecuación diofantina o de Bezout, a partir del algo-ritmo de Euclides, se puede conseguir en:

J.C. Doyle, B.A. Francis and A.R. Tannenbaum, Feedback Control The-ory, Macmillan, New York, 1992, [DFT92]. Una excelente introduccióna este tópico, fácil de seguir y con buena cantidad de ejemplos.

M. Vidyasagar, Control System Synthesis, MIT Press, Cambridge, MA,1987, [Vid87]. Para avanzar en profundidad en el tema. Verdadera-mente un clásico, de lectura relativamente más dificil que el anterior,pero con innumerables resultados y extensiones al casom multivari-able.

Parte IIControl No Lineal

de Sistemas No Lineales:Linealización Extendida

149

150 CONTROL NO LINEAL DE SISTEMAS NO LINEALES: LINEALIZACIÓN EXTENDIDA

Desde los años 40, el uso de la técnica de linealización aproximada hapermitido resolver una gran diversidad de problemas relacionados con elcontrol de sistemas reales. Sin embargo, esta estrategia presenta algunasrestricciones fundamentales en su aplicación. Para resolver estos inconve-nientes, se han propuesto diferentes extensiones del método, estas exten-siones incluyen aspectos teóricos fundamentales relacionados con diversasáreas de la matemática, tales como la teoría de operadores, el análisis fun-cional, el álgebra y la geometría diferencial, por ejemplo.

Básicamente, emplearemos dos métodos para ilustrar el diseño de con-troladores no lineales para sistemas no lineales: el método de la lineali-Linealización

extendidayLinealizaciónexacta

zación extendida, propuesta por Wilson Rugh y sus colaboradores [BR86,WR87, Rug91], y el método de la linealización exacta, propuesto, entreotros, por A. Isidori [Isi95], cuyos orígenes se pueden encontrar en los tra-bajos de H. J. Sussmann y V. J. Jurdjevic [SJ72], R. Hermann y A. J. Krener[HK77], etc.

El método de la linealización extendida se basa en la técnica de la linea-lización aproximada, ya expuesta en la primera parte. En esta presentación,la linealización extendida constituye un “paso intermedio” (al nivel de com-plejidad de estudio y de herramientas matemáticas involucradas) entre lalinealización aproximada y la exacta. Este método está estrechamente vin-culado al problema de “asignación de ganancias” (gain scheduling en in-glés) de un controlador de acuerdo a los diferentes puntos de operación delsistema, esta técnica ha sido muy usada en la práctica desde la SegundaGuerra Mundial [RS00].

El método de la linealización extendida constituye un enfoque analíticoque se basa en la familia de linealizaciones del sistema no lineal, para-Familia de

modelos linealesparametrizados

metrizada respecto a puntos de equilibrio genéricos (X(U), Y (U), U). Lasganancias de realimentación no lineal del vector de estado se calculan detal manera que los autovalores del sistema linealizado en lazo cerrado secolocan en valores específicos del plano complejo y tales que, al mismo tiem-po, sean invariantes para todos los puntos de operación constantes en lazocerrado en una vecindad del punto de operación constante nominal en lazocerrado. Dicho de otra manera, el controlador no lineal obtenido es tal queal linealizarlo alrededor del punto de equilibrio dado, obtenemos el contro-lador lineal estabilizante del sistema linealizado. La técnica se extiende fá-cilmente al caso de diseño por realimentación del vector de salidas a travésde observadores y compensadores estáticos.Estrategias de

control nolineales

Esta parte está organizada de la siguiente manera. En el capítulo 6 ver-emos cómo diseñar una ley de realimentación no lineal del vector deestado. El diseño de observadores y compensadores dinámicos no li-neales por linealización extendida será tratado, respectivamente, en loscapítulos 7 y 8.

El método de la linealización exacta será estudiado posteriormente enla Parte III de este libro.

6

Realimentación no linealdel vector de estado

Foto

Introduciremos el método de la Linealización Extendida para el di-seño de controladores basados en la realimentación no lineal delvector de estado.

6.1. Introducción

Como hemos visto, un enfoque de diseño típico en el control de sistemasno lineales es obtener la linealización (Jacobiana) del sistema alrededor deun punto de equilibrio, diseñar los esquemas de control para el sistemalinealizado obtenido y someter al sistema no lineal a la estrategia lineal decontrol definida.

Si bien ha resultado provechosa en un gran número de aplicaciones, lalinealización aproximada presenta algunos inconvenientes. Inconvenientes

de lalinealizaciónaproximada

Por un lado, su efectividad se limita a una región “pequeña” del espa-cio de estados de tal forma que, a partir de condiciones iniciales alejadas

151

152 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

de la posición de equilibrio, el sistema de control puede ser inestable o,simplemente, puede fallar en estabilizar el sistema alrededor del punto deoperación deseado.

Por otro lado, existen sistemas que pueden operar bajo diferentes condi-ciones de funcionamiento, esto es, pueden presentar comportamientos endiferentes regiones de operación asociados con diferentes puntos de equili-brio. Al establecer la ley de control para el sistema linealizado no estamosconsiderando la posibilidad de que el punto de operación actual del sistemano lineal controlado cambie su ubicación a un punto diferente, en algúninstante del tiempo.

Una estrategia de control lineal implantada en el sistema no lineal origi-nal debería tomar en cuenta estas limitaciones de los modelos linealizados.Una posible metodología a seguir implica:

a) recalcular las leyes de control originalmente diseñadas y obtener lasganancias Ki del controlador para cada sistema linealizado resultantede cada punto de equilibrio, y

b) disponer de un mecanismo de asignación (programación) de los valo-res K de acuerdo al punto actual de operación.

No podemos olvidar, además, que el sistema linealizado debe ser estabiliz-able (para que el diseño del controlador sea factible) y detectable (necesariopara el diseño del observador), aunque, como veremos en capítulos poste-riores, no permite asegurar que estas condiciones no son necesarias para elcaso del sistema no lineal (Ver Parte III, sobre la Linealización Exacta).

Esquemas de programación de ganancias o gain scheduling. El es-quema de asignación o programación de ganancias, e.a.g. (gain scheduling,en inglés) constituye la estrategia más comúnmente empleada para tomaren cuenta los puntos a),b) descritos antes. Existen diferentes enfoques dediseño que se pueden catalogar como esquemas de programación de ganan-cias, ver, por ejemplo, [RS00]. Nosotros consideraremos como tal, el siguien-te procedimento.

Conociendo las diferentes condiciones de operación del sistema no lineal,Esquema deprogramación deganancias (gainscheduling)

se obtienen las linealizaciones particulares y las leyes de control asociadasalrededor de los puntos de equilibrio. Mediante un mecanismo ad hoc deinterpolación de las leyes de control lineal obtenidas — la parte más difí-cil de definir en esta estrategia —), se ajustan las ganancias o parámetrosdel controlador en función de la región actual de operación del sistema. Enotros términos, los parámetros del diseño son ajustados de acuerdo a ciertasvariables seleccionadas del sistema para obtener el diseño linealizado ade-cuado cuando el sistema no lineal opera alrededor de un punto de equilibrioparticular.

Estudiaremos a continuación un método de naturaleza no lineal, equi-valente en cierta medida al esquema de programación de ganancias, cf.[Rug91, RS00], llamado método de linealización extendida.

6.1 INTRODUCCIÓN 153

En contraposición a los mecanismos empíricos existentes en la prácti-ca del e.a.g., la linealización extendida, como metodología de diseño, poseepropiedades muy interesantes desde el punto de vista de ingeniería:

propone un enfoque sistemático para el diseño de controladores,

posee una formulación analítica, y

constituye una extensión no lineal del método de la linealización aproxi-mada.

El método de la linealización extendida. Este método utiliza la linea-lización aproximada tradicional como herramienta fundamental. El modeloutilizado para generar el diseño del controlador es un modelo obtenido so-bre la base de los primeros términos (de carácter lineal) de una expansiónen serie de Taylor de un sistema no lineal que opera en la vecindad de unpunto de operación constante. En este caso, la diferencia radica en que enlugar de obtener un modelo linealizado para un punto en particular, se pro-cede a obtener el modelo parametrizado de carácter lineal para un punto de Punto de

operacióngenérico

operación genérico (X(U), Y (U), U) de naturaleza arbitraria1.Esta parametrización se calcula bajo la suposición de que existe un con-

tinuum de puntos de operación en el espacio de entrada-estado (o en elespacio entrada-salida correspondiente) asociado a cada valor constante delcontrol y del estado (y de la salida, respectivamente). En su defecto, talparametrización puede asociarse a los valores de una magnitud de referen-cia (constante) del sistema en lazo cerrado.

El resultado fundamental obtenido a partir de esta estrategia consisteen la obtención de una familia de modelos lineales parametrizados, válidos Modelos lineales

parametrizadosen primera aproximación, respecto a puntos de operación deseados. Estafamilia de modelos ofrece una descripción del comportamiento de las per-turbaciones de estado-entrada (o salida-entrada) explícitamente parametri-zada en términos de un valor constante U de la entrada o del algún estadode interés (o de salida).

A partir de esta familia de modelos, el método de la linealización exten-dida propone inicialmente obtener un controlador lineal por realimentación Basado en el

diseño delcontroladorlineal

del vector de estado, o una combinación de observador-controlador o, inclu-so, un compensador clásico obtenido por métodos inherentes a la descrip-ción por funciones de transferencia. De esta forma, el compensador linealobtenido se encuentra también parametrizado por el punto de operación yestabiliza, en principio, a cualquier representante de la familia de modeloslineales obtenidos en la etapa inicial del diseño.

A continuación del diseño lineal se presenta la parte más importantede este método: la obtención del controlador no lineal. La idea crucial delmétodo está basada en:

1De allí nuestra insistencia en tal hecho a lo largo del capítulo 1.

154 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

Proponer un controlador de carácter no linealcuya linealización alrededor del punto de opera-ción coincide con el controlador lineal diseñadopara la familia de modelos lineales parametri-zados por el punto de operación.

Naturalmente, en este último paso del proceso de diseño, se pueden obtener,en general, infinitas soluciones al problema de inversión planteado.

La ventaja fundamental del método de la linealización extendida es que,a la par de retener el significado físico de las variables linealizadas2, se lo-gra una “programación automática de las ganancias” del compensador, tan-to a nivel del observador como del controlador; un hecho que, como hemosmencionado, está intimamente ligado a los esquemas de programación deganancias.

Es preciso apuntar dos aspectos importantes. Primeramente, el méto-do de la linealización extendida abre las posibilidades de utilizar métodosclásicos de diseño para los compensadores mediante técnicas tradicionalesde entrada-salida (al menos en el caso de una sola entrada y una sola sali-da); el caso de controladores PID constituye el ejemplo clásico y fundamen-talmente interesante dentro de las posibilidades del método. Por otro lado,para sistemas de dimensión considerable, el método de la linealización ex-tendida es factible gracias a la utilización de herramientas computacionalesde cálculo simbólico tales como los representados por los paquetes MAPLE,MATHEMATICA, REDUCE ó MACSYMA.

6.2. Realimentación no lineal basada en asignación depolos invariantes en familias de modelos parame-trizados

Supondremos que el sistema no lineal a ser controlado se puede describirmediante un conjunto de ecuaciones diferenciales analíticas a parámetrosconstantes. Considere el sistema:

x = f(x, u) (6.1)

donde f(·, ·) : Rn × R 7→ R es una función analítica, es decir, desarrollableen serie de Taylor alrededor de un punto de equilibrio.

Sea u = U un punto de operación (equilibrio) constante y sea X(U) elvector de estado correspondiente a este punto de operación, entonces:

X(U) = f(X(U), U) = 0 (6.2)

Asumamos que la ley de realimentación del control se escribe como

u = −k(x) ,

2Posteriormente compararemos con el método de la linealización exacta, en donde nece-sariamente hay que acudir a transformaciones de coordenadas de estado ó del espacio de loscontroles que pueden destruir el significado físico de las variables originales.

6.2 REALIMENTACIÓN NO LINEAL BASADA EN ASIGNACIÓN DE POLOS INVARIANTES EN FAMILIAS DE MODELOS

PARAMETRIZADOS 155

por lo tanto, el sistema en lazo cerrado satisface

x(t) = f(x(t),−k(x(t))

Debido a que este sistema ha de tener el mismo punto de operación cons-tante del sistema (6.1), debe cumplirse

f(X(U),−k(X(U)) = 0 (6.3)

es decir,−k(X(U)) = U

La solución de X(U) obtenida a partir de (6.3) coincidirá con la soluciónresultante de la ecuación (6.2).

En virtud del teorema de la función implícita, si existe la solución x(U)del sistema de ecuaciones (6.3), la misma es única sí y solamente sí la ma-triz jacobiana de (6.3), respecto de X(U), es invertible en el punto de opera-ción. Por lo tanto, esta condición está dada por la invertibilidad de

∂f(x,−k(x))∂x

=∂f(x, u)

∂x

∣∣∣∣X(U),U

+∂f(x, u)

∂u

∣∣∣∣X(U),U

(−∂k(x)

∂x

∣∣∣∣X(U),U

)

Esta última expresión se puede interpretar como el hecho de que la El sistemalinealizado NOdebe tenerautovalores en elorigen

linealización del sistema en lazo cerrado, alrededor de su punto de equi-librio, no debe tener autovalores en el origen. Es suficiente, entonces, que lalinealización del sistema en lazo cerrado tenga sus autovalores en el semi-plano izquierdo. Para ello, la ley de control del sistema linealizado

uδ =

(−∂k(x)

∂x

∣∣∣∣X(U),U

)xδ

debe ser capaz de colocar los autovalores del sistema linealizado

xδ =∂f(x, u)

∂x

∣∣∣∣X(U),U

xδ +∂f(x, u)

∂u

∣∣∣∣X(U),U

donde xδ = x(t)−X(U) y uδ = u(t)− U en el semiplano izquierdo.Designaremos las siguientes matrices jacobianas mediante A(U), B(U)

y K(U):

A(U) =∂f(x, u)

∂x

∣∣∣∣X(U),U

; B(U) =∂f(x, u)

∂u

∣∣∣∣X(U),U

;

K(U) =∂k(x)∂x

∣∣∣∣X(U),U

En tanto el sistema linealizado presente autovalores independientes delpunto de operación (X(U), U), la “calidad” de la respuesta controlada en la

156 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

vecindad del punto de equilibrio que se desea mantener es, por así decir-lo, invariante. Esta propiedad es útil pues de alguna manera homogeneizalas propiedades cualitativas del diseño en forma independiente al punto deequilibrio considerado.

Debemos, entonces, demostrar que existe una función analítica k(x) talque los autovalores de la matriz

[A(U)−B(U)K(U)]

pueden ser pre-especificados de tal manera que sean independientes delpunto de operación U . Dichos autovalores, sin embargo, no pueden ser cero,Los autovalores

del sistema enlazo cerradodeben serindependientesde laparametrización

por la razones que acabamos de exponer, y deben ocurrir en pares complejosconjugados si su parte imaginaria es no nula.

Para proceder supondremos que el par (A(U), B(U)) es controlable. En-tonces, (A(·), B(·)) también es controlable en cualquier vecindad pequeña deU en la recta real. Esta propiedad es consecuencia de que las componentesaij (resp. bij) de A(U) (resp. de B(U)) son continuas respecto de la variableU .

A partir del par (A(U), B(U)) y de la dinámica deseada del sistema li-neal en lazo cerrado, la ganancia de realimentación lineal K(U) se puedecalcular utilizando, por ejemplo, la fórmula de Bass-Gura, ya antes expues-ta en la sección 3.4 (página 75), o mediante la fórmula de Ackermann. Ver,por ejemplo, [Kai80, FPEN94].

6.3. Controlador no lineal basado en linealización ex-tendida

Nuestra discusión deriva en el siguiente teorema de existencia de la fun-Existencia delcontrolu = −k(x)

ción u = −k(x), base del método de la linealización extendida, el cual fuepresentado originalmente en [BR86]:

Teorema 6.1: Supóngase que el sistema analítico dx/dt = f(x, u) es talque (A(U), B(U)) es un par controlable, entonces existe una ganancia ofunción de realimentación no lineal k(·) : Rn → R, tal que los auto-valores del sistema lineal en lazo cerrado, i.e., los autovalores de la matriz[A(U)−B(U)K(U)], tienen valores pre-especificados cualesquiera, los cualesson localmente invariantes con respecto a U .

Prueba: La prueba se divide esencialmente en dos pasos.Primero demostraremos que dX(U)/dU 6= 0. Esta cualidad será útil en

el segundo paso de la prueba, para poder establecer una función k(·) defini-da de tal forma que la linealización de u = −k(x) resulta en uδ = −K(U)xδ.

Se puede suponer que A(U) es invertible. Si no lo es, podemos sin em-bargo hacer todos los autovalores de

∂f

∂x=

∂f(x, u)∂x

+[∂f

∂u

](−∂k

∂x

)

6.3 CONTROLADOR NO LINEAL BASADO EN LINEALIZACIÓN EXTENDIDA 157

distintos de cero mediante realimentación previa del vector de estado y, porlo tanto, la matriz A(U) = ∂f/∂x|U,X(U) sería invertible.

Considere (6.2). La derivada parcial de esta expresión está dada por:

∂Uf(X(U), U) =

∂f

∂x

∣∣∣∣X(U),U

∂X(U)∂U

∣∣∣∣U

+∂f

∂u

∣∣∣∣X(U),U

= 0

Por lo tanto, de la invertibilidad de A(U), resulta:

dX(U)dU

∣∣∣∣U

= −

[∂f

∂x

∣∣∣∣X(U),U

]−1∂f

∂u

∣∣∣∣X(U),U

6= 0

Por conveniencia, supondremos que la primera componente X1 del vec- En lademostración seutilizanherramientastales como elteorema de lafunción implícita

tor X satisface dX1/dU 6= 0. Si no es así, el vector de estados se puedereordenar para que esta propiedad se cumpla. En virtud del teorema de lafunción inversa tendremos X−1

1 (x1) = U .La ganancia no lineal a buscar debe satisfacer:

∂k

∂x

∣∣∣∣X(U)

= K(U) = [K1(U), . . . ,Kn(U)] (6.4)

k(X(U)) = −U (6.5)

Se puede verificar que una ganancia no lineal k(x) que cumple con (6.4)y (6.5) está dada por:

k(x) =∫ X−1

1 (x1)

U

K(σ)dX(σ)

dσdσ

+

n∑j=2

Kj [X−11 (x1)](xj −Xj(X−1

1 (x1)))

−X−11 (x1) (6.6)

donde el subíndice j indica la j-ésima componente. En efecto, diferenciandok(x) con respecto a xi, i = 2, 3, . . . , n, y evaluando en X(U) se tiene:

∂k

∂xi(X(U)) = Ki(X−1

1 (x1(U))) = Ki(U); i = 1, . . . , n

Procediendo en forma similar con respecto a x1, obtenemos primeramen-te por derivación directa de la expresión (6.6):

∂k

∂x1=

n∑j=1

Kj(σ)dXj(σ)

∣∣∣∣∣∣X−1

1 (x1)

dX−11 (x1)dx1

−n∑

j=2

Kj(X−11 (x1))

dXj(X−11 (x1))

dX−11 (x1)

dX−11 (x1)dx1

− dX−11 (x1)dx1

158 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

Evaluando esta expresión en el punto X−11 (x1):

∂k

∂x1

∣∣∣∣X−1

1 (x1)

=n∑

j=1

Kj(X−11 (x1))

dXj(X−11 (x1))

dX−11 (x1)

dX−11 (x1)dx1

−n∑

j=2

Kj(X−11 (x1))

dXj(X−11 (x1))

dX−11 (x1)

dX−11 (x1)dx1

− dX−11 (x1)dx1

= K1(X−11 (x1))

dX1(X−11 (x1))

dX−11 (x1)

dX−11 (x1)dx1

− dX−11 (x1)dx1

= K1(X−11 (x1))−

dX−11 (x1)dx1

Particularizando la última expresión respecto a U = X−11 (x1) se tiene:

∂k

∂x1(X(U)) = K1(U)

Finalmente, se puede constatar fácilmente que la expresión (6.6), satis-face además la condición de contorno impuesta en (6.5). Con lo cual termi-namos la demostración.

Como hemos mencionado, el teorema anterior solo demuestra la existen-cia, por lo tanto, la expresión resultante para el término k(x) no es única;la solución que hemos obtenido es específica del procedimiento utilizado enla demostración del teorema anterior. Esto no significa que el método tengaesta característica como parte de un inconveniente, muy por el contrario,la inmensa posibilidad de soluciones diferentes que pueden proponerse aeste problema nos puede hacer comedidos respecto a la solución particularque adoptemos finalmente. Esto será ilustrado a través de los ejemplos quesiguen a continuación.

6.4. Ejemplos de diseño

En muchos de los ejemplos que presentaremos hemos adoptado comosolución particular de la ley de control realimentada, obtenida por lineali-zación extendida, aquella que produce un efecto “linealizante” sobre el sis-tema en lazo cerrado. Debido a que la fórmula general (6.6) puede conducira expresiones muy complicadas, nos concentraremos en resolver las ecua-ciones (6.4) y (6.5) de alguna forma plausible e instrumentalmente sencilla.Nota: al momento de calcular la solución de (6.4) en los ejemplos que siguena continuación, con un ligero abuso de notación, hemos considerado indis-tintamente la variable de estado x y su valor de equilibrio asociado X;hemos procedido igualmente para el caso del control u.

Matlab 6.1: Control de posición angular de un satélite mono-axialConsideremos el problema de orientación de un satélite monoaxial, ver Modelo 5 , en la página 10,

6.4 EJEMPLOS DE DISEÑO 159

cuyo ángulo de orientación se mide respecto de un eje oblicuo utilizando el parámetro de Cayley-Rodrigues.

El modelo de este sistema está dado por:

x1 = 0,5(1 + x21)x2

x2 =1

Ju

(1.10*)

El punto de equilibrio del sistema está dado por:

u = U = 0; x2 = 0; x1 = X (6.7)

(Como recordaremos, solo es posible hacer la parametrización con respecto a la orientación an-gular X de equilibrio.)

Linealizando el sistema alrededor del punto de equilibrio tenemos:[x1δ

x2δ

]=

[0 0,5(1 +X2)0 0

] [x1δ

x2δ

]+

[01J

]uδ (6.8)

Propongamos la siguiente ley de control lineal, cuyas ganancias dependen del valor constatnteX del punto de equilibrio,

uδ = −K1(X)x1δ −K2(X)x2δ (6.9)El sistema (6.8) en lazo cerrado se transforma en: Diseño del

control para elsistemalinealizado

[x1δ

x2δ

]=

[0 0,5(1 +X2)

−K1(x)J

−K2(x)J

] [x1δ

x2δ

](6.10)

El polinomio característico en lazo cerrado del sistema linealizado se obtiene inmediatamentede (6.10):

p(s) = s2 +K2(X)

Js+

0,5(1 +X2)K1(X)

JSi deseamos imponer al sistema controlado un comportamiento independiente del punto de

operación buscamos ganancias K1(X),K2(X) que hagan al polinomio característico independi-ente de X. En efecto, sea pd(s) un polinomio característico deseable e independiente del puntode operación:

pd(s) = (s+ a1)(s+ a2) = s2 + (al + a2)s+ a1a2

donde −a1 y −a2 son raíces en el semiplano izquierdo del plano complejo que se suponen dan alsistema linealizado un comportamiento deseable.

Al igualar p(s) y pd(s) se obtiene:

K2(X) = K2 = J(a1 + a2)

K1(X) =Ja1a2

1 +X2

(6.11)

Obtenemos así un sistema en lazo cerrado cuyo comportamiento es independiente del puntode operación X. La ley de control linealizada, parametrizada en términos de X, dada por (6.9) y(6.11):

uδ = −Ja1a2

1 +X2x1δ − J(a1 + a2)x2δ (6.12)

El método de la linealización extendida se basa en contestar acertadamente la siguiente pre-gunta: Principio de la

linealizaciónextendida

¿Cuál sería el controlador no lineal u = −k(x) tal que al linealizarlo alrededordel punto de equilibrio resulta en el controlador obtenido por diseño linealaproximado?

Este controlador ha de ser tal que estabilice el sistema en el punto de equilibrio dado por (6.7).Previamente a cualquier particularización de las variables de estado, la función de control

debe satisfacer el siguiente par de ecuaciones en derivadas parciales, ver (6.4),∂k

∂x1

∣∣∣∣x1=X;x2=0

=Ja1a2

1 +X2(6.13)

∂k

∂x2

∣∣∣∣x1=X;x2=0

= J(a1 + a2) (6.14)

160 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

j j- - -

?-

6-

6

tan−1(·)

tan−1(·)

J(a1 + a2)

Ja1a2

x1 = 0,5(1 + x21)x2

x2 = 1J u

x2

x1

−−

u−+

X

Figura 6.1: Esquema de control no lineal obtenido para el satélite mono-axial

y la condición de contorno (6.5)k(X, 0) = 0 (6.15)

Procedamos como sigue. Al integrar la expresión (6.14) resulta:

k(x) =

∫ x2

0J(a1 + a2)dσ + µ(x1) = J(a1 + a2)x2 + µ(x1)

donde µ(x1) es una función arbitraria de x1 que debemos determinar. Usando la expresión obteni-da en (6.14) en derivadas parciales, se tiene:

d

dx1µ(x1) =

Ja1a2

1 +X2

de donde inmediatamente surge como posible solución general:

µ(x1) =

∫ x1

X

Ja1a2

1 + σ2dσ = Ja1a2[tan−1(x1)− tan−1(X)]

El controlador así obtenido satisface la condición de contorno (6.4) impuesta por el punto deequilibrio U = 0 del control u:

u = −J(a1 + a2)x2 − Ja1a2[tan−1(x1)− tan−1(X)]

Hemos obtenido, por tanto, un controlador no lineal que responde al esquema mostrado en lafigura 6.1.

Este controlador estabiliza al sistema alrededor del punto de equilibrio (X,U) y sirve paracualquier cambio brusco del punto de equilibrio deseado X, sin necesidad de reprogramar lasganancias.

A continuación vamos a simular en Matlab (R) el comportamiento del sistema controlado enlazo cerrado. Los Listados 6.2 y 6.3, al final del capítulo, permiten obtener las gráficas correspon-dientes al comportamiento de los estados x y de la señal de control u, mostrados en la Figura 6.2.

De la simulación presentada en la Figura 6.2 se puede observar que el torque necesario pararealizar el control del sistema debe ser significativo (del orden de 20 N·m). En la práctica, lostorques externos empleados son mucho menores, digamos de unos 5 N·m.

La simulación de la Figura 6.3 muestra el comportamiento del mismo sistema pero sujetoa una saturación en amplitud del control externo a aplicarse. El valor máximo del torque en lasimulación se ha escogido, precisamente, de Umax = 5 ·N-m. El efecto de tal limitación o sat-uración resulta en una disminución de la velocidad angular máxima alcanzada por el artefacto yuna respuesta relativamente más lenta.

Para efectos de comparación, se han sobrepuesto los resultados de la simulación del sistemacontrolado sin saturar el torque externo, los cuales están representados mediante una línea a tra-zos - - - (ver Figura 6.3). Las modificaciones realizadas a los programas (ejext1b.m y sejext1b.m)

6.4 EJEMPLOS DE DISEÑO 161

Figura 6.2: Comportamiento del satélite mono-axial controlado mediante realimentaciónno lineal del vector de estados basada en linealización extendida

162 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

Figura 6.3: Comportamiento del satélite mono-axial controlado por linealización exten-dida, limitando la señal de control mediante Umax —-; sin limitar - - -

j j- - -

-

6 ?-

6

-

tan−1(·)

tan−1(·)

x2

x1

−+

XJa1a2

J(a1 + a2)

−−

u

ulım

x1 = 0,5(1 + x21)x2

x2 = 1J u

Umax

−Umax

Figura 6.4: Esquema de control no lineal obtenido para el satélite mono-axial con ley decontrol limitada por el valor Umax

6.4 EJEMPLOS DE DISEÑO 163

se muestran en los Listados 6.4 y 6.5 (al final del capítulo, páginas 176–177). El diagrama de blo-ques correspondiente a este sistema de control realimentado, con una ley de control limitada a unvalor máximo, se presenta en la Figura 6.4.

t

Ejemplo 6.1: [BR86] Balance del péndulo invertido sobre un móvil: apli-cación de la fórmula (6.6)Considere el problema de balancear un péndulo invertido montado sobre un móvil, Modelo 27 , enla página 112. El sistema estudiado está dado por la expresión (4.47), la cual repetiremos aquí:

x1 = x2

x2 =g sen(x1)− 0,5amLx2

2 sen(2x1)− a cos(x1)u

4L/3− amL cos2(x1)

(4.47*)

El punto de equilibrio genérico de este sistema están dados por:

X(U) =

[tan−1(aU

g)

0

]La linealización del sistema alrededor del punto de equilibrio resulta

xδ =

[0 1

h(U) 0

]xδ +

[0

− ah(U)g

a2U2+g2

]uδ

donde:

h(U) =

√a2U2 + g2

4L3− amLg2

(a2U2+g2)

Utilizando la fórmula de Bass-Gura, página 75, obtenemos el siguiente controlador lineal:

∂k

∂x

∣∣∣∣X(U)

= K(U) = −a2U2 + g2

agh(U)[e1e2 + h(U) − (e1 + e2)]

donde e1 y e2 son los autovalores (reales) deseados en lazo cerrado (sistema de segundo orden).Vamos a evaluar explítamente a k(x) mediante la expresión (6.6):

k(x) =

∫ X−11 (x1)

0K(U)

dX(U)

dUdU +K2[X−1

1 (x1)](x2 − x2(X−11 (x1)))−X−1

1 (x1)

Puesto que U = X−11 (x1) = g

atan(x1), se obtiene

u = −k(x1, x2) =g

atan(x1) +

4Le1e2

3alog[sec(x1) + tan(x1)] + e1e2mL sen(x1)

−(e1 + e2)

ax2

[4L

3sec(x1)− amL cos(x1)

] (6.16)

donde ‘log’ indica logaritmo neperiano.

Matlab 6.2: Control de un manipulador robótico de una sola unión rígidaEl modelo simplificado de un manipulador robótico, Modelo 9 , en la página 15, está dado por:

x1 = x2

x2 = −B

Jx2 −

c

Jsen(x1

N

)+

1

Ju

(1.21*)

La linealización del sistema alrededor del punto de equilibrio (1.23), x(U) = [x1(U), x2(U)]T =

[X(U), 0]T = [N sen−1(

Uc

), 0]T , u = U , resulta:[

x1δ

x2δ

]=

[0 1

− cNJ

√1− U2

c2−B

J

][x1δ

x2δ

]+

[01J

]uδ

164 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

El controlador lineal estabilizante por realimentación del vector de estado, de ganancias parametrizadasen términos de U , está dado por:

uδ = −K1(U)x1δ −K2(U)x2δ

Sistema en lazo cerrado:[x1δ

x2δ

]=

[0 1

− cNJ

√1− U2

c2− 1

JK1(U) −B

J− 1

JK2(U)

][x1δ

x2δ

]Polinomio característico del sistema:

p(s) = s2 +

(B

J+K2(U)

J

)s+

1

J

c

N

√1−

U2

c2+K1(U)

Se igualan los coeficientes de este polinomio a los de un polinomio deseado de la forma:

pd(s) = s2 + 2ζωns+ ω2n

Ganancias del controlador lineal:

K1(U) = Jω2n −

c

N

√1−

U2

c2

K2(U) = 2Jζωn −B

Realimentación lineal por asignación de polos:

uδ = −

Jω2n −

c

N

√1−

U2

c2

x1δ − (2Jζωn −B)x2δ (6.17)

Como ya hemos visto, una vez obtenido el controlador lineal que estabiliza a toda la familiade modelos lineales parametrizados por el punto de equilibrio, debemos proceder a buscar uncontrolador no lineal, de la forma u = −k(x), cuya linealización coincida con (6.17). Tal controladordebe satisfacer

∂k(x)

∂x1

∣∣∣∣[X(U),0]T ,U

= Jω2n −

c

N

√1−

U2

c2

∂k(x)

∂x2

∣∣∣∣[X(U),0]T ,U

= 2Jζωn −B

(6.18)

con la condición de contorno: −k([X(U), 0], U) = U .Al integrar la segunda igualdad en (6.18), en virtud de la independencia con respecto al punto

de equilibrio, obtenemos:k(x) = (2Jζωn −B)x2 + µ(x1)

donde µ(x1) es una función arbitraria de x1.

Recordemos que U = c sen(

XN

). Procedemos a determinar la función µ(x1), utilizando la

primera de las relaciones de (6.18), de tal forma que se obtiene:

d

dx1µ(x1) = Jω2

n −c

N

√1− sen2

(x1

N

)= Jω2

n −c

Ncos(x1

N

)Por lo tanto, resulta

µ(x1) = Jω2nx1 − c sen

(x1

N

)+ K

donde K es una constante arbitraria la cual debemos determinar en base a la condición de con-torno (6.5). Es decir, la expresión

u = −k(x) = −Jω2nx1 + c sen

(x1

N

)− K − (2Jζωn −B)x2

6.4 EJEMPLOS DE DISEÑO 165

debe satisfacer (6.5) a la luz del punto de equilibrio genérico (1.23). De tal condición se obtieneentonces:

K = −Jω2nN sen−1

(U

c

)Así, el controlador no lineal basado en linealización extendida es

u = −k(x) = −Jω2n

(x1 −N sen−1

(U

c

))+ c sen

(x1

N

)− (2Jζωn −B)x2 (6.19)

Note que al sustituir la expresión (6.19) en el sistema no lineal original (1.21), se obtiene lasiguiente expresión perfectamente lineal para el sistema en lazo cerrado:

x1 = x2

x2 = −ω2n

(x1 −N sen−1

(U

c

))− 2ζωnx2

El punto de equilibrio del sistema en lazo cerrado es, evidentemente, el punto de equilibriodeseado, parametrizado por el control constante U . El sistema anterior se reescribe, en términosde X,

x1 = x2

x2 = −ω2n(x1 −X)− 2ζωnx2

A continuación compararemos el comportamiento del sistema en lazo cerrado, mediante sim-ulaciones numéricas, tanto para el controlador no lineal dado por (6.19), como el obtenido a partirdel controlador lineal basado en (6.17), el cual tiene la siguiente forma:

u = U −

Jω2n −

c

N

√1−

U2

c2

(x1 −X)− (2Jζωn −B)x2

= c sen

(X

N

)−(Jω2

n −c

Ncos

(X

N

))(x1 −X)− (2Jζωn −B)x2

(Se toman en cuenta los valores de las variables incrementales.)Tomaremos como valores de los parametros los siguientes: X = 0, N = 1, B = 0,01,

J = 0,04, c = ,58, ζ = 0,707, ωn = 8,56. Los Listados 6.6 y 6.7 presentan los programas,ejext2.m y sejext2.m, que permiten simular el comportamiento del sistema no lineal controladopor el regulador no lineal (6.19).

Una respuesta típica de este sistema se muestra en la Figura 6.5. La gráfica de la Figura 6.6muestra las respuestas controladas de la posición angular desde distintas condiciones inicialesque van a groso modo desde -0.5 rad a 0.5 rad. El controlador no lineal tiene éxito completo enestabilizar la posición angular del brazo manipulador robótico alrededor de la posición vertical,dada por X = 0, desde las diferentes posiciones iniciales. Sustituyendo adecuadamente la ley decontrol no lineal en los programas sejext2.m y sejext2.m podemos simular el comportamientodel brazo en lazo cerrado con la ley de control obtenida por linealización aproximada (6.20). EnMatlab (R), solo basta comentar la ley de control no lineal y, a continuación, hacer visible la ley decontrol lineal. Por ejemplo, en ejext2.m:

% ley de control no lineal%u = -J*wn*wn*(x(1) - X) +c*sin(x(1)/N)+....%(B-2*J*xi*wn)*(x(2)-0);

% ley de control linealu = c*sin(X/N)-(J*wn*wn-c/N*cos(X/N))*(x(1)-X)+....(B-2*J*xi*wn)*(x(2)-0);

Las respuestas del sistema controlado por el regulador lineal (6.20), para diferentes condi-ciones iniciales, se muestran en la figura 6.7.

En este ejemplo se puede observar que tanto el controlador no lineal como el lineal tienenéxito en estabilizar el sistema alrededor de la posición vertical desde posiciones significativamentelejanas de tal valor deseado de equilibrio.

t

166 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

Figura 6.5: Comportamiento del brazo manipulador robótico controlado por linealizaciónextendida

Figura 6.6: Posición angular del brazo manipulador robótico controlado por linealizaciónextendida para diferentes condiciones iniciales

6.4 EJEMPLOS DE DISEÑO 167

Figura 6.7: Posición angular del brazo manipulador robótico para diferentes condicionesiniciales usando una ley de control lineal

Ejemplo 6.2: Conductores acoplados magnéticamente: realimentación nolineal basada en linealización extendidaConsidere el modelo de un sistema de dos conductores acoplados magnéticamente, Modelo 24 ,en la página 73:

x1 = x2

x2 = −k(x1 − L0) +2iL

a− x1u

(3.13*)

El objetivo de este ejemplo es controlar, mediante el paso de corriente, la posición de un conductormóvil dispuesto en forma paralela a otro conductor que transporta una corriente constante.

El punto de equilibrio del sistema en términos de la distancia nominal b está dado por, ver(3.14),

u = U(b) =k(b− L0)(a− b)

2iL; X1(b) = b; X2(b) = 0

Linealizando el sistema alrededor de este punto de equilibrio se tiene:[x1δ

x2δ

]=

[0 1

−[k − 2iL

(a−b)2U(b)

]0

][x1δ

x2δ

]+

[0

2iLa−b

]uδ

dondex1δ = x1 − b; x2δ = x2; uδ = u− U(b)

Este modelo se puede escribir también como:[x1δ

x2δ

]=

[0 1

−[k a−2b+L0

a−b

]0

][x1δ

x2δ

]+

[0

2iLa−b

]uδ

La controlabilidad del sistema linealizado se establece inmediatamente a partir de la evalu-ación de la matriz C:

C =

[0 2iL

a−b2iLa−b

0

]=⇒ det C = −

(2iL

a− b

)2

6= 0

168 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

Proponiendo un controlador lineal de la forma uδ = −K1(b)x1δ − K2(b)x2δ , el sistema enlazo cerrado resulta:[

x1δ

x2δ

]=

[0 1

−[k a−2b+L0

a−b

]− 2iL

a−bk1(b) − 2iL

a−bk2(b)

][x1δ

x2δ

]El polinomio característico del sistema en lazo cerrado es entonces:

p(s) = s2 +K2(b)2iL

a− bs+

[ka− 2b+ L0

a− b+K1(b)

2iL

a− b

]Si deseamos un comportamiento independiente del punto de equilibrio debemos buscar ganan-

cias K1(b) y K2(b) tales que el polinomio característico posea raíces (o coeficientes) independi-entes de b.

En efecto, sean −a1 y −a2 dos raíces convenientes del plano complejo, debe cumplirse parael sistema en lazo cerrado que:

p(s) = s2 +K2(b)2iL

a− bs+

[ka− 2b+ L0

a− b+K1(b)

2iL

a− b

]= s2 + (a1 + a2)s+ a1a2

De donde:

K1(b) =a− b

2iL

[a1a2 − k

a− 2b+ L0

a− b

]K2(b) =

a1 + a2

2iL(a− b)

con lo que uδ queda perfectamente definida:

uδ = −a− b

2iL

[a1a2 − k

a− 2b+ L0

a− b

]x1δ −

a1 + a2

2iL(a− b)x2δ

Note que, para evitar cualquier confusión con los parámetros propios del sistema, la funciónno lineal asociada al controlador la denotamos aquí mediante κ(·).

Nuestro objetivo será encontrar un controlador no lineal

u = −κ(x1, x2)

tal que al linealizarlo, alrededor del punto de equilibrio, se obtenga precisamente el controladorlineal que acabamos de diseñar. El controlador no lineal mencionado debe cumplir entonces lassiguientes relaciones:

∂κ

∂x1

∣∣∣∣[x1=b,x2=0]

=a− b

2iL

(a1a2 − k

a− 2b+ L0

a− b

)∂κ

∂x2

∣∣∣∣[x1=b,x2=0]

=a1 + a2

2iL(a− b)

(6.20)

Además, el valor del control suministrado por este controlador no lineal, en condiciones deequilibrio, debe satisfacer la siguiente condición de contorno (6.5):

−k(b− L0) +2iL

a− b(−κ(b, 0)) = 0

y, por lo tanto,

κ(b, 0) = −k(b− L0)(a− b)

2iL= −U(b)

Deshaciendo la sustitución x1 = b en los segundos miembros de (6.20), obtenemos las si-guientes ecuaciones en derivadas parciales:

∂κ

∂x1=a− x1

2iL

(a1a2 − k

a− 2x1 + L0

a− x1

)∂κ

∂x2=a1 + a2

2iL(a− x1)

6.5 EJERCICIOS PROPUESTOS 169

Integrando la primera ecuación, obtenemos:

κ(x1, x2) =a1a2

2iL

∫ x1

b(a− ζ1)dζ1 −

k

2iL

∫ x1

b[(a+ L0)− 2ζ1]dζ1

−k(a− b)(b− L0)

2iL+ Ψ(x2)

=a1a2

4iL[(a− x1)2 − (a− b)2]−

k

2iL(a+ L0)(x1 − b) +

k

2iL(x2

1 − b2)

−k(a− b)(b− L0)

2iL+ Ψ(x2)

donde Ψ(x2) es una función arbitraria de x2.Procedemos a determinar la función Ψ(x2) gracias a la segunda ecuación diferencial parcial

de (6.20):d

dx2Ψ(x2) =

a1 + a2

2iL(a− x1)

De donde, integrando, resulta

Ψ(x2) =a1 + a2

2iL(a− x1)x2 +M

donde M es una constante arbitraria que determinamos a partir de la condición de contorno paraκ(x1, x2). Luego de algunas simplificaciones, el controlador no lineal resulta:

u = −κ(x1, x2) =a− x1

2iL[−a1a2(x1 − b) + k(x1 − L0)− (a1 + a2)x2] (6.21)

El sistema controlado por esta ley de realimentación no lineal resulta, evidentemente, en elsiguiente sistema lineal asintóticamente estable al punto de equilibrio requerido:

x1 = x2

x2 = −a1a2(x1 − b)− (a1 + a2)x2

La convergencia al punto de equilibrio del sistema en lazo cerrado se encuentra gobernadapor autovalores que son independientes del valor particular de b.

6.5. Ejercicios propuestos

Ejercicio 6.1: Diseño de un controlador no lineal para el convertidor BoostConsidere el modelo del convertidor de potencia DC-DC del tipo “Boost”, Mo-

delo 7, en la página 13. Diseñe una ley de realimentación no lineal del vector deestado basada en la asignación de polos invariantes de la familia de modelos para-metrizados, utilizando la técnica de linealización extendida. (?)

Ejercicio 6.2: Satélite mono-axial: comparación de la linealización aproxi-mada y extendida en Matlab (R)

El lector puede comparar mediante simulaciones numéricas el funcionamien-to del controlador obtenido por linealización extendida (6.1) con el que se obtienepor linealización aproximada, en el cual, evidentemente, se requiere de cierta pro-gramación de la ganancia para cada valor del punto de equilibrio X que se deseeobtener para la posición angular. El controlador lineal, ver (6.12), está dado por:

uδ = −J(a1a2)

1 +X2x1δ − J(a1 + a2)x2δ

170 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

con x1δ = x1 −X; x2δ = x2; uδ = u.(?)

Ejercicio 6.3: Péndulo invertido sobre una plataforma móvil [BR86]. Leyde control no lineal truncada

Si se toma como punto de operación u = U = 0 , x1(0) = x2(0) = 0, parael modelo del péndulo invertido estudiado en este capítulo, se puede comparar elfuncionamiento del controlador no lineal (6.16) con la ley de control que se obtienemediante linealización tradicional alrededor de este punto de equilibrio:

u =3amLe1e2 − 4Le1e2 − 3g

3ax1 −

(3amL− 4L)(e1 + e2)

3ax2

la cual sólo coincide hasta un primer orden de aproximación con el controlador nolineal propuesto por la linealización extendida.

Mostrar, mediante simulaciones computacionales, que las respuestas de am-bos controladores son significativamente diferentes para ángulos relativamentegrandes en la posición inicial x1(0) del péndulo. De hecho, para valores inicialesque satisfagan la condición x1(0) > 0,8, el controlador lineal no puede estabilizar elpéndulo invertido mientras que el no lineal sí lo hace. Se deja esta verificación comoejercicio de simulación. Los parámetros del sistema se muestran en la tabla 6.1.

Variable Descripción Valorm masa del péndulo 2.0 KgsM masa del carro 8.0 Kgs2L Longitud del péndulo 1.0 mg aceleración de gravedad 9.8 m.s−2

a = (m + M)−1 constante auxiliar 0.1

Tabla 6.1: Parámetros del sistema de balance de un péndulo invertido

Realimentación no lineal truncada en su expansión en serie de Taylor. Dirí-jase a la referencia original W. T. Baumann, W. J. Rugh,“Feedback control of non-linear systems by extended linearization”, IEEE Trans. Automat. Contr., vol. 31, pp.40–46, 1986, [BR86]. La ley no lineal (6.16) se puede desarrollar en serie de Tay-lor más allá de la aproximación de primer orden. Verifique el controlador truncadopropuesto en [BR86] (vea la Ecuación (5.5) en ese artículo). Repita las simulacionespresentadas, comparando los resultados de los tres tipos de controladores (lineali-zado, extendido y truncado).

(?)

Modelo 30: TRCA, modelo 4El presente modelo es de un tanque de reacción similar al Modelo 10 , en la página 16, donde lareacción isotérmica se realiza con tres especies (A, B, C) en fase líquida.

x1 = 1− (1 +Da1)x1 +Da2x22

x2 = Da1x1 − x1 − (Da2 +Da3)x22 + u

x3 = Da3x22 − x3

y = x3 −XC

(6.22)

6.5 EJERCICIOS PROPUESTOS 171

donde x1 representa la concentración normalizada (adimensional) de la especie A en el reactor,x2 representa la concentración normalizada (adimensional) de la especie B en el reactor y x3

representa la concentración normalizada (adimensional) de la especie C en el reactor. u es larelación entre la tasa molar volumétrica de la especie B en la carga, la tasa volumétrica de cargay la concentración deseada de la especie C. Dai son constantes de reacción de primer orden.XC es el valor deseado de la concentración de la especie C.

El punto de equilibrio parametrizado en función de dicha concentración deseada de la especieC es:

x3 = arbitrario = XC ; x1 = x1(XC) =Da3 +Da2XC

Da3(1 +Da1); x2 = x2(XC) =

√XC

Da3

u = u(XC) =(2Da2 +Da3 +Da1Da3)XC +Da3(1 +Da1)

Da3(1 +Da1)

Se asume que la variable de control U varía entre el intervalo [0, Umax], el cual refleja los límitesfísicos de la tasa molar de carga de la especie B.

M

Ejercicio 6.4: Realimentación del vector de estado: TRCA, modelo 4Asumiendo que puede medir todos los estados del sistema anterior (6.22), obten-

ga la ley de control por realimentación del vector de estado incremental y la ley derealimentación no lineal basada en linealización extendida.

Calcule el controlador por realimentación no lineal mediante la fórmula (6.6) ymediante el procedimiento propuesto aquí. Desarrolle en serie de Taylor los con-troladores no lineales diseñados, para varios términos de la serie. Compare con loscontroladores obtenidos. (??)

Ejercicio 6.5: Control del sistema aro – anillo: linealización extendidaConsidere el Modelo 16, en la página 19. Diseñe un controlador no lineal, basa-

do en realimentación del vector de estados, mediante el método de la linealizaciónentendida. (?)

Modelo 31: Modelo normalizado del convertidor de potencia CukEl modelo promedio normalizado de un convertidor de potencia DC-DC del tipo Cuk puede serdescrito mediante las siguientes ecuaciones:

dx1

dτ= −(1− µ)ω1x2 + b

dx2

dτ= (1− µ)ω1x1 − µω2x3

dx3

dτ= −ω4x3 + µω2x2

y = x3

(6.23)

donde x1 = I1√L1, x2 = V2

√C2 y x3 = I3

√L3 representan, respectivamente, la intensidad

(normalizada) de la corriente del inductor de entrada, la tensión del condensador de transferenciay la intensidad de la corriente del inductor de salida. El parámetro b = E/

√L1 es la tensión

(normalizada) de la fuente externa. Los parámetros están definidos por la frecuencia natural deoscilación (f.n.o.) del circuito LC de entrada ω1 = 1/

√L1C2, la f.n.o. del circuito LC de salida

ω2 = 1/√L3C2 y la constante de tiempo del circuito LR de salida ω4 = R/L3. El valor µ denota

la relación de trabajo.M

172 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

Ejercicio 6.6: Convertidor Cuk: linealización extendidaDefina una ley de realimentación no lineal del vector de estado para el modelo

normalizado del convertidor Cuk (6.23). Ayuda: Utilice los cálculos desarrolladosen el artículo H. Sira-Ramírez y M.T. Prada-Rizzo, "Nonlinear Feedback RegulatorDesign for the Cuk Converter,"IEEE Transactions on Automatic Control. vol. 37, pp.1173-1180, 1992, [SRPR92].

(?)

6.6. Resumen del capítulo y Lecturas adicionales

En la literatura existen una gran variedad de métodos de control no li-neal. En este texto hemos considerado útil presentar el método de la lineali-zación extendida por diversas razones. En primer término, se basa directa-mente en la linealización aproximada, lo cual permite una utilización direc-ta de los métodos desarrollados en la Parte I. Constituye una metodologíade diseño precisa, cuyos fundamentos matemáticos no van más allá de loshasta ahora presentados en este texto. Posee, además, un enfoque analíti-co que tiene cierto parecido con los esquemas empíricos de asignación deganancias (gain scheduling). La idea central de este método es relativa-mente simple, sencilla de transmitir y asimilar: al linealizar el controladorno lineal, el controlador resultante debe corresponder a un controlador li-neal con una estructura bien conocida. Esto permite, como ya hemos men-cionado, evitar las transformaciones en el espacio de estado o en el espaciode los controles.

Consideramos que este método proporcionará una referencia de compa-ración adecuada respecto a los métodos basados en linealización exacta, queveremos más adelante: como hemos visto en algunos de los ejemplos presen-tados, los controladores no lineales obtenidos son tales que el sistema nolineal resulta en lazo cerrado un sistema completamente lineal, este hechoes indicativo que “el sistema ha sido linealizado de manera exacta”.

Lecturas recomendadasEn referencia al esquema de asignación de ganancias, el lector puede

dirigirse a los artículos siguientes y a sus referencias:

1. W. J. Rugh, “Analytical framework for gain scheduling”, IEEE Contr.Sys. Mag., vol. 11, pp. 79–84, 1991, [Rug91].

2. J. S. Shamma and M. Athans, “Gain scheduling: Potential hazardsand possible remedies”, IEEE Contr. Syst. Mag., vol. 12, pp. 101–107,1992, [SA92]. Estudia dos de las premisas usuales de los esquemas deasignación de ganancias: la variable de programación de las ganan-cias debe capturar las no linealidades del sistema, la variable de pro-gramación de las ganancias debe ser “lenta”.

6.6 RESUMEN DEL CAPÍTULO Y LECTURAS ADICIONALES 173

3. W. J. Rugh, J. S. Shamma, “Research on gain scheduling”, Automati-ca, vol. 36, pp. 1401–1425, 2000, [RS00]. Desde el punto de vista dela investigación teórica, hace una revisión de los diferentes enfoquesde asignación de ganancias, con una breve reseña sobre los orígenesprácticos de esta estrategia. Explica de manera didáctica el enfoqueanalítico que ha tomado en los últimos años.

4. J. S. Shamma, M. Athans, “Analysis of gain scheduled control for non-linear plants”, IEEE Trans. Automat. Contr., vol. 35, pp. 898–907,1990, [SA90]. Artículo netamente teórico, estudia la estabilidad dediferentes esquemas de asignación de ganancias.

El artículo que utilizamos de base sobre la linealización extendida:

W. T. Baumann, W. J. Rugh, “Feedback control of nonlinear systemsby extended linearization”, IEEE Trans. Automat. Contr., vol. 31, pp.40–46, 1986, [BR86].

Recomendamos al lector dirigirse a la página del profesor W. Rugh,http://www.ece.jhu.edu/~rugh/214/me/rugh.html,para indigar sobre otras vertientes del método de la linealización extendida.

Un método similar al propuesto por W. Rugh, el cual, sin embargo, estábasado en argumentos provenientes de la teoría de geometría diferencial,es el de “pseudolinealización”:

1. C. Reboulet y C. Champetier, “A new method for linearizing non-linearsystems: the pseudolinearization”, Int. J. of Control, vol. 40, pp. 631–638, 1984, [RC84].

2. C. Reboulet, P. Mouyon, C. Champetier, “About the local linearizationof nonlinear systems”, In: M. Fliess and M. Hazewinkel (Eds.), Alge-braic and Geometric Methods in Nonlinear Control Theory, D. ReidelPublishing Company, pp. 311–322, 1986 [RMC86]

174 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

Listados en Matlab (R) para los ejemplos de este capítulo

Listado 6.2: Programa de simulación del satelite mono-axial, modelo de Cayley-Rodriguessejext1.m

% sejext1.m%% Programa de simulacion de la respuesta controlada% de un satelite mono-axial (modelo no lineal obtenido% usando la representacion Cayley-Rodrigues).%% Este programa permite simular la respuesta del sistema no lineal% presentado en el programa%% ejext1.m%% El sistema es controlado mediante una realimentacion no lineal de estado% obtenida por linealizacion extendida.

% tiempo de simulaciont0=0; tf=30;

% condiciones inicialesx0=[0 0]’;

% simulacion numerica[t,x] = ode23(’ejext1’,[t0 tf],x0);

% parametrosJ=90;a1=0.5;a2=0.5; X=1.5;

% obtencion de la ley de control en forma vectorialu = -J*a1*a2*(atan(x(:,1))-atan(X))-J*(a1+a2)*x(:,2);

subplot(221), plot(t,x(:,1))title(’posicion angular de orientacion’)ylabel(’x1’)xlabel(’t [seg]’)

subplot(222), plot(t,x(:,2))title(’velocidad angular respecto al eje principal’)ylabel(’x2’)xlabel(’t [seg]’)

subplot(223), plot(t,u)title(’torque externo - ley de control’)ylabel(’u’)xlabel(’t [seg]’)

% sejext1.m

6.6 RESUMEN DEL CAPÍTULO Y LECTURAS ADICIONALES 175

Listado 6.3: Modelo y control de un saliélite mono-axial ejext1.m

function xdot = ejext1(t,x)% ejext1.m%% Primer ejemplo de simulacion numerica usando el metodo% de linealizacion extendida:%% El sistema representa un satelite mono-axial descrito por el% parametro de orientacion de Cayley-Rodrigues.% La ley de control realimentada es no lineal,% obtenida mediante el metodo de linealizacion extendida.%% El programa requerido para realizar las simulaciones% y obtener las graficas es:%% sejext1.m%

% parametros del sistemaJ=90;al=0.5;a2=0.5; X=1.5;

% ley de controlu = -J*al*a2*(atan(x(1)) - atan(X) ) - J(al+a2)*x(2) ;

% modelo no lineal (satelite mono-axial)xdot = [0.5*(1+x(1)*x(1))*x(2) ;

1/J*u];

% fin ejext1.m

176 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

Listado 6.4: Programa de simulación del satelite mono-axial con actuador saturadosejext1b.m

% sejext1b.m%% Programa de simulacion de la respuesta controlada% de un satelite mono-axial (modelo no lineal obtenido% usando la representacion Cayley-Rodrigues).%% Este programa permite simular la respuesta del sistema no lineal% presentado en el programa%% ejext1b.m%% El sistema es controlado mediante una realimentacion no lineal de estado% obtenida por linealizacion extendida, usando una saturacion del% valor maximo del control

% tiempo de simulacionclear all

t0=0;tf=30;

% condiciones inicialesx0=[0 0]’;

% simulacion numerica[t,x] = ode23(’ejext1b’,[t0 tf],x0);

% procedimiento para obtener la ley de control en forma vectorial% parametrosJ=90;a1=0.5;a2=0.5; X=1.5; umax=5;

for i = 1:length(x),uu(1,i) = -J*a1*a2*(atan(x(i,1)) - atan(X) ) - J(a1+a2)*x(i,2) ;

% saturacionif abs(uu(1,i)) > umax,

u(1,i) = umax;else

u(1,i) = uu(1,i);end

end

save dejext1b t x u

clf

subplot(221), plot(t,x(:,1))title(’posicion angular de orientacion’)ylabel(’x1 (u sat -, u sin sat --)’)xlabel(’t [seg]’)subplot(222), plot(t,x(:,2))title(’velocidad angular respecto al eje principal’)ylabel(’x2 (u sat -, u sin sat --)’)xlabel(’t [seg]’)subplot(223), plot(t,u)title(’torque externo - ley de control’)ylabel(’u (u sat -, u sin sat --)’)xlabel(’t [seg]’)

load dejext1

subplot(221), hold onplot(t,x(:,1),’--’)subplot(222), hold onplot(t,x(:,2),’--’)subplot(223), hold onplot(t,u,’--’)

% sejext1b.m

6.6 RESUMEN DEL CAPÍTULO Y LECTURAS ADICIONALES 177

Listado 6.5: Modelo y control saturado ejext1b.m

function xdot = ejext1b(t,x)% ejext1b.m%% Modificacion al programa ejext1.m%% Ley de control realimentada usando una saturacion del% valor maximo y minimo posibles.%% El programa requerido para realizar las simulaciones% y obtener las graficas es:%% sejext1b.m%

% parametros del sistemaJ=90;al=0.5;a2=0.5; X=1.5;

% valor de saturacion del controlumax=5;

% ley de controluu = -J*al*a2*(atan(x(1)) - atan(X) ) - J(al+a2)*x(2) ;

if abs(uu) > umax,u = umax;elseu = uu;end

% modelo no lineal (satelite mono-axial)xdot = [0.5*(1+x(1)*x(1))*x(2) ;

1/J*u];

% fin ejext1b.m

178 REALIMENTACIÓN NO LINEAL DEL VECTOR DE ESTADO

Listado 6.6: Programa de simulación del manipulador robótico sejext2.m

% sejext2.m%% Programa de simulacion de la respuesta controlada% de un brazo manopulador robotico mono-axial.%% Este programa permite simular la respuesta del sistema no lineal% presentado en el programa%% ejext2.m%% El sistema es controlado por realimentacion no lineal de estado% obtenida mediante linealizacion extendida.

% tiempo de simulaciont0=0;tf=1;

% condiciones inicialesx0=[-0.5 0]’;

% simulacion numerica[t,x] = ode23(’ejext2’,t0,tf,x0);

% parametrosX = 0; N = 1;B=1e-2; J=4e-2; c=.58;xi=0.707; wn=8.56;

% expresion vectorial de la ley de control no lineal uu = -J*wn*wn*(x(:,1)-X)+c*sin(x(:,1)/N)+(B-2*J*xi*wn)*(x(:,2)-0);

% expresion vectorial de la ley de control lineal u%u = c*sin(X/N)-(J*wn*wn-c/N*cos(X/N))*(x(:,1)-X)+....%(B-2*J*xi*wn)*(x(:,2)-0);

clgsubplot(221), plot(t,x(:,1))title(’posicion angular del brazo’)ylabel(’x1’)xlabel(’t [seg]’)subplot(222), plot(t,x(:,2))title(’velocidad angular del brazo’)ylabel(’x2’)xlabel(’t [seg]’)subplot(223), plot(t,u)title(’torque externo aplicado’)ylabel(’u’)xlabel(’t [seg]’)

% sejext2.m

6.6 RESUMEN DEL CAPÍTULO Y LECTURAS ADICIONALES 179

Listado 6.7: Modelo + control no lineal por linealización extendida (se incluye ademásel control linealizado) ejext2.m

function xdot = ejext2(t,x)% ejext2.m%% Ejemplo de simulacion numerica usando el metodo% de linealizacion extendida:%% El sistema representa un brazo manipulador robotico controlado% mediante una ley de realimentacion no lineal,% obtenida mediante el metodo de linealizacion extendida.%% El programa requerido para realizar las simulaciones% y obtener las graficas es:%% sejext2.m%

% parametros del sistemaX = 0; N = 1;B=1e-2; J=4e-2; c=.58;xi=0.707; wn=8.56;

% ley de control no linealu = -J*wn*wn*(x(1) - X) +c*sin(x(1)/N)+....(B-2*J*xi*wn)*(x(2)-0);

% ley de control lineal%u = c*sin(X/N)-(J*wn*wn-c/N*cos(X/N))*(x(1)-X)+....%(B-2*J*xi*wn)*(x(2)-0);

% modelo no lineal (satelite mono-axial)xdot = [x(2) ;

-B/J*x(2)-(c/J)*sin(x(1)/N)+(1/J)*u];

% fin ejext2.m

7

Diseño de observadoresdinámicos de estado nolineales basados enlinealización extendida

Foto

El método de la linealización extendida ha permitido desarrollar unaestrategia de construcción de observadores no lineales en formasimple y altamente sistemática.

El sistema (observador) resultante constituye una “copia” del sis-tema no lineal, a la cual se añaden términos correctivos que per-miten garantizar, localmente, que el error de observación tiende acero de manera asintóticamente estable.

180

7.1 INTRODUCCIÓN 181

7.1. Introducción

Como hemos dicho anteriormente, un observador es un sistema cuyo ob-jetivo es proporcionar una estimación de una o varias componentes del vec-tor de estado. La construcción de observadores dinámicos de estado parasistemas no lineales es un problema interesante, el cual no ha recibido aúnuna respuesta definitiva, aunque existen diversos métodos y diversas ten-tativas de solución al respecto.

Los enfoques de tratamiento de observadores no lineales se dividen es-encialmente en

Diseñar un observador para una aproximación linealizada del sistemano lineal

Realizar extensiones no lineales a partir de un observador lineal

transformar el sistema no lineal mediante una transformación de co-ordenadas (generalmente no lineal) a un sistema equivalente lineal

transformar el sistema no lineal mediante una transformación de co-ordenadas a un sistema equivalente (a un sistema bilineal, por ejem-plo) cuya estructura permita proponer argumentos de estabilidad nolineal (de tipo de Lyapunov, pasividad, mapas de contracción, etc.)

El primer enfoque ya fue analizado en la Parte I. El tercero será brevementeestudiado en la parte III. Nos dedicaremos en este capítulo al segundo en-foque, extenderemos los resultados del observador lineal al caso no lineal,para ello emplearemos el método de la linealziación extendida.

Como vimos en el capítulo anterior, la metodología de la linealización ex-tendida es simple y permite resolver el diseño de controladores no linealessistemáticamente. Debido a su sencillez, la filosofía de linealización exten-dida puede emplearse en el diseño de observadores dinámicos de estado.La idea fundamental en este caso consistirá en escoger un observador nolineal de tal manera que la familia de ecuaciones linealizadas del error deestimación, parameterizadas por el punto de operación, tenga autovaloresinvariantes con respecto a dicho punto de operación, al menos localmente.

7.2. Observador dinámico no lineal

Como es costumbre, consideremos el sistema:

ddt

x(t) = f(x(t), u(t))

y(t) = h(x(t))(7.1)

cuyo punto de operación constante está dado por

u(t) = U ; x(t) = X(U); y(t) = h(X(U)) = Y (U)

182 DISEÑO DE OBSERVADORES DINÁMICOS DE ESTADO NO LINEALES BASADOS EN LINEALIZACIÓN EXTENDIDA

Comencemos por suponer que la relación funcional que se establece, enequilibrio, entre la entrada y la salida, es tal que satisface:

dY (U)dU

6= 0

Es decir, existe una familia continua de puntos de equilibrio en el espacio desalida que se relaciona, cuando menos localmente, con el valor del controlen equilibrio.

Supondremos además que el sistema linealizado alrededor del punto deequilibrio dado por:

xδ(t) = A(U)xδ(t) + B(U)uδ(t)yδ(t) = C(U)xδ(t)

es tal que el par (A(U), C(U)) es completamente observable (o en su defectodetectable). Supondremos además que la matriz A(U) es invertible alrede-dor del valor U .

Proponemos como observador no lineal, un sistema dinámico de laObservadordinámico nolineal

forma:

ddt

x(t) = f(x(t), u(t)) + g(y(t))− g(y(t))

y(t) = h(x(t))(7.2)

La ecuación que se obtiene al evaluar el punto de equilibrio de este ob-servador, para u(t) = U , es la siguiente:

f(x(U), U) + g(Y (U))− g(Y (U)) = 0 (7.3)

Con el objeto de hacer compatible las funciones del observador con el val-or asignado en equilibrio al estado verdadero del sistema, supondremos, apartir de (7.3), que

Y (U) = h(X(U)) = h(X(U)) = Y (U) ; X(U) = X(U) , (7.4)

lo cual implica, en particular, que la función g de ganancia no lineal delobservador satisface igualmente:

g(Y (U)) = g(Y (U))

7.3. Linealización de la dinámica del error de obser-vación

La ecuación de la dinámica del error de estimación (error de obser-vación), resultante de sustraer (7.2) al sistema (7.1):

ddt

(x(t)− x(t)) = f(x(t), u(t))− f(x(t), u(t))− g(y(t)) + g(y(t)) (7.5)

7.3 LINEALIZACIÓN DE LA DINÁMICA DEL ERROR DE OBSERVACIÓN 183

La ecuación (7.5) hereda, obviamente, los puntos de operación constantesde la familia. Un cálculo sencillo demuestra que la familia de ecuacioneslinealizadas del error dinámico está dado por:

ddt

[xδ(t)− xδ(t)] =∂f

∂x

∣∣∣∣X(U),U

xδ −∂f

∂x

∣∣∣∣X(U),U

xδ−[∂g

∂y

∣∣∣∣Y (U)

∂h

∂x

∣∣∣∣X(U)

]xδ +

[∂g

∂y

∣∣∣∣Y (U)

∂h

∂x

∣∣∣∣X(U)

]xδ (7.6)

donde se ha empleado la relación g(y) = g(h(x)), tal que

∂g

∂x=

∂g(y)∂y

∂h(x)∂x

Tomando en cuenta (7.4), la ecuación (7.6) se transforma en

ddt

eδ(t) =∂f

∂x

∣∣∣∣X(U),U

(xδ − xδ)−

[∂g

∂y

∣∣∣∣Y (U)

∂h

∂x

∣∣∣∣X(U)

](xδ − xδ)

La dinámica linealizada del error de observación resulta finalmente en: Dinámicalinealizada delerror deobservación

ddt

eδ(t) = [A(U)− L(U)C(U)]eδ(t) (7.7)

donde:

A(U) =∂f

∂x

∣∣∣∣X(U),U

; C(U) =∂h

∂x

∣∣∣∣X(U)

y, además,

L(U) =∂g

∂y

∣∣∣∣y=Y (U)

(7.8)

A continuación, nuestro objetivo será el de escoger la ganancia de ob-servación linealizada L(U) de tal forma que los autovalores de [A(U) −L(U)C(U)] se encuentren en el semiplano izquierdo del plano complejo; es-tos autovalores deben ser además independientes del valor de U . Si estoúltimo no es enteramente posible, entonces, al menos, asegurarnos que laforma cómo varian tales autovalores con respecto a U responda a una fun-ción previamente conocida o impuesta.

Tal escogencia de la ganancia linealizada L(U) puede hacerse utilizandola fórmula de Bass-Gura, vista en la sección 3.4, para el par de matricestraspuestas (AT (U), CT (U)). Es decir:

L(U) = O−1(U)R−1(U)[αd − αU ]T

184 DISEÑO DE OBSERVADORES DINÁMICOS DE ESTADO NO LINEALES BASADOS EN LINEALIZACIÓN EXTENDIDA

donde:

O(U) =

C(U)

C(U)A(U). . .

C(U)An−2(U)C(U)An−1(U)

; R(U) =

1 0 . . . 0

a1(U) 1 . . . 0...

.... . . 0

an−1(U) an−2(U) . . . 1

;

αd = [α1 . . . αn]; αU = [a1(U) . . . an(U)]

siendo αd el vector fila compuesto por los coeficientes del polinomio carac-terístico deseado para la dinámica del error linealizado de estimación y αU

el vector fila conformado por los coeficientes del polinomio característico dela matriz A(U).

Puesto que dY (U)/dU 6= 0, el teorema de la función implícita aseguraque de la igualdad Y (U) = y podemos obtener como solución única para Ual valor dado por:

U = Y −1(y) . (7.9)

7.4. Ganancia no lineal del observador

El valor de la ganancia linealizada debe provenir entonces de una ganan-cia no lineal g que debe satisfacer la ecuación (7.8), la cual reescrita entérminos de (7.9) queda:

∂g

∂y= L(Y −1(y)) (7.10)

Integrando (7.10) respecto a y, obtenemos

g(y) =∫ y

Y

L(Y −1(y))dy + L(Y )

=∫ Y −1(y)

U

L(U)dY (U)

dUdU + L(Y (U))

(7.11)

como una posible alternativa de solución en la determinación de la gananciano lineal g(y) del observador.

Notemos que tomando derivadas respecto de y en esta última expresióny particularizando el resultado en el punto de equilibrio tenemos:

dg(y)dy

∣∣∣∣Y (U)

= G(Y −1(y))dY (Y −1(y))

dU

d(Y −1(y))dy

∣∣∣∣Y (U)

= L(U)dy

dU

dU

dy= L(U)

Con el valor (7.11) de g(y), el observador no lineal (7.2) queda completa-mente especificado.

7.5 EJEMPLOS 185

7.5. Ejemplos

En esta sección desarrollaremos algunos ejemplos que ilustran el proce-dimiento de diseño de observadores dinámicos no lineales, basados en re-solver la condición (7.10).

Ejemplo 7.1: Satélite mono-axial Cayley-Rodríguez: observador linealConsidere el Modelo 5 , en la página 10:

x1 = 0,5(1 + x21)x2

x2 =1

Ju

y = x1

(1.10*)

con punto de equilibrio:u = U = 0; x1 = X; x2 = 0; Y = X

El sistema linealizado alrededor del punto de equilibrio está dado por:[x1δ

x2δ

]=

[0 0,5(1 +X2)0 0

] [x1δ

x2δ

]+

[01J

]uδ

yδ = x1δ

Un observador dinámico lineal del vector de estado incremental está dado por:[˙x1δ˙x2δ

]=

[0 0,5(1 +X2)0 0

] [x1δ

x2δ

]+

[01J

]uδ +

[L1(X)L2(X)

](yδ − yδ)

yδ = x1δ

donde L1(X) y L2(X) son ganancias dependendientes del punto de equilibrio deseado X, lascuales se calculan de tal manera que el sistema lineal autónomo que gobierna el error de esti-mación tenga sus autovalores en el semiplano izquierdo.

En primer lugar, verificamos si el sistema linealizado es observable.

O(X) =

[1 00 0,5(1 +X2)

]=⇒ detO(X) = 0,5(1 +X2) 6= 0

La dinámica del error de estimación estáá regida por:[e1δ

e2δ

]=

[−L1(X) 0,5(1 +X2)−L2(X) 0

] [e1δ

e2δ

]Los modos que rigen esta dinámica se corresponden con las raíces del polinomio caracterís-

tico siguiente:p(s) = s2 + L1(X)s+ 0,5(1 +X2)L2(X)

Si deseamos que el error de estimación linealizado responda de acuerdo a autovalores queasignamos libremente en el semiplano izquierdo del plano complejo, podemos igualar, término atérmino, el polinomio anterior al siguiente polinomio característico estándar de segundo grado:

pd(s) = s2 + 2ζωns+ ω2n

Se obtiene, entonces,

L1(X) = 2ζωn ; L2(X) =2ω2

n

1 +X2

El observador lineal del estado incremental está dado por:[˙x1δ˙x2δ

]=

[0 0,5(1 +X2)0 0

] [x1δ

x2δ

]+

[01J

]uδ +

[2ζωn

2ω2n

1+X2

](yδ − yδ)

yδ = x1δ

186 DISEÑO DE OBSERVADORES DINÁMICOS DE ESTADO NO LINEALES BASADOS EN LINEALIZACIÓN EXTENDIDA

La pregunta clave del método de la linealización extendida es la siguien-te: ¿Cuál ha de ser el observador no lineal cuya linealización alrededor delpunto de equilibrio coincida con el observador que acabamos de obtener? Esdecir, ¿cuáles deben ser las ganancias no lineales g1(y) y g2(y) tales que elobservador no lineal dado por:

˙x1 = 0,5(1 + x21)x2 + g1(y)− g1(y)

˙x2 =1J

u + g2(y)− g2(y)

y = x1

tenga por linealización el observador anteriormente diseñado? Continue-mos con el ejemplo que hemos propuesto, apara el cual daremos una re-spuesta completa, junto a una simulación numérica del comportamiento,en lazo cerrado, del sistema estudiado.

Matlab 7.1: (Continuación) Satélite mono-axial Cayley-Rodríguez: obser-vador no linealEs claro que los valores de equilibrio del observador no lineal están dados por:

x2(X) = x2(X) = 0 ; y(X) = y(X) = x1(X) = x1(X) = X ; u = u(X) = 0

De tal forma que debe cumplirse entonces que:

∂g1

∂y

∣∣∣∣X

= 2ζωn

∂g2

∂y

∣∣∣∣X

=2ω2

n

1 +X2

(7.12)

Se deshace la sustitución indicada en la ecuación anterior, sustituyendo efectivamente X porla variable y. Se obtiene entonces el siguiente par de ecuaciones en derivadas parciales para lasganancias no lineales:

∂g1

∂y= 2ζωn

∂g2

∂y=

2ω2n

1 + y2

Integrando las ecuaciones anteriores resulta:

g1(y) = 2ζωny; g2(y) = 2ω2n tan−1(y)

De esta forma, el observador dinámico no lineal está dado entonces por:

˙x1 = 0,5(1 + x21)x2 + 2ζωn(y − y)

˙x2 =1

Ju+ 2ω2

n

(tan−1(y)− tan−1(y)

)y = x1

(7.13)

El observador no lineal responde al diagrama mostrado en la Figura 7.1.Recordemos que en el capítulo anterior, Sección 6.4, habíamos diseñado una ley de control

realimentada no lineal que estabilizaba al sistema al punto de equilibrio deseado. Esta ley decontrol no lineal era la siguiente

u = −J(a1 + a2)x2 − Ja1a2

[tan−1(x1)− tan−1(X)

](6.1*)

Con el objeto de completar el diseño utilizaremos el controlador propuesto en el capítuloanterior, en combinación con el observador diseñado. Simularemos el comportamiento del satelite

7.5 EJEMPLOS 187

--

-

-

-

uy = x1

u

x1

x2

˙x1 = 0,5(1 + x21)x2 + 2ξωn(y − y)

˙x2 = 1J u + 2ω2

n(tan−1(y)− tan−1(y))

y = x1

x1 = 0,5(1 + x21)x2

x2 = 1J u

y = x1

Figura 7.1: Diagrama de bloques del observador dinámico de estados para el satélitemono-axial, basado en linealización extendida

-

-

-

--

uy = x1

u

x1

x2

˙x1 = 0,5(1 + x21)x2 + 2ξωn(y − y)

˙x2 = 1J u + 2ω2

n(tan−1(y)− tan−1(y))

y = x1

x1 = 0,5(1 + x21)x2

x2 = 1J u

y = x1

u = −J(a1 + a2)x2 − Ja1a2

[tan−1(x1)− tan−1(X)

]

Figura 7.2: Diagrama de bloques en lazo cerrado del sistema de control de un satélite,considerando un observador dinámico no lineal

188 DISEÑO DE OBSERVADORES DINÁMICOS DE ESTADO NO LINEALES BASADOS EN LINEALIZACIÓN EXTENDIDA

Listado 7.1: Programa de simulación de la dinámica de un satélite mono-axial reguladomediante un controlador y un observador no lineales sejext3.m

% sejext3.m%% Programa de simulacion de la respuesta controlada% de un satelite mono-axial (modelo no lineal obtenido% usando la representacion Cayley-Rodrigues).%% Este programa permite simular la respuesta del sistema no lineal% presentado en el programa%% ejext3.m%% El sistema es controlado mediante una realimentacion no lineal de estado% sintetizada mediante un observador no lineal% dise~nado mediante linealizacion extendida.

% tiempo de simulaciont0=0;tf=30;

% condiciones inicialesx0=[0 0 0.5 0.2]’;

% simulacion numerica[t,x] = ode23(’ejext3’,[t0 tf],x0);

% parametrosJ=90;a1=0.4;a2=0.5; X=1.5;xi=0.7; wn=0.8;

% ley de controlu = -J*a1*a2*(atan(x(:,3))-atan(X))-J*(a1+a2)*x(:,4);

clfsubplot(221), plot(t,x(:,1),t,x(:,3),’--’)title(’posicion angular de orientacion’)ylabel(’x1’)xlabel(’t [seg]’)subplot(222), plot(t,x(:,2),t,x(:,4),’--’)title(’velocidad angular respecto al eje principal’)ylabel(’x2’)xlabel(’t [seg]’)subplot(223), plot(t,u)title(’torque externo - ley de control’)ylabel(’u’)xlabel(’t [seg]’)

% sejext3.m

7.5 EJEMPLOS 189

Listado 7.2: Modelo, control y observador no lineales ejext3.m empleados para lasimulación

function xdot = ejext3(t,x)% ejext3.m%% Ejemplo de simulacion numerica usando el metodo% de linealizacion extendida para el disen~o de un% observador no lineal:%% El sistema representa un satelite mono-axial descrito por el% parametro de orientacion de Cayley-Rodrigues.% La ley de control realimentada es no lineal,% obtenida mediante el metodo de linealizacion extendida.% La ley de control se sintetiza usando un observador% no lineal.%% El programa requerido para realizar las simulaciones% y obtener las graficas es:%% sejext3.m%

% parametros del sistemaJ=90;al=0.5;a2=0.5; X=1.5;xi=0.7; wn=0.8;

% ley de controlu = -J*al*a2*(atan(x(3))-atan(X))-J(al+a2)*x(4);

% modelo no lineal (satelite mono-axial)xdot = [0.5*(1+x(1)*x(1))*x(2) ;

1/J*u;0.5*(1+x(3)*x(3))*x(4)+2*xi*wn*(x(1)-x(3));1/J*u+2*wn*wn*(atan(x(1))-atan(x(3)))];

% fin ejext3.m

190 DISEÑO DE OBSERVADORES DINÁMICOS DE ESTADO NO LINEALES BASADOS EN LINEALIZACIÓN EXTENDIDA

Figura 7.3: Comportamiento de un satélite mono-axial controlado sobre la base de unobservador dinámico de estados obtenido por linealización extendida

7.5 EJEMPLOS 191

mono-axial en lazo cerrado. El controlador completo, en conjunto con el observador dinámico nolineal (7.13), está dado por:

u = −J(a1 + a2)x2 − Ja1a2

[tan−1(x1)− tan−1(X)

](7.14)

donde hemos sustituido las cantidades x1 y x2, respectivamente, por x1 y x2.El sistema en lazo cerrado dado por (1.10*)–(7.13)–(7.14) se presenta en el diagrama de

bloques mostrado la figura 7.2. Los Listados 7.1 y 7.2 permiten simular el comportamiento en lazocerrado del sistema controlado mediante la ley de control no lineal (7.14) sintetizada sobre la basede la operación de un observador dinámico no lineal (7.13). La respuesta del sistema dinámico semuestra en la figura 7.3.

t

Matlab 7.2: Manipulador robótico: la dinámica del error de observación re-sultante es completamente linealConsidere el manipulador robótico, Modelo 9 , en la página 15, tratado anteriormente, representa-do por el siguiente conjunto de ecuaciones diferenciales:

x1 = x2

x2 = −B

Jx2 −

c

Jsen(x1

N

)+

1

Ju

y = x1

(1.21*)

donde se mide la posición angular del brazo manipulador. El punto de equilibrio se caracterizagenericamente mediante:

u = c sen

(X

N

); y = x1 = X; x2 = 0

La linealización de este sistema alrededor del punto de equilibrio resultó ser, ver Capítulo 5,expresión (5.15): [

x1δ

x2δ

]=

[0 1

− cNJ

cos(X) −BJ

] [x1δ

x2δ

]+

[01J

]uδ

yδ = x1δ

Un observador dinámico para este sistema linealizado está dado por:[˙x1δ˙x2δ

]=

[0 1

− cNJ

cos(X) −BJ

] [x1δ

x2δ

]+

[01J

]uδ +

[L1(X)L2(X)

](yδ − yδ)

yδ = x1δ

(7.15)

La dinámica del error de estimación de las variables de estado está dada por:[e1δ

e2δ

]=

[−L1(X) 1

−L2(X)− cNJ

cos(X) −BJ

] [e1δ

e2δ

]El polinomio característico de este sistema resulta:

p(s) = s2 +

(L1(X) +

B

J

)s+

c

NJcos

(X

N

)+ L2(X)

Al igualar p(s) al polinomio deseado de la forma:

pd(s) = (s+ β1)(s+ β2) = s2 + (β1 + β2)s+ β1β2 ,

obtenemos los valores necesarios de las ganancias del observador dinámico. Estas ganancias,parametrizadas por el punto de equilibrio, tienen por valor las cantidades:

L1(X) = β1 + β2 −B

J;

L2(X) = β1β2 −c

NJcos

(X

N

)−B

J(β1 + β2) +

B2

J2

(7.16)

192 DISEÑO DE OBSERVADORES DINÁMICOS DE ESTADO NO LINEALES BASADOS EN LINEALIZACIÓN EXTENDIDA

En el método de linealización extendida procedemos ahora a proponer un observador nolineal, dado, en forma general, por la expresión:

˙x1 = x2 + g1(y)− g1(y)

˙x2 = −B

Jx2 −

c

Jsen

(x1

N

)+

1

Ju+ g2(y)− g2(y)

y = x1

(7.17)

La linealización del observador no lineal (7.17), alrededor del punto de equilibrio del sistemaoriginal (el cual, como ya hemos dicho, también debe ser punto de equilibrio del observador), estádado por:[

˙x1δ˙x2δ

]=

[0 1

− cNJ

cos(X) −BJ

] [x1δ

x2δ

]+

[01J

]uδ +

∂g1∂y

∣∣∣X

∂g2∂y

∣∣∣X

(yδ − yδ)

yδ = x1δ

(7.18)

La linealización (7.18) debe coincidir con el observador lineal de la familia de sistemas lineal-izados, parametrizado por el punto de equilibrio que acabamos de diseñar (7.15)–(7.16),[

˙x1δ˙x2δ

]=

[0 1

− cNJ

cos(X) −BJ

] [x1δ

x2δ

]+

[01J

]uδ

+

[β1 + β2 − B

J

β1β2 − cNJ

cos(

XN

)− B

J(β1 + β2) + B2

J2

](yδ − yδ)

yδ = x1δ

(7.19)

Igualando término a término los elementos de (7.18) y (7.19), concluímos que deben cumplirselas siguientes igualdades:

∂g1

∂y

∣∣∣∣y=X

= β1 + β2 −B

J

∂g2

∂y

∣∣∣∣y=X

= β1β2 −c

NJcos

(X

N

)−B

J(β1 + β2) +

B2

J2

Este par de relaciones se convierten en un par de ecuaciones en derivadas parciales al des-hacer la sustitución y = X:

∂g1

∂y= β1 + β2 −

B

J

∂g2

∂y= β1β2 −

c

NJcos( yN

)−B

J(β1 + β2) +

B2

J2

Integrando obtenemos:

g1(y) =

(β1 + β2 −

B

J

)y

g2(y) =

(β1β2 −

B

J(β1 + β2) +

B2

J2

)y −

c

Jsen( yN

) (7.20)

A partir de (7.20), el observador dinámico no lineal (7.17) resulta entonces, luego de algunassimplificaciones elementales, en:Este observador

no lineal generaun error deobservacióncompletamnetelineal

˙x1 = x2 +

(β1 + β2 −

B

J

)(y − y)

˙x2 = −B

Jx2 +

1

Ju+

(β1β2 −

B

J(β1 + β2) +

B2

J2

)(y − y)−

c

Jsen( yN

)y = x1

(7.21)

7.5 EJEMPLOS 193

-

-

-

--

uy = x1

u

x1

x2

˙x1 = x2 + (β1 + β2 − BJ

)(y − y)

˙x2 = −BJx2 + 1

Ju+ (β1β2 − B

J(β1 + β2)

+B2

J2 )(y − y)− cJ

sen( yN

)

y = x1

x1 = x2

x2 = −BJx2

− cJ

sen(x1N

) + 1Ju

y = x1

u = −Jω2n(x1 −X)− (2Jζωn −B)x2 + c sen( x1

N )

Figura 7.4: Diagrama de bloques en lazo cerrado de un manipulador robótico, consideran-do un observador dinámico no lineal

Es interesante notar que el error de observación, obtenido a partir de las ecuaciones diferen-ciales no lineales de la planta (1.21) y del observador (7.21), está gobernado por el siguiente parde ecuaciones diferenciales autónomas de naturaleza evidentemente lineal:

e1 =

(β1 + β2 −

B

J

)e1 + e2

e2 =

(β1β2 −

B

J(β1 + β2) +

B2

J2

)e1 −

B

Je2

Los autovalores de este sistema coinciden con las raíces del siguiente polinomio característico:

perr. obs.(s) = s2 + (β1 + β2)s+ β1β2 = pd(s)

Es de notar que este polinomio es, casualmente, idéntico al polinomio característico que gobiernael error de estimación del observador del estado incremental linealizado. En este caso, el obser-vador no lineal permite obtener directamente, y sin aproximación alguna, una dinámica del errorde estimación completamente lineal.

Los estados del observador no lineal se utilizan en la conformación de la ley de control nolineal derivada en el capítulo anterior, en la página 165. Tal ley de control rezaría ahora de lamanera siguiente:

u = −Jω2n(x1 −X)− (2Jζωn −B)x2 + c sen

(x1

N

)(6.19*)

donde x1 y x2 han sido reemplazados por sus respectivos valores estimados.El esquema de control no lineal, basado en el observador no lineal propuesto, se muestra

en el diagrama de bloques de la Figura 7.4. La respuesta del sistema en lazo cerrado, obtenidamediante simulación numérica se muestra en la Figura 7.5. Los Listados 7.3 y 7.4 permiten simularel sistema en lazo cerrado de acuerdo al esquema mostrado.

t

194 DISEÑO DE OBSERVADORES DINÁMICOS DE ESTADO NO LINEALES BASADOS EN LINEALIZACIÓN EXTENDIDA

Figura 7.5: Comportamiento de un manipulador robótico controlado sobre la base de uncontrolador y un observador dinámico de estados, obtenidos por linealización extendida

7.5 EJEMPLOS 195

Listado 7.3: Programa de simulación de un manipulador robótico regulado median-te una realimentación y un observador no lineales, basados en linealización extendidasrobleob2.m

% srobleob2.m%% Programa que simula la respuesta en lazo cerrado de un brazo manipulador% robotico controlado por una ley de realimentacion no lineal, basada% en un observador no lineal. El disenno del controlador y el observador% se realizo mediante el metodo de la linealizacion extendida.%

% parametros de simulaciont0 = 0;tf = 2;x0 = [pi/2 0.0 0.0 0.0];

% simulacion[t,x] = ode23(’robleob2’,[t0 tf],x0);

subplot(221),plot(t,x(:,1),’k’,t,x(:,3),’k--’)title(’Posicion angular’)xlabel(’t [seg]’)ylabel(’x1 (-), x1 estimada (--) [rad]’)

subplot(222),plot(t,x(:,2),’k’,t,x(:,4),’k--’)title(’Velocidad angular’)xlabel(’t [seg]’)ylabel(’x2 (-), x2 estimada (--) [rad/seg]’)

% parametrosB = 1e-2;J = 4e-2;c = .58;N = 1;

% punto de equilibrioX = 0;

% polinomios deseadosxi = 0.707; wn = 8.56; % control

uu = -J*wn*wn*(x(:,3)-X) + c*sin(x(:,3)/N) + (B-2*J*xi*wn)*x(:,4);

subplot(223),plot(t,uu,’k’)title(’Torque’)xlabel(’t [seg]’)ylabel(’u [N-m]’)

subplot(224),plot(t,x(:,1),’k’)title(’Posicion angular’)xlabel(’t [seg]’)ylabel(’y [rad]’)

% fin de srobleob2.m

196 DISEÑO DE OBSERVADORES DINÁMICOS DE ESTADO NO LINEALES BASADOS EN LINEALIZACIÓN EXTENDIDA

Listado 7.4: Modelo de un manipulador robótico y ley de control con observador no linealbasada en linealización extendida robleob2.m

function dx = robleob2(t,x)%% modelo de un manipulador robotico regulado mediante un controlador% y un observador no lineales, obtenidos a partir del metodo de la% linealizacion extendida.

% parametrosB = 1e-2;J = 4e-2;c = .58;N = 1;

% punto de equilibrioX = 0;

% polinomios deseadosxi = 0.707; wn = 8.56; % controlb1 = 6.0; b2 = 8.0; % observacion

u = -J*wn*wn*(x(3)-X) + c*sin(x(3)/N) + (B-2*J*xi*wn)*x(4);

y = x(1);

dx = [x(2);-B/J*x(2)-c/J*sin(x(1)/N)+1/J*u; % modelox(4)+(b1+b2-B/J)*(y-x(3));-B/J*x(4)+1/J*u+(b1*b2-B/J*(b1+b2)+B*B/J/J)*(y-x(3))-c/J*sin(y/N)];

% fin de robleob2.m

Matlab 7.3: Conductor móvil: observador no lineal basado en linealizaciónextendidaConsideremos ahora el Ejemplo 6.2, presentado en el capítulo anterior, en la página 167. Lasecuaciones de estado del sistema, Modelo 24 , en la página 73, son las siguientes:

x1 = x2

x2 = −k(x1 − L0) +2iL

a− x1u

y = x1

(3.13*)

donde la salida medida corresponde a la distancia al conductor pequeño. El punto de equilibrio de,parametrizado en términos de una cierta distancia (nominal) deseada de valor x1 = b, está dadopor:

u = U(b) =k(b− L0)(a− b)

2iL; Y (b) = X1(b) = b ; X2(b) = 0

El controlador no lineal que estabiliza la posición del conductor a su valor nominal estaba dadopor:

u = −κ(x1, x2) =a− x1

2iL[−a1a2(x1 − b) + k(x1 − L0)− (a1 + a2)x2] (6.21*)

Diseñaremos ahora un observador de estado no lineal que permita instrumentar la ley decontrol anterior sobre la base de estimaciones del vector de estado, es decir,

u = −κ(x1, x2) =a− x1

2iL[−a1a2(x1 − b) + k(x1 − L0)− (a1 + a2)x2]

donde se han, efectivamente, sustituido x1 y x2 por sus respectivos estimados.

7.5 EJEMPLOS 197

Linealización del sistema alrededor del punto de equilibrio:[x1δ

x2δ

]=

[0 1

−[k a−2b+L0

a−b

]0

][x1δ

x2δ

]+

[0

2iLa−b

]uδ

y = x1δ

Análisis de observabilidad:

O =

[1 00 1

]; detO = −1 6= 0

Proponemos un observador lineal de la forma siguiente:[˙x1δ˙x2δ

]=

[0 1

−[k a−2b+L0

a−b

]0

][x1δ

x2δ

]+

[0

2iLa−b

]uδ +

[Λ1(b)Λ2(b)

](yδ − yδ)

y = x1δ

El error de estimación incremental deberá satisfacer la ecuación dinámica[e1δ

e2δ

]=

[−Λ1(b) 1

−Λ2(b)−[k a−2b+L0

a−b

]0

][e1δ

e2δ

]Polinomio característico de este sistema autónomo:

p(s) = s2 + Λ1(b)s+ Λ2(b) + ka− 2b+ L0

a− b

Polinomio característico deseado:

pd(s) = s2 + 2ζωns+ ω2n

con raíces en el semiplano izquierdo del plano complejo.Al igualar p(s) y pd(s) se obtienen las ganancias requeridas del observador lineal:

Λ1(b) = 2ζωn ;

Λ2(b) = ω2n − k

a− 2b+ L0

a− b

El observador lineal puede expresarse entonces como:[˙x1δ˙x2δ

]=

[0 1

−[k a−2b+L0

a−b

]0

][x1δ

x2δ

]+

[0

2iLa−b

]uδ +

[2ζωn

ω2n − k a−2b+L0

a−b

](yδ − yδ)

y = x1δ

Siguiendo el método de la linealizaciín extendida, este observador lineal debe representarla linealización, alrededor del punto de equilibrio, del siguiente observador dinámico no lineal deestado del sistema original:

˙x1 = x2 + g1(y)− g1(y)

˙x2 = −k(x1 − L0) +2iL

a− x1+ g2(y)− g2(y)

y = x1

Debe cumplirse entonces que:

∂g1(y)

∂y

∣∣∣∣y=b

= 2ζωn ;

∂g2(y)

∂y

∣∣∣∣y=b

= ω2n − k

a− 2b+ L0

a− b

198 DISEÑO DE OBSERVADORES DINÁMICOS DE ESTADO NO LINEALES BASADOS EN LINEALIZACIÓN EXTENDIDA

-

-

-

--

uy = x1

u

x1

x2

˙x1 = x2 + 2ζωn(y − y)

˙x2 = −k(x1 − L0) + 2iLa−x1

+ (ω2n − 2k)(y − y)

−k(a− L0) ln(a−ya−y

)

y = x1

x1 = x2

x2 = −k(x1 − L0)

+ 2iLa−x1

u

y = x1

u = a−x12iL [−a1a2(x1 − b) + k(x1 − L0)− (a1 + a2)x2]

Figura 7.6: Diagrama de bloques en lazo cerrado de un manipulador robótico, consideran-do un observador dinámico no lineal

Sustituyendo la transformación y = b se obtiene

∂g1(y)

∂y= 2ζωn ;

∂g2(y)

∂y= ω2

n − ka− 2y + L0

a− y

de donde es simple obtener, por integración de ambas ecuaciones, las siguientes cantidades:

g1(y) = 2ζωny ;

g2(y) = (ω2n − 2k)y − k(a− L0) ln(a− y)

donde ‘ln’ corresponde a la función logaritmo neperiano.El observador dinámico no lineal está dado finalmente por la expresión:

˙x1 = x2 + 2ζωn(y − y)

˙x2 = −k(x1 − L0) +2iL

a− x1+ (ω2

n − 2k)(y − y)− k(a− L0) ln

[a− y

a− y

]y = x1

(7.22)

El diagrama de bloques de la Figura 7.6 ilustra el esquema de control no lineal en lazo ce-rrado dado por (3.13*)–(6.21*)–(7.22). El comportamiento del sistema en lazo cerrado, obtenidomediante simulación numérica con los programas descritos en Listados 7.5 y 7.6, se muestra enla Figura 7.6.

t

7.5 EJEMPLOS 199

Listado 7.5: Programa de simulación de un sistema de dos conductores regulado medianteuna ley de control no lineal, basada en un observador diseñado mediante linealizaciónextendida sconexob.m

% sconexob.m%% programa de simulacion del sistema de dos conductores acoplados% magneticamente, se ilustra la regulacion al punto de equilibrio% usando un esquema de controlador y observador no lineales,% obtenidos mediante linealizacion extendida.

% parametros de simulaciont0 = 0;tf = 1.5;x0 = [0.1 0.1 0.2 0.0];

% simulacion[t,x] = ode23(’conexob’,[t0 tf],x0);

subplot(221),plot(t,x(:,1),’k’,t,x(:,3),’k--’)title(’Distancia (posicion) del conductor’)xlabel(’t [seg]’)ylabel(’x1 (-), x1 estimada (--) [m]’)

subplot(222),plot(t,x(:,2),’k’,t,x(:,4),’k--’)title(’Velocidad del conductor’)xlabel(’t [seg]’)ylabel(’x2 (-), x2 estimada (--) [m/seg]’)

% parametrosk = 10; L0 = 0.05; I = 0.3; L = 0.5; a = 0.3;

% punto de equilibriob = 0.12;

% polinomios deseadosa1 = 5.0; a2 = 6.0; % control

uu = (a-x(:,3))/(2*I*L).*(-a1*a2*(x(:,3)-b)+k*(x(:,3)-L0)-(a1+a2)*x(:,4));

subplot(223),plot(t,uu,’k’)title(’Corriente I’)xlabel(’t [seg]’)ylabel(’u [Amp]’)

subplot(224),plot(t,x(:,1),’k’)title(’Distancia’)xlabel(’t [seg]’)ylabel(’y [m]’)

% fin de sconexob.m

200 DISEÑO DE OBSERVADORES DINÁMICOS DE ESTADO NO LINEALES BASADOS EN LINEALIZACIÓN EXTENDIDA

Figura 7.7: Comportamiento de un sistema de dos conductores acoplados magnética-mente controlado sobre la base de un controlador y un observador dinámico de estados,obtenidos por linealización extendida

7.6 EJERCICIOS PROPUESTOS 201

Listado 7.6: Modelo y ley de control con observador no lineal basada en linealizaciónextendida conexob.m

function dx = conexob(t,x)%% parametrosk = 10; L0 = 0.05; I = 0.3; L = 0.5; a = 0.3;

% punto de equilibriob = 0.12;

% polinomios deseadosa1 = 5.0; a2 = 6.0; % controlxi = 0.707; wn = 12; % observacion

u = (a-x(3))/(2*I*L)*(-a1*a2*(x(3)-b)+k*(x(3)-L0)-(a1+a2)*x(4));

y = x(1);

dx = [x(2);-k*(x(1)-L0)+2*I*L*u/(a-x(1)); % modelox(4)+2*xi*wn*(y-x(3));-k*(x(3)-L0)+2*I*L*u/(a-x(3))+(wn*wn-2*k)*(y-x(3))-k*(a-L0)*log((a-y)/(a-x(3)))];

% fin de conexob.m

7.6. Ejercicios propuestos

Figura 7.8: Tanque reactor continuamente agitado, no isotérmico

Modelo 32: Tanque de reacción continuamente agitado, modelo 5Considere el tanque reactor (no isotérmico), en el cual ocurre una reacción exotérmica A →B, presentado en la Figura 7.8. El modelo del proceso está representado por dos ecuacionesdiferenciales no lineales dadas por:

dCA

dt=

q

V(CAf − CA)− rA(T )

dT

dt=

q

V(Tf − T ) +

(−∆H)

ρCprA(T ) +

ρcCpc

ρCpVqc

[1− exp

(−

hA

qcρCpc

)]× (Tcf − T )

(7.23)

donde la función rA(T ) = k0CA(− ERT

). Las variables del sistema están dadas por: CA es laconcentración del componente A; T es la temperatura de la substancia resultante; qc es el flujo deentrada del refrigerante, el cual actúa como variable de control. Los parámetros del sistema son:q es el flujo del substrato de alimentación al tanque; Tf es la temperatura del flujo de entrada; Tcf

202 DISEÑO DE OBSERVADORES DINÁMICOS DE ESTADO NO LINEALES BASADOS EN LINEALIZACIÓN EXTENDIDA

es la temperatura del refrigerante a la entrada del sistema; A, área; Cp, capacidad calorica, E,energía de activación; h, coeficiente de transferencia de calor para el TRCA; k0, constante de lareacción; ∆H, calor de reacción; ρ, densidad del líquido. El subíndice c se refiere al refrigerante.

M

Ejercicio 7.1: Diseño de un observador no lineal por linealización extendi-da: TRCA, modelo 5

Utilizando el método presentado en este capítulo, diseñe un observador no linealde orden completo para el sistema (7.23). La variable medida es la temperaturay = T .

(?)

Ejercicio 7.2: Comparación de un esquema completamente lineal con elesquema no lineal desarrollado en este capítulo

Considere el ejemplo Matlab 4.1, página 90. Diseñe un controlador y un obser-vador no lineales por linealización extendida. Compare mediante una simulaciónnumérica el esquema en lazo cerrado presentado en Matlab 4.1, con el esquemano lineal diseñado mediante linealización extendida, para diferentes valores de lascondiciones iniciales.

(??)

Ejercicio 7.3: Observadores de orden reducidoExtienda el diseño de observadores no lineales presentado aquí al caso de los

observadores de orden reducido. Para ello, tome los Ejemplos 4.2 y 4.3. Desarrolletodas las cuentas para el caso no lineal y compare los observadores de orden reduci-do lineal y no lineal obtenidos.Ayuda: Recuerde que el observador (de orden reducido) no lineal a obtener en cadacaso debe, al linealizarse, ser equivalente al observador lineal ya diseñado. (? ? ?)

Ejercicio 7.4: Linealización del sistema en lazo cerradoConsidere el ejemplo Matlab 7.2. Reescriba las ecuaciones del sistema en la-

zo cerrado dado por (1.21*), (7.21), (6.19*), haciendo las sustituciones correspondi-entes, de tal forma que el sistema resultante solo dependa de las variables de estadox1, x2, x1 y x2. Determine la linealización aproximada del sistema en lazo cerradoy calcule los autovalores correspondientes. Muestre que se cumple el principio deseparación para el sistema linealizado obtenido. (??)

Ejercicio 7.5: Revisión del artículo de Baumann y Rugh (1986)Diríjase al artículo: W. T. Baumann, W. J. Rugh, “Feedback control of nonlinear

systems by extended linearization”, IEEE Trans. Automat. Contr., vol. 31, pp. 40–46,1986, [BR86]. Estudie el ejemplo desarrollado (sección V del mismo). Allí se ilustrantodos los elementos y conceptos desarrollados hasta a través del Modelo 27, enla página 112. Se analiza el diseño de un observador no lineal de orden reducido.Repita las simulaciones realizadas en dicho artículo.

(??)

7.7 RESUMEN DEL CAPÍTULO 203

7.7. Resumen del capítulo

En este capítulo hemos presentado una extensión del método de la linea-lización extendida al diseño de observadores no lineales de orden completo.El diseño de observadores dinámicos de estado para sistemas no linealesha sido un tema muy estudiado durante los últimos veinte. Su complejidadnatural surge de las múltiples relaciones que se pueden establecer entre laseñal de entrada y el vector de estados (productos cruzados, funciones nolineales de los componentes, etc.) que se diferencian de manera notable delcaso lineal.

El diseño de observadores dinámicos no lineales de orden reducido esinmediato para cierta clase de sistemas no lineales. El caso general de sis-temas no lineales no es trivial, por ello hemos dejado abierto su estudio allector osado, inquieto por entender cuáles son las dificultades de este prob-lema y su posible solución.

Lectura recomendadaLa linealización extendida fue originalmente propuesta en:

W. T. Baumann, W. J. Rugh, “Feedback control of nonlinear systemsby extended linearization”, IEEE Trans. Automat. Contr., vol. 31, pp.40–46, 1986, [BR86].

Recomendamos al lector dirigirse a la página del profesor W. Rugh, cate-drático de la Universidad John Hopskins en Estados Unidos:http://www.ece.jhu.edu/~rugh/214/me/rugh.html,para indigar sobre otras vertientes del método de la linealización extendida.

8

Sintesis decompensadores nolineales G(·)

Foto

El método de la linealización extendida permite, en principio, lageneralización al caso no lineal de cualquier método de diseño decontroladores lineales.

La idea siempre es la misma: obtener un controlador no lineal talque “su linealización coincida perfectamente con el diseño linealparametrizado”.

8.1. Introducción

En este capítulo extenderemos el método de diseño de compensadoresdel tipo P (Proporcional), PI (Proporcional-Integral) y PID (Proporcional-

204

8.1 INTRODUCCIÓN 205

Integral-Derivativo), de uso frecuente y extenso en el control de sistemaslineales, al caso de sistemas no lineales.

Utilizaremos como base del diseño linealizado el método de Ziegler-Nicholsen régimen frecuencial. No tomaremos en cuenta el método de Ziegler-Nichols basado en los parámetros de la respuesta escalón, por cuanto esmucho más dificil obtener estos parámetros en forma analítica parametri-zada.

Como ya vimos en el Capítulo 5, el método frecuencial permite encontrarde una forma sistemática y analítica más directa los elementos del diagra-ma de Nyquist sobre los que se basa el cálculo de los parámetros del contro-lador, P, PI o PID. El método que expondremos sólo se aplica a sistemas deuna sola entrada y una salida.

Estudiaremos un sistema no lineal, n-dimensional, de una entrada yuna salida dado por:

x(t) = f(x(t), u(t))y = h(x(t))

Sea u(t) = U un punto de operación constante asociado la entrada escalardel sistema anterior. Correspondiente con este valor nominal de la entrada,tenemos un valor de equilibrio para el vector de estado y de la salida, dadosrespectivamente por x(t) = X(U) y y(t) = Y (U).

Supondremos que Y (U) es una función continua de U cuya derivadadY (U)/dU es no nula. Podremos ocasionalmente parametrizar el punto deequilibrio para el control en base a un valor deseado de la salida y(t) = Ymediante una expresión de la forma: U = U(Y ).

La expresión linealizada del sistema alrededor del punto de operacióngenérico (U,X(U), Y (U)), parametrizada en términos del valor constantede la entrada de control en equilibrio, está dada por:

xδ = A(U)xδ + B(U)uδ

yδ = C(U)xδ

con

A(U) =∂f(x, u)

∂x

∣∣∣∣X(U),U

; B(U) =∂f(x, u)

∂u

∣∣∣∣X(U),U

;

C(U) =∂h(x)

∂x

∣∣∣∣X(U),U

,

y,xδ = x−X(U); uδ = u− U ; yδ = y − Y (U)

A partir de esta representación del sistema linealizado, podemos obtenerla función de transferencia del sistema en lazo abierto, parametrizada porel valor U , dada por:

GU (s) = C(U)[sI −A(U)]−1B(U)

206 SINTESIS DE COMPENSADORES NO LINEALES G(·)

8.2. Diseño de reguladores no lineales del tipo P, PI yPID mediante linealización extendida

Recordemos la forma del regulador PID obtenido en la Sección 5.2:

uδ = K1(U)eδ + K2(U)∫ t

o

eδ(σ)dσ + K3(U)deδ

dt(5.5*)

Siguiendo el método de la linealización extendida, propondremos a par-tir de la expresión (5.5*) un compensador no lineal general del tipoPID. Aplicaremos la linealización aproximada a este controlador, con el ob-jeto de identificarlo al diseño lineal llevado a cabo precisamente sobre lafamilia de sistemas linealizados.

En este caso, la generalización no lineal del controlador PID asume laforma siguiente:

z(t) = k2(z(t))e(t)

u(t) = z(t) + k1(z(t))e(t) + k3(z(t))de(t)

dt

(8.1)

donde la variable z(t) juega el papel de “estado” del compensador dinámicono lineal. Veamos.

La señal de control sintetizada por el compensador anterior adopta en-tonces la forma general

u(t) = k1(z(t))e(t) +∫ t

0

k2(z(σ))e(σ)dσ + k3(z(t))de(t)

dt, (8.2)

la cual en efecto representa una generalización, de tipo no lineal, del con-trolador clásico PID. El error e(t) está dado por e = yref − y = 0− y = −y.

Note que el punto de equilibrio de la estrategia de control no lineal prop-uesta está dado, evidentemente, por e = 0 y z(U) = U . De esta forma, lalinealización del regulador no lineal (8.1), alrededor de su punto de equili-brio, resulta en:

zδ = k2(U)eδ

uδ = zδ + k1(U)eδ(t) + k3(U)deδ(t)

dt

(8.3)

Se desprende inmediatamente, de la comparación de este compensadorlinealizado con el compensador lineal PID diseñado anteriormente, que

k1(z)|z=U = K1(U) ;k2(z)|z=U = K2(U) ;k3(z)|z=U = K3(U)

8.2 DISEÑO DE REGULADORES NO LINEALES DEL TIPO P, PI Y PID MEDIANTE LINEALIZACIÓN EXTENDIDA 207

En este caso, las ganancias no lineales se obtienen directamente, de ma-nera practicamente trivial, a partir de las siguientes relaciones:

k1(z) = K1(z) ;k2(z) = K2(z) ;k3(z) = K3(z)

(8.4)

lo cual facilita enormemente la búsqueda del controlador no lineal.

Matlab 8.1: Diseño de un controlador no lineal del tipo PI para un modelopromedio de un convertidor Boost de corriente continuaConsidérese el Modelo 7 , en la página 13, de un convertidor tipo “Boost” de corriente continua,regulado mediante conmutaciones generadas sobre la base de un esquema de modulación deancho de pulsos:

z1 = −ω0z2 + µω0z2 + b

z2 = ω0z1 − ω1z2 − µω0z1

y = z2

(1.16*)

La familia de funciones de transferencia parametrizadas, que relacionan el voltaje incrementalde salida con el valor incremental de la relación de trabajo, se obtiene del modelo linealizadomediante la expresión, ver Sección 2.3.2:

GU (s) = −ω0Z1(U)s− b

Z1(U)

s2 + ω1s+ ω20(1− U)2

(2.10*)

donde

µ = U ; Z1(U) =bω1

ω20(1− U)2

: Z2(U) =b

ω0(1− U)

Recordemos del Ejemplo 5.2, página 122, el regulador PI lineal diseñado para este sistema,

ξδ = 0,54ω2

0(1− U)3√

2πbeδ

µδ = ξδ + 0,45ω0(1− U)2

beδ

(5.12*)

donde eδ = −yδ . El período último y la ganancia última resultaron para este caso:

P0(U) =2π

ω0(U)=

√2π

ω0(1− U); K0(U) =

ω0(1− U)2

b,

y las ganancias K1 y K2:

K1(U) = 0,45ω0(1− U)2

b: K2(U) = 0,54

ω20(1− U)3√

2πb(5.11*)

A partir de (5.12*) y (8.4), se puede inferir de manera inmediata la estructura del controladorPI no lineal, cuyo estado designamos mediante z(t), está dada por las ecuaciones:

z(t) =

[0,54

ω20(1− z(t))3√

2πb

]e(t)

µ(t) = z(t) +

[0,45

ω0(1− z(t))2

b

]e(t)

(8.5)

donde ahora tenemose(t) = Z2(U)− z2(t)

Considerando el controlador no lineal (8.5), recordemos que el esquema final de control in-volucrará la delimitación de la señal de control generada por el PI, de acuerdo a un saturador queimpida que esa señal tome valores inferiores a 0 o superiores a 1. Ver Figura 8.1.

208 SINTESIS DE COMPENSADORES NO LINEALES G(·)

j- - - - -

6

limitador

u ulimz = [0,54

ω20(1−z)3√

2πb]e

µ = z + [0,45ω0(1−z)2

b]e

z1 = −ω0z2 + µω0z2 + b

z2 = ω0z1 − ω1z2 − µω0z1

y = z2

Z2(U) e(t)

y(t)PI no lineal Convertidor Boost

y(t) = z2(t)1

0 1+ -

Figura 8.1: Diagrama de bloques en lazo cerrado del modelo promedio del convertidorBoost, controlado mediante un PI no lineal

Figura 8.2: Comportamiento del modelo promedio de un convertidor Boost reguladomediante un PI no lineal obtenido por linealización extendida

8.2 DISEÑO DE REGULADORES NO LINEALES DEL TIPO P, PI Y PID MEDIANTE LINEALIZACIÓN EXTENDIDA 209

Listado 8.1: Programa de simulación del comportmiento del modelo promedio del con-vertidor Boost, regulado mediante un PI nol lineal sboostex.m

% sboostex.m%% Programa que simula la respuesta en lazo cerrado de un convertidor% de corriente continua del tipo Boost, controlado a un punto% de equilibrio deseado mediante un regulador PI no lineal% obtenido mediante linealizacion extendida.%

clear uu% parametros de simulaciont0 = 0;tf = 0.02;x0 = [0.1 0.1 0.0];

% simulacion[t,x] = ode23(’boostext’,[t0 tf],x0);

subplot(221),plot(t,x(:,1),’k’)title(’Corriente normalizada promedio’)xlabel(’t [seg]’)ylabel(’x1’)

subplot(222),plot(t,x(:,2),’k’)title(’Tension normalizada promedio’)xlabel(’t [seg]’)ylabel(’x2’)

% parametrosw0 = 1.881e3;w1 = 1.6667e3;b = 106.06;

% punto de equilibrioUe = 0.8;X2e = b/w0/(1-Ue);

yy = x(:,2);

uusl = x(:,3)+ 0.45*w0*(1-x(:,3)).*(1-x(:,3))/b.*(X2e-yy);

for i = 1:length(t),if uusl(i) >= 1

uu(i) = 1;elseif uusl(i) <= 0

uu(i) = 0;else

uu(i) = uusl(i);endend

subplot(223),plot(t,uu,’k’)title(’Relacion de trabajo’)xlabel(’t [seg]’)ylabel(’u’)axis([0 tf -0.1 1.1])

subplot(224),plot(t,yy,’k’)title(’Tension de salida’)xlabel(’t [seg]’)ylabel(’y’)

% fin de sboostex.m

210 SINTESIS DE COMPENSADORES NO LINEALES G(·)

Listado 8.2: Modelo del convertidor Boost y regulador PI no lineal boostext.m

function dx = boostext(t,x)%% modelo promedio de un convertidor regulado mediante un PI no lineal,% obtenido a partir del metodo de la linealizacion extendida.%

% parametrosw0 = 1.881e3;w1 = 1.6667e3;b = 106.06;

% valor del control en el equilibrioUe = 0.8;

% valor de la salida en el equilibrioX2e = b/w0/(1-Ue);

% saliday = x(2);

% calculo del control (sin limitar entre 0 y 1)usl = x(3)+ 0.45*w0*(1-x(3))*(1-x(3))/b*(X2e-y);

% limitadorif usl >= 1

u = 1;elseif usl <= 0

u = 0;else

u = usl;end

dx = [-w0*x(2)+u*w0*x(2)+b;w0*x(1)-w1*x(2)-u*w0*x(1); % modelo0.54*w0*w0*(1-x(3))*(1-x(3))*(1-x(3))/(1.4142*pi*b)*(X2e-y)];

% fin de boostext.m

8.2 DISEÑO DE REGULADORES NO LINEALES DEL TIPO P, PI Y PID MEDIANTE LINEALIZACIÓN EXTENDIDA 211

Los Listados 8.1 y 8.2 simulan la respuesta en lazo cerrado del convertidor Boost promedio.Los valores numéricos de los parámetros son:

ω0 = 1,811 · 103; ω1 = 1,6667 · 103; b = 106,06; U = 0,8;

con un valor de equilibrio para la salida promedio de:

Y (0,8) = Z2(0,8) = 0,2819.

Las gráficas mostradas en la Figura 8.2 presentan la respuesta de la tendión de salida prome-dio (normalizada) del sistema controlado, la respuesta de las variables de estado y de la relaciónde trabajo (entrada). Se observa como las variables tienden a sus valores deseados.

t

El siguiente ejemplo está desarrollado a manera de ilustración de undiseño completo, incluyendo además todo el controlador PID lineal parame-trizado y su correspondiente implementación no lineal, en lazo cerrado, enMatlab (R).

Matlab 8.2: Control de altura de nivel de líquido en un conjunto de tanquesdispuestos en cascadaConsidere el Modelo 15 , en la página 19, dado por las siguientes ecuaciones

x1 = −c

A

√x1 +

1

Au

...

xi = −c

A

√xi +

c

A

√xi−1; i = 2, 3, . . . , n

y = xn

(1.34*)

Dado un valor constante u = U , el punto de equilibrio del sistema es:

u = U ; xi(U) = Xi(U) =U2

c2; i = 1, 2, . . . , n ;

y(U) = Y (U) =U2

c2

(1.35)

El modelo linealizado del sistema dinámico, alrededor de este punto de equilibrio genérico,está dado por:

x1δ = −c2

2AUx1δ +

1

Auδ

xiδ = −c2

2AUxiδ +

c2

2AUx(i−1)δ ; i = 1, . . . , n

donde :

xiδ = xi −Xi(U) = xi −U2

c2; uδ = u− U ; yδ = y −

U2

c2

Tomando transformadas de Laplace de cada una de las ecuaciones diferenciales linealesanteriores, así como en la ecuación de salida, obtenemos:

x1δ(s) =1

A

uδ(s)

s+ c2

2AU

xiδ(s) =c2

2AU

x(i−1)δ(s)

s+ c2

2AU

; i = 2, . . . , n

ynδ(s) = xnδ(s)

212 SINTESIS DE COMPENSADORES NO LINEALES G(·)

Figura 8.3: Diagramas de Nyquist del sistema de tanques en cascada para diferentesvalores de n

A partir de este conjunto de relaciones resulta fácil eliminar las transformadas de Laplace delas variables de estado. Se obtiene, sin mayor dificultad, la función de transferencia de la familiade sistemas linealizados:

GU (s) =yδ(s)

uδ(s)=

K/Un−1

(s+ τ/U)n

donde:

K =1

A

(c2

2A

)n−1

; τ =c2

2A

Para calcular las ganancias de un controlador PID que logre regular el comportamiento de lafamilia de sistemas linealizados debe ser, necesariamente, n ≥ 3. En la Figura 8.3 se muestranlos gráficos de Nyquist para las funciones de transferencia del sistema de tanques linealizados,para los valores n = 1, 2, 3, 4. El resto de los valores de los parámetros son: U = 2,5, c = 1,A = 0,5.

Recordando el procedimiento ilustrado en la Sección 5.2, es sencillo darse cuenta que paravalores de n ≥ 3 se puede apreciar que, efectivamente, existen cortes del gráfico con el eje real.Sólo en tales casos (n ≥ 3) podremos calcular los valores de la ganancia última K0 y del períodoúltimo P0.

El cálculo de la frecuencia de corte se hace sobre la base de la siguiente relación, ver (5.1):

arg GU (jω0(U)) = argK/Un−1

(jω0(U) + τ/U)n= −π

de la cual se deriva inmediatamente que:

−n tan−1

[ω0(U)

τ/U

]= −π ⇒ ω0(U) =

τ

Utan

(πn

)

8.2 DISEÑO DE REGULADORES NO LINEALES DEL TIPO P, PI Y PID MEDIANTE LINEALIZACIÓN EXTENDIDA 213

El período último está dado entonces por:

P0(U) =2π

ω0(U)=

U

τ tan(

πn

)El módulo de la función de transferencia para el valor obtenido de la frecuencia angular se

calcula como sigue:

|GU (jω0(U))| =∣∣∣∣ K/Un−1

(jω0(U) + τ/U)n

∣∣∣∣ = K/Un−1√ω2

0(U) + (τ/U)2

=K/Un−1[√

(τ/U)2 tan2(

πn

)+ (τ/U)2

]n =KU

τn secn(

πn

)La ganancia última resulta:

K0(U) =τn secn

(πn

)KU

Las ganancias del controlador PID lineal que estabiliza la familia de sistemas linealizadosparametrizados por el punto de equilibrio se obtienen de la Tabla 5.2, página 120, dadas por:

K1(U) =0,6τn

KUsecn

(πn

);

K2(U) =0,6

π

τn−1 tan(

πn

)secn

(πn

)KU2

;

K3(U) =0,15πτn−1 secn

(πn

)Ktan

(πn

)Así el regulador no lineal del tipo PID está dado por:

z(t) =0,6

π

τn−1 tan(

πn

)secn

(πn

)Kz2(t)

e(t);

u(t) = z(t) +0,6τn

Kz(t)secn

(πn

)e(t) +

0,15πτn−1 secn(

πn

)K tan

(πn

) de(t)

dt

Tome en cuenta que el error y su derivada de(t)/dt están dados por:

e(t) = Y (U)− y(t) = Xn(U)− xn(t) =U2

c2− xn(t) (8.6)

y

de

dt=

dY (U)

dt−

dy(t)

dt= 0−

dxn(t)

dt=

c

A

√xn −

c

A

√xn−1 (8.7)

(Note que, idealmente, estamos asumiendo que se puede medir la derivada del error e(t), es decir,disponemos también de la medición del estado xn−1. Recuerde el comentario que hicimos sobrelos controladores PD en la Sección 5.2.)

El diagrama de bloques de la Figura 8.4 muestra el esquema de control no lineal propuesto.Con el objeto de ilustrar el funcionamiento del controlador PID no lineal que hemos desarrolladose ha realizado una simulación numérica en Matlab (R). La Figura 8.5 muestra las respuestas delas alturas de líquido en cada uno de los tanques cuando el flujo de entrada de líquido al primertanque obedece una ley de control del tipo PID no lineal. Los programas utilizados para estassimulaciones se muestran en los Listados 8.3 y 8.4.

El esquema propuesto es suficientemente electivo aún en la presencia de limitaciones natu-rales impuestas a la magnitud de la variable de control. Así por ejemplo, si acotamos el valor deu, en el programa de simulación anterior, a valores que no sobrepasen una cierta cota dada porumax, entonces el sistema controlado funcionará temporalmente, durante el período que subsistala condición de saturación, en lazo abierto. Las simulaciones numéricas realizadas, presentadasen la Figura 8.6, demuestran que a pesar de perderse la realimentación durante un período signi-ficativo de tiempo por efecto de la saturación, el controlador aún tiene éxito en estabilizar la salidadel sistema al punto de equilibrio requerido, esto gracias al comportamiento natural del sistema.

t

214 SINTESIS DE COMPENSADORES NO LINEALES G(·)

j- - - -

6

e(t) u(t)x1 = − c

A

√x1 + 1

Au

xi = − cA

√xi + c

A

√xi−1

i = 2, 3, . . . , ny = xn

y = xn(t)Y (U) z = 0,6π

τn−1 tan( πn

) secn( πn

)

Kz2 e

u = z + 0,6τn

Kzsecn( π

n)e

+0,15πτn−1 secn( π

n)

K tan( πn

)dedt

-+

Figura 8.4: Diagrama de bloques en lazo cerrado de un sistema de tanques reguladomediante un PID no lineal

Figura 8.5: Simulación del comportamiento de un sistema de tres tanques en cascadacontrolados por intermedio de un PID no lineal

8.2 DISEÑO DE REGULADORES NO LINEALES DEL TIPO P, PI Y PID MEDIANTE LINEALIZACIÓN EXTENDIDA 215

Listado 8.3: Programa de simulación del sistema de tanques controlados mediante unPID no lineal stanqext.m

% stanqext.m%% Programa que simula la respuesta en lazo cerrado con un PID no lineal% disenado mediante el metodo de la linealizacion extendida.%

% parametros de simulaciont0 = 0;tf = 40;x0 = [1 1 1 2];

% simulacion[t,x] = ode23(’tanqext’,[t0 tf],x0);

subplot(211),plot(t,x(:,1),’k’,t,x(:,2),’k--’,t,x(:,3),’k:’)title(’Alturas de los tanques’)xlabel(’t [seg]’)ylabel(’x_1, x_2, x_3 [m]’)text(5,12.5,’x_1’)text(6.4,10,’x_2’)text(11,8,’y = x_3’)

% parametrosn = 3;c = 1;A = 0.5;tau = c^2/(2*A);K = 1/A*(tau)^(n-1);

% punto de equilibrioUe = 2.5;Ye = Ue^2/c^2;

yy = x(:,3);

ery = Ye - yy;

uu = x(:,4)+0.6*tau^n/K/x(:,4)*sec(pi/n)^n*ery+0.15*tau^(n-1)*sec(pi/n)^n/K/tan(pi/n)*...(c/A*sqrt(x(:,3))-c/A*sqrt(x(:,2)));

subplot(212),plot(t,uu,’k’)title(’Flujo de entrada’)xlabel(’t [seg]’)ylabel(’u [m^3/seg]’)

% fin de stanqext.m

216 SINTESIS DE COMPENSADORES NO LINEALES G(·)

Listado 8.4: Modelo del sistema de tanques e implementación del controlador PID nolineal tanqext.m

function dx = tanqext(t,x)%% modelo de un manipulador robotico regulado mediante un controlador% y un observador no lineales, obtenidos a partir del metodo de la% linealizacion extendida.

% parametrosn = 3;c = 1;A = 0.5;tau = c^2/(2*A);K = 1/A*(tau)^(n-1);

% punto de equilibrioUe = 2.5;Ye = Ue^2/c^2;

y = x(3);

ery = Ye - y;

u = x(4)+0.6*tau^n/K/x(4)*sec(pi/n)^n*ery+0.15*pi*tau^(n-1)*sec(pi/n)^n/K/tan(pi/n)*...(c/A*sqrt(x(3))-c/A*sqrt(x(2)));

dx = [-c/A*sqrt(x(1))+1/A*u;-c/A*sqrt(x(2))+c/A*sqrt(x(1));-c/A*sqrt(x(3))+c/A*sqrt(x(2));0.6/pi*tau^(n+1)*tan(pi/n)*sec(pi/n)^n/K/x(4)^2*ery];

% fin de tanqext.m

Figura 8.6: Simulación del comportamiento de un sistema de tres tanques en cascadacontrolados por intermedio de un PID no lineal

8.3 COMPENSADORES NO LINEALES BASADOS EN EL ESQUEMA CONTROLADOR-OBSERVADOR CLÁSICO 217

8.3. Compensadores no lineales basados en el esquemacontrolador-observador clásico

Nuestro objetivo ahora es el de extender al caso no lineal el método de di-seño de compensadores lineales presentado en la Sección 5.4. La idea prin-cipal en lograr esta extensión es, de nuevo, proponer un esquema de compen-sación no lineal que tenga la misma forma que el esquema del controlador-observador. Para validar el diseño se procede a linealizar el controlador nolineal propuesto y se identifican las linealizaciones de cada bloque con lasque se presentaron en el esquema linealizado.

Finalmente, nos aseguraremos de que las linealizaciones de los distintosbloques, en el esquema no lineal, coincidan con los bloques compensadoresque hemos obtenido para el sistema linealizado. El procedimiento nos per-mitirá generar las relaciones generales y las condiciones de equilibrio quelogran tal identidad.

Proponemos un esquema de compensación general practicamente idénti-co al esquema lineal. Se especifican cada uno de los bloques compensadoresdinámicos como un sistema n−1 dimensional no lineal de tipo general, cuyassalidas pueden ahora exhibir dependencia de la entrada.

Los subsistemas compensadores propuestos serán de la forma:

zu = χu(zu, u)yu = ηu(zu, u) ,

zy = χy(zy, y)yy = ηy(zy, y)

(8.8)

El esquema general controlador-observador no lineal, basado en la inter-conexión de estos sistemas compensadores, se presenta en la Figura 8.7.(Compare con el esquema presentado en la Figura 5.9.)

El conjunto de ecuaciones que conforman el sistema en lazo cerrado,sobre las cuales aplicaremos el proceso de linealización, están dadas por elsiguiente conjunto de 3n− 2 ecuaciones diferenciales: x

zu

zy

=

f(x(t), u(t))χu(zu, u)χy(zy, y)

(8.9)

donde

y = h(x(t))u = ηu(zu, u) + ηy(zy, y)

(8.10)

Analicemos por etapas el esquema no lineal (8.8). Consideremos primeroel problema particular de encontrar el bloque compensador no lineal dellazo de realimentación más interior del esquema propuesto (8.8), es decir,

zu = χu(zu, u)yu = ηu(zu, u)

218 SINTESIS DE COMPENSADORES NO LINEALES G(·)

l l- - -

-

66

hola1

hola2

v u

-

++

-

yu

yy

hola3

hola4

hola5

hola6

y

Figura 8.7: Esquema no lineal controlador-observador

Supongamos conocida la función de transferencia de la versión lineal-izada, Huδ(U, s), de este bloque alrededor de su punto de operación, el cualse especifica además como

u = U ; zu(U) = Zu(U) ; yu(U) = ηu(Zu(U), U) = Yu(U) ,

y satisface

χu(Zu(U), U) = 0 .

La función de transferencia de la linealización de este subsistema alrede-dor del punto de equilibrio está dada por:

yuδ(s)uδ(s)

= Huδ(U, s) =

=

[(∂ηu

∂zu

)[sI −

(∂χu

∂zu

)]−1(∂χu

∂u

)+(

∂ηu

∂u

)]Zu(U),U

(8.11)

Note que de aquí en adelante hemos tratado de simplificar la notación nece-saria para indicar que todo el proceso de linealización descansa sobre laevaluación en el punto de operación particular (Zu(U), U). Para llegar a laexpresión (8.11) recuerde que el sistema x = Ax + Bu, y = Cx + Du tienepor función de transferencia G(s) = C(sI −A)B + D.

Asumamos, adicionalmente, que la función de transferencia Huδ(U, s)

8.3 COMPENSADORES NO LINEALES BASADOS EN EL ESQUEMA CONTROLADOR-OBSERVADOR CLÁSICO 219

tiene la siguiente expresión explícita:

yuδ(s)uδ(s)

= Huδ(U, s) =

=nu(n−1)(U)sn−2 + nu(n−2)(U)sn−3 + . . . + nu2(U)s + nu1(U)

sn−1 + αn−1sn−2 + . . . + α2s + α1+ nun(U)

(8.12)

Note que el denominador es de grado n − 1 como habiamos supuesto aldiscutir el caso lineal.

Al comparar la expresión (8.12) con la expresión linealizada (8.11), iden-tificamos inmediatamente la siguiente relación:

nun(U) =

[∂ηu

∂u

∣∣∣∣Zu(U),U

](8.13)

Con el objeto de continuar el proceso de contratación e identificaciónde cada término, haremos ahora una simplificación drástica e importante,la cual no conlleva sin embargo pérdida de generalidad. Vamos a suponeruna estructura lineal en “forma canónica compañera” para la función vec-torial χu(zu, u). Esto se corresponde con la idea de obtener realizaciones enespacio de estado del compensador linealizado en forma canónica de contro-labilidad. Esto no impide que se pueda identificar la función de salida delbloque compensador como una función no lineal (haciendo, por tanto, todoel bloque compensador de naturaleza no lineal).

En efecto, supongamos entonces que χu(zu, u) es de la forma:

χu(zu, u) =

zu2

zu3

...−α1zu1 − α2zu2 − . . .− αn−1zu(n−1)

+

00...01

u

220 SINTESIS DE COMPENSADORES NO LINEALES G(·)

Puesto que:

∂χu(zu, u)∂u

= bu =

00...01

;

∂ηu(zu, u)∂zu

=[∂ηu(zu, u)

∂zu1

∂ηu(zu, u)∂zu2

. . .∂ηu(zu, u)∂zu(n−1)

];

∂χu(zu, u)∂zu

= Au(U) =

0 1 0 . . . 00 0 1 . . . 0...

......

. . ....

0 0 0 . . . 1−α1 −α2 −α3 . . . −αn−1

,

se tendrá como válida la siguiente expresión:[(∂ηu

∂zu

)[sI −

(∂χu

∂zu

)]−1(∂χu

∂u

)]Zu(U),U

=

[(∂ηu(zu, u)∂zu(n−1)

)sn−2 +

(∂ηu(zu, u)∂zu(n−2)

)sn−3 + . . . +

(∂ηu(zu, u)

∂zu1

)]Zu(U),U

sn−1 + αn−1sn−2 + . . . + α2s + α1

(8.14)

Comparando esta última expresión con la parte correspondiente de lafunción de transferencia (8.12), obtenemos las siguientes relaciones:(

∂ηu(zu, u)∂zui

∣∣∣∣Zu(U),U

)= nui(U); i = 1, 2, . . . , n− 1 (8.15)

Las relaciones (8.13) y (8.15) permitirán encontrar la expresión de lafunción no lineal de salida ηu(·) del compensador interno. Antes de pro-ceder a encontrar esta función no lineal de salida del bloque compensador,hagamos unas breves consideraciones sobre el punto de equilibrio de estesubsistema.

Tenemos en equilibrio u = U . Note, sin embargo, que u representa real-mente un error definido en relación a la señal de referencia v. El estado delcompensador en condiciones de equilibrio cumple:

zu2(U)zu3(U)

. . .−α1zu1(U)− α2zu2(U)− . . .− αn−1zu(n−1)(U)

=

00

. . .0U

8.3 COMPENSADORES NO LINEALES BASADOS EN EL ESQUEMA CONTROLADOR-OBSERVADOR CLÁSICO 221

en consecuencia:

zu1(U) =U

α1

Podemos suponer que esta igualdad es una particularización de unarelación semejante, válida en condiciones arbitrarias diferentes a las deequilibrio. Es decir, vamos a asumir que

zu1(u) =u

α1⇒ u = α1zu1

Se establece entonces, sin mayores dificultades, que el conjunto de rela-ciones (8.15) surge, en realidad, del siguiente conjunto de ecuaciones enderivadas parciales:

∂ηu(zu, u)∂zui

= nui(α1zu1); i = 1, 2, . . . , n− 1 (8.16)

A partir de (8.16) obtenemos, inmediatamente, como solución posiblepara la función no lineal de salida, ηu, la siguiente expresión

ηu(zu, u) = Ψ(zu1, u) + nu2(α1zu1)zu2 + nu3(α1zu1)zu3

+ . . . + nu(n−1)(α1zu1)zu(n−1) (8.17)

donde Ψ(zu1, u) es una función arbitraria de las variables zu1 y u, definidapor la expresión:

Ψ(zu1, u) = nu1(α1zu1)zu1 −1α1

nu1(α1zu1)u +∫ u

0

[nun(σ) +

1α1

nu1(σ)]

lo cual es fácil verificar, en efecto:

∂ηu(zu, u)∂u

=∂Ψ(zu, u)

∂u= − 1

α1nu1(α1zu1) + nun(u) +

1α1

nu1(u)

= nun(u)

y

∂Ψ(zu1, u)∂zu1

= nu1(α1zu1) +∂nu1(α1zu1)

∂zu1− 1

α1

∂nu1(α1zu1)∂zu1

u

= nu1(α1zu1)

En resumen, el compensador no lineal que conforma el lazo más interiorestaría dado por el siguiente sistema lineal con función de salida no lineal,

222 SINTESIS DE COMPENSADORES NO LINEALES G(·)

dados por:

zu1 = zu2

zu2 = zu3

...zu(n−2) = zu(n−1)

zu(n−1) = −α1zu1 − α2zu2 − . . .− αn−1zu(n−1) + u

yu = nu1(α1zu1)zu1 + nu2(α1zu1)zu2 + . . . + nu(n−1)(α1zu1)zu(n−1)

− 1α1

nu1(α1zu1)u +∫ u

0

[nun(σ) +

1α1

nu1(σ)]

(8.18)

Analicemos por un instante el sistema no lineal (8.18). En condicionesde equilibrio tenemos que yu satisface:

yu(U) =∫ U

0

[nun(σ) +

1α1

nu1(σ)]

dσ =∫ U

0

Hu(σ, 0)dσ

Lo cual dice que el sistema linealizado satisface en equilibrio:

∂yu(U)∂U

=∂ηu(U)

∂U= Hu(U, 0) = lım

s→0Hu(U, s)

cuya justificación proviene, de manera independiente, del teorema del valorfinal.

Usando exactamente el mismo razonamiento podemos encontrar la re-alización en espacio de estado del compensador que conforma el lazo derealimentación externo:

zy = χy(zy, y)yy = ηy(zy, y)

Supongamos que la función de transferencia del subsistema compensa-dor linealizado es de la forma

yyδ(s)yδ(s)

= Hyδ(Y, s) =

=

[(∂ηy

∂zy

)[sI −

(∂χy

∂zy

)]−1(∂χy

∂y

)+(

∂ηy

∂y

)]Zy(Y ),Y

=ny(n−1)(Y )sn−2 + ny(n−2)(Y )sn−3 + . . . + ny2(Y )s + ny1(Y )

sn−1 + αn−1sn−2 + . . . + α2s + α1+ nyn(Y )

8.3 COMPENSADORES NO LINEALES BASADOS EN EL ESQUEMA CONTROLADOR-OBSERVADOR CLÁSICO 223

El compensador no lineal del lazo interno resulta entonces:

zy1 = zy2

zy2 = zy3

...zy(n−2) = zy(n−1)

zy(n−1) = −α1zy1 − α2zy2 − . . .− αn−1zy(n−1) + y

yy = ny1(α1zy1)zy1 + ny2(α1zy1)zy2 + . . . + ny(n−1)(α1zy1)zy(n−1)

− 1α1

ny1(α1zy1)y +∫ y

0

[nyn(σ) +

1α1

ny1(σ)]

(8.19)

En condiciones de equilibrio yy satisface:

yy(Y ) =∫ Y

0

[nyn(σ) +

1α1

ny1(σ)]

dσ =∫ Y

0

Hy(σ, 0)dσ

El diagrama de bloques del esquema compensador demanda entoncesque debe ser cierta la siguiente relación de equilibrio:

−yu(U)− yy(Y ) + V = −yu(U)− yy(Y (U)) + V = U

de donde, la señal constante de referencia que es necesario suministrarpara producir el equilibrio deseado deberá cumplir:

V = yu(U) + yy(Y (U)) + U (8.20)

Continuaremos ahora el Ejemplo 5.3 del manipulador robótico, proponien-do el diseño de un regulador no lineal del tipo controlador-observador.

Matlab 8.3: Compensador no lineal del tipo controlador-observador paraun manipulador robótico (continuación)Las realizaciones en espacio de estado de los compensadores estabilizantes del sistema lineali-zado alrededor del punto de equilibrio resultaron ser:

zuδ = −αzuδ + uδ

yuδ =

(2ζωn −

B

J

)zuδ

zyδ = −αzyδ + yδ

yyδ = −(

2ζωn −B

J

)[c

ncos

(Y

n

)+ αJ

(α−

B

J

)]zyδ

+ J

[ω2

n +

(α−

B

J

)(2ζωn −

B

J

)−

c

nJcos

(Y

n

)]yδ

Observamos inmediatamente que el controlador del lazo más interno es independiente delpunto de operación. Por lo tanto esta parte del compensador estará constituida por un sistemalineal cuya función de salida es también lineal:

zu = −αzu + u

yu =

(2ζωn −

B

J

)zu

224 SINTESIS DE COMPENSADORES NO LINEALES G(·)

Usando el procedimiento expuesto anteriormente podemos escribir el compensador no linealmás externo de la manera siguiente:

zy = −αzy + y

yy =

(2ζωn −

B

J

)[c

ncos(αzy

n

)+ αJ

(α−

B

J

)]zy

+1

α

(2ζωn −

B

J

)[c

ncos(αzy

n

)+ αJ

(α−

B

J

)]y

+

∫ y

0

J

[ω2

n +

(α−

B

J

)(2ζωn −

B

J

)−

c

nJcos(σn

)]−

1

α

(2ζωn −

B

J

)[c

ncos(σn

)+ αJ

(α−

B

J

)]dσ

Resolviendo la integral∫ y0 ·dσ y simplificando obtenemos:

yy = −(

2ζωn −B

J

)[c

ncos(αzy

n

)+ αJ

(α−

B

J

)](zy −

y

α

)+ Jω2

ny − c

1 +

1

α

(2ζωn −

B

J

)sin( yn

)De la condición de equilibrio (8.20) obtenemos:

V = nJω2n sin−1

(U

n

)= Jω2

nY

El siguiente diagrama de bloques ilustra la disposición del esquema de compensación nolineal

Los gráficos siguientes muestran la respuesta del brazo controlado por el regulador no linealdel tipo controlador-observador que hemos derivado en éste ejemplo:

El programa utilizado en la generación de los gráficos anteriores se muestra a continuación.t

8.4. Ejercicios propuestos

Ejercicio 8.1: Linealización del regulador PID no linealVerifique la linealización (8.3) del PID no lineal dado por (8.1).

(?)

Ejercicio 8.2: Esquema no lineal de ontrolador-observador: sistema de sus-pensión magnética

Complete el diseño del Ejemplo 5.4, página 131. (??)

Ejercicio 8.3: Esquema no lineal de ontrolador-observador: TRCAComplete el diseño no lineal para el Ejemplo 5.5, desarrollado en la página 132.

(??)

8.5. Resumen del capítulo y Lecturas adicionales

Se presentaron dos esquemas de compensación no lineal, obtenidos através del método de la linealización extendida. Los esquemas estudiados

8.5 RESUMEN DEL CAPÍTULO Y LECTURAS ADICIONALES 225

k k- - -

-

66

v u

-

++

-

yu

yy

hola3

hola4

hola5

hola6

y

hola7

hola1

hola2

hola3

Manipulador Robotico

Figura 8.8: Esquema de control no lineal controlador-observador para el manipuladorrobótico

son un PID no lineal y un controlador-observador no lineal basado en elesquema clásico.

El primer método corresponde a una generalización directa del PID li-neal parametrizado presentado en el Capítulo 5. El segundo esquema esequivalente al del controlador-observador clásico; sin embargo, para su ob-tención hicimos uso de algunas herramientas tales como la forma canónicade controlabilidad y el teorema del valor final. Estos esquemas reposan so-bre las funciones de transferencia G(s, U) de las familias lineales parametrizadasrespecto a un punto de equilibrio genérico (X, U, Y ).

Lecturas recomendadas

226 SINTESIS DE COMPENSADORES NO LINEALES G(·)

Figura 8.9: Respuesta en lazo del manipulador robótico, regulado mediante una ley nolineal basada en el controlador-observador clásico

Parte IIIControl No Lineal

de Sistemas No Lineales:Linealización Exacta

227

228 CONTROL NO LINEAL DE SISTEMAS NO LINEALES: LINEALIZACIÓN EXACTA

Durante la década de los ochenta, se han logrado avances significativosen la comprensión de los sistemas de control dinámicos no lineales. Estosavances han hecho posible la solución definitiva de problemas que ocuparonla atención de los investigadores durante muchos años. Algunas dificul-tades asociadas con los problemas de diseño de controladores para sistemasno lineales han sido esclarecidas y su razón fundamental de ser ha logradoun tratamiento general con explicaciones que se han beneficiado de la intu-ición que se posee a partir del caso lineal. Aunado a esto, el desarrollo sinprecedentes de las herramientas computacionales y su enorme velocidadde procesamiento ha permitido el tratamiento sistemático del diseño, másexigente, de controladores para sistemas no lineales. En particular, debe-mos resaltar que el desarrollo de los paquetes de manipulación simbólicaha permitido poner al alcance de ingenieros y estudiantes, las técnicas dediseño de controladores para sistemas no lineales.

Como complemento a los dos métodos precedentes, vamos a introducirel método de la linealización exacta. Estudiaremos primeramente elmétodo de par o control calculado, proveniente del área de la robótica, enel Capítulo 9. Luego discutiremos sobre una clase de sistemas representa-dos naturalmente bajo una forma canónica controlable. Sistemas bajo estaforma pueden ser transformados en sistemas lineales con solo hacer unatransformación dependiente de los estados en el espacio de los controles. Es-ta transformación directa en general no es posible. Una posibilidad es llevarel sistema no lineal original a la forma canónica propuesta, mediante unatransformación no lineal de los estados. En el Capítulo 10 se definen lascondiciones para que tal tranformación sea posible. Esto requerirá estudi-ar algunas herramientas básicas de geometría diferencial. Se introduciránconceptos y procedimientos algorítmicos asociados a la derivada direccional,los corchetes de Lie, el adjunto, o el Teorema de Frobenius. Como veremos,será necesario encontrar una salida o función del sistema tal que al difer-enciarla respecto al tiempo, la entrada solo aparece en la n-ésima derivada(n corresponde al número de estados). Aún si estamos interesados en unasalida donde el control aparece en r-ésima derivada (r < n) será posible lin-ealizar el sistema entrada-salida, con la salvedad que ahora debemos tomaren cuenta lo que se conoce con el nombre de dinámica remanente o dinámicade los ceros. Este tema ocupará nuestra atención en el Capítulo 11. Tratare-mos finalmente de manera breve, en el Capítulo 12, los observadores nolineales cuya dinámica del error de observación es perfectamente lineal.

Esta parte es relativamente independiente de las dos anteriores, sin em-bargo, requiere sólidos conocimientos de la teoría de control lineal y de, almenos, el diseño de controladores por realimentación del vector de esta-dos. Sería muy útil que el lector se preocupe por comparar los controladoresobtenidos, aplicándo las diferentes estrategias de diseño a un mismo ejem-plo, de tal manera que pueda por si mismo entender las fortalezas y debili-dades de cada una de las estrategias presentadas a lo largo del texto.

9

Introducción a lalinealización exacta

Foto

Estudiaremos una clase de sistemas no lineales posible de ser lin-ealizada en forma exacta, sin recurrir a aproximaciones, median-te una realimentación no lineal del vector de estado. Esta reali-mentación corresponde a una transformación, dependiente de losestados, en el espacio de los controles. Presentaremos una for-ma canónica controlable para la clase de sistemas no lineales quepueden ser linealizados exactamente por simple inspección.

9.1. Motivación: método del control calculado

Los robots constituyen una de las clases de sistemas no lineales másextensamente estudiados, tanto en la práctica como en el desarrollo teóri-co [KS03]. Los ingenieros e investigadores que trabajan en el mundo de larobótica llegaron a obtener de manera empírica leyes de control altamentesofisticadas basadas directamente en los modelos no lineales de dichos sis-

229

230 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

Figura 9.1: Diagrama de bloques del sistema aro – anillo

temas. El método más conocido, el cual constituye la base del enfoque delinealización exacta, es el conocido como método del torque o control cal-culado.Gran parte del

trabajo originalen control nolineal se hizo enel área derobótica

En este capítulo daremos algunos ejemplos de diseño de ese tipo de con-troladores no lineales que se pueden llevar a cabo de manera directa, esdecir, casi por inspección del modelo no lineal. Como veremos tal proce-dimiento de diseño resulta en un sistema en lazo cerrado que es perfecta-mente lineal, sin que en el proceso de diseño hayamos involucrado, en formaalguna, un proceso de aproximación de las ecuaciones originales. Estos con-troladores se reinterpretarán, más adelante, como provenientes de ciertastransformaciones, dependientes del estado, llevadas a cabo en el espacio delos controles.

Constataremos que el método propuesto no es del todo general y que unaEl método decontrol calculadose aplicadirectamente soloa una claserestringida desistemas

gran cantidad de casos no pueden beneficiarse de este enfoque tan sencillo.Aquellos casos que no pueden ser resueltos por esta técnica ameritarán en-tonces un tratamiento que debe explorar también la posibilidad de realizartransformaciones en el espacio de los estados.

Ejemplo 9.1: Control del movimiento de un anillo sobre un aro giratorioConsideremos el problema de controlar los movimientos del aro que se desliza sobre un anillo querota sobre su eje vertical, ya tratado anteriormente en el capítulo 4. Este sistema en variables deestado está dado por: Modelo 16 , en la página 19,

x1 = x2

x2 = −g

asenx1 + u senx1 cosx1

(1.36*)

donde la variable de control u debía ser, necesariamente, positiva. La figura 9.1 representa, me-diante un diagrama de bloques, el sistema no lineal en lazo abierto.

A primera vista, este sistema sólo exhibe no linealidades en la ecuación donde aparece lavariable de control u. La cadena de dos integradores mostrada en la Figura 9.1, sin embargo, essugestiva de una estructura prevalecientemente lineal.

Estos hechos pudieran ayudarnos enormemente, si por un momento nos atrevemos a pensarde qué manera pudieramos “destruir”, o reemplazar por elementos lineales, las no linealidadespresentes en el sistema mediante una especificación apropiada de la variable de control u.

Definamos la entrada auxiliar v como

v = −g

asen(x1) + u sen(x1) cos(x1) (9.1)

No hay duda que el sistema obtenido es perfectamente lineal desde esta nueva entrada v, esdecir,

x1 = x2

x2 = v

9.1 MOTIVACIÓN: MÉTODO DEL CONTROL CALCULADO 231

Figura 9.2: Diagrama de bloques del sistema “linealizado”

El sistema (1.36*) se ha reducido simplemente a dos integradores dispuestos en cascada, talcomo se muestra en la figura 9.2.

Evidentemente el problema de estabilizar la posición del anillo a un valor deseado X, luceahora trivial: la especificación de una ley de control por realimentación lineal del estado v =−K1(x1 −X)−K2x2, lograría tal efecto sin mayores complicaciones.

De hecho, la ley de control1 A la entrada vtambién se lellama entradaauxiliar

v = −2ζωnx2 − ω2n(x1 −X) (9.2)

produce un sistema lineal estable en lazo cerrado

x1 = x2

x2 = −2ζωnx2 − ω2n(x1 −X) ,

(9.3)

cuyas trayectorias convergen asintóticamente al punto de equilibrio deseado, dado por x1 = X,x2 = 0. El control se

obtiene sin hacerningunaaproximación

El control original u que debemos utilizar para sintetizar la entrada auxiliar, se obtiene a partirde (9.1) y (9.2), haciendo

g

asen(x1) + u sen(x1) cos(x1) = −2ζωnx2 − ω2

n(x1 −X) ,

de donde:

u =1

sen(x1) cos(x1)

[v −

g

asen(x1)

](9.4)

Sustituyendo v mediante la relación (9.2), se obtiene

u =1

sen(x1) cos(x1)

[−2ζωnx2 − ω2

n(x1 −X)−g

asen(x1)

](9.5)

la cual ciertamente constituye una ley de control basada en realimentación no lineal del vectorde estado .

La relación (9.4) puede verse como una transformación de la coordenada Transformaciónen el espacio delos controles,dependiente delestado

del control u en la nueva entrada v, la cual depende de las componentes delestado. Mediante una redefinición de la variable de control u, en términosde las variables originales y de operaciones no lineales sobre las compo-nentes del estado, obtenemos un nuevo canal de control v, desde el cualel sistema luce perfectamente lineal. Esto nos dice que hemos encontradouna nueva forma de representar la acción de control, representada por v,desde donde el sistema exhibe un comportamiento perfectamente lineal sinaproximaciones.

Tal transformación tiene entonces la enorme virtud de eliminar las nolinealidades presentes en el sistema de una manera limpia y tajante, sin

1Note que aquí no estamos trabajando con el concepto de variables incrementales. Se pro-pone directamente una ley que estabiliza al sistema lineal estudiado al punto de equilibriox(X) = [X, 0]T .

232 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

acudir a aproximaciones de género alguno. El método que acabamos de des-cribir recibe el nombre de método del control (o par) calculado y fué conocidoy difundido ampliamente por quienes trabajaban en el área de robótica. Porello, en algunos libros aparece con el nombre de “método del torque calcula-do” (computed-torque method en inglés), término utilizado por primera vezpor B.R. Markiewicz en [Mar73], ver también [Pau82, AS86, SL91, KS03],Método del

torque o controlcalculado

precisamente porque el torque necesario para llevar el sistema al punto deequilibrio se calcula de manera directa por simple inspección de las ecua-ciones. En el ejemplo presentado, la razón de este nombre se explica in-mediatamente si en lugar del procedimiento descrito hubiésemos procedidoa comparar directamente las ecuaciones (1.36*) y (9.3). Es evidente que ladinámica deseada en (9.3) se obtiene de igualar en ambas ecuaciones losmiembros derechos de las ecuaciones diferenciales y proceder luego a “cal-cular” el control necesario que convierte a (1.36*) en (9.3).

Sin embargo, es necesario recalcar que este método, así como el métodode la lineación que presentaremos en el próximo capítulo, presenta restric-ciones en su aplicación debido a las posibles singularidades que puedenaparecer.

Ejemplo 9.1: (Continuación) Control del movimiento de un anillo sobre unaro giratorio: restricciones de la estrategia, singularidadesNuestra alegría quizás puede verse empañada por un hecho significativo, la aparición de unaposible singularidad en la definición del control. Esta “singularidad” surge debido a la indefinicióndel control cuando la variable x1 adopta los valores:En este método

aparecensingularidadesdebidas a la“indefinición” delcontrol

x1 = 0,π

2, π, etc.

Note que para tales valores singulares, el sistema pierde el canal de control pues el factor queprecede a u en (1.36)*) se hace cero justamente en estos valores.

Desde el punto de vista físico era de esperar ciertos problemas de controlabilidad cuando laposición del anillo adopta tales valores. Ciertamente, si el anillo se encuentra ubicado exactamenteen la posición más baja del aro, la velocidad de rotación del aro no afecta para nada la posición delanillo sobre el aro. Lo mismo sucede cuando éste se encuentra girando describiendo un círculode radio máximo o en la posición superior del aro.

Esta discusión nos permite inferir que una política de control lineal-izante, tal como la dada por la expresión (9.5), tiene ciertas restricciones.Sin lugar a dudas, su aplicación puede llevar a una indefinición de la ac-ción de control (haciéndola, por ejemplo, infinitamente grande) cuando lastrayectorias del sistema se acercan a tales singularidades. Es muy dificilen general, saber si para ciertas condiciones iniciales dadas, las trayecto-rias del sistema, en respuesta a la ley de control antes especificada, puedenacercarse a una singularidad o no. Un fenómeno no lineal asociado a estetipo de situaciones es el llamado “sobredisparo” o peaking phenomenon enEl fenómeno de

“peaking” escomún ensistemas nolinealescomplejos

inglés, asociado al problema de que debido a los valores de las gananciasdel controlador, las trayectorias del sistema se alejan demasiado, desde elcomienzo, del punto de equilibrio deseado, haciéndose incluso inestables,ver, por ejemplo, [SK91].

9.1 MOTIVACIÓN: MÉTODO DEL CONTROL CALCULADO 233

Figura 9.3: Simulación numérica del sistema aro-anillo controlado

Matlab 9.1: (Continuación) Control del movimiento de un anillo sobre unaro giratorio: simulación numéricaEn la figura 9.3 se muestra la respuesta del anillo controlado, el cual se desea estabilizar a laposición de X = 0,7854 [rad]. Partiendo de una condición inicial cercana a la singularidad (x1 =0,1) se obtiene un valor del cuadrado de la velocidad angular del aro (control) significativamentealto. El mismo resultado se obtiene a medida que la condición inicial se acerca al valor singularx1 = π/2 = 1, 57079 . . ..

El gráfico siguiente, ver Figura 9.4 muestra un conjunto de trayectorias de la posición angulardel anillo sobre el aro para distintas condiciones iniciales. Se presentan también las trayectoriascorrespondientes a la variable de control.

Los programas sarole.m y arole.m, Listados 9.1 y 9.2, permiten simular el comportamientocontrolado del sistema no lineal (1.36*) sujeto a la ley de control linealizante (9.5) restringida avalores positivos. Para ejecutar la simulación en Matlab (R), se escribe en la línea de comandos>sarole

t

Matlab 9.2: Control de un manipulador robótico mediante el método delcontrol calculadoConsidere el manipulador robótico de una sola unión, Modelo 9 , en la página 15, cuyas ecua-ciones no lineales están dadas por:

x1 = x2

x2 = −B

Jx2 −

c

Jsen(x1

N

)+

1

Ju

y = x1

(1.21*)

Este se puede representar mediante el diagrama de bloques mostrado en la Figura 9.5.

234 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

Figura 9.4: Posición angular del anillo y señal de control para diferentes condicionesiniciales

- -- -

66

u

−BJx2 − c

Jsen(x1

N

)+ u

J

x1x2∫ ∫

Figura 9.5: Diagrama de bloques del manipulador robótico

9.1 MOTIVACIÓN: MÉTODO DEL CONTROL CALCULADO 235

Listado 9.1: Programa de simulación del sistema aro-anillo regulado mediante controlcalculado sarole.m

% sarole.m%% Programa de simulacion del sistema% que describe el movimiento de un anillo sobre% un aro giratorio, controlador por una ley% de realimentacion no lineal la cual linealiza% en forma exacta al sistema en lazo cerrado.%

% Parametros de simulacionti = 0;tf = 1;

% Condiciones inicialesx0 = [0.2 0]’;

% Simulacion[t,x] = ode23(’arole’,[ti tf],x0);

% graficasfigure(2)subplot(221),plot(t,x(:,1))title(’Posición angular del anillo sobre el aro’)xlabel(’t [seg]’)ylabel(’x_1 [rad]’)

subplot(222),plot(t,x(:,2))title(’Velocidad angular del anillo’)xlabel(’t [seg]’)ylabel(’x_2 [rad]’)

% parametros del sistemaa = 0.2;g = 9.8;

% punto de equilibrioX1e = 0.7854;

% parametros del controladorwn = 12.83;xi = 0.707;

% ley de controluc = (-2*xi*wn*x(:,2)-wn^2*(x(:,1)-X1e)+g/a*sin(x(:,1)))./(sin(x(:,1)).*cos(x(:,1)));uu = zeros(size(t));for j = 1:length(t)if uc(j)<0

uu(j)=0;else

uu(j) = uc(j);endend

subplot(223),plot(t,uu)title(’Cuadrado de la velocidad angular del aro’)xlabel(’t [seg]’)ylabel(’u [rad^2/seg^2]’)

subplot(224),plot(t,sqrt(uu))title(’Velocidad angular del aro’)xlabel(’t (seg)’)ylabel(’\omega [rad/seg]’)% fin de sarole.m

236 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

Listado 9.2: Simulación del sistema aro-anillo: modelo y observador arole.m

function xdot=arole(t,x)% Sistema aro-anillo% Programa de simulacion: sarole.m%

% parametros del sistemaa = 0.2;g = 9.8;

% punto de equilibrioX1e = 0.7854;

% parametros del controladorwn = 12.83;xi = 0.707;

uc = (-2*xi*wn*x(2)-wn^2*(x(1)-X1e)+g/a*sin(x(1)))/...(sin(x(1))*cos(x(1)));

% solo se toman valores positivos de ucif uc<0

u = 0;else

u = uc;end

% sistema dinamicoxdot = [x(2);

-g/a*sin(x(1))+0.5*u*sin(2*x(1))];% fin de arole.m

9.1 MOTIVACIÓN: MÉTODO DEL CONTROL CALCULADO 237

-- -x1x2∫ ∫v

Figura 9.6: Manipulador robótico transformado a una cadena de dos integradores

Al igual que en el caso anterior este sistema sólo exhibe las no linealidades en la únicaecuación donde aparece la variable de control. Del diagrama de bloques del sistema se puedeinferir nuevamente la presencia de una cadena de dos integradores, la cual sugiere una estructurapreponderantemente lineal.

Al definir una entrada auxiliar v, como

v = −B

Jx2 −

c

Jsen(x1

N

)+u

J,

el sistema resultante es exactamente lineal

x1 = x2

x2 = v(9.6)

La estructura del sistema, desde la nueva entrada v corresponde a una cadena de dos inte-gradores uno a continuación del otro, ver Figura 9.6.

Resulta evidente entonces, a partir de (9.6), que el problema de estabilizar la posición delmanipulador robótico de una sola unión, a un valor deseado X, ha quedado reducido a estabilizar,mediante una ley de realimentación lineal del estado, un sistema lineal representado por el sistematransformado (9.6).

Sin aproximaciones, la ley de control

v = −2ζωnx2 − ω2n(x1 −X) ,

produce un sistema lineal en lazo cerrado dado por:

x1 = x2

x2 = −2ζωnx2 − ω2n(x1 −X)

Así las trayectorias de este sistema controlado se estabilizarán asintóticamente al punto de equi-librio deseado, dado por x2 = 0, x1 = X.

El control original u que debemos utilizar para sintetizar la entrada auxiliar v debe entoncesobtenerse a partir de la relación:

−B

Jx2 −

c

Jsen(x1

N

)+u

J= −2ζωnx2 − ω2

n(x1 −X)

Es decir,

u = −J[2ζωnx2 + ω2

n(x1 −X)−B

Jx2 −

c

Jsen(x1

N

)](9.7)

la cual ciertamente, constituye una ley de control basada en realimentación no lineal del vector deestado y puede, de nuevo, interpretarse como una transformación, dependiente del estado, de lacoordenada original en la que se describe la variable externa de control u (torque). Si una ley de

control estádefinida paratoda condicióninicial decimosque es “global”,de lo contrarioserá “local”

A diferencia del caso anterior, la ley de control realimentada no lineal (9.7) se encuentra defini-da para “todo valor posible” de las variables de estado, en virtud de no presentar singularidadalguna. En estos casos decimos que la ley de control se encuentra definida globalmente; en casocontrario decimos que su definición solamente es local.

Los Listados 9.3 y 9.4 permiten simular el comportamiento controlado del sistema no linealsujeto a la ley de control linealizante (9.7). La simulación numérica es mostrada e la Figura 9.7.Compare esos resultados con los obtenidos mediante linealización extendida, ver ejemplo Mat-lab 6.2 , en la página 163.

t

238 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

Figura 9.7: Respuesta en lazo del control de un brazo manipulador robótico usando elmétodo del control calculado

9.1 MOTIVACIÓN: MÉTODO DEL CONTROL CALCULADO 239

Listado 9.3: Programa de simulación del control del manipulador robótico usando elmétodo del torque calculado srobexa.m

% srobexa.m%% Programa de simulacion del control de un brazo manipulador robotico% mediante el metodo de torque calculado%

% Parametros de simulacionti = 0;tf = 1;

% Condiciones inicialesx0 = [-0.3 0]’;

% Simulacion[t,x] = ode23(’robexa’,[ti tf],x0);

% graficassubplot(221),plot(t,x(:,1))title(’Posición angular del brazo robotico’)xlabel(’t [seg]’)ylabel(’x_1 [rad]’)

subplot(222),plot(t,x(:,2))title(’Velocidad angular’)xlabel(’t [seg]’)ylabel(’x_2 [rad]’)

% parametrosB = 1e-2;J = 4e-2;c = .58;N = 1;

% punto de equilibrioXd = 0;

% polinomios deseadosxi = 0.707; wn = 8.56;

% controluu = -J*wn*wn*(x(:,1)-Xd) + c*sin(x(:,1)/N) + (B-2*J*xi*wn)*x(:,2);

subplot(223),plot(t,uu)title(’Torque aplicado’)xlabel(’t [seg]’)ylabel(’u [N-m]’)% fin de srobexa.m

240 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

Listado 9.4: Simulación del manipulador robótico: modelo y control por el método deltorque calculado robexa.m

function dx = robexa(t,x)%% modelo de un manipulador robotico regulado mediante el% metodo de control calculado%

% parametrosB = 1e-2;J = 4e-2;c = .58;N = 1;

% punto de equilibrioXd = 0;

% polinomios deseadosxi = 0.707; wn = 8.56;

u = -J*wn*wn*(x(1)-Xd) + c*sin(x(1)/N) + (B-2*J*xi*wn)*x(2);

y = x(1);

dx = [x(2);-B/J*x(2)-c/J*sin(x(1)/N)+1/J*u];

% fin de robexa.m

Modelo 33: Ecuaciones generales de un robot articuladoEl modelo general de un manipulador robótico está dado por la ecuación:

H(q)q + C(q, q)q + g(q) = τ (9.8)

donde q es un vector que representa las posiciones o coordenadas generalizadas y q representael vector de velocidades. Vale decir que el vector (q, q) representa los estados del sistema. Eltérmino C(q, q) es un vector que representa las fuerzas centrípeta y de Coriolis; g(q) es el vectorque representa la fuerza gravitacional y τ es la señal de entrada que representa el torque aplicadoal sistema. La matriz H(q) representa la matriz de inercia, es simétrica, definida positiva y, por lotanto, invertible.

M

Ejemplo 9.2: Control del modelo general del manipulador robótico basadoen el método del par calculadoSi los estados se pueden medir, una ley de control que linealiza el sistema no lineal por reali-mentación de estados está dada por:

τ = H(q)v + C(q, q)+g(q) (9.9)

donde v constituye una nueva entrada “auxiliar”.En la expresión (9.9), los últimos términos del lado derecho, es decir, C(q, q)+g(q), se añaden

de forma de cancelarlos, eliminarlos de la ecuación (9.8).Se obtiene entonces el sistema

H(q)q = H(q)v (9.10)Debido a que H(q) es invertible, a partir de (9.10) resulta un sistema lineal en lazo cerrado

dado por:q = v

donde la nueva entrada v puede definirse como v = −2ξωnq − omega2nq, de tal forma que el

sistema en lazo cerrado sea asintóticamente estable.

9.2 LINEALIZACIÓN EXACTA DE SISTEMAS EN LA FORMA CANÓNICA CONTROLABLE 241

Los ejemplos anteriores nos dan una idea intuitiva de como proceder ageneralizar, a sistemas de mayor dimensión, la posibilidad de diseñar unaley de control linealizante:

En primer lugar, el sistema deberá exhibir en forma natural la estruc- Cadena deintegradorestura inherente a una cadena de integración pura sin intervenciones de

la variable de control;

además, las no linealidades del sistema deberán estar circunscritas ala última ecuación diferencial, donde de paso, deberá encontrarse, porsupuesto, la variable de control.

Diremos que aquellos sistemas que posean la estructura mencionada‘ es-tán representados en la forma canónica controlable. En tales sistemas seráposible mediante comparación pura y simple calcular una ley de controlque obliga al sistema a exhibir una estructura perfectamente lineal. A tal Diseño mediante

inversión delsistema no lineal

procedimiento de cálculo del control también se le conoce con el nombre deinversión del sistema.

9.2. Linealización exacta de sistemas en la forma canóni-ca controlable

a partir de las consideraciones anteriores, podemos establecer que laclase de sistemas no lineales representables en la forma Forma canónica

controlablex1 = x2

x2 = x3

...xn−1 = xn

xn = fn(x1 . . . , nn) + ugn(x1, . . . , xn)

(9.11)

son exactamente linealizables mediante una redefinición de la variable decontrol en términos del estado y una entrada auxiliar externa. Incluso, estaredefinición puede ser interpretada de dos maneras, tanto como un procesode realimentación no lineal como un proceso de transformación de la coor-denada de la variable de control.

El sistema (9.11), tal como lo hemos vislumbrado, exhibe una cadena deintegración pura y, además, todas sus no linealidades, así como la variablede control, están adscritas a la última ecuación diferencial. Un sistema contal estructura es llamado sistema no lineal en Forma Canónica Controlableo Forma Canónica de Brunovsky.

El siguiente diagrama de bloques, en la Figura 9.8, muestra claramentela estructura que hemos impuesto para calificar a un sistema linealizableen forma exacta.

242 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

- - - - --

666

u

fn(x) + u gn(x)∫ ∫ ∫xn xn−1 x2 x1

. . .

. . .. . .

. . .

Figura 9.8: Diagrama de bloques del sistema en forma canónica controlable

Linealización exacta de la forma canónica controlable. Definamosla variable de entrada auxiliar v como:

v = fn(x1 . . . , nn) + ugn(x1, . . . , xn) (9.12)

Evidentemente, la expresión (9.12) produce un sistema perfectamentelineal que exhibe una estructura de cadena de integración pura:

x1 = x2

x2 = x3

...xn−1 = xn

xn = v

(9.13)

En la teoría de sistemas lineales a la estructura (9.13) se le llama pre-cisamente forma canónica de Brunovsky.

La variable auxiliar v puede entonces sintetizarse como una ley de con-trol que realimenta linealmente las variables de estado:

v = −a1x1 − a2x2 − . . .− an−1xn−1 − anxn (9.14)

De esta manera, el sistema lineal n-dimensional en lazo cerrado estádado por:

x1 = x2

x2 = x3

...xn−1 = xn

xn = −a1x1 − . . .− anxn

(9.15)

La comparación de (9.11) con (9.15) nos lleva inmediatamente a estable-cer la relación siguiente:

fn(x1, . . . , xn) + ugn(x1, . . . , xn) = v = −a1x1 − a2x2 − . . .− anxn (9.16)

9.2 LINEALIZACIÓN EXACTA DE SISTEMAS EN LA FORMA CANÓNICA CONTROLABLE 243

A partir de (9.16), la ley de control no lineal que linealiza en forma ex-acta al sistema no lineal (9.11) resulta finalmente:

u = −a1x1 + a2x2 + . . . + anxn + fn(x1, . . . , xn)gn(x1, . . . , xn)

(9.17)

La linealización exacta obtenida será válida y útil, solamente en doscircunstancias:

1. La linealización es válida en todo el ambiente del espacio de estadodonde se cumpla que:

gn(x1, . . . , xn) 6= 0 (9.18)

2. La linealización es útil en la medida en que el sistema lineal en lazocerrado sea asintóticamente estable a cero.

Puesto que la estabilidad del sistema lineal (9.15) está determinada, univo-camente, por la ubicación de las raíces del polinomio característico:

p(s) = sn + ansn−1 + . . . + a2s + a1 (9.19)

Supondremos, por tanto, que el polinomio p(s) tiene todas sus raícesen el semiplano izquierdo del plano complejo. Cuando esta condición secumpla, diremos brevemente que el polinomio p(s) es Hurwitz.

La condición de singularidad, asociada a la expresión (9.18), que quer-emos evitar, se corresponde en realidad con una condición de falta de con-trolabilidad. Es obvio que aquellos lugares del espacio de estado donde seanula el canal de entrada al sistema, es decir, donde gn(x) = 0, se corre-sponden a regiones donde el sistema se hace completamente incontrolable.

Consideremos el siguiente ejemplo.

Ejemplo 9.3: Singularidad de una ley de control linealizante para un mo-delo equivalente al motor serie de corriente continuaConsidere el modelo

x1 = x2

x2 = x3

x3 =

[−

2KbaKf

Lfx2x3 − 2

(Ra +Rf

Lf

)x3 +

(2KmKf

J

√Jx3

KmKf

1

Lf

)u

] (9.20)

el cual, como veremos más adelante, es equivalente al Modelo 11 , en la página 17, mediante unatransformación no lineal del espacio de estados.

El sistema (9.20) es linealizable exactamente (localmente) mediante la ley de control no linealdada por:

u =J(

2KmKf

√Jx3

KmKf

1Lf

)[− a3x3 − a2x2−

a1x1 +2KbaKf

Lfx2x3 − 2

(Ra +Rf

Lf

)x3

](9.21)

Sin embargo, note que en el punto de equilibrio de (9.20), dado por

x1(X) = arbitrario = X ; x2(X) = 0 ; x3 = 0 ; u = arbitrario ,

la señal de control (9.21) no está definida. Evidentemente la controlabilidad se pierde cuandox3 = 0.

244 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

9.3. Sistemas no lineales reducibles a la forma canóni-ca controlable

Un sistema en forma canónica controlable (f.c.c.) (9.11) es linealizableen forma exacta. Esta forma canónica tiene la ventaja de que nos permitecalcular de manera directa la señal de control que logra que el sistemano lineal adopte una estructura perfectamente lineal en lazo cerrado. Sinembargo, esta clase de sistemas luce restringida a solo algunos ejemplosque pudieran incluso carecer de significación física. En general, los modelosrepresentativos de los sistemas dinámicos no se presentan en esta forma.Esto nos plantea la necesidad de buscar mecanismos que permitan trans-formar la representación dinámica de un sistema a la forma canónica con-trolable. Debemos, por lo tanto, buscar la manera de extender la posibili-dad de lograr linealizaciones exactas a una clase más amplia de sistemasdinámicos no lineales.

Estamos interesados en determinar bajo qué condiciones un sistema,de naturaleza un tanto más general a los vistos hasta ahora, puede sertransformado (o reducido) a la forma canónica controlable anterior.

Un modelo suficientemente general de un sistema no lineal puede serClase de sistemasno lineales afinesen el control

descrito por ecuaciones diferenciales controladas de la forma:

x1 = f1(x1, . . . , xn) + ug1(x1, . . . , xn)x2 = f2(x1, . . . , xn) + ug2(x1, . . . , xn)

...xn−1 = fn−1(x1, . . . , xn) + ugn−1(x1, . . . , xn)

xn = fn(x1 . . . , xn) + ugn(x1, . . . , xn)

(9.22)

En forma más sucinta, el sistema (9.22) de la forma:

x = f(x) + ug(x) (9.23)

donde x = (x1, . . . , xn), y

f(x) =

f1(x1, . . . , xn)...

fn(x1 . . . , xn)

; g(x) =

g1(x1, . . . , xn)...

gn(x1 . . . , xn)

(9.24)

La clase de sistemas representada por (9.23) recibe el nombre de sis-temas afines en el control (note que el conjunto de ecuaciones diferencialespresentadas en (9.23) son precisamente “lineales” en el control).

Las funciones vectoriales f(x) y g(x) reciben el nombre de campos vec-Un concepto útil:camposvectoriales

toriales. Supondremos de una buena vez y con el objeto de no tener quecontar a cada paso el orden de diferenciabilidad de las funciones f(x) yg(x), que tales campos vectoriales son diferenciables, respecto de las com-ponentes de x, un número ilimitado de veces, es decir, un número infinito

9.3 SISTEMAS NO LINEALES REDUCIBLES A LA FORMA CANÓNICA CONTROLABLE 245

de veces; diremos entonces que f(x) y g(x) son campos vectoriales infinita-mente diferenciables. Una expresión equivalente, que también utilizaremoscon mucha frecuencia, es la de afirmar que f(x) y g(x) son campos suaves.Representaremos esta clase de campos vectoriales escribiendo f(x) ∈ C∞.

Con el objeto de ganar la intuición necesaria que nos permita abordareste problema en toda generalidad, comenzaremos haciendo algunos ejem-plos sencillos donde podremos transformar el sistema a la forma canónicacontrolable mediante simple inspección. De estos ejemplos trataremos dederivar reglas generales que nos permitirán abordar cualquier caso.

Ejemplo 9.4: Primer ejemploConsideremos el sistema no lineal siguiente:

x1 = x1x2 + u

x2 = x2 − u(9.25)

Evidentemente este sistema no se encuentra en forma canónica controlable.Nos preguntamos entonces si existirá una función (no lineal) del estado que puede adoptar

el papel de primera variable de estado, digamos z1. Esta variable debe ser tal que su primeraderivada sea independiente del control y pueda, por lo tanto, ser definida como segunda variablede estado, digamos z2. Si además, la derivada respecto del tiempo de z2 depende explícitamentedel control u, entonces tenemos un sistema en forma canónica controlable, en las nuevas variablesz.

En efecto, en este caso es fácil ver que si definimos una nueva variable z1 como función delas componentes del estado x1 y x2 de la manera siguiente:

z1 = x1 + x2 (9.26)

Utilizando las ecuaciones (9.25), se cumple que:

z1 = x1 + x2 = x1x2 + x2

esto es, la primera derivada temporal de esta función z1 resulta ser independiente del control.Si ahora bautizamos a esta expresión de la derivada de z1 como una nueva variable de estado

z2, es decir,z2 = x1x2 + x2 (9.27)

y tomamos de nuevo la derivada respecto del tiempo, obtenemos:

z2 = x1x2 + (x1 + 1)x2 = (x1x2 + u)x2 + (x1 + 1)(x2 − u)

= x1x22 + x1x2 + x2 + u(x2 − x1 − 1)

(9.28)

La derivada de esta nueva variable de estado z2 depende del control a través de las variablesoriginales x. Las expresiones de dichas variables de estados las podemos buscar en términos delas nuevas variables de estado z invirtiendo las relaciones (9.26) y (9.27). Este par de ecuacionesalgebraicas se corresponde con una función vectorial de x:(

z1z2

)=

(x1 + x2

x1x2 + x2

)(9.29)

La matriz Jacobiana de (9.29) está dada, entonces, por:

∂z

∂x=

[∂z1∂x1

∂z1∂x2

∂z2∂x1

∂z2∂x2

]=

[1 1x2 (1 + x1)

](9.30)

con

det

[∂z

∂x

]= 1 + x1 − x2

De aquí se concluye que la matriz (9.30) es singular en el conjunto de puntos que satisfacen1 + x1 − x2 = 0.

246 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

A partir de (9.29), obtenemos como posibles soluciones locales de la inversión:

x1 = z1 −(1 + z1) +

√(1 + z1)2 − 4z2

2

x2 =(1 + z1) +

√(1 + z1)2 − 4z2

2

(9.31)

o, bien,

x1 = z1 −(1 + z1)−

√(1 + z1)2 − 4z2

2

x2 =(1 + z1)−

√(1 + z1)2 − 4z2

2

(9.32)

Adoptemos como solución válida la primera de las expresiones anteriores, ecuación (9.31).Es fácil constatar que el sistema de ecuaciones diferenciales del sistema transformado, en nuevasvariables de estado z, está dado por:

z1 = z2

z2 =

[2 +

(z1 −

(1 + z1)−√

(1 + z1)2 − 4z2

2

)][(1 + z1)−

√(1 + z1)2 − 4z2

2

]×[

(1 + z1)−√

(1 + z1)2 − 4z2

2

]+ u

[(1 + 2z1) +

√(1 + z1)2 − 4z2 − 1

](9.33)

es decir, hemos obtenido un sistema en forma canónica controlable!Vale la siguiente observación: la estrategia de control que diseñemos para el sistema (9.33)

será válida en tanto se verifique que 1+x1−x2 6= 0, es decir, en los puntos donde la transforma-ción (9.29) es no singular. Veamos. El término que acompaña a u en (9.33) está dado por[

(1 + 2z1) +√

(1 + z1)2 − 4z2 − 1

]= (x2 − x1 − 1)

donde el lado derecho se obtiene al retornar a las variables originales (x1, x2) mediante (9.29), verecuación (9.28). Evidentemente el lado izquierdo de esta expresión se anula para 1+x1−x2 = 0por lo que la acción del control se desvanece.

Podemos resumir nuestra experiencia postulando las siguientes condi-ciones, las cuales garantizan que exista la posibilidad de linealizar exacta-mente un sistema no lineal de dimensión n.

1. Debemos poder hallar una función h(x) de las variables de estadocuyas n − 1 primeras derivadas, respecto del tiempo, sean funcional-mente independientes entre sí e independientes de la variable de con-trol. Esto es equivalente a que el gradiente de h(x) y el de todas susderivadas hasta la n− 1ésima (inclusive) deben ser linealmente inde-pendientes.

2. La n-ésima derivada de h(x), respecto del tiempo, debe depender ex-plícitamente de la variable de control.

La última condición es clara: al expresar el sistema dinámico en las varia-bles trasnformadas, todas las nolinealidades de las ecuaciones dinámicas,así como la dependencia del control, deben quedar relegadas a la última

9.3 SISTEMAS NO LINEALES REDUCIBLES A LA FORMA CANÓNICA CONTROLABLE 247

ecuación, como ha sido el caso en los ejemplos que hemos desarrollado enesta parte.

La primera condición posiblemente requiere de alguna explicación adi-cional, sobre todo en lo referente a la independencia funcional de las derivadassucesivas de la función candidata h(x). Un sencillo ejemplo nos servirá paraconvencernos de que esta condición es necesaria:

Ejemplo 9.5: Un sistema no controlableConsideremos el sistema:

x1 = x2

x2 = x22

x3 = u

(9.34)

Si adoptamos h(x) = x1 como función candidata para jugar el papel de primera variablede estado z1 en el sistema transformado vemos que su primera derivada, x2, es funcionalmenteindependiente de x1. Por lo tanto, x2 calificaría como segunda variable de estado. En efecto, latransformación parcial:

z1 = x1

z2 = x2(9.35)

tiene por matriz Jacobiana:

∂(z1, z2)

∂(x1, x2, x3)=

[1 0 00 1 0

]la cual es de rango 2, lo cual dice que las dos primeras variables escogidas son funcionalmenteindependientes. Es decir, la función h(x) = x1 y su primera derivada x2, son funcionalmenteindependientes. Sin embargo, la tercera derivada de la función h(x) resulta ser:

z3 = x22 (9.36)

y ahora, en este caso, la matriz Jacobiana es:

∂(z1, z2, z3)

∂(x1, x2, x3)=

1 0 00 1 00 2x2 0

(9.37)

cuyo rango sigue siendo 2. En consecuencia la función h(x) = x1 no nos sirve para generar unatransformación invertible en el espacio de estado (tridimensional) del sistema en cuestión.

Una parte del problema de la falta de independencia funcional estriba en que, en este caso,podemos tomar infinitas derivadas de h(x) que el control u no habrá de aparecer nunca en formaexplícita en alguna de las posibles derivadas de orden superior. En efecto, si calculamos algunasde las derivadas de h(x) tenemos:

z1 = x1; z2 = x1 = x2;

z3 = z2 = x1 = x22;

z4 = z3 = z2 = x(3)1 = 2x3

2

z5 = z4 = z3 = z(3)2 = z

(4)1 = x

(4)1 = 6x4

2 . . .

y, como es fácil ver, nunca podrá aparecer el control u en las derivadas.Note que esta característica surge precisamente de la falta de controlabilidad. Las dos primeras

ecuaciones del sistema (9.34) corresponden a un sistema autónomo, no afectado por la entrada u:

x1 = x2

x2 = x22

248 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

En el ejemplo anterior, hemos visto que la transformación generada noes invertible, como se deduce del rango de la matriz Jacobiana (9.37). Vamosa efectuar perturbaciones estructurales del sistema (9.34), para observarsus efectos sobre la posibilidad de obtener la forma canónica controlable.

Ejemplo 9.6: Perturbación εx3 del ejemploPerturbemos levemente el sistema (9.34) de la manera siguiente:

x1 = x2

x2 = x22 + εx3

x3 = u

(9.38)

Se obtiene entonces la independencia funcional que requerimos de h(x) y sus derivadas. Enefecto, haciendo

z1 = x1 ; z2 = x2 ; z3 = x22 + εx3 , (9.39)

resulta

∂(z1, z2, z3)

∂(x1, x2, x3)=

1 0 00 1 00 2x2 ε

Como es fácil verificar, el rango de esta matriz Jacobiana es ahora 3, para todo ε 6= 0.

La transformación (9.39) es por lo tanto invertible, como podemos constatar sin mayores es-fuerzos:

x1 = z1; x2 = z2; x3 =z3 − z22

ε

El sistema transformado exhibe, sin lugar a dudas, una estructura canónica controlable:

z1 = z2

z2 = z3

z3 = 2z32 + 2z2(z3 − z22) + εu

Para el sistema modificado (9.38) la función h(x) = x1 cumple, como vemos, las condicionesque hemos establecido anteriormente.

Con el objeto de completar el proceso de linealización, definimos ahora el control transformadov como:

v = 2z32 + 2z2(z3 − z22) + εu

lo cual ciertamente representa una transformación de la variable original de control u, dependientedel estado transformado.

El sistema linealizado en forma exacta, expresado en nuevas coordenadas del estado z y delcontrol v es el siguiente:

z1 = z2

z2 = z3

z3 = v

(9.40)

Estabilizar a cero el sistema lineal (9.40) se reduce a un problema clásico de asignación depolos mediante realimentación lineal del vector de estado.

Note adicionalmente que en este último ejemplo la perturbación prop-uesta ha logrado la transformación requerida, a través de h(x) y de susderivadas. No solamente se ha perturbado el sistema original, hemos cuida-do de perturbarlo apropiadamente.

9.4 CONDICIONES DE EXISTENCIA PARA LA TRANSFORMACIÓN A LA FORMA CANÓNICA CONTROLABLE 249

Ejemplo 9.7: Una perturbación estructural que fallaEs fácil ver que el siguiente sistema perturbado

x1 = x2

x2 = x22 + εx1

x3 = u

no es linealizable en forma exacta a través de la función h(x) = x1, por cuanto la matriz Jaco-biana de la transformación resulta ser de nuevo singular y podríamos, igualmente, tomar infinitasderivadas de h(x) sin que aparezca el control u explícitamente en alguna derivada de orden su-perior.

Tenemos:

z1 = x1; z2 = x2; z3 = x22 + εx1

∂z

∂x=

1 0 00 1 0ε 2x2 0

; det

[∂z

∂x

]= 0

9.4. Condiciones de existencia para la transformacióna la Forma Canónica Controlable

Los ejemplos anteriores nos ayudan a formular en forma más precisalas condiciones de existencia de una tranformación del vector de estado quetorna al sistema original en un sistema en forma canónica controlable.

La condición necesaria y suficiente para que exista una transfor-mación del vector de estado que lleve a un sistema no lineal de laforma (9.23) es que exista una función escalar diferenciable h(x)tal que:

1.

rango

∂h(x)

∂x...

∂h(n−1)(x)∂x

= n

2.

∂h

∂u=

∂h

∂u= . . . =

∂h(n−1)(x)∂u

= 0

3.

∂h(n)(x, u)∂u

6= 0

Haremos algunos ejemplos que ilustren la posibilidad de encontrar talestransformaciones de estado del sistema que lo lleven a la forma canónicacontrolable.

250 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

Ejemplo 9.8:Motor serie de corriente continua

El siguiente gráfico representa el circuito de un motor de corriente continua en conexión seriede su circuito de armadura y su circuito de alimentación del campo.

Las ecuaciones que describen este sistema no lineal están dadas por:

x1 = x2

x2 =KmKf

Jx23

x3 = −KbaKf

Lfx2x3 −

Ra +Rf

Lfx3 +

1

Lfu

donde:

x1 = θ = angulo del eje del motor

x2 = ω = velocidad angular del eje del motor

x3 = ia = if = corriente comun que fluye por los circuitos de armadura y del campo

u = VT

Propongamos la función h(x) = x1 como función generadora de la transformación linealizantede coordenadas del espacio de estado.

La transformación de coordenadas estaría entonces dada por:

z1 = h(x) = x1

z2 = h(x) = x2

z3 = h(x) =KmKf

Jx23

La primera de las condiciones dada por (1) se escribe como:

∂z

∂x=

∂h(x)

∂x∂h(x)

∂x∂h(x)

∂x

=

1 0 00 1 0

0 02KmKf x3

J

Det

[∂z

∂x

]=

2KmKfx3

J

Lo cual indica que la transformación dada por h(x) y sus dos primeras derivadas tiene rangocompleto en todas partes del espacio de coordenadas x, excepto en el plano representado porx3 = 0. En otras palabras, la transformación de coordenadas es solamente de carácter local ysu validez deja de tener efecto cuando por alguna razón el sistema produce valores de estado xque satisfacen esta restricción, o cuando las trayectorias del sistema se acercan asintóticamente aeste valor. La condición x3 = 0 se corresponde con un valor nulo de la corriente común que circulapor los circuitos de armadura y de campo. En el resto del espacio de estado la transformación (9.8)es invertible.

La transformación (9.8) también satisface la segunda condición dada por (2). Finalmente, latercera derivada de h(x) está dada por:

h(3)(x, u) =2KmKf

Jx3

(−KbaKf

Lfx2x3 −

Ra +Rf

Lfx3 +

1

Lfu

)

= −2KmK2

fKba

JLfx2x

23 −

2KmKf (Ra +Rf )

JLfx23 +

2KmKf

JLfx3u

de donde:

∂h(3)(x, u)

∂u=

2KmKf

JLfx3

entonces la tercera condición (3), se traduce, no sorprendentemente, en que la variable x3 debesatisfacer la condición: x3 6= 0.

9.4 CONDICIONES DE EXISTENCIA PARA LA TRANSFORMACIÓN A LA FORMA CANÓNICA CONTROLABLE 251

La inversa de la transformación (9.8) tiene entonces solamente caracter local y se obtiene porinspección. Esta resulta ser para x3 > 0:

x1 = z1

x2 = z2

x3 = +√

Jz3KmKf

la cual es válida sólo en la región z3 > 0 del espacio descrito por las nuevas coordenadas. Comopuede inferirse de (9.8), la transformación de coordenadas no está definida en la región x3 < 0,es decir, su validez es sólo local.

El motor serie de corriente continua, transformado a nuevas coordenadas, se describe en-tonces localmente mediante las ecuaciones diferenciales:

z1 = z2

z2 = z3

z3 =

[−

2KbaKf

Lfz2z3 − 2

(Ra +Rf

Lf

)z3 +

(2KmKf

JLf

√JZ3

KmKf

)u

]las cuales evidentemente se encuentran en forma canónica controlable. La linealización exacta de(9.8) se puede llevar a cabo entonces en forma inmediata.

Utilizamos como control externo auxiliar la variable v, la cual definimos de la manera siguiente:

v =

[−

2KbaKf

Lfz2z3 − 2

(Ra +Rf

Lf

)z3 +

(2KmKf

JLf

√JZ3

KmKf

)u

]lo cual al sustituirse en (9.8), nos transforma el sistema en una cadena de integración pura:

z1 = z2

z2 = z3

z3 = v

Introducimos la siguiente realimentación lineal para la regulación asintóticamente estable delsistema transformado (9.8):

v = −αω2nz1 − (2ζωnα+ ω2

n)z2 − (α+ 2ζωn)z3

El sistema en lazo cerrado (9.8) y (9.8) tiene entonces por polinomio característico al siguientepolinomio de raíces estables (o simplemente polinomio de Hurwitz);

p(s) = (s+ α)(s2 + 2ζωns+ ω2n)

= s3 + (α+ 2ζωn)s2 + (2ζωnα+ ω2n)s+ αω2

n

El controlador no lineal para el sistema transformado (9.8) está dado entonces a partir de la si-guiente relación, escrita en términos de variables transformadas y obtenida directamente de lasecuaciones (9.8) y (9.8):

− αω2nz1 − (2ζωnα+ ω2

n)z2 − (α+ 2ζωn)z3

=

[−

2KbaKf

Lfz2z3 − 2

(Ra +Rf

Lf

)z3 +

(2KmKf

JLf

√JZ3

KmKf

)u

]Resolviendo para u tenemos:

u = −JLf(

2KmKf

√Jx3

KmKf

) [αω2nz1 + (2ζωnα+ ω2

n)z2 + (α+ 2ζωn)z3

−2KbaKf

Lfz2z3 − 2

(Ra +Rf

Lf

)z3

]

252 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

Usando (9.8) en (9.8) obtenemos en variables de estado originales la expresión del contro-lador diseñado mediante linealización exacta:

u = −JLf

(2KmKfx3)

αω2

nx1 + (2ζωnα+ ω2n)x2 +

[(α+ 2ζωn)− 2

(Ra +Rf

Lf

)]KmKf

Jx23

−2KbaKmK2

f

JLfx2x

23

Nótese sin embargo que este controlador presenta un serio problema para su instru-mentación en el sistema (9.8), o incluso para realizar sobre su base de cualquier si-mulación digital. El problema consiste en que el punto de equilibrio del sistema (9.8)necesariamente implica que la corriente común del circuito de campo y armadura,x3, tiene que hacerse cero. Pero tal valor de la corriente hace singular la acción decontrol representada por (9.8).El problema de regulación del motor de corriente continua en conexión serie nopuede resolverse entonces por linealización exacta.

Ejemplo 9.9:Modelo promedio de un convertidor de corriente continua tipo “Boost”

Considérese el modelo promedio de un convertido tipo Boost, ya introducido anteriormenteen el capítulo 3.

x1 = −ω0x2 + uω0x2 + b

x2 = ω0x1 − ω1x2 − uω0x1

Tratemos de buscar una transformación invertible, generada por una función escalar h(x), quesatisfaga las tres condiciones (1) -(3), dadas anteriormente, y que nos transforme el modelo (9.9)a la forma canónica controlable.

Sea z1 = h(x) una función escalar diferenciable. La derivada de esta función, con respectodel tiempo, se escribe usando (9.9) de la manera siguiente:

z1 =∂h(x)

∂xx =

[∂h∂x1

∂h∂x2

] [ −ω0x2 + uω0x2 + bω0x1 − ω1x2 − uω0x1

]=

∂h

∂x1[−ω0x2 + uω0x2 + b] +

∂h

∂x2[ω0x1 − ω1x2 − uω0x1]

=

∂h

∂x1[−ω0x2 + b] +

∂h

∂x2[ω0x1 − ω1x2]

+ uω0

[∂h

∂x1x2 −

∂h

∂x2x1

]Puesto que la primera derivada de h(x) no debe depender de u, de acuerdo a (2), h(x) debe

satisfacer:

∂h

∂x1x2 −

∂h

∂x2x1 = 0

lo cual constituye una ecuación en derivadas parciales del tipo lineal para la función desconocidah(x).

Una solución general de (9.9) está dada por:

z1 = h(x) =1

2

[x21 + x2

2

]+ c

donde c es una constante que debemos ajustar para que, por ejemplo, cuando las variables deestado x1 y x2 adoptan sus valores de equilibrio X1(U) y X2(U), inducidos por una relación detrabajo constante u = U , entonces la nueva variable z1 adopte, por ejemplo, el valor de cero ental punto de equilibrio.

Puesto que:

X1(U) =bω1

ω20(1− U)2

; X2(U) =b

ω0(1− U)

9.4 CONDICIONES DE EXISTENCIA PARA LA TRANSFORMACIÓN A LA FORMA CANÓNICA CONTROLABLE 253

entonces:

z1 = h(x) =1

2

[x21 + x2

2

]−

1

2

b2

ω20(1− U)2

[1 +

ω21

ω20(1− U)2

]La derivada de z1 resulta ser, después de utilizar (9.9):

z1 =

∂h

∂x1[−ω0x2 + b] +

∂h

∂x2[ω0x1 − ω1x2]

= bx1 − ω1x

22

es decir:

z2 = bx1 − ω1x22

Nótese que el valor de equilibrio de z2 resulta ser también cero, como lo habrá de demandarel modelo transformado en forma canónica controlable. Comprobamos finalmente que la derivadade esta segunda variable de estado sí depende de la variable de control u, tal como se estableceen la condición (3). En efecto:

z2 = bx1 − 2ω1x2x2

= b(−ω0x2 + uω0x2 + b)− 2ω1x2(ω0x1 − ω1x2 − uω0x1)

= b2 + 2ω21x

22 − (b+ 2ω1x1)ω0x2 + u(b+ 2ω1x1)ω0x2

Siempre que la cantidad (b+2ω1x1)x2 sea diferente de cero, la transformación generada porh(x) es una transformación linealizante que cumple con las condiciones (1)-(3).

La trasformación de coordenadas de estado está dada entonces por:

z1 =1

2

[x21 + x2

2

]−

1

2

b2

ω20(1− U)2

[1 +

ω21

ω20(1− U)2

]z2 = bx1 − ω1x

22

La matriz Jacobiana de esta transformación, y su determinante asociado, estan dados por:

∂z

∂x=

[∂h∂x∂h∂x

]=

[x1 x2

b −2ω1x2

]; Det

[∂z

∂x

]= −(b+ 2ω1x1)x2

La no singularidad de esta matriz Jacobiana coincide, como es claro, con la condición quehemos encontrado anteriormente, al exigir en (9.9) que la segunda derivada de h(x) dependaexplícitamente de la variable de control u.

La primera variable de estado, obtenida de la transformación (9.9), es interpretableen términos de la energía promedio incremental, medida sobre la base de la energíaconsumida en mantener la condición de equilibrio promedio. La segunda variablede la transformación representa la variación temporal del tal energía, es decir, lapotencia incremental promedio consumida por el circuito.

La transformación (9.9) es localmente invertible en todos aquellos puntos que se encuentrenalejados de la condición de singularidad de la matriz Jacobiana calculada en (9.9). Los valores dex1 y x2, como función de z1 y z2, se obtiene a partir de las ecuaciones siguientes:

x21 +

b

ω1x1 −

2z1 +

z2

ω1+

b2

ω20(1− U)2

[1 +

ω21

ω20(1− U)2

]= 0

x2 =

√bx1 − z2

ω1

Es decir:

x1 = −b

2ω1+

√(b

2ω1

)2

+

2z1 +

z2

ω1+

b2

ω20(1− U)2

[1 +

ω21

ω20(1− U)2

]

x2 =

√√√√ b

ω1

√(b

2ω1

)2

+

2z1 +

z2

ω1+

b2

ω20(1− U)2

[1 +

ω21

ω20(1− U)2

]−

b2

2ω21

−1

ω1z2

254 INTRODUCCIÓN A LA LINEALIZACIÓN EXACTA

Nótese que hemos tomado la raíz positiva para x1, de la solución de la primera ecuaciónen (9.9). La raíz negativa carece de significado físico, en virtud de que, de acuerdo a (9.9), lascondiciones de equilibrio (es decir, cuando z1 = z2 = 0), la variable x1 debe ser positiva pues b yω1 son constantes positivas. Verificamos que efectivamente en equilibrio las expresiones que seobtienen de (9.9) coinciden plenamente con (9.9).

La forma canónica controlable del sistema en nuevas coordenadas es:

z1 = z2

z2 = −2ω1z2 +

[2ω1b

√(b

2ω1

)2+

2z1 + z2

ω1+ b2

ω20(1−U)2

[1 +

ω21

ω20(1−U)2

]](

2ω1ω0(1− u)

√(b

2ω1

)2+

2z1 + z2

ω1+ b2

ω20(1−U)2

[1 +

ω21

ω20(1−U)2

])×√√√√ b

ω1

√(b

2ω1

)2+

2z1 + z2

ω1+ b2

ω20(1−U)2

[1 +

ω21

ω20(1−U)2

]− b2

2ω21− 1

ω1z2

Ejercicio:Terminar el diseño del controlador no lineal por Linealización Exacta.

Ejemplo 9.10:Orientación de un artefacto espacial

Considérese el sistema no lineal que describe la orientación de un artefacto espacial, tal comofue descrito en detalle en el capítulo 2. El sistema se encuentra descrito por:

x1 = x2

x2 =FL

Jsinx3

x3 = Ru

El punto de equilibrio físicamente significativo del sistema está dado por:

x1 = arbitrario = X; x2 = 0; x3 = 0; u = 0

Es fácil verificar que la función del error de posicionamiento, dada por h(x) = x1 −X calificacomo función generadora de una transformación linealizante. Haciendo:

z1 = x1 −X; z2 = x2; z3 =FL

Jsinx3

esta transformación es invertible, al menos localmente, pues:

∂z

∂x=

∂h(x)

∂x∂h(x)

∂x∂h(x)

∂x

=

1 0 00 1 0

0 0 FLJ

cosx3

; Det

[∂z

∂x

]=FL

Jcosx3

El determinante de la matriz Jacobiana de la transformación indica que el rango de validez dela transformación está dado por −π/2 < x3 < π/2, lo cual cubre todos los valores prácticos delángulo de posicionamiento de la tobera medido desde el eje principal de la nave. La transformacióninversa (en aquellos lugares donde existe) está dada simplemente por:

x1 = z1 +X; x2 = z2; x3 = sin−1

[Jz3

FL

]El sistema transformado está dado por:

z1 = z2

z2 = z3

z3 =FLR

J

√1−(Jz3

FL

)2u

9.5 EJERCICIOS PROPUESTOS 255

El control linealizante puede ser obtenido directamente en coordenadas transformadas como:

u = J

−α1α2α3z1 − (α1α2 + α1α3 + α2α3)z2 − (α1 + α2 + α3)z3

FLR

(√1−

(Jz3FL

)2)

Lo cual induce en el sistema lineal en lazo cerrado un polinómio característico dado por:

p(s) = (s+ α1)(s+ α2)(s+ α3)

= s3 + (α1 + α2 + α3)s2 + (α1α2 + α1α3 + α2α3)s+ α1α2α3

En coordenadas originales el controlador resulta ser:

u = J

[−α1α2α3(x1 −X)− (α1α2 + α1α3 + α2α3)x2 − (α1 + α2 + α3)FL

Jsinx3

FLR cosx3

]El siguiente programa simula la respuesta del sistema controlado por la ley de realimentación

no lineal que logra la linealización perfecta del sistema.

9.5. Ejercicios propuestos

9.6. Resumen del capítulo y Lecturas adicionales

10

Linealización exacta desistemas no lineales

10.1. Introducción

10.2. Nociones básicas de geometría diferencial

10.3. Interpretación geométrica del corchete de Lie yteorema de Frobenius

10.4. Nueva formulación de las condiciones de existen-cia para la transformación a la forma canónicacontrolable

10.5. El caso de sistemas lineales

10.6. Ejemplos

10.7. Ejercicios propuestos

10.8. Resumen del capítulo y Lecturas adicionales

256

11

Linealizaciónentrada-salida

11.1. Introducción

11.2. Dinámica de los ceros y linealización entrada-salida

11.3. Primer ejemplo

11.4. Formulación de la linealización entrada-salida us-ando herramientas de geometría diferencial

11.5. Ejercicios propuestos

11.6. Resumen del capítulo y Lecturas adicionales

257

12

Observadores no linealescon error lineal

Foto

Daremos una muy breve introducción al diseño de observadoresdinámicos de estado no lineales basados en linealización exacta.

12.1. Introducción

Los desarrollos teóricos que promueven la síntesis de controladores re-troalimentados suponen que todas las variables (por lo general, variablesde estado) que intervienen en la expresión del controlador están físicamentedisponibles para su utilización. Esta hipótesis es, en la mayoría de los ca-sos prácticos, difícil de satisfacer pues asociado a los costos adicionales demedir cada variable (por adquisición y colocación de sensores, por ejemplo),Hay variables

que pueden sertécnicamentedifíciles de medir

también ocurre que es imposible tener acceso a ciertas variables sin oca-sionar perturbaciones adicionales al sistema, incluso puede haber variablesque son técnicamente difíciles o imposibles de medir, como es el caso, porejemplo, por requerir el uso de analizadores fuera de línea, los cuales rep-

258

12.2 LINEALIZACIÓN DEL ERROR DE RECONSTRUCCIÓN 259

resentan un costo alto en tiempo y dinero, o al tratar de medir temperaturaen puntos específicos en el interior de hornos a muy alta temperatura.

Aunado a estas restricciones, la confiabilidad del diseño del controladorpuede verse seriamente comprometida al incrementar, posiblemente de for-ma innecesaria, el número de sensores (los cuales, por lo general, poseenuna dinámica –no lineal— propia) que deben ir asociados al controlador,con el consecuente incremento en la complejidad de la dinámica.

Por esta razón, es preciso restringirnos al número mínimo de medicionesque sean indispensables para implementar el controlador diseñado. Estasmediciones están circunscritas a las variables de salida del sistema. Estassalidas son de naturaleza tal que son capaces de reconstruir el vector deestado con un error de estimación que decrezca, en forma asintótica, a cero.

El problema asociado a conseguir un observador de estados para sis-temas lineales, y su posible extensión al caso no lineal, ha sido tratado pre-viamente en las Partes I y II de este libro. Nos corresponde ahora exponer laposibilidad de construir observadores no lineales cuyo error de estimacióndel vector de estado sea asintóticamente estable a cero. En el mismo es-píritu de la linealización exacta, nos proponemos sintetizar observadoresde estado que tengan un error de reconstrucción que satisfaga, en formaexacta, una dinámica lineal. La metodología que pretendemos ilustrar sebasa, en forma dual al caso de linealizaciones exactas, en proponer trans-formaciones de coordenadas e inyecciónes no lineales del vector de salidacon el objeto de obtener dinámicas lineales del error de reconstrucción deestados.

12.2. Linealización del error de reconstrucción

Considérese un sistema no lineal de la forma

x = Ax + γ(y, u), y = Cx (12.1)

donde x ∈ Rn, y ∈ R, u ∈ R, γ : R × R → Rn, y donde, además, el par dematrices (C,A) forman un par observable.

En este caso, tan especial, un observador dinámico de la forma

d

dtx = Ax + γ(y, u) + K(y − y), y = Cx (12.2)

produce una dinámica del error de reconstrucción del vector de estado,e = x − x, independiente del valor del vector de entrada del sistema, da-da, exactamente, por el sistema lineal de ecuaciones diferenciales,

e = (A−KC)e (12.3)

Puesto que el par (C,A) es observable, esto quiere decir, que existe unamatriz K tal que los autovalores de la matriz A − KC pueden ubicarseen el semiplano izquierdo del plano complejo. El error de estimación, e,

260 OBSERVADORES NO LINEALES CON ERROR LINEAL

asociado a tal valor propuesto de K decrece exponencialmente a cero enforma global, es decir, independientemente de las condiciones iniciales delestado x y del estado del observador x. El estimado, x, converge entonces demanera asintótica exponencial al valor verdadero del estado, x, del sistema.

Ejemplo 12.1:Manipulador de un grado de libertad

Considérese el siguiente manipulador pendular de un solo grado de libertad

x1 = x2

x2 = −mgL

Jcosx1 +

1

Ju

y = x1 (12.4)Este sistema está en la form (12.1) con

A =

[0 10 0

], C = [1 0], γ(y, u) =

[0

−mgLJ

cos y + 1Ju

]El par de matrices (C,A) es claramente observable y, por lo tanto, el observador no lineal conerror de reconstrucción lineal para este sistema está dado por

˙x1 = x2 + k1(y − y)

˙x2 = −mgL

Jcos y +

1

Ju+ k2(y − y)

y = x1 (12.5)El error de reconstrucción satisface entonces la dinámica lineal representada por

e1 = e2 − k1e1

e2 = −k2e1 (12.6)El polinomio característico de este sistema lineal está dado por,

p(s) = s2 + k1s+ k2

La escogencia apropiada de k1 y k2 hace que el polinomio característico tenga todas sus raíces enel semiplano izquierdo del plano complejo. Podemos escojer, por ejemplo, k1 = 2ζωn y k2 = ω2

n,con ζ, ωn > 0.

Ejemplo 12.2:Manipulador flexible

Considérese el ejemplo del manipulador robótico con articulación flexible de un solo grado delibertad

Las ecuaciones diferenciales que gobiernan este sistema no lineal están dadas por:

JLθ +BLθ +MgL sen θ + k(θ − ψ) = 0

Jmψ +Bmψ − k(θ − ψ) = u

y = θ (12.7)donde θ es la posición angular del brazo manipulador y ψ es la posición angular del eje del motor.Definimos las variables de estado de la manera siguiente:

x1 = θ ; x2 = θ ; x3 = ψ ; x4 = ψ

el modelo en espacio de estados, del manipulador flexible, es entonces:

x1 = x2

x2 = −MgL

JLsenx1 −

BL

JLx2 −

k

JL(x1 − x3)

x3 = x4

x4 = −Bm

Jmx4 +

k

Jm(x1 − x3) +

1

Jmu

y = x1 (12.8)

12.2 LINEALIZACIÓN DEL ERROR DE RECONSTRUCCIÓN 261

El sistema está en la forma especial, que hemos propuesto al inicio de este capítulo, con

A =

0 1 0 0

− kJL

−BLJL

kJL

0

0 0 0 1k

Jm0 − k

Jm−Bm

Jm

, C = [1 0 0 0]

γ(y, u) =

0

−MgLJL

sen y

01

Jmu

(12.9)

El par (C,A) es observable, como puede verificarse fácilmente, y entonces el observador, cuyadinámica del error de reconstrucción es lineal, está dado por

˙x1 = x2 + k1(y − y)

˙x2 = −MgL

JLsen y −

BL

JLx2 −

k

JL(x1 − x3) + k2(y − y)

˙x3 = x4 + k3(y − y)

˙x4 = −Bm

Jmx4 +

k

Jm(x1 − x3) +

1

Jmu+ k4(y − y)

y = x1 (12.10)

Efectivamente, el error de reconstrucción de estados e = x− x se describe mediante la dinámicalineal

e1 = e2 − k1e1

e2 = −BL

JLe2 −

k

JL(e1 − e3)− k2e1

e3 = e4 − k3e1

e4 = −Bm

Jme4 +

k

Jm(e1 − e3)− k4e1 (12.11)

La ecuación característica de este sistema lineal está dada por

p(s) = s(4) +

(k1 +

BL

JL+Bm

Lm

)s(3)

+

[(BL

JL+Bm

Jm

)k1 +

(k

JL+

k

Jm+BmBL

LmJL

)+ k2

]s2

+

[k

JLk3 +

Bm

Lm

(BL

JLk1 +

k

JL+ k2

)+

k

Jm

(k1 +

BL

JL

)]s

+

(Bmk

LmJLk3 −

k2

JmJL+BL

JLk1 +

k

JL+ k2 + k4

)= 0

Es claro, a partir de esta última expresión, que siempre podemos escojer las ganancias del ob-servador k1, · · · , k4 de tal manera que el polinomio carcaterístico p(s) posea los coeficientesrequeridos a fin de que todas sus raíces se encuentren ubicadas en el semiplano izquierdo delplano complejo.

Bibliografía

[ÅH95] K. J. Åström and T. Hägglund. PID Controllers: Theory, Design,and Tuning. Instrument Society of America, Research TrianglePark, NC, 2eme edition, 1995.

[AS86] H. Asada and J.-J. E. Slotine. Robot Analysis and Control. Wi-ley, New York, 1986.

[BH95] S. Bahram and M. Hassul. Control System Design using Mat-lab. Prentice-Hall, Englewood Cliffs, NJ, 1995.

[BR86] W. T. Baumann and W. J. Rugh. Feedback control of nonlin-ear systems by extended linearization. IEEE Trans. Automat.Contr., 31:40–46, 1986.

[CKS93] D. Cho, Y. Kato, and D. Spilman. Sliding mode and classicalcontrollers in magnetic levitation systems. IEEE Contr. Sys.Mag., 13(2):42–48, 1993.

[DAC95] P. Dorato, C. Abdallah, and V. Cerone. Linear-Quadratic Con-trol: An introduction. Prentice-Hall, Englewood Cliffs, NJ,1995.

[DCSJ03] S. Domínguez, P. Campoy, J. M. Sebastián, and A. Jiménez.Control en el espacio de estado. Pearson Educación, Madrid,España, 2003.

[DFT92] J. C. Doyle, B. A. Francis, and A. R. Tannenbaum. FeedbackControl Theory. MacMillan Publishing Company, New York,1992.

[FPEN94] G. F. Franklin, J. D. Powell, and A. Emami-Naeini. FeedbackControl of Dynamic Systems. Addison-Wesley, Reading, MA,1994.

[FSA88] K. Furuta, A. Sano, and D. Atherton. State Variable Methodsin Automatic Control. John Wiley & Sons Ltd, 1988.

262

BIBLIOGRAFÍA 263

[HK77] R. Hermann and A. J. Krener. Nonlinear controllability andobservability. IEEE Trans. Automat. Contr., 22:728–740, 1977.

[HMTG02] C. V. Hollot, V. Misra, D. Towsley, and W. Gong. Analysis anddesign of controllers for AQM routers supporting TCP flows.IEEE Trans. Automat. Contr., 47(6), 2002.

[Isi95] A. Isidori. Nonlinear Control Systems. Springer-Verlag, Lon-dres, Reino Unido, tercera edición edition, 1995.

[Kai80] T. Kailath. Linear Systems. Prentice-Hall, Englewood Cliffs,NJ, 1980.

[KBBL90] P. T. Krein, J. Bentsman, R. M. Bass, and B. L. Lesieutre. Onthe use of averaging for the analysis of power electronic sys-tems. IEEE Transactions on Power Electronics, 5(2):182–190,1990.

[Kel01] F. Kelly. Mathematical modelling of the Internet. In BjornEngquist and Wilfried Schmid (Eds.), Mathematics Unlimit-ed – 2001 and Beyond, pages 685–702. Springer-Verlag, Berlin,2001.

[Kha96] H. K. Khalil. Nonlinear Systems. Prentice-Hall, EnglewoodCliffs, NJ, segunda edición edition, 1996.

[KS03] R. Kelly and V. Santibañez. Control de Movimiento de RobotsManipulados. Pearson Educación, Madrid, España, 2003.

[Kuo95] B. Kuo. Automatic Control Systems. Prentice-Hall, séptimaedición edition, 1995.

[LG94] L. Ljung and T. Glad. Modeling of Dynamic Systems. Prentice-Hall, Engllewood Cliffs, NJ, E.E.U.U., 1994.

[Low03] S. Low. A duality model of TCP and queue management al-gorithms. IEEE/ACM Transactions on Networking, 11(4):525–536, 2003.

[LR94] D. A. Lawrence and W. J. Rugh. Input-output pseudolineariza-tion for nonlinear systems. IEEE Trans. Automat. Contr.,39:2207–2218, 1994.

[Lue66] D. G. Luenberger. Observers for multivariable systems. IEEETrans. Automat. Contr., 11(2):190–197, 1966.

[Lue71] D. G. Luenberger. An introduction to observers. IEEE Trans.Automat. Contr., 16:596–602, 1971.

[Lue92] D. G. Luenberger. A double look at duality. IEEE Trans. Au-tomat. Contr., 37:1474–1482, 1992.

264 BIBLIOGRAFÍA

[Mar73] B. Markiewicz. Analysis of the computed-torque drive methodand comparison with the conventional position servo for acomputer-controlled manipulator. Technical Memorandum 33-601, The Jet Propulsion Laboratory, California Institute ofTechnology, Pasadena, California, 3 1973.

[MASA04] R. Marquez, E. Altman, and S. Solé-Álvarez. Modeling TCPand HighSpeed TCP: A nonlinear extension to aimd mecha-nisms. In Proceedings of 7th IEEE International Conference onHigh Speed Networks and Multimedia Communications (HSN-MC’04), pages 685–702, Toulouse, Francia, junio 30–julio 2,2004.

[Mec03] Virginia Tech Mechatronics. Procedure for iden-tifying permanent magnet DC motors. En In-ternet, página web: http://www.mechatronics.me.vt.edu/book/Section3/motormodelling.html, agosto 28,2003.

[Nis96] N.Ñise. Control System Engineering. Addison-Wesley, segundaedición edition, 1996.

[NvdS90] H.Ñijmejier and A. J. van der Schaft. Nonlinear DynamicalControl Systems. Springer-Verlag, New York, 1990.

[Oga87] K. Ogata. Dinámica de Sistemas. Prentice-Hall Hispanoamer-icana S.A., México, 1987.

[Oga93] K. Ogata. Ingeniería de Control Moderna. Prentice-Hall, 2da.edición edition, 1993.

[Pau82] R. P. Paul. Robot Manipulators: Mathematics, Programmingand Control. M.I.T. Press, Cambridge, MA, 1982.

[RC84] C. Reboulet and C. Champetier. A new method for linearizingnon-linear systems: the pseudolinearization. Int. J. of Control,40:631–638, 1984.

[RMC86] C. Reboulet, P. Mouyon, and C. Champetier. About the lo-cal linearization of nonlinear systems. In M. Fliess and M.Hazewinkel (Eds.), Algebraic and Geometric Methods in Nonlin-ear Control Theory, pages 311–322. D. Reidel Publishing Com-pany, 1986.

[RS00] W. J. Rugh and J. S. Shamma. Research on gain scheduling.Automatica, 36:1401–1425, 2000.

[Rug91] W. J. Rugh. Analytical framework for gain scheduling. IEEEContr. Sys. Mag., 11:79–84, 1991.

BIBLIOGRAFÍA 265

[SA90] J. S. Shamma and M. Athans. Analysis of gain scheduled con-trol for nonlinear plants. IEEE Trans. Automat. Contr., 35:898–907, 1990.

[SA92] J. S. Shamma and M. Athans. Gain scheduling: Potential haz-ards and possible remedies. IEEE Contr. Sys. Mag., 12:101–107,1992.

[SJ72] H. J. Sussmann and V. J. Jurdjevic. Controllability of nonlinearsystems. J. Differential Equations, 12:95–116, 1972.

[SK91] H. J. Sussmann and P. V. Kokotovic. The peaking phenomenonand the global stabilization of nonlinear systems. IEEE Trans.Automat. Contr., 36(4):424–440, 1991.

[SL91] J.-J. E. Slotine and W. Li. Applied Nonlinear Control. Prentice-Hall, Englewood Cliffs, NJ, 1991.

[SNLV89] S. R. Sanders, J. M. Noworolski, X. Z. Liu, and G. C. Vergh-ese. Generalized averaging method for power conversion cir-cuits. IEEE Transactions on Power Electronics, 6(2):251–259,1989.

[SR89] H. Sira-Ramírez. A geometric approach to puse width mod-ulated control in nonlinear dynamical systems. IEEE Trans.Automat. Contr., 34(2):184–187, 1989.

[SRPR92] H. Sira-Ramírez and M.T. Prada-Rizzo. Nonlinear feedbackregulator design for the cuk converter. IEEE Trans. Automat.Contr., 37:1173–1180, 1992.

[SV91] S. R. Sanders and G. C. Verghese. Synthesis of averaged circuitmodels for switched power converters. IEEE Trans. Circuitsand Systems, 38(8):905–915, 1991.

[Vid87] M. Vidyasagar. Control System Synthesis. MIT Press, Cam-bridge, MA, 1987.

[Wal91] S. Walas. Modeling with Differential Equations in ChemicalEngineering. Butterworth-Heinemann, Boston, E.E.U.U., 1991.

[Won67] W. M. Wonham. On pole assignment in multi-input control-lable linear systems. IEEE Trans. Automat. Contr., 12:660–665,1967.

[WR87] J. Wang and W. J. Rugh. Feedback linearization families fornonlinear systems. IEEE Trans. Automat. Contr., 32:935–940,1987.