Capítulo 7: Análisis de Respuesta en Frecuencias
Capítulo 7. ANÁLISIS DE RESPUESTA EN FRECUENCIAS.
- 209 -
Sistemas de Control en Tiempo Discreto
7.1 INTRODUCCIÓN. El concepto de respuesta en frecuencia juega un poderoso papel en los sistemas de control digital, de la misma forma que lo hace en los sistemas de control en tiempo continuo. Por respuesta en frecuencia, se entiende la respuesta en estado de régimen permanente de un sistema ante una entrada senoidal. A menudo han sido utilizados los métodos de respuesta en frecuencia en el diseño de compensadores. La razón básica es la sencillez de los métodos. Al llevar a cabo pruebas de respuesta en frecuencia sobre un sistema muestreado, es importante que el sistema continuo tenga un filtro de paso bajo (generalmente un mantenedor de orden cero) antes del muestreador, de tal manera que las bandas laterales estén filtradas. De esta forma dado un sistema lineal e invariante en el tiempo y dada una entrada senoidal, el sistema conserva la frecuencia y modifica solamente la amplitud y la fase de la señal de entrada. Por lo tanto, las dos únicas cantidades que deberán ser manejadas, serán la amplitud y la fase. Ahora analizaremos la respuesta a una entrada senoidal de un sistema discreto lineal e invariante en el tiempo; ese análisis será confirmado mediante la definición de la función transferencia de pulso senoidal. A continuación estudiaremos el diseño en el plano w de un sistema de control en tiempo discreto mediante la utilización de un diagrama de Bode.
- 210 -
Capítulo 7: Análisis de Respuesta en Frecuencias
7.2 RESPUESTA DE UN SISTEMA EN TIEMPO DISCRETO LINEAL E INVARIANTE EN EL TIEMPO A UNA ENTRADA SENOIDAL. La respuesta en frecuencia de G ( z ) puede obtenerse sustituyendo z = e j ω T en G ( z ) , como se demuestra a continuación. [REF. 3]. Se considera un sistema estable en tiempo discreto lineal e invariante en el tiempo como se muestra en la siguiente figura:
La señal muestreada u ( k T ) es u ( k T ) = s i n ( k ω T )
La transformada z de la entrada muestreada es:
> restart:
- 211 -
Sistemas de Control en Tiempo Discreto
> ztrans(sin(k*omega*T), k, z); z sin( ω T ) 2 z − 2 z cos( ω T ) + 1
que también se puede expresar de la siguiente forma:
z ⋅ sin(ω ⋅ T ) (z − e
j⋅ω ⋅T
) ⋅ ( z − e − j⋅ω ⋅T )
teniendo en cuenta que e j⋅ω ⋅T = cos(ω ⋅ T ) + j ⋅ sin(ω ⋅ T ) .
NOTA del autor: En general se obtiene que
(z − e
a +b⋅ j
)⋅ (z − e
a −b⋅ j
)=
(
)(
)
= z − e a ⋅ (cos(b) + j ⋅ sin(b) ) ⋅ z − e a ⋅ (cos(b) − j ⋅ sin(b) ) =
= z 2 − 2 ⋅ e a ⋅ cos(b) ⋅ z + e 2⋅a
- 212 -
Capítulo 7: Análisis de Respuesta en Frecuencias
La respuesta del sistema está dada por
X ( z ) = G ( z )U ( z ) = G ( z ) ⋅
=
a⋅z z −e
j⋅ω ⋅T
+
z ⋅ sin(ω ⋅ T ) ( z − e j⋅ω ⋅T ) ⋅ ( z − e − j⋅ω ⋅T )
aa ⋅ z z − e − j⋅ω ⋅T
+ [términos debidos a los polos de G(z)]
siendo aa el complejo conjugado de a.
z − e j⋅ω ⋅T Al multiplicar ambos miembros de la ecuación por obtenemos z
G( z) ⋅
aa ⋅ ( z − e j⋅ω ⋅T ) z − e j⋅ω ⋅T términos debidos a sin(ω ⋅ T ) a = + + los polos de G(z) z z − e − j⋅ω ⋅T z − e − j⋅ω ⋅T
Dado que el sistema considerado aquí es estable, G( z ) no contiene a z = e como polo, ya que e
j ωT
j ωT
está en la frontera del disco unidad (ver estabilidad). Por tanto,
G( z ) no tiene en el denominador un término de la forma z - e
j ωT
. Luego el segundo y
tercer término del segundo miembro de esta ecuación se anulan en z = e tenemos
sin(ω ⋅ T ) a = G ( z ) z − e − j⋅ω ⋅T z =e
j ⋅ω ⋅T
G (e j⋅ω ⋅T ) = 2⋅ j
- 213 -
j ωT
. Así
Sistemas de Control en Tiempo Discreto
El coeficiente aa, que es el complejo conjugado de a, se obtiene multiplicando por z − e − j⋅ω ⋅T y sustituyendo z = e − j⋅ω ⋅T . z
G (e − j⋅ω ⋅T ) aa = − 2⋅ j
Escribiendo G (e j⋅ω ⋅T ) = M ⋅ e j⋅θ , con M = G (e j⋅ω ⋅T )
Entonces
(
)
y θ = ángulo G (e j⋅ω ⋅T ) .
G (e − j⋅ω ⋅T ) = M ⋅ e − j⋅θ .
La ecuación de X ( z ) ahora puede escribirse como
X ( z) =
términos debidos a M ⋅ e j⋅θ z M ⋅ e − j⋅θ z ⋅ − ⋅ + j⋅ω ⋅T − j ⋅ω ⋅T 2⋅ j 2⋅ j z−e z−e los polos de G ( z )
X ( z) =
e − j⋅θ ⋅ z M e j⋅θ ⋅ z ⋅ − 2 ⋅ j z − e j⋅ω ⋅T z − e − j⋅ω ⋅T
o bien
- 214 -
términos debidos a + los polos de G ( z )
Capítulo 7: Análisis de Respuesta en Frecuencias
La transformada z inversa de esta última ecuación es
x( k ⋅ T ) =
(
)
términos debidos a M ⋅ e j⋅θ ⋅ e j⋅k ⋅ω ⋅T − e − j⋅θ ⋅ e − j⋅k ⋅ω ⋅T + Ζ −1 2⋅ j los polos de G ( z )
El último término del segundo miembro de esta última ecuación representa la respuesta transitoria. Dado que el sistema G( z ) se ha supuesto estable, todos los términos de la respuesta transitoria desaparecerán en estado permanente, y obtendremos la siguiente respuesta en estado permanente x ss (k ⋅ T ) :
x ss ( k ⋅ T ) =
(
M ⋅ e j⋅( k ⋅ω ⋅T +θ ) − e − j⋅( k ⋅ω ⋅T +θ ) 2⋅ j
)
= M ⋅ sin(k ⋅ ω ⋅ T + θ )
donde la amplitud o magnitud M, que es la ganancia del sistema en tiempo discreto al ser sujeto a una entrada senoidal, está dada por
M = M (ω ) = G (e j⋅ω ⋅T )
y θ , el ángulo de fase, está dado por
(
θ = θ (ω ) = ángulo G (e j⋅ω ⋅T )
- 215 -
)
Sistemas de Control en Tiempo Discreto
En términos de G (e j⋅ω ⋅T ) se puede escribir la respuesta en estado permanente como sigue:
(
(
x ss (k ⋅ T ) = G (e j⋅ω ⋅T ) ⋅ sin k ⋅ ω ⋅ T + ángulo G (e j⋅ω ⋅T )
))
Hemos demostrado que G (e j⋅ω ⋅T ) proporciona la magnitud y la fase de la respuesta en frecuencia de G( z ). Por lo tanto, para obtener la respuesta en frecuencia de G( z ), sólo necesitamos escribir e j⋅ω ⋅T en lugar de z en G( z ). La función G (e j⋅ω ⋅T ) se conoce comúnmente como función transferencia de pulso senoidal. Si observamos que
2⋅π j⋅ ω + ⋅T e T
= e j⋅ω ⋅T ⋅ e j⋅2⋅π = e j⋅ω ⋅T
se obtiene que la función transferencia de pulso senoidal G (e j⋅ω ⋅T ) es periódica, con un período T.
Ejemplo:
Considere el sistema definido por
x(k ⋅ T ) = u (k ⋅ T ) + a ⋅ x((k − 1) ⋅ T ),
0 < a <1
donde u( k T ) es la entrada y x( k T ) la salida. Obtenga la salida en estado permanente x( k T ) cuando la entrada u( k T ) es la senoidal u (k ⋅ T ) = A ⋅ sin(k ⋅ ω ⋅ T ) .
- 216 -
Capítulo 7: Análisis de Respuesta en Frecuencias
La transformada z de la ecuación del sistema es
X ( z ) = U ( z ) + a ⋅ z −1 ⋅ X ( z )
Al definir G ( z ) =
X ( z) , tenemos U ( z)
G( z) =
1 X ( z) = U ( z ) 1 − a ⋅ z −1
Sustituimos z por e j⋅ω ⋅T en G( z ), para obtener la función transferencia de pulso senoidal.
> G(z) := 1/(1-a*z^(-1)); G(exp(I*omega*T)) := convert(subs(1/z = exp(-I*omega*T),G(z)), trig); G( z ) :=
1 1−
G( e
(I ω T)
a z ) :=
1 1 − a ( cos( ω T ) − I sin( ω T ) )
- 217 -
Sistemas de Control en Tiempo Discreto
La amplitud de G (e j⋅ω ⋅T ) es
G (e j⋅ω ⋅T ) = M =
1 1 + a 2 − 2 ⋅ a ⋅ cos(ω ⋅ T )
y el ángulo de fase de G (e j⋅ω ⋅T ) es
(
)
a ⋅ sin(ω ⋅ T ) ángulo G (e j⋅ω ⋅T ) = θ = − arctan 1 − a ⋅ cos(ω ⋅ T )
Para obtener estas expresiones ver [REF. 1]. Entonces, la salida en estado permanente xss( k T ) se puede escribir como sigue:
x ss ( k ⋅ T ) = A ⋅ M ⋅ sin(k ⋅ ω ⋅ T + θ ) =
=
a ⋅ sin(ω ⋅ T ) ⋅ sin k ⋅ ω ⋅ T − arctan 2 a ω T 1 − ⋅ cos( ⋅ ) 1 + a − 2 ⋅ a ⋅ cos(ω ⋅ T ) A
- 218 -
Capítulo 7: Análisis de Respuesta en Frecuencias
7.3 LA TRANSFORMACIÓN W. Sea un sistema de control en tiempo continuo cuya función de transferencia es G( s ), y cuya respuesta en frecuencias viene dada por G( s ) en s = j ω (ver [REF. 2]), es decir, G( j ω ). Supongamos que discretizamos el sistema por invarianza al escalón, de forma que obtenemos la siguiente función transferencia de pulso:
1 − e − s⋅T G D ( z ) = Ζ ⋅ G ( s) s
Si tratamos el problema de la respuesta en frecuencia en el plano z la simplicidad de los trazados logarítmicos se perderá completamente, ya que en el plano z la frecuencia aparece como z = e j⋅ω ⋅T . Esta dificultad, sin embargo, puede ser superada transformando la función transferencia de pulso, GD(z), del plano z al plano w. [REF. 4]. La transformación bilineal w se define por
w ⋅T 2 z= w ⋅T 1− 2 1+
donde T es el período de muestreo que se utiliza en el sistema de control considerado.
- 219 -
Sistemas de Control en Tiempo Discreto
Esta transformación convierte una función de transferencia racional en el plano z en una función racional en w, y transforma el círculo unidad del plano z en el semiplano izquierdo del plano w. Por lo tanto, los métodos de respuesta en frecuencia de los sistemas de control continuos se pueden aplicar a los sistemas discretos de control. Despejando w en la ecuación anterior obtenemos la relación inversa
w=
2 z −1 ⋅ T z +1
Una vez que la función de transferencia GD( z ) se transforma en GD( w ) puede ser tratada como una función de transferencia continua en w, y las técnicas clásicas de respuesta en frecuencia pueden ser usadas en el plano w. De esta forma las técnicas de diseño de Bode pueden ser aplicadas al diseño de controladores discretos. La transformación w distorsiona la frecuencia. La relación entre la frecuencia ficticia ν y la frecuencia real ω es
ν=
con ω s =
2 ω ⋅T ⋅ tan , T 2
−
ωs
2 ⋅π frecuencia de muestreo. T
- 220 -
2
≤ω ≤
ωs 2
,
− ∞ ≤ν ≤ ∞
Capítulo 7: Análisis de Respuesta en Frecuencias
Para
ω=0
y para
ω=
ωs 2
=
π T
⇒
tan(0) = 0
⇒
π tan = ∞ 2
ω ω Luego para el rango de frecuencia real ω ∈ − s , s , la frecuencia ficticia recorre 2 2 toda la recta (− ∞, ∞ ) . Por tanto, hay una distorsión de frecuencias. Notar que si en la ecuación anterior ω ⋅ T es pequeño, entonces ν equivale a ω. Esto significa que para ω T pequeños las funciones de transferencia G( s ) y GD( w ) se parecen una a la otra, siendo G( s ) la función de transferencia del sistema continuo del cual proviene GD( z ).
GD( w ) puede ser una función de transferencia de fase no mínima (estabilidad), ya que la transformación w genera uno o más ceros en GD( w )
que están en el
semiplano derecho de w. La situación de los ceros del semiplano derecho depende del período de muestreo T, ya que los ceros son generados por la operación de muestreo y retención. El efecto de estos ceros sobre la respuesta se vuelve menor cuando el período de muestreo disminuye. [REF. 4].
- 221 -
Sistemas de Control en Tiempo Discreto
Ejemplo:
Considere la función de transferencia del sistema que se muestra en la figura. El período de muestreo T se supone de 0.1 seg. Obtenga GD( w ).
Supongamos que discretizamos el sistema continuo, cuya función de transferencia es G p ( s ) =
10 por invarianza al escalón: s + 10
La transformada z de G( s ) es
(1 − e −T ⋅s ) ⋅ 10 G D ( z ) = Ζ s ⋅ ( s + 10)
10 = (1 − z −1 ) ⋅ Ζ s ⋅ ( s + 10)
- 222 -
Capítulo 7: Análisis de Respuesta en Frecuencias
> restart: with(inttrans): Digits:=4:
> subs(t=k*1/10, invlaplace(10/(s^2+10*s), s, t)): G[D](z) := evalf(simplify((1-z^(-1))*ztrans(%, k, z))); GD( z ) := 1.718
1 2.718 z − 1.
w ⋅T 2 = 1 + 0.5 ⋅ w Mediante la transformación bilineal z = w ⋅ T 1 − 0.5 ⋅ w 1− 2 1+
GD( z ) puede ser transformada en GD( w ) como sigue:
> subs(z=(1+.05*w)/(1-.05*w), G[D](z)); G[D](w) := simplify(%, radical); 1
1.718 2.718
1 + .05 w 1 − .05 w
GD( w ) := −1.718
Despejando quedaría G D ( w) = 9.242 ⋅
− 1.
−1. + .05000 w 1.718 + .1859 w
1 − 0.05 ⋅ w . w + 9.242
- 223 -
Sistemas de Control en Tiempo Discreto
A continuación vamos a obtener los polos de la planta Gp( s ) y los polos en el plano w:
> solve(s+10=0); solve(denom(G[D](w))=0); -10
-9.242
Se observa que la localización del polo de la planta es s = -10 y que el polo en el plano w es w = -9.242. El valor de ganancia en el plano s es 10 y el correspondiente en el plano w es 9.242. (Así, tanto las localizaciones de los polos como los valores de ganancia son similares en el plano s y en el plano w). Ceros en el plano w:
> solve(numer(G[D](w))=0); 20.
Es decir, GD( w ) tiene un cero en w =
2 = 20 , a pesar de que la planta no tiene T
ningún cero. Conforme se hace más pequeño el período de muestreo T, el cero del plano w en w =
2 se acerca a ∞ en el semiplano derecho del plano w. T
- 224 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Observe que tenemos
10 s →0 s + 10
lim G D ( w) = lim
w→0
> limit(G[D](w),w = 0); limit(10/(s+10),s = 0); 1 1
Este hecho es muy útil para verificar los cálculos numéricos para la transformación de G( s ) en GD( w ), tras haber discretizado el sistema continuo en GD( z ). Es importante notar que puede existir una diferencia en las magnitudes en alta frecuencia para [G ( s )]s = j⋅ω y [G D ( w)]w= j⋅ν . La asíntota de alta frecuencia de la curva de magnitud logarítmica para GD( j ν ) puede ser una línea constante a ciertos decibelios (que es lo mismo que una línea horizontal). Por otra parte, si lim G ( s ) = 0 entonces la s →∞
magnitud de G ( j ⋅ ω ) siempre se acercará a cero (- ∞ dB) conforme ω se acerque a infinito. La magnitud en alta frecuencia de GD( j ν ) es
lim G D ( j ⋅ν ) = 0.4621
ν →∞
- 225 -
Sistemas de Control en Tiempo Discreto
Lo comprobamos con Maple:
> aux := subs(w=I*nu, G[D](w)): limit(abs(aux), nu=infinity); .4621
en tanto que la magnitud en alta frecuencia de la planta G ( s ) =
lim
ω →∞
10 es s + 10
10 =0 j ⋅ ω + 10
Lo comprobamos con Maple:
> limit(abs(10/(I*omega+10)), omega = infinity); 0
La diferencia en los diagramas de Bode en el extremo de alta frecuencia puede explicarse como sigue: primero, recuerde que sólo estamos interesados en el rango de frecuencia 0 ≤ ω ≤
1 2 ⋅π ⋅ ω s , con ω s = frecuencia de muestreo, lo que corresponde a T 2
0 ≤ ν ≤ ∞ (distorsión de frecuencias). Entonces, al observar que ν = ∞ en el plano w
corresponde corresponde a
a ω= lim ω→
ωs
1 ⋅ωs 2
en el
plano s, se
puede decir que lim G D ( j ⋅ν ) ν →∞
10 , que es una constante. Es importante señalar que estos j ⋅ ω + 10
2
dos valores no suelen ser iguales entre sí.
- 226 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Desde el punto de vista de polos y ceros, se puede decir que cuando G D ( j ⋅ν ) es una constante distinta de cero en ν = ∞ , está implícito que GD( w ) contiene el mismo número de polos y de ceros. En general, uno o más ceros de GD( w ) se presentan en el semiplano derecho del plano w. La presencia de un cero en el semiplano derecho del plano w significa que GD( w ) es una función de transferencia de fase no mínima (ver estabilidad). Por lo tanto, debemos tener cuidado al dibujar la curva de ángulo de fase en el diagrama de Bode. Para resumir, la transformación w, transformación bilineal, hace corresponder el círculo unitario del plano z con el semiplano izquierdo del plano w. El resultado general de las transformaciones del plano s en el plano z y en el plano w, es que el plano w y el plano s son similares sobre las regiones de interés del plano s. Esto es debido a que algunas de las distorsiones causadas por la transformación del plano s en el plano z están parcialmente compensadas por la transformación del plano z en el plano w. Observe que si
GD ( z) =
b0 ⋅ z m + b1 ⋅ z m−1 + L + bm z n + a1 ⋅ z n−1 + L + a n
,
m≤n
donde las ai y las bi son constantes, se transforma en el plano w mediante la transformación
w ⋅T 2 z= w ⋅T 1− 2 1+
- 227 -
Sistemas de Control en Tiempo Discreto
entonces, GD( w ) asume la forma
G D ( w) =
β o ⋅ w n + β1 ⋅ w n−1 + L + β n α 0 ⋅ w n + α1 ⋅ w n−1 + L + α n
donde las α i y las β i son constantes (algunas de ellas pueden ser cero). Entonces, GD( w ) es un cociente de polinomios en w, donde los grados del numerador y del denominador pueden ser o no iguales. Sustituyendo en GD( w ), w = j ν , dado que GD( j ν ) es una función racional de ν , se puede aplicar el criterio de estabilidad de Nyquist para sistemas continuos a GD( j ν ) [REF. 2]. Este criterio da condiciones para saber cuándo las raíces están en el semiplano izquierdo. En términos del diagrama de Bode, se aplican a GD( j ν ) la aproximación convencional de línea recta a la curva de magnitud, así como el concepto del margen de fase y el margen de ganancia.
Comentarios. La ventaja del método de la transformación w es que el método
de respuesta en frecuencia convencional mediante el uso de diagramas de Bode, puede ser utilizado para diseño de sistemas de control en tiempo discreto. En la aplicación de este método, debemos seleccionar cuidadosamente una frecuencia de muestreo razonable. Antes de concluir esta sección, resumiremos los puntos más importantes relativos al diseño en el plano w. [REF. 3]. 1.
La magnitud y el ángulo de fase de GD( j ν ) son la magnitud y el ángulo de fase de GD( z ) conforme z se mueve en el círculo unitario desde z = 1 hasta z = 1. Puesto que z = e
j ωT
, el valor ω varía desde 0 hasta ω s
ficticia ν varía desde 0 hasta ∞ , ya que ν =
- 228 -
1 . La frecuencia 2
2 ω ⋅T ⋅ tan . Por lo tanto, la T 2
Capítulo 7: Análisis de Respuesta en Frecuencias
respuesta en frecuencia del sistema de control digital para 0 ≤ ω ≤
ωs 2
es
similar a la respuesta en frecuencia del sistema de control analógico correspondiente en el caso 0 ≤ ν ≤ ∞ .
2.
Dado que GD( j ν ) es una función racional de ν definida sobre el plano w, es similar a G( j ω ) definida sobre el plano s. Por lo tanto, son aplicables a GD( j ν ) tanto la aproximación convencional con líneas rectas a la curva de magnitud del diagrama de Bode, como el concepto de margen de fase y de margen de ganancia, que se van a definir en el apartado del diagrama de Bode.
3.
Compare las funciones de transferencia GD( w ) y G( s ). Como hemos mencionado antes, en razón de la presencia del factor de escala
2 en la T
transformación w, las constantes de error estático correspondientes para GD( w ) y para G( s ) se hacen idénticas. Sin el factor de escala
4.
2 no sería cierto. T
La transformación w puede generar uno o más ceros en el semiplano derecho en GD( w ). Si existen uno o más ceros en el semiplano derecho, entonces GD( w ) es una función de transferencia de fase no mínima (estabilidad). Debido a que los ceros en el semiplano derecho están generados por la operación de muestreo y retención, las localizaciones de estos ceros dependen del período de muestreo T. Los efectos de estos ceros en el semiplano derecho en la respuesta, se hacen menores conforme se reduce el período de muestreo T. Ahora consideremos los efectos de la respuesta del cero en el semiplano derecho en w =
2 2 . El cero en w = genera distorsión en la respuesta en T T
frecuencia conforme ν se acerca a
2 . T
- 229 -
Sistemas de Control en Tiempo Discreto
En vista de que
ν=
2 ω ⋅T ⋅ tan T 2
entonces, conforme ν se acerca a
ω ⋅T 2
ω=
y, por lo tanto,
=
2 ω ⋅T , tan se aproxima a 1, o bien T 2
π 4
π 2 ⋅T
π 1 Como ya se indicó, ω = ω s = es la frecuencia más alta que consideramos en T 2 la respuesta del sistema de control en tiempo discreto o digital. Por lo tanto, ω =
ωs 4
=
π ⋅T 2
, que es la mitad de la frecuencia más alta considerada,
está dentro del intervalo de frecuencia de interés. Así, el cero en w =
2 , que T
aparece en el semiplano derecho del plano w, afectará seriamente la respuesta. 5.
Debe hacerse notar que el método del diagrama de Bode en el plano w se utiliza con frecuencia, y muchos sistemas de control digital de éxito han sido diseñados mediante este procedimiento.
- 230 -
Capítulo 7: Análisis de Respuesta en Frecuencias
7.4 DIAGRAMAS DE BODE. En los sistemas de control en tiempo continuo de 'una entrada - una salida' (SISO), se ha utilizado mucho el diseño mediante diagramas de Bode. En particular, si la función de transferencia está en forma factorizada, es bien conocida la simplicidad y rapidez con la cual se puede dibujar y reformar un diagrama de Bode asintótico. 7.4.1.- Diagrama de Bode para sistemas continuos. Dado un sistema continuo lineal e
invariante en el tiempo, con función de transferencia G( s ), se puede representar una función de transferencia senoidal G( j ω ) con dos diagramas distintos en función de la frecuencia ω: la amplitud y el ángulo de fase. Un diagrama logarítmico o diagrama de Bode consta de estos dos trazados. Uno es el logaritmo del módulo de una función de transferencia senoidal, y el otro es su ángulo de fase, ambos en función de la frecuencia. La amplitud logarítmica de G( j ω ) se representa como 20 ⋅ log G ( j ⋅ ω ) , siendo el logaritmo en base 10. La unidad usada es el decibelio (dB). La ventaja principal del diagrama de Bode, es que se puede convertir la multiplicación de amplitudes en suma de las mismas. Por ejemplo,
si
G ( s ) = G1 ( s ) ⋅ G2 ( s ) ⇒
G ( j ⋅ ω ) = G1 ( j ⋅ ω ) ⋅ G2 ( j ⋅ ω )
⇒
log(G ( j ⋅ ω ) ) = log(G1 ( j ⋅ ω ) ) + log(G2 ( j ⋅ ω ) )
Además se dispone de un método simple para realizar una curva aproximada del logaritmo de la amplitud, basado en la aproximación asintótica. Este método por líneas rectas asíntotas es suficiente si sólo se necesita una información aproximada sobre las características de respuesta en frecuencia.
- 231 -
Sistemas de Control en Tiempo Discreto
Dado un sistema en tiempo continuo cuya función de transferencia en lazo abierto es
G (s) =
K ⋅ ( s − a1 ) ⋅ L ⋅ ( s − a m−1 ) ⋅ ( s − a m )
s N ⋅ ( s − b1 ) ⋅ ( s − b2 ) ⋅ L ⋅ ( s − bn− N )
m≤n
se dice que es un sistema tipo N (número de polos en s = 0). Para una entrada cuya función de transferencia es R(s), se llama error de estado estacionario a
s ⋅ R( s ) ess = lim s →0 1 + G ( s ) y en el caso discreto será
1 − z −1 ess = lim ⋅ R( z ) z →1 1 + G ( z ) se muestran una serie de definiciones, que serán útiles para comprender los apartados posteriores [REF. 2]: - Ganancia: Se llama K a la ganancia del sistema. - Ganancia en altas frecuencias:
- Ganancia en bajas frecuencias:
lim G ( j ⋅ ω )
ω →∞
lim G ( j ⋅ ω )
ω →0
- Constante de error estático de posición: En el caso discreto sería
- 232 -
K p = lim G ( s ) s →0
K p = lim G ( z ) z →1
Capítulo 7: Análisis de Respuesta en Frecuencias
- Constante de error estático de velocidad:
K v = lim s ⋅ G ( s ) s →0
K v = lim z ⋅ G ( z )
En el caso discreto sería
z →1
- Constante de error estático de aceleración:
K a = lim s 2 ⋅ G ( s ) s →0
K a = lim z 2 ⋅ G ( z )
En el caso discreto sería
z →1
- Tabla con el error en estado estacionario en respuesta a una entrada escalón, rampa y aceleración: Error en estado estacionario SISTEMA
Escalón
Rampa
r (t ) = 1
r (t ) = t
Tipo 0
1 1+ K p
∞
∞
Tipo 1
0
1 Kv
∞
Tipo 2
0
0
1 Ka
Aceleración
r (t ) =
1 2 ⋅t 2
- Frecuencia de cruce de ganancia: Frecuencia ω1 para la cual el valor absoluto G ( j ⋅ ω ) de la función de transferencia de lazo abierto es la unidad.
G ( j ⋅ ω1 ) = 1
⇒
20 ⋅ log10 G ( j ⋅ ω1 ) = 0
- 233 -
Sistemas de Control en Tiempo Discreto
- Frecuencia de cruce de fase: Se define como la frecuencia ω2 a la cual el ángulo de fase de la función de transferencia de lazo abierto es igual a -180º.
ángulo(G ( j ⋅ ω 2 ) ) = −180º
- Margen de fase: Cantidad de retardo de fase adicional necesaria a la frecuencia de cruce de ganancia, para que el sistema quede al borde de la inestabilidad. El margen de fase γ es 180º más el ángulo de fase φ de la función de transferencia de lazo abierto a la frecuencia de cruce de ganancia, o sea
γ = 180 + φ
con
φ = ángulo(G ( j ⋅ ω1 ) )
- Margen de ganancia: Es la inversa de G ( j ⋅ ω ) a la frecuencia de cruce de fase. Es decir,
Kg =
1 en dB G( j ⋅ω 2 )
⇒
− 20 ⋅ log⋅10 G ( j ⋅ ω 2 ) dB
- Frecuencia de corte: Se denomina frecuencia de corte ωc a la frecuencia a la cual el valor de la respuesta de frecuencia de lazo cerrado está 3 dB por debajo de su valor a frecuencia cero. Es decir,
20 ⋅ log10
G( j ⋅ ω c ) 1 + G( j ⋅ ω c )
G( j ⋅ω c ) = −3 dB 1 + G( j ⋅ ω c )
- 234 -
= −3 en dB, es decir
Capítulo 7: Análisis de Respuesta en Frecuencias
- Ancho de banda: Es el rango de frecuencias 0 ≤ ω ≤ ω c en el que el valor del lazo cerrado no cae por debajo de -3 dB.
Ejemplo diagrama de Bode:
Dada la función de transferencia G ( s ) =
10 s ⋅ ( s + 1) ⋅ ( s + 5)
> restart: with(plots):
> G := s -> 10/(s*(s+1)*(s+5)); G := s → 10
1 s (s + 1) (s + 5)
Se realiza el procedimiento 'Diag_Bode', que recibe como parámetro la función
G ( j ⋅ ω ) , los índices del eje 'x', y la constante que se pintará como recta en el diagrama de magnitudes (0 dB en lazo abierto, -3 dB en lazo cerrado). -
En el eje 'x' de los diagramas, se representa la variable fr = log10 (ω ) . Para saber cuál es una frecuencia determinada, basta con elevar a 10 la cifra que se ve:
-
ω = 10 fr .
En el eje 'y', en el diagrama de magnitudes se representa la amplitud en decibelios ( 20 ⋅ log10 G ( j ⋅ ω ) dB). En el diagrama de fases, se representa la fase, ángulo(G ( j ⋅ ω ) ) , en grados.
- 235 -
Sistemas de Control en Tiempo Discreto
-
En el diagrama de las magnitudes, se pinta en gris la recta equivalente a la contante que se pasa como parámetro (0 dB para el sistema en lazo abierto, -3 dB para el sistema en lazo cerrado.
-
En el diagrama de las fases, se pinta en gris la recta equivalente a -180º.
-
Como la función de Maple 'argument' da valores en radianes, se hace gra dos =
necesario pasar a grados:
-
radianes ⋅ 180
π
La función de Maple 'argument' da sus valores entre − π y π radianes, mientras que el diagrama de Bode pinta la fase con valores entre − 2 ⋅ π y 0 radianes (al margen de la conversión a grados antes mencionada). La función 'arg', que representa la fase, tiene en cuenta este detalle.
-
La función 'mag', representa la magnitud. 'mag' y 'arg' son variables globales del procedimiento, para poder usarlas posteriormente.
> Diag_Bode := proc(f, ind1, ind2, cte) local
ctem, ctea, m, a, w, p1, p2;
global mag, arg; with(plots): # rectas adicionales ctem := plot(cte, w=ind1..ind2, color=wheat, axes=FRAME): ctea := plot(-180, w=ind1..ind2, color=wheat, axes=FRAME): (continúa)
- 236 -
Capítulo 7: Análisis de Respuesta en Frecuencias
# magnitud de G mag := w -> abs(subs(omega=w, f)): m
:= plot(20*log[10](mag(10^w)), w=ind1..ind2, color=blue, axes=FRAME, title=`magnitud de G`):
# fase de G arg
:= w -> argument(subs(omega=w, f)) (signum(argument(subs(omega=w, f)))+1)*Pi;
a
:= plot(evalf(arg(10^w)*180/Pi), w=ind1..ind2, color=blue, axes=FRAME, title=`fase de G`):
# diagramas p1
:= display({m, ctem}, labels=[fr, dB], title=`MAGNITUD DE G`, tickmarks=[10,15]):
p2
:= display({a, ctea}, labels=[fr, grados], title=`FASE DE G`, tickmarks=[10,15]):
print(p1); print(p2); end:
- 237 -
Sistemas de Control en Tiempo Discreto
> # -1 = log[10](1/10), 3 = log[10](1000) Diag_Bode(G(I*omega), -1, 3, 0);
Puede verse que en ambos diagramas el eje de frecuencias (eje 'x') es el mismo. Esto será muy útil para calcular las frecuencias de cruce, como se verá más adelante. La ganancia K del sistema es 10. Se calculan ahora las constantes de error estáticas:
- 238 -
Capítulo 7: Análisis de Respuesta en Frecuencias
> Kp := limit(G(s), Kv := limit(s*G(s),
s=0, right);
Kp := limit(G(s), s=0, left);
s=0);
Ka := limit(s^2*G(s), s=0); Kp := ∞
Kp := −∞
Kv := 2 Ka := 0
Para calcular los siguientes valores, ampliamos la zona del diagrama de Bode que nos interesa.
> Diag_Bode(G(I*omega), 0, 0.5, 0);
- 239 -
Sistemas de Control en Tiempo Discreto
Calculamos ahora la frecuencia de cruce de ganancia. En el diagrama de Bode se puede apreciar que la magnitud tiene valor 0 dB para ω = 10 0.09 = 1.23 , aproximadamente. Lo cual nos da un margen de fase aproximado de -155º + 180º = 25º (como los diagramas de magnitud y fase tienen el mismo eje de frecuencias, basta con trazar una línea vertical desde el punto donde la magnitud es cero, hasta el punto correspondiente en la fase, y sumarle 180º al valor que se obtenga). Lo comprobamos con Maple, aprovechando que 'mag' y 'arg' son variables globales.
> evalf(arg(10^0.09)*180/Pi) + 180; 25.2820203
Del mismo modo, se ve que la frecuencia de cruce de fase es ω = 10 0.35 = 2.24 . Por lo que el margen de ganancia es de 10 dB (mirando el diagrama de Bode, se traza una línea vertical desde el punto donde la fase es -180º, hasta el punto correspondiente de la magnitud, y el valor se multiplica por -1).
> evalf(-20*log[10](mag(10^0.35))); 9.563028400
Frecuencia de corte (lazo cerrado):
> Gc := abs(G(I*omega)/(1+G(I*omega))): ecu := evalf(20*log[10](Gc)) = -3: solve(ecu, omega[c]);
Debido a los complejos cálculos que debe realizar Maple, este método no sirve para determinar la frecuencia de corte en lazo cerrado. Lo hacemos con el diagrama de Bode.
- 240 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Se dibujan la magnitud y la fase de la función de transferencia de lazo cerrado.
> Diag_Bode(G(I*omega)/(1+G(I*omega)), 0, 0.5, -3);
Mirando el diagrama de Bode de la respuesta de frecuencia de lazo cerrado, para que 20 ⋅ log10
G( j ⋅ ω c ) = −3 dB, se ve que fr = 0.3, y por lo tanto 1 + G( j ⋅ ω c )
> omega[c] := 10^0.3; ωc := 1.995262315 y el ancho de banda comprende el intervalo cerrado [0, ω c ] .
- 241 -
Sistemas de Control en Tiempo Discreto
7.4.2.- Ventajas del método del diagrama de Bode para el diseño en w. El método
del diagrama de Bode es en particular útil en lo que se refiere al análisis y el diseño de los sistemas de control, por las siguientes razones: 1.
Se pueden traducir las especificaciones de la respuesta transitoria a los correspondientes de la respuesta en frecuencia en términos del margen de fase, del margen de ganancia, del ancho de banda y así sucesivamente. Estas especificaciones se pueden manejar fácilmente en el diagrama de Bode. En particular, los márgenes de fase y de ganancia se pueden leer en forma directa del diagrama de Bode.
2.
El diseño de un compensador digital (o un controlador digital) para satisfacer las especificaciones dadas (en función del margen de fase o del margen de ganancia) puede llevarse a cabo en el diagrama de Bode de una forma sencilla y simple.
- 242 -
Capítulo 7: Análisis de Respuesta en Frecuencias
7.5 TÉCNICAS DE COMPENSACIÓN. Antes de analizar los procedimientos de diseño en el plano w (apartado 7.6), revisemos las técnicas de compensación mediante el adelanto de fase, el atraso de fase, y el atraso-adelanto de fase. [REF. 3].
Sea un sistema de control en tiempo continuo cuya función de transferencia es G( s ), y cuya respuesta en frecuencias viene dada por G( s ) en s = j ω , es decir, G( j ω ). Supongamos que discretizamos el sistema por invarianza al escalón, de forma que obtenemos la siguiente función transferencia de pulso:
1 − e − s⋅T G D ( z ) = Ζ ⋅ G ( s ) s
A continuación hacemos la transformación
T ⋅w 2 z= T 1− ⋅ w 2 1+
obteniendo la siguiente función transferencia de pulso en w:
G D ( w) = G D ( z )
T 1+ 2 ⋅w z= T 1− ⋅w 2
- 243 -
Sistemas de Control en Tiempo Discreto
cuya respuesta en frecuencias, como ya hemos visto (transformación w), viene dada por GD( w ) en w = j ν , es decir, GD( j ν ). Tal y como se indicó antes, los métodos convencionales de respuesta en frecuencia en el plano s se aplican a las funciones de transferencia en el plano w. Recordamos que el diagrama de Bode para una función GD( j ν ) consiste en dos trazas por separado, la magnitud logarítmica G D ( j ⋅ν )
en función del logaritmo de ν y el
ángulo de fase de GD( j ν ) en función del logaritmo de ν. La traza de la magnitud logarítmica se basa en la factorización de GD( j ν ), de tal forma que funciona en el principio de sumar los términos factorizados individuales, en vez de multiplicar los términos individuales. Las técnicas conocidas de trazas asintóticas son aplicables y, por lo tanto, se puede dibujar con rapidez la curva de magnitud si se utilizan asíntotas con líneas rectas. Mediante el uso del diagrama de Bode, se puede diseñar un compensador digital o un controlador digital a través de técnicas de diseño convencionales. Se considera el sistema mostrado en la figura.
Se supone que las especificaciones de diseño están dadas en términos de margen de fase, margen de ganancia, constantes de error estático de velocidad y similares.
- 244 -
Capítulo 7: Análisis de Respuesta en Frecuencias
7.5.1 Compensador de adelanto de fase.
La compensación mediante el adelanto de fase es comúnmente utilizada para mejorar los márgenes de estabilidad. Este tipo de compensación aumenta el ancho de banda del sistema, luego aumenta la ganancia en altas frecuencias. Por lo tanto, el sistema tiene una velocidad de respuesta más rápida. Sin embargo, un sistema que utilice compensación mediante adelanto de fase puede estar sujeto a problemas de ruido de alta frecuencia, en vista de su incremento en la ganancia en alta frecuencia. Para diseñar un compensador de adelanto de fase seguimos los siguientes pasos: 1.-
Se supone la forma siguiente para el compensador de adelanto:
GC ( w) = K ⋅
1+τ ⋅ w 1 + α ⋅τ ⋅ w
0 <α <1
La función de transferencia en lazo abierto para el sistema compensado puede escribirse:
GC ( w) ⋅ G D ( w) = K ⋅
=
1+τ ⋅ w ⋅ G D ( w) 1 + α ⋅τ ⋅ w
1+τ ⋅ w ⋅ G D1 ( w) 1 + α ⋅τ ⋅ w
- 245 -
Sistemas de Control en Tiempo Discreto
siendo G D1 ( w) = K ⋅ G D ( w) . Determinar la ganancia K que satisfaga el requisito de la constante de error estático de velocidad Kv dada, recordando que
K v = lim w ⋅ GC ( w) ⋅ G D ( w) w→ 0
2.-
Utilizando la ganancia K así determinada, dibujar el diagrama de Bode de GD1 ( w ), el sistema ajustado por ganancia, pero no compensado. Evaluar el margen de fase.
3.-
Determinar el ángulo de adelanto de fase θ necesario a añadirse al sistema, siendo θ la diferencia entre el margen de fase que se quiere tener, y el margen de fase que se tiene sin el controlador (margen de fase de GD( w )).
4.-
Añadir a θ entre 5º y 12º para compensar el desplazamiento de la frecuencia de cruce de ganancia. Definir este θ añadido como adelanto de fase máximo θm, (también llamado φm). Determinar el factor de atenuación α a partir de la siguiente ecuación:
sin(θ m ) =
1−α 1+α
- 246 -
Capítulo 7: Análisis de Respuesta en Frecuencias
5.-
Determinar el punto de frecuencia donde la magnitud del sistema no 1 compensado G D1 ( j ⋅ ω ) es igual a − 20 ⋅ log . Escoger esta frecuencia α como la nueva frecuencia de cruce de ganancia. Esta frecuencia corresponde a
νm =
1
α ⋅τ
, y a esta frecuencia se presenta el desplazamiento máximo de fase
θm. 6.-
7.-
Determinar las frecuencias de esquina del compensador de adelanto como sigue:
Cero del compensador de adelanto:
ν=
Polo del compensador de adelanto:
ν=
1
τ 1 α ⋅τ
Verificar el margen de ganancia para asegurarse de que es satisfactorio. La función principal del compensador de adelanto es proporcionar atenuación en
el rango de altas frecuencias para un margen de fase suficiente para el sistema. Las características del atraso de fase no tienen consecuencias en la compensación mediante atraso.
Ejemplo:
Como ejemplo de diseño de un compensador de adelanto de fase, ver el ejemplo del apartado 7.6.
- 247 -
Sistemas de Control en Tiempo Discreto
7.5.2 Compensador de atraso de fase.
La compensación mediante atraso de fase reduce la ganancia del sistema en frecuencias más altas, sin reducir la ganancia del sistema en frecuencias más bajas. El ancho de banda del sistema queda reducido y, por lo tanto, el sistema tiene una velocidad de respuesta más baja. Debido a la reducida ganancia en alta frecuencia, se puede aumentar la ganancia total del sistema y, por lo tanto, incrementarse la ganancia en baja frecuencia y mejorarse la precisión en estado permanente. También puede atenuarse cualquier ruido de alta frecuencia que se presente en el sistema. Para diseñar un compensador de atraso de fase se deben seguir los siguientes pasos: 1.-
Se supone la forma siguiente para el compensador de atraso:
GC ( w) = K ⋅
1+τ ⋅ w , 1 + β ⋅τ ⋅ w
1< β
La función de transferencia en lazo abierto del sistema compensado puede escribirse:
GC ( w) ⋅ G D ( w) = K ⋅
=
1+τ ⋅ w ⋅ G D ( w) 1 + β ⋅τ ⋅ w
1+τ ⋅ w ⋅ G D1 ( w) 1 + β ⋅τ ⋅ w
- 248 -
Capítulo 7: Análisis de Respuesta en Frecuencias
siendo G D1 ( w) = K ⋅ G D ( w) . Determinar la ganancia K que satisfaga el requisito de la constante de error estático de velocidad Kv dada. Recordando que
K v = lim w ⋅ GC ( w) ⋅ G D ( w) w→ 0
2.-
Si el sistema no compensado GD1( w ) no satisface las especificaciones referentes a los márgenes de fase y de ganancia, entonces encontrar el punto de frecuencia donde el ángulo de fase de la función de transferencia en lazo abierto sea igual a -180º más el margen de fase requerido. El margen de fase requerido es el margen de fase especificado más 5º a 12º. (La adición de 5º a 12º compensa el atraso de fase del compensador de atraso). Escoger esta frecuencia como la nueva frecuencia de cruce de ganancia.
3.-
A fin de evitar efectos perjudiciales de atraso de fase en razón del compensador de atraso, el polo y el cero del compensador de atraso deberán estar localizados bastante más abajo que la nueva frecuencia de cruce de ganancia. Por lo tanto, escoger la frecuencia de esquina ν =
1
τ
(correspondiente al cero del
compensador de atraso de fase) una década por debajo de la nueva frecuencia de cruce. Una relación igual a 10 se conoce como década de frecuencias [REF. 2]. 4.-
Determinar la atenuación necesaria para llevar la curva de magnitud hacia abajo hasta 0 dB en la nueva frecuencia de cruce de ganancia. Notando que esta atenuación es − 20 ⋅ log( β ) , determinar el valor de β. Entonces la otra frecuencia de esquina (que corresponde al polo del compensador de atraso) queda determinada a partir de ν =
1 . β ⋅t
- 249 -
Sistemas de Control en Tiempo Discreto
Ejemplo:
Se vuelve a utilizar el ejemplo del apartado 7.6, pero diseñando un controlador para un margen de fase de 45º. El compensador de atraso tiene la forma:
GC ( w) =
1+τ ⋅ w 1 + β ⋅τ ⋅ w
β >1
> restart: with(inttrans): with(plots): Digits:=5:
> T := 1/5: i1 := subs(t=T*t, simplify(invlaplace((K/(s^2*(s+1))), s, t))): G[D](z) := evalf(simplify((z-1)/z*ztrans(i1, t, z))):
A continuación transformamos la función transferencia de pulso GD( z ) en una función de transferencia GD( w ) mediante la transformación bilineal correspondiente:
> G[D](w) := simplify(subs(z=(1+w*(T/2)) / (1-w*(T/2)), G[D](z))); GD( w ) := −.10000
( −10. + w ) K ( 11070. + 37. w ) ( 11070. + 11107. w ) w
- 250 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Se trata de un compensador de atraso de fase. Esta es una de las formas más sencillas de la función de transferencia del controlador digital. La función de transferencia en lazo abierto es
> G[C](w) := (1+ tau*w) / (1+beta*tau*w); G[C](w)*G[D](w); GC( w ) := −.10000
1+τw 1+β τw
( 1 + τ w ) ( −10. + w ) K ( 11070. + 37. w ) ( 1 + β τ w ) ( 11070. + 11107. w ) w
La constante de error estático de velocidad Kv queda especificada como 2 seg −1 . Por lo tanto,
2 = K v = lim ( w ⋅ GC ( w) ⋅ G D ( w)) w→ 0
↔K =2
Sustituimos K = 2 en GD( w ).
> G[D2](w) := factor(subs(K=2, G[D](w))); GD2( w ) := −.00066625
( −10. + w ) ( w + 299.19 ) ( w + .99667 ) w
- 251 -
Sistemas de Control en Tiempo Discreto
DIAGRAMA DE BODE DEL SISTEMA: Primero es necesario ejecutar el procedimiento 'Diagrama_Bode', del ejemplo del apartado 7.6. Como todavía no se tiene el valor exacto del controlador, se muestra sólo el diagrama de Bode de GD( j ν ).
> G[D3](v) := subs(w=I*nu, G[D2](w)): Diagrama_Bode(G[D3](v), 0, 1, -1, 3, 0);
- 252 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Se amplía la zona que interesa:
> Diagrama_Bode(G[D3](v), 0, 1, 0, 0.6, 0);
Mirando en el Diagrama de Bode: 0.1
Margen de Fase: 30º
0.51
Margen de Ganancia: 14dB
- Frecuencia de Cruce de Ganancia: fr = 0.1
ν = 10
- Frecuencia de Cruce de Fase:
ν = 10
fr = 0.5
- 253 -
Sistemas de Control en Tiempo Discreto
Las especificaciones requieren, además de Kv = 2, de un margen de fase de 45º y una ganancia de por lo menos 10 dB. Diseñemos un controlador digital que satisfaga estas especificaciones.
Diseño del compensador de atraso: Ya que las especificaciones exigen un margen de fase de 45º, el ángulo adicional del adelanto de fase necesario para satisfacer este requisito es de 15º (en el diagrama de Bode anterior, se aprecia que el margen de fase de GD( j ν ) es de -150º + 180º = 30º). El margen de fase requerido es aproximadamente de 53º (margen de fase especificado más entre 5º y 12º). Esto significa que se han añadido 8º para compensar el desplazamiento de la ganancia en la frecuencia de cruce. En el Diagrama de Bode se ve que la nueva frecuencia de cruce de ganancia es ν = 10 −0.2 = 0.63
> evalf(argGd(10^(-0.2))*180/Pi)+ 180; 10^(-0.2);
54.17 .63096
Frecuencia de esquina ν =
1
τ
(correspondiente al cero del compensador de
atraso), una década por debajo de la nueva frecuencia de cruce: 0.063 =
- 254 -
1
τ
Capítulo 7: Análisis de Respuesta en Frecuencias
Despejando, se obtiene el valor de τ:
> ecu := 0.063096 = 1/tau: tau := solve(ecu, tau); τ := 15.849
En la nueva frecuencia de cruce de ganancia, la magnitud es de 9 dB. Se determina la atenuación necesaria para llevar la curva de magnitud a 0 dB, siendo dicha atenuación − 20 ⋅ log10 ( β ) .
> evalf(20*log[10](magGd(10^(-0.2)))); beta := magGd(10^(-0.2)); 8.5744 β := 2.6836
Por lo tanto, la otra frecuencia de esquina queda determinada como ν =
> 1/(beta*tau); .023511
La función del controlador se muestra a continuación:
> G[C](w) := (1+tau*w)/(1+tau*beta*w); GC( w ) :=
1 + 15.849 w 1 + 42.532 w
- 255 -
1 = 0.02 β ⋅τ
Sistemas de Control en Tiempo Discreto
Diagrama de Bode:
> G[C2](v) := subs(w=I*nu, G[C](w)): Diagrama_Bode(G[D3](v), G[C2](v), 1, -1, 3, 0);
- 256 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Se amplía la zona que interesa:
> Diagrama_Bode(G[D3](v), G[C2](v), 2, -0.3, 0.6, 0);
En el diagrama se observa que se satisfacen los requisitos dados: - Margen de fase:
-130º + 180º = 50º
- Margen de ganancia:
-(-23 dB)
- 257 -
= 23 dB.
Sistemas de Control en Tiempo Discreto
Precaución. Una vez diseñado el compensador de atraso en el plano w, GC ( w ) deberá
transformarse en el compensador de atraso en el plano z, GC ( z ). Note que el polo y el cero en el compensador de atraso en el plano z están muy cerca uno de otro. (Están cerca del punto z = 1). Ya que los coeficientes del filtro se deben realizar mediante palabras binarias que utilizan un número limitado de bits, si el número de bits empleado resulta insuficiente, las localizaciones de polos y ceros del filtro pueden no realizarse tal y como se desea, y el compensador resultante podría no comportarse como se espera. Es importante que el polo y el cero del compensador de atraso se presenten en un número finito de puntos discretos asignables. En algunas aplicaciones, un compensador de atraso de fase es colocado en cascada con un compensador de adelanto de fase. Un compensador en serie como éste se conoce como un compensador de atraso-adelanto de fase. Al utilizar este tipo de compensador se puede incrementar la ganancia en baja frecuencia (lo que significa una mejoría en la precisión en estado permanente), mientras que al mismo tiempo se puede aumentar el ancho de banda y los márgenes de estabilidad. Observaciones sobre el problema de cuantización de los coeficientes. Desde
el punto de vista de la implementación en un microprocesador de los compensadores de adelanto de fase, atraso de fase y atraso-adelanto de fase, los compensadores de adelanto de fase no presentan problemas de cuantización de coeficientes, porque las localizaciones de los polos y de los ceros están bien separadas. Sin embargo, en el caso de los compensadores de atraso de fase y de los compensadores de atraso-adelanto de fase, la red de atraso de fase plantea un problema de cuantización de los coeficientes, porque las localizaciones de polos y de ceros están cercanas entre sí (están cerca del punto z = 1). [REF. 3].
- 258 -
Capítulo 7: Análisis de Respuesta en Frecuencias
7.6 PROCEDIMIENTO DE DISEÑO EN EL PLANO W. Refiriéndonos al sistema de control digital de la figura, el procedimiento de diseño en el plano w puede enunciarse como sigue [REF. 4]:
Datos:
función de transferencia continua de la planta Gp( s ) período de muestreo T Paso 1: Obtener la función de transferencia discretizada de la planta precedida por un
mantenedor de orden cero (ver discretización por invarianza al escalón). 1 − e − s⋅T Transformar G D ( z ) = Ζ ⋅ G p ( s) GD( w ) mediante la transformación s bilineal
w ⋅T 2 z= w ⋅T 1− 2
1+
- 259 -
Sistemas de Control en Tiempo Discreto
Es importante que el período de muestreo sea elegido adecuadamente. Una regla práctica que da Ogata [REF. 3] es muestrear a una frecuencia de 10 veces la del ancho de banda del sistema continuo en lazo cerrado. Es decir, el ancho de banda de
G ( s) . 1 + G(s)
Paso 2: Determinar la ganancia del sistema para satisfacer la especificación del error
permanente [REF. 4]. Paso 3: Sustituir w = j ν en GD( w ) y representar el diagrama de Bode para el valor de
la ganancia que hemos calculado. Determinar la frecuencia de cruce de la ganancia y el margen de fase. Paso 4: Determinar la función de transferencia del controlador
GC ( w) =
1+τ ⋅ w 1 + α ⋅τ ⋅ w
utilizando las técnicas convencionales de diseño para sistemas de control en tiempo continuo. La distorsión entre las escalas de ν y ω debe tenerse en cuenta cuando se decide, por ejemplo, la frecuencia de cruce de la ganancia o el ancho de banda. Paso 5: Transformar la función de transferencia del controlador GC( w ) en GC( z )
mediante la transformación bilineal dada por
w=
2 z −1 ⋅ T z +1
- 260 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Paso 6: Realizar la función de transferencia GC( z ) mediante un algoritmo
computacional.
Ejemplo:
Considerar el sistema de control de la figura. Diseñar un controlador digital en el plano w de tal forma que el margen de fase sea 50º, el margen de ganancia sea de por lo menos 10 dB, y la constante de error estático de velocidad Kv sea 2 seg −1 . Suponer que el período de muestreo es T = 0.2 segundos. [REF. 3].
Primero obtenemos la función transferencia de pulso GD( z ) de la planta que está precedida por un mantenedor de orden cero:
> restart: with(inttrans): Digits:=5: with(plots):
- 261 -
Sistemas de Control en Tiempo Discreto
> T := 1/5: i1 := subs(t=T*t, simplify(invlaplace( (K/(s^2*(s+1))), s, t))): G[D](z) := factor(evalf(simplify((z-1)/z*ztrans(i1, t, z)))); GD( z ) := .81873
K ( .022880 z + .021400 ) ( z − 1. ) ( z − .81873 )
A continuación transformamos la función transferencia de pulso GD( z ) en una función de transferencia GD( w ) mediante la transformación bilineal correspondiente:
> G[D](w) := simplify(subs(z=(1+w*((1/5)/2)) / (1-w*((1/5)/2)), G[D](z))); GD( w ) := −1.6375
( −10. + w ) ( 11070. + 37. w ) K ( 181270. + 181870. w ) w
Un compensador de adelanto de fase, probablemente satisfará todos los requisitos. Por lo tanto, probaremos compensación mediante adelanto (si no se satisfacieran todos los requisitos, habría que probar con otro tipo de compensador). Ahora supongamos que la función de transferencia del controlador digital
GC( w ) tiene una ganancia unitaria para el intervalo de baja frecuencia y la forma siguiente, con 0 < α < 1 :
> G[C](w) := (1 + tau*w) / (1 + alpha*tau*w); limit(subs(w=j*nu, G[C](w)), nu=0); GC( w ) :=
1+τw 1+ατw
1
- 262 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Se trata de un compensador de adelanto de fase. Esta es una de las formas más sencillas de la función de transferencia del controlador digital. La función de transferencia en lazo abierto es
> eval(G[C](w)*G[D](w)); GD( w ) := −1.6375
( −10. + w ) ( 11070. + 37. w ) K ( 181270. + 181870. w ) w
La constante de error estático de velocidad Kv queda especificada como 2 seg −1 . Por lo tanto,
2 = K V = lim (w ⋅ GC ( w) ⋅ G D ( w) ) w→ 0
↔K =2
La ganancia K se determina entonces como el valor 2.
> eval(limit(w*G[C](w)*G[D](w), w=0)); K
> solve(2=%, K); 2 Sustituimos K = 2 en GD( w ), y la expresión resultante es:
> G[D2](w) := factor(subs(K=2, G[D](w))); GD2( w ) := −.00066630
( −10. + w ) ( w + 299.17 )
- 263 -
( w + .99670 ) w
Sistemas de Control en Tiempo Discreto
DIAGRAMA DE BODE DEL SISTEMA. Se realiza ahora el procedimiento 'Diagrama_Bode', muy similar al procedimiento Diag_Bode del ejemplo del apartado 7.4.1. Recibe como parámetros dos funciones y un contador , además de los índices del eje 'x' y una constante, que se pintará como recta en el diagrama de magnitudes (recta de 0 dB en lazo abierto, recta de -3 dB en lazo cerrado). - Las funciones son G D ( j ν ) y GC ( j ν ). - El contador vale 1, 2 ó 3 según se quiera dibujar sólo G D ( j ν ), G D ( j ν ) y
GC ( j ν ) G D ( j ν ), o las dos anteriores y GC ( j ν ). - Los dos siguientes parámetros son los índices del eje 'x'. - El último parámetro es la constante que se pinta en el diagrama de magnitudes. - La función G D ( j ν ) se dibuja en color azul. - La función GC ( j ν ) G D ( j ν ) se dibuja en color negro. - La función GC ( j ν ) se dibuja en color negro, punteado. - Se definen como variables globales: - magnitud y fase de G D ( j ν ):
'magGd', 'argGd'.
- magnitud y fase de GC ( j ν ):
'magGc', 'argGc'.
- magnitud y fase de GC ( j ν ) G D ( j ν ):
'magGcGd', 'argGcGd'.
- 264 -
Capítulo 7: Análisis de Respuesta en Frecuencias
> Diagrama_Bode := proc(f1, f2, cont, ind1, ind2, cte) local
cm, ca, mGd, mGc, mGcGd, aGd, aGc, aGcGd, v, p1, p2;
global
magGd, magGc, magGcGd, argGd, argGc, argGcGd;
with(plots): if (cont<1) or (cont>3) then ERROR(`invalid cont`, cont); fi; # rectas adicionales cm := plot(cte, v=ind1..ind2, color=wheat, axes=FRAME): ca := plot(-180, v=ind1..ind2, color=wheat, axes=FRAME): # magnitud de Gd magGd := v -> abs(subs(nu=v, f1)): mGd
:= plot(20*log[10](magGd(10^v)), v=ind1..ind2, color=blue, axes=FRAME):
# fase de Gd argGd
:= v -> argument(subs(nu=v, f1)) (signum(argument(subs(nu=v, f1)))+1) *Pi;
aGd
:= plot(evalf(argGd(10^v)*180/Pi), v=ind1..ind2, color=blue, axes=FRAME): (continúa)
- 265 -
Sistemas de Control en Tiempo Discreto
if (cont>1) then # magnitud de Gc magGc := v -> abs(subs(nu=v, f2)): mGc := plot(20*log[10](magGc(10^v)), v=ind1..ind2, color=black, axes=FRAME, style=point): # fase de Gc argGc := v -> argument(subs(nu=v, f2)) (signum(argument(subs(nu=v, f2)))+1) *Pi; aGc := plot(evalf(argGc(10^v)*180/Pi), v=ind1..ind2, color=black, axes=FRAME, style=point): # magnitud de GcGd magGcGd := v -> abs( subs(nu=v, f1) * subs(nu=v, f2) ): mGcGd
:= plot(20*log[10](magGcGd(10^v)), v=ind1..ind2, color=black, axes=FRAME):
# fase de GcGd argGcGd := v -> argument( subs(nu=v, f1)*subs(nu=v, f2)) (signum(argument( subs(nu=v, f1)*subs(nu=v, f2)))+1) *Pi; aGcGd := plot(evalf(argGcGd(10^v)*180/Pi), v=ind1..ind2, color=black, axes=FRAME): fi: (continúa)
- 266 -
Capítulo 7: Análisis de Respuesta en Frecuencias
# DIAGRAMAS if (cont=1) then p1 := display({mGd, cm},
labels=[fr, dB],
title=`MAGNITUD DE G`, p2 := display({aGd, ca},
tickmarks=[10,15]): labels=[fr, grados],
title=`FASE DE G`,
tickmarks=[10,15]):
elif (cont=2) then p1 := display({mGd, mGcGd, cm}, title=`MAGNITUDES`, p2 := display({aGd, aGcGd, ca}, title=`FASES`,
labels=[fr, dB], tickmarks=[10,15]): labels=[fr, grados], tickmarks=[10,15]):
else p1 := display({mGd, mGcGd, mGc, cm}, title=`MAGNITUDES`,
tickmarks=[10,15]):
p2 := display({aGd, aGcGd, aGc, ca}, title=`FASES`,
labels=[fr, dB], labels=[fr, grados],
tickmarks=[10,15]):
fi: print(p1); print(p2); end:
- 267 -
Sistemas de Control en Tiempo Discreto
Como todavía no se tiene el valor exacto del controlador, se muestra sólo el diagrama de Bode de G D ( j ν ).
> G[D3](v) := subs(w=I*nu, G[D2](w)): Diagrama_Bode(G[D3](v), 0, 1, -1, 3, 0);
- 268 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Para apreciar mejor los márgenes de ganancia y fase de la función, se amplía la zona que nos interesa del Diagrama de Bode:
> Diagrama_Bode(G[D3](v), 0, 1, 0, 0.6, 0);
Mirando en el Diagrama de Bode: - Frecuencia de Cruce de Ganancia: fr = 0.1 ⇒ ν = 10 0.1 ⇒ Margen de Fase: - Frecuencia de Cruce de Fase: ⇒ Margen de Ganancia:
-150º + 180º = 30º fr = 0.5 ⇒ ν = 10 0.5 -(-14) = 14 dB
- 269 -
Sistemas de Control en Tiempo Discreto
Las especificaciones requieren, además de Kv = 2, un margen de fase de 50º y una ganancia de por lo menos 10 dB. Diseñemos un controlador digital que satisfaga estas especificaciones. Diseño del compensador de adelanto: Ya que las especificaciones exigen un margen de fase de 50º, el ángulo adicional del adelanto de fase necesario para satisfacer este requisito es de 20º (en el diagrama de Bode anterior se ha visto que el margen de fase de G D ( j ⋅ν ) es de 30º). Para obtener un margen de fase de 50º sin reducir el valor de K, el compensador de adelanto debe de contribuir el ángulo de adelanto de fase requerido. Si observamos que la adición de un compensador de adelanto modifica la curva de magnitud en el diagrama de Bode, la frecuencia de cruce de ganancia se desplazará hacia la derecha. Si se considera el desplazamiento de la ganancia en la frecuencia de cruce, debemos suponer que φ m, que es el ángulo máximo de adelanto de fase requerido, es aproximadamente de 28º. Esto significa que se han añadido 8º (se añaden entre 5º y 12º) para compensar el desplazamiento de la ganancia en la frecuencia de cruce. En vista de que
sin(φ m ) =
> ecu
1−α 1+α
:= sin(28*Pi/180) = (1-alpha)/(1+alpha);
alpha := evalf(solve(ecu, alpha)); 7 1−α ecu := sin π = 45 1 + α α := .36101 φ m = 28° corresponde a α = 0.361 , confirmándose que se trata de adelanto de fase (0 < α < 1) .
- 270 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Una vez que el factor α de atenuación se ha determinado sobre la base del ángulo de adelanto de fase requerido, el siguiente paso es determinar las frecuencias de esquina ν =
1
τ
yν =
1 del compensador de adelanto. Para ello, primero notamos α ⋅τ
que el ángulo de adelanto de fase máximo φ m , se presenta en la media geométrica de las dos frecuencias de esquina, es decir ν = curva de magnitud en ν =
1
α ⋅τ
1
α ⋅τ
. La cantidad de modificación en la
debido a la inclusión del término
1 + τ ⋅ j ⋅ν 1 + α ⋅ τ ⋅ j ⋅ν
1 ν = α ⋅τ
=
1 + τ ⋅ j ⋅ν es 1 + α ⋅ τ ⋅ j ⋅ν
1
α
A continuación encontramos el punto de frecuencia donde la magnitud del 1 sistema no compensado es − 20 ⋅ log α
> 1/sqrt(alpha): -20*log(%); -4.4246
Para encontrar el punto de frecuencia donde la magnitud es -4.4 dB, se mira el anterior diagrama de Bode. Parece que la frecuencia es ν = 10 0.25 = 1.78 .
- 271 -
Sistemas de Control en Tiempo Discreto
Mediante prueba y error con Maple parece que la frecuencia sería 1.7:
> evalf(20*log[10](magG(10^0.25))); evalf(20*log[10](magG(10^0.23))); 10^0.23; -5.0596 -4.3694 1.6982
En ν = 1.7 la magnitud se convierte en alrededor de -4.4 dB. Seleccionamos esta frecuencia como la nueva frecuencia de cruce de ganancia νc. Al observar que esta frecuencia corresponde a ν c =
1
α ⋅τ
se tiene:
> nu[c] := 1.7; nu[c] = 1/sqrt(alpha*tau); ν c := 1.7
1.7 = 1.6643
1 τ
> tau := solve(%, tau); alpha*tau; τ := .95844 .34601
- 272 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Por lo tanto, el compensador de adelanto determinado es GC ( w) =
1+τ ⋅ w 1 + α ⋅τ ⋅ w
> G[C](w) := (1+tau*w)/(1+alpha*tau*w) ; GC( w ) :=
1 + .95844 w 1 + .34601 w
Las curvas de magnitud y de ángulo de fase para GC( j ν ) y las curvas de magnitud y de ángulo de fase de la función de transferencia en lazo abierto se muestran mediante curvas sólidas en el diagrama de Bode.
> G[C2](v) := subs(w=I*nu, G[C](w)): Diagrama_Bode(G[D3](v), G[C2](v), 2, -1, 3, 0);
- 273 -
Sistemas de Control en Tiempo Discreto
Ampliando la zona que nos interesa, vemos que el margen de fase es de 50º y el margen de ganancia es de 14 dB.
> Diagrama_Bode(G[D3](v), G[C2](v), 2, 0, 0.8, 0);
- 274 -
Capítulo 7: Análisis de Respuesta en Frecuencias
La función de transferencia del controlador que acabamos de dar (GC( w )) se transformará ahora de regreso al plano z mediante la correspondiente transformación bilineal:
w=
z −1 2 z −1 2 z −1 ⋅ = ⋅ = 10 ⋅ T z +1 1 z +1 z +1 5
> G[C](z) := simplify(subs(w=10*(z-1)/(z+1), G[C](w))); GC( z ) := 4.
26461. z − 21461. 44601. z − 24601.
La función transferencia de pulso en lazo abierto del sistema compensado es
> G[D](z) := subs(K=2, G[D](z)): G[C](z)*G[D](z); 6.5500
( 26461. z − 21461. ) ( .022880 z + .021400 ) ( 44601. z − 24601. ) ( z − 1. ) ( z − .81873 )
La función transferencia de pulso en lazo cerrado del sistema que hemos diseñado es
GC ( z ) ⋅ G D ( z ) C ( z) = R( z ) 1 + GC ( z ) ⋅ G D ( z )
> simplify(G[C](z)*G[D] (z) / (1+G[C](z)*G[D] (z))); ( 26461. z − 21461. ) ( 572. z + 535. )
131. .22300 10
11 3 11 2 11 11 z − .50876 10 z + .40876 10 z − .11575 10
- 275 -
Sistemas de Control en Tiempo Discreto
7.7 EJERCICIOS.
> restart: with(inttrans): with(plots): Digits:=5:
Para realizar los siguientes ejercicios, es necesario haber ejecutado primero el procedimiento 'Diagrama_Bode’. 7.7.1.- Obtenga la salida en estado permanente de el sistema definido en el ejemplo del apartado 7.3, a una entrada senoidal u ( k T ) = A sin( k ω T ).
0.6321 . z − 0.3679
Tenemos la función de transferencia G D ( z ) = Sustituimos z por e
j ωT
en GD( z ):
> G[D] := z -> 0.6321/(z-0.3679); G[D](exp(I*omega*T)): convert(%, trig); GD := z → .6321
.6321
1 z − .3679
1 cos( ω T ) + I sin( ω T ) − .3679
- 276 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Se calculan ahora la magnitud y el ángulo de fase.
> M := simplify(evalc(abs(G[D](exp(I*omega*T))))); M := 63.210
1 −7358. cos( ω T ) + 11354.
> theta := simplify(evalc(argument(G[D](exp(I*omega*T))))); θ := arctan( −1. sin( ω T ), cos( ω T ) − .36790 )
Por
lo
tanto,
la
salida
en
estado
permanente
se
puede
escribir
como
A ⋅ M ⋅ sin(k ⋅ ω ⋅ T + θ ) .
> x[ss](k*T) := A*M*sin(k*omega*T+theta); x ss( k T ) := 63.210
A sin( k ω T + arctan( −1. sin( ω T ), cos( ω T ) − .36790 ) ) −7358. cos( ω T ) + 11354.
- 277 -
Sistemas de Control en Tiempo Discreto
7.7.2.- Dado el sistema que se muestra en la figura,
diseñe un controlador digital para el mismo. Utilice el método del diagrama de Bode en el plano w. Las especificaciones de diseño consisten en que el margen de fase debe ser de 55º, el margen de ganancia por lo menos de 10 dB, y la constante -1
de error estático de velocidad de 5 seg . El período de muestreo se especifica como 0.1 seg.
La transformada z de la planta precedida por un mantenedor de orden cero es
1 − e −Ts 1 = (1 − z −1 ) ⋅ Ζ G D ( z ) = Ζ 2 2 s ⋅ ( s + 2) ⋅ + s ( s 2 )
> T := 1/10: subs(t=T*t, invlaplace(1/(s^2*(s+2)), s, t)): G[D](z) := factor(evalf((1-z^(-1))*ztrans(%, t, z))); GD( z ) := .0046627
z + .94338
( z − 1. ) ( z − .81836 )
- 278 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Transformamos G D ( z ) en G D ( w ) utilizando la transformación bilineal correspondiente:
T ⋅w 2 z= T ⋅w 1− 2 1+
> G[D](w) := simplify(subs(z=(1+w*T/2)/(1-w*T/2), G[D](z))); GD( w ) := −.0011657
7 ( −20. + w ) ( .19434 10 + 2831. w ) ( 90820. + 45459. w ) w
Escogemos ahora la función de transferencia del controlador en la forma
> G[C](w) := K*(1+w/a)/(1+w/b);
GC( w ) :=
donde a =
1
τ
y b=
w K 1 + a 1+
w b
1 . La función de transferencia en lazo abierto es α ⋅τ
> simplify(G[C](w)*G[D](w)); −.0011657
7 K ( a + w ) b ( −20. + w ) ( .19434 10 + 2831. w ) a ( b + w ) ( 90820. + 45459. w ) w
- 279 -
Sistemas de Control en Tiempo Discreto
La constante de error estático de velocidad requerida es Kv = 5 seg −1 , por lo tanto
> K[v] := 5; ecu
:= K[v] = limit(w*G[C](w)*G[D](w), w=0);
K
:= solve(ecu, K); Kv := 5 ecu := 5 = .49888 K K := 10.022
Utilizando una técnica de diseño convencional, se determina la función de transferencia del controlador digital como
> G[C](w) := simplify(10*((1+w/1.994)/(1+w/12.5))); GC( w ) := 10
1 + .50150 w 1 + .080000 w
Por lo tanto, la función de transferencia en lazo abierto se convierte en
> simplify(G[C](w)*G[D](w)); −.00014571
7 ( 2000. + 1003. w ) ( −20. + w ) ( .19434 10 + 2831. w ) ( 25. + 2. w ) ( 90820. + 45459. w ) w
- 280 -
Capítulo 7: Análisis de Respuesta en Frecuencias
A continuación se muestra el diagrama de Bode del sistema, donde puede observarse que se ha utilizado un compensador de adelanto de fase.
> G[D2](v) := subs(w=I*nu, G[D](w)): G[C2](v) := subs(w=I*nu, G[C](w)): Diagrama_Bode(G[D2](v), G[C2](v), 2, -1, 3, 0);
- 281 -
Sistemas de Control en Tiempo Discreto
Se amplía la zona que nos interesa.
> Diagrama_Bode(G[D2](v), G[C2](v), 2, -0.4, 1.6, 0);
En el diagrama parece que la frecuencia de cruce de ganancia de GC ( j ⋅ν ) ⋅ G D ( j ⋅ν ) es fr = 0.65, ν = 4.4668. El margen de fase parece 180º - 120º = 60º.
> evalf(argGcGd(10^0.65)*180/Pi)+ 180; 58.16
- 282 -
Capítulo 7: Análisis de Respuesta en Frecuencias
Observando el diagrama de Bode, la frecuencia de cruce de fase de GC ( j ⋅ν ) ⋅ G D ( j ⋅ν ) 1.25
es fr = 1.25, ν = 10
= 17.78.
El margen de ganancia es de aproximadamente 12 dB.
> -(evalf(20*log[10](magGGD(10^1.2)))); 13.297
La función de transferencia en lazo abierto da el margen de fase de aproximadamente 58º y el margen de ganancia de alrededor de 13 dB. La constante de error estático de velocidad es K v = 5 ⋅ seg −1 . Por lo tanto, se satisfacen todos los requisitos y la función de transferencia del controlador diseñado GC ( w ) es satisfactoria.
A continuación, transformamos GC ( w ) en GC ( z ). Se deberá utilizar la siguiente transformación bilineal:
w=
2 z −1 ⋅ T z +1
> G[C](z) := simplify(subs(w=(2/T*((z-1)/(z+1))), G[C](w))); GD( z ) := .50000
1103. z − 903. 13. z − 3.
La función transferencia de pulso en lazo abierto ahora se convierte en
> simplify(G[C](z)*G[D](z)); .0011657
( 1103. z − 903. ) ( 50000. z + 47169. ) ( 13. z − 3. ) ( z − 1. ) ( 25000. z − 20459. )
- 283 -
Sistemas de Control en Tiempo Discreto
7.7.3.- Considere el sistema de control mostrado en la figura.
La función de transferencia de la planta es
1 s2
. Diseñe un controlador digital en el
plano w, tal que el margen de fase sea de 50º, y el margen de ganancia sea por lo menos 10 dB. El período de muestreo es T = 0.1. Después de diseñar el controlador, obtenga la constante de error estático de velocidad Kv.
Primero se obtiene la transformada z precedida por un mantenedor de orden cero:
> T := 1/10: subs(t=T*t, invlaplace(1/(s^3), s, t)): G[D](z) := evalf(simplify((1-z^(-1))*ztrans(%, t, z))); GD( z ) := .0050000
z + 1. ( z − 1. )
2
Se transforma G D( z ) en G D( w ) utilizando la transformación bilineal correspondiente:
T ⋅w 2 z= T ⋅w 1− 2
1+
- 284 -
Capítulo 7: Análisis de Respuesta en Frecuencias
> G[D](w) := simplify(subs(z=(1+w*T/2)/(1-w*T/2), G[D](z))); GD( w ) := −.050000
−20. + w w
2
A continuación se muestra el diagrama de Bode de G ( j v ) que se obtiene.
> G[D2](v) := subs(w=I*nu, G[D](w)): Diagrama_Bode(G[D2](v), 0, 1, -1, 3, 0);
- 285 -
Sistemas de Control en Tiempo Discreto
Se amplía la zona que nos interesa.
> Diagrama_Bode(G[D2](v), 0, 1, -1, 3, 0);
En el diagrama parece que la frecuencia de cruce de ganancia es fr = 0.
- 286 -
Capítulo 7: Análisis de Respuesta en Frecuencias
> evalf(argG(10^0)*180/Pi)+180; -2.86
Observe que el margen de fase es de aproximadamente -3º. Será necesario añadir una red de adelanto para conseguir el margen de fase y el margen de ganancia requeridos. Mediante la aplicación de una técnica convencional de diseño, puede verse que la red de adelanto siguiente satisface los requisitos:
> G[C](w) := 4*((1+w)/(1+w/16)); G[C](w) := simplify(%); GC( w ) := 4
1+w 1+
GC( w ) := 64
1 16
w
1+w 16 + w
Se muestra ahora el diagrama de Bode completo, omitiendo la función GC ( j ν ).
> G[C2](v) := subs(w=I*nu, G[C](w)): Diagrama_Bode(G[D2](v), G[C2](v), 2, -1, 3, 0);
- 287 -
Sistemas de Control en Tiempo Discreto
Se amplía la zona que nos interesa.
> Diagrama_Bode(G[D2](v), G[C2](v), 2, -0.1, 0.4, 0);
La adición de esta red de adelanto modifica el diagrama de Bode. La frecuencia de cruce de ganancia se recorre a ν = 10 0.6 . Note que el adelanto de fase máximo φm que puede producir esta red de adelanto es 62º, ya que
1−α 1+α
φ m = arcsin
- 288 -
Capítulo 7: Análisis de Respuesta en Frecuencias
> phi[m] := evalf(1/sin((1-1/16)/(1+1/16))); φ m := 61.925
A la frecuencia de cruce de ganancia ν = 10 0.6 , el ángulo de fase de GC ( j ν ) G D ( j ν ) se convierte en -129º.
> evalf(argGcGd(10^0.6)*180/Pi); -129.33
Por lo tanto, el margen de fase es –129º + 180º = 51º. El margen de ganancia se determina aproximadamente en 14 dB. Por lo tanto, se satisfacen las especificaciones de diseño dadas. Lo comprobamos con Maple.
> evalf(argGcGd(10^0.6)*180/Pi); 13.909
Ahora transformamos la función de transferencia del controlador GC ( w ) en GC ( z ) mediante la transformación bilineal correspondiente:
w=
2 z −1 ⋅ T z +1
> G[C](z) := simplify(subs(w = (2/T)*(z-1)/(z+1), G[C](w))); GC( z ) := 16
21 z − 19 9z−1
- 289 -
Sistemas de Control en Tiempo Discreto
Entonces, la función transferencia de pulso en lazo abierto se convierte en
> simplify(G[C](z)*G[D](z)); .080000
( 21. z − 19. ) ( z + 1. ) ( 9. z − 1. ) ( z − 1. )
2
La constante de error estático de velocidad se obtiene como sigue:
(1 − z −1 ) ⋅ GC ( z ) ⋅ G D ( z ) z →1 T
K v = lim
> K[v] := limit((1-z^(-1))*G[C](z)*G[D](z)/T, z = 1, right); K[v] := limit((1-z^(-1))*G[C](z)*G[D](z)/T, z = 1, left); Kv := Float( ∞ )
Kv := Float( −∞ )
La constante de error estático de velocidad tiende al infinito. Como el sistema es de tipo 2 (dos polos en s = 0), el error en estado estacionario en la respuesta rampa es cero (ver tabla).
- 290 -
Capítulo 7: Análisis de Respuesta en Frecuencias
7.8 REFERENCIAS.
[REF. 1]
R.V. Churchill, J. W. Brown, Variable Compleja y Aplicaciones, Mc-Graw Hill, 1992
[REF. 2]
K. Ogata, Ingeniería de Control Moderna, Prentice-Hall, 1980
[REF. 3]
K. Ogata, Sistemas de Control en Tiempo Discreto, Prentice-Hall, 2ª edición (1996)
[REF. 4]
J. Rebollo Rodríguez , SECAD: Módulo de Diseño de Controladores, U.P.M., Escuela Superior de Ingenierios de Telecomunicaciones, curso 1990-91
- 291 -