7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 1/174
Sistemas Electrónicos de Control
Curso 2013/2014-1
Tema 5. Control avanzado
Profesora: Rosa Mª Fernández-Cantí
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 2/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 2
Contenido
1.
Control en el espacio de estado ..................................................................... .......................................... 4
1.1
Descripción de sistemas en el espacio de estado ...................................................................... ........ 4
1.1.1 Descripciones de sistemas dinámicos: ED, FT y EE ............................................................... 4
1.1.2 Conversión de FT a EE. Polos y autovalores ........................................................................... 7
1.1.3 Conversión de EE a FT. Formas canónicas ........................................................................... .. 8
1.1.4
Solución de ecuaciones de estado. Respuestas zero input y zero state .................................. 16
1.1.5
Análisis de controlabilidad y observabilidad .............................................................. ............ 22
1.1.6
Análisis de estabilidad (Lyapunov) ........................................................................................ 25
1.1.7 Ventajas de las EE frente a ED y FT ...................................................................................... 26
1.2 Control modal ................................................................................................................................. 29
1.2.1 Regulador del estado. Fijación de polos .............................................................. .................. 29
1.2.2 Observador del estado ............................................................................................................ 34
1.2.3
Regulador basado en observador. Compensador ................................................................... 37
1.3
Control óptimo. Regulador LQ....................................................................................................... 40
1.3.1
Introducción al control óptimo ........................................................................... .................... 40
1.3.2
Formulación del problema del control óptimo........................................................................ 41
1.3.3
Compensación analítica vía ISE del regulador LQ ................................................................. 42
1.3.4 El regulador LQ con horizonte infinito ........................................................................... ........ 43
1.3.5 El regulador LQ con horizonte finito .............................................................. ........................ 47
1.3.6 Retroacción de estado con acción integral ............................................................. ................. 50
1.4
Control óptimo estocástico .......................................................................... .................................... 51
1.4.1 Enfoque estocástico ................................................................ ................................................ 51
1.4.2
Retroacción directa ........................................................... ...................................................... 54
1.4.3 Reconstrucción óptima del estado. Filtro de Kalman-Bucy .................................................. 56
1.4.4
Regulador LQG ............................................................... ....................................................... 62
1.5
Ejercicios resueltos ................................................................ ......................................................... 67
2.
Técnicas de control robusto .................................................................. ................................................. 79
2.1
Conformación del lazo (loopshaping) ......................................................................... .................... 80
2.1.1 Condiciones de comportamiento robusto ............................................................................... 81
2.1.2 Ejemplo .................................................................................................................................. 81
2.2 Teoría cuantitativa de la retroacción (QFT) ........................................................................ ........... 83
2.2.1 Regiones de incertidumbre .................................................................................................. ... 83
2.2.2
Plantillas para el diseño .......................................................................................................... 84
2.2.3
Ejemplo .................................................................................................................................. 86
2.3 Métodos H ∞ ............................................................ ............................................................... .......... 89
2.3.1
Transformación fraccional lineal (LFT) ................................................................................. 89
2.3.2 Obtención de la planta aumentada .......................................................................... ................ 91
2.3.3
Índices de comportamiento ................................................................. .................................... 92 2.3.4 Síntesis del controlador ............................................................................................... ........... 92
2.3.5 Ejemplo .................................................................................................................................. 93
2.4
Ejercicio resuelto ............................................................. .............................................................. . 99
3.
Control frecuencial de sistemas MIMO ............................................................................................. 110
3.1 Modelización ............................................................... .................................................................. 110
3.1.1
Representación ..................................................................................................................... 110
3.1.2 Perspectiva histórica. Del control moderno al robusto ........................................................ 114
3.1.3
Herramientas matemáticas ........................................................... ......................................... 116
3.1.4 Especificaciones ...................................................... ............................................................. 118
3.2
Análisis ............................................................... ..................................................................... ...... 121
3.2.1 Interacción y desacoplamiento ......................................................................................... .... 121
3.2.2
Análisis de la dominancia diagonal ...................................................................................... 124
3.2.3 Análisis de estabilidad .......................................................................................................... 126
3.3
Control MIMO por métodos frecuenciales .......................................................... .......................... 131
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 3/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 3
3.3.1 Control por inversión de planta ............................................................................................ 131
3.3.2 El método de los lugares característicos ..................................................................... .......... 136
3.3.3 Método de Perron-Frobenius ................................................................................................ 158
3.3.4
Direct Nyquist Array ............................................................................................................ 164
3.3.5 Inverse Nyquist Array .......................................................................................................... 169
3.4
Referencias ............................................................... ..................................................................... 174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 4/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 4
1. Control en el espacio de estado
1.1 Descripción de sistemas en el espacio de estado
1.1.1 Descripciones de sistemas dinámicos: ED, FT y EE
En el primer tema vimos cómo un sistema dinámico podía representarse por medio de: ecuacionesdiferenciales (ED), funciones de transferencia (FT) y ecuaciones de estado (EE). En este tema noscentraremos en la descripción vía EE:
Ecuaciones de estado
Variables de estado (VE) x(t ). Resumen la historia dinámica del sistema. Junto con u(t ), t >0, permiten determinar el valor futuro de cualquier variable del sistema. También pueden verse comoel mínimo conjunto de condiciones iniciales (CI), x(0).
Ecuaciones de estado (EE).
),,(1 t f uxx , ),(2 t f xy : no lineales, variantes, MIMO
uBxAx )()( t t , xCy )(t : lineales, variantes, MIMO
BuAxx , Cxy : lineales, invariantes, MIMO
ubAxx , xct y : lineales, invariantes, SISO
(Nota: Se les reconoce por estar formadas por el vector de primeras derivadas y, a la derecha,relaciones algebraicas)
Ejemplo 1. Péndulo invertido. Ecuaciones diferenciales. Obtener las ecuaciones diferencialesque rigen la dinámica del montaje de la Fig. 1, con los siguientes datos:
l
x
m
M
u
x
P
Fig. 1. Péndulo invertido
Datos: M = 2kg, m = 0.1kg, l =0.5m, g = 9.81m/s2. Se supone que el cilindro no tiene masa, por loque el centro de gravedad del péndulo se sitúa en la masa m. Considerar también que el momento
de inercia I del péndulo respecto a su centro de gravedad es nulo y que el ángulo es pequeño.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 5/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 5
Solución:
Coordenadas del centro de gravedad del péndulo. Coinciden con la posición de la bola:
cos
sin
l y
l x x
G
G
Movimiento rotacional de la bola: cossin l H l V I , donde H , V son las componenteshorizontal y vertical de la fuerza medida en el punto P .
Movimiento horizontal de la bola: H l xdt
d m )sin(
2
2
Movimiento vertical de la bola: mg V l dt
d m )cos(
2
2
Movimiento horizontal del carrito: H u x M
Si el ángulo de rotación es pequeño, estas cuatro ecuaciones quedan como:
l H l V I
H l xm )(
mg V 0
H u x M
Sustituyendo I = 0 y combinando las ecuaciones (2) con (4) y (1) con (3), el resultado es:
uml x M m )(
mgl xml ml 2
Ejemplo 2. Péndulo invertido. De ecuaciones diferenciales a función de transferencia. A partir de las ecuaciones diferenciales:
uml x M m
)(
mgl xml ml 2
se pide obtener la ecuación diferencial que relaciona u con (que no aparezca x ni sus derivadas) y,a partir de ella, obtener la función de transferencia ( s)/U ( s). ¿Es estable el sistema?
Solución:
Simplificando ml , la segunda ecuación es g xl . Sustituyéndola en la primera, da
uml l g M m ))(( o, lo que es lo mismo, u Ml g M m )( . Aplicando
Laplace con condiciones iniciales nulas,
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 6/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 6
)()()()(2 sU s g M m s Mls ,
se obtiene finalmente:
601.20
1
)(
1
)(
)(22
s g m M Mls sU
s
Es inestable puesto que sus polos están en –4.539 y en +4.539.
Ejemplo 3. Péndulo invertido. De ecuaciones diferenciales a ecuaciones de estado. A partir delas ecuaciones diferenciales:
uml x M m )(
mgl xml ml 2
se pide obtener las ecuaciones de estado tomando como variables de estado a 1 x , 2 x ,
x x 3 , x x 4 , y como variables de salida a y x.
Solución:
Por un lado, 21 x x y 43 x x . La segunda ecuación del enunciado queda como
1422 mglx xml xml o, lo que es lo mismo, 214 xl gx x . Sustituyendo ésta en la primera
ecuación del enunciado, u xml x M m 24)( , se obtiene u Mgxmgx x Ml 112 . En
definitiva,
000
1000
000
0010)(
M mg
Ml g m M
A ,
M
Ml
1
1
0
0
b ,
0100
0001C ,
0
0d
%pl antaM=2; m=0. 1; g=9. 81; l =0. 5;A=[ 0 1 0 0;
( M+m) *g/ ( M*l ) 0 0 0;0 0 0 1;- m*g/ M 0 0 0] ;
B=[ 0 - 1/ ( M*l ) 0 1/ M] ' ;C=[ 1 0 0 0;
0 0 1 0] ;D=[ 0 0] ' ;
A =0 1. 0000 0 0
20. 6010 0 0 00 0 0 1. 0000
- 0. 4905 0 0 0
B =
0- 1. 0000
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 7/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 7
00. 5000
C =1 0 0 00 0 1 0
D = 00
1.1.2 Conversión de FT a EE. Polos y autovalores
Conversión de EE a FT
Para pasar de las ecuaciones de estado a la función de transferencia basta con aplicar la
transformada de Laplace a las EE y despejar la relación entre la salida y(t ) y la entrada u(t ) con CInulas:
u y
u
DCx
BAxx ⇒
)()()(
)()()0()(
sU s sY
sU s s s
DCX
BAXxX
))()0(()()( 1 sU s s BxAIX
state zeroinput zero
sU s s sU s sY )()()0()()()()( 11 DBAICxAICDXC
DBAIC
Φ
x
)(
1
0)0(
1 )()()()( s
s sU sY s H
Polos y autovalores
Puesto que DBAIC 1)()( s s H , los polos de la función de transferencia coinciden con los
autovalores de la matriz de estado A. Notar que el denominador de H ( s) coincide con el polinomiocaracterístico de A expresado en s.
Por ejemplo, para el caso del péndulo simple del Tema 1 tenemos lo siguiente:
>> num=1; den=[ 1 0. 5 10] ;
>> H=t f ( num, den) ;
>> r oots( den)ans =
- 0. 2500 + 3. 1524i- 0. 2500 - 3. 1524i
>> a=[ 0 1; - 10 - 0. 5] ; b=[ 0; 1] ; c=[ 1 0] ; d=0;
>> H=ss( a, b, c, d) ;
>> ei g(a)ans =
- 0. 2500 + 3. 1524i- 0. 2500 - 3. 1524i
Esquema de bloques de la realización de estado
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 8/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 8
Puesto que DBAIC 1)()( s s H , si suponemos D=0 (que es lo más habitual,
correspondiente a sistemas estrictamente propios), el esquema de bloques de la realización deestado es:
x
A
B C xu +
+
Fig. 2. Esquema de bloques
Ejemplo 4. Péndulo invertido. Polinomio característico y autovalores. Considerar de nuevo el péndulo invertido de la Fig. 1.Se pide obtener su polinomio característico. ¿Es estable el sistema?
Solución:
Polinomio característico: 24 601.20)(
Es inestable porque tiene un autovalor (polo) en +4.539.
al f a=pol y(A)al f a =
1. 0000 - 0. 0000 - 20. 6010 0 0
roots ( al f a)ans =
0
04. 5388- 4. 5388
1.1.3 Conversión de EE a FT. Formas canónicas
Conversión de FT a EE
La conversión de FT a EE no es única pero existen ciertas formas que presentan ventajas frente aotras. Son las formas canónicas y se obtienen aplicando de manera inversa la regla de Mason vistaen el Tema 1. A fin de eliminar los términos de productos de lazos y simplificar los términos , i,se hace que todos los lazos se toquen (tengan al menos un nodo en común) y que todos los caminostoquen también a todos los lazos (pasen también por dicho nodo). Cuando el nodo en común es elnodo de entrada se obtienen las formas controlables y cuando es el de salida las observables.
Considerar la función de transferencia
no
nn
no
nn
on
nn
on
n
sa sa sa
sb sb sb
a sa sa s
b sb sb s H
)1(1
11
)1(1
11
11
1
11
1
1)(
Vamos a ver las formas canónicas más comunes:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 9/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 9
Forma companion controlable (FCC)
También llamada directa 1D. Se obtiene por inspección directa de los coeficientes de H ( s) y, portanto, no requiere calcular ni polos ni ceros.
-an-1
-a1
-an-2
-a0
bn-1
b1
bn-2
b0
s-1
xn xn-1 x1 x2
s-1 s-1
u
1
…
…
…..
Fig. 3. Forma canónica controlable
A
0 1 0
0 1
0 1 1
a a an
, b
0
0
1
c t nb b b 0 1 1
Forma companion controlable (FCC) de Matlab
Como en Matlab los nodos se numeran al revés, la FCC resultante obtenida con tf2ss es:
-an-1
-a1
-an-2
-a0
bn-1
b1
bn-2
b0
s- x1 x2 xn xn-1
s- s- u
1
…
y
…
…..
Fig. 4. Forma canónica controlable (matlab)
0100
001021
aaa nn
A ,
0
0
1
b
021 bbb nnt c
Forma companion observable (FCO)
También llamada directa 2D: Si se toma la nomenclatura de nodos de la Fig. 3, puede obtenerse por
transposición de las matrices de la FCC ( A A FCO FCC T , b c FCO FCC
t T , c b FCO
t FCC T ):
-an-1
-a1
-an-2
-a0
bn-1
b1
bn-2
b0
s-1 xn xn-1 x1 xn-2
s-1 s-1 u
1
…
…
…..
Fig. 5. Forma canónica observable
A
0 0
1
0 1
0
1
1
a
a
an
, b
b
b
bn
0
1
1
c t 0 0 1
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 10/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 10
Forma canónica diagonal (FCD)
También llamada desacoplada. Se obtiene a partir de la descomposición de H ( s) en suma defracciones simples. Requiere el cálculo de polos y residuos.
n
n
on
nn
on
n
s
c
s
c
s
c
a sa sa s
b sb sb s H
2
2
1
1
11
1
11
1)(
cn
c1
b0
u
1
…
2
s-1
1
s-1
1
1
c2
… …
n
s-1
Fig. 6. Forma canónica diagonal
1
2
0 0
0
0
0 0
n
, b n
1
1
1
c nt
nc c c 1 2
Forma canónica en cascada
También llamada serie o tándem. Se obtiene a partir de la descomposición de H ( s) en producto defracciones simples,
n
mn
on
nn
on
n
s
z s
s
z sb
a sa sa s
b sb sb s H
2
11
11
1
11
1 )()(
1
1
s
bm...
n
m
s
z s
Fig. 7. Forma canónica serie
Conversión entre formas canónicas
Pasar de una representación de estado (canónica o no) implica hacer un cambio de las variables deestado y hacer la transformación de manera que se preserven sus características dinámicas(estabilidad, controlabilidad y observabilidad). Por ello, la transformación debe ser de similaridad(conserva los autovalores).
El cambio de variables de estado es:
- Sistema a transformar: x Ax b u
y t c x
- Cambio general de variables: x x
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 11/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 11
- Transformación: x Tx
- Sistema transformado: x Ax b u
y t c x
donde A T AT 1
, b T b 1
y c c Tt t
La matriz de paso T debe ser una matriz unitaria, T*T=I, TT*=I, y su valor será distinto según seala forma canónica que queremos calcular:
Conversión a forma canónica diagonal. Matriz modal
En este caso la transformación requerida viene dada por T=M, siendo nmmmM 21
la matriz modal formada por columnas de autovectores por la derecha (right eigenvectors,
iii uAu , por lo que también se denota por nuuU 1 ). También es posible formar la
matriz modal por filas (left modal matrix:
t n
t
T
v
v
V
1
), cuyas filas son los autovectores por la
izquierda t iv , T
iiT i vAv .
La variable transformada suele denotarse por z en vez de x , y la matriz de estado resultante se sueledenominar en vez de A.
Casos especiales: Si A es companion con autovalores distintos entonces M es una matriz de Vander Monde. Si los autovalores son complejos, será diagonal por bloques.
Conversión a forma canónica controlable. Variables de fase
La matriz que realiza esta transformación es T M W c , siendo Mc la matriz de controlabilidad y W la matriz de Toëplitz obtenida a partir del polinomio característico del sistema.
Expresión de Mc : M b Ab A bcn 1 , siendo n el número de estados.
Obtención de W a partir de ( ) n
nna a a1
11 0 : W
a a
a
n
n
1 1
1
11 0
1 0 0
Conversión a forma canónica observable
La matriz que realiza la transformación es T WM
o
1, siendo Mo la matriz de observabilidad y
W la misma matriz de Toëplitz presentada en el apartado anterior.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 12/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 12
Expresión de Mo : M
c
c A
c A
0
1
t
t
t n
, siendo n el número de estados.
Ejemplo 5. Realizaciones de una H ( s). Formas canónicas. Dada la función de transferencia
34
2)(
2
s s
s s H
Se pide:
1) Obtener su realización en Forma Companion Controlable (FCC) (versión Matlab). (Matlab:tf2ss)
num=[ 1 2] ;den=[ 1 4 3] ;di sp( ' FCC mat l ab' )[ a, b, c, d] =t f 2ss( num, den)
FCC (MATLAB): 210
1
01
34
t
cM cM cM c;b;A
s-1 s-1
-4
-3
u
y
1
1
2
x2 1 x 21 x x
2) Obtener su realización en Forma Companion Controlable (FCC) (versión teoría). (Matlab:rot90, flipud, fliplr)
di sp ( ' FCC t eor i a' )a=r ot 90( a, 2) , b=f l i pud( b) , c=f l i pl r ( c),
FCC (teoría): 12
1
0
43
10
t ccc c;b;A
s-1 s-1
-4
-3
u y
1
1
2
x1 2 x 21 x x
3) Obtener su realización en Forma Companion Controlable (FCC) a partir de la trasformación de
similaridad xTx ˆ , WMT c . (Matlab: ctrb, poly, inv)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 13/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 13
di sp( ' FCC t oepl i t z ' )Mc=ct r b( a, b) ;pol =pol y(a) ;W=[ pol ( 2) 1; 1 0] ;
T=Mc*W;aFCC=i nv( T) *a*T
bFCC=i nv(T) *bcFCC=c*T
FCC: 121
0
43
10
t ccc c;b;A
4) Obtener su realización en Forma Companion Observable (FCO) a partir de la trasformación de
similaridad x Tx , T WM ( )o1. (Matlab: obsv, poly, inv)
di sp( ' FCO t oepl i t z ' )Mo=obsv( a, c) ;
T=i nv( W*Mo) ' ;
aFCO=i nv(T) *a*TbFCO=i nv(T) *bcFCO=c*T
FCO: 101
2
41
30
t
ooo c;b;A
s-1 s-1
-4
-3
u y
1
1 2
x2 1 x 12 x x
5) Obtener su forma canónica en cascada
3
2
1
1
34
2)( 2
s
s
s s s
s s H
u y
u
021
0
1
31
01
x
xx
s-1
-1
1
u y
2 1
x1 1 x 2 x s-1
-3
x2 1 1
6) Obtener su forma canónica diagonal
3
5.0
1
5.0
34
2)( 2
s s s s
s s H
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 14/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 14
u y
u
05.05.0
1
1
30
01
x
xx
s-1
-1
1
u y
0.5 1 x1 1 x
2 x s-1
-3
x2 0.5
Ejemplo 6. Forma canónica diagonal y de Kalman. Dado el sistema con:
011
212
425
A ;
11
13
11
B ;
001
213C
Se pide:1) Convertir las matrices A, B y C a la Forma Canónica Diagonal (Nota: Calcularla a través dex Mz ).
a=[ 5 - 2 - 4; 2 1 - 2; 1 - 1 0] ;
b=[ 1 - 1; 3 1; - 1 - 1] ;c=[ 3 - 1 - 2; - 1 0 0] ;d=zeros( 2) ;%di agonal obt eni endo T[ T, D] =ei g( a) ,an=i nv( T) *a*Tbn=i nv( T) *bcn=c*T;
T =- 0. 7071 0. 7071 0. 0000- 0. 7071 - 0. 0000 - 0. 8944- 0. 0000 0. 7071 0. 4472
D =3. 0000 0 0
0 1. 0000 00 0 2. 0000
an =3. 0000 - 0. 0000 - 0. 0000
- 0. 0000 1. 0000 - 0. 00000. 0000 0. 0000 2. 0000
bn =- 1. 4142 1. 41420. 0000 0. 0000
- 2. 2361 - 2. 2361
cn =- 1. 4142 0. 7071 0. 00000. 7071 - 0. 7071 - 0. 0000
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 15/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 15
2) Convertir las matrices A, B y C a la Forma Canónica Diagonal (Nota: Calcularla a través de lafunción canon).
%di agonal canonFCD=canon( ss( a, b, c, d) , ' modal ' )
a =x1 x2 x3
x1 3 0 0x2 0 1 0x3 0 0 2
b =u1 u2
x1 - 1. 414 1. 414x2 5. 024e- 015 4. 082e- 015x3 - 2. 236 -2. 236
c =x1 x2 x3
y1 - 1. 414 0. 7071 4. 552e- 015y2 0. 7071 - 0. 7071 - 2. 913e- 015
d =u1 u2
y1 0 0y2 0 0
Cont i nuous- t i me model .
3) Obtener la Forma Canónica Controlable de Kalman (FCCK), separando el subsistema controlable( cA ) del no controlable ( cA ).
Nota: La transformación es xTx ˆ , 21 TTT
c
c
AAAA
012 , siendo T1 una submatriz
con nn 1 columnas linealmente independientes de cM y el resto (T2) columnas arbitrarias que
no hagan singular la matriz T. La función ctrbf de matlab da como resultado
c
c
AA
AA
21
0.
%FCCK[ aa, bb, cc, T, k] =ctr bf ( a, b, c);aa =
1. 0000 - 0. 0000 0. 0000- 5. 8424 2. 8000 - 0. 16332. 6833 - 0. 9798 2. 2000
bb =- 0. 0000 - 0. 00000. 4472 - 1. 3416
- 3. 2863 - 1. 0954
cc =- 3. 2660 1. 7889 - 0. 36510. 4082 - 0. 8944 0. 1826
T =- 0. 4082 0. 4082 0. 81650. 8944 - 0. 0000 0. 4472
- 0. 1826 - 0. 9129 0. 3651
k =2 0 0
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 16/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 16
1.1.4 Solución de ecuaciones de estado. Respuestas zero input y zero state
También en el primer tema vimos cómo la respuesta de un sistema lineal estaba formada por lasuperposición de dos términos:
Respuesta zero state (ZS): Respuesta del sistema debida únicamente a la excitación u(t ),suponiendo pues condiciones iniciales nulas (x(0)=0).
Respuesta zero input (ZI): Respuesta del sistema debida únicamente a la energíaalmacenada en él en el instante 0, es decir, debida únicamente a las condiciones inicialesx(0), suponiendo excitación nula, u(t )=0.
Vamos a ver cómo se obtiene la respuesta temporal a partir de las ecuaciones de estado.
Por Laplace. Matriz resolvente y matriz de transición
BuAxx )()()0()( s s s s BUAXxX
)()0()()( s s s BUxXAI
)()0()()( 1 s s s BUxAIX
ZS
t t
ZI
t d eet 0
)( )()0()( Buxx AA
A la matriz 1)()( AIΦ s s se la llama matriz resolvente. Para pasar al dominio temporal se
usa la transformación de Laplace inversa (y de manera análoga al caso SISO: at ea s )/(1 ).
Así, la transformada inversa es t et A)( y se la llama matriz de transición.
Para obtener la expresión en el tiempo de x(t ) necesitamos calcular la matriz de transición. Este
cálculo se simplifica mucho si antes de obtenerla pasamos a FCD (puesto que, entonces t eΛ también será diagonal) y, después, volvemos a aplicar la transformación modal inversa: Sabemosque x = Mz, siendo M la matriz modal,
BuAMzzM
uBΛzBuMAMzMz n 11 con )0()0( 1xMz
d eet nt t )()0()( )( uBzz ΛΛ
Cálculo de la matriz de transición
Para calcular la matriz e t A hay diversas opciones:
a) Laplace: 11 )( AIA s Le t y obteniendo )( sΦ tanto matricialmente como
topológicamenteb) Cálculo numérico aproximado (aplicación: discretización de las ecuaciones de estado)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 17/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 17
!2
22T T e T
d
AAIA
A
BBAABIABBA T T ed e T T
d
11
0
c) Cayley-Hamilton (posibilita reducir la serie !2
22t t e t A
AIA a un polinomio)
c.1) Polinomio: 1110
n
nt e AAI
A
c.2) Cálculo de los coeficientes: 11111
1 n
not e
...1
11
nnnno
t ne
d) Desarrollo de Sylvester
d.1) Polinomio: e et t
ii
niA F
1
d.2) Cálculo de los coeficientes: FA I
i j
i j j j i
n
1( )
Ejemplo 7. Cálculo de la matriz de transición. Calcular la matriz de transición del siguientesistema por diferentes métodos:
u y
u
001
1
0
32
10
x
xx
Solución:
Primer método: Por Laplace
Matriz resolvente calculada matricialmente:
23
2
13
)(
2
13
31
223
32
10)()(
2
21
1
s s
s
s
s
s
s
s
s s s
s s ΦAIΦ
Descomposición en suma de fracciones simples de cada elemento de la matriz:
2
)1(
1
2
23
3)(
211
s s s s
s s ,
2
)1(
1
1
23
1)(
212
s s s s
s
2
2
1
)2(
23
)2()(
221
s s s s s ,
2
2
1
)1(
23
1)(
222
s s s s
s
Transformada inversa de cada término:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 18/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 18
t t t t
t t t t t
eeee
eeeee
22
22
222
2A
Segundo método: Cayley-Hamilton
Según el teorema del mismo nombre, la matriz A es solución de su polinomio característico.
210
11010
2
1
t
t t
e
ee AIA
Por tanto, hay que resolver el siguiente sistema a fin de hallar 0 y 1:
10
102 2
t
t
e
et t t t eeee 2
112
1 2
t t t t t eeeee 2220 222
t t ee
t t t t t t
t t t t
t eeeeee
eeeee
22
222
22
10 33222
2AI
A
Ejemplo 8. Simulación de respuestas ZI y ZS. Considerar de nuevo el péndulo simple del Tema1,
105.0
11
)(
)()(
22
s s s s sU
s s H
En este ejemplo veremos cómo simular las respuestas ZS y ZI.
Si obtenemos su respuesta indicial a partir de la función de transferencia, lo que estamos simulandoes sólo la respuesta ZS (recordar que la función de transferencia implicaba CI nulas):
>> H=t f ( 1, [ 1 0. 5 10] )
Transf er f unct i on:1
- - - - - - - - - - - - - - - - - - - - -s 2̂ + 0. 5 s + 10
>> st ep(H)>>
0 5 10 15 20 250
0.02
0.04
0.06
0.08
0.1
0.12
0.14
0.16
0.18Step Response
Time (sec)
A m p l i t u d e
En cambio, si trabajamos con la descripción de estado, podemos encontrar por separado ZS, ZI o la
suma de ambas. Las ecuaciones de estado del péndulo simple son:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 19/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 19
u x
x y
u x
x
x
x
001
1
010
2
1
2
1
2
1
Para el caso =10, =0.5, las siguientes figuras muestran respectivamente la respuesta zero input a
condiciones iniciales T 2.02.0)0( x y la respuesta zero state:
>> a=[ 0 1; - 10 - 0. 5] ;>> b=[ 0; 1] ;>> c=[ 1 0] ;>> d=0;
>> H=ss( a, b, c, d) ;
>> x0=[ 0. 2; - 0. 2] ;>> [ y, t , x] =i ni t i al ( H, x0) ;>> pl ot ( t , x)
0 5 10 15 20 25-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
>> a=[ 0 1; - 10 - 0. 5] ;>> b=[ 0; 1] ;>> c=[ 1 0] ;>> d=0;
>> H=ss( a, b, c, d) ;
>> [ y, t , x]=st ep( H) ;>> pl ot ( t , x)
0 5 10 15 20 25-0.4
-0.3
-0.2
-0.1
0
0.1
0.2
0.3
Notar que, en la segunda gráfica, la primera variable de estado (azul) coincide con la salida de lafunción de transferencia.
Finalmente, podemos simular la suma de la respuesta ZS y la respuesta ZI:
>> a=[ 0 1; - 10 - 0. 5] ;>> b=[ 0; 1] ;>> c=[ 1 0] ;>> d=0;
>> H=ss( a, b, c, d) ;
>> x0=[ 0. 2; - 0. 2] ;
>> t =l i nspace(0, 25, 200) ;>> u=ones(si ze(t ) ) ;>> [ y, t , x] =l si m( H, u, t , x0) ;>> pl ot ( t , x)
0 5 10 15 20 25-0.4
-0.3
-0.2
-0.1
0
0.1
0.2
0.3
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 20/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 20
Ejemplo 9. Simulación de respuestas ZI y ZS. Dada la función de transferencia
34
2)(
2
s s
s s H
se trata de obtener su respuesta temporal: Las respuestas ZI, ZS y ZI+ZS del sistema con excitación
escalón unitario y condiciones iniciales
1
1)0(x . La descripción en EE es
u y
u
012
1
0
43
10
x
xx
En primer lugar se calcula la respuesta zero-input tomando como condiciones iniciales (CI) a
1)0(1 x y 1)0(2 x . (Matlab: tf2ss, initial, ss, plot, title, xlabel):
num=[ 1 2] ; den=[ 1 4 3] ; [ a, b, c, d] =t f 2ss( num, den) ; x0=[ 1 1] ' ;%zer o i nputf i gure(1) , [ y, t , x]=i ni t i al ( s s(a, b, c, d) , x0) ;pl ot ( t , y, t , x, ' - - ' ) , t i t l e( ' zer o i nput ' ) , xl abel ( ' t ' ) ,
0 1 2 3 4 5 6 7 8 9-1
-0.5
0
0.5
1
1.5
2
2.5
3zero input
tiempo
Ahora se calcula la respuesta zero-state a una excitación escalón unitario. (Matlab: step, ss, plot,title, xlabel):
%zero st ate a escal on uni t ari of i gure(2) , [ y2, t , x2] =step( ss( a, b, c, d) , t , x0*0) ;pl ot ( t , y2, t , x2, ' - - ' ) , t i t l e( ' zer o st at e' ) , xl abel ( ' t ' ) ,
0 1 2 3 4 5 6 70
0.1
0.2
0.3
0.4
0.5
0.6
0.7zero state
tiempo
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 21/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 21
Ahora se calcula y representa la respuesta total (zero-state más zero-input). (Matlab: lsim, ss, plottitle, xlabel)
%t otalf i gur e( 3) , [ y3, t , x3] =l si m( ss(a, b, c, d) , t *0+1, t , x0) ;
pl ot ( t , y3, t , x3, ' - - ' ) , t i t l e( ' t ot al ' ) , xl abel ( ' t ' ) ,
0 1 2 3 4 5 6 7-0.5
0
0.5
1
1.5
2
2.5
3
3.5total
tiempo
Finalmente se presenta en el plano de estado ( )( 12 x x ) la respuesta del sistema a un conjunto de
condiciones iniciales (variando entre –1 y 1). (Matlab: for..end, initial, ss, plot, axis, hold on holdoff, title, xlabel, ylabel):
%pl ano de est adof i gure(4)f or x1=- 1: 0. 25: 1
f or x2=- 1: 0. 25: 1[y, t , x]=i ni t i al ( s s(a, b, c, d) , [ x1; x2] ) ;pl ot ( x( : , 1) , x( : , 2) ) , hol d on
endendaxi s([ - 1 1 - 1 1] ) , t i t l e( ' Pl ano de f ase' )xl abel ( ' x_1' ) , yl abel ( ' x_2' )hol d of f
Ejemplo 10. Péndulo invertido. Simulación de la respuesta zero input. Considerar de nuevo el péndulo invertido de la Fig. 1.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 22/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 22
Se pide obtener la respuesta zero input a T 0001.00 x . Representar por separado cada
una de las variables de estado (subplot).
Solución:
La respuesta a condiciones iniciales modela la perturbación con respecto al punto de equilibrio:
>> x0=[ 0. 1 0 0 0] ;>> t =l i nspace( 0, 0. 8) ;>> [y , t , x]=i ni t i al (ss (a, b, c, d) , x0, t ) ;>> pl ot ( t , x)>> xl abel ( ' t i empo' ) , t i t l e( ' pl ant a si n cont rol ' )>> l egend( ' \ theta ' , ' d\ theta/dt ' , ' x' , ' dx/ dt ' , ' Locat i on' , ' Best ' )
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8-1
0
1
2
3
4
5
6
7
8
9
tiempo
planta sin control
d/dt
x
dx/dt
1.1.5 Análisis de controlabilidad y observabilidad
Definiciones
Suponer que tenemos un sistema con n estados, algunos estables y otros inestables. Entonces,
El sistema es totalmente controlable si tenemos acceso a todos los estados desde el nodo de
control u. En el caso de que no todos los estados sean controlables, se dice que el sistema es
estabilizable si, al menos, todos los estados inestables sí que son controlables desde u. El sistema es totalmente observable si tenemos acceso a todos los estados desde el nodo de
salida y. En el caso de que no todos los estados sean observables, se dice que el sistema es detectable
si, al menos, todos los estados inestables sí que son observables desde y.
Criterios
Existen diferentes criterios para determinar si un sistema es controlable y/o observable. Porejemplo se pueden usar las matrices de controlabilidad y observabilidad:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 23/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 23
Criterio de controlabilidad: Un sistema es totalmente controlable si el rango de su matriz decontrolabilidad Mc es igual al número de estados n.
M b Ab A bcn 1
Criterio de observabilidad: Un sistema es totalmente observable si el rango de su matriz deobservabilidad Mo es igual al número de estados n.
M
c
c A
c A
0
1
t
t
t n
Aparte de las matrices Mc y Mo también se puede estudiar la controlabilidad y observabilidad pormedio de los Gramianos, por medio de la forma canónica diagonal y por medio de ladescomposición de Kalman.
Propiedades
Dualidad: La controlabilidad del sistema A b c1 1 1, , t es equivalente a la observabilidad del
sistema A A b c c b2 1 2 1 2 1 T t T t T , , .
Efecto de la retroacción de estado sobre la controlabilidad y la observabilidad: El sistema resultante(controlado) retiene la propiedad de controlabilidad de la planta, pero puede perder laobservabilidad de la planta.
Ejemplo 11. Análisis de controlabilidad y observabilidad. Estabilizabilidad y detectabilidad.
Dado el sistema definido por las siguientes matrices:
A b c
2 8 0 0
0 3 6 00 0 4 0
0 0 0 5
1
10
0
0 1 1 0, , t
se trata de estudiar su controlabilidad (estabilizabilidad) y su observabilidad (detectabilidad).
Se pide:
1) Calcular la matriz de controlabilidad bAAbbM 1 nc , determinar por inspección su
rango e interpretar el resultado. (Matlab: ctrb,rank)
a=[ 2 8 0 0; 0 3 6 0; 0 0 4 0; 0 0 0 - 5] ;b=[ 1 1 0 0] ' ;
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 24/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 24
c=[ 0 1 1 0] ;mc=ct r b( a, b) , r c=r ank( mc)
M c c
1 10 44 160
1 3 9 27
0 0 0 00 0 0 0
2 No controlable
2) Calcular la matriz de observabilidadM
c
c A
c A
o
t
t
t n
1
, determinar por inspección su rango e
interpretar el resultado. (Matlab: obsv, rank)
mo=obsv( a, c) , r o=r ank( mo)
Mo o
0 1 1 0
0 3 10 0
0 9 58 0
0 27 286 0
2 No observable
3) Hallar la Forma Canónica Diagonal e identificar los modos observables y/o controlables.(Matlab: canon)
FCD=canon( ss( a, b, c, 0) , ' modal ' )
FCD
2 0 0 0
0 3 0 0
0 0 4 0
0 0 0 5
, b n
7
8 06
0
0
. Los modos 4 y -5 no son controlables
c nt 0 012 0 28 0. . Los modos 2 y -5 no son observables
4) A la vista del resultado anterior indicar si el sistema es estabilizable y/o detectable.
El modo inestable 4 no es controlable el sistema no es estabilizable.
El modo inestable 2 no es observable el sistema no es detectable.
Ejemplo 12. Péndulo invertido. Análisis de controlabilidad y observabilidad.
Estabilizabilidad y detectabilidad. Considerar de nuevo el péndulo invertido de la Fig. 1.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 25/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 25
Se pide estudiar su controlabilidad y su observabilidad. Ídem con su estabilizabilidad y sudetectabilidad.
Solución:
Es totalmente controlable. Por tanto, también es estabilizable.
Mc=ct r b(A, B)r ank( Mc)
Mc =0 - 1. 0000 0 - 20. 6010
- 1. 0000 0 - 20. 6010 00 0. 5000 0 0. 4905
0. 5000 0 0. 4905 0
ans =4
Sin embargo, es completamente observable desde y2= x, pero no desde y1= .r ank( obsv( a, c(1, : ) ) )ans =
2
r ank( obsv( a, c(2, : ) ) )ans =
4
1.1.6 Análisis de estabilidad (Lyapunov)
Segundo método de Lyapunov
Función de Lyapunov: V t ( )x x Px , forma cuadrática definida positiva.( ) ( )V T T x x A P PA x , forma cuadrática definida negativa.
Criterio de estabilidad. Método:1) Plantear la ecuación A P PA IT .2) Resolver obteniendo P.3) Estudiar del signo de la matriz P.
Para estudiar el signo de una matriz hay que estudiar los menores (minors) de la matriz. Éstos pueden ser menores principales y menores principales básicos (leading )
El menor (asociado al elemento aij de una matriz A nn) es el determinante de la matriz (n-1)(n-1)obtenida eliminando la fila i y la columna j.
El cofactor asociado al elemento aij es el menor dotado del signo (-1)i+ j.
Ejemplo 13. Análisis de estabilidad. Dada la función de transferencia
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 26/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 26
H s s
s s( )
2
4 32
se trata de estudiar su estabilidad: 1) obteniendo sus autovalores (por tratarse de un SLI), y 2) aplicando el segundo método de Lyapunov (de gran utilidad en los sistemas no lineales).
Solución:
Primero calculamos los autovalores de dos de sus realizaciones y comprobamos que coinciden conlos polos de H s( ). (Matlab: roots, tf2ss, canon, ssdata, eig)
num=[ 1 2] ; den=[ 1 4 3] ;%pol os=r oot s( [ 1 4 3] )%FCD=canon( t f ( num, den) , ' modal ' ) ; [ a, b, c, d] =ssdat a(FCD) ,aut oval =ei g( a)%
[ a, b, c, d] =t f 2ss( num, den) ;aut oval =ei g( a)
Autovalores: 1 21 3 y
A partir de la matriz del sistema correspondiente a la Forma Companion Controlable, resolvemos laecuación de Lyapuov (A P PA IT ) y determinamos el signo de la forma cuadrática cuya matrizde coeficientes es P, mediante el criterio de Sylvester. (Matlab: lyap, eye, det)
p=l yap( a' , eye( 2) )p11=p(1, 1)det P=det ( p)i f ( p11>0) & ( det P>0) , di sp( ' establ e' ) , el se, ( ' i nestabl e' ) , end
Segundo método de Lyapunov:
Solución:
1667.11667.0
1667.01667.0P
Signos: 01667.0 y det ( ) .P 0 1667 0 Estable
1.1.7 Ventajas de las EE frente a ED y FT
Limitaciones de las descripciones entrada/salida
La función de transferencia es una descripción entrada/salida que no tiene en cuenta lo que haydentro del sistema (cosa que sí hacen las EE) y por ello puede dar problemas. Veámoslo con unejemplo:
Ejemplo 14. Limitaciones de la FT. Estudiar la estabilidad del siguiente sistema con ayuda de lafunción impulse y obteniendo la función de transferencia. Extraer conclusiones.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 27/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 27
u y
u
001
1
1
10
03
x
xx
Solución:
Si representamos sólo la salida o los estados se obtiene lo siguiente:
>> i mpul se( ss(a, b, c, d) ) >> [ y, t , x] =i mpul se( ss(a, b, c, d) ) ; pl ot ( t , x)
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 20
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1Impulse Response
Time (sec)
A m
p l i t u d e
0 0.5 1 1.5 20
1
2
3
4
5
6
7
La salida coincide con el primer estado, que es estable. Sin embargo, el segundo estado, no visibledesde la salida es inestable. Es decir, el sistema es inestable pero desde la salida no podemosobservarlo.
Vamos a obtener la función de transferencia de este sistema:Hay que aplicar esta fórmula: bAIc 1)()( s s H
En primer lugar calculamos la matriz resolvente ( s):
10
03)(
s
s s AI ⇒
10
03
s
s ⇒
30
01
s
s ⇒
)(
30
01
)( 1
s
s
s
s
AI
donde el polinomio característico es )1)(3()( s s s .
Así,
3
1
)1)(3(
1
)(
1
)(
3
101
1
1
)(
30
01
01)(
s s s
s
s
s
s
s
s
s
s
s
s H
El polo inestable se ha cancelado y no aparece en la función de transferencia (¡!).
¿Por qué sucede esto? La FCD nos muestra que el autovalor inestable +1 no es observable desde lasalida:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 28/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 28
s-1
-3
1
u y
1 1
x1 1 x
2 x s-1
+1
x2
El sistema es totalmente observable pero no es detectable.
Comparación ED, FT y EE
ED: modelos obtenidos a partir de las leyes de la física
difíciles de obtenergenerales (NL, MIMO, CI)describen con mucho detalle la dinámicano son adecuados para el diseño de controladores
FT: modelo sencillo polosadecuado para análisis cuantitativo rápidoadecuado para diseño de controladoreslimitados a SISO, LTI, CI nulasal ser una descripción E/S se pierde información interna
EE: modelo de EDs de 1er ordenautovaloresgenerales (NL, MIMO, CI)la realización en EE no es única permiten el análisis por simulación numéricaadecuados para el diseño de controladores (por ordenador)contiene información sobre la estructura interna del sistema
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 29/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 29
1.2 Control modal
1.2.1 Regulador del estado. Fijación de polos
Formulación del problema
1) Planta: , Condiciones iniciales (CI): x( )0 0 , ( ) de grado n
y t c x
2) Objetivo del control: Suponiendo que se ha producido una perturbación de las condiciones
iniciales x x( )0 0 , el objetivo es conseguir que el estado vuelva a su valor original, según una
dinámica caracterizada por un polinomio característico c( ) cualquiera pero razonable. Enresumen, se trata de cambiar ( ) por c ( ) .
Solución del problema
1) Condición de existencia: El sistema debe ser controlable, es decir, rango nc( )M .
2) Ley de control: Retroacción de las variables de estado u t t ct ( ) ( ) k x
3) Esquema de bloques
x
A
b ct
k ct
xu
-
+
+
Fig. 8. Retroacción de las variables de estado
4) Métodos de cálculo del vector de ganancias: El vector t ck se puede calcular de diversas
formas:a) Por simple inspección (si las ecuaciones de estado están en FCC).
b) Por identificación de coeficientes: I A bk ct
c ( )
c) Utilizando la fórmula de Ackermann: k M Act
c c 0 0 1 1 ( )
d) Utilizando la fórmula de Bass-Gura: k a a M Wct
c
T
c 1
donde los coeficientes
del vector a a a an
T
0 1 1 se toman del polinomio característico de la planta
( ) n
nna a a1
11 0 , y los coeficientes de ac se toman, de manera análoga, del
polinomio deseado c ( ) a obtener una vez cerrado el lazo.
5) Sistema global: El sistema, una vez cerrado el lazo, es
( )x A bk x
c
t
y t c x donde se suele definir A A bk c ct
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 30/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 30
Comentarios
1) Unicidad de la solución: En el caso MIMO la solución (K ) no es única. El MATLAB resuelveeste problema con la instrucción place. La no unicidad, lejos de ser un inconveniente, puedeser una ventaja al permitir fijar y obtener objetivos adicionales.
2) Interpretación clásica: La retroacción de salida equivalente a la de estado ( H eq( s) ) es
Equivalencia (caso SISO): H s U s
Y s
s
s
s U s
s U s
s
seq
t
t
t
t
t
t ( )
( )
( )
( )
( )
( ) ( )
( ) ( )
( )
( )
k X
c X
k b
c b
k b
c b
u
uc
x
G( s)
t k
u
uc
G( s)
H eq( s)
Fig. 9. Retroacción de salida equivalente a la retroacción de estado
3) Ganancia del lazo: El lazo es )()()( s H sG s L eq
bΦk bΦk Xk
)()(
)()(
)(
)(
)(
)()( s
sU
sU s
sU
s
sU
sU s L t
t t c
Ejemplo 15. Regulador del estado. Cálculo de la matriz de ganancias. Considerar la planta
10
1)(
2
s s
sG
Se pide obtener por varios métodos el vector de ganancias de estado que consigue las
especificaciones dadas por5.0
(...))( 2
s s
s M . Comprobar el resultado representando las
respuestas indiciales de la planta y el servo
Solución:
La realización de estado de la planta en FCC es
u y
u
001
1
0
01
10
x
xx
Las matrices de estado de la planta y el servo en FCC son:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 31/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 31
01
10A ,
15.0
10cA
Primer método: Por simple inspección:
21
00
211
0
01
10
15.0
10
k k
c
c
k k
k bAA
211
10
15.0
10
k k ⇒ 15.1ck
Segundo método: Fórmula de Ackermann (matlab)>> a=[ 0 1; 1 0] ; b=[ 0; 1] ;>> kc=acker ( a, b, r oot s( [ 1 1 0. 5] ) )kc =
1. 5000 1. 0000
Cálculo de los polos y de las respuestas indiciales
%Pl ant a>> P=ss( a, b, c, d) ;>> st ep( P) ,
>> pol os_pl ant a=ei g(a)pol os_pl ant a =
- 11
%Ser vo>> ac=a- b*kc;>> M=ss( ac, b, c, d) ;>> st ep( M) ,>> pol os_servo=ei g(ac)pol os_servo =
- 0. 5000 + 0. 5000i- 0. 5000 - 0. 5000i
0 1 2 3 4 5 6 7 8-1500
-1000
-500
0Planta sin control
Time (sec)
A m p l i t u d e
0 2 4 6 8 10 12-2.5
-2
-1.5
-1
-0.5
0Planta con regulador de estado
Tiempo (s) (sec)
A m p l i t u d e
Ejemplo 16. Péndulo invertido. Regulador de estado. Fijación de polos. Considerar de nuevoel péndulo invertido con carrito del Ejemplo 1.
El problema: Se desea que el péndulo recupere la verticalidad en presencia de perturbaciones talescomo un golpe de viento actuando sobre la masa m o una fuerza inesperada sobre el carrito dondeestá montado el péndulo. Estas perturbaciones se modelarán como condiciones iniciales.
El objetivo de control puede conseguirse aplicando sobre el cochecillo una fuerza u apropiada. Alfinal del proceso se desea situar de nuevo al cochecillo en su posición de referencia x = 0. Lasespecificaciones piden que el proceso sea rápido (un tiempo de establecimiento de unos 2 segundos)y que el amortiguamiento sea razonable.
Se pide:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 32/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 32
1) Especificaciones: Para tener 2 st y un amortiguamiento razonable, se escogen dos polos
dominantes con = 0.5 y n = 4. Los otros dos polos se suponen iguales a –10 para que no afectena la dinámica nominal. Indicar cuáles son los polos especificados y construir el polinomiocaracterístico deseado.2) Obtener la ganancia de la retroacción de estados k c con ayuda de la función acker.
3) Obtener las matrices del sistema regulado. Comprobar el valor del polinomio característico ylos autovalores.
4) Representar la evolución de los cuatro estados a T 0001.00 x y a
.02.002.00T x Representar también el esfuerzo de control u en ambos casos.
Comentar el resultado.5) Opcional: Repetir el diseño para = 0.5 y n = 2. Comparar los resultados con el casoanterior y extraer conclusiones acerca de la velocidad y sensibilidad de ambos diseños.
Solución:
1) Polos deseados. Polinomio característico deseado:
160072019624)( 234 c
z=0. 5; wn=4;p1=- z*wn+j *wn*sqr t ( 1- z 2̂)p2=conj ( p1)p3=- 10p4=- 10[ nu, al f a_c]=zp2t f ( [ ] , [ p1 p2 p3 p4] , 1) ; al f a_c
p1 = - 2. 0000 + 3. 4641ip2 =
- 2. 0000 - 3. 4641ip3 = - 10p4 = - 10
al pha_c = 1. 0e+003 *
0. 0010 0. 0240 0. 1960 0. 7200 1. 6000
2) Ganancia de la retroacción de estados
%gananci a de l a ret r oacci on de est adoskc=acker ( A, B, [ p1 p2 p3 p4] )
kc = - 298. 1504 - 60. 6972 - 163. 0989 - 73. 3945
3) Matrices del sistema regulado. Polinomio característico. Autovalores
%si st ema en l azo cer r adoAc=A- B*kc
pol _caract =pol y(Ac)aut oval =ei g(Ac)
Ac = 0 1. 0000 0 0- 277. 5494 - 60. 6972 - 163. 0989 - 73. 3945
0 0 0 1. 0000148. 5847 30. 3486 81. 5494 36. 6972
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 33/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 33
pol _car act = 1. 0e+003 *
0. 0010 0. 0240 0. 1960 0. 7200 1. 6000
aut oval = - 10. 0000 + 0. 0000i- 10. 0000 - 0. 0000i- 2. 0000 + 3. 4641i
- 2. 0000 - 3. 4641i
>> t =l i nspace( 0, 1) ;>>x0=[ 0. 1 0 0 0] ;>> [y, t , x]=i ni t i al ( s s(ac, b, c ,d) , x0, t ) ;>> pl ot ( t , x)
0 0.2 0.4 0.6 0.8 1-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
tiempo
regulador del estado
d/dt
x
dx/dt
4) Evolución ZI de los estados del sistema regulado. Esfuerzo de control
t =l i nspace( 0, 3) ;x0=[ 0. 1 0 0 0] ;[y , x, t ] =i ni t i al (Ac,B, C, D, x0, t ) ;u=kc*x' ;f i gure(3)pl ot( t , u) , t i t l e( ' esf uerzo de cont rol ' ) , hol d onh=f i gur e( 2) ;subpl ot( 221), pl ot (t , x( : , 1)) , t i t l e( ' x_1: posi c angul ar bol a' ) , hol d onsubpl ot( 222), pl ot (t , x( : , 2)) , t i t l e( ' x_2: vel oc angul ar bol a' ) , hol d onsubpl ot ( 223) , pl ot ( t , x( : , 3) ) , t i t l e( ' x_3: pos i c l i neal car t ' ) , hol d onsubpl ot ( 224) , pl ot ( t , x( : , 4) ) , t i t l e( ' x_4: vel oc l i neal car t ' ) , hol d onset ( h, ' name' , ' Regul ador de estados' , ' numbert i t l e' , ' of f ' )
x0=[ 0. 2 0 0. 2 0] ;[y , x, t ] =i ni t i al (Ac,B, C, D, x0, t ) ;
u=kc*x' ;h=f i gur e( 2) ;subpl ot ( 221) , pl ot ( t , x( : , 1) , ' g' ) ,subpl ot ( 222) , pl ot ( t , x( : , 2) , ' g' ) ,subpl ot ( 223) , pl ot ( t , x( : , 3) , ' g' ) ,subpl ot ( 224) , pl ot ( t , x( : , 4) , ' g' ) ,f i gure(3)pl ot ( t , u, ' g' )
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 34/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 34
1.2.2 Observador del estado
Formulación del problema
1) Planta: x Ax b u , CI: x x( )0 0 desconocidas , ( ) de grado n
y t c x
2) Objetivo: Hallar una estimación asintótica del estado, ( ) ( )x xt t con una dinámica o ( ) ,
arbitrariamente elegida.
Solución del problema
1) Condición de existencia: El sistema debe ser observable, es decir, rango no( )M
2) Estimador:
x Ax b k ( ) u y yo
xc ˆˆ t y
3) Esquema de bloques:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 35/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 35
x
A
b ct
k o
xu
-
+
+
A
b ct xu y+
+
+
+
x
Fig. 10. Observador del estado
4) Métodos de cálculo del parámetro k o :
a) Por simple inspección (si las ecuaciones de estado están en FCO).
b) Por identificación de coeficientes: I A k c ot
o ( ) .
c) Utilizando la fórmula de Ackermann: k A Mo o o
( ) 1
0
0
1
.
d) Utilizando la fórmula de Bass-Gura: k WM a ao o o 1
e) Por dualidad. Resolver un problema de observabilidad para (A, ct ) es equivalente aresolver un problema de controlabilidad para (A
T , b).
5) Sistema global
x
x
A
k c A k c
x
x
b
b
0
ot
ot u
y
y
t
t
c
c
x
x
0
0 donde se suele definir: A A k co o
t
Ejemplo 17. Observador del estado. Cálculo del vector de ganancias. Considerar la planta:
43
1)(
2
s s s P
cuyos polos son 33.15.12
75.12,1 j j p . Se pide estimar sus estados con una dinámica
del observador dada por dos polos en -15.
Solución:
>> [ a, b, c, d] =t f 2ss( 1, [ 1 3 4] ) ;
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 36/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 36
>> k=acker ( a' , c' , [ - 15 - 15] ) ; ko=k‘ko =
14027
Conjunto planta + observador
ao=[ a a*0; ko*c a- ko*c] ;bo=[ b; b] ;co=[ c c*0; c*0 c] ;do=[ 0; 0] ;x0=[ 10 3 0 0] ' ;
Análisis del comportamiento
t =l i nspace( 0, 1) ;[y , t , x]=i ni t i al (ss (ao, bo, co, do) , x0, t ) ;subpl ot ( 211) , pl ot ( t , x( : , [1 3] ) ) ,subpl ot ( 212) , pl ot ( t , x( : , [2 4] ) ) ,
0 0.2 0.4 0.6 0.8 1-5
0
5
10
15Observador del estado
Tiempo (s)
x1
x3 (x
1 estimado)
0 0.2 0.4 0.6 0.8 10
1
2
3
4
5
Tiempo (s)
x2
x4 (x
2 estimado)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 37/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 37
1.2.3 Regulador basado en observador. Compensador
Formulación del problema
1) Planta: x Ax b u , CI: x x( )0 0 , ( ) de grado n
y t c x
2) Objetivo: Cambiar ( ) por c ( ) mediante la retroacción de una estimación asintótica del
estado, ( ) ( )x xt t , con dinámica o ( ) .
Solución del problema
1) Condición de existencia: El sistema debe ser controlable y observable, es decir,
rango rango nc o( ) ( )M M 2) Estimador:
- Estructura: x Ax b k ( ) u y yo
xc ˆˆ t y
- Métodos de cálculo del parámetro k o : ver apartado correspondiente
3) Ley de control:
- Estructura: u t t ct ( ) ( ) k x
- Métodos de cálculo del parámetro k ct
: ver apartado correspondiente
x
A
b ct
k o
xu
-
+
+
A
b ct xu y+
+
+
+
x
k ct
-
u
uc
Fig. 11. Regulador de estado basado en observador
4) Sistema global (metasistema)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 38/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 38
x
x
A bk
k c A bk k c
x
x
b
b
c
t
ot
ct
ot u
y
y
t
t
c
c
x
x
0
0
Comentarios
1) El sistema global pasa a ser de orden 2n.
2) Principio de separación: En el caso ideal sus polos se agrupan en dos subsistemas: ( ) ( ) ( ) c o .
3) La función de transferencia global es la misma: M s N s s
s s N s
so
c o c
( )( ) ( )( ) ( )
( )( )
(los modos del
observador no son controlables).
4) Ganancia del lazo (Mason): L s s sct
ct
ot
o( ) ( ( ) ) ( ) k bk k c k c b
1 1
Ejemplo 18. Regulador de estado basado en observador del péndulo con carrito. Se deseaestabilizar la planta del Ejemplo 1 usando un regulador basado en observador. Investigar si es
posible y, si lo es, diseñarlo.
En primer lugar hay que notar que el sistema no es totalmente observable desde la salida y1= perosí lo es desde la salida y2=x.
a=[ 0 1 0 0; 20. 6010 0 0 0; 0 0 0 1; - 0. 4905 0 0 0] ;b=[ 0 - 1 0 0. 5] ' ;c=[ 1 0 0 0; 0 0 1 0] ;d=[ 0 0] ' ;[ num, den] =ss2t f ( a, b, c( 1, : ) , d( 1) ) ; H=t f ( num, den)pol os=ei g( a)
ctr l abl e=r ank( ctr b( a, b) )
obsvabl e_desde_t heta=r ank( obsv( a, c( 1, : ) ) )obsvabl e_desde_t het a =
2
obsvabl e_desde_x=r ank( obsv( a, c( 2, : ) ) )obsvabl e_desde_x =
4
Por ello, haremos el diseño midiendo esta última salida.
Diseñamos un observador con todos los polos en -10.
k=acker ( a' , c(2, : ) ' , [ - 10 -10 - 10 - 10] ) ; ko=k'
y el mismo regulador del ejercicio anterior (notar que el sistema total tiene 8 estados):
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 39/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 39
p=- 2+j *4*sqr t ( 1- 0. 5 2̂) ;kc=acker ( a, b, [ p conj ( p) - 10 - 10] )
Y verificamos su funcionamiento:
ac=[ a - b*kc; ko*c(2, : ) a- ko*c(2, : ) - b*kc];bc=[ b; b] ;
cc=[c(2, : ) c (2, : ) *0; c(2, : ) *0 c(2, : ) ] ;dc=[ 0; 0] ;x0=[ 0. 1 0 0 0 zer os( 1, 4) ] ' ;t =l i nspace( 0, 4) ;[y , t , x]=i ni t i al (ss (ac, bc, cc, dc) , x0, t ) ;f i gur epl ot ( t , x) , xl abel ( ' Ti empo ( s) ' ) ,t i t l e ( ' Regul ador del est ado del péndul o/ carr i t o basado en observador' )
0 0.5 1 1.5 2 2.5 3 3.5 4-1.5
-1
-0.5
0
0.5
1
1.5
Tiempo (s)
Regulador del estado del péndulo/carrito basado en observador
f i gur esubpl ot ( 221) , pl ot ( t , x( : , [1 5] ) ) , t i t l e( ' x_1, x_5' ) , xl abel ( ' Ti empo ( s) ' ) ,
subpl ot ( 222) , pl ot ( t , x( : , [2 6] ) ) , t i t l e( ' x_2, x_6' ) , xl abel ( ' Ti empo ( s) ' ) ,subpl ot ( 223) , pl ot ( t , x( : , [3 7] ) ) , t i t l e( ' x_3, x_7' ) , xl abel ( ' Ti empo ( s) ' ) ,subpl ot ( 224) , pl ot ( t , x( : , [4 8] ) ) , t i t l e( ' x_4, x_8' ) , xl abel ( ' Ti empo ( s) ' ) ,
0 1 2 3 4-0.4
-0.2
0
0.2
0.4
x1, x
5
Tiempo (s)
0 1 2 3 4-2
-1
0
1
2
x2, x
6
Tiempo (s)
0 1 2 3 4-0.2
-0.1
0
0.1
0.2x3, x7
Tiempo (s)
0 1 2 3 4-1
-0.5
0
0.5
1x4, x8
Tiempo (s)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 40/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 40
1.3 Control óptimo. Regulador LQ
1.3.1 Introducción al control óptimo
Cambio de objetivos: De la fijación de polos al control óptimo
Supongamos que r = 0 y que el propósito del control es modificar las condiciones iniciales ( x0) yllevarlas al origen x 0. Ello puede conseguirse por medio de una retroacción de estado estática,con ganancias constantes (al contrario que en la compensación clásica, SISO-salida, en la cual serequiere una compensación dinámica). Para calcular dicho vector de ganancias k existen dosenfoques:
1) El control modal o fijación de polos (visto en el apartado anterior).
2) El control óptimo o minimización de una función de coste.
En el control modal los autovalores pueden resultar fijados demasiado lejos del origen. Ello obligaa generar señales de control u t ( ) elevadas que requieren actuadores de gran capacidad. Todo ellose traduce en consumo y costes. El control óptimo evita este problema pues su solución genera uncompromiso entre prestaciones (precisión, velocidad) y coste.
Como en el caso de la selección de los autovalores, la elección de la función de coste más adecuadaal problema considerado puede suponer una tarea pesada.
Criterios ( performance indexs, PI) de comportamiento para diseño óptimo
¿Qué es un diseño óptimo? En cierto sentido todos los diseños son óptimos ya que son lo “mejor”que se puede hacer dadas las restricciones económicas, de tiempo, de tecnología, etc. Aunque haydefiniciones mejores que la indicada, la idea a retener es que el concepto de óptimo es altamentesubjetivo. Así, los diseñadores tienen ideas preconcebidas, basadas en su experiencia, de lo que esun diseño “óptimo” pero, en general, les resulta difícil expresarlo de forma clara y concisa. Visto loanterior, no es de extrañar que al evaluar el comportamiento de un sistema de control se utilicendiversos criterios, y aunque algunos son más aplicables que otros, ninguno lo es de un modouniversal. Por ejemplo:
1) En el diseño por Nyquist se trata de ajustar tanto el margen de fase como el margen deganancia, procurando hallar un compromiso razonable entre ambos.
2) En el diseño por Evans, se trata de asegurar que los polos dominantes estén losuficientemente a la izquierda del eje imaginario, pero procurando no exceder ciertoslímites en cuanto al ancho de banda.
Estos ejemplos sirven para ilustrar que, en esencia, los principios del diseño óptimo (maximizar ominimizar cierto criterio) están presentes incluso en las técnicas más básicas del diseño.
Las restricciones
Los problemas de máximos y mínimos no tienen sentido en la realidad a menos que hagamosaparecer las inevitables restricciones a que todo diseño está sometido: económicas, de tiempo,
tecnológicas, etc. Este aspecto que añade realismo al problema complica enormemente su solución.Es el caso típico del control de tiempo mínimo con restricción |u(t)|< M .
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 41/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 41
1.3.2 Formulación del problema del control óptimo
Un gran número de problemas de control óptimo pueden formularse de la siguiente manera:Formulación general
Dado un sistema dinámico, ( , , )x x u f t , hallar la señal de control )(u t opt óptima en el sentidode que minimiza la función de coste
J L t dt t
t
i
f
( , , )x u
sometida quizás a ciertas restricciones de x(t ) y u(t ).
Un caso particularmente interesante es el llamado problema LQR (regulación de un sistema linealcon criterio cuadrático) que básicamente puede formularse así:
Problema LQR
Dado el sistema lineal, x Ax Bu , con condiciones iniciales x(0+), hallar uo t ( ) que las retorneal origen de manera que se minimice el criterio cuadrático:
J dt T T ( )x Qx u Ru0
Problema del control del estado final con tiempo mínimo
En muchos casos, el interés se centra en hallar la señal de control que haga que un sistemaevolucione de un estado inicial a otro final minimizando el tiempo requerido en la transición. Lasituación habitual es retornar el sistema al estado de reposo x=0 a partir de una perturbación inicial.
La función de coste (PI) queda en este caso:
J dt t t f t
t f ( )1 0
0
(habitualmente t 0 = 0)
La señal de control ha de ser finita y manejable, por lo que se ha de añadir una restricción del tipou t M ( ) , que junto a la estructura no cuadrática llevan a una solución totalmente distinta a la del
problema LQ. Las soluciones son del tipo: ))(()( t f sign M t uopt , con f (t ) una función adeterminar.
Formulación:1) Planta: ( )x Ax Bu x 0 t 0
2) Objetivo: min J dt t
t f ( )
0
1
con x 0( )t f
3) Restricción: u t M ( )
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 42/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 42
Solución:
1) Hamiltoniano BuAx T T 1H
2) Co-estados AT
Solucionando el sistema:
1 1
f t
f t n n
( )
( )
familia de curvas
Aplicando las condiciones de contorno:x x
u
0( )0
M det. constantes
3) Solución: u Bo T ot M sign( ) ( ) , donde o son las soluciones anteriores
(Nota: cuando se produce una conmutación se han de recalcular las constantes de la familia decurvas tomando como punto “inicial” el vector de estado en el instante de conmutación)
Versiones del control óptimo LQ
El problema LQ tiene dos versiones:
1) la elaborada por Wiener en los años 40 (compensación ISE por métodos transformados)2) la asociada al control moderno (regulador LQ y filtro de Kalman)
Veámoslas con algo más de detalle:
1.3.3 Compensación analítica vía ISE del regulador LQ
Este enfoque de compensación trata de hallar un corrector que permita ajustar óptimamente la salidaa la entrada mediante un criterio preestablecido. Naturalmente, ajustar la respuesta indicial alescalón implica reducir tanto el tiempo de subida t r como el sobreimpulso R pt . Así se consigue
que el error en todo instante sea pequeño, lo que también tratábamos de conseguir al elegir , n yk p .
Escogemos el ISE ( Integral Squared Error ) como medida para que la solución (compensador)resulte lineal (cosa que no ocurre en casi ningún otro caso). Si el valor de la integral ISE se
mantiene pequeño la respuesta real se aproximará a la ideal.
Restricciones
En principio este enfoque de compromiso puede resultar sólo de interés académico. En la prácticalos problemas no encajan necesariamente en la función ISE. Y en los casos en que puede seraplicable, la solución resulta trivial.
La introducción de realismo en estos problemas supone la inclusión de restricciones. En estos casosla solución no es ni trivial ni obvia. La restricción consiste generalmente en que la integral delcuadrado de cierta magnitud se mantenga limitada y sea menor o igual a N . A veces no es una
magnitud lo que deseamos restringir sino R pt o e dt . No obstante, recurrimos al caso cuadrático porque es el único que permite una solución analítica general.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 43/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 43
1.3.4 El regulador LQ con horizonte infinito
(La solución aquí presentada no es realmente óptima sino solamente subóptima por cuantoadoptamos desde el principio la solución de régimen permanente. En realidad, para horizontesfinitos la solución es variable, k (t ). Ver siguiente apartado)
Formulación del problema
Planta:
( )x Ax Bu x
y Cx
; 0 0
Objetivo: Dado el sistema anterior, perturbado de x( )0 0
a x x0( )0 , retornar al equilibrio x 0, minimizando el criterio
J dt
1
2 0
x Qx u RuT T
(Nota: A veces se desea minimizar la salida en cuyo caso,
J dt T T
1
2 0( )y y u Ru , que es reductible al caso anterior haciendo Q C C T ).
Solución del problema
Condiciones de existencia, unicidad y estabilidad de la solución:- Suficientes: 1) Planta (A,B) controlable
2) R >0, Q>0
- Necesarias: 1) Planta (A,B) estabilizable2) R >0, Q0 (en cuyo caso, la planta artificial o sintética ( , )A
T =
(A Q1 2, / ) ha de ser observable, o al menos detectable)
Ley de control : xK u opt opt
Cálculo del vector de ganancias: PBR K T opt 1 , siendo la matriz simétrica P>0 solución únicade la Ecuación Algebraica Matricial de Riccati:
A P PA Q PBR B PT T 1 0
Esta ecuación es cuadrática y da lugar a dos soluciones, pero se escoge la P que sea definida positiva. La demostración se realiza aplicando los métodos del cálculo variacional al problema LQ, pero también es posible justificar este resultado con ayuda de la ecuación de Lyapunov:
Dem.: El valor mínimo del criterio es ),0()0(2
1)( PxxK
T opt J donde P es la solución de la
ecuación de Lyapunov A P PA Qc
T
c c . Tomando RK K QQ
T
c y BK AA c , seobtiene
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 44/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 44
( ) ( ) ( )A BK P P A BK Q K RK
A P K B P PA PBK Q K RK
T T
T T T T
sustituyendo ahora K R B P 1 T se obtiene finalmente
A P PA Q PB R B P PBR B P PB R RR B P 0T T T T T T ( ) ( )1 1 1 1
A P PA Q PBR B P 0T T 1
Propiedades de la solución
1) La solución opt K no depende de las CI x(0+).
2) Coste: El valor mínimo de la integral resulta ser )0()0(2
1)( PxxK T opt opt J J ; x(0)=
x(0+). Este control, además de estabilizar la planta, genera una solución con evolución óptima(de mínimo error y consumo).
3) Unicidad: La solución es única si de entre las varias soluciones de la ecuación de Riccatielegimos la P>0 (que es única). Una de las ventajas de este método es que en el caso MIMO lasolución también es única (cosa que no ocurre en el caso modal).
4) Estabilidad: El sistema regulado xBK Ax ~)(~ opt resulta asintóticamente estable. Estecontrol, además de estabilizar la planta, genera una solución con evolución de mínimo error yconsumo. Pero la solución aquí presentada no es realmente óptima sino solamente subóptima
por cuanto adoptamos desde el principio la solución de régimen permanente. En realidad, parahorizontes finitos la solución varía con el tiempo ))(( t K .
5) Sensibilidad: Hay desensibilización a todas las frecuencias (ecuación de Kalman) |S ( j )|<1, esdecir que la respuesta frecuencial del lazo no entra en el circulo unidad centrado en -1. Los
márgenes de ganancia y fase son: o MF MG 60);,2
1( .
Ejemplo 19. LQ escalar con horizonte infinito. Considerar el sistema:
u x x 2 , x(0)=1
¿Es estable? No. El polinomio característico es 2)( p con lo que su autovalor es
02 . Además la respuesta ZI es )0()( 2 xet x t .
Vamos a resolver el problema LQ con
0
22 )
43(
2
1dt
u x J .
Condiciones suficientes para que el problema tenga solución:Q=3>0, R =1/4>0 (¿definidas positivas? Sí, se cumpleLa planta es controlable puesto que Mc=b=1=n
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 45/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 45
La ley de control óptima es xK u opt opt con PBR K T opt 1 donde P es la solución positiva de
A P PA Q PBR B PT T 1 0. En nuestro caso queda como:
232
1
2
884
848164
03440141322
p
p p p p p p
La solución válida es la positiva, p=3/2, por tanto, 62
3141 PBR T opt k
La matriz de estado del sistema controlado es 4612 opt c bk aa (estable) y el coste
mínimo es4
3)0()0(
2
1 px x J opt .
Valoración clásica del regulador LQ. Ecuación de Kalman
Un ejercicio interesante es relacionar las técnicas convencionales (Bode y Evans) con la solucióndel problema de la síntesis vía retroacción de las variables de estado, tanto modal cómo óptima(LQ). El vehículo de este tratamiento es la ecuación de Kalman. Este enfoque tiene dos ventajas:
1) Disponer de nuevos métodos de solución y2) Posibilitar una mayor comprensión clásica del problema.
En particular, estos métodos posibilitan la solución por técnicas gráficas sencillas. Más importanteque el ahorro de trabajo de cálculo, estos métodos (especialmente el de Evans) nos permiten unamayor comprensión del significado del diseño vía minimización de una función de coste. Enresumen, con los métodos convencionales también podemos diseñar un sistema de control óptimosin tener que recurrir a las matrices.
La representación del lazo LQ en un diagrama de Nyquist revela dos propiedades muy interesantes(resultado de que el lazo no entra nunca en el círculo unitario centrado9 en -1):
1) Desensibilización a todas las frecuencias 2) Márgenes garantizados de estabilidad: G (margen de aumento de ganancia infinito),
GR 1 2/ (margen de reducción de ganancia ½) y margen de fase F 60 .
La ecuación de Kalman en el caso SISO es
1 1 1 2 G H G H p eq p eq
, siendo
T s b,
T Q
La ecuación de Riccati se puede resolver gráficamente:
Por factorización espectral de 1 2
con ayuda del lugar cuadrático/simétrico.
Por aproximación de la respuesta frecuencial de 1 G j H j p eq , satisfaciendo la
ecuación de Kalman y de manera que sea factorizable.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 46/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 46
Caso particular: Si elegimos Q cc T , entonces G p y el problema se reduce al de Wiener
( ISEU ) con J e ru dt 2 2
0 siendo q=1 y e=0- y:
J e ru dt y y ru dt y ru dt r
( ) (( ) ) ( )2 2 2 200 2 20
( ) ( )x cc x x Qx
T T T ru dt u dt 2 2 2
00
La descomposición de Q en Q1/2 requiere que la matriz Q se pueda expresar como CC
T. Para elcaso diagonal es inmediato, pero en el caso general se requiere una descomposición vía Cholesky.
Caso general: Si elegimos Q0 general, para que la solución sea estable se requiere una condición
complementaria: que el sistema sintético A, T , es decir y sT x , siendo
T Q sea observable.
Criterio: J u dt T ( )x Qx 2 20
La ecuación de Kalman será: ( )( )1 1 1 2 G H G H p eq p eq
La solución es por f actorización espectral vía lugar simétrico, con G s s pt ( ) ( ) c b , ( ) ( ) s sT b
y
H s U
Y
s
seq
t
t ( )( )
( )
k b
c b
, x Qx x x x SxT T T T d
dt .
Los elementos de
1
n
pueden obtenerse de
q x x x x s x xij i j j
n
i
n
i j i j j
n
i
n
ij i ji
n
i
n
11 11
11
1
1
1
2
En el caso 22 12
11 q , 22
22 q .
En el caso 33 12
11 q , 2 22 11 33 132 q q q q , 32
33 q
Notas:
1) El vector contiene la información esencial de la matriz Q y puede ser común a varias deellas. 2) ( s) recibe el nombre de planta sintética.3) y s
T x recibe el nombre de respuesta sintética.4) Como Q es un factor del diseño puede elegirse de forma que, además de significativo, sea de
uso cómodo, por ejemplo, Q I q , ó a través de la respuesta indicial de la planta sintética.5) qij son los elementos de Q.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 47/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 47
1.3.5 El regulador LQ con horizonte finito
Formulación
1) Planta: x Ax Bu ; x( )0 0
2) Objetivo: mín J dt T T
t f
1
20
( )x Qx u Ru
donde Q>0 y R >0 (es decir, definidamente positivas)
Solución
1) Condición de existencia: Sistema controlable
2) Ley de control: xK u )(t opt opt
3) Cálculo del vector de ganancias: )()( 1 t t T opt PBR K donde P(t ) es simétrica, solución única
(si elegimos P(t )>0) de la ecuación diferencial de Riccati: A P PA Q PBR B P PT T 1 que cumple que P 0( )t f )
La conclusión es que los parámetros no son constantes sino función del tiempo. La solución,P>0 y simétrica, es solución de la Ecuación de Riccati diferencial:
A P PA Q PBR B P PT T 1
con la condición de contorno P 0( )t f .
Ejemplo 20. LQ escalar con horizonte finito. Resolver el mismo problema del Ejemplo 19 peroahora con horizonte finito.
La ecuación diferencial de Riccati es
A P PA Q PBR B P PT T 1
que en nuestro caso queda como
p p p 344 2
Método 1: Cambio de variable, pz= x
1 z z p x p x z p z p xdt
d pz
dt
d
Sustituyendo este valor en la ED
0)34()4(
344344
00
12
z x x x z p
x z p z x xp z z p x p p
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 48/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 48
z
x
z
x
z x x
x z
A
04
34
34
4
t t
t t t t
ee
eeee
88
886
6244
3326
8A
Condiciones iniciales, pz= x , )0()0()0( z p x , por ejemplo, escogemos
1)0(,)0()0( 0 z p p x :
1)0(
)0(
)(
)( 0 pe
z
xe
t z
t x t t AA
)62()44()33()26(
33
21
)()()(
80
8
80
8
8
8
t t
t t
t
t
e pee pe
keke
t zt xt p
Para hallar el valor de p0 hay que imponer la condición p(tf )=0.
Método 2: Separación de variables
ct cdt p p
dpdt
p p
dp
dt
dp p p
344344
34422
2
21
23
21
23
21
232
ln8
1lnln
8
1
81
)2/1)(2/3(4344
p
p p p
pdp
pdp
p pdp
p pdp
3
3
2
1)(ln
8
88
21
23
8/1
21
23
8/1
21
23
t
t t t
ke
ket pke
p
pke
p
pct
p
p
Para obtener el valor de k , añadimos las CI p(0)=p0, entonces21
0
2
3
0 p pk . Así,
)62()44(
)33()26(
3
3
2
1)(
80
8
80
8
8
8
t t
t t
t
t
e pe
e pe
ke
ket p
Hay que imponer p(t f )=0 y p(0)= p0 (ver método 2).
0)( f t p ,3
3
2
1)(
8
8
t
t
ke
ket p ⇒ f t ek 83
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 49/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 50/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 50
>> t f =0. 1; t =l i nspace( 0, 2) ; k=4*( 3/ 2) *( 1- exp( - 8*( t - t f ) ) ) . / ( 1+3*exp( - 8*( t - t f ) ) ) ;>> subpl ot ( 221) , pl ot ( t , k) , xl abel ( ' t ' ) , yl abel ( ' k' ) , t i t l e( ' t _ f = 0. 1' )>> t f =0. 5; t =l i nspace( 0, 2) ; k=4*( 3/ 2) *( 1- exp( - 8*( t - t f ) ) ) . / ( 1+3*exp( - 8*( t - t f ) ) ) ;>> subpl ot ( 222) , pl ot ( t , k) , xl abel ( ' t ' ) , yl abel ( ' k' ) , t i t l e( ' t _ f = 0. 5' )>> tf =1; t =l i nspace( 0, 2) ; k=4*( 3/ 2) *( 1- exp( - 8*( t - t f ) ) ) . / ( 1+3*exp( - 8*( t - t f ) ) ) ;
>> subpl ot ( 223) , pl ot ( t , k) , xl abel ( ' t ' ) , yl abel ( ' k' ) , t i t l e( ' t _ f = 1' )>> tf =4; t =l i nspace( 0, 6) ; k=4*( 3/ 2) *( 1- exp( - 8*( t - t f ) ) ) . / ( 1+3*exp( - 8*( t - t f ) ) ) ;>> subpl ot ( 224) , pl ot ( t , k) , xl abel ( ' t ' ) , yl abel ( ' k' ) , t i t l e( ' t _ f = 4' )
1.3.6 Retroacción de estado con acción integral
Si se desea seguimiento del servo a entradas en escalón (y la planta no dispone de un integrador)hay que añadir éste al lazo:
Fig. 12. Retroacción de estado con acción integral
El integrador da lugar a un estado adicional: ic k u xk
cx r yr
La planta se aumenta así:
r
ii
100
0u
Bx
c
0Ax
BA
Y también hay que aumentar la matriz Q.A continuación se resuelve la ecuación de Riccati para Ai, Bi y Qi
La ley de control resultante es:
xk
xK xk u icic k k
Y el sistema controlado final es: r k
c
ic
10
0x
c
BBk Ax
A
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 51/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 51
1.4 Control óptimo estocástico
1.4.1 Enfoque estocástico
Introducción
El problema LQ determinista aborda problemas de regulación frente a perturbaciones transitorias,en los que el sistema ve modificadas súbitamente sus condiciones de funcionamiento (equilibrio)generando unas CI x(0+)0 y el objetivo es que el regulador retorne el estado a su condición normalde equilibrio, lo antes posible y procurando que el esfuerzo de control requerido no resulte excesivo(limitación indirecta).
Aunque hay problemas que pueden formularse de esta manera, la situación más común es que las perturbaciones sean aleatorias y persistentes (o al menos durante un largo periodo) tendiendo adesviar y mantener el sistema fuera de su posición de equilibrio. Como consecuencia, el problema
radica ahora en diseñar una configuración retroactiva mediante la cual las desviaciones iniciales sereduzcan rápidamente pero que, además, atenúe lo más posible los efectos de las perturbaciones persistentes. La solución de este problema nos conducirá a la síntesis de un regulador estocástico.Su estudio se desarrolla en dos partes:
1) Retroacción directa LQ: Donde se dispone en cada instante de medidas completas y exactasdel estado.
2) Regulador Lineal Cuadrático Gaussiano LQG. Supone el caso más habitual de que sólo sedispone de medidas incompletas y ruidosas del estado, teniendo que recurrir, en este caso, a unestimador óptimo (filtro de Kalman) que, al igual que en el control modal, puede ser calculadoindependientemente del regulador gracias al principio de separación y que aquí recibe elnombre de principio de equivalencia de certeza.
Descripción estocástica de la planta
La presencia de las perturbaciones se tiene en cuenta ampliando la descripción de la planta
vCxz
wBuBAxx
21
donde w(t ) representa las perturbaciones (ruido de proceso) que actúan sobre la misma y v(t)
representa al ruido de medida.
x
A
b1 ct
xu +
+
v b2
w
+
++
Fig. 13. Planta con ruido de proceso y ruido de medida
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 52/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 52
La potencia de ambos ruidos viene determinada por las respectivas covarianzas, T E wwW ,T E vvV . Además, el estado inicial queda caracterizado por su media )( 00 t E xx y su
varianza T t t E 000000 )()( xxxxP
Ejemplo 21. Rumbo de un buque. La dinámica de una cierta embarcación viene aproximada porel siguiente modelo de segundo orden:
. .
0 1
0 0 001
0
00003
0
1
1 0
w
z v
donde: es el ángulo de orientación o rumbo, es la velocidad de giro o cambio de rumbo, es el ángulo del timón,
z es la medida ruidosa del ángulo de dirección,w es una perturbación Gaussiana de intensidad W=0.1I que representa los efectos combinados del
viento, oleaje, corrientes, etc.v es un ruido Gaussiano (debido al sensor) de intensidad V=1I.
Supóngase condiciones iniciales x( ) ( )0 12 0 T .
Se pide representar la respuesta zero-input de la salida y(t ) del sistema sin controlar en lossiguientes supuestos:1) Medida perfecta y sin perturbaciones en el sistema. (linspace, initial, plot)2) Medición imperfecta causada por el ruido de medida v. (randn, size)3) Medida perfecta, pero presencia de perturbación en el proceso w. Obsérvese la
desestabilización. (lsim)4) Medición imperfecta y sistema perturbado por ruido de proceso.
Solución:
%si n cont r ola=[ 0 1; 0 - 0. 001] ; b1=[ 0; 0. 0003] ; b2=[ 0; 1] ; c=[ 1 0] ; d=0;W=0. 1;
V=1;Q=[ 100 0; 0 0] ;R=0. 05;x0=[ 12 0] ' ;t =l i nspace( 0, 60, 200) ;v=r andn( si ze( t ) ) ' *sqrt ( V) ;w=r andn( si ze(t ) ) *sqrt ( W) ;
y1=i ni t i al (a ,b1, c ,d ,x0, t ) ;z1=y1+v;y2=l si m( a, b2, c, d, w, t , x0) ;z2=y2+v;
f i gure(1), subpl ot ( 224) ,pl ot ( t , z2) , gri d, t i t l e( ' con rui do de proceso y medi da' ) , ax=axi ssubpl ot ( 221) , pl ot ( t , y1) , gr i d, t i t l e( ' s i n rui do' ) , axi s (ax)
subpl ot ( 222) , pl ot ( t , z1) , gri d, t i t l e( ' con r ui do de medi da' ) , axi s(ax)subpl ot( 223) ,pl ot( t , y2), gr i d, t i t l e( ' con rui do de proceso' ) , axi s(ax)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 53/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 53
0 20 40 60
-20
-10
0
10
20con ruido de proceso y medida
0 20 40 60-20
-10
0
10
20sin ruido
0 20 40 60-20
-10
0
10
20con ruido de medida
0 20 40 60
-20
-10
0
10
20con ruido de proceso
Nuevos criterios de optimización. Promedio de J
1) Caso de horizonte finito
En el caso determinista teníamos
J t t dt T T T
t
t
1
2
1
21 10
1
x Sx x Qx u Ru( ) ( ) [ ]
donde la primera parte corresponde a la desviación del estado final ponderado; la segunda partecorresponde a la integral de la desviación “aumentada” de x. Al ser el horizonte finito no hay problemas de integración.
En el caso estocástico la J anterior no puede calcularse para una realización de w debido a su
naturaleza estocástica. Como consecuencia, se calcula su valor medio J , en un conjunto derealizaciones:
1
0
][2
1)()(
2
1][ 11
t
t
T T T dt t t E J E J RuuQxxSxx
2) Caso de horizonte infinito
En el caso determinista teníamos
J dt T T
1
2 0[ ]x Qx u Ru
donde, para que J sea finito, se requieren ciertas condiciones.
En el caso estocástico, puesto que w es persistente el coste tiene a infinito, J , y por ello hayque dividir por T para que pueda resultar finito. Así, el coste es
][2
1][
1lim
2
10
RuuQxxRuuQxx T T T T T
T E dt
T E J
Aún así se requieren ciertas condiciones adicionales para asegurar que J resulte finito.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 54/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 55/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 55
En el caso determinista resultaba )0()0(2
1xPxT opt J . Para el caso estocástico hay que
generalizar, )(Tr 2
1)0()0(
2
1Tr )0()0(
2
1][ PxPxPxx
n E E J E J T T
, donde
E n
T [ ( ) ( )]x x I0 0 1 .
El coste mínimo para distintas situaciones es:
1) Caso v=0, 0w : T c
x J 22Tr 2
1WBBP . Nota: Aquí la estadística del valor inicial
ya no tiene efecto (ya que el sistema es estable) y el coste depende del valor de las perturbaciones.
2) Caso 0v , 0w : T ccco
x J VK K PQP Tr 2
1. Nota: Aquí el coste mínimo
depende de las perturbaciones iniciales a través de Po, y del ruido de medida.
3) Caso 0v , 0w (alternativo): cT co
T c
x J RK K PWBBP 22Tr 21 :
equivalencia de certeza más error de estimación.
Ejemplo 22. Autopiloto. Control directo. Considerar de nuevo el buque del Ejemplo 21 dondese evidenció la necesidad de regular el sistema (mantener el rumbo = 0º). El objetivo es mantenerel rumbo = 0º, reduciendo al mínimo el zigzagueo provocado por las perturbaciones, con el fin deminimizar el consumo de combustible, hecho que formulamos con la siguiente función de coste:
Notar dos aspectos nuevos
1) La semidefinición del signo de la matriz Q del criterio anterior (compruébese que el sistemacumple las condiciones necesarias para que sea posible la aplicación de un control óptimo).
2) El efecto desestabilizador del ruido de proceso.
Suponer que es posible acceder a la totalidad de los estados de la planta, se pide:1) Efectuar un control óptimo (función lqr) según la función de coste
J dt
12
100 0 052
0
2( . ) . ¿Cuánto vale la ganancia de retroacción de estados? ¿Cuál es la
matriz P solución de la ecuación de Riccati? ¿Cuáles son los autovalores del sistemaregulado?.
2) Suponiendo que la excitación es nula pero el ruido de proceso w está presente, representar tantola respuesta y(t ) como su medida z(t ) mediante un sensor que introduce un ruido v. Obsérvesesi se han estabilizado los zigzagueos.
Solución:
%cont r ol di r ect o
[ kc, P, aut ] =l qr ( a, b1, Q, R)kc =
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 56/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 56
44. 7214 542. 7010P = 1. 0e+004 *
0. 1221 0. 74540. 7454 9. 0450
aut = - 0. 0819 + 0. 0819i
- 0. 0819 - 0. 0819i
ac=a- b1*kc;y=l si m( ac, b2, c, d, w, t , x0) ;z=y+v;f i gure(2), subpl ot ( 211) ,pl ot ( t , y) , gr i d, t i t l e( ' ret r oacci on di recta LQ' ) , axi s (ax)subpl ot( 212), pl ot (t , z) , gr i d,t i t l e( ' r et r oacci on di r ect a LQ con r ui do de medi da' ) , axi s( ax)
0 10 20 30 40 50 60-20
-10
0
10
20retroaccion directa LQ
0 10 20 30 40 50 60-20
-10
0
10
20retroaccion directa LQ con ruido de medida
1.4.3 Reconstrucción óptima del estado. Filtro de Kalman-Bucy
Introducción
En el caso estocástico (ruido de proceso y de medida actuando sobre la planta) la ganancia deretroacción del estado K c resulta la misma que en el caso determinista (es decir, es independiente deV, W).
El problema es que normalmente no tenemos acceso directo y completo a las variables de estado.Por ello es necesario utilizar un observador estocástico. El filtro de Kalman calcula la estimaciónde mínima varianza x (t ) a partir de los registros de y(t ), u(t ). Además, resulta independiente de Q y R (es decir, aunque se modifiquen Q, R la estimación óptima siempre es la misma).
Finalmente, como en el caso modal, se aplica la retroacción sobre la estimación, es decir, en elcompensador se sustituye x por x y el resultado es óptimo utilizando como función de coste el
valor medio de J ( J )
Tal y como pasaba en el control modal, el cálculo de K o, K c corresponde a problemasindependientes (teorema de separación) y duales. Ahora, en vez de utilizar la fórmula de
Ackermann se utilizará la ecuación de Riccati.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 57/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 57
En el control modal la elección del vector de ganancias K o del observador (en realidad la elecciónde o ( ) ) es un proceso más o menos arbitrario en el que se intenta mantener un compromisoentre la velocidad de respuesta de dicho observador y el comportamiento frente a perturbacionestales como el ruido de medida. Con el observador óptimo (filtro de Kalman) el cálculo de K o sehace de forma que se establece este compromiso de una forma ‘óptima’. El criterio que se sigue es
el de minimizar el cuadrado del error de reconstrucción.Previamente hay que especificar las características estadísticas de las perturbaciones que actúansobre el sistema tales como el ruido de la planta y el ruido de medida. En concreto, hay que tenerinformación de A, B1, B2, C; de las características estadísticas del ruido del proceso y del ruido demedida; y del valor medio y la varianza de las condiciones iniciales del estado.
Formulación del problema del filtro de Kalman-Bucy (observador óptimo estocástico)
Planta:
x Ax B u B w
z Cx v1 2
donde w, ruido de proceso, y v, ruido de medida, son procesos de ruido blanco Gaussianoscon media cero y matrices de intensidades W y V, respectivamente.
)()()(),()(
)(21122
1
1 t t t t t t
t E T T
Vvw
v
w
Se supone que están incorrelados ( 0)()( 2112 t V t V ).
Además, las condiciones iniciales no se conocen con exactitud. Así pues, son también unavariable aleatoria caracterizada por su valor medio y su varianza.
00000000 })()({,)}({ Pxxxxxx T t t E t E
Objetivo: Reconstrucción óptima del estado: Estimación de los estados a partir de las medidas de lasalida y la entrada, minimizando la suma de varianzas del vector de error de estimación(esperanza matemática de la suma de cuadrados del vector de errores de reconstrucción):
]ˆˆ[Tr ˆˆ T T E J xxxxxxxx
otra notación es:
)}()({min t t E T ee , donde )(ˆ)()( t t t xxe , )()(~)( t t t exxe
El filtro de Kalman es un observador óptimo que proporciona un compromiso entre lavelocidad de reconstrucción del estado y la inmunidad al ruido de medida.
Solución del problema
1) Condiciones
Si el sistema lineal e invariante es completamente controlable con w(t ) como entrada ycompletamente observable (o al menos detectable), la ecuación de Riccati tiene una única solución positiva Po(t ) y el observador es asintóticamente estable.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 58/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 58
2) Esquema de bloques del observador óptimo
x
A
b1 ct
k o
xu
-
+
+
A
b1 ct
xu y+
+
+
+
x
++ v
b2
w
Fig. 14. Filtro de Kalman-Bucy
3) Estructura: La estructura del observador de estado completo (se dice que un observador escompleto cuando el observador y la planta tienen el mismo orden) es:
)(ˆ)()()()(ˆ)(ˆ 1 t t t t t t opt o xCzK uBxAx
4) Error de reconstrucción: El error de reconstrucción es )(ˆ)()( t t t xxe satisface la
ecuación diferencial
)()()( t t t opt o eCK Ae
El error de reconstrucción tiene la propiedad de tender a cero a medida que pasa el tiempo, paracualquier condición inicial, si y sólo si el observador es asintóticamente estable, 0)(lim
t
t e .
5) Solución para horizonte finito: El vector de ganancias depende del tiempo:
01,)()( t t t t T
oopt o
VCPK
donde Po(t ) es la solución de la ecuación diferencial de Riccati:
01
22 ),()()()()( t t t t t t t oT
oT T
ooo CPVCPWBBAPAPP
con la condición inicial 0)0( oo PP y la condición inicial de estado 00 )(ˆ xx t .
Si se cumplen estas condiciones la varianza del error de reconstrucción
...})(ˆ)()(ˆ)({ 22
21 eet t t t E T
xxxx
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 59/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 59
queda minimizado para t t 0 . La matriz de covarianzas del error de reconstrucción vienedada por:
)(})(ˆ)()(ˆ)({ t t t t t E oT
Pxxxx
y la media del cuadrado del error de reconstrucción puede expresarse como:
)(Tr })(ˆ)()(ˆ)({ t t t t t E oT
Pxxxx
6) Solución para horizonte infinito. Régimen estacionario: El vector de ganancias es constante.Una de las características del filtro de Kalman es que la matriz de ganancias K o(t) alcanzavalores estacionarios muy rápidamente. Visto de otra forma, la matriz Po(t), solución de la
ecuación de Riccati converge hacia un valor estacionario oP o oP que es independiente de las
condiciones iniciales Po0. En caso de un sistema invariante todas las matrices son constantes, por lo que la solución estacionaria oP también es una matriz constante y es la única solución
definida positiva de la ecuación de Riccati:
oT
oT T
oo CPVCPWBBAPAP 1220 )( oo PP
La matriz de ganancias del observador óptimo en régimen estacionario es:
1 VCPK T o
opt o
La matriz )(t opt oK de ganancias es, en general, asintóticamente estable, y esto es lo que permite
emplear el valor estacionario como valor constante de la ganancia.
El observador óptimo estacionario presenta la ventaja de que es más sencillo de implementar.
En el caso de que el sistema sea invariante este observador óptimo estacionario es óptimo en el
sentido de que hace que el )}()({lim)}()({lim0
t t E t t E T
t
T
t eeee
sea mínimo.
7) Metasistema:
v0
I
x
x
C0
0C
y
z
vK
0w
0
Bu
B
B
x
x
CK ACK
0A
x
x 2
1
ˆˆ
ˆˆ1
opt o
opt o
opt o
Propiedades de la solución
1) Dualidad entre el observador óptimo y el regulador óptimo
El regulador LQ y el filtro de Kalman son problemas duales. Así, tenemos la siguiente equivalenciade matrices:
LQ A B C Pc K c Q R
FK AT C
T BT Po T
co K K T 22WBB V
Tabla 1. Dualidad LQR-Filtro de Kalman
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 60/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 60
La dualidad entre ambos problemas puede usarse para obtener las propiedades (estacionarias) delobservador óptimo a partir de las del regulador óptimo. Además, esta dualidad permite usar lasfunciones de Matlab que resuelven el problema LQ (por ejemplo, lqr) para resolver el filtro deKalman, y al revés (función lqe).
2) Régimen permanente del observador óptimo
Asumiendo que 00 oP , en la medida que t o la solución de la ecuación de Riccati
tiende al valor estacionario oP si y sólo si el sistema no tiene ningún polo que sea al mismo
tiempo inestable, no observable y controlable.
Si el sistema es detectable y estabilizable, la solución de la ecuación de Riccati tiende al
valor estacionario ,, 0 t oP para todo .00 oP Esta condición es suficiente pero no
necesaria.
Si oP existe, es una solución simétrica y no definida negativa de la ecuación algebraica de
Riccati: oT
oT T
oo CPVCPWBBAPAP 1220 . Si el sistema es detectable y
estabilizable, oP es la única solución no definida negativa de la ecuación algebraica de
Riccati. Esta condición es suficiente pero no necesaria.
Si oP existe, es definida positiva si y sólo si el sistema es completamente controlable.
Si oP existe, el observador óptimo en régimen permanente
)(ˆ)()(ˆ)(ˆ t t t t o xCzK xAx , donde 1 VCPK T oo es asintóticamente estable si y
sólo si el sistema es detectable y estabilizable.
Si el sistema es detectable y estabilizable, el observador óptimo en régimen permanenteminimiza el )()(lim t t E T
t oee
para cualquier 00 oP . Este valor mínimo es: oPTr .
Notas históricas
R. E. Kalman (Budapest, 1930), se graduó MS(EE) en el MIT con Guillemin, con una tesissobre las ecuaciones en diferencias de segundo orden en la que comprobó una diferenciasubstancial con la ecuación diferencial del mismo orden (comprobó que podía incluso entrar enrégimen caótico). En 1955 pasó a la Universidad de Columbia (con Ragazzini - control digitaly Zadeh - sistemas fuzzy) donde realizó su doctorado (1957). Más tarde trabajó un año en IBM
y otros 6 en el RIAS.Sus trabajos en Teoría de Sistemas y Álgebra. En 1953 estudiando los trabajos de Ragazzini,descubrió que los sistemas discretos también podían ser abordados por métodos transformadosal igual que los continuos. De aquí empezó sus estudios sobre la conexión entre Teoría deSistemas y Álgebra. En 1954, abordó el tema de la controlabilidad, tratando de buscar uncriterio algebraico para la misma y lo halló en el rango de Mc.
El descubrimiento del filtro de Kalman a partir de Wiener. En 1958, mientras trabajaba en elRIAS, un día yendo en el tren que le llevaba de retorno a Baltimore, se le ocurrió la idea deaplicar las variables de estado al filtro de Wiener. Con la restricción de dimensión finita, hallóla expresión del filtro de Wiener en formato de variables de estado y cuya demostración resultó(de esta manera) mucho más sencilla que la original y lo suficiente para ser comprensible ya a
nivel de pregrado.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 61/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 61
Presentación del filtro de Kalman. Su trabajo despertó un gran escepticismo, por lo que primero lo publicó en una revista de Ingeniería Mecánica. Su segundo artículo, sobre el filtrocontinuo, fue rechazado. Persistió en exponer sus ideas hasta que fue aceptado por lacomunidad científica.
Primeras aplicaciones. Donde primero encontró una audiencia receptiva fue en la NASA,
donde pronto vieron sus grandes posibilidades para la estimación y control de la trayectoria del proyecto Apolo, desarrollándose (Schmidt) el filtro de Kalman extendido para problemas nolineales. En 1961 Battin, que ya usaba las variables de estado para el diseño e implementaciónde sistemas de navegación astronáutica, incluyó el KF como parte del sistema de navegaciónde a bordo. En aeronáutica el KF resolvió dos problemas: a) el de combinar los datosasociados al radar con sensores de inercia para llegar a la estimación global de la trayectoriadel avión. b) el rechazo asociado a la detección de errores exógenos en los datos de medida.
Otras líneas de Teoría de Sistemas. En 1960 Kalman demostró que la observabilidad (ensistemas dinámicos) tenía una relación algebraica dual en la controlabilidad y, además,demostró que eran problemas separados. Un poco más tarde, Bucy (RIAS) sugirió a Kalmanque la ecuación integral de Wiener-Hopf era equivalente a la ecuación diferencial de Riccati(en la hipótesis de modelo de estado de dimensión finita). Además, probaron que Riccati
puede tener solución estable a pesar de que el sistema sea inestable, pero a condición de quesea observable y controlable. Kalman también jugó un importante papel en la teoría de larealización (1962) que trata de hallar un modelo de estado que explique el comportamientoentrada/salida del sistema. El impacto del KF ha sido enorme para los que trabajan en elcampo de la estimación y control, resultando una de las tecnologías básicas en la navegaciónespacial.
Ejemplo 23. Autopiloto. Reconstrucción del estado. Considerar de nuevo el buque del Ejemplo21. Dado que en realidad no tenemos acceso directo a los estados de la planta, se pide:
1) Implementar un observador óptimo de estado (filtro de Kalman-Bucy) tal que, a partir de lasmedidas ruidosas de la salida del sistema z, estime las variables de estado de la planta: rumbo ( ) y velocidad de giro ( r ). (función lqe). ¿Cuánto vale la ganancia del estimador óptimo?¿Cuál es la matriz P solución de la ecuación de Riccati? ¿Cuáles son los autovalores delestimador de estado?
2) Representar el estado del sistema y su estimación mediante dicho filtro. Comentar la bondad dela reconstrucción del estado y su convergencia hacia el valor real.
Solución:
% f i l t r o de kal man bucy[ ko, P, aut ] =l qe( a, b2, c, W, V)
ko = 0. 7943
0. 3154P = 0. 7943 0. 3154
0. 3154 0. 2509aut = - 0. 3976 + 0. 3976i
- 0. 3976 - 0. 3976i
ameta=[ a a*0; ko*c a- ko*c] ;bmet a=[ b2 b2*0; b2*0 ko] ;cmeta=[ c c*0; c*0 c] ;dmet a=[ 0 0; 0 0] ;[ y, x]=l si m( ameta, bmet a, cmet a, dmet a, [ w’ v], t , [ x0; 0; 0] ) ;
f i gure(3)subpl ot ( 211) , pl ot ( t , x( : , [ 1 3] ) ) , gri d, t i t l e( ' estado x_1 y su esti maci on opt i ma x_3' ) ,
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 62/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 62
subpl ot ( 212) , pl ot ( t , x( : , [ 2 4] ) ) , gri d, t i t l e( ' estado x_2 y su esti maci on opt i ma x_4' ) ,
0 10 20 30 40 50 60-20
-10
0
10
20
estado x1 y su estimacion optima x
3
0 10 20 30 40 50 60-1
0
1
2
3
estado x2 y su estimacion optima x
4
1.4.4 Regulador LQG
Introducción
En el presente apartado supondremos que:
1) La planta está sometida a excitaciones aleatorias que modelan tanto las perturbacionesexternas como las internas (ruido de proceso, incertidumbre del modelo).
2) Las mediciones, además de ser incompletas (es decir, algunas de las variables de estado soninaccesibles), resultan enmascaradas (degradadas) por el ruido que, inevitablemente,introducen los sensores.
En estas condiciones, la información contiene una fuerte componente de error y, por tanto, provocadecisiones "equivocadas" del controlador, afectando así la optimalidad del resultado. Para abordarestas situaciones que introducen elementos aleatorios en el problema, se ha desarrollado el llamadoControl (Óptimo) Estocástico, que aquí se abordará desde la perspectiva de una formulación deestado.
Su tratamiento contempla varias etapas:
1) Diseño de reguladores óptimos estocásticos para sistemas sujetos a perturbacionesaleatorias, pero con medición directa y exacta de todas las variables de estado.(Retroacción directa LQ)
2) Diseño del filtro de Kalman-Bucy, capaz de estimar óptimamente el estado a partir demedidas incompletas e inciertas (contaminadas por ruido). Dicho filtro resulta unageneralización del de Wiener.
3) Diseño del compensador general: Cálculo de la ley de control necesaria para optimizar elcomportamiento de una planta sometida a perturbaciones aleatorias y de la que no sedispone del vector de estado, sólo de algunas señales de salida que, además, estáncontaminadas por el ruido de la medición.
Robustez. No obstante, en el mundo real, el Control Óptimo Estocástico, en concreto el LQG, no
extiende su radio de aplicación más allá de los problemas aerospaciales, problemas que secaracterizan por su fácil modelación, ya que permiten establecer las hipótesis de planta lineal y
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 63/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 63
posiblemente invariante, y donde el objetivo es básicamente la gestión de los recursos energéticosdisponibles (cuya traducción inmediata pasa por la optimización -minimización- de criterioscuadráticos). En aplicaciones terrestres el LQG se complementa con estrategias de recuperación dela robustez o se sustituye directamente por el control robusto.
Principio de separación o equivalencia de certeza
Los principios del control LQR y la estimación óptima pueden aplicarse conjuntamente pararesolver el problema del COE ( LQG). En el caso más general las estrategias de control yestimación deben diseñarse concurrentemente (es decir, uno depende del otro). Sin embargo, enuna amplia gama de problemas, las estrategias de control y estimación pueden ser calculadasindependientemente y luego juntarlas para formar la solución óptima. La posibilidad de separarestos diseños depende de la manera en que la incertidumbre entra en el problema y de la estadísticade las mismas.
La estrategia de control de minimizar el valor esperado de una función de coste cuadrática de un
SLI con perturbaciones aleatorias y errores de medida viene descrita por una ley de controlretroactiva que opera sobre la estimación óptima del estado. Dicha ley de control puede serformulada como si no hubiera incertidumbre en las medidas y, además, el estimador óptimo puedeser obtenido como si no hubiera control retroactivo. De esta manera los procesos de diseño delcontrolador y del regulador son separables y se dice que la ley de control es equivalente al caso decerteza (certainty equivalence). Esta propiedad supone perturbaciones aleatorias de tipo ruido blanco Gaussiano aunque esta propiedad puede ser mantenida en situaciones menos restrictivas(ruidos no Gaussianos y/o coloreados).
Formulación del regulador LQG
Planta:
x Ax B u B w
z Cx v
1 2
donde w, ruido de proceso, y v, ruido de medida, son procesos de ruido blanco Gaussianoscon media cero y matrices de covarianza W y V, respectivamente. Supóngase además queestán incorrelados.
Objetivo: Solución del problema LQ mediante una estimación de los estados a partir de las medidasde la salida, minimizando la varianza del error de estimación (~ x x x ):
J E T x x x x
Solución del regulador LQG
Principio de separación: La estrategia de control óptimo se puede descomponer en dos partes: unestimador de estado, que da la mejor estimación de los estados a partir de las salidas observadas, yuna ley de retroalimentación lineal de los estados estimados. El controlador lineal empleado es elmismo que se emplearía si no hubiera perturbaciones actuando sobre el sistema.
Estructura:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 64/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 64
xK u ˆopt c
xCy
yzK uBxAx
ˆˆ
ˆˆˆ 1
opt o
Dinámica: La dinámica del sistema en lazo cerrado queda determinada por ( opt cBK A ) y
( CK A opt o ), es decir, por la dinámica del problema de control LQ determinístico correspondiente
y por la del filtro óptimo.
Metasistema:
v0
I
x
x
C0
0C
y
z
vK
0w
0
B
x
x
CK K BACK
K BA
x
x 21
ˆˆ
ˆˆ1
opt o
opt o
opt c
opt o
opt c
Propiedades
Horizonte finito. El filtro de Kalman puede ser conectado en cascada con un controlador LQformando un posible controlador estocástico de sistemas dinámicos lineales. En realidad puededemostrarse que esta combinación es óptima y que sus dos componentes principales pueden serdiseñados independientemente. La función de coste sólo puede evaluarse en términos de valoresesperados que son estimaciones condicionadas de la media y varianza del estado (los operadores
esperanza E[ ] y traza Tr( ) son intercambiables), resultando
J E t t dt T T T
t
t
1
2
1
21 10
1
x Sx x Qx u Ru( ) ( ) ( )
1
2 1 1 1 10
1
0
1
E tr tr dt tr dt J J T T
t
t T
t
t
CE sS P x x Q xx Ruu( ) ( ) ( )
(Notas: T T QxxQxx Tr , E T T xx P xx , P x x x x E T
Componente de equivalencia de certeza:
J E tr tr dt tr dt CE T T
t
t T
t
t
1
2 1 1 10
1
0
1
S x x Qxx Ruu ( )
Componente debida al error de la estimación:
J E tr tr dt S t
t
1
2 1 10
1
S P QP
Los métodos de optimizar trayectorias de duración finita son idénticos. Aunque estemos trabajandocon SLI y con Q, R constantes, los K c, K o resultan variables. Las trayectorias óptimas (x) y lahistoria del control (u) dependen de las condiciones iniciales, y de los perfiles de w y v. Sin
embargo, los perfiles de K c y K o normalmente resultan con variaciones confinadas a breves periodos al principio y al final de la trayectoria: K o al principio (cuando las condiciones iniciales pueden contener más (o menos) información que las medidas) tiende a crecer. Inversamente K c es
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 65/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 65
constante al principio y aumenta hacia el final de la trayectoria (cuando el coste terminal puederesultar más importante que el término (coste) integral).
Sea t0 el instante en que K o ha alcanzado esencialmente su valor final y tc el instante en que K c empieza a cambiar de forma clara. Puede inferirse que las ecuaciones diferenciales de Riccati decontrol y estimación permanecen en equilibrio (ARE) en el intervalo [t0, tc] (K c, K o constantes). Sidicho intervalo es grande con relación a t0-t1 y t2-tc la función de coste estocástica J se verádominada por el término integral y por tanto kc y ko constantes podrían ser consideradas muy buenas aproximaciones de los perfiles óptimos de ko, kc. Con w estacionarios los J se haceninfinito a medida que t1 tiende a infinito por lo que conviene definir una nueva función de coste
promedio J lim J
t At
1 1
, cuyo valor puede estar acotado al crecer t1. Las condiciones de
optimalidad son las mismas para J y A pues ambos son problemas de terminal fijo.
Coste del regulador estocástico óptimo:
Directo (v=0).
Horizonte finito:
1
0
Tr )0(2
100
t
t
T oocc
T x dt J WK K PxPx
(Nota: si w=0, es el determinista: J x T c
1
200 0x P x( ) )
Horizonte infinito: T c
x A J 22Tr
2
1WBBP
Coste del regulador con filtro de Kalman ( 0v ).
Horizonte infinito: T
oco
x
A J 0Tr 2
1VK K PQP
Ejemplo 24. Autopiloto. Control óptimo estocástico (LQG). Considerar de nuevo el buque delEjemplo 21. Se pide:1) Implementar un controlador estocástico (de mínima varianza “aumentada”) a partir de la
interconexión del controlador y del estimador óptimos calculados separadamente.
2) Representar la salida (ct x) del sistema compensado y compararla con su medida ruidosa z y conla estimación de dicha salida realizada por el filtro de Kalman. Observar las ventajas de laestimación sobre la medida directa en entornos ruidosos.
3) Calcular el valor del coste mínimo.
Solución:
%cont r ol opt i mo est ocast i co ( LQG)ameta=[ a - b1*kc; ko*c a- ko*c- b1*kc];bmet a=[ b2 b2*0; b2*0 ko] ;cmeta=[ c c*0; c*0 c] ;dmet a=[ 0 0; 0 0] ;[ y, x]=l si m( ameta, bmet a, cmet a, dmet a, [ w' v], t , [ x0; 0; 0] ) ;z=y(: , 1) +v;f i gure(4)subpl ot( 211), pl ot (t , z) , gr i d,t i t l e( ' sal i da del si st ema compensado con r ui do de medi da' ) , axi s( ax)subpl ot( 212), pl ot (t , y) , gr i d,t i t l e( ' sal i da del si st ema compensado ( si n r ui do de medi da) y su est i maci on' ) , axi s( ax)
e=[x ( : , 1) - x( : , 3) x( : , 2) - x( : , 4) ] ;
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 66/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 66
J =e' *e, t r ace( J ) J = 475. 9149 42. 6885
42. 6885 127. 4428ans = 603. 3577
0 10 20 30 40 50 60-20
-10
0
10
20 salida del sistema compensado con ruido de medida
0 10 20 30 40 50 60-20
-10
0
10
20salida del sistema c ompensado (sin ruido de medida) y su estimac ion
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 67/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 67
1.5 Ejercicios resueltos
Ejercicio 1. Péndulo invertido (modelo simplificado). Control modal. Considerar ahora el
modelo simplificado de un péndulo invertido:
x
xx
01
1
0
06.20
10
y
u
donde los estados son la posición del péndulo y su velocidad, respectivamente. Las condiciones
iniciales son T 21)0( x . Se pide:
Análisis de la planta1. Obtener los autovalores de la matriz A. ¿Es estable?
2. Obtener la respuesta a las condiciones iniciales dadas. Representar cada uno de los estados enuna gráfica diferente.Regulador del estadoSe desea estabilizar la planta de manera que el polinomio característico del sistema regulado sea
96.3)( 2 c . Se pide:
1. Obtener la matriz de controlabilidad y calcular su rango. ¿Existe solución al problema deregulación?
2. Calcular el valor de la ganancia de retroacción k c con ayuda de la función acker .3. Obtener las ecuaciones de estado del sistema regulado y representar su respuesta a las
condiciones iniciales anteriores.Observador del estadoSuponiendo que no se puede acceder directamente a los estados del sistema, se decide diseñar un
observador que los estime según una dinámica definida por 6416)( 2 o . Se pide:
2. Obtener la matriz de observabilidad y calcular su rango. ¿Existe solución al problema deobservación?
3. Calcular el valor de la ganancia de Luenberger k o con ayuda de la función acker , aplicando el principio de dualidad.
4. Obtener las ecuaciones del conjunto planta+observador y representar su respuesta a lascondiciones iniciales anteriores. Representar cada uno de los estados de la planta en la mismagráfica que su estimación.
Compensador (regulador basado en observador) del estado1. Obtener las ecuaciones del sistema completo: planta+regulador+observador.2. Representar la respuesta a condiciones iniciales. . Representar cada uno de los estados de la
planta en la misma gráfica que su estimación.
(Nota: Resolver este problema con la ayuda de Matlab. Las funciones que hay que usar son: eig,ss, initial, subplot, plot, ctrb, obsv, rank, acker, roots, poly)
Solución
Análisis de la plantaLa planta es inestable puesto que uno de sus autovalores (polos) tiene parte real positiva.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 68/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 68
>> a=[ 0 1; 20. 6 0] ; b=[ 0; 1] ; c=[ 1 0] ; d=0;>> ei g( a)ans = 4. 5387
- 4. 5387
La respuesta a condiciones iniciales es:
>> [y, t , x]=i ni t i al ( s s(a, b, c, d) , [2 1] ' ) ;
>> subpl ot ( 211) , pl ot ( t , x( : , 1) ) , yl abel ( ' x_1' ) ,>> t i t l e( ' Respuesta a condi ci ones i ni ci al es' )>> subpl ot ( 212) , pl ot ( t , x( : , 2) ) , yl abel ( ' x_2' ) ,>> xl abel ( ' Ti empo' )
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.80
1000
2000
3000
x 1
Respuesta a condiciones iniciales
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.80
5000
10000
15000
x 2
Tiempo
Regulador del estadoLa matriz de controlabilidad Mc es
>> Mc=ct r b( a, b)
Mc = 0 11 0
Y su rango es completo, es decir, coincide con el número de estados de la planta (n=2):
>> r ank( Mc)ans = 2
Por tanto, el sistema es totalmente controlable (i.e., el problema del regulador de estado tienesolución). La ganancia de retroacción de estado es:
>> kc=acker ( a, b, r oots( [ 1 3. 6 9] ) )kc = 29. 6000 3. 6000
El sistema regulado es (Ac=A-bk c,b,c,d ), por tanto, sólo hay que cambiar la matriz de estado:
>> ac=a- b*kc;
Podemos comprobar que el polinomiocaracterístico del sistema regulado es el de lasespecificaciones:
>> pol y(ac)ans =
1. 0000 3. 6000 9. 0000
La respuesta a condiciones iniciales es
>> [y, t , x]=i ni t i al ( s s(ac, b, c ,d) , [2 1] ' ) ;>> subpl ot ( 211) , pl ot ( t , x( : , 1) ) , yl abel ( ' x_1' ) ,>> t i t l e( ' Regul ador del estado' )>> subpl ot ( 212) , pl ot ( t , x( : , 2) ) , yl abel ( ' x_2' ) ,>> xl abel ( ' Ti empo' )
0 0.5 1 1.5 2 2.5 3-1
0
1
2
3
x 1
Regulador del estado
0 0.5 1 1.5 2 2.5 3-4
-3
-2
-1
0
1
x 2
Tiempo
Observador del estado
El problema del observador tiene solución puesto que el sistema es totalmente observable (la matriz
de observabilidad Mo presenta rango completo):
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 69/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 69
>> Mo=obsv( a, c)Mo = 1 0
0 1
>> r ank( Mo)ans = 2
Ahora calculamos la ganancia de Luenberger por dualidad. Aplicar dualidad consiste en usar lamisma fórmula de Ackermann que el problema regulador pero con los siguientes cambios: en vezde A se usa A
T , en vez de b se usa cT y el resultado de la fórmula de Ackermann también se
traspone, así:
>> ko=acker ( a' , c' , r oot s( [ 1 16 64] ) ) ; ko=ko'ko = 16. 0000
84. 6000
Las ecuaciones del conjunto planta-observador son:
ut o
t o
b
b
x
x
ck Ack
A
x
x
ˆ
0̂
x
x
c
c
ˆ0
0
ˆ t
t
y
y
>> ao=[ a a*0; ko*c a- ko*c] ;>> bo=[ b; b] ;>> co=[ c c*0; c*0 c] ;>> do=[ 0; 0] ;
En cuanto a las condiciones iniciales,supondremos que las de los estados estimados sonnulas:
0
x
x
x 0
)0(ˆ
)0(.
La respuesta a CI de los estados y sus respectivasestimaciones es:
t =l i nspace( 0, 0. 4) ;[y , t , x]=i ni t i al (ss (ao, bo, co, do) , [2 1 0 0] ' , t ) ;subpl ot ( 211) , pl ot ( t , x( : , [1 3] ) ) ,yl abel ( ' x_1, x_3' ) ,
t i t l e( ' Observador del estado' )subpl ot ( 212) , pl ot ( t , x( : , [2 4] ) ) ,yl abel ( ' x_2, x_4' ) , xl abel ( ' Ti empo' )
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.40
2
4
6
8
x 1 , x 3
Observador del estado
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.40
10
20
30
40
x 2 , x 4
Tiempo
Compensador del estado:Las ecuaciones del sistema completo son:
ut
ot c
t o
t c
b
b
x
x
ck bk Ack
bk A
x
x
ˆ̂
xx
cc
ˆ00ˆ t
t
y y
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 70/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 70
con condiciones iniciales
0
x
x
x 0
)0(ˆ
)0(.
>> at =[ a - b*kc;ko*c a- ko*c- b*kc];>> bt =[ b; b] ;>> ct=[ c c*0; c*0 c] ;>> dt =[ 0; 0] ;
La respuesta temporal es:
t =l i nspace( 0, 3) ;[ y, t , x]=i ni t i al ( s s(at , bt , ct , dt ) , [2 1 0 0] ' , t ) ;subpl ot ( 211) , pl ot ( t , x( : , [ 1 3] ) ) , yl abel ( ' x_1 , x_3' ) , t i t l e( ' Regul ador basado en observador' )subpl ot( 212), pl ot (t , x( : , [ 2 4]) ) , yl abel ( ' x_2 , x_4' ) , xl abel ( ' Ti empo' )
0 0.5 1 1.5 2 2.5 3-1
0
1
2
3
x 1 , x 3
Regulador basado en observador
0 0.5 1 1.5 2 2.5 3-10
-5
0
5
10
x 2 , x 4
Tiempo
Ejercicio 1. Dinámica longitudinal de un helicóptero. La dinámica longitudinal de unhelicóptero
presenta las siguientes ecuaciones de estado:
v
x
x
x
z
wu
x
x
x
x
x
x
3
2
1
3
2
1
3
2
1
100
1
0
0
4
0
2
05.09.85.1
01.01
05.01.03.0
donde x1:velocidad angular cabeceo, x2: ángulo cabeceo, x3: velocidad traslacional
u: control cabeceo cíclico longitudinalw: ruido de proceso (viento, turbulencias,…), de intensidad W =300
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 71/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 71
v: ruido de medida, de intensidad V =2
Suponer que las condiciones iniciales son: T 4.06.01)0( x . Se pide estabilizar el
helicóptero minimizando la siguiente función de coste:
1,
500
050005
,][2
10
R QRuuQxx dt J T T
Para ello seguir los siguientes pasos:1) Analizar la planta sin control.2) Diseñar el regulador LQ.3) Estimar los estados con un filtro de Kalman.4) Diseñar el regulador LQG.5) Añadir acción integral a fin de seguir sin offset consignas tipo escalón.
Solución:
%pl ant a a=[ - 0. 3 0. 1 - 0. 05; 1 0. 1 0; - 1. 5 - 8. 9 - 0. 05] ;bu=[ 2 0 4] ' ; bw=[ 0 0 1] ' ;c=[ 0 0 1];du=0; dw=0;pol os=ei g( a)
x0=[ 1 - 0. 6 0. 4] ' ;
t =l i nspace( 0, 5, 200) ;W=300; w=r andn( si ze( t ) ) *sqr t ( W) ; w=w' ;
y=l si m( ss( a, bw, c, dw) , w, t , x0) ;
V=2; v=r andn( si ze( t ) ) *sqr t ( V) ; v=v' ;z=y+v;
f i gure,pl ot ( t , y+v) , ax=axi s;t i t l e ( ' Respuest a de l a pl ant a si n cont r ol ' )xl abel ( ' Ti empo (s) ' )
0 1 2 3 4 5-90
-80
-70
-60
-50
-40
-30
-20
-10
0
10Respuesta de la planta sin control
Tiempo (s)
Suponiendo que todos los estados son accesibles a efectos de retroacción, estabilizar la plantaminimizando la siguiente función de coste:
1,500050
005
,][2
10
R QRuuQxx dt J T T
%r egul ador LQ f ul l st ate Q=5*eye( 3) ; R=1; kc=l qr ( a, bu, Q, R) ,ac=a-bu*kc; ei g( ac)[ y, t , x]=l si m( ss(ac, bw, c, dw) , w, t , x0) ;f i gurepl ot( t , y+v) , xl abel ( ' Ti empo (s) ' ) , axi s (ax) ;t i t l e ( ' Regul ador LQ: Q=5xI , R=1' )
f i gurepl ot ( t , x) , xl abel ( ' Ti empo (s) ' ) , %axi s( ax) ; t i t l e ( ' Est ados. Regul ador LQ: Q=5xI , R=1' )
l egend( ' x_1' , ' x_2' , ' x_3' )
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 72/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 72
0 1 2 3 4 5-120
-100
-80
-60
-40
-20
0
20
Tiempo (s)
Regulador LQ: Q=5xI, R=1
0 1 2 3 4 5-8
-6
-4
-2
0
2
4
6
8
Tiempo (s)
Estados. Regulador LQ: Q=5xI, R=1
x1
x2
x3
kc = 11. 4502 20. 8138 - 2. 3700
pol os_ser vo = - 9. 6101
- 2. 0301 + 0. 2683i- 2. 0301 - 0. 2683i
Suponiendo la planta son control y que los estados no son accesibles a efectos de retroacción,diseñar un filtro de Kalman-Bucy que obtenga una estimación de los estados óptima en el sentido deminimizar el error cuadrático medio de la estimación:
%est i mador ópt i mo del est ado ko=l qr ( a' , c' , bw*W*bw' , V) 'ko = - 0. 1844
- 0. 759712. 7593
ao=[ a a*0; ko*c a- ko*c] ;bo=[ bw 0*bw; bw*0 ko] ;co=[ c c*0; c*0 c] ;do=[ 0 1; 0 0] ;[y, t , x]=l s i m(ss(ao, bo, co, do) , [ w v] , t , [x0; 0; 0; 0] ) ;
f i guresubpl ot( 311), pl ot (t , x( : , [ 1 4]) ) , xl abel ( ' Ti empo (s) ' ) ,t i t l e ( ' Pl ant a si n cont r ol con est i mador ópt i mo del estado' ) ,yl abel ( ' x_1 , x_4' )subpl ot( 312), pl ot (t , x( : , [ 2 5]) ) , xl abel ( ' Ti empo (s) ' ) ,yl abel ( ' x_2 , x_5' )subpl ot( 313), pl ot (t , x( : , [ 3 6]) ) , xl abel ( ' Ti empo (s) ' ) ,yl abel ( ' x_3 , x_6' )
0 1 2 3 4 5-5
0
5
Tiempo (s)
Planta sin control con estimador óptimo del estado
x 1 , x 4
0 1 2 3 4 5-5
0
5
Tiempo (s)
x 2 , x 5
0 1 2 3 4 5-50
0
50
Tiempo (s)
x 3 , x 6
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 73/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 73
Juntamos ahora el regulador LQ y el filtro de Kalman-Bucy de los dos ejercicios anteriores a fin deobtener un regulador LQG:
%r egul ador LQG at=[ a -bu*kc; ko*c a- ko*c- bu*kc] ;bt=[ bw 0*bw; bw*0 ko] ;ct=[ c c*0; c*0 c];dt =[ 0 1; 0 0] ;[y , t , x]=l s i m(ss(at , bt , ct , dt ) , [w v] , t , [x0; 0; 0; 0] ) ;
f i guresubpl ot( 311), pl ot (t , x( : , [ 1 4]) ) , xl abel ( ' Ti empo (s) ' ) ,t i t l e ( ' Regul ador ópt i mo del est ado LQG' ) ,yl abel ( ' x_1 , x_4' )subpl ot( 312), pl ot (t , x( : , [ 2 5]) ) , xl abel ( ' Ti empo (s) ' ) ,yl abel ( ' x_2 , x_5' )subpl ot( 313), pl ot (t , x( : , [ 3 6]) ) , xl abel ( ' Ti empo (s) ' ) ,yl abel ( ' x_3 , x_6' )
0 1 2 3 4 5-5
0
5
Tiempo (s)
Regulador óptimo del estado LQG
x 1 , x 4
0 1 2 3 4 5-2
0
2
Tiempo (s)
x 2 , x 5
0 1 2 3 4 5-20
0
20
Tiempo (s)
x 3 , x 6
La siguiente figura muestra la respuesta al escalón del regulador LQ simple. No es capaz de seguirconsignas tipo escalón:
%cont r ol LQ sense sor ol l sQ=5*eye( 3) ; R=1;kc=l qr ( a, bu, Q, R) ;ac=a-bu*kc; ei g( ac)f i gurestep( ss(ac, bu, c, du) )xl abel ( ' Ti empo (s) ' ) , t i t l e( ' Cont r ol LQf ul l state si n acci ón i nt egral ' )
0 0.5 1 1.5 2 2.5 3-0.5
-0.4
-0.3
-0.2
-0.1
0
0.1
0.2Control LQ full state sin acción integral
Tiempo (s) (sec)
A m p l i t u d e
Para resolverlo, se introduce un integrador en el lazo:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 74/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 74
La señal de control es ic k u xk donde cx r yr . Así las ecuaciones de la planta
aumentadas con este estado adicional quedan como:
r
ii
1000uBx
c0Ax
BA
La ecuación de Riccati se resuelve para la planta aumentada y el vector de ganancias resultante K sedescompone en k c y k i:
xk
xK xk u icic k k
Finalmente, el sistema en lazo cerrado es:
r k
c
ic
10
0x
c
BBk Ax
A
Ahora sí que se tiene tracking a consignas escalón:
%cont r ol amb acci ó i nt egr al ( sensesorol l s ) ai =[ a bu*0; - c 0] ;bi =[ bu; 0] ;br =[ bu*0; 1] ;Mc=ctr b( ai , bi ) ; r ank(Mc)Q=5*eye(3) ; Qi =di agmx( Q, 1) ; R=1;k=l qr( ai , bi , Qi , R) ; kc=k(1: 3) , ki =- k(4) ,kc = 13. 6070 25. 0911 - 3. 3397ki = - 1. 0000ac=[ a- bu*kc bu*ki ; - c 0] ;bc=[ zer os( 3, 1) ; 1] ;cc=[ c 0] ;f i gurestep(ss( ac, bc, cc, 0) ) ;xl abel ( ' Ti empo (s) ' ) , t i t l e( ' Cont r ol LQf ul l state con acci ón i nt egr al ' )
0 5 10 15-0.2
0
0.2
0.4
0.6
0.8
1
1.2Control LQ full state con acción integral
Tiempo (s) (sec)
A m p l i t u d e
x
A
b c
ck
xu y
- +
+ s
k i
-
+ + r
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 75/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 75
Ejercicio 2. Dinámica longitudinal de un avión.
El problema: El movimiento de un avión se puede modelar mediante el conjunto de 6 ecuacionesdiferenciales no lineales y acopladas. Bajo ciertas condiciones, se pueden linealizar y desacoplarentre movimiento longitudinal y lateral. El control de cabeceo (pitch control) es un problemalongitudinal. En este ejemplo se diseña un autopiloto para el control del cabeceo del avión.
La siguiente figura muestra las fuerzas que actúan sobre el avión (sustentación/peso yempuje/resistencia). Suponiendo vuelo de crucero a altitud y velocidad contantes estos pares defuerzas se cancelan entre sí. Además (aunque no es realista) se supondrá que la variación delángulo de cabeceo no afecta a la velocidad v.
Así, las ecuaciones que describen el movimiento longitudinal son:
0.313 56.7 0.232
0.0139 0.426 0.020356.7
e
e
q
q qq
donde es el ángulo de ataque (ángulo entre el vector velocidad y el eje del avión), q es la tasa devariación del ángulo de cabeceo ( pitch rate), es el ángulo de cabeceo y e es el ángulo del
deflector de elevación.
En este sistema consideraremos que la salida es y= y la entrada eu . La función de
transferencia resultante es:
3 2
( ) 1.151 0.1774
( ) 0.739 0.921
Y s s
U s s s s
Las especificaciones del problema de control son recuperar el ángulo de cabeceo 0º con un tiempode establecimiento t s menor que 10s y un rebasamiento razonable.
Se pide representar la respuesta zero-input a una perturbación de valor 0.3rad en el ángulo deataque. ¿La planta es estable? ¿Es controlable? ¿Es observable?
Solución: Sin control el ángulo de cabeceo quedará fijado a -0.265.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 76/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 76
a=[ - 0. 313 56. 7 0; . .- 0. 0139 - 0. 426 0; 0 56. 7 0] ;
b=[ 0. 232; 0. 0203; 0] ; c=[ 0 0 1] ; d=[ 0] ; G=ss( a, b, c, d) ;
t =l i nspace( 0, 20) ; x0=[ 0. 3 0 0] ; [y, t , x]=i ni t i al (G, x0, t ) ; Fi gure, pl ot ( t , x) ,t i t l e ( ' Si n cont r ol ' ) ,xl abel ( ' Ti empo ( s) ' ) l egend( ' \ al pha' , ' q' , ' \ thet a' ) , 0 2 4 6 8 10 12 14 16 18 20
-0.4
-0.3
-0.2
-0.1
0
0.1
0.2
0.3Sin control
Tiempo (s)
q
Los polos de la planta son un integrados y dos polos estables.pol e( G)ans =
0- 0. 3695 + 0. 8860i- 0. 3695 - 0. 8860i
Por otro lado, la planta es totalmente controllable y observable:
rank( ct rb( a, b) ) ,ans =
3r ank( obsv( a, c)) , ans =
3
Ejercicio 3. Regulador de estado (full-state). Se pide:1) Escoger unos polos para el sistema controlado de manera que el tiempo de establecimiento sea
menor que 10s y el rebasamiento sea razonable.2) Calcular la ganancia de retroacción de estados necesaria.3) Comprobar el funcionamiento representando la respuesta zero input.
Solución:
Escogemos por ejemplo un par de polos dominantes con =0.9 y4
8 sn
t
, con lo que
0.556n . El tercer polo lo situamos lejano, arbitrariamente, a -10.
La ganancia de retroacción obtenida mediante la fórmula de Ackermann es:
kc =-10.0632 620.4765 17.3961
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 77/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 77
z=0. 9; %z=0. 4;t s=8; wn=4/ ( z*t s) ; p1=- z*wn+j *wn*sqr t ( 1- z 2̂) ; p2=conj ( p1) ; p3=- 10;
kc=acker ( a, b, [ p1 p2 p3] ) ,ac=a- b*kc;
Gc=ss( ac, b, c, d) ; [y, t , x]=i ni t i al (Gc, x0, t ) ;
f i gure, pl ot ( t , x) ,t i t l e ( ' Regul ador f ul l st at e' ) ,xl abel ( ' Ti empo ( s) ' ) l egend( ' \ al pha' , ' q' , ' \ thet a' ) ,
0 2 4 6 8 10 12 14 16 18 20-0.1
0
0.1
0.2
0.3
0.4
0.5
0.6Regulador full st ate
Tiempo (s)
q
Ejercicio 4. Observador de estado. Se pide diseñar un observador de los tres estados que formanla planta y verificar su funcionamiento con la planta sin control.
Solución:
Aquí diseñamos un observador con los tres polos a -20 (más rápidos que los del regulador de estadodel ejercicio anterior.
k=acker ( a' , c' , - 20*[ 1 1 1] ) ; ko=k'ko =
1. 0e+003 *
- 9. 62250. 02040. 0593
ao=[ a a*0; ko*c a- ko*c] ; bo=[ b; b] ; co=[ c c*0; c*0 c] ; do=[ 0; 0] ;
x0=[ 0. 3 0 0 0 0 0] ; [y , t , x] =i ni t i al ( ss(ao, bo, co, do) , x0, t) ;
0 5 10 15 20-0.1
0
0.1
0.2
0.3
Tiempo (s)
x1 y x
4: y su estimación
0 5 10 15 20-3
-2
-1
0
1x 10
-3
Tiempo (s)
x2 y x
5: q y su estimación
0 5 10 15 20-0.4
-0.3
-0.2
-0.1
0
Tiempo (s)
x3 y x
6: y su estimación
h=f i gur e; subpl ot ( 221) , pl ot ( t , x( : , [ 1 4] ) ) , xl abel ( ' Ti empo ( s) ' ) , t i t l e ( ' x_1 y x_4: \ al pha y su est i maci ón' ) subpl ot ( 222) , pl ot ( t , x( : , [ 2 5] ) ) , xl abel ( ' Ti empo ( s) ' ) , t i t l e ( ' x_2 y x_5: q y su est i maci ón' ) subpl ot ( 223) , pl ot ( t , x( : , [ 3 6] ) ) , xl abel ( ' Ti empo ( s) ' ) , t i t l e ( ' x_3 y x_6: \ t het a y su est i maci ón' ) set(h, ' name' , ' Pl ant a con observador ' , ' number t i t l e' , ' o f f ' )
Ejercicio 5. Regulador de estado basado en observador. Juntar el regulador y el observadordiseñados en los dos ejercicios anteriores a fin de obtener un compensador de estado y verificar sufuncionamiento.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 78/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 78
Solución:
ac=[ a - b*kc; ko*c a- ko*c- b*kc] ;bc=[ b; b] ; cc=[ c c*0; c*0 c] ;
dc=[ 0; 0] ;
[y , t , x] =i ni t i al ( ss(ac, bc, cc, dc) , x0, t) ;
f i gure pl ot ( t , x( : , 1: 3) ) ,t i t l e ( ' Regul ador con observador ' ) ,xl abel ( ' Ti empo ( s) ' ) l egend( ' \ al pha' , ' q' , ' \ thet a' ) ,
0 2 4 6 8 10 12 14 16 18 20-0.05
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45Regulador con observador
Tiempo (s)
q
h=f i gur e; subpl ot (221) , pl ot ( t , x( : , [1 4] ) ) ,xl abel ( ' Ti empo ( s) ' ) , t i t l e ( ' x_1 y x_4: \ al pha y suest i maci ón' ) subpl ot (222) , pl ot ( t , x( : , [2 5] ) ) ,xl abel ( ' Ti empo ( s) ' ) , t i t l e ( ' x_2 y x_5: q y suest i maci ón' ) subpl ot (223) , pl ot ( t , x( : , [3 6] ) ) ,xl abel ( ' Ti empo ( s) ' ) , t i t l e ( ' x_3 y x_6: \ t het a y suest i maci ón' ) set(h, ' name' , ' Regul ador másobser vador ' , ' number t i t l e' , ' o f f ' )
0 5 10 15 20-0.2
0
0.2
0.4
0.6
Tiempo (s)
x1 y x
4: y su estimación
0 5 10 15 20-2
0
2
4
6x 10
-3
Tiempo (s)
x2 y x
5: q y su estimación
0 5 10 15 20-0.1
0
0.1
0.2
0.3
Tiempo (s)
x3 y x
6: y su estimación
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 79/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 79
2. Técnicas de control robusto
Se dice que un sistema de control es robusto si sus especificaciones de estabilidad y
comportamiento se satisfacen a pesar de la incertidumbre en el modelo de la planta que se ha usadoen su diseño.
Típicamente, el controlador se diseña a partir de un modelo nominal G0 de la planta y no de unhipotético modelo “perfecto” Greal puesto que éste no existe. El modelo nominal G0 es, por reglageneral, un modelo lineal invariante en el tiempo (LTI, Linear Time Invariant ) y de orden reducido.Es por tanto una aproximación muy simplificada de Greal . Por otro lado, aunque fuera posibleobtener exactamente Greal , igualmente habría que simplificarlo a fin de poder diseñar a partir de élun controlador realizable.
La consecuencia es que siempre existe incertidumbre en el modelo usado para diseñar elcontrolador. La razón de ser del Control Robusto es la obtención de controladores fijos diseñados a
partir de G0 que funcionen razonablemente bien para Greal . Para conseguirlo es imprescindible eluso de la retroacción a fin de aprovechar sus propiedades desensibilizadoras, pero también el uso detécnicas de diseño que tengan en cuenta tanto el modelo nominal como su grado de incertidumbre.
Finalmente notar que el interés, y el reto, del control robusto es que el controlador final debe ser fijo. Ello contrapone el Control Robusto a los métodos del Control Adaptativo cuyo objetivo es laobtención de controladores que se adaptan a las variaciones y perturbaciones de la planta. Al finaldel presente apartado se presenta un ejemplo donde se comparan ambos tipos de controladores.
En este apartado nos centraremos en los sistemas SISO y en la configuración de control retroactivade un grado de libertad (1DOF, One Degree of Freedom) de la Fig. 15, donde K es el controladorrobusto y G la planta incierta. Las entradas exógenas r y d corresponden respectivamente a la señalde consigna y al ruido aditivo actuando sobre el sistema.
Fig. 15. Configuración de control (1DOF)
En el caso de incertidumbre multiplicativa, la Fig. 16 muestra la representación en esquema de bloques de la familia de plantas a la que pertenece la planta incierta G .
Fig. 16. Planta con incertidumbre multiplicativa
K G 0
r
d
_
u
W m y G
u G
K G
r
_
y u G e
d
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 80/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 80
La matriz de transferencia en lazo cerrado T que relaciona el vector de salida con elvector de entrada del sistema de la Fig. 15 es
(1)
Los elementos de T son funciones de sensibilidad. En particular, T 22 es la función de sensibilidadde Bode y T 11 es la función de sensibilidad complementaria .
El problema general de síntesis se puede formular a grandes rasgos de la siguiente manera: Dada la planta , obtener el controlador tal que el sistema de la Fig. 15: (i) es internamente establey (ii) satisface cualquier otra especificación (por ejemplo, seguimiento a consignas, rechazo de perturbaciones,…).
Para que el problema de síntesis tenga solución, aparte de las condiciones obvias de factibilidad,controlabilidad y observabilidad, el problema debe estar bien planteado (well posed ). El problema
se dice que está bien planteado si todas las funciones de sensibilidad en (1) existen. Para ello unacondición necesaria y suficiente es que . Una condición suficiente es que K y G sean propias y al menos una de ellas (normalmente la planta G ) sea propia.
2.1 Conformación del lazo (loopshaping)
El objetivo del control robusto es satisfacer las especificaciones de estabilidad y comportamiento(precisión, velocidad) a la vez que se asegura la robustez de ambas. Para ello, el cometido delcontrolador robusto es dar la forma necesaria a las funciones de sensibilidad en lazo cerrado
para cumplir los objetivos del control.
En un sistema de control de un grado de libertad como el de la Fig. 15 esto es equivalente aconformar la función de lazo nominal .
Forma deseada del lazo
Típicamente, el lazo se conforma para que presente una ganancia alta a bajas frecuencias, una pendiente suave en el crossover y una ganancia baja a altas frecuencias.
La ganancia alta a bajas frecuencias es la que consigue el seguimiento ( y el rechazo
a las perturbaciones ( como respuesta a d ). Notar que, si , entonces
y . En concreto, si se desea error
permanente nulo a entradas de referencia de tipo escalón el lazo deberá contener unintegrador.
La pendiente suave en el paso por 0dB es un requerimiento de estabilidad, el objetivo es queen el crossover la fase esté alejada de -180º.
Finalmente, la ganancia baja a altas frecuencias es necesaria para poder filtrar el ruido demedida y, en la medida de lo posible, atenuar el efecto de la incertidumbre a altas
frecuencias. Notar que, si , entonces y
.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 81/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 81
2.1.1 Condiciones de comportamiento robusto
Con la forma de lazo descrita en el párrafo anterior ya se cumplen las especificaciones de
estabilidad y comportamiento. Si, además, se desea dar garantías de robustez, lo único que hay queasegurar es que el lazo esté por encima de una cota a bajas frecuencias y por debajo de otra a altasfrecuencias. El valor de estas cotas se puede deducir de los teoremas de robustez expuestos en elTema 2.
A bajas frecuencias, donde , la condición de comportamiento robusto
,
puede expresarse como
.
En definitiva, si queremos seguimiento debe ser grande a bajas frecuencias. Si, además,queremos garantías de que este seguimiento sea robusto debe ser como mínimo mayor que
.
A altas frecuencias el análisis es análogo. Puesto que , la condición de comportamientorobusto
,
puede expresarse como
.
Así, si queremos rechazo a perturbaciones, la ganancia de lazo a altas frecuencias debe ser pequeña. Si además queremos garantizar que este rechazo sea robusto, el lazo deberá ser
como mínimo menor que .
2.1.2 Ejemplo
Vamos a ilustrar el proceso de conformación del lazo con ayuda de un ejemplo. Considerar una planta nominal de la que sólo se sabe que presenta un exceso de polos sobre ceros de 1 y que
la cota superior de incertidumbre multiplicativa es . Se desea que el lazo
cerrado presente un buen seguimiento a señales de referencia sinusoidales con frecuencias entre 0 y1 rad/s. Esta especificación de diseño puede expresarse por medio de la siguiente función de ponderación:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 82/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 82
donde será el error de seguimiento en régimen permanente. Interesa pues que sea lo mayor posible sin comprometer la robustez del diseño.
La Fig. 17 muestra las funciones y así como las plantillas necesarias para
asegurar la robustez, a bajas frecuencias y a altas frecuencias.
10-2
10-1
100
101
102
103
-30
-20
-10
0
10
20
30
Frecuencia (rad/s)
M a g n i t u d ( d B )
Funciones de ponderación
|Wm
|
|Ws|
10-2
10-1
100
101
102
103
-30
-20
-10
0
10
20
30
Frecuencia (rad/s)
M a g n i t u d ( d B )
Plantillas de robustez
Fig. 17. Plantillas para conformación del lazo
Primer diseño: El caso más sencillo es conformar un lazo de primer orden (esto es, suponemosque la planta es de primer orden y que el controlador es una simple ganancia).
El polo del lazo lo situamos en para que el lazo decaiga una vez pasada la banda útil. Nohabrá problemas de estabilidad puesto que al ser de primer orden la pendiente en el crossover serásuave. En cuanto a b, el máximo valor que podemos tomar es el que asegure que se satisface la
plantilla de robustez a altas frecuencias , . Este valor es
con lo que queda el lazo mostrado en la Fig. 18(a). Con el máximo valor que puede
tomar viene dado por la condición . Puesto que es creciente y
decreciente con la frecuencia, el máximo está en el extremo de la banda útil, en . Ahí elvalor de es 13.15, con lo que el error de seguimiento es .
10-2
10-1
100
101
102
103
-40
-30
-20
-10
0
10
20
30
40
50
Frecuencia (rad/s)
M a g n i t u d ( d B )
Primer diseño
a=13.15
|L0|
|T0W
m|+|S
0W
s|
10-2
10-1
100
101
102
103
-40
-30
-20
-10
0
10
20
30
40
50
Frecuencia (rad/s)
M a g n i t u d ( d B )
Segundo diseño
a=93.39
|L0|
|T0W
m|+|S
0W
s|
(a) (b)
Fig. 18. Conformación del lazo. Diseños 1 y 2
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 83/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 83
En definitiva, el máximo error de seguimiento conseguido en la banda [0, 1] es del 7.6%. Para verel nivel de robustez alcanzado hay que calcular el valor de para todas lasfrecuencias y buscar su valor máximo. Este resulta ser . Al ser menorque la unidad, podemos asegurar que el comportamiento es robusto. Sin embargo, puesto que estálejos de 1, vemos que aún tenemos margen para mejorar el comportamiento sin comprometer larobustez. Por ello, nos planteamos un segundo diseño.
Segundo diseño: Si permitimos que la pendiente del lazo sea más fuerte, podremos aumentar elnivel de . Por tanto, el segundo lazo es:
Ahora, al ser el polo doble la pendiente a partir de =1rad/s es más fuerte. El cero a -10 seintroduce para tener una pendiente suave en el crossover y el valor de 20 sirve, al igual que en elcaso anterior, para satisfacer la plantilla de altas frecuencias. Con este lazo el máximo valor
conseguido es , que corresponde a un error de seguimiento máximo del 1.07% y sigueasegurando que el comportamiento es robusto puesto que .
En general las especificaciones de comportamiento y robustez dan lugar a compromisos de diseño. No se puede tener simultáneamente un comportamiento muy fino y un grado elevado de robustez.Por otro lado, el diseño del ejemplo anterior no era difícil dado que en la banda útil el grado deincertidumbre era pequeño. En las bandas frecuenciales donde la incertidumbre es elevada es muydifícil, si no imposible, conseguir un comportamiento preciso. Por tanto, está claro que en la etapade identificación se trata de obtener un perfil de incertidumbre tan bajo como sea posible.
2.2 Teoría cuantitativa de la retroacción (QFT)
La Teoría Cuantitativa de la Retroacción (QFT, Quantitative Feedback Theory) es otra técnica decontrol robusto que consiste en conformar el lazo nominal en el dominio frecuencial. En este caso,el plano escogido es el plano fase-ganancia o de Nichols y en él se definen las regiones que el lazodebe evitar a fin de satisfacer las especificaciones de comportamiento robusto.
2.2.1 Regiones de incertidumbre
Las regiones de incertidumbre en el diagrama fase-ganancia se obtienen de igual manera que en elcaso del diagrama polar y en el campo de la QFT reciben el nombre de templates. Por ejemplo, laFig. 19 muestra las regiones de incertidumbre a las frecuencias 0.1, 5, 10, 50 y 100 de la siguientefamilia paramétrica de plantas.
(2)
Para definir las regiones basta con representar la respuesta frecuencial de las plantas “límite”.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 84/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 84
-300 -250 -200 -150 -100 -50 0 50-90
-80
-70
-60
-50
-40
-30
-20
-10
0
= 0.1
= 5
= 10
= 50
= 100
Regiones de incertidumbre
Fase (grados)
M a g n i t u d ( d
B )
Fig. 19. Regiones de incertidumbre paramétrica en el plano de Nichols
De entre todas las plantas de la familia hay que escoger una que será la nominal. Aquí no esnecesario que cumpla ninguna condición especial. En este ejemplo la planta nominal corresponde ala planta donde se han etiquetado los valores de frecuencia. Esta planta es (k 01, 05 y b 030),
2.2.2 Plantillas para el diseño
Las regiones de incertidumbre anteriores junto con el modelo nominal y las especificaciones en lazocerrado definen unas regiones “prohibidas” en el plano de Nichols, esto es, unas regiones donde ellazo nominal no debe entrar si queremos satisfacer las especificaciones de comportamiento demanera robusta. Estas regiones reciben el nombre de bounds.
Especificaciones de estabilidad: Éstas resultan en regiones prohibidas para el lazo nominalalrededor del punto crítico -1 (ver Fig. 20). Notar que en el plano de Nichols el punto crítico -1corresponde al origen de coordenadas (-180º, 0dB) y, por tanto, cuanto más alejado esté el lazo dedicho punto más robustez tendremos.
Fig. 20. Márgenes de estabilidad. Correspondencia entre Nyquist y Nichols
El criterio de estabilidad impone que ninguna de las plantas de la familia puede intersectar el punto
crítico -1 a ninguna frecuencia. Ello es equivalente a imponer la siguiente restricción de magnituden la función sensibilidad complementaria:
‐1
Im
Re‐180º,0dB
dB
Fase
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 85/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 85
Asumiendo que el número de polos inestables es el mismo para todas las plantas de la familia, basta
con comprobar que la anterior condición se cumple en la frontera de la región de incertidumbre, .Por otro lado, se sustituye el valor ∞ por un factor que cuantifica el margen de estabilidad. Así pues, las plantillas definen la región donde no puede entrar el lazo nominal si queremos que secumpla la siguiente condición:
Un valor típico es =1.2. Este valor corresponde a un margen de fase de al menos 50º y un margende ganancia de al menos 1.66 (no simultáneo con el de fase). La Fig. 21(a) muestra la plantilla deestabilidad para la familia paramétrica del ejemplo a =5rad/s y con =1.2.
-240 -220 -200 -180 -160 -140 -120 -100 -80-40
-30
-20
-10
0
10
20Plantilla para estabilidad robusta, = 5
Fase (grados)
M a g n i t u d ( d B )
-350 -300 -250 -200 -150 -100 -50 0-20
-15
-10
-5
0
5
10
15Plantilla para rechazo de perturbaciones a la entrada, = 5
Fase (grados)
M a g n i t u d ( d B )
(a) (b)
Fig. 21. Plantilla de estabilidad robusta ( =1.2) y plantilla de rechazo de perturbaciones a la entrada de la planta ( =0.01)
Especificaciones de sensibilidad: Las especificaciones que implican desensibilización (rechazo de perturbaciones, seguimiento,…) resultan en regiones prohibidas que engloban el origen del plano de Nyquist. En el plano de Nichols la región prohibida equivalente se muestra en la siguiente figura,
Fig. 22. Reducción de la sensibilidad. Correspondencia entre Nyquist y Nichols
Las plantillas de comportamiento se obtienen de manera análoga a las de estabilidad. Lo habitual esobtenerlas solo hasta el ancho de banda útil del sistema. La Fig. 21 (b) muestra la plantillacorrespondiente a la condición de rechazo de las perturbaciones a la entrada de la planta
‐1
Im
Re‐180º,0dB
dB
Fase
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 86/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 86
,
particularizada para el caso =5rad/s y =0.01.
Especificaciones en el esfuerzo de control: Así como las especificaciones de reducción desensibilidad buscan aumentar la ganancia de lazo, las especificaciones de limitación del esfuerzo decontrol buscan reducir la ganancia del lazo. En este caso también es posible deducir regiones prohibidas. Éstas se muestran en la siguiente figura:
Fig. 23. Limitación del esfuerzo de control. Correspondencia entre Nyquist y Nichols
2.2.3 Ejemplo
Para ilustrar el procedimiento de diseño vamos a ver un ejemplo. Considerar el sistema de control
de la siguiente figura, donde la planta incierta forma parte de la familia definida en (2):
Fig. 24. Configuración de control con perturbaciones a la entrada y la salida de la planta
Las especificaciones del diseño son conseguir un margen de estabilidad robusta de =1.2(correspondiente a un margen de fase de 50º y un margen de ganancia de 1.66 no simultáneos).
Y en cuanto al comportamiento, se desea conseguir un rechazo a las perturbaciones a la salida de la planta v dado por
K G
r
_
y u G e
v d
‐1
Im
Re‐180º,0dB
dB
Fase
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 87/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 87
donde , y un rechazo a las perturbaciones a la entrada de la planta d
dado por:
Una vez obtenidas las regiones de incertidumbre y seleccionado el modelo nominal, es posiblerepresentar todas estas plantillas, para diversas frecuencias, en el plano de Nichols. Para facilitar eldiseño, antes de proceder a la conformación del lazo, se intersectan todas las plantillas (ver Fig. 25).
-350 -300 -250 -200 -150 -100 -50 0-50
-40
-30
-20
-10
0
10
20
1
111
1 2
2
2
33
3
Plantillas para estabilidad y comportamiento robustos
Fase (grados)
M
a g n i t u d ( d B )
-350 -300 -250 -200 -150 -100 -50 0
-50
-40
-30
-20
-10
0
10
20Intersección de las plantillas
Fase (grados)
M
a g n i t u d ( d B )
Fig. 25. Plantillas para estabilidad y comportamiento robustos
El diseño (ganancia y posición de los polos y ceros del controlador) puede llevarse a cabo demanera interactiva con ayuda del programa MATLAB. La siguiente figura muestra los resultados para los casos
y
-350 -300 -250 -200 -150 -100 -50 0-50
-40
-30
-20
-10
0
10
20Conformación del lazo. Controlador 1
Fase (grados)
M a g n i t u d ( d B )
=0.1=5
=10
=50
=100
-350 -300 -250 -200 -150 -100 -50 0-50
-40
-30
-20
-10
0
10
20Conformación del lazo. Controlador 2
Fase (grados)
M a g n i t u d ( d B )
=0.1=5
=10
=50
=100
Fig. 26. Conformación del lazo frecuencia a frecuencia
El segundo controlador satisface las plantillas de comportamiento robusto en lazo abierto. Tambiénes posible analizar el sistema en lazo cerrado resultante y ver si se satisfacen las especificaciones, esdecir, si las funciones de sensibilidad resultantes (para la planta de peor caso) están por debajo delas cotas especificadas. La siguiente figura muestra que, efectivamente, es así para el caso del
segundo controlador:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 88/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 88
10-2
10-1
100
101
102
103
-45
-40
-35
-30
-25
-20
-15
-10
-5
0
5
Función de sensibilidad complementaria y = 1.2
Frecuencia (rad/s)
M a g n i t u d ( d B
)
= 1.2
cota superior de |L/(1+L)|
cota inferior de |L/(1+L)|
10-2
10-1
100
101
102
103-50
-40
-30
-20
-10
0
10
20
30
Frecuencia (rad/s)
M a g n i t u d ( d B )
Función de sensibilidad de rechazo de perturbaciones a la salida y H(s)
|H(j)|
cota superior de |1/(1+L)|
cota inferior de |1/(1+L)|
10-2
10-1
100
101
102
103
-130
-120
-110
-100
-90
-80
-70
-60
-50
-40
-30
Frecuencia (rad/s)
M a g n i t u d ( d B )
Función de sensibilidad de rechazo de perturbaciones a la entrada y =0.01
=0.01
cota superior de |G/(1+L)|
cota inferior de |G/(1+L)|
Fig. 27. Análisis del diseño en lazo cerrado
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 89/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 89
2.3 Métodos H ∞
A diferencia de las dos técnicas anteriores, donde el diseño iterativo en el dominio frecuencial es
una parte fundamental en el proceso de diseño, los métodos conocidos como H ∞ son métodos desíntesis, esto es, dados los modelos de la planta nominal, incertidumbre y especificaciones así comoun índice de comportamiento, basta con aplicar un algoritmo numérico de optimización paraobtener el controlador central. De esta manera, el peso del diseño recae en la formulación del problema (obtención de los modelos y selección de especificaciones) y no en la solución (cálculo delos parámetros del controlador).
Por otro lado estos métodos son muy utilizados puesto que funcionan tanto para sistemas SISOcomo MIMO. En estos últimos lo que se conforma son los valores singulares tanto del lazo comode las funciones de sensibilidad y existe una versión especial para el caso de incertidumbresestructuradas, la síntesis , llamada así porque se basa en el uso del valor singular estructurado definido más adelante.
2.3.1 Transformación fraccional lineal (LFT)
Los métodos de síntesis H ∞ usan una configuración de control generalizada conocida comotransformación fraccional lineal (LFT, Linear Fractional Transformation) o transformación deMöbius. Se definen la LFT inferior y la LFT superior (ver Fig. 28).
Fig. 28. LFT inferior y LFT superior
LFT inferior: La LFT inferior, , se usa en la fase de diseño. P recibe el nombre de planta aumentada o generalizada, K es el controlador, w son las señales exógenas, z son las señales
que miden el comportamiento, u son las señales de control y v son las medidas usadas para generaru.
La planta aumentada y el controlador K ( s) configuran un bipuerto que
relaciona los cuatro grupos de señales de la siguiente manera:
,
La formulación en el espacio de estado de la planta aumentada es
w
u v
z
Ks
Ps
w
u
z
s
N
y
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 90/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 90
Y la relación entre las entradas w y las salidas z viene definida por la LFT inferior , cuyaexpresión matemática es:
(3)
LFT superior: La LFT superior, , también conocida como estructura N ‐, se usa para el análisis de la robustez. La relación entre las entradas y salidas es
,
La expresión de la LFT superior es
(4)
Definiendo , el resultado es un caso particular que se usa para el análisis de la robustez dela estabilidad. En concreto es la estructura M ‐ del teorema de la pequeña ganancia.
La configuración de control generalizada combina ambas LFTs en el esquema de bloques de la Fig.
29. Notar que .
Fig. 29. Configuración de control generalizada
Si la incertidumbre no está estructurada el bloque de perturbación
es full complex. Si las perturbaciones están estructuradas entonces es diagonal por bloques (y los elementos son reales ocomplejos). Para el caso de perturbaciones estructuradas la llamada síntesis da mejores resultadosque los métodos H ∞ estándar. El valor singular estructurado se define como:
(5)
donde es el máximo valor singular de .
w
u v
z
Ks
Ps
s
u
y
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 91/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 91
2.3.2 Obtención de la planta aumentada
El primer paso en la síntesis del controlador robusto es obtener la configuración de controlgeneralizada mostrada en la Fig. 29. Para ello basta con reorganizar los bloques del sistema decontrol.
Por ejemplo, la Fig. 30 muestra un sistema de control cuya planta incierta está descrita por medio desu modelo nominal y un modelo de incertidumbre multiplicativa inversa ydonde las especificaciones se refieren al esfuerzo de control u mediante la función de ponderaciónW u.
Fig. 30. Sistema con incertidumbre multiplicativa inversa y especificaciones sobre el esfuerzo de control u
Fig. 31. Planta aumentada
Poniendo el bloque de perturbación en la parte superior y el de control K en la inferior del
esquema de bloques, es posible ver qué bloques constituyen la planta aumentada P.
G 0s
K s
s
W i s
u
e u G
w 2d
y
y
_
Ps
u r
W u s z u z 1
v
w 1r
u
G s
r u
d
W i s W u s
z u
G 0 K s e u G
_
y G
s
u
y
y
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 92/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 92
2.3.3 Índices de comportamiento
El coste del control se puede medir definiendo una función de coste y sometiéndola a alguna norma.En los métodos H ∞ la norma escogida es la infinita y existen diversas funciones de coste típicas, porejemplo, la optimización de las sensibilidades combinadas (mixed sensitivity problem):
con
el diseño H ∞ basado en la optimización de la robustez:
y la minimización de la norma infinita de la LFT inferior:
2.3.4 Síntesis del controlador
La primera solución para la obtención de controladores H ∞ se debe a J. C. Doyle. Su algoritmo nominimiza directamente la norma infinita de sino que, dado un valor , encuentra uncontrolador estable K ( s) y estabilizador tal que
Si dicho controlador existe, se reduce el valor de y se busca un nuevo controlador, y asísucesivamente. El procedimiento termina en el valor más pequeño de para el cual el algoritmo hasido capaz de obtener un controlador estable y estabilizador. Para que el algoritmo dé lugar a unasolución deben cumplirse una serie de condiciones, por ejemplo, que D12 y D21 de la plantaaumentada sean de rango completo. Estas condiciones así como los pasos de este algoritmo,conocido también como DGKF (de Doyle, Glover, Khargonekar y Francis).
En cuanto a los controladores , tampoco existe una manera directa de obtener el controladoróptimo. En el caso de perturbaciones complejas es posible usar una aproximación conocida comoiteración D-K que consiste en minimizar una cota superior de , es decir, en calcular el K ( s) tal queminimiza donde D es una matriz de escalado.
Tanto estos algoritmos como los más recientes basados en desigualdades matriciales lineales (LMI, Linear Matrix Inequalities) están disponibles en la Robust Control Toolbox for use with MATLAB.
En todos los casos el controlador obtenido es de hecho un controlador central que puede ser parametrizado (de nuevo mediante LFTs) a fin de satisfacer especificaciones adicionales. La Fig.32 muestra la parametrización de Youla donde es cualquier matriz de transferencia estable y propia tal que . Si , entonces el controlador obtenido es el central,
.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 93/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 93
Fig. 32. Parametrización de Youla
Finalmente cabe comentar que, en la práctica, es habitual conformarse con controladoressubóptimos. El controlador H ∞ óptimo es aquel que asegura el funcionamiento para el peor caso.Sin embargo, si el peor caso ocurre raramente o nunca, entonces no tiene sentido forzar tanto larobustez si lo que se desea es buen comportamiento puesto que asegurar que el sistema será robusto para el peor caso implicar “degradar” el comportamiento en el resto de casos.
2.3.5 Ejemplo
A continuación vamos a ilustrar el proceso de síntesis de un controlador robusto H ∞ con ayuda delas herramientas de MATLAB. A fin de poder contextualizar las prestaciones de dicho controladorcon respecto a otras estrategias se diseño, el resultado obtenido se comparará con otros doscontroladores: uno clásico (PID diseñado por cancelación) y uno adaptativo (reguladorautosintonizado).
Planta: Considerar que el modelo que describe el comportamiento de un brazo robótico es
donde el parámetro m varía con el tiempo según la gráfica de la Fig. 33:
5
10.2
20 40 60
m
t
0 10 20 30 40 50 60-3
-2
-1
0
1
2
3
Tiempo (s)
r ( t )
, y ( t )
Planta en lazo abierto
Fig. 33. Variación del parámetro m en función del tiempo y comportamiento de la planta sin control
Aunque estrictamente no podemos hablar de planta incierta sino de planta variante con el tiempo,
podemos considerar que el valor nominal de m es , considerar el resto de valores de m
Kcs
Qs
Ks
v u
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 94/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 94
como perturbaciones del parámetro nominal, y diseñar en consecuencia un controlador robustocapaz de cumplir las especificaciones para todos estos valores de m .
Modelo nominal: La realización de estado en forma canónica controlable de la planta nominal es
,
con , , , .
Modelo de incertidumbre: La masa variable la modelamos mediante el siguiente modelo deincertidumbre aditiva inversa
,
donde escogemos . Así, los otros dos casos (m 0.2 y m 0.5) quedan contemplados en lafamilia. Notar que, si seleccionamos , . Y si seleccionamos
, .
Con este modelo, las matrices perturbadas son
Planta incierta: Si separamos la perturbación escalar del resto de términos, podemos expresar ala planta incierta por medio de la LFT superior mostrada en la Fig. 34 y la Fig. 35.
yu
yu
Fig. 34. Planta incierta expresada como LFT superior
A partir de la anterior realización de estado es posible hallar las matrices de la planta incierta y verqué parte corresponde a las matrices nominales y qué parte es incertidumbre:
La segunda ecuación, , junto con la condición , nos da. Sustituyendo este valor de en la primera y tercera
ecuaciones tenemos:
Es decir, las matrices del sistema incierto son
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 95/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 95
Las matrices , , y corresponden a la planta nominal, = , , y. Por otro lado, puesto que sólo hay incertidumbre en las matrices de estado y entrada, podemos tomar , así y Finalmente, podemos calcular el resto de matrices por identificación de coeficientes (por simplicidad se asumirá ), así:
=
=
Tomando , nos queda y, de ahí, . El esquema de estado
de la planta incierta se ve en la Fig. 35.
Modelo de las especificaciones: La configuración de control escogida es la de la Fig. 35:
Fig. 35. Configuración de control
Se desea que el lazo presente acción integral a fin de seguir consignas de tipo escalón sin offset enrégimen permanente. Ello es equivalente a que la función de sensibilidad presente un derivador.Así, podemos tomar como función de ponderación de las especificaciones de sensibilidad a
con .
Fig. 36. Realización de estado del bloque de especificaciones W S .
Bs Cs1/s
s
Ds
z
e
G 0K
W S
r e u
_
z G
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 96/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 96
Fig. 37. Configuración generalizada de control
Planta aumentada: Juntando la planta incierta con el bloque de especificaciones se obtiene la
configuración generalizada de la Fig. 37, cuya realización de estado de la planta aumentada es
Síntesis del controlador: Podemos formular nuestro problema de síntesis H en los siguientestérminos: Obtener un controlador que cumpla las siguientes condiciones: (i) es estable,(ii) el sistema en lazo cerrado que relaciona la entrada r con la salida w es internamente
estable, y (iii) es óptimo en el sentido que minimiza la función de coste . Notarque .
Si se obtiene un valor de superior a la unidad entonces la solución es subóptima. Aún así, unanálisis de su respuesta frecuencial y temporal nos indicará si es un controlador válido en la práctica. Finalmente, dada la planta nominal y las funciones de ponderación escogidas, elcontrolador central será de tercer orden ya que su orden coincide con la suma de los estados de G 0,W s y W ia (de ahí la importancia de usar funciones de ponderación de orden reducido).
Dada la planta aumentada, podemos usar la función hinfsyn para obtener el controlador. Pordefecto, el algoritmo de solución es el DGKF, que realiza una búsqueda binaria del mínimo J ,
min J , dentro del intervalo definido por el usuario [ min, max]. El programa muestra losresultados de cada iteración: tentativa, autovalores de los Hamiltonianos usados en la solución de
u
y B0 C0
B
u
C
1/s
0
x
D12
r
K
W s
_
y
e
z
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 97/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 97
las dos ecuaciones de Riccati y de dichas soluciones, , , y radio espectral del producto de lassoluciones .
Por ejemplo, para una selección de las especificaciones de , y elresultado es:
Reset t i ng val ue of Gamma mi n based on D_11, D_12, D_21 t er ms
Test bounds: 0. 5000 < gamma <= 100. 0000
gamma hamx_ei g xi nf _ei g hamy_ei g yi nf _ei g nrho_xy p/ f100. 000 1. 4e+000 2. 6e- 002 1. 1e- 010 - 4. 8e- 009 0. 0008 p50. 250 1. 4e+000 2. 6e- 002 7. 0e- 011 0. 0e+000 0. 0030 p25. 375 1. 4e+000 2. 7e- 002 7. 0e- 011 0. 0e+000 0. 0122 p12. 938 1. 4e+000 2. 9e- 002 7. 0e- 011 0. 0e+000 0. 0500 p6. 719 1. 4e+000 3. 9e- 002 7. 0e- 011 0. 0e+000 0. 2494 p3. 609 3. 3e- 016# ** ** ** * 7. 0e- 011 0. 0e+000 ** ** ** f5. 164 1. 4e+000 5. 9e- 002 7. 0e- 011 0. 0e+000 0. 6308 p4. 387 1. 4e+000 1. 2e- 001 1. 9e- 009 - 4. 4e- 010 1. 7424# f4. 854 1. 4e+000 7. 1e- 002 7. 0e- 011 0. 0e+000 0. 8537 p
4. 746 1. 4e+000 7. 7e- 002 7. 0e- 011 0. 0e+000 0. 9697 p4. 674 1. 4e+000 8. 3e- 002 7. 0e- 011 0. 0e+000 1. 0650# f4. 720 1. 4e+000 7. 9e- 002 7. 0e- 011 0. 0e+000 1. 0029# f4. 725 1. 4e+000 7. 9e- 002 7. 0e- 011 0. 0e+000 0. 9961 p4. 722 1. 4e+000 7. 9e- 002 3. 1e- 019 # ** ** ** * ** ** ** f4. 722 1. 4e+000 7. 9e- 002 3. 1e- 019 # ** ** ** * ** ** ** f
Gamma val ue achi eved: 4. 7251
Otra selección de la función de ponderación de la sensibilidad, por ejemplo, , y, da lugar a otro controlador diferente, también subóptimo, con 4.7828.
Análisis del controlador robusto: La Fig. 38 muestra las funciones de sensibilidad calculadas para cada uno de los valores de m de ambos controladores robustos.
10-2
10-1
100
101
102
-45
-40
-35
-30
-25
-20
-15
-10
-5
0
5
M a g n i t u d e ( d B )
Sensibilidad. M = 2, b = 0.7, = 4.7251
Frequency (rad/sec)
m=1
m=5
m=0.2
10
-210
-110
010
110
2-45
-40
-35
-30
-25
-20
-15
-10
-5
0
5
M a g n i t u d e ( d B )
Sensibilidad. M = 10, b = 0.3, = 4.7828
Frequency (rad/sec)
m=1
m=5
m=0.2
Fig. 38. Funciones de sensibilidad (para m 1, m 5 y m 0.2) de los dos controladores robustos.
En el segundo caso, al tomar b más baja y dar más margen a M , el comportamiento es más lento pero a cambio las funciones de sensibilidad son más parecidas por lo que la respuesta presenta prácticamente la misma forma sea cual sea el valor de m . Ver Fig. 39.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 98/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 98
0 10 20 30 40 50 60-2
-1
0
1
2
Controlador robusto. M = 2,b = 0.7, = 4.7251
r ( t ) , y ( t )
0 10 20 30 40 50 60-10
-5
0
5
10
Tiempo (s)
u ( t )
0 10 20 30 40 50 60-2
-1
0
1
2
Controlador robusto. M = 10,b = 0.3, = 4.7828
r ( t ) , y ( t )
0 10 20 30 40 50 60-1
-0.5
0
0.5
1
Tiempo (s)
u ( t )
Fig. 39. Respuesta y esfuerzo de control de los dos controladores robustos
Comparación con PID: La Fig. 40(b) muestra la respuesta y el esfuerzo de control de la misma
planta pero ahora controlada mediante un regulador PID diseñado para cancelar la dinámica de la planta en el caso nominal y ajustando su ganancia para que el polo dominante se sitúe en ‐4. Aefectos de realizabilidad se ha añadido también un polo lejano. El PID es:
Se observa que el comportamiento es perfecto cuando m 1 y muy aceptable cuando m 0.2. Sinembargo, cuando m 5 el PID es incapaz de eliminar las oscilaciones. Los controladores robustosanteriores no presentan un comportamiento tan bueno cuando m 1 pero mantienen la respuestamás o menos uniforme para todos los valores de m .
y
u
planta variante
excitación
x' = Ax+Bu y = Cx+Du
controlador
0 10 20 30 40 50 60-2
-1
0
1
2Controlador PID
r ( t ) , y ( t )
0 10 20 30 40 50 60-20
-10
0
10
20
Tiempo (s)
u ( t )
Fig. 40. Modelo Simulink usado para simular los controladores robustos y el PID. Respuesta y esfuerzo de
control del PID-cancelación
Comparación con un controlador adaptativo: Para terminar hemos diseñado un controladoradaptativo de tipo regulador auto-sintonizado. El algoritmo de identificación estima en línea los parámetros de la planta minimizando el cuadrado del error recursivamente ( RLSE , Recursive LeastSquare Error ). El controlador recalcula sus parámetros en función de dichas estimaciones en cada período de muestreo. Como controlador se ha escogido un Dahlin digital cuyo objetivo es que larespuesta indicial de planta sea del tipo donde es el periodo de
muestreo para todos los bloques y vale . Y, a fin de evitar el rizado de la señal decontrol, se han sustituido los ringing poles por su ganancia estática.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 99/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 99
0 10 20 30 40 50 60-2
-1
0
1
2
r ( t ) , y ( t )
Controlador Dahlin adaptativo (sin ringing p oles), ff=1, fd=1
0 10 20 30 40 50 60-2
-1
0
1
2
Tiempo (s)
u ( t )
0 10 20 30 40 50 60-2
-1
0
1
2
r ( t ) , y ( t )
Controlador D ahlin adaptativo (sin ringing poles), ff=0.945, fd=1000
0 10 20 30 40 50 60-10
-5
0
5
10
Tiempo (s)
u ( t )
Fig. 41. Respuesta y esfuerzo de control para los controladores adaptativos autosintonizados
En este caso se observa que la bondad del comportamiento depende de la calidad de laidentificación paramétrica. En la Fig. 41(a) el algoritmo de identificación no cuenta ni con factor de
olvido ni con factor de desconfianza. Por ello, al ser mala la convergencia de la estimación, elcontrolador se resiente y el conjunto no es capaz de eliminar las oscilaciones asociadas a m 5. Encambio, en la Fig. 41(b), se ha utilizado un factor de olvido de 0.945 y un factor de desconfianza de1000 con lo cual la estimación es más rápida y precisa y por tanto el sistema se comporta mejor. Enconcreto, tarda menos de un periodo de consigna en identificar los parámetros reales de la planta y, por tanto, en seguir la señal con la velocidad y precisión adecuadas
Comparando este tipo de control con los controladores robustos diseñados para la misma planta podemos concluir que los robustos tienen un comportamiento intermedio entre el caso deestimación paramétrica simple y estimación paramétrica mejorada con factores de olvido ydesconfianza. En este último caso el regulador autosintonizado es muy superior al resto decontroladores. Sin embargo, una ventaja fundamental de los robustos frente a los adaptativos es que
los primeros son fijos, aunque el comportamiento no sea tan fino. En cualquier caso, cadaaplicación es distinta y elegir un tipo u otro de estrategia de control depende de muchos factores.
2.4 Ejercicio resuelto
Ejercicio 2. Control de la dinámica longitudinal de un avión (Mathworks)
El problema: El modelo linealizado que describe la dinámica longitudinal de un avión (NASAHiMAT) volando a 25000pies y 0.9Mach presenta la siguiente descripción en el espacio de estado
es el siguiente:
A =[ - 2. 2567e- 02 - 3. 6617e+01 - 1. 8897e+01 - 3. 2090e+01 3. 2509e+00 - 7. 6257e- 01;9. 2572e- 05 - 1. 8997e+00 9. 8312e- 01 - 7. 2562e- 04 - 1. 7080e- 01 - 4. 9652e- 03;1. 2338e- 02 1. 1720e+01 - 2. 6316e+00 8. 7582e- 04 - 3. 1604e+01 2. 2396e+01;
0 0 1. 0000e+00 0 0 0;0 0 0 0 - 3. 0000e+01 0;0 0 0 0 0 - 3. 0000e+01] ;
B = [ 0 0;0 0;0 0;0 0;
30 0;0 30] ;
C = [ 0 1 0 0 0 0;0 0 0 1 0 0] ;
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 100/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 100
D = [ 0 0;0 0] ;
Las variables de estado son: las perturbaciones alrededor del vector de velocidad (V), el ángulo deataque (), la velocidad de variación de la actitud (q), el ángulo de actitud (), el ángulo del primeractuador-elevon (1) y el ángulo del segundo actuador-canard flap (2).
Las variables de control son las señales que controlan los dos actuadotes: elevon (e) y canard flap (c).
Las variables de salida (es decir, medidas) son: el ángulo de ataque () y la actitud ().
Especificaciones:
Sobre la función de transferencia complementaria T(s).400
)10(20)(3
s
s sW
Sobre la función de transferencia S(s): )15.0(
)10(5.0)(1
s
s sW
Objetivo: Obtener un controlador serie estable, que estabilice al sistema y minimice la siguientefunción de coste (mixed sensitivity problem):
T W
S W
3
1
Se pide:
1) Analizar la planta sin control. Introducir las matrices de estado de la planta (ag,bg,cg,dg) yanalizar su comportamiento en lazo abierto. En concreto: (a) Obtener sus polos (función pole).¿es estable? (b) Obtener sus ceros de transmisión (función zero). ¿hay alguno de fase nomínima? (c) Obtener el diagrama de Bode de su respuesta frecuencial. Puesto que el sistema esMIMO representar en dB la magnitud de sus valores singulares.
2) Especificaciones. Representar el diagrama de Bode de magnitud de las inversas de lasfunciones de ponderación, 1/W1 y 1/W3.
3) Síntesis del controlador robusto. Calcular el controlador robusto que minimiza la normainfinita de la función de coste del enunciado.
4) Analizar el diseño. (a) Dibujar la respuesta frecuencial de la función de coste obtenida.¿Cuánto vale el máximo? (b) Dibujar la respuesta frecuencial de la función de sensibilidadobtenida junto con las especificaciones 1/W 1. ¿Se cumplen? (c) Dibujar la respuesta
frecuencial de la función de sensibilidad complementaria obtenida junto con lasespecificaciones 1/W 3. ¿Se cumplen?
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 101/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 102/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 103/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 103
Todos los actuadores se agrupan en una cámara de climatización externa a la habitación. Estacámara de climatización recoge el aire de la habitación, lo trata y lo vuelve a inyectar. Por el hechode ser externa se ve afectada por la temperatura T ext y humedad absoluta H ext del exterior de lahabitación.
Se dispone además de dos sensores: un termómetro y un sensor de humedad relativa. Este último esmuy sensible a la humedad absoluta y a la temperatura. Ambos sensores están situados en la rendijade salida del aire.
puerta
habitación400 m3
T , h
humidificadorcalefacción refrigeración
cámara de climatización
T
h
flujo externode aire
T ext
H ext
aireuc u f uh
Modelo matemático de la planta
En el interior de la habitación la temperatura es dT dT T T 230 y la humedad vale
dh RH dhhh 500 . En el exterior los valores son ext ext ext dT T T 0, y
ext ext ext dH H H 0, .
El conjunto formado por la habitación y la cámara de climatización puede modelarse en forma dematriz de funciones de transferencia:
f
h
c
ext
ext
u
u
u
dH
dT
sdh
dT )(G ,
con
2.0211318)1(55.0)1(8.1
501001
)112)(12(
1)(
s s s
s
s s sG .
Especificaciones. Objetivos del control
Puesto que la especificación es mantener T y h constantes, el diseño se centrará en mantener lasdesviaciones alrededor del punto de equilibrio dT y dh tan pequeñas como sea posible. Y ello conun esfuerzo de control (consumo) razonable.
Solución
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 104/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 105/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 105
302015 25105 12 23 C
0.024
0.018
0.012
0.006
equiv.50 RH a23C
humedad
dew point
C.F.
C.I.
Paso 1. Para una humedad relativa de 50 RH la temperatura de rocío correspondiente (dew-pointtemperature) es de 12C . El primer paso es pues enfriar el aire extraído hasta los 12C .
Paso 2. La cantidad de agua correspondiente a 50 RH , 23C es, según la gráfica, de 0.008.
Manteniendo la temperatura constante (a 12C ) se inyecta la cantidad de agua suficiente paraconseguir una relación de humedad de 0.008.
Paso 3. Manteniendo la cantidad de agua constante (a 0.008), se calienta el aire hasta los 23C .
habitación400 m3 T , h
calefacciónref rigeración humidificador
cámara de climatización
T 1
h
flujo externode aire
T ext
H ext
aireu f uh uc
PI
PI T 2
Desventajas:
1) Se consume demasiada energía enfriando y calentando el aire continuamente. Es caro.2) Puesto que no utiliza el sensor de humedad, el control de humedad se hace controlando el punto
de rocío dentro de la cámara y no de la habitación. Por lo tanto, puede compensar el efecto deT ext y H ext , pero no se entera de los cambios de la carga de la habitación (número de personas, puertas abiertas...)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 106/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 106
3) Solución multivariable. Controlador óptimo H
habitación400 m3 T , h
humidificador calefacción refrigeración
cámara de climatización
T
h
flujo externode aire
T ext
H ext
aireuc u f uh
controlador multivariable
Pasos en el diseño de controladores óptimos H
1) Traducir las especificaciones del problema a funciones de ponderación de las señales de control,error y salida.
2) Obtener la planta generalizada P a partir de la planta G y las funciones de ponderación Wi.Plantear la configuración estándar.
G( s)K ( s)
We( s)
W y( s)
Wu( s)
w2
yue
z1
z2
w1
z3
P( s)
K ( s)
zw
u y
donde
TW
KSW
SW
PK w
z
y
u
e
l F s
s
),()(
)(
recibe el nombre de transformación fraccional lineal
( Linear Fractional Transformation).
3) Calcular, con ayuda de los algoritmos disponibles, el controlador K tal que el sistema de laFigura anterior es internamente estable y se cumple que:
mín
TW
KSW
SW
y
u
e
, con 1)( GK IS y GK GK IT 1)(
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 107/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 107
Elección de los pesos
Notar que en nuestro ejemplo la señal de salida coincide con la señal de error puesto que se trata deque las variaciones en la temperatura y humedad interiores se mantengan cercanas a cero.
El vector de control T f hc uuuu se penaliza con la matriz de ponderación
)(00
0)(0
00)(
)(
sW
sW
sW
s
uf
uh
uc
uW
donde12
190035.0)(
s
s sW uc y
19
1901.0)()(
s
s sW sW uf uh .
Es decir, se trata de que el radiador reaccione rápido a las perturbaciones rápidas mientras queel humidificador (y/o la refrigeración) se deja para las perturbaciones más lentas.
El vector de salida
T
dhdt y se penaliza con la matriz
10
01
)19)(190(
90)(
s s s yW
Esta elección penaliza fuertemente las bajas frecuencias, asemejándose a una acción integral. No queremos errores una vez alcanzado el régimen permanente.
La Figura muestra los diagramas de Bode de las diferentes funciones de ponderación:
10 -3 10 -2 10-1
10 101
10 -2
10 -1
10 0
10 1
[rad/min]
W uc W uh = W uf
10-3
10-2
10-1
100
10 10
-3
10-2
10-1
100
101
102
[rad/min]
W y
omg = l ogspace( - 3, 1) ;
wu11 = nd2sys( [ 90 1] , [ 2 1] , 0. 035) ;wu22 = nd2sys( [ 90 1] , [ 9 1] , 0. 1) ;vpl ot ( ' l i v, l m' , f r sp( wu11, omg) , f r sp( wu22, omg) ) , gr i d on, xl abel ( ' [ r ad/ mi n] ' )
wy11 = nd2sys( 1, conv( [ 90 1] , [ 9 1] ) , 90) ;vpl ot ( ' l i v, l m' , f r sp( wy11, omg) ) , gr i d on, xl abel ( ' [ r ad/ mi n] ' )
Diseño del controlador de tres salidas (Calor – Humedad – Frío)
La configuración estándar es la de Figura,
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 108/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 108
)112)(12(
)1(55.0)1(8.1
01
)(
s s
s s
s
sext G
)112)(12(
2.0211318
5010
)(
s s
s suG
)( suW
)( s yW
)( sK
++
f
h
c
u
u
u
u
ext
ext
dH
dT
dh
dT y
w
z1
z2
donde las matrices de ponderación son:
19
1901.000
019
1901.00
0012
190035.0
)(
s
s s
s s
s
suW y
10
01
)19)(190(
90)(
s s s yW
La función que calcula el controlador tal que mín
SW
KSW
y
u en Matlab es hi nf syn y el
código es como sigue:
% f unci ones de ponderaci ón wu = daug( wu11, wu22, wu22) ;wy = daug( wy11, wy11) ;
% subsi st ema dependi ent e del cont r ol Gu = abv( sbs( g13, g14, g15) , sbs( g23, g24, g25) ) ;
% pl ant a gener al i zada syst emnames=' Gu wu wy' ;i nput var =' [ ext {2}; u{3}] ' ;out put var =' [ wu; wy; ext+Gu] ' ;i nput _t o_Gu=' [ u ] ' ;i nput _t o_wu=' [ u ] ' ;i nput _t o_wy=' [ ext +Gu] ' ;sysout name=' P' ;cl eanupsysi c=' yes' ;sys i c;
% cál cul o del cont r ol ador nmeas=2; ncon=3; gmi n=0. 1; gmax=5; t ol =1e- 3;[ K, LFT] =hi nf syn( P, nmeas, ncon, gmi n, gmax, t ol ) ;
Test bounds: 0. 1000 < gamma <= 5. 0000
gamma hamx_ei g xi nf _ei g hamy_ei g yi nf _ei g nrho_xy p/ f5. 000 1. 1e- 002 - 2. 1e- 015 1. 1e- 002 - 6. 1e- 016 0. 0000 p
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 109/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 110/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 111/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 111
Matrix Function Description (MFD): Puesto que G(s) es una matriz racional, puede expresarsecomo
)()(
1)( s
sd s NG
siendo d ( s) el mínimo común múltiplo mónico de los elementos g ij( s) y N( s) una matriz polinomial.
Pero también es posible expresar G( s) como cociente de dos matrices polinomiales coprimas, N yD,
1)()()( s s s DNG
Esta última representación recibe el nombre de matrix function description y nos permite obtener unmayor grado de analogía entre los sistemas SISO y MIMO.
Representación en el espacio de estado: Las variables de estado x de un sistema cualquiera son elconjunto más pequeño de variables que determinan el estado del sistema de forma que, conociendo
su valor a t =t 0 y el valor de la entrada para t ≥t 0, el comportamiento del sistema queda totalmentedescrito para cualquier t ≥t 0.
Un sistema dinámico se puede representar por medio de ecuaciones diferenciales (ED) ordinariasdonde el tiempo es la variable independiente. Por otro lado, una ED de orden n se puede expresarcomo un conjunto de n EDs de primer orden (representación vectorial-matricial). Si los n elementos del vector x constituyen un juego de variables de estado lo que se obtiene es unaecuación de estado (EE).
La representación en el espacio de estado de un sistema MIMO es:
salida)de(ecuación
estado)de(ecuación
DuCxy
BuAxx
donde las dimensiones son nnA (n: número de estados), pnB , nqC , pqD .
En los sistemas MIMO, en vez de escribir las dos últimas ecuaciones, lo que se hace a veces esutilizar una notación mixta:
DC
BAG(s)
Conversiones entre representaciones: El paso de EE a G( s) es directo: Si con condiciones inicialesnulas se aplica la transformada de Laplace a las EE,
)()()(
)()()(
s s s
s s s s
DUCXY
BUAXX
y se expresa Y( s) en función de U( s), )()( 1 s s s UDBAICY se obtiene
DBAICG 1)( s s
En cambio el paso de G( s) a EE no da un resultado único (tanto en SISO como en MIMO):
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 112/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 112
Ejemplo 25. Comprobar que la función de transferencia1
)( 2
s s
s sG admite las siguientes
dos representaciones en EE:
0110
1221
01000010
)(1 sG y
010
111
010
)(2 sG
Comprobación vía Matlab:
>> [ num, den] =ss2t f ( [ 0 - 1; 1 - 1] , [ 0; 1] , [ 0, 1] , 0) ;>> zpk( t f ( num, den))Zer o/ pol e/ gai n:
s- - - - - - - - - - - - - -( s 2̂ + s + 1)
>> [ num, den] =ss2t f ( [ 0 1 0; 0 0 1; - 1 - 2 - 2] , [ 0; 0; 1] , [ 0, 1, 1] , 0) ;>> zpk( t f ( num, den))Zer o/ pol e/ gai n:
s ( s+1)- - - - - - - - - - - - - - - - - - - -( s+1) ( s 2̂ + s + 1)
>> mi nr eal ( zpk( t f ( num, den) ) ) %r eal i zaci ón mí ni maZer o/ pol e/ gai n:
s- - - - - - - - - - - - - -( s 2̂ + s + 1)
Los motivos son los siguientes:
1) La elección de las variables de estado no es única.
2) La elección de n tampoco es única:
pq pnnnnq pq
s s
DBAICG
1)(
Formas canónicas y realizaciones mínimas: Por ello es necesario contar con formas canónicas yrealizaciones mínimas. Estas últimas se obtienen mediante la cancelación de polos y ceros cercanosy con la eliminación de estados poco controlables y/o observables y redundantes. En el ejemploanterior la realización G1 sería mínima si elimináramos el estado no observable.
Polos y ceros: Los polos de un sistema MIMO son los valores de s para los cuales al menos una delas componentes de Y( s) tiende a infinito. Son, por tanto, los polos de los g ij( s).
Los ceros son los valores de s para los cuales Y( s)=0. La salida es nula cuando G( s)=0. Los cerosde G( s) son los polos de G-1( s). Puesto que
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 113/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 114/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 114
En cuanto a la simplificación o bien se modelan los fenómenos en multiescalas temporalesen sistemas que intrínsecamente presenten más de un modo de operación o bien se agregan las variables del LSS a fin de disminuir las dimensiones de su modelo.
Sistema descriptor: A la hora de modelizar sistemas físicos complejos a fin de no perder laintuición se suelen tomar variables de interpretación física inmediata. No se trata tanto de obtenerun conjunto mínimo de variables sino de obtener un juego de variables significativas. Estas últimasestán a menudo interrelacionadas entre sí incluso en instantes temporales diferentes y son las quecomponen el llamado sistema descriptor:
DuCxy
BuAxxE
Esta representación es más general que las EE ordinarias ya que no sólo las incluye sino que
también contempla el caso de los sistemas no causales y las ecuaciones estáticas de dimensionesarbitrarias. Por otro lado, la representación del sistema por medio del sistema descriptor es típica delos LSS los cuales se estudian como un conjunto de sistemas interconectados. La interconexión nosiempre es representable por medio de las EE pero sí lo es con ayuda del sistema descriptor.
3.1.2 Perspectiva histórica. Del control moderno al robusto
Control moderno vs. métodos frecuenciales: Al principio los sistemas MIMO se estudiaron desdela óptica del control moderno (métodos de estado). Había dos buenas razones para hacerlo:
1) En el espacio de estado da igual trabajar con 4 estados que con 40, con 1 entrada y unasalida que con 3 entradas y 5 salidas ya que se trata de una representación inherentementemultivariable.
2) Los métodos frecuenciales de la teoría de control clásica están pensados para los sistemasSISO (a menudo SLI) y cuando se aplican a sistemas MIMO, incluso en los casos mássencillos, es inevitable que aparezca el tanteo (solución no única). De hecho, los métodosfrecuenciales son gráficos, se basan en relaciones entrada/salida y son iterativos. Eldiseñador analiza una respuesta frecuencial o un lugar de las raíces, diseña el controlador demanera gráfica, investiga la respuesta del sistema y repite este procedimiento hasta que seda por satisfecho. La “ventaja” del espacio de estado en este caso es que da lugar amétodos sistemáticos (solución única).
Aplicaciones aerospaciales: El control moderno funciona bien en aplicaciones aeroespaciales. Dehecho, debe su existencia a las investigaciones que en este campo se llevaron a cabo en las décadasde 1950 y 1960 (en los EEUU) y al desarrollo de la capacidad de cálculo de los computadoresdigitales en la misma época.
La teoría del control óptimo (LQG, linear quadratic Gaussian) va bien en estos tipos de problemas por diversos motivos:
1) Son aplicaciones de fácil modelización. Se puede hacer la hipótesis de planta lineal y
posiblemente invariante con el tiempo. Y además las perturbaciones son de naturalezaestocástica pero conocida y se pueden describir como ruido blanco.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 115/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 115
2) Lo importante en estos problemas es la gestión de recursos, en particular el mínimoconsumo de los retrocohetes. Esta gestión tiene una traducción inmediata en la forma deoptimización (minimización) de criterios cuadráticos.
3) Son verdaderos procedimientos de síntesis: una vez seleccionado el criterio, un procedimiento sistemático genera la solución (única) y el controlador óptimo según elcriterio escogido.
Aplicaciones terrestres industriales. Incertidumbre: Fuera de estos problemas tan concretos elLQG no tiene aplicación práctica. Sobre todo en los problemas industriales donde el proceso acontrolar es a menudo muy complejo y no totalmente conocido y donde además las perturbacionesexternas no son simple ruido blanco.
Dicho de otro modo son problemas donde aparece el concepto de incertidumbre. Hay de dos tipos:Incertidumbre interna (o errores de modelación) debida al desconocimiento teórico del proceso acontrolar, a la imprecisión de los dispositivos de medida, a las tolerancias de fabricación y a lasimplificación o idealización de los modelos matemáticos. E incertidumbre externa, debida a la
influencia del entorno, al modo de operación y a las propiedades de los materiales.Los controladores obtenidos por métodos frecuenciales son aproximados y se tratan como tales perotienden a ser razonablemente robustos frente a errores en el modelo de la planta y ciertas señales de perturbación actuando sobre la planta.
En cambio, los métodos en el espacio de estado usan modelos internos del sistema y sintetizan loscontroladores mediante algoritmos matemáticos. En condiciones de incertidumbre, si el modelo dela planta es pobre, el control muy probablemente también lo será. En las aplicaciones industrialesno sale a cuenta hacer el esfuerzo de obtener modelos muy precisos (y, sobretodo, lineales). Porello, cuando estos métodos se aplican en la industria unas veces funcionan bien y otras mal(obteniéndose muchos mejores resultados con el PID estándar). Además, aunque funcionen bien
pueden resultan muy frágiles. Por ejemplo, el rechazo a perturbaciones suele ser pobre y el fallo dealguno de los lazos retroactivos puede ser desastroso, llevando a la inestabilidad total. Por ello a partir de 1980 se empezó a investigar en el control robusto y en técnicas para mejorar la robustez deestos controladores.
Inconvenientes del LQG: En concreto, el principal inconveniente del LQG es que pone demasiadoel énfasis en la optimalidad y presta poca atención a la incertidumbre. Además, el “óptimo” notiene por qué ser “bueno”. Un controlador impecable matemáticamente puede ser inútil en la práctica. En términos generales podemos decir que el LQG es:
1) Poco realista: modeliza todas las incertidumbres como ruido blanco cuando no existeninguna justificación para hacerlo y además presupone modelos lineales de la planta.
2) Poco práctico: se necesita experiencia y numerosas iteraciones para escoger correctamenteQ, R , W y V y, por otro lado, si el problema es demasiado complejo la misma cantidad decálculo no hace aplicable el LQG.
3) Poco robusto: está demostrado teórica y experimentalmente que al intentar añadir realismoal modelo de la planta el diseño puede salir incluso inestable
4) Poco intuitivo: le falta la potencia de los métodos gráficos.
Principales métodos frecuenciales en MIMO: Mientras en los EEUU se desarrollaban los métodosde estado, en el Reino Unido algunos grupos de trabajo se centraron en la generalización de lastécnicas frecuenciales SISO estándar para el caso de sistemas MIMO.
Lugar geométrico de las raíces Lugar característicoCriterio de Nyquist Técnicas vectoriales de Nyquist
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 116/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 116
Diagrama de Bode Diagrama de valores singulares
La idea era combinar el enfoque algebraico en el análisis de los sistemas MIMO con el enfoque deldiseño gráfico (en lugar de síntesis) para la selección del controlador en el dominio frecuencial (yasí eliminar la necesidad de modelos de planta muy precisos). Son técnicas que necesitan muchoscálculos (aunque no son difíciles) y por ello no pudieron ser implementadas hasta que no sedesarrollaron los ordenadores y aparecieron programas de simulación numérica como el Matlab.
Los principales métodos son: Inverse Nyquist Array (INA) de (Rosenbrock, 1974).
Characteristic Locus (CL) de (MacFarlane and Kouvaritakis, 1977).
Sequential return difference de (Mayne, 1979)
Dyadic expansion methods de (Owens, 1978)
Principal gain and phase methods de (Postlethwaite et al ., 1981)
Algunos monográficos son: (Maciejowski, 1989), (O’Reilly, 1987), (Patel and Munro, 1982) and
(Owens, 1978).
Control Robusto: En EEUU, cuando las limitaciones del LQG se hicieron patentes, se volvió a prestar atención a los métodos frecuenciales (y a la capacidad desensibilizadora de la retroacción desalida) y es en los años 1980’s cuando aparecieron las actuales técnicas de Control Robusto que predominan en el panorama de la teoría de control de hoy en día:
H ∞: optimización del máximo de sensibilidad (Zames): valores singulares estructurados (Doyle)LTR: loop transfer recovery (Stein)QFT: Quantitative feedback theory (Horowitz)
3.1.3 Herramientas matemáticas
La respuesta frecuencial de un sistema MIMO es una matriz de respuestas frecuenciales SISO. Elanálisis de cada uno de sus elementos por separado es inadecuado ya que por un lado no nos dainformación del comportamiento del sistema como un todo y por otro quisiéramos estudiar elsistema en un solo gráfico. Por tanto, en lugar de trabajar directamente con la matriz de funcionesde transferencia lo que se hace es trabajar con sus autovalores y/o valores singulares y/o normas.
Autovalores: De manera análoga a como se hace con las matrices constantes, se definen losautovalores ( s) de una matriz funcional G( s) como las funciones que hacen que el polinomio
característico de la matriz G( s), )()( s s GI sea idénticamente igual a cero. Como también son
funciones de s se pueden obtener representaciones (llamadas lugares característicos, characteristic loci) de ellos en diagramas de Bode o Nyquist.
Valores singulares: Los valores singulares i( s) de una matriz G( s) de dimensiones m n y de rangor son las raíces cuadradas no negativas de los autovalores de G*G (G* es la traspuesta conjugada deG)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 117/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 117
))()(*( s sii GG
y se ordenan de forma que n 21 . Al máximo valor singular 1 de la matriz G también
se le denota y al mínimo .
Si r<n (matriz singular) entonces hay n-r valores singulares nulos 021 nr r .
Una matriz con un valor singular cercano a cero está cerca de ser singular.
Ejemplo 26. Medida de la proximidad a la singularidad de la matriz
10
2501M
1. ¿Es M singular?
No puesto que su determinante no es nulo: 1)det( M
>> M=[ 1 250; 0 1]M =
1 2500 1
>> det ( M)ans =
1
2. ¿Cuánto ha de variar el elemento m21 para que M sea singular?
1
2501
M
21310402501 m
(una pequeña variación de m21 hace la matriz singular)
3. Obtener los autovalores y valores singulares de M.
Autovalores: =1 (doble) (no dan información sobre la proximidad a la singularidad)Valores singulares: 1=250, 2=4·10-3 (la proximidad a la singularidad la indica el hecho de que unvalor singular es muy pequeño)
>> ei g( M)ans =
1
1
>> svd( M)ans =
250. 00400. 0040
Normas: La norma es un concepto aplicable a vectores, matrices, señales y sistemas. Se define lanorma p de un vector n-dimensional como
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 118/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 119/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 119
variaciones. Y, aunque el entorno no varíe, el sistema deberá ser inmune a la incertidumbre delmodelo de la planta (dinámica no modelada,…)
Así pues:
Objetivo1) Satisfacer comportamiento nominal
1.1) Estabilidad1.2) Comportamiento
Tracking Rechazo perturbaciones d Rechazo ruido de medida n
2) Mantener el comportamiento a pesar de la incertidumbre comportamiento robusto
La configuración más idónea (por su capacidad de desensibilización) vuelve a ser una vez más laretroacción de salida:
Fig. 43. Lazo de control
Transmitancias en lazo abierto:
Ganancia directa: )()()( s s s K GQ (cuidado con el orden del producto. Recordar que
son matrices) Ganancia de lazo: )()()()( s s s s HK GL
Ganancia diferencia de retorno: )()( s s LIF
Transmitancias en lazo cerrado: Para H( s) = I
De r a e: 1)()()( s s s K GIS (sensibilidad)
De r a u: 1)()()()( s s s s K GIK R
De r a y: 1)()()()()( s s s s s K GIK GT (sensibilidad complementaria)
IST )()( s s
Expresión de la salida y en función de r, d, n: SdTnTry
Especificaciones nominales formuladas en términos de loop-shaping (conformación del lazo)
1. Tracking (seguimiento, BF): Interesa IT )( j , por tanto, )( jL ⇒ 1)( jL ⇒ 1)( jS .
K ( s) G( s)r( s) + e( s)
u( s)y( s)
_
H( s)
d( s)+
+
++n( s)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 120/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 120
2. Rechazo de las perturbaciones d (BF): Interesa )( jS ⇒ 1)( jS ⇒
1)( jL . Esto es compatible con las especificaciones de tracking.
3. Rechazo del ruido de medida n (AF): Interesa )( jT ⇒ 1)( jT ⇒
1)( jL ⇒ IS )( j .
Así, interesa que los diagramas de valores singulares de L, S y T tomen las siguientes formas:
Fig. 44. Especificaciones
log log log
0 dB 0 dB 0 dB
i(L) i(S) i(T)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 121/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 121
3.2 Análisis
3.2.1 Interacción y desacoplamiento
Interacción: Una planta MIMO presenta interacción cuando una o algunas de sus salidas dependende más de una entrada. Este hecho hace imposible controlar cada una de las salidas de formaindependiente y tampoco permite la aplicación de las herramientas de diseño SISO a dichossistemas. Puesto que cada canal de control producirá respuesta en varias salidas de la planta, esdifícil determinar qué acción de control simultánea hay que entrar en todas las entradas de la planta para tener el comportamiento deseado en todas las salidas.
Desacoplamiento: Interesa por tanto descomponer el problema MIMO en un conjunto de diseñosSISO independientes por medio del desacoplo. Desacoplar una planta es conseguir que cada una desus salidas dependa de una y solo una entrada.
Por ello el primer paso del diseño en MIMO siempre es eliminar o al menos reducir la interacción.Así, para cada entrada responderá sólo una salida y podremos aplicar las técnicas SISO paracontrolar cada par entrada/salida como si se tratara de lazos independientes.
Métodos de diagonalización: Una planta MIMO sin interacción es diagonal. Los métodos dedesacoplamiento intentan pues diagonalizar la planta o, al menos, conseguir la dominancia diagonal.
Para implementar el desacoplamiento por diagonalización se pueden usar pre-compensadores K ( s) ya veces también post-compensadores L( s) en serie con la planta (en un caso general, este último noes muy recomendable puesto que “desordena” las salidas):
Fig. 45. Diagonalización por medio de pre y post compensadores
Matriz de permutación: Es un pre-compensador específico utilizado cuando la planta esantidiagonal. Lo que hace es permutar las columnas de G(s) a fin de diagonalizarla.
Inversión: Es una manera de conseguir el desacoplamiento total. Si el pre-compensador K ( s)
contiene la inversa de la planta y una matriz diagonal (s),
)()()( 1 s s s ΛGK , entonces el lazo
resultante )()()()()()()( 1 s s s s s s s ΛΛGGK GL
es diagonal.
Diagonalización (por transformación modal): La diagonalización implementa la descomposición
modal de G(s), )()()()( 1 s s s s PGPΛ
tomando como precompensador a P(s) y como
postcompensador a P-1(s).
Estos dos últimos métodos pueden dar lugar a soluciones poco prácticas ya que los compensadorescalculados teóricamente pueden contener expresiones más complejas que las propias plantas e
incluso irrealizables analógicamente. La implementación digital tampoco soluciona gran cosa
K ( s) G( s) L( s)
precompensador planta postcompensador
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 122/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 123/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 124/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 125/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 126/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 127/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 127
donde
1
)(
)(
)(
)()()()()(
s
s
s
s s s s s
F
L
Q
HK GIK GT .
Criterio 1. El sistema de la Fig. 47 es estable si el determinante de su matriz diferencia de retorno,det(F( s)), no presenta ceros en el semiplano derecho del plano complejo.
Criterio 2. Criterio de Nyquist Generalizado. La aplicación del teorema del argumento a latransformación conforme det(F( s)) permite definir una versión multivariable del criterio deestabilidad de Nyquist:
El sistema de la Fig. 47 es estable si y solo si el número de vueltas que da la transformaciónconforme det(F( s)) alrededor del origen en sentido antihorario (cuando s recorre un contorno de
Nyquist D en sentido horario), )0(
)(det s N F , es igual al número de polos del sistema en lazo abierto
en el semiplano derecho i
s P
)(Q.
i
s s P N )()0(
)(det QF
Técnicas vectoriales de Nyquist (Nyquist Array Techniques): La aplicación del criterio deestabilidad de Nyquist en sistemas MIMO se simplifica mucho si la matriz F(s) es diagonaldominante ya que entonces se cumple:
i
s f s ii N N )0(
)()0(
)(det F
donde f ii( s) son los elementos de la diagonal de F( s).
Dependiendo de cómo calculemos los )0(
)(det s N F tenemos dos técnicas vectoriales diferentes: INA
( Inverse Nyquist Array) y DNA ( Direct Nyquist Array).
Criterio INA. Inverse Nyquist Array: Suponer que invertimos la matriz 1)()()( s s s FQT . El
resultado es 11 )()()( s s s QFT . De ahí podemos sacar dos conclusiones: la primera es que
1
1
)(det)(det)(det
s s s
QTF . Así, el número de vueltas (horarias) del )(det sF alrededor del origen
será:
)0(
)(det
)0(
)(det
)0()(det 11
s s s N N N QTF
La segunda conclusión es que
HQQHQIQFT 1111 )()()()()()( s s s s s s
Llamando 1ijq a los elementos de Q
-1, 1ijt a los elementos de T
-1 y suponiendo H diagonal con
elementos hi, tenemos que iijij hqt 11 .
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 128/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 128
Si Q-1 es diagonal dominante (es decir, si todas las bandas de Gershgorin de los elementos 1iiq
excluyen el origen) tenemos que
i
q s ii N N )0()0(
)(det 11Q
Si T-1 es diagonal dominante (es decir, si todas las bandas de Gershgorin de los elementos 1
iiq
excluyen los puntos – hi) tenemos que
i
h
qi
t si
iiii N N N )()0()0(
)(det 111T
Por tanto, el número de vueltas en sentido antihorario de det(F(s)) alrededor del origen será
i
h
qq si
iiii
N N N )()0()0()(det 11F
y para que el sistema sea estable deberán ser igual al número de polos inestables en lazo abierto,i
s P )(Q .
Criterio INA: Si las bandas de Gershgorin de 1iiq excluyen el origen y los puntos – hi, entonces el
sistema es estable si y solo si
iQ
i
h
qq P N N i
iiii
)()0(
11
Criterio DNA. Direct Nyquist Array: La matriz diferencia de retorno se puede expresar como
HQHHQIF )()()( 1 s s s . Por tanto, HQHF det)(det)(det 1 s s . Si H es
una matriz constante
)0(
)(det
)0()(det 1 s s N N
QHF
Si )(1 sQH es diagonal dominante (es decir los elementos qii excluyen el punto 1 ih )
tendremos que
i
h
qi
hqi
iiiii N N N )()0()0(
det
1
11 QH
En resumen,
Criterio DNA: Si las bandas de Gershgorin de qii excluyen los puntos 1 ih , entonces el sistema
será estable si y solo si
iQ
i
h
q P N i
ii
)( 1
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 129/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 130/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 130
Entre todos miden cuanto ha de aumentarse (o reducirse) la ganancia del lazo L( j ) para que valga| L( j )|=1 y cuánto ha de aumentar (o disminuir) la fase para que el argumento del lazo sea ∠ L( j )=-180º. En definitiva, miden cuánto le falta al lazo para valer L( j )=-1 (punto de oscilación crítica).
Márgenes garantizados: Los márgenes de estabilidad MIMO han de ser capaces de representar la
inmunidad de la estabilidad del sistema frente a variaciones de la ganancia y la fase en todos loslazos simultáneamente.
En un sistema MIMO, los márgenes de estabilidad garantizados vienen dados por:
1
1 MG
2arcsin2
MF
donde es una cota inferior de )( jF , )( jF
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 131/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 131
3.3 Control MIMO por métodos frecuenciales
Este apartado está basado en el Capítulo 10 de (Dutton, 97). Para más detalles, se recomienda suconsulta.
3.3.1 Control por inversión de planta
Método: Si la inversa de G( s) existe, podemos poner un precompensador K p=G-1( s) tal que en
cascada con G( s) lo que consigue es la matriz identidad, IGGGK )()()()( 1 s s s s p . Con ello
ya hemos diagonalizado la planta (y hemos eliminado de paso toda la dinámica).
Puesto que ahora no tenemos dinámica hay que poner otro controlador dinámico K d ( s) en cascadacon los polos y ceros necesarios para tener la dinámica global deseada.
El controlador total será, pues, )()()()()(1
s s s s s d d p K GK K K
.
Fig. 49
Comentarios: En la práctica este método no se usa mucho por los siguientes motivos: Puede ser que no exista la inversa de la planta. Si existe la inversa, puede ser que el
compensador no sea realizable (impropio). Aunque es posible compensar este exceso deceros con el compensador dinámico ello no es aconsejable en plantas de orden elevado.
Si la planta tiene ceros de fase no mínima su inversa es inestable.
El orden del compensador siempre será elevado (contiene la inversa de la planta y ladinámica deseada para todo el sistema). Los controladores de orden grande son difíciles deimplementar y menos robustos que los de bajo orden.
No es posible la cancelación exacta de la planta puesto que el modelo siempre es inexacto.
Si no se cancela exactamente puede volver a aparecer interacción. Falta por analizar la estabilidad de este esquema de control (y no es obvia).
Ejemplos:
Ejemplo 29. Planta neumática . Control por inversión de planta (Dutton). Considerar la planta neumática
K d ( s) G( sr( s) + e( s) u( s) y( s)
_
/n
/n
/n
K p( s)
K ( s)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 132/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 133/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 134/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 134
Calcular el controlador MIMO y verificar su comportamiento.
Solución:
Para eliminar la interacción se sitúa un precompensador igual a la inversa de la planta. Luego, para
tener un overshoot del 5% se selecciona =0.7 y para, además, tener un tiempo de establecimiento st
n s 01.0
4
se selecciona 1429.57
40
n . Por tanto el compensador dinámico es:
)800(
10265.30
0)800(
10265.3
)( 5
5
s s
s s sd K
El controlador total (realización mínima) es:
)94041110(10488.310488.3)94041110(
)800(1)()()(
5
51
s s
s s s s s d K GK
cl ose al l , cl ear al l , cl c%pl ant a wo=2*pi *50;L=3. 4e- 3;R=28. 8e- 3;G11=t f ( ( - 1/ L) *[ 1 R/ L] , [ 1 2*R/ L ( R/ L) 2̂+wo 2̂] ) ;G12=t f ( ( 1/ L) *wo, [ 1 2*R/ L ( R/ L) 2̂+wo 2̂] ) ;G21=- G12;G22=G11;G=[ G11 G12; G21 G22] ; zpk( G)%precompensador i nversor Kp=i nv( G) ;%compensador di nàmi c z=0. 7; wn=400/ z; %t s=0. 01 r pt =5%z=1; wn=400/ z; %t s=0. 01 r pt =0%k11=t f ( wn 2̂, [ 1 2*z*wn 0]) ;Kd=[ k11 0; 0 k11] ,%cont r ol ador t otal K=Kp*Kd; K=mi nr eal ( K) ; t f ( K)
La respuesta indicial a cada una de las entradas del sistema controlado es:
0 0.02 0.04 0.06 0.08 0.1-1
0
1
2
Control por inversión. Respuesta a r 1=escalón
y1
y2
u1
u2
0 0.02 0.04 0.06 0.08 0.1-2
-1
0
1
2
Control por inversión. Respuesta a r 2=escalón
y1
y2
u1
u2
%anàl i si
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 135/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 136/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 136
3.3.2 El método de los lugares característicos
Lugares característicos: Considerar el esquema de la figura,
Fig. 50. Lazo de control MIMO de un grado de libertad
La función de transferencia del camino directo es )()()( s s s K GQ . Los autovalores{q1( s),…,qn( s)} de Q( s) reciben el nombre de “valores característicos” de Q( s).
El diagrama polar (resultado de transformar el contorno de Nyquist D) de cada uno de estosautovalores recibe el nombre de “lugar característico”.
El “polinomio característico” del camino directo es )(det s s QI y también traza un lugar en el plano s.
Diagonalización: La transformación modal es la que permite diagonalizar las matrices:
)()()()(),...,(diag)( 11 s s s sq sq s n WQWΛ
Las columnas de la matriz modal W( s) son los autovectores de Q( s) y, al ser una transformación desimilaridad, los autovalores qi( s) de Q( s) coinciden con los de ( s).
El camino directo Q( s) puede interpretarse como la transformación modal inversa aplicada a unamatriz diagonal, es decir,
)()()()( 1 s s s s WΛWQ donde )(),...,(diag)( 1 sq sq s nΛ
Fig. 51. Camino directo expresado en términos de la transformación modal
Puesto que así no hay interacción entre los qi( s), el comportamiento dinámico de estos bloques porsí solo es suficiente para determinar la estabilidad del sistema entero.
W-1(s)
r( s) + e( s) y( s)
_
/n
/n W(s)
q1( s)
q n( s)
.
.
.
K ( s) G( s)r( s) + e( s) u( s) y( s)
_
/n
/n
/n
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 137/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 137
Se puede demostrar (Owens, 1978) que el sistema en lazo cerrado de la Fig. 51 (con retroacciónunitaria) es equivalente al siguiente sistema H( s),
)()(),...,(diag)()( 11 s sh sh s s n
WWH
donde)(1
)()( sq
sq shi
ii
.
Fig. 52. Sistema en lazo cerrado
Ahora se trata de conseguir un control desacoplado para el sistema de la Fig. 52.
En la Fig. 52 la interacción está en W y W-1. Si W fuera diagonal (W-1 también lo sería) no habríainteracción. W contiene los autovectores de Q=GK , por tanto, se trata de diseñar K de manera queW sea diagonal. Pero es difícil: (1) W varía con la frecuencia y (2) en un producto de matrices, nose conoce la relación entre los autovectores del producto de matrices con los autovectores de cadauna de las matrices que forman el producto. Por tanto hay que conformarse con aproximaciones:
Aproximación 1: Si (con una adecuada selección de K ) conseguimos que )(...)(1 sq sq n ,entonces )(...)(1 sh sh n y el lazo cerrado será )()()()()( 1
11 sh s sh s s
IWIWH
Aproximación 2: Si usamos ganancias grandes en K , los valores característicos también serángrandes 1)( sqi y entonces conseguiremos 1)( shi con lo que IH )( s . Aunque nunca lo
tendremos exactamente, esta aproximación es útil si se combina con el análisis de estabilidad.
Método de los lugares característicos: Se divide el rango frecuencial de interés en tres bandas (enrelación con la dinámica del sistema): bajas frecuencias, frecuencias intermedias y altas frecuenciasy se diseñan compensadores para cada una de las bandas
Paso 1: Altas frecuencias. Se diseña un pre-compensador constante K a que diagonalice W( s) aaltas frecuencias. El camino directo será pues G( s)K a. Se diseña constante porque el diseño delcompensador que diagonaliza W( s) es muy complicado. Por ello nos conformaremos con hacer eldiseño a una única frecuencia en la banda de altas frecuencias (que diagonalice de maneraaproximada y en cierto sentido a W( s)) y comprobar que su efecto se mantiene en una bandaalrededor de esta frecuencia. Si no es así, se busca otro compensador constante y otro y otro hastaque estemos satisfechos.
Un método para diseñar este controlador es usar la alineación de autovalores (Edmunds andKouvaritakis, 1979). Se trata de un algoritmo que alinea los autovectores de una matriz con losvectores de la base que forman el espacio vectorial donde se hallan estos autovectores. En nuestrocaso, resulta que si los autovectores qi( s) tienen el mismo orden (es decir, la fase final de todos es la
W-1(s)
r( s)y( s)
W(s)
h1( s)
h n( s)
.
.
.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 138/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 138
misma) la aplicación de este algoritmo consigue que los autovectores qi( s) se alineen a altasfrecuencias.
Para ello se puede usar la función de matlab “align” pero hay que ir con cuidado. Al trabajar conautovectores, sólo trabaja con direcciones y no con información de escala. Por ello, el compensadorobtenido tiene un signo arbitrario con lo que hay que investigar los lugares característicosresultantes y, si éstos no dan lugar a un sistema estable, hay que cambiar el signo del compensador.
Otra utilidad es la medida del ángulo de desalineación (función de matlab “fmisalg”) que calcula losángulos que miden la desalineación entre los autovectores del sistema y el conjunto de vectores queforman la base. De todos modos que estos ángulos sean pequeños es una condición suficiente de baja interacción pero no necesaria.
Paso 2: Frecuencias intermedias. Aquí se diseña un compensador K acc con la estructura mostradaen la Fig. 53. Las matrices A y B son aproximaciones constantes de las matrices W y W
-1 respectivamente siendo W, W
-1 las matrices modales que diagonalizan Q( s)=G( s)K a. (Nota: no
confundir A, B con las matrices de estado). Igual que antes A, B se obtienen constantes a una únicafrecuencia pero se espera que su efecto se deje notar en una banda de frecuencias a lado y lado deesta frecuencia de diseño.
Fig. 53. Compensación a altas frecuencias y a frecuencias intermedias
Este compensador a frecuencias intermedias recibe el nombre de “controlador conmutativoaproximado”. “Aproximado” porque A y B son constantes y deberían depender de s.“Conmutativo” porque conmuta (en el sentido de producto de matrices) con Q( s)=G( s)K a. Es decir,el resultado es el mismo si se sitúa K acc antes de Q( s) o bien después de Q( s):
)(
11
)(
11
)(1
1
)(
11
)()(),...,(diag)()()(),...,(diag)(
)()(),...,(diag)()()(),...,(diag)(
s
n
s
n
s
n
s
n
acc
acc
s sk sk s s sq sq s
s sq sq s s sk sk s
K Q
QK
WWWW
WWWW
(De todas formas, en la práctica no conviene poner K aac después de la planta, ni ningún otro post-compensador, dado que ello desordena las salidas).
Puesto que A y B han reducido el problema a un conjunto de lazos SISO independientes, lasfunciones de transferencia k i( s) se diseñan con técnicas SISO para cada uno de los lazos y elobjetivo es igualar los qi( s) a frecuencias intermedias, esto es, conseguir que todos los qi( s) tengan la
misma fase y ganancia a frecuencias intermedias sin estropear la compensación a altas frecuencias.Los valores característicos compensados serán qi( s)k i( s). Para no estropear el desacoplo a altas
B G( s)r( s) + e( s) u( s) y( s)
_
/n
/n
/n
K a( s)A
k 1( s)
k n( s)
.
.
.
K acc( s)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 139/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 140/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 140
G12=t f ( - 0. 52, [ 10. 1 1] ) ;G21=t f ( - 0. 54, [ 10. 4 1] ) ;G22=t f ( 1. 04, [ 2. 6 1] ) ;G=[ G11 G12; G21 G22] ;[ a, b, c, d] =ssdat a( G) ;
%r espuest a f r ecuenci al
w=l ogspace(- 2, 2) ;Gw=mv2f r ( a, b, c, d, w) ;
%aut oval ores cl =f ei g( w, Gw) ;%cl =csor t ( cl ) ;
f i gur esubpl ot ( 211) , semi l ogx( w, 20*l og10( abs( cl ) ) ) , gr i d, yl abel ( ' dB' ) ,t i t l e ( ' Lugar es caracter í st i cos de l a pl ant a neumát i ca' )subpl ot ( 212) , semi l ogx( w, angl e( cl ) *180/ pi ) , gr i d, yl abel ( ' gr ados' )xl abel ( ' Frecuenci a ( r ad/ s) ' )
ma=f mi sal g(w, Gw) ;
f i gure,semi l ogx(w, ma) , gr i d, xl abel ( ' Frecuenci a ( r ad/ s) ' )t i t l e ( ' Ángul os de desal i neami ent o' ) , yl abel ( ' gr ados' )
10-2
10-1
100
101
102
-80
-60
-40
-20
0
20
d B
Lugares característicos de la planta neumática
10-2
10-1
100
101
102
-100
-80
-60
-40
-20
0
g r a d o s
Frecuencia (rad/s)10
-210
-110
010
110
25
10
15
20
25
30
35
40
45
Frecuencia (rad/s)
Ángulos de desalineamiento
Vemos que: La planta presenta unos márgenes de estabilidad muy buenos.
Es probable que haya interacción en lazo cerrado puesto que los dos valores característicosno coinciden a ninguna frecuencia. Ello también puede verse con los ángulos que miden la
desalineación (entre los autovectores del sistema y el conjunto de vectores que forman la base). De todos modos que estos ángulos sean pequeños es una condición suficiente de baja interacción pero no necesaria.
Compensación (desacoplo) a altas frecuencias: A altas frecuencias, más allá de 4rad/s en nuestrocaso, los diagramas de magnitud de los autovalores son paralelos. Si somos capaces de alinear losautovalores a 4rad/s es de esperar que la alineación se mantenga a partir de 4rad/s. El precompensador necesario para conseguirlo (obtenido con align.m) es:
8861.104827.6
4614.68761.49
aK
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 141/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 141
%compensaci ón a AF ( w=4rad/ s) por al i neami ent o Gw4=mv2f r ( a, b, c, d, 4) ;Ka=al i gn( Gw4),
Si representamos los valores característicos de Q( s)=G( s)K a vemos que efectivamente hemos
mejorado el desacoplo a altas frecuencias puesto que ahí los autovalores ahora están alineados.Gwa=f mul ( w, Gw, Ka); cl a=f ei g( w, Gwa); cl a=csort ( cl a);f i gur esubpl ot ( 211) , semi l ogx( w, 20*l og10( abs( cl a) ) ) , gr i d, yl abel ( ' dB' ) ,t i t l e ( ' Lugares car act erí st i cos. Al i neami ent o a \ omega>4r ad/ s' )subpl ot ( 212) , semi l ogx( w, angl e( cl a) *180/ pi ) , gr i d, yl abel ( ' gr ados' )xl abel ( ' Frecuenci a ( r ad/ s) ' )maa=f mi sal g(w, Gwa) ;f i gure,semi l ogx(w, maa) , gr i d, xl abel ( ' Frecuenci a ( r ad/ s) ' ) , yl abel ( ' gr ados' )t i t l e ( ' Ángul os de desal i neami ent o. Al i neami ent o a \ omega>4rad/ s' ) ,
10-2
10-1
100
101
102
-40
-20
0
20
40
d B
Lugares característicos. A lineamiento a w>4rad/s
10
-2
10
-1
10
0
10
1
10
2-100
-80
-60
-40
-20
0
g r a d o s
Frecuencia (rad/s)10
-2
10-1
100
101
102
0
5
10
15
20
25
30
35
Frecuencia (rad/s)
Ángulos de desalineamiento
g r a d o s
Compensación a frecuencias intermedias: A frecuencias intermedias se diseña un ACC(approximate commutative controller ). Al igual que el pre-compensador K a, el ACC se diseña auna sola frecuencia y se espera que su efecto se deje notar en la banda cercana a esta frecuencia.
Este controlador consiste en dos matrices A y B que son aproximaciones (constantes) de lasmatrices W( s) y W
-1( s) de la transformación modal que diagonaliza el camino directo. Además,entre las dos matrices, se incluye un compensador diagonal con el objetivo de alinear los
autovalores del camino directo.En nuestro ejemplo, para diseñar la parte dinámica del ACC notar que aún hay desalineación pordebajo de 2rad/s. Como lo habitual es hacer el diseño para tener ganancias altas a bajas frecuencias(para tener errores pequeños en régimen permanente), lo que se puede hacer es dejar el autovalormayor tal y como está y conseguir que el autovalor menor se alinee con el mayor.
Suponiendo que la planta precompensada por K a es diagonal esto corresponde a diseñar doscompensadores independientes k 11( s) y k 22( s) siendo k 11( s)=1 y k 22( s) un controlador tal que tengauna ganancia en continua de 15dB, valga 0dB a 2rad/s y reduzca la fase del segundo autovalor paraalinearla con la del primero.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 142/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 142
Una buena opción para k 22 es un compensador de retardo (con una caída de 15 dB entre su polo y sucero). El cero (frecuencia codo superior) lo pondremos a la frecuencia a la que la diferencia entrelos dos autovalores es 3dB. Esta frecuencia resulta ser 0.43rad/s, por tanto,
0763.0
4292.0)(22
s
s sk ,
)(0
0)()(
22
11
sk
sk sd K
%compensaci ón a FI k1n=[ 1 0] ; k1d=[ 1 0] ; %k1=1 %f i l t r o de r et ar do di f _guany=20*l og10( abs( cl a( : , 1) ) ) - 20*l og10( abs( cl a( : , 2) ) ) ;i nx=f i nd( di f _guany<=3) ; i nx=i nx(1) ; w( i nx) , %w=0. 3765 i nx=40 [ k2n, k2d] =phl ag( - 15, w( i nx) )% numeradors i denomi nadors del s l l aços nums=[ k1n; k2n] ;dens=[ k1d; k2d] ;
Ahora hay que elegir a qué frecuencia se obtendrán las matrices constantes A y B que aproximanW( s) y W
-1( s). Si se usa un compensador de avance-retardo, lo mejor es situarlo a la frecuenciadonde la diferencia de fases de los dos autovalores es mayor. Este punto es 0.1677rad/s y ahí ladiferencia de fases es de 45º.
%contr ol ador conmutat i vo apr oxi mado di f _f ase=abs(angl e( c l a( : , 1) ) - angl e(c l a( : , 2) ) ) ;i nx=f i nd( di f _f ase==max(di f _f ase) ) ; w( i nx), %w=0. 163 i nx=31
El controlador conmutativo aproximado obtenido es:
)4313.0()5.650(0003.0
)5.650(107.5)0742.0(99.0
07632.0
1
)(0
0)()(
6
22
11
s s
s s
s sk
sk s
accBAK
donde
9996.04902.0
0106.08703.0B y
0060.15662.0
0122.01540.1A . Notar que la inversa de B no
coincide exactamente con A
0064.15668.0
0122.01559.11B
% di senyem ACC com [ ka, kb, kc, kd] ) :
[ ka, kb, kc, kd, B, A] =f acc( w, Gwa, i nx, nums, dens) ; A, B, Ai nv=i nv(A)Kacc=ss( ka, kb, kc, kd) ; zpk(Kacc)
Los lugares característicos correspondientes a Q( s) = G( s) K a K acc son los siguientes
%anàl i si Kaccw=mv2f r ( ka, kb, kc, kd, w) ;Qw=f mul f ( w, Gwa, Kaccw) ;cl q=f ei g( w, Qw) ; %cl q=csort ( cl q) ;
f i gur esubpl ot ( 211) , semi l ogx( w, 20*l og10( abs( cl q) ) ) , gr i d, yl abel ( ' dB' ) ,
t i t l e ( ' Lugares car act erí st i cos. Compensaci ón a AF y FI ' )subpl ot ( 212) , semi l ogx( w, angl e( cl q) *180/ pi ) , gr i d, yl abel ( ' gr ados' )xl abel ( ' Frecuenci a ( r ad/ s) ' )
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 143/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 144/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 144
subpl ot ( 211) , semi l ogx( w, 20*l og10( abs( cl qb) ) ) , gr i d, yl abel ( ' dB' ) ,t i t l e ( ' Lugares car act erí st i cos. Compensaci ón a AF, FI y BF' )subpl ot ( 212) , semi l ogx( w, angl e( cl qb) *180/ pi ) , gr i d, yl abel ( ' gr ados' )xl abel ( ' Frecuenci a ( r ad/ s) ' )
maab=f mi sal g(w, Qbw) ;f i gure,
semi l ogx(w, maab) , gr i d, xl abel ( ' Frecuenci a ( r ad/ s) ' ) , yl abel ( ' gr ados' )t i t l e ( ' Ángul os de desal i neami ent o. Compensaci ón a AF, FI y BF' )
Sin embargo este diseño aún no nos convence puesto que el esfuerzo de control es excesivo y puedellevar el sistema a la saturación:
0 1 2 3 4 5 6
0
20
40
60
Control por lugares característicos. Respuesta a r 1=escalón
y1
y2
u1
u2
0 1 2 3 4 5 6-5
0
5
10
15
Control por lugares característicos. Respuesta a r 2=escalón
y1
y2
u1
u2
%anàl i si t emporal Kt otal =Kb*Kacc*Ka;L=G*Ktot al ;
T=f eedback( L, eye( 2) ) ; Tu=f eedback( Ktot al , G) ;t =l i nspace( 0, 6, 500) ; r =ones( l engt h( t ) , 1) ;f i gure,subpl ot ( 211) , y=l si m( T, [ r r*0] , t ) ; u=l si m( Tu, [ r r*0] , t ) ;pl ot ( t , y, t , u, ' - - ' ) , gr i d, l egend( ' y_1' , ' y_2' , ' u_1' , ' u_2' )t i t l e ( ' Cont r ol por l ugar es car act er í st i cos. Respuest a a r _1=escal ón' )subpl ot ( 212) , y=l si m( T, [ r*0 r ] , t ) ; u=l si m( Tu, [ r *0 r ] , t ) ;pl ot ( t , y, t , u, ' - - ' ) , gr i d, l egend( ' y_1' , ' y_2' , ' u_1' , ' u_2' )t i t l e ( ' Cont r ol por l ugar es car act er í st i cos. Respuest a a r _2=escal ón' )
Para resolver este problema hay que reducir la ganancia. Por ejemplo, con
8.00
018.01K
Notar que la ganancia es diferente en cada lazo (ello puede hacer aparecer de nuevo la interacción por lo que se podría poner otro ACC para aislar el efecto de este compensador constante)
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 145/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 146/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 146
0 1 2 3 4 5 6-5
0
5
10
Control por lugares característicos. Respuesta a r 1=escalón
y1
y2
u1
u2
0 1 2 3 4 5 6-5
0
5
10
Control por lugares característicos. Respuesta a r 2=escalón
y1
y2
u1
u2
Finalmente, el controlador total es ad b s s s K BK AK K K )()()( 1 ,
)5.0)(5498.0(7073.8)964.1)(5.0(1965.5
)06788.0)(5.0(1611.1)07372.0)(5.0(9626.8
)07632.0(
1)(
s s s s
s s s s
s s sK
Ejemplo 32. Turbo-generador. Se trata de un sistema estable en lazo abierto de 10 estados, 2entradas y 2 salidas (Limebeer and Maciejowski 85)
)()( )()()(1)(
2221
1211
s g s g s g s g s sG
donde
)10942.993.58()37.406983.0(
)2345.0()042.1()667.1()10()75.10()66.17()(422
s s s s
s s s s s s s
)10942.99.58()3608.0()229.1(
)10()97.10()73.17()10801.1()10801.1(104211.1)(42
771311
s s s s
s s s s s s g
)10019.11083()414.1111.1(
)10()844.7()98.21()9.709()6.691(101369.1)(
1322
1321
s s s s
s s s s s s g
)10275.110573.3()10168.146.39(
)188.1()667.1()81.10()24.36()10569.3(104054.4)(115252
51312
s s s s
s s s s s s g
)10553.97.29()88.437667.0()9289.0(
)667.1()71.10()24.36()10423.4(108474.1)(422
151322
s s s s s
s s s s s g
O, equivalentemente, en el espacio de estado:
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 147/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 147
10000000000
06667.100000000
005603.942028.23292.2695.66895.66896.93096543.36.302
0088497.46558.267753.2029.68029.68674.949817.748.300027626.316507.0774.29465.756465.75675.105209173.1917.341
92.8740268.389268.389502.555068.1786092.07045.1667475.005.186
85.10540341.266341.266079.3801237.130379.14294.1146176.030.127
29.129014.67814.67873.96783448.212722.0101.291755.1121.324
0645.27339.34339.34080.63847.11847.1198109.11323.0
0000000010
A
10000000000
06667.100000000T B
000020743.0063203.049134.
0000000001C
0000D
Se pide:Analizar los polos y ceros de transmisión de la planta.Obtener un controlador por el método CL y estudiar su estabilidad
Solución:
Introducimos la planta:
cl ose al l , cl ear al l , cl c%pl ant a ( t ur bo- generador) a = [0. 00000 1. 00000 0. 00000 0. 00000 0. 00000 . . . 0. 00000 0. 00000 0. 00000 0. 00000 0. 00000;
0. 00000 - . 11323 - . 98109 - 11. 847 - 11. 847 . . . - 63. 080 - 34. 339 - 34. 339 - 27. 645 0. 00000;
324. 121 - 1. 1755 - 29. 101 0. 12722 2. 83448 . . . - 967. 73 - 678. 14 - 678. 14 0. 00000 - 129. 29;
- 127. 30 0. 46176 11. 4294 - 1. 0379 13. 1237 . . . 380. 079 266. 341 266. 341 0. 00000 1054. 85;
- 186. 05 0. 67475 16. 7045 0. 86092 - 17. 068 . . . 555. 502 389. 268 389. 268 0. 00000 - 874. 92;
341. 917 1. 09173 1052. 75 756. 465 756. 465 . . . - 29. 774 0. 16507 3. 27626 0. 00000 0. 00000;
- 30. 748 - . 09817 - 94. 674 - 68. 029 - 68. 029 . . . 2. 67753 - 2. 6558 4. 88497 0. 00000 0. 00000;
- 302. 36 - . 96543 - 930. 96 - 668. 95 - 668. 95 . . . 26. 3292 2. 42028 - 9. 5603 0. 00000 0. 00000;
0. 00000 0. 00000 0. 00000 0. 00000 0. 00000 . . . 0. 00000 0. 00000 0. 00000 - 1. 6667 0. 00000;
0. 00000 0. 00000 0. 00000 0. 00000 0. 00000 . . . 0. 00000 0. 00000 0. 00000 0. 00000 - 10. 000] ;
b = [0. 00000 0. 00000 0. 00000 0. 00000 0. 00000 . . . 0. 00000 0. 00000 0. 00000 1. 66667 0. 00000;
0. 00000 0. 00000 0. 00000 0. 00000 0. 00000 . . . 0. 00000 0. 00000 0. 00000 0. 00000 10. 0000] ' ;
c = [
1. 00000 0. 00000 0. 00000 0. 00000 0. 00000 . . . 0. 00000 0. 00000 0. 00000 0. 00000 0. 0000;- . 49134 0. 00000 - . 63203 0. 00000 0. 00000 . . .
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 148/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 148
- . 20743 0. 00000 0. 00000 0. 00000 0. 0000] ;d = [ 0 0; 0 0] ;[ num1, den1] =ss2t f ( a, b, c, d, 1) ;G11=t f ( num1( 1, : ) , den1) ; G21=t f ( num1( 2, : ) , den1) ;[ num2, den2] =ss2t f ( a, b, c, d, 2) ;G12=t f ( num2( 1, : ) , den2) ; G22=t f ( num2( 2, : ) , den2) ;G=zpk( [ G11 G12; G21 G22] ) ,
Y obtenemos los polos y los ceros:
%pol os y ceros de t r ansmi si ón pol os=ei g( a) , cer os=t zer o( a, b, c, d) ,
Polos: Los polos del sistema son -29.463±j313.94, -17.664, -10.746, -0.3417±j6.3443, -1.0421, -1.0421, -0.23446, -1.6667 y -10. Hay un par de polos muy resonantes a 6.34rad/s. Puesto que notiene polos en el semiplano derecho es estable. Para tener estabilidad en lazo cerrado bastará quelos lugares característicos no circunden en sentido anti-horario el punto -1+j0.
Ceros de transmisión: Están a -14.837±j308.73, -11.064, -1.2548 y -36.244. Puesto que todos sonde fase mínima ello indica que cualquier ancho de banda en lazo cerrado puede ser alcanzado (en la práctica, las restricciones de ganancia y amplificación del ruido limitarán el ancho de banda).
Ahora representaremos la respuesta frecuencial de la planta:
%r espuest a f r ecuenci al ( i ncl uye más punt os en f r eqs de i nt erés) w = l ogspace( - 2, 2, 1000) ;w2 = [ 1. 1: 1. 72: 9. 9] ;w3 = [ 5. 5: 0. 3: 7. 7] ;w4 = 6. 34; %not a wn=6. 3539=abs( - 0. 3492 + 6. 3443i ) w = sor t ( [ w w2 w3 w4] ) ;
Gw=mv2f r ( a, b, c, d, w) ;%di agr amas de Bode f i gure,subpl ot ( 221) , mvdb( w, Gw, [ 1, 1] ) , t i t l e( ' G_1_1' ) ,subpl ot ( 222) , mvdb( w, Gw, [ 1, 2] ) , t i t l e( ' G_1_2' ) ,subpl ot ( 223) , mvdb( w, Gw, [ 2, 1] ) , t i t l e( ' G_2_1' ) ,subpl ot ( 224) , mvdb( w, Gw, [ 2, 2] ) , t i t l e( ' G_2_2' ) ,
Diagramas de Bode: Los elementos de la segunda columna son mayores que los de la primera (másde dos órdenes de magnitud de diferencia). Es debido a las unidades tomadas al construir elmodelo.
10-2
100
102
-100
-50
0
50
FREQUENCY
M A G d
B
G11
10-2
100
102
-100
-50
0
50
100
FREQUENCY
M A G d
B
G12
10-2
100
102
-150
-100
-50
0
FREQUENCY
M A G d
B
G21
10-2
100
102
-50
0
50
100
FREQUENCY
M A G d
B
G22
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 149/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 149
Pero no es más que un factor de escala que podemos corregir con el siguiente precompensador:
01.00
011K
La siguiente figura muestra los diagramas de Bode de la respuesta frecuencial de G( s)K 1 (notar elescalado):
10-2
100
102
-100
-50
0
50
FREQUENCY
M A G d
B
Q11
10-2
100
102
-150
-100
-50
0
50
FREQUENCY
M A G d
B
Q12
10-2
100
102
-150
-100
-50
0
FREQUENCY
M A G d B
Q21
10-2
100
102
-100
-50
0
50
FREQUENCY
M A G d B
Q22
%compensaci ón de l a segunda col umna K1=[ 1 0; 0 0. 01] ;Q=G*K1; Qw=f mul ( w, Gw, K1) ;f i gure,subpl ot ( 221) , mvdb( w, Qw, [ 1, 1] ) , t i t l e( ' Q_1_1' ) ,subpl ot ( 222) , mvdb( w, Qw, [ 1, 2] ) , t i t l e( ' Q_1_2' ) ,subpl ot ( 223) , mvdb( w, Qw, [ 2, 1] ) , t i t l e( ' Q_2_1' ) ,
subpl ot ( 224) , mvdb( w, Qw, [ 2, 2] ) , t i t l e( ' Q_2_2' ) ,
Y en las siguientes se muestran los diagramas de Bode y el diagrama polar de los valorescaracterísticos de G( s)K 1:
10-2
10-1
100
101
102
-100
-50
0
50
FREQUENCY
M A G d
B
Lugares característicos de G(s)K1
10-2
10-1
100
101
102
-200
-100
0
100
200
FREQUENCY
P H A S E
-1 0 1 2 3 4 5 6 7-3.5
-3
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
REAL
I M A G
Lugares característicos de G(s)K1
%l ugar es car act er í st i cos av=f ei g(w, Qw) ; %av=csor t ( av) ; f i gure, pl otnyq(av) , t i t l e( ' Lugar es car act er í st i cos de G( s) K_1' ) ,f i gur e, pl ot bode( w, av) , subpl ot ( 211) ,
t i t l e ( ' Lugar es car act er í st i cos de G( s) K_1' ) ,
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 150/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 150
Compensación a altas frecuencias: Se diseña un compensador para desacoplar el sistema porencima de 30rad/s (y a partir de dicha frecuencia) con ayuda de la función align.
%compensaci ón a al t as f r ecuenci as i nx = mi n( f i nd(w>=30) ) ;[ Qw30, w30] =f get f ( w, Qw, i nx) ; w30
K2=al i gn( Qw30) ,
8402.909192.0
3865.17854.5582K
Los lugares característicos obtenidos se muestran en la siguiente figura:
Q=Q*K2; Qw=f mul ( w, Qw, K2) ;av=f ei g(w, Qw) ; %av=csor t ( av) ; f i gure, pl otnyq(av) , t i t l e( ' Lugar es caracter í st i cos de G( s) K_1K_2' ) ,f i gur e, pl ot bode( w, av) , subpl ot ( 211) ,
t i t l e ( ' Lugar es caract er í st i cos de G( s) K_1K_2' ) ,
-1500 -1000 -500 0 500 1000-400
-200
0
200
400
600
800
REAL
I M A G
Lugares característicos de G(s)K1K
2
10-2
10-1
100
101
102
-50
0
50
100
FREQUENCY
M A G d
B
Lugares característicos de G(s)K1K
2
10-2
10-1
100
101
102
-100
0
100
200
FREQUENCY
P H A S E
Para poder alcanzar mejor la estabilidad en lazo cerrado, multiplicaremos ambos canales por -1.Así los autovalores empezarán en el eje real positivo y será más fácil estudiar la estabilidad. Porotro lado, rebajaremos la ganancia (K 2 había introducido mucha ganancia a fin de “invertir” elcamino directo a =30rad/s y conseguir que a esa frecuencia valiera 0dB).
En definitiva, si añadimos el precompensador k m:
01.00
001.0mk
Los nuevos lugares característicos son:
km=[ - 0. 01 0; 0 - 0. 01] ;Q=Q*km; Qw=f mul ( w, Qw, km) ;av=f ei g(w, Qw) ; %av=csor t ( av) ; f i gure, pl otnyq(av) , t i t l e( ' Lugares caract erí st i cos de G( s) K_1K_2k_m' ) ,f i gur e, pl ot bode( w, av) , subpl ot ( 211) ,t i t l e ( ' Lugares caract erí st i cos de G( s) K_1K_2k_m' ) ,
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 151/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 151
-10 -5 0 5 10 15-8
-6
-4
-2
0
2
4
REAL
I M A
G
Lugares característicos de G(s)K1K
2k
m
10-2
10-1
100
101
102
-100
-50
0
50
FREQUENCY
M A G d
B
Lugares c aracterísticos de G(s)K1K
2k
m
10-2
10-1
100
101
102
-300
-200
-100
0
FREQUENCY
P H A S E
Vemos que uno de los autovalores engloba al punto -1. Esto es debido principalmente al desfaseque introduce la resonancia.
Podemos investigar lo bien que ha funcionado el desacoplo aproximado y ver qué dominancia
diagonal tenemos ahora. Esto puede hacerse estudiando el Bode, las bandas de Gershgorin o eldesalineamiento entre las direcciones características (autovectores) y los vectores estándar de la base. Ambos ángulos de desalineamiento son pequeños a partir de 10rad/s.
10-2
10-1
100
101
102
0
10
20
30
40
50
60Desalineamiento después de la compensación AF
Frecuencia (rad/s)
g r a d o s
%anál i si s de domdi ag mi sa=f mi sal g(w, Qw) ;f i gur esemi l ogx( w, mi sa) , t i t l e( ' Desal i neami ent o después de l a compensaci ón AF' )gr i d, xl abel ( ' Fr ecuenci a ( r ad/ s) ' ) , yl abel ( ' gr ados' )
Compensación a frecuencias intermedias: El controlador conmutativo aproximado sirve paramanipular los lugares característicos cerca de una frecuencia determinada. Puesto que lacompensación debe ser más precisa a 6.34rad/s (que es donde tenemos la resonancia), es en ese punto donde situaremos el compensador ACC.
Los autovalores del camino directo a 6.34rad/s son: -8.9531-j2.0801 y -0.1157-j0.1437. Vemosque el primer lugar característico queda a la izquierda del punto crítico -1. Por tanto es principalmente éste el que tiene que ser compensado.
El punto -1 es englobado por el desfase debido a la resonancia del primer autovalor. Por tantoconformaremos dicho lugar con ayuda de un filtro notch situado en el lugar de la resonancia.
Puesto que la resonancia corresponde al par de polos complejos conjugados de la planta -
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 152/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 153/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 154/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 155/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 156/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 156
-10 -8 -6 -4 -2 0 2-5
-4
-3
-2
-1
0
1
2
3
4
5
REAL
I M A G
Lugares característicos con círculos M 1.0, 2.0 dB 7.636
7.923
8.374
9.01510.35
16.11
2.795
3.553
4.728
6.774
11.46
26.76
%anál i si s de est abi l i dad. cí r cul os M a 1dB y 2dB f i gure, pl ot nyq( av) , axi s([ - 10, 2 , - 5, 5] ) ; hol d on,pl ot nyq( mci r c([ 1, 2] ) )t i t l e ( ' Lugar es car acterí st i cos con cí r cul os M 1. 0, 2. 0 dB' ) ,mknyq( av, w) ,
Pero es conveniente (y mejor) representar también los valores singulares en lazo abierto
%val ores si ngul ares sv=f svd(w, Qw) ;f i gure, pl ot db( w, [ sv, av] ) ,t i t l e ( ' Aut oval or es y val or es si ngul ar es ( di seño f i nal ) ' ) ,
10-2
10-1
100
101
102
-80
-60
-40
-20
0
20
40
60
FREQUENCY
M A G d
B
Autovalores y valores singulares (diseño final)
Ahora analizamos el lazo cerrado. Hay una fuerte interacción oscilatoria desde la segunda entradahacia la primera salida cerca de la resonancia a 6rad/s y una interacción del 10% en las frecuenciasinferiores a ésta.
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 157/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 157
10-2
100
102-60
-40
-20
0
20
FREQUENCY
M A G d
B
[1,1]
10-2
100
102-100
-50
0
FREQUENCY
M A G d
B
[1,2]
10-2
100
102
-100
-50
0
FREQUENCY
M A G d
B
[2,1]
10-2
100
102
-30
-20
-10
0
FREQUENCY
M A G d
B
[2,2]
%r esp f r eq Si st ema en l azo cer r ado Tw=f f b( w, Qw) ;f i gur e, %axi s( [ - 2, 2, - 40, 10] ) subpl ot ( 221) , mvdb( w, Tw, [ 1, 1] ) , t i t l e( ' [ 1, 1] ' )subpl ot ( 222) , mvdb( w, Tw, [ 1, 2] ) , t i t l e( ' [ 1, 2] ' )subpl ot ( 223) , mvdb( w, Tw, [ 2, 1] ) , t i t l e( ' [ 2, 1] ' )subpl ot ( 224) , mvdb( w, Tw, [ 2, 2] ) , t i t l e( ' [ 2, 2] ' ) ,
Los valores singulares del lazo cerrado indican que está garantizada la estabilidad para el caso de perturbaciones de salida no estructuradas multiplicativas cuya norma sea inferior a:
margen_est ab = 1/ max( max( svc) )mar gen_est ab =
0. 8756
10-2
10-1
100
101
102
-70
-60
-50
-40
-30
-20
-10
0
10
FREQUENCY
M A G d
B
Valores singulares del lazo cerrado (diseño final)
%val ores si ngul ares del l azo cer r ado svc=f svd( w, Tw) ;margen_est ab = 1/ max( max( svc) )f i gur e, pl ot db( w, svc),t i t l e ( ' Val or es si ngul ar es del l azo cer r ado ( di seño f i nal ) ' )
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 158/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 159/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 159
16.2
04.1
14.10
54.011.10
52.0
176.11
02.1
)(2221
1211
s s
s s g g
g g sG
Se desea que cada lazo se comporte como un sistema de segundo orden con n=1rad/s y =0.5 (estoes tiempo de subida 10-90 de 1.6s y overshoot del 15%). Usar el método de Perron-Frobenius paracalcular el controlador MIMO y verificar el comportamiento.
Solución:
La planta es
cl ose al l , cl ear al l , cl c%pl ant a ( pneumàt i ca) G11=t f ( 1. 02, [ 11. 76 1] ) ;G12=t f ( - 0. 52, [ 10. 1 1] ) ;
G21=t f ( - 0. 54, [ 10. 4 1] ) ;G22=t f ( 1. 04, [ 2. 6 1] ) ;G=[ G11 G12; G21 G22] ;[ a, b, c, d] =ssdat a( G) ;
Y su respuesta frecuencial se calcula como:
%r espuesta f r ecuenci al pl ant a w=l ogspace(- 2, 2) ;Gw=mv2f r ( a, b, c, d, w) ;
En primer lugar hay que obtener el autovalor de Perron-Frobenius. Para ello, invertimos larespuesta frecuencial de la planta:
%i nver sa de l a r espuest a f r ecuenci al i Gw=mvf r i nv(w, Gw) ;
Y hallamos su módulo, )(1 jG
m=abs( i Gw) ; %modul r espost a f r eqüenci al i nver sa
Para cada frecuencia obtenemos su versión diagonal igualando todos los términos de fuera de ladiagonal a cero.
omega=f di ag( w, f di ag( w, m) ) ;
Calculamos la “matriz de comparación normalizada”
. Esta se construye premultiplicando unamatriz de módulos M (que es no diagonal) por la inversa de M diagonalizada tal y como se ha
expuesto en el paso anterior. En nuestro caso M es )(1 jG . Así, si una componente (para una
frecuencia concreta) de la matriz )(1 jG es
d c
ba,
la correspondiente componente en la matriz de comparación normalizada es
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 160/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 160
1/
/1
/10
0/1
d c
ab
d c
ba
d
aΓ
gamma=f mul f ( w, mvf r i nv( w, omega) , m) ; %mat r i z de compar aci ón normal i zada
Calculamos el autovalor de P-F (es el autovalor más grande de cada matriz de componentes de ) ylo representamos:
pf e=f per r on( w, gamma) ;f i gur e, pl ot db( w, pf e) ;t i t l e ( ' Aut oval or de Per r on- Frobeni us' )
10-2
10-1
100
101
102
2
2.2
2.4
2.6
2.8
3
3.2
3.4
3.6
3.8
FREQUENCY
M A G d B
Autovalor de Perron-Frobenius
Está por debajo de 6dB a todas las frecuencias, por tanto, es posible conseguir la dominanciadiagonal con un pre-compensador diagonal.
Para calcular el pre-compensador que alcanza la dominancia diagonal en el INA hay que calcular elautovector de P-F por la izquierda. Estos autovectores serán también función de la frecuencia ytendrán tantos elementos como dimensiones (número de entradas y salidas) del sistema. Como elsistema es 22 ambos autovectores por la derecha y la izquierda tienen 2 elementos dependientes dela frecuencia.
A fin de reducir el número de compensadores dinámicos a diseñar forzamos a que el primerelemento del autovector valga 1 (0dB) a todas las frecuencias y así para el diseño solo habrá queajustar el segundo elemento.
%aut ovectors de Perr on- Frobeni us [ pf e, l hv, r hv]=f perr on( w, gamma);f or i =1: l engt h( w) ,
l hv( i , : ) =l hv( i , : ) / l hv( i , 1) ;end, % nor mal i z 1er el ement =1 f i gure, pl ot db( w, l hv( : , 2)) ;t i t l e ( ' 2º el ement o del aut ovect orpor l a i zqui er da de Per r on- Frobeni us' )
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 161/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 162/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 163/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 164/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 164
3.3.4 Direct Nyquist Array
Método:
Este método intenta compensar el sistema para que sea aproximadamente diagonal. El diseñoentonces se completa diseñando controladores SISO para cada uno de los elementos de la diagonalde la planta compensada.
Ejemplos:
Ejemplo 34. Turbogenerador. Diseño DNA. Considerar de nuevo el turbogenerador. Calcularel controlador MIMO por DNA y verificar su comportamiento.
Solución:
Paso 1: Determinación del rango dinámico de la planta
Polos: El polo más bajo está en 0.234rad/s y el más alto en 315rad/s. Hay un par de poloscomplejos conjugados poco amortiguados en 6.35rad/s con un coeficiente de amortiguamiento =0.055.
f or mat shor t e,[ wn, z] =damp(a) ;[ wn, z]ans =
2. 3446e- 001 1. 0000e+0006. 3539e+000 5. 4953e- 0026. 3539e+000 5. 4953e- 002
1. 0421e+000 1. 0000e+0001. 6667e+000 1. 0000e+0001. 0000e+001 1. 0000e+0001. 0746e+001 1. 0000e+0001. 7664e+001 1. 0000e+0003. 1532e+002 9. 3438e- 0023. 1532e+002 9. 3438e- 002
Ceros de transmisión: El cero más bajo es 1.25rad/s y el cero finito más alto está en 309rad/s.
tzero(a ,b, c, d) ;[ wn, z] =damp(ans) ;[ wn, z]ans =
3. 0909e+002 4. 8004e- 0023. 0909e+002 4. 8004e- 0021. 1064e+001 1. 0000e+0001. 2548e+000 1. 0000e+0003. 6244e+001 1. 0000e+000
Por tanto, el rango dinámica total de la planta está entre 0.234rad/s y 315rad/s. Por encima y debajode estas frecuencias la fase es constante y la pendiente de la ganancia se mantiene constante.
Diagramas de Bode:
%Respuest a f r ecuenci al pl ant a w=l ogspace(- 2, 2, 40) ;
w2=1. 1: 1. 72: 9. 9;w3=5. 5: 0. 3: 6. 7;w4=6. 34;
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 165/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 165
w=sor t ( [ w, w2, w3, w4] ) ;Gw=mv2f r ( a, b, c, d, w) ;%Bode de Gw f i gur e, ax=[ 1e- 2 1e2 - 100 100] ;subpl ot ( 221) , mvdb( w, Gw, [ 1, 1] ) , t i t l e( ' Bode de [1, 1] ' ) , axi s (ax) ;subpl ot ( 222) , mvdb( w, Gw, [ 1, 2] ) , t i t l e( ' Bode de [1, 2] ' ) , axi s (ax) ;subpl ot ( 223) , mvdb( w, Gw, [ 2, 1] ) , t i t l e( ' Bode de [2, 1] ' ) , axi s (ax) ;
subpl ot ( 224) , mvdb( w, Gw, [ 2, 2] ) , t i t l e( ' Bode de [2, 2] ' ) , axi s (ax) ;%se añaden más puntos par a cubri r el r ango di námi co de l a pl ant a w5=l ogspace(2, 3, 10) ;[ Gw, w] = f i nser t ( w, Gw, w5, a, b, c, d) ;
10-2
100
102
-100
-50
0
50
100
FREQUENCY
M A G d
B
Bode de [1,1]
10-2
100
102
-100
-50
0
50
100
FREQUENCY
M A G d
B
Bode de [1,2]
10-2
100
102
-100
-50
0
50
100
FREQUENCY
M A G d
B
Bode de [2,1]
10-2
100
102
-100
-50
0
50
100
FREQUENCY
M A G d
B
Bode de [2,2]
Paso 2: Conseguir la dominancia diagonal por columnas
Paso 2.1. Análisis de la dominancia por columnas del sistema sin compensar: Se mide cuándiagonal es el sistema (función fcdom). Si la medida es menor que 1 (0dB) el sistema es dominante diagonal por columnas.
Si la medida es 0 (-∞ dB) entonces el sistema es diagonal.
%Anál i si s de l a domi nanci a por col umnas cd=f cdom( w, Gw) ;f i gur e, pl ot db( w, cd) ,t i t l e ( ' Domi nanci a di agonal si n compensar . Col umnas 1 y 2' ) ,
10-2
10-1
100
101
102
103
-100
-80
-60
-40
-20
0
20
FREQUENCY
M A G d
B
Dominancia diagonal sin compensar. Columnas 1 y 2
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 166/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 167/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 168/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 168
Esta ponderación ha mejorado la dominancia alrededor de 4rad/s y 10rad/s pero a expensas deempeorarla al resto de frecuencias. En cualquier caso, aún no es lo suficientemente dominante.
Intentaremos añadir otro orden de s a la primera fila de la columna 2 (aunque eso contradiga la guíade fadj a altas frecuencias).
kf or m=[ 1 1 02 1 0] ;
[ kc, comdenc, f i t , cd2c] =f pseudo(w, Gw, 2, kf orm, wi ) ;
Accumul at i ng t he f r equency r esponses.f i tf i t =
6. 6927e- 002
10-2
10-1
100
101
102
103
-120
-100
-80
-60
-40
-20
0
20
FREQUENCY
M A G d
B
Dominancia por columnas para la columna 2
planta
con compensador
con compensador ponderado
otros órdenes
Hemos mejorado la dominancia a frecuencias intermedias (gracias a la flexibilidad adicional en elcompensador) pero empeorado a altas (debido al desajuste en los órdenes de s a altas frecuencias).En conjunto, la mejora aún no es suficiente, por tanto, probamos un compensador de orden superior:
kf or m=[ 1 0 0 - 12 1 0 - 1] ;
O sea, mantenemos la relación de las potencias de s a altas y bajas frecuencias.La fila 1 del compensador es un PILa fila 2 es un PID
[ kd, comdend, f i t , cd2d] =f pseudo(w, Gw, 2, kf orm, wi ) ;
Accumul at i ng t he f r equency r esponses.
f i tf i t =
8. 9302e- 007
kd =
0 1. 5016e- 002 2. 1338e- 002- 1. 9475e- 005 - 1. 3805e- 004 - 4. 6401e- 005comdend
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 169/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 169
comdend =0 0 1
10-2
10-1
100
101
102
103
-120
-100
-80
-60
-40
-20
0
20
FREQUENCY
M A G d
B
Dominancia por columnas para la columna 2
plantacon compensador con compensador ponderadootros órdenes
PI+PID
El resultado ahora ya es satisfactorio con lo que se puede pasar al diseño del control por lazosindependientes.
3.3.5 Inverse Nyquist Array
El llamado Inverse Nyquist Array consiste en una matriz de diagramas de Nyquist, uno porelemento de G-1(j ).
Ejemplo 35. Planta chapter 13 of [O'Reilly87]. Control vía INA. Considerar la planta:
12
2
10010
115
1
)5)(1(
4
)(
22221
1211
s s s
s s s s
s
g g
g g sG
Usar el método INA para calcular el controlador MIMO y verificar el comportamiento.
Solución:
Los círculos de Gershgorin permiten ver el grado de dominancia diagonal alcanzado.
Los pre-compensadores diagonales preservan la dominancia diagonal por filas de los sistemasinversos.
Puesto que se va a usar un pre-compensador diagonal, lo único que podemos cambiar es la
dominancia por columnas (por eso usaremos fcgersh).
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 170/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 170
Dibujamos el INA, con los círculos en los elementos 11 y 22. Vemos que el sistema no es diagonaldominante puesto que las bandas de Gershgorin engloban el origen.
-200 0 200-100
0
100
200
300
REAL
I M A G
-1 -0.5 0 0.5-30
-20
-10
0
10
REAL
I M A G
-10 0 10 20-150
-100
-50
0
50
REAL
I M A G
-50 0 50-50
0
50
100
150
200
REAL
I M A G
Diseño del pre-compensador de desacoplo (tal que Q-1 sea diagonal domninante, Q=GK)con ayudade los autovalores de Perron-Frobenius.
% Per r on- Fr obeni us ei genval ues can be used t o desi gn a di agonal % - 1 % pr ecompensator K so t hat ( GK) wi l l be di agonal l y domi nant .
% Fi r st cal cul at e t he nor mal i sed compar i son mat r i x of i f g % ( see Ref erence Manual ent r y f or FPERRON) :
Matriz de comparación normalizada:
m=abs( i Gw) ; omega = f di ag( w, f di ag( w, m) ) ; nc = f mul f ( w, f i nv( w, omega) , m) ;
Autovalores y autovectores de P-F:
[ v, l , r ] = f per r on( w, nc);
La representación de los autovalores de p_F en función de la frecuencia indica los márgenes defrecuencia sobre los que el sistema puede ser hecho diagonal dominante con ayudav de un preciompensador diagonal. Ello es posible en las frecuencias donde la magnitud de los autovaloresde P-F es menor que 2 (6dB).
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 171/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 172/174
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 173/174
Tema 5. Control avanzado
ETSETB. Sistemas Electrónicos de Control 1314a 173
-40 -20 0 20 400
50
100
150
REAL
I M A G
d = 1
-40 -20 0 20 400
50
100
150
REAL
I M A G
d = 5
-40 -20 0 20 40
0
50
100
150
REAL
I M A G
d = 10
-40 -20 0 20 40
0
50
100
150
REAL
I M A G
d = 50
Notar que se estrechan a medida que aumenta la ganancia.
Respuesta temporal:
0 0.5 1 1.5-0.5
0
0.5
1Response to demand on output 1
0 0.5 1 1.50
0.2
0.4
0.6
0.8Response to demand on output 2
7/21/2019 EJEMPLOS DE DCK CON MATLAB
http://slidepdf.com/reader/full/ejemplos-de-dck-con-matlab 174/174
Top Related