Curso 2013/2014-1
Contenido
1. Control digital .......................................................................................................................................... 3
1.1 Transformada Z ................................................................................................................................. 3
1.1.1 Definición y propiedades .......................................................................................................... 3
1.1.2 Teorema del valor inicial (TVI) y teorema del valor final (TVF)............................................. 4
1.1.3 Solución de E (lineales y de coeficientes constantes) en el dominio z ................................... 4
1.2 Respuesta temporal de los sistemas discretos ................................................................................... 4
1.3 Respuesta frecuencial de los sistemas discretos................................................................................ 9
1.4 Métodos de discretización ............................................................................................................... 10
1.4.1 Aproximaciones numéricas (I). De la derivada ..................................................................... 11
1.4.2 Aproximaciones numéricas (II). De la integral...................................................................... 12
1.4.3 Transformación bilineal (I) ..................................................................................................... 13
1.4.4 Transformación bilineal (II). Prewarping .............................................................................. 13
1.4.5 Invariancia de la respuesta temporal (I). Impulsional ............................................................ 14
1.4.6 Invariancia de la respuesta temporal (II). Indicial ................................................................. 15
1.4.7 Transformación directa (mapping) de ceros y polos finitos ................................................... 16
1.5 Discretización de reguladores PID ................................................................................................. 19
1.6 Análisis de controladores digitales ................................................................................................. 22
1.6.1 Lugar geométrico de las raíces ............................................................................................... 22
1.6.2 Análisis de estabilidad. Criterio de Jury ................................................................................ 24
1.7 Diseño de controladores digitales ................................................................................................... 26
1.7.1 Controlador dead beat ............................................................................................................. 26
1.7.2 Controlador de Kalman .......................................................................................................... 27
1.7.3 Controlador de Dahlin ............................................................................................................ 29
1.8 Ejercicios resueltos ......................................................................................................................... 30
2. Control digital de 2 grados de libertad................................................................................................. 34
2.1 Controlador RST digital .................................................................................................................. 34
2.1.1 Configuración RST ................................................................................................................. 34
2.1.2 Funciones de sensibilidad ....................................................................................................... 36
2.2 Conformación de las funciones Syp y Sup ......................................................................................... 37
2.2.1 Propiedades de la función de sensibilidad de la salida Syp...................................................... 37
2.2.2 Propiedades de la función de sensibilidad de la entrada Sup ................................................... 42
2.2.3 Plantillas para las funciones de sensiblidad ............................................................................ 43
2.2.4 Descripción de la incertidumbre. Condiciones de estabilidad robusta................................... 44
2.2.5 Plantillas para el margen de módulo y de retardo en Syp ........................................................ 45
2.3 Control digital de dos grados de libertad ....................................................................................... 46
2.4 Fijación de polos (para seguimiento y regulación) ......................................................................... 46
2.4.1 Formulación del problema ...................................................................................................... 47
2.4.2 Solución del problema ............................................................................................................ 47
2.4.3 Ejemplo .................................................................................................................................. 49
2.5 Seguimiento y regulación con objetivos independientes ................................................................. 50
2.5.1 Formulación del problema ...................................................................................................... 50
2.5.2 Solución del problema ............................................................................................................ 50
2.5.3 Ejemplos ................................................................................................................................. 52
2.6 Internal model control (IMC) .......................................................................................................... 55
2.6.1 Formulación del problema ...................................................................................................... 55
2.6.2 Solución del problema ............................................................................................................ 56
2.6.3 Ejemplo .................................................................................................................................. 58
2.7 Fijación de polos para conformar las funciones de sensibilidad .................................................... 60
2.7.1 Formulación del problema ...................................................................................................... 60
2.7.2 Solución del problema ............................................................................................................ 60
2.8 Ejercicio resuelto ............................................................................................................................ 61
1. Control digital
Todo filtro, controlador o sistema dinámico puede ser descrito de diversas maneras, cada una con
sus ventajas propias pero equivalentes entre sí, siendo la de Ecuaciones de Estado (EE) la más
general.
Continuo Discreto
Ecuación diferencial (ED) Ecuación en diferencias (E)
Función de transferencia H(s) Función de transferencia H(z)
Respuesta frecuencial H(j) Respuesta frecuencial H(ejT)
Ecuaciones de estado en t, EE(t) Ecuaciones de estado en n, EE(n)
Tabla 1
1.1 Transformada Z
En los sistemas discretos en el tiempo se usa la variable de tiempo discreto n en vez de la variable
de tiempo continuo t y se utiliza la transformada Z en lugar de la transformada de Laplace. Notar
las similitudes y diferencias entre ambas transformadas:
n0
Bilátera: YII ( z ) Z II y ( n) y ( n) z n
n
z 1 (n 1)
Filtro generador
z
La función de transferencia H(z) del filtro generador de la señal y(n) = an es H ( z ) ya que,
za
al excitar dicho filtro con un impulso u(n) = (n), la salida del mismo es
z
y ( n) Z 1 Y ( z ) Z 1 H ( z )U ( z ) Z 1 1 a n , n 0.
z a
Si a>1, este filtro presenta un polo inestable (exterior al círculo unitario centrado en el origen del
plano z) de valor p = a.
1.1.2 Teorema del valor inicial (TVI) y teorema del valor final (TVF)
Sistemas discretos:
1
TVI: y (1) lim y (n) lim(1 z )Y ( z ) lim Y ( z )
n1 z z
1
TVF: y () lim y (n) lim(1 z )Y ( z )
n z 1
z p z p *
La correspondencia entre los resultados para sistemas en tiempo continuo y sistemas en tiempo
discreto es la siguiente:
(TVI)
Constantes de k p lim L( s ) k p lim L( z )
s 0 z 1
error en régimen
permanente k p lim sL( s ) 1 z 1
s 0 k p lim L( z )
s 0 Ts
ka lim s 2 L( s )
s 0
ka lim
1 z 1 2
L( z )
s 0 Ts2
Tabla 2
1
z e sTs , s ln z
Ts
Dadas las muestras de la respuesta impulsional h(n) de un sistema., su transformada Z (unilátera) es:
H ( z ) Z h( n ) h( n ) z n
n 0
Transformada básica
1 az 1
az 1
U ( z ) Z u( n ) a z
n n 1 n
1
si az 1 1
n 0 n 0 1 az 1 az 1
Tabla de transformadas Z
Modo natural
an
z
Z an
za
Escalón unitario
1n
Z 1n
z
1
z 1 1 z 1
Rampa unitaria z
n (muestreo a Ts) Ts
z 1
2
Tabla 3
e j n e j n
Puesto que u (n) cos( n) podemos calcular su transformada como
2
1 z z
U ( z)
2 z e j
z e j
Agrupando términos,
z z e j z e j z ( z cos )
U ( z) 2
2 z z (e e ) 1 z 2 z cos 1
2 j j
Transformada Z inversa
Cada factor z-1 puede interpretarse como una delta de Kronecker decalada una muestra (Nota: la
delta de Kronecker (n) vale 1 en n=0 y vale 0 para el resto de valores de n).
También es posible obtener la respuesta a partir de las transformadas inversas de cada uno de los
modos naturales. Por ejemplo,
2z 2 4z 2 z ( z 2) z
Y ( z) 2 y ( n ) 2 (1) n , n0
z 3z 2 ( z 2)( z 1)
2
z 1
Notar además que la división del numerador entre el denominador de Y(z) nos da las muestras en
tiempo:
2z2 4z z2 3z 2
(2 z 2 6 z 4) 2 2 z 1 2 z 2 ...
0 2z 4
( 2 z 6 4 z 1 )
0 2 4 z 1
Cálculo de residuos
En casos más complicados se procede igual que en tiempo continuo (descomposición en suma de
fracciones simples y cálculo de residuos). Las fórmulas para el cálculo de residuos son análogas al
( z 1)
caso continuo, A Y ( z ) .
z z 1
2z
Para el señal Y ( z ) , tenemos:
( z 1)
( z 1) 2 z
TVF: y ( ) lim(1 z 1 )Y ( z ) lim 2
z 1 z 1 z ( z 1)
( z 1) 2 z
TVI: y (0) lim(1 z 1 )Y ( z ) lim 2
z z z ( z 1)
Considerar el sistema
z 0.6
H ( z)
z z 0.29
2
Transfer function:
z - 0.6
--------------
z^2 - z + 0.29
Sampling time: 1
>> step(H)
El resultado es:
Step Response
1.6
1.4
1.2
Amplitude
0.8
0.6
0.4
0.2
0
0 2 4 6 8 10 12 14 16 18 20
Time (sec)
Fig. 1
Se procede igual que en el caso de los sistemas continuos en el tiempo. Por ejemplo, considerar el
siguiente sistema junto con su diagrama de polos y ceros:
Im
1
z 0.5
H ( z) 2
z z 0.5 p1 1
z Re
2
p2
Fig. 2
0 0 .5 H 0º
H 0 .2
0 .5 1 .5
2 2
2
H 0.35 H 18.9º
4
0 .5 2 1 H 0º
H 1
2
2 0 .5 2 0 .5 2 1 .5 2
3 H 3 .9 H 85º
4
1.5 1.5 H 180º
H 3
2 0.5 2
2 0.5 2 0.5
Tabla 4
Notar que en los sistemas discretos la respuesta frecuencial toma valores entre 0 y 2 y que, en
realidad, basta con calcular la respuesta entre 0 y puesto que entre y 2 es simétrica.
6 6
Magnitude
4
Magnitude
2 2
0 0
0 0.5 1 1.5 2 2.5 3 3.5 0 1 2 3 4 5 6 7
Frequency (rad) Frequency (rad)
100 200
Phase (degrees)
Phase (degrees)
100
0
0
-100
-100
-200 -200
0 0.5 1 1.5 2 2.5 3 3.5 0 1 2 3 4 5 6 7
Frequency (rad) Frequency (rad)
Diacretización
Los distintos métodos de discretización tratan de aproximar mediante sistemas discretos ciertas
características dinámicas (respuesta frecuencial o temporal) de los sistemas analógicos. Ya que no
existe el “mejor universal”, para seleccionar un método se puede atender a los siguientes aspectos:
1) Fidelidad en la reproducción de una determinada característica dinámica (respuesta
impulsional, respuesta indicial, respuesta frecuencial, polos y ceros, etc.).
2) Dificultad de su cálculo.
Como criterio temporal, en sistemas con polos reales se recomienda tomar un mínimo de 5 muestras
por constante de tiempo (considerando la constante de tiempo más rápida de entre las que son de
interés). En sistemas con polos complejos conjugados, hay que tomar 10 muestras por ciclo
(correspondiente a los polos dominantes).
1
0) La transformación exacta es: s ln z .
T
z
dx x(n 1) x(n) z 1
1) Diferencia progresiva: s
dt T T
Comentarios: Es sencilla pero puede producir inestabilidades.
El SPI (s) se transforma en el círculo de la figura
No presenta aliasing.
dx x(n) x(n 1) 1 z 1 z 1 z
2) Diferencia regresiva: s
dt T T Tz
Comentarios: Es sencilla y no produce inestabilidad.
El SPI (s) se transforma en el círculo de la figura
No presenta aliasing.
t
x
0) Bases: La integral y (t ) y (t 0 )
t0
x( )d puede
n 1
x
1) Método de Euler progresivo (una muestra): El área
sombreada es x(n)T , por tanto,
x(n)
Y ( s) 1
y (n 1) y (n) x(n)T . Y, puesto que y
X (s) s
Y ( s) T z 1
, se obtiene que s .
X (s) z 1 T n-1 n n+1 t
T T
x
2) Método de Euler regresivo (una muestra): El área
sombreada es x(n)T , por tanto, x(n)
Y ( s) 1
y (n) y (n 1) x(n)T . Y, puesto que y
X (s) s
Y ( s) T z 1
1
, se obtiene que s .
X ( s) 1 z zT n-1 n n+1 t
T T
Comentarios: Es sencilla. z
Mejor aproximación que las otras dos.
El SPI (s) se transforma en el círculo de la figura
No produce inestabilidad. 1
No presenta aliasing.
( / 2 ) s z
N
T
jA DT
2
N N D
3
(a) (b)
Fig. 4
2 z 1
A partir de s , igualando los puntos correspondientes de las frecuencias A y D (ver
T z 1
2 e j D T 1 T T 2 DT
Figura (b)), j A j D T
, se obtiene A tg D y, finalmente, A tg
T e 1 2 2 T 2
cuya relación se representa en la Figura (a).
Comentarios:
1) Si A es pequeña, el valor de ambas frecuencias coinciden A D .
1 /2
2) La aproximación es muy buena (error menor que 1%) para D N , siendo N .
3 T
3) Warping: Si la D se aleja de estos límites, la característica frecuencial de ambos filtros puede
diferir (warping) bastante ( 1D 1 A ).
4) Prewarping: Para compensarla se puede hacer una predistorsión o prewarping (expansión) tal
que luego recupere su valor ( 2 AP 1DP 2 A ) original.
analógico original
1 analógico (A) 1
d
analógico predistorsionado
d
0.7 0.7
pw
digital
discreto (D)
Pasos
0) Dado GA(s).
1) Se transforma la frecuencia crítica (por ejemplo, la b, filtro pasa-bajas),
2 Ab T
Ab AbP tg .
T 2
2) Se obtiene la nueva GA(sP).
2 z 1
3) Se aplica la transformación bilineal s a la nueva GA(sP).
T z 1
4) Se ajusta la ganancia en continua.
5) La nueva característica GD(D) pasará por la frecuencia crítica elegida (b) y por GA (A = 0)
ajustando así mejor la zona de frecuencias de interés de ambos filtros.
Base:
Gd ( z ) Z g d ( n ) Z g a (t ) t nT siendo g d (n) la respuesta impulsional discreta y
g a (t ) L Ga ( s ) la respuesta impulsional continua.
1
Método:
1) Descomponer Ga(s) en suma de fracciones simples G ai (s ) .
2) Hallar su L-1 de cada fracción.
3) Discretizar cada uno de sus términos g ai (t ) g ai (nT ) .
4) Calcular la transformada Z de cada uno de los términos discretos, Z g ai (nT ) .
5) Sumar dichos términos transformados. El resultado es Gd(z).
Base: La respuesta indicial del sistema discreto es igual a las muestras de la respuesta indicial del
z 1 z 1 1 G A ( s )
sistema analógico GD ( z ) G A ( s ) GD ( z ) Z L .
z 1 s z s
Comentarios:
1
1) El símbolo Z[ ] implica, como en el caso anterior: 1.1) la respuesta impulsional de Ga (s) .
s
1.2) Las muestras (t nT). 1.3) La transformada Z de la señal discreta.
2) Cálculo laborioso.
3) Puede interpretarse también con la discretización (invariancia impulsional) del sistema
1 e sT
precedido por un convertidor D/A tipo ZOH (modelo: ).
2
Permite una aproximación sencilla (en el estudio de Leron) de añadir un retardo e sT / 2 .
10
Ejemplo 3. Discretización. Dado el sistema en tiempo continuo Gc ( s ) se pide obtener
s 12
a mano su equivalente discreto GD(z) por el método de la invariancia indicial, es decir,
anteponiéndole un mantenedor de orden cero (ZOH, zero order hold). Tomar como periodo de
muestreo Ts=0.1s.
Invariancia indicial significa que la respuesta indicial de Gc muestreada a 0.1s coincidirá con las
muestras de la respuesta indicial de GD:
z 1
G D ( z ) Z L1 Gc ( s )
z 1 s t nTs
10
10 1 A B 10
10
Y ( s) 12 12 y (t ) 1 e 12 t
s 12 s s 12 s s 12 s 12
10 z z
Y ( z) 12Ts
12 z 1 z e
z
Despejar el término GD, GD ( z ) Y ( z )
z 1
z 1 10 z z 10 z e 12Ts z 1
GD ( z ) ( z 1)
z 12 z 1 z e 12Ts 12 ( z 1)( z e 12Ts )
10 0.6988 0.5823
GD ( z )
12 z 0.3012 z 0.3012
Transfer function:
10
------
s + 12
>> c2d(G,0.1,'zoh')
Transfer function:
0.5823
----------
z - 0.3012
Pasos:
1) Transformar mediante z e sT los polos (pA) y los ceros (zA) finitos: p D e A , z D e A .
p T z T
2) Añadir e ceros en –1 (factores (z+1)e) siendo e el exceso del número de polos finitos sobre el de
ceros finitos.
3) Añadir un factor k para ajustar la amplitud de continua.
( z 1) e (z z D )
4) Resultado: G A ( s ) G D ( z ) k m
.
(z p
n
D )
Comentarios:
Cálculos laboriosos.
Facilita mantener la asociación polos/modos naturales.
El siguiente ábaco permite ver la relación entre los polos discretos y , n correspondientes en
continuo.
IIm[z]
z eTs s n jn 1 2
1
3
n
2T 2
5T
0.8 7 5T
10T 3 0
10T
4 0.1
0.6 0.2
5T
0.3
0.4
5T
0.5
0.4 9 0.6
10T 0.7
0.8
0.2
0.9 10T
n 1
0 T
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 IRe[z]
Fig. 6
10
Ejemplo 4. Métodos de discretización. Considerar la planta G ( s ) y el
s 7 s 2 6s
3
1.5( s 1)
controlador C ( s ) . Vamos a obtener la respuesta indicial del servo para el caso
( s 3)
analógico y tres tipos diferentes de discretización con Ts=0.1s.
Para poder cerrar el lazo con un controlador digital y la planta, hay que obtener el equivalente
discreto de la planta anteponiéndole un ZOH
G=tf(10,[1 7 6 0]);
Gz=c2d(G,ts,'zoh'),
Transfer function:
0.001408 z^2 + 0.004756 z + 0.0009922
-------------------------------------
z^3 - 2.454 z^2 + 1.95 z - 0.4966
1 z 1
(a) Por el método de la diferencia regresiva, s
Ts
1 z 1
1.5 1
Ts 1.292 1.1538 z 1
C( z)
1 z 1 1 0.7692 z 1
3
Ts
Transfer function:
1.269 z - 1.154
---------------
z - 0.7692
2 1 z 1
(b) Por el método de Tustin, s
Ts 1 z 1
2 1 z 1
1.5 1
1
Ts 1 z 1.3696 1.2931z 1
C( z)
2 1 z 1 1 0.7391z 1
1
3
Ts 1 z
Cz=c2d(C,ts,'Tustin'),
Transfer function:
1.37 z - 1.239
--------------
z - 0.7391
Cz=c2d(C,ts,'matched'),
Transfer function:
1.362 z - 1.232
---------------
z - 0.7408
Si cerramos el lazo para cada uno de los controladores y comparamos las respuestas indiciales el
resultado es el mostrado en la siguiente figura (donde se observa la ligera degradación de la
respuesta que introduce la discretización).
L3=series(Cz,Gz);T3=feedback(L3,1);
y3=step(T3,t);
figure(1),plot(t,ya,t,y1,t,y2,t,y3,'--'),grid,
legend('analógico','diferencia regresiva','Tustin','matched'),
axis([0 6 0 1.2]),xlabel('Tiempo (s)')
1.2
0.8
0.6
0.4
analógico
diferencia regresiva
0.2 Tustin
matched
0
0 1 2 3 4 5 6
Tiempo (s)
1
La función de transferencia del PID es C ( s ) k p 1 Td s . Una opción directa es
Ti s
discretizar cada una de las acciones. Para la acción derivativa podemos usar la aproximación de la
derivada, s 1 z 1 / Ts . Para la acción integral se pueden ir sumando las áreas del error: la
integral en el instante n es la integral en el instante n-1 (la llamaremos PrevInt) más el área que hay
entre los instantes n y n-1 y que podemos calcular como en en 1 Ts / 2 . Así, la ecuación en
diferencias del algoritmo PID queda como
T ( e en 1 ) 1 ( en en 1 )Ts
un k p en d n PrevInt
Ts Ti 2
o, lo que es lo mismo,
T T T T kp
un k p 1 d s en k p d s en 1 PrevInt
Ts 2Ti Ts 2Ti Ti
( en en 1 )Ts
donde en cada intervalo hay que actualizar PrevInt PrevInt .
2
PID incremental
Hay una versión de este algoritmo mucho más utilizada que consiste en calcular sólo los cambios de
la señal de control con respecto a la muestra anterior. Este algoritmo recibe el nombre de algoritmo
de velocidad o PID incremental y tiene diversas ventajas: no hay que guardar el valor absoluto de
la integral hasta ese momento y se puede pasar de manera más suave del control manual al
automático (bumpless transfer). Ello es así porque cuando el controlador ya está en marcha solo
hay que calcular el primer movimiento incremental y no se debe inicializar para dar la misma señal
absoluta un que se tenía en control manual. Además, muchos actuadores, como los motores paso a
paso, ya esperan entradas de control incrementales.
Para poder simular el lazo digital hallamos la función de transferencia de la planta discreta
equivalente anteponiéndole un ZOH:
G=tf(10,[1 8 17 10]);
Gz=c2d(G,Ts),
Transfer function:
0.001369 z^2 + 0.0045 z + 0.0009179
-----------------------------------
z^3 - 2.33 z^2 + 1.786 z - 0.4493
1 s 2 3s 2
C ( s ) k p 1 Td s
Ti s s
1 z 1
Discretización por diferencia regresiva, s
Ts
2
1 z 1 1 z 1
3 2
13.2 23z 1 10 z 2
C( z)
T T
s s
1 z 1 1 z 1
Ts
T T T T kp
un k p 1 d s en k p d s en 1 PrevInt
T 2Ti Ts 2Ti T
s i
13.1 9.9 2
kp=3;
td=0.333;
ti=1.5;
a = kp*(1 + td/ts + 0.5*ts/ti);
b = kp*(-td/ts + 0.5*ts/ti);
c = kp/ti;
[numz,denz]=tfdata(Gz,'v');
integ=0; % integral previa
uu=0;uu_1=0; %últ valor de u, últ valor -1
uy=0;uy_1=0;uy_2=0;
ue=0;
y(1)=0;
for n=1:nmax
e=1-uy; % error
u(n) = a*e + b*ue + c*integ; % PID
% planta
y(n+1) = numz(2)*u(n) + numz(3)*uu + numz(4)*uu_1;
y(n+1) = y(n+1) - denz(2)*uy - denz(3)*uy_1 - denz(4)*uy_2;
% integral
integ=integ + 0.5*Ts*(e+ue);
% actualiz
ue=e;
uu_2=uu_1;uu_1=uu;uu=u(n);
uy_2=uy_1;uy_1=uy;uy=y(n+1);
end
Transfer function:
23.1 z^2 - 39.8 z + 17.1
------------------------
z^2 - 1
%analògic
La=series(C,G);
Ta=feedback(La,1);
ya=step(Ta,t);
1.2
0.8
salida del servo y
0.6
0
0 1 2 3 4 5
Tiempo (s)
El comportamiento del PID discretizado vía Tustin no es adecuado debido a la aparición de un polo
con parte real negativa (también llamado ringing pole). La siguiente figura muestra los esfuerzos
de control de las tres discretizaciones:
25
20
15
esfuerzo de control u
10
-5
-10
-15
-20
0 1 2 3 4 5
Tiempo (s)
Así, el PID discretizado vía Tustin no es adecuado porque desgasta físicamente al sistema, aumenta
el consumo, además de conllevar oscilaciones en la respuesta del servo.
El trazado e interpretación del lugar geométrico de las raíces para el caso de sistemas discretos en el
tiempo es análogo al caso de sistemas continuos en el tiempo. Las reglas de trazado son las mismas
(eje real, asíntotas, puntos de emergencia/incidencia del/al eje real, ajustes) con la única diferencia
de que la determinación del límite de estabilidad se realiza hallando los cruces con el círculo
unitario (c.u.). A nivel de cálculo, para obtener el corte con el c.u. hay que transformar L(z) en L(w)
y aplicar el criterio de Routh-Hurwitz de los sistemas continuo en el tiempo.
Ejemplo 6. Trazado del lugar geométrico de las raíces. Representar el LGR correspondiente a
la ecuación característica:
( z 0.9)( z 0.37)
1 kL( z ) 1 k 0
z ( z 0.95)( z 1.35)
La aplicación de la regla del eje real indica que hay LGR de -∞ a -0.37, entre 0 y 0.9, y entre 0.95 y
1.35.
Sólo hay un cero en el infinito y la primera regla ya nos indica que la recta asintótica es la recta de
pendiente -180º.
dk
La solución de 0 tiene 4 raíces que corresponden a otros a tantos puntos de ruptura. En
dz
concreto, como puntos de emergencia del eje real tenemos a e1 1.056 (ke1 0.148) y
e 2 0.484 (ke 2 0.55) . Y como puntos de incidencia al eje real tenemos
i1 0.703 (ki1 0.531) y i 2 1.185 (ki 2 3.77) .
T
w1
Para obtener los cortes con el c.u. aplicamos la transformación z 2 a L(z). Tomando T=1,
T
1 w
2
0.2612 w 0.6411w 2.208w 0.2392
3 2
queda: L( w) .
w3 1.753w2 0.5085w 0.03055
w3 a c
w2 b d
w1 A1
w0 d
Root Locus
1.5
0.5
Imaginary Axis
-0.5
-1
-1.5
-1.5 -1 -0.5 0 0.5 1 1.5
Real Axis
Para el análisis de la estabilidad dado el polinomio característico, los sistemas discretos en el tiempo
cuentan con el criterio de Jury que, al igual que el criterio de Routh-Hurwitz, consiste en construir
una tabla y analizar los signos de la primera columna.
Construcción de la tabla
A partir de las dos primeras filas (de datos) se calculan los coeficientes de la tercera fila:
p0 p0 p0
A11 1 p0 , A12 pn 1 p1 , A13 pn 1 p0
1 1 1
Los valores de la cuarta fila B1i son los valores de la tercera en orden inverso.
B11
A21 A11 B11
A11
Y así sucesivamente.
Interpretación
Si los coeficientes pn, A11, A21,… son positivos entonces todas las raíces de P(z) están dentro del
círculo unitario.
10T
Ejemplo 7. Criterio de Jury. Considerar el lazo L( z ) . Se desea saber qué rango de
( z 1)
valores de T aseguran la estabilidad del servo con retroacción unitaria negativa alrededor de L(z).
T
w 1
Primer método: Aplicar la transformación z 2 a L(z) y analizar el polinomio característico
T
1 w
2
resultante. Éste es
T
1 w
1 L( w) 1 10 2 0 w(1 5T ) 10 0
w
10T
1 L( z ) 1 0 z (10T 1) p1 z p0 0
( z 1)
p1 1 p0 10T 1
p0 10T 1 p1 1
A1 A2 0
B1
p0 p
A1 p1 p0 1 (10T 1) 2 , A2 p0 0 p0 0
p1 p1
A2
B1 A1 A2 A1
A1
Suponer que la planta es G(z). Si se excita con un escalón unitario, la respuesta deseada es
z 1 1
Y ( z) z . La función de transferencia en lazo cerrado será
z 1 z 1
Y ( z ) 1 /( z 1) 1 1 T ( z) 1/ z
T ( z) . Así, el controlador será C ( z ) .
R ( z ) z /( z 1) z G ( z ) 1 T ( z ) 1 1 / z G ( z )
0.474069 z 0.361449
G( z) 2 .
z 1.03157 z 0.449329
Si realizamos la simulación con Simulink (variable step, ode45, max step size = 1e-2),
y representamos el resultado,
>> t=db(:,1);
>> plot(t,db(:,2)),hold on,stem(0:0.4:5,y,'r')
>> xlabel('Tiempo (s)'),title('salida del servo (analógica y muesteada a 0.4s)')
Vemos que, efectivamente, si tomamos muestras a 0.4s podemos pensar que el seguimiento al
escalón discreto es perfecto, con sólo una muestra de retardo. Sin embargo el comportamiento del
sistema entre muestras dista mucho de ser el ideal. Es por ello por lo que el controlador dead beat
no se usa en sistemas de orden 2 o superior
2
1.2
1.5
1
1
0.8
0.5
0.6 0
-0.5
0.4
-1
0.2
-1.5
0 -2
0 1 2 3 4 5 0 1 2 3 4 5
Tiempo (s) Tiempo (s)
A la vista de las limitaciones del controlador dead beat del apartado anterior, Kalman razonó que ya
que es imposible que un sistema siga la excitación en un solo intervalo de muestreo de retardo,
quizá pueda seguirlo en un número mayor de intervalos de muestreo, tantos como el orden de la
planta.
y ( z ) 0 z 1 z 2 z 3 ...
T ( z) z 1 z 2 z 3 ... z 1 z 1 z 2 z 3 ...
r( z ) 1
1 z 1
T ( z ) z (1 ) z
1 2
y( z) (1 z 1 )z 1 z 2 z 3 ... z 1 (1 ) z 2
G( z)
u( z ) 1 1 2
1
(1 z ) z z z ... ( ) z 1 z 2
1 3
k k
0.474069 z 0.361449
G( z) 2 .
z 1.03157 z 0.449329
El primer paso es identificar los coeficientes , , , k. Pero tal y como está la planta no es posible
hacerlo puesto que los coeficientes del numerador no suman 1. Para solucionarlo, se puede
multiplicar numerador y denominador por el siguiente factor: 1/(0.474069+0.361449). Así,
0.567 z 1 0.433z 2 z 1 (1 ) z 2
G( z)
1.197 1.235z 1 0.538 z 2 1
( ) z 1 z 2
k
de donde se obtiene =0.567, =1.197, =-0.038 y k=2.
Salida del sistema con controlador de Kalman Esfuerzo de control con controlador de Kalman
1.4
1.2
1.2
1
1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2 0
0 -0.2
0 0.5 1 1.5 2 2.5 3 0 0.5 1 1.5 2 2.5 3
Tiempo (s) Tiempo (s)
Los problemas del controlador de Kalman se deben a que éste es muy dependiente del tiempo de
muestreo. El tiempo de establecimiento depende de Ts. Si Ts es muy corto, la señal de control debe
ser muy grande (la selección más común para el tiempo de muestreo mínimo es 5 veces la
frecuencia natural más alta del sistema en lazo cerrado). Pero tampoco se puede hacer Ts demasiado
largo puesto que este valor está limitado por el teorema de muestreo de Shannon y puede provocar
problemas de aliasing.
Una alternativa es usar el controlador de Dahlin. El controlador de Dahlin es una versión suavizada
del controlador dead beat y su objetivo es conseguir una respuesta de tipo (1-exp(at)) al ser el
sistema excitado con un escalón. Así, la velocidad de respuesta se ajusta con los parámetros del
controlador y no es necesario cambiar Ts.
Y ( z)
1
1
1 e aTs z
z 1 z e aTs
z e aTs z 1
y
1 e aTs
T ( z)
z e aTs
0.474069 z 0.361449
G( z) 2 . Se desea diseñar una respuesta de primer orden con una
z 1.03157 z 0.449329
contante de tiempo de 1.5s, por tanto, a=1/1.5.
1 e aTs 0.23407
La función de transferencia del servo será: T ( z ) aTs
ze z 0.76593
Y el controlador resultante es
1 T ( z) 0.494 0.509 z 1 0.222 z 2
C( z)
G( z) 1 T ( z) 1 0.237 z 1 0.7624 z 2
Esfuerzo de control del controlador de Dahlin
Respuesta del controlador de Dahlin
1
0.6
0.9
0.5
0.8
0.4
0.7
0.6 0.3
0.5
0.2
0.4
0.3 0.1
0.2
0
0.1
0 -0.1
0 2 4 6 8 10 0 2 4 6 8 10
Tiempo (s) Tiempo (s)
Respuesta del controlador de Dahlin (sin ringing poles) Esfuerzo de control del controlador de Dahlin (sin ringing poles)
1.4 0.6
1.2 0.5
1
0.4
0.8
0.3
0.6
0.2
0.4
0.1
0.2
0 0
0 2 4 6 8 10 0 1 2 3 4 5 6
Tiempo (s) Tiempo (s)
Solución:
... A A* A A*
H ( z) z z z j
z
z (2r cos ) z r
2 2
z p z p* z re z re j
Sabiendo que Z a n
z
za
, la transformada inversa de H(z) queda como
Z 1 H ( z ) Ar n e jn A * r n e jn
Agrupando términos,
Z 1 H ( z ) 2 A r n cosn A c.q.d.
Solución:
1) TVI, TVF
z 1 1.5z 0.6
Valor inicial: x (1) lim(1 z 1 ) X ( z ) lim 1.5
z z z z 0.7
z 1 1.5z 0.6
Valor final: x ( ) lim(1 z 1 ) X ( z ) lim 0
z 1 z 1 z z 0.7
Impulse Response
Comprobación por Matlab (opcional): 1.8
1.6
z - 0.7 1
0.4
0.2
0
0 5 10 15 20 25
Time (sec)
2) Transformada inversa
z z
x( n ) Z 1 X ( z ) Z 1 (1) n ( 0.5) n , n0
z 1 z 0.5
“Invariancia impulsional” significa que la respuesta impulsional del sistema continuo muestreado
coincide con la respuesta impulsional del sistema equivalente discreto:
h( n ) h (t ) t nT
O, lo que es lo mismo,
Z 1 H ( z ) L1 H ( s )
t nT
De ahí,
H ( z ) Z L1 H ( s )
t nT
Los pasos son los siguientes:
s 1
Respuesta impulsional de H ( s ) :
s 1.61
s 1 1 s d
H ( s) , h(t ) e 1.61t e 1.61t 0.61e 1.61t , t 0
s 1.61 s 1.61 s 1.61 dt
0.61z 0.61z
Transformada Z de h(n): H ( z ) Z h ( n ) 1.61T
T 0.1
ze z 0.8513
----------
z - 0.8513 -0.4
-0.7
0 0.5 1 1.5 2 2.5 3 3.5 4
Time (sec)
s 1 0.61
H ( s) 1 , h(t ) (t ) 0.61e 1.61t , t 0
s 1.61 s 1.61
Esto puede verse con ayuda de la función residue o con la funció ilaplace:
>> syms s
>> ilaplace((s+1)/(s+1.61))
ans =
dirac(t)-61/100*exp(-161/100*t)
Sin embargo, para poder aplicar el método de discretización de la invarianza impulsional tal y como
está en los apuntes es necesario que la respuesta impulsional del sistema analógico sea continua.
Por ello, en la práctica, lo que se hace es tomar la respuesta impulsional del sistema analógico a
partir de t=0+ (a fin de evitar la delta de Dirac). Esto es lo que hemos considerado implícitamente al
suponer que la respuesta impulsional era derivable.
Este tema está tratado con más detalle en la siguiente referencia: L. Jackson, "A correction to
impulse invariance", IEEE Signal Processing Letters, Vol. 7, Oct. 2000.
Solución:
1 2 0.75 0
0 0.75 2 1
A11 1 A12 2 A13 0.75 A14
0.75 2 1
A21 0.43 A22 0.5 A23
0.5 0.43
A31 0.133 A32
0.133
0 0 0 0
A11 1 0 1 , A12 2 0.75 2 , A13 0.75 0 0.75 , A14 0 0 0
1 1 1 1
0.75 0.75 0.75
A21 1 0.75 0.4375 , A22 2 2 0.5 , A23 0.75 1 0
1 1 1
0.5 (0.5)
A31 0.43 0.5 0.133 , A32 0.5 0.44 0
0.44 0.44
Puesto que el coeficiente A31 es negativo (mientras que el resto, p3, A11, A21 son positivos), hay una
raíz fuera del círculo unitario.
LANDAU, I.D., Commande des Systèmes. Conception, identification et mise en oeuvre, Hermès
Lavoisier, 2002.
La figura muestra un esquema de control digital. El bloque "Planta" incluye el proceso a controlar
así como los actuadores y transductores con los que se ha instrumentado el lazo de control. La
variable temporal t corresponde al tiempo discreto (muestras).
reloj
Planta discretizada
Los controladores de dos grados de libertad, tales como el controlador RST de la siguiente figura,
permiten obtener simultáneamente seguimiento (tracking) y rechazo de las perturbaciones
(regulación). El tracking se obtiene gracias al polinomio T mientras que la regulación se
implementa con 1/S y R. Para la robustez, solo los polinomios S y R son importantes.
d(t) p(t)
+ + y(t)
r(t)
Bm (q 1 ) T(q-1) + 1 + u(t) d
q B(q ) 1 +
Am (q 1 ) S (q 1 ) A(q 1 )
y _
modelo de +
la planta
-1
R(q ) + v(t)
controlador
d(t) y p(t) son perturbaciones a la entrada y a la salida de la planta respectivamente. v(t) es el ruido
de medida.
El efecto del mantenedor de orden cero (ZOH) se traduce en un retardo de una muestra de duración.
El operador retardo se denota como q 1 y (t ) y (t 1) .
Nota: No vamos a considerar qué sucede entre las muestras (inter-sampling behaviour). Por tanto,
no consideraremos rechazo de las perturbaciones entre muestras. Tampoco se van a considerar
efectos tales como los de la inicialización, discetización/cuantización, reset-windup,...
Modelo de la planta:
G (q 1 )
d
1
q d B(q 1 ) q b1 q bnB q B
n
~
q d 1 B (q 1 )
A(q 1 )
1 a1 q 1 bn A q n A A(q 1 )
,
donde q-d corresponde a un retardo entero (un retardo fraccional introduce ceros de fase no mínima
en el polinomio B). Notar que B captura el efecto del ZOH (contiene q-1).
Controlador R-S-T:
S (q 1 )u (t ) T (q 1 ) ~
y (t d 1) R(q 1 ) y (t ) ,
Polinomio característico:
Función de lazo:
R(q 1 ) q d B(q 1 )
L(q 1 )
S (q 1 ) A(q 1 )
Bm (q 1 )
1 q d T (q 1 ) B(q 1 )
M (q )
Am (q 1 ) A(q 1 ) S (q 1 ) q d B(q 1 ) R(q 1 )
donde P(q-1) contiene los polos en lazo cerrado deseados. Y desde r hacia u tenemos:
Bm (q 1 ) q d T (q 1 ) A(q 1 )
M u (q 1 ) .
Am (q 1 ) A(q 1 ) S (q 1 ) q d B(q 1 ) R(q 1 )
Se pueden definir diversas funciones de sensibilidad que caracterizan la variación de la entrada u(t)
y la salida y(t) de la planta en función de las distintas señales de entrada al lazo (p(t), d(t), v(t)).
R( q 1 )
S ( q 1 ) A( q 1 ) R( q 1 ) A(q 1 ) R(q 1 )
S up ( q 1 )
R( q 1 ) q d B(q 1 ) A( q 1 ) S (q 1 ) q d B(q 1 ) R(q 1 ) P(q 1 )
1
S (q 1 ) A(q 1 )
1 A(q 1 ) S (q 1 ) A(q 1 ) S (q 1 )
S yp ( q 1 )
R(q 1 ) q d B(q 1 ) A(q 1 ) S (q 1 ) q d B(q 1 ) R(q 1 ) P (q 1 )
1
S (q 1 ) A(q 1 )
R(q 1 ) q d B (q 1 )
S (q 1 ) A( q 1 ) q d B(q 1 ) R (q 1 ) q d B(q 1 ) R(q 1 )
S yv ( q 1 )
R(q 1 ) q d B(q 1 ) A(q 1 ) S (q 1 ) q d B(q 1 ) R(q 1 ) P(q 1 )
1
S (q 1 ) A(q 1 )
q d B(q 1 )
A(q 1 ) q d B (q 1 ) S (q 1 ) q d B(q 1 ) S (q 1 )
S yd (q 1 )
R(q 1 ) q d B (q 1 ) A(q 1 ) S (q 1 ) q d B(q 1 ) R(q 1 ) P (q 1 )
1
S (q 1 ) A(q 1 )
Es necesario que las cuatro funciones de sensibilidad sean estables a fin de evitar diseños
inapropiados tales como los que, por ejemplo, cancelan los polos inestables de la planta con ayuda
del polinomio R. En ese caso, notar que Sup, Syp y Syv pueden ser estables, pero Syd será inestable:
A(q 1 ) S (q 1 )
S up (q 1 ) , S yp ( q 1 )
S (q 1 ) q d B(q 1 ) S (q 1 ) q d B(q 1 )
q d B(q 1 ) q d B(q 1 ) S (q 1 )
S yv (q 1 ) , S yd (q 1 )
S (q 1 ) q d B(q 1 )
A(q 1 ) S (q 1 ) q d B(q 1 )
En consecuencia, las perturbaciones a la entrada de la planta d son capaces de desestabilizar el
sistema.
Las funciones de sensibilidad juegan un papel clave en los estudios de robustez. De hecho, el
control robusto puede interpretarse como una metodología para conformar las diferentes funciones
de sensibilidad a fin de satisfacer diferentes familias de especificaciones. Por ello es fundamental
entender e interpretar el comportamiento de las funciones de sensibilidad en el dominio frecuencial.
A(q 1 ) S (q 1 )
S yp (q 1 )
A(q 1 ) S (q 1 ) q d B( q 1 ) R(q 1 )
1
Propiedad 2: Margen de módulo. El margen de módulo es M . Su valor mínimo se
S yp
max
suele tomar como M min 0.4 ( 8dB) . Típicamente se pide M 0.5 (6dB) . Un margen de
módulo de M 0.5 (6dB) implica que MG 2 y MF 29 (pero el recíproco en general
no es cierto). El margen de módulo también define la tolerancia a las no linealidades.
Propiedad 3. Efecto "cama de agua" (waterbed effect). Si el lazo abierto (KG) es estable, se
cumple la siguiente propiedad
0.5 f s
0
log S yp (e j 2f / f s ) df 0
El área que define la curva Syp por debajo del eje de 0dB es igual al área definida por encima de los
0dB. Por tanto, la atenuación de las perturbaciones en una región frecuencial implica la
amplificación de éstas en otras regiones. Y la ampliación de la zona de atenuación tiene como
resultado una mayor amplificación fuera de la zona de atenuación y, consecuentemente, una
reducción de la robustez (puesto que se reduce el margen de módulo).
|S yp| con cancelación de continua
10
-5
dB
-10
-15
-20
wn=0.4
-25 wn=0.6
wn=1.0
-30
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
B(q 1 ) 0.3q 1
Ejemplo: Considerar la planta q d q 2
, Ts=1s. Se desea un comportamiento
A(q 1 ) 1 0.7 q 1
equivalente a un sistema de segundo orden con =0.9 y n=0.4 (tiempo continuo). Para ello se
escogen los polinomios S y R de manera que el polinomio característico sea
1 1 1 d 1 1 1
P (q ) A(q ) S (q ) q B(q ) R(q ) 1 1.37 q 0.48q 2 . (Nota: Los polos en
tiempo continuo son 0.36 j 0.17 . Aplicando la transformación z e s , se obtiene que los
sT
polos en tiempo discreto correspondientes a P(q-1) son 0.68 j 0.12 o, lo que es lo mismo,
0.69e 0.17 . El polinomio correspondiente a estos polos es el que se especifica como polinomio
característico de la regulación). La función Syp resultante es:
|S yp|
2
1.5
0.5
dB
-0.5
-1
-1.5
-2
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
Si, además de la continua, se desea cancelar la frecuencia f0=0.25Hz, hay que añadir el factor
H S (q 1 ) 1 q 1 1 2 cos(2 0.25Ts )q 1 q 2 1 q 1 1 q 2 al polinomio S(q-1).
Los resultados, para ambos casos, son:
0 0
-10 -10
dB
-20
dB
-20
-30 -30
-40 -40
-50 -50
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs f/fs
Propiedad 5. Operación en lazo abierto. Operar en lazo abierto a la frecuencia es forzar que, a
dicha frecuencia, el polinomio R(q-1) se anule. Notar que, entonces, tendremos |Syp()|=1 (0dB).
Para forzar que R se anule lo que haremos será añadirle un cero a la frecuencia que queremos
anular. Así, R(ej) se convierte en R(ej)HR(ej). Si queremos operar en lazo abierto a la frecuencia
0, basta con escoger H R (q 1 ) 1 2 cos( 0Ts )q 1 q 2 .
Ejemplo: Considerar de nuevo el ejemplo anterior. Suponer que, además de cancelar la continua,
queremos operar en lazo abierto a f=0.25Hz. Así, habrá que escoger H S (q 1 ) 1 q 1 y
H R (q 1 ) 1 q 2 . La función Syp resultante (para n=0.4 y n=1 ) es:
5
5
0
-5
dB
dB
-5 -10
-15
-10
-20
-15
-25
-20 -30
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs f/fs
5 3
0 2
-5 1
dB
0
dB
-10
-15 -1
-20 -2
P a=1
-25 -3
P a=(1-0.2q-1)2
-30 -4
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs f/fs
H S (q 1 ) 1 1 q 1 2 q 2
PA (q 1 ) 1 1 q 1 2 q 2
s 2 2 num 0 s 02
F (s)
s 2 2 den 0 s 02
2 1 q 1
donde den 0.3 y se discretiza mediante la transformación bilineal s a fin de
Ts 1 q 1
H S (q 1 )
obtener . (No se discretiza mediante ZOH puesto que interesa conservar el valor de la
PA (q 1 )
frecuencia).
num
Si num den se introduce una atenuación local de valor 20 log a la frecuencia
den
0Ts
discretizada discr 2arctg . Si num den se introduce una amplificación local.
2
Ejemplo: Considerar de nuevo el ejemplo anterior. Los polos dominantes del polinomio
característico del diseño corresponden ahora a =0.9 y n=1 (tiempo continuo) y se ha añadido el
factor H S (q 1 ) 1 q 1 para cancelar las perturbaciones de frecuencia 0. El efecto de añadir el
factor
10
5
5
0
0
-5
-5
dB
dB
-10
-10
-15
-15
-20
-20
-25 -25
-30 -30
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs f/fs
Para frecuencia inferiores a 0.17fs, se puede asumir que discr 0 num 0 den 0 . Por ejemplo,
si fs=1Hz y queremos atenuación a 0.1Hz, podemos escoger una F(s) con 0 2 0.1 ,
num 0.25 , den 0.4. El filtro F(s) discretizado mediante la transformación bilineal se muestra
en la figura:
dB
-2
-4
-6
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
20
10
deg 0
-10
-20
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
fs/2
Lazo abierto
| Syp | = 0dB
Zona de atenuación
Rechazo total | Syp | < 0dB
| Syp | = -dB
A(q 1 ) R(q 1 )
S up (q 1 )
A(q 1 ) S (q 1 ) q d B( q 1 ) R(q 1 )
Propiedad 1. Bloqueo de señales. Cancelar totalmente el efecto sobre la señal de control u de una
perturbación p de frecuencia es hacer |Sup()|=0. Esto se consigue añadiendo un cero a esa
frecuencia al numerador de Sup, es decir, A(ej)R(ej) se convierte en A(ej)R(ej)HR(ej).
Notar que ello es equivalente a operar en lazo abierto a dicha frecuencia (|Syp()|=1).
El filtro HR se puede escoger como H R (q 1 ) 1 q 1 , con 1 1 y n = 1, 2. También, si
n
2.
Propiedad 2. Inversa de la planta. A las frecuencias donde |Syp()|=0 (cancelación total del
efecto de la perturbación p sobre la salida de la planta y), es decir, donde A(ej)S(ej)HS(ej)=0,
A( ) 1
notar que S up ( ) G ( ) (la función de sensibilidad es la inversa de la planta).
B( )
H R (q 1 ) 1 1 q 1 2 q 2
PA (q 1 ) 1 1 q 1 2 q 2
s 2 2 num 0 s 02
resultado de discretizar, vía la transformación de Tustin, un factor F ( s ) .
s 2 2 den 0 s 02
S up (q 1 )Wa (q 1 ) 1
R q d B
Los esquemas de bloques correspondientes, para K yG son:
S A
b a
Wa
K G b a
SupWa
S yv (q 1 )Wm (q 1 ) 1.
R q d B
Los esquemas de bloques correspondientes, para K yG son:
S A
b
Wm
a
K G b a
SyvWm
con q 1
1 y Wr q 1 es una función estable. La aplicación del teorema de la ganancia
pequeña da como resultado la siguiente condición de estabilidad robusta:
S yp (q 1 )Wr (q 1 ) 1.
R q d B
Los esquemas de bloques correspondientes, para K yG son:
S A
a b
Wr
K G b a
-SypWr
b (1)Wr SAWr
puesto que S ypWr .
a 1 KG SA RB
Un margen de módulo M 0.5 (-6dB) implica que S yp ( ) 6dB puesto que, por definición,
-1
M S yp ( ) .
max
Plantillas para S yp
10
M
5
-5
dB
-10
-15
-20
-25
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
Todos estos métodos de diseño se basan en la estructura RST de dos grados de libertad y pueden
interpretarse como casos particulares del problema de fijación de polos.
B(q 1 )
Problema: Dada la planta G (q 1 ) q d y las especificaciones del diseño en forma de
A(q 1 )
Bm (q 1 )
polinomio característico P (q 1 ) (para la regulación) y modelo (para el seguimiento),
Am (q 1 )
obtener los polinomios R (q 1 ) , S (q 1 ) y T (q 1 ) .
Polinomio característico: El primer paso es la selección de los polos en lazo cerrado deseados:
Los polos dominantes PD(q-1) se seleccionan a partir de las especificaciones. A menudo se dan
especificaciones en tiempo continuo (tr, Rpt) que se pueden traducir a bloques de segundo orden (n,
). Para obtener PD(q-1) hay que discretizar (Ts) dichos bloques. Unas especificaciones
correctamente seleccionadas cumplen 0.25nTs1.5, 0.71.
Los polos auxiliares PA(q-1) se introducen para dar robustez al diseño y suelen ser más rápidos que
los polos dominantes.
Paso 1. Regulación (cálculo de los polinomios R y S). Consiste en resolver la ecuación diofántica
(o ecuación de Bézout)
1 0 0 0 0 0 1 1
a
1 1 b1 0 s1 p1
a 2 a1 0 b2 b1
a 2 1 b 2 0 s
ns
a nA a1 bnB
b1 r0 p np
0 a nA a2 0 bnB b2 r1 0
0 0 0 a nA 0 0 0 bnB rnr 0
nB d nA
Los polinomios R y S pueden incorporar partes fijas HR y HS que permiten imponer condiciones
adicionales de comportamiento/robustez al lazo (acción integral en el controlador, rechazo de cierta
frecuencia de perturbación a la salida,…).
En estas situaciones el procedimiento es el mismo pero añadiendo estas partes fijas a la planta:
A’=AHS, B’=BHR. La solución de la ecuación diofántica es entonces S' y R',
con lo que los polinomios S y R finales serán S=S’HS, R=R’HR. Las condiciones de existencia y
unicidad de la solución deben reflejar estos cambios.
q ( d 1) Bm (q 1 )
El caso ideal ~
y (t ) 1
r (t ) no puede conseguirse debido al retardo y los ceros de la
Am (q )
B (q 1 )
planta, por tanto, el objetivo es conseguir ~
y (t d 1) m 1 r (t ) .
Am (q )
Bm (q 1 ) q d B (q 1 )
M (q 1 ) T ( q 1
) ,
Am (q 1 ) A(q 1 ) S (q 1 ) q d B(q 1 ) R(q 1 )
se escoge T (q 1 ) HP(q 1 ) , donde H es una ganancia estática (T debe ser un polinomio) entre
~ B (q 1 ) q d B(q 1 )
y (t ) e y(t) (H=1/B(1) si B(1)0 y H=1 si B(1)=0). Entonces, M (q 1 ) m 1 .
Am (q ) B(1)
~
u (t ) T (q 1 ) ~
y (t d 1) R(q 1 ) y (t ) S (q 1 )u (t 1)
2.4.3 Ejemplo
Solución:
polys =
S: [1 -0.3742 -0.6258]
R: [3.0000 -3.9390 1.3142]
T: [3.3333 -4.5807 1.6225]
Análisis:
marges =
GM: 2.7029
PM: 65.4468
DM: 2.0979
MM: 0.6177
Respuesta temporal:
Excitación: Escalón unitario con retardo de 9 muestras.
Perturbación: Escalón de valor -0.25 a partir de la muestra 50.
1.5
1
y
0.5
0
0 10 20 30 40 50 60 70 80 90 100
1.5
1
u
0.5
0
0 10 20 30 40 50 60 70 80 90 100
Es un caso particular de la fijación de polos en el cual los polos en lazo cerrado contienen los ceros
de la planta. Por tanto, solo es válido para plantas con ceros de fase mínima.
Al contrario que la fijación de polos simple, este método cancela los ceros de la planta y,
perfectamente la trayectoria deseada). Para ello, los ceros de la planta deben ser estables y
su coeficiente de amortiguamiento debe ser adecuado, >0.2 (ello define una región
B(q 1 ) ~
Problema: Dada la planta G (q 1 ) q d 1
, con B (q 1 ) q 1 B (q 1 ) , y las especificaciones
A(q )
del diseño en forma de polinomio característico conteniendo los ceros de la planta
~ B (q 1 )
P(q 1 ) P' (q 1 ) B (q 1 ) (para la regulación) y modelo m 1 (para el seguimiento), obtener
Am (q )
los polinomios R (q 1 ) , S (q 1 ) y T (q 1 ) .
~
Si se toma S (q 1 ) S ' (q 1 ) B (q 1 ) , con S’ mónico (entonces s0 en S será igual a b1,
~
S (q 1 ) s 0 s1 q 1 B (q 1 ) S ' (q 1 ) (b1 b2 q 1 )(1 s1' q 1 ) ), la ecuación a
resolver se simplifica y queda como:
1 0 0 0 0 1 1
0
a
1 1 s '1 p1
a 2 a1 0
a2 1 0 s
d ' p nA
a nA
r0 p nA1
a1 1
0 a2 0 0 r1
1 0
0 0 a nA 0 0 1 rnr p nA d
d 1 nA
Bm (q 1 ) q d B(q 1 )
M (q 1 ) T ( q 1
)
Am (q 1 ) A(q 1 ) S (q 1 ) q d B(q 1 ) R(q 1 )
~ B (q 1 )
La trayectoria de referencia es y (t d 1) m 1 r (t ) . Puesto que
Am (q )
Bm (q 1 ) q d 1
M (q 1 ) 1
T ( q 1
) 1
, el resultado es T (q 1 ) P ' (q 1 ) .
Am (q ) P ' (q )
S (q 1 )u (t ) P' (q 1 ) ~
y (t d 1) R(q 1 ) y (t ) ,
~
donde S (q 1 ) s 0 s1 q 1 s 0 (1 S (q 1 )) , con s0=b1. Entonces,
u (t )
1
b1
P' (q 1 ) ~
~
y (t d 1) R(q 1 ) y (t ) S (q 1 )u (t 1) ,
1 1
1 Bm ( q ) ~
u (t ) P ' ( q ) 1
r (t ) R(q 1 ) y (t ) S (q 1 )u (t 1)
b1 Am (q )
2.5.3 Ejemplos
Solución:
polys =
S: [0.2000 -0.1000 -0.1000]
R: [0.9258 -1.2332 0.4200]
T: [1 -1.3742 0.4868]
Análisis:
marges =
GM: 2.1093
PM: 65.3277
DM: 1.2040
MM: 0.5259
Respuesta temporal:
Excitación: Escalón unitario con retardo de 9 muestras.
Perturbación: Escalón de valor -0.25 a partir de la muestra 50.
1.5
y
0.5
0
0 10 20 30 40 50 60 70 80 90 100
t/Ts
1
u
-1
0 10 20 30 40 50 60 70 80 90 100
t/Ts
>> zpk(trfn.Sup)
Zero/pole/gain:
-4.629 (z-0.7) (z-0.6) (z^2 - 1.332z + 0.4537)
-----------------------------------------------
(z+0.5) (z^2 - 1.374z + 0.4868)
Sampling time: 1
Solución:
polys =
S: [0.2000 0.0852 -0.0134 -0.0045 -0.1785 -0.0889]
R: [0.8914 -1.1521 0.3732]
T: [1 -1.3742 0.4868]
Análisis:
marges =
GM: [2.0784 2.1796]
PM: [58.0372 -69.9802 71.5384 -72.5586]
DM: [3.9544 3.8626 0.6960 1.7269 1]
MM: 0.5189
Hay varios márgenes puesto que el retardo d=3 ha tenido como consecuencia un incremento de
vueltas del diagrama polar y, por tanto, diversos cruces por el círculo unitario.
Nyquist Diagram
10
2
Imaginary Axis
-2
-4
-6
-8
-10
-1 0 1 2 3 4 5 6 7
Real Axis
Se toman como márgenes de robustez los valores mínimos, esto es, GM=2.078, PM=58.037,
MM=0.518 y DM=0.696s. Notar que el margen de retardo no cumple la especificación DM 1s.
Ello se observa también en la siguiente figura:
|S yp|
10
-5
dB
-10
-15
-20
-25
-30
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
-5
dB
-10
-15
-20
-25
-30
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
La introducción de polos auxiliares también ha reducido el ringing. Las siguientes figuras muestran
la respuesta temporal antes y después de introducir los polos auxiliares.
1.5 1.5
1 1
y
y
0.5 0.5
0 0
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
t/Ts t/Ts
2 2
1 1
u
u
0 0
-1 -1
0 10 20 30 40 50 60 70 80 90 100 10 20 30 40 50 60 70 80 90 100
t/Ts t/Ts
polys =
S: [0.2000 0.0252 -0.0329 0.0019 -0.1295 -0.0647]
R: [0.6508 -0.8403 0.2716]
T: [1 -1.6742 0.9290 -0.1883 0.0160 -4.8675e-004]
marges =
GM: [2.1586 2.9741]
PM: [58.5372 -94.0039 110.9487]
DM: [4.2981 3.6034 1.1869]
MM: 0.5344
IMC es un nombre comercial pero puede llevar a confusión puesto que no tiene nada que ver con el
"principio del modelo interno". De hecho, implementa una estrategia de control trivial.
Los polos dominantes del lazo cerrado coinciden con los de la planta. Por tanto, no permite acelerar
la respuesta del sistema en lazo cerrado. Y, además, el modelo de la planta deberá ser estable y bien
amortiguado.
Se usa en los casos en que existe un retardo muy grande (horas), mayor que la dinámica de la planta
sin retardo (del orden de 2 o más de 2 veces superior).
B(q 1 ) ~
Problema: Dada la planta G (q 1 ) q d 1
, con B (q 1 ) q 1 B (q 1 ) , y las especificaciones
A(q )
del diseño en forma de polinomio característico conteniendo los polos de la planta
Bm (q 1 )
P(q 1 ) PA (q 1 ) A(q 1 ) (para la regulación) y modelo (para el seguimiento), obtener
Am (q 1 )
los polinomios R (q 1 ) , S (q 1 ) y T (q 1 ) .
Regulación: El polinomio característico del sistema en lazo cerrado tiene como polos dominantes
los de la planta ( A(q 1 ) ).
S (q 1 ) q d B (q 1 ) R' (q 1 ) PA (q 1 ) ,
Solución para el caso con integrador: En el caso de controlador con acción integral,
S (q 1 ) (1 q 1 ) S ' (q 1 ) , la ecuación a resolver queda como:
El valor de R' se puede obtener fácilmente para el caso estático, q=1: r ' 0 PA (1) / B (1) . Así,
PA (1) P (1)
R (q 1 ) A(q 1 ) y S (q 1 ) (1 q 1 ) S ' (q 1 ) PA (q 1 ) q d B (q 1 ) A
B (1) B(1)
PA (1) H R (q 1 ) P (1) H R (q 1 )
R (q 1 ) A(q 1 ) y S (q 1 ) PA (q 1 ) q d B (q 1 ) A
B(1) H R (1) B(1) H R (1)
Bm (q 1 ) q d B(q 1 )
Seguimiento: El lazo cerrado es M (q 1 ) T ( q 1
) y la trayectoria de
Am (q 1 ) A(q 1 ) PA (q 1 )
B (q 1 )
referencia es ~
y (t d 1) m 1 r (t ) . Puesto que, en régimen permanente, interesa que
Am (q )
1
q d B(q 1 ) 1 PA ( q )
T (q 1 ) 1, el polinomio T se escoge como T ( q 1
) A( q ) .
A(q 1 ) PA (q 1 ) B(1)
S (q 1 )u (t ) T (q 1 ) ~
y (t d 1) R(q 1 ) y (t )
Poniendo el valor de S, T y R,
1
1 dPA (1) 1 1 PA ( q ) ~ P (1)
PA (q )u (t ) q B(q ) u (t ) A(q ) y (t d 1) A(q 1 ) A y (t )
B(1) B(1) B(1)
1 PA (q 1 ) ~
1 P (1) P (1)
PA (q )u (t ) A(q ) y (t d 1) A(q 1 ) A y (t ) q d B(q 1 ) A u (t )
B(1) B(1) B(1)
R0(q-1)
IMC parcial: Es un caso particular donde solo una parte de los polos de la planta forman parte del
polinomio característico. Por ejemplo, suponer A(q 1 ) A1 (q 1 ) A2 (q 1 ) , donde A1 son los polos
dominantes y A2 unos polos lejanos. Los polos lejanos formarán parte del polinomio característico
mientras que los polos dominantes no puesto que, por lo que sea, queremos modificar su posición.
Las ecuaciones serán:
A1 (q 1 ) A2 (q 1 ) S (q 1 ) q d B(q 1 ) R(q 1 ) A2 (q 1 ) PA (q 1 )
donde R (q 1 ) A2 (q 1 ) R ' (q 1 ) .
2.6.3 Ejemplo
Solución:
0.6 0
0.4
-5
0.2
Imaginary Axis
dB
-10
0
-0.2 -15
-0.4
-20
-0.6
-25
-0.8
-1 -30
-1.5 -1 -0.5 0 0.5 1 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
Real Axis f/fs
|S yv |
0
-2
tmp
dB
0.1
-4
0.3
0.333
-6
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
|S yp|
10
0
dB
-10
-20
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
Solución 3 y análisis: Es posible mejorar las prestaciones del diseño haciendo uso de los grados de
libertad que nos quedan. Podemos usar un polinomio característico de hasta orden 9 (nB+nA+d,
donde nB=1, nA=1, d=7). Por ello, se ensaya un diseño con un polo auxiliar en 0.3 y 7 polos en
0.1. El resultado se compara con el obtenido con un único polo auxiliar en 0.5. Ambos cumplen las
especificaciones.
|S yv |
0
-5
dB
-10
tmp
0.5
-15
7 x 0.1
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
|S yp|
10
0
dB
-10
-20
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
Solución 4 y análisis: Finalmente, se compara el caso de un polo auxiliar en 0.333 con el caso de
añadir un filtro H R (q 1 ) 1 q 1 a fin de abrir el lazo a frecuencia 0.5fs. Ambos diseños cumplen
también las especificaciones de diseño.
|S yv |
0
tmp
dB
-5
Hr =1+q-1
P aux =1-0.333q-1
-10
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
|S yp|
10
0
dB
-10
-20
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs
El objetivo del control es conformar las funciones de sensibilidad de la entrada Sup y de la salida Syp.
Estas dos funciones contienen todas las especificaciones del problema de control y se conforman
mediante la introducción de polos auxiliares en el polinomio característico del sistema y la
introducción de filtros en los controladores.
Especificaciones:
Atenuar las perturbaciones de baja frecuencia: desde 0 a 0.03Hz.
A frecuencia 0.07Hz la amplificación debe ser <3dB
No atenuar la perturbación sinusoidal de f=0.25Hz (puesto que esta vibración es la que evita que
el acero se pegue a las paredes de la cubeta intermedia).
El controlador no debe contener ningún integrador (puesto que la planta ya lo es)
Margen de módulo M > -6dB y margen de retardo > Ts.
Solución:
Diseño C: Para solucionar este último inconveniente se escogen unos polos dominantes más
rápidos: n 0.9 , =0.9. Los márgenes de robustez obtenidos son =5.1016s y M=0.6408.
Ahora sí se satisfacen todas las especificaciones, tal y como muestran las siguientes figuras:
|S yp| |S up|
10 0
up A
lo B
A -10 C
5
B
C
-20
0
dB
-30
dB
-5
-40
-10
-50
-15 -60
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
f/fs f/fs