Está en la página 1de 14

DEPARTAMENTO DE ELÉCTRICA Y

ELECTRÓNICA

CONTROL DIGITAL

ANÁLISIS DE ESTABILIDAD DE SISTEMAS


DISCRETOS
DOCENTE: ING. RODOLFO GORDILLO

INTEGRANTES:

Fonseca Diego
Pilataxi Adrian
Zapata Andres

NRC: 4413

Sangolquí, 23 mayo 2019


1. Analice la estabilidad del sistema:
𝟏
𝑮(𝒔) =
𝒔(𝒔𝟐 + 𝒔 + 𝟏)
Si se utiliza un controlador proporcional discreto con T=0.1 s.

Encuentre la ganancia crítica y periodo crítico a través del test de Jury y la función “ultim”
suministrada (aula vitual).

1 1
𝐺(𝑠) = = 3
𝑠(𝑠 2 + 𝑠 + 1) 𝑠 + 𝑠 2 + 𝑠)

Usamos el código de Matlab para digitalizar por el método de ZOH

(𝑧) = (𝑧 − 1)(𝑧 − 0.9048)(𝑧 − 0.6065) + 𝑘[0.000144(𝑧 + 3.228)(𝑧 + 0.2295)]

0.0001625𝑧 2 + 0.0006338𝑧 + 0.0001546


𝐺(𝑧) =
𝑧 3 − 2.895𝑧 2 + 2.8𝑧 − 0.9048

𝐸𝑐𝑢𝑎𝑐𝑖ó𝑛 𝑐𝑎𝑟𝑎𝑐𝑡𝑒𝑟𝑖𝑠𝑡𝑖𝑐𝑎:

𝑃(𝑧) = 𝑧 3 + (−2.895 + 0.0001625 𝑘)𝑧 2 + (2.8+0.0006338 𝑘)𝑧 + (−0.9048 +


0.0001546 k)

𝐶𝑟𝑖𝑡𝑒𝑟𝑖𝑜 𝑑𝑒 𝑒𝑠𝑡𝑎𝑏𝑖𝑙𝑖𝑑𝑎𝑑

i. 𝒑(𝟏) > 𝟎
𝑝(1) = 1 + (−2.895 + 0.0001625 𝑘) + (2.8+0.0006338 𝑘) + (−0.9048 + 0.0001546 k) > 0
𝑘 > −0.21
ii. (−𝟏)𝟑 𝒑(−𝟏) > 𝟎

−1 + (−2.895 + 0.0001625 𝑘) − (2.8+0.0006338 𝑘) + (−0.9048 + 0.0001546k ) < 0


𝑘 > −23996.84

iii. |𝒂𝟎 | < 𝒂𝒏 > 𝟎


𝒂𝒏 = 𝟏

0.9048 + 0.0001546 k > 1

𝑘 > 615.7826

𝑨𝒓𝒓𝒆𝒈𝒍𝒐 𝒅𝒆 𝑱𝒖𝒓𝒚
Fila 𝒛𝟎 𝒛𝟏 𝒛𝟐 𝒛𝟑
1 -0.9048+0.0001546 k 2.8+0.0006338 𝑘 −2.895 + 0.0001625 𝑘 1

2 1 −2.895 + 0.0001625 𝑘 2.8+0.006338 k -0.9048+0.0001546 k


3 𝑏0 𝑏1 𝑏2

−0.9048 + 0.0001546𝑘 1
𝒃𝟎 = | |
1 −0.9048 + 0.0001546𝑘
−8 2
𝒃𝟎 = 2.3901 𝑥10 𝑘 − 2.7976𝑥10−4 𝑘 − 0.1813

−0.9048 + 0.0001546𝑘 2.8 + 0.0006338𝑘


𝑏2 = | |
1 −2.895 + 0.0001625
−8 2
𝑏2 = 2.5122𝑥10 𝑘 − 0.0012 𝑘 − 0.1806
|𝒃𝟎 | < |𝒃𝟐 |

2.3901 𝑥10−8 𝑘 2 − 2.7976𝑥10−4 𝑘 − 0.1813 < 2.5122𝑥10−8 𝑘 2 − 0.0012 𝑘 − 0.1806

2.3901 𝑥10−8 𝑘 2 + 2.7976𝑥10−4 𝑘 + 0.1813 < 2.5122𝑥10−8 𝑘 2 + 0.0012 𝑘 + 0.1806

−0.1221𝑥10−8 𝑘 2 − 9.2024𝑥10−4 𝑘 + 7𝑥10−4 < 0


𝑃𝑜𝑟 𝑙𝑜 𝑡𝑎𝑛𝑡𝑜:

𝒌𝒖 < 𝟎. 𝟗𝟓
−2.895 + 0.9048 + 0.95(0.0001625 − 0.0001546)
𝛼=
−2
𝜶 = 𝟎. 𝟗𝟗𝟓
2𝜋𝑇
𝑇𝑢 =
cos −1 (𝛼)
𝑻𝒖 = 𝟔. 𝟑𝟒
𝑪𝒐𝒎𝒑𝒓𝒐𝒃𝒂𝒄𝒊ó𝒏 𝒑𝒐𝒓 𝑺𝒐𝒇𝒕𝒘𝒂𝒓𝒆.

%CÓDIGO UTILIZANDO LA FUNCION (ULTIM)


gs=tf(1,[1 1 1 0])
T=0.1;
gz=c2d(gs,T)
[B,A]=tfdata(gz,'v');
b1 = B(2);
b2 = B(3);
b3 = B(4);
a1 = A(2);
a2 = A(3);
a3 = A(4);
[kpu,tu]=ultim(B(2:4),A(2:4),T)
gz =

0.00014405 (z+3.228) (z+0.2295)

-------------------------------

(z-1) (z-0.9048) (z-0.6065)

Sample time: 0.1 seconds

Discrete-time zero/pole/gain model.

Ku =

23.2079

Tu =

3.2050

2. En el sistema de la figura 1

Si K=2 y T variable, determine el periodo de muestreo máximo que permite controlar


digitalmente al sistema en forma estable. Valide su respuesta a través del análisis de
estabilidad mediante la respuesta de frecuencia variando el periodo de muestreo entre los
valores límite.
1
𝐺(𝑠) =
𝑠(𝑠 + 1)
1
𝐺(𝑧) = (1 − 𝑧 −1 )𝑍 [ 2 ]
𝑠 (𝑠 + 1)

1 𝐴 𝐵 𝐶
= + +
𝑠 2 (𝑠 + 1) 𝑠 2 𝑠 𝑠 + 1

𝐴 = 1 𝐵 = −1

𝐶=1

𝑧−1 1 1 1
𝐺(𝑧) = 𝑍[ 2 − + ]
𝑧 𝑠 𝑠 𝑠+1

𝑧−1 𝑇𝑧 𝑧 𝑧
𝐺(𝑧) = [ 2
− + ]
𝑧 (𝑧 − 1) 𝑧 − 1 𝑧 − 𝑒 −𝑇

𝑇 𝑧−1
𝐺(𝑧) = −1+
𝑧−1 𝑧 − 𝑒 −𝑇

𝑧(𝑒 −𝑇 + 𝑇 − 1) + (1 − 𝑒 −𝑇 − 𝑇𝑒 −𝑇 )
𝐺(𝑧) =
(𝑧 − 1)(𝑧 − 𝑒 −𝑇 )

𝑧(𝑇 + 𝑒 −𝑇 − 1) + 1 − 𝑇𝑒 −𝑇 − 𝑒 −𝑇
𝐺(𝑧) =
𝑧 2 − 𝑧(1 + 𝑒 −𝑇 ) + 𝑒 −𝑇

𝑏1 𝑧 + 𝑏2
𝐺(𝑧) =
𝑧2 + 𝑎1 𝑧 + 𝑎2

𝑃(𝑧) = 𝑧 2 − 𝑧(1 + 𝑒 −𝑇 ) + 𝑒 −𝑇 + 𝐾[𝑧(𝑇 + 𝑒 −𝑇 − 1) + 1 − 𝑇𝑒 −𝑇 − 𝑒 −𝑇 ]

𝑎2 + 𝑘𝑏2 < 1

𝑒 −𝑇 + 𝑘(−𝑒 −𝑇 − 𝑇𝑒 −𝑇 + 1) < 1

𝐾=2

𝑒 −𝑇 + 2(−𝑒 −𝑇 − 𝑇𝑒 −𝑇 + 1) < 1

−𝑒 −𝑇 − 2𝑇𝑒 −𝑇 + 1 < 0

1
𝑒 −𝑇 <
1 + 2𝑇
Determinación del periodo maximo

𝑻 = 𝟏. 𝟐𝟔𝟕
El sistema es estable porque el margen de ganancia y el margen de fase es mayor que cero

3. En el sistema anterior, si T=0.1 s determine el rango de K para que el sistema sea estable a
través del criterio de Routh Hurwitz mediante la transformación previa del sistema
equivalente discreto al dominio w (transformada bilineal):

𝟏+𝒘
𝒛=
𝟏−𝒘
La función de transferencia del sistema anterior por ZOH con 𝑇 = 0.1 esta dada por:
0.009675𝑧 + 0.009358
𝐺(𝑧) = 0.5 [ ]
𝑧 2 − 1.905𝑧 + 0.9048
Transformada bilineal:

1+𝑤
0.009675 ∗ 1 − 𝑤 + 0.009358
𝐺(𝑤) = 0.5 [ ]
1+𝑤 2 1+𝑤
(1 − 𝑤 ) − 1.905 ∗ 1 − 𝑤 + 0.9048

(1 − 𝑤)[0.009675 ∗ (1 + 𝑤) + 0.009358 ∗ (1 − 𝑤)]


𝐺(𝑤) = 0.5 [ ]
(1 + 𝑤)2 − 1.905 ∗ (1 + 𝑤)(1 − 𝑤) + 0.9048 ∗ (1 − 𝑤)2

0.009675 ∗ (1 − 𝑤 2 ) + 0.009358 ∗ (1 − 2𝑤 + 𝑤 2 )
𝐺(𝑤) = 0.5 [ ]
(1 + 2𝑤 + 𝑤 2 ) − 1.905 ∗ (1 − 𝑤 2 ) + 0.9048 ∗ (1 − 2𝑤 + 𝑤 2 )
0.009675 − 0.009675𝑤 2 + 0.009358 − 0.0187𝑤 + 0.009358𝑤 2
𝐺(𝑤) = 0.5 [ ]
1 + 2𝑤 + 𝑤 2 − 1.905 + 1.905𝑤 2 + 0.9048 − 1.81𝑤 + 0.9048𝑤 2

−3.17𝑥10−4 𝑤 2 − 0.0187𝑤 + 0.019


𝐺(𝑤) = 0.5 [ ]
3.8098𝑤 2 + 0.19𝑤 − 2𝑥10−4

−8.32𝑥10−5 𝑤 2 − 4.91𝑥10−3 𝑤 + 4.987𝑥10−3


𝐺(𝑤) = 0.5 [ ]
3.8098(𝑤 2 + 0.05𝑤 − 5.25𝑥10−5 )

−𝟒. 𝟏𝟔𝒙𝟏𝟎−𝟓 𝒘𝟐 − 𝟎. 𝟎𝟒𝟗𝟔𝒘 + 𝟎. 𝟗𝟗


𝑮(𝒘) =
𝒘𝟐 + 𝒘 − 𝟎. 𝟎𝟐
Analizando la estabilidad por el criterio R-H tenemos:

𝑄(𝑠) = 𝑠 2 + 𝑠 − 0.02 + 𝐾(−4.16𝑥10−5 𝑠 2 − 0.0496𝑠 + 0.99)

𝑄(𝑠) = 𝑠 2 (1 − 4.16𝑥10−5 𝐾) + 𝑠(1 − 0.0496𝐾) + (−0.02 + 0.99𝐾)

𝒔𝟑 𝟏 − 𝟒. 𝟏𝟔𝒙𝟏𝟎−𝟓 𝑲 −𝟎. 𝟎𝟐 + 𝟎. 𝟗𝟗𝑲


𝒔𝟐 1 − 0.0496𝐾 0
𝒔𝟏 b1 b2
𝒔𝟎 c1 c2

−5
|1 − 4.16𝑥10 𝐾 −0.02 + 0.99𝐾 |
𝑏1 = − 1 − 0.0496𝐾 0 = −0.02 + 0.99𝐾
1 − 0.0496𝐾
𝑏2 = 𝑐2 = 𝑐1 = 0

𝒔𝟑 𝟏 − 𝟒. 𝟏𝟔𝒙𝟏𝟎−𝟓 𝑲 −𝟎. 𝟎𝟐 + 𝟎. 𝟗𝟗𝑲


𝒔𝟐 1 − 0.0496𝐾 0
𝒔𝟏 −0.02 + 0.99𝐾 0
𝒔𝟎 0 0

1 − 0.0496𝐾 > 0 −0.02 + 0.99𝐾 > 0


1 > 0.0496𝐾 0.99𝐾 > 0.02
𝐾 < 20.2 𝐾 > 0.02
El valor de K para que el sistema sea estable debe estar entre los 0.02 y 20.2

Comprobación en Matlab
Simulación en simulink

Graficas resultantes para:

• K = 15
Time Series Plot:
2

1.5

1
data

0.5

-0.5
0 5 10 15 20 25 30 35 40 45 50
Time (seconds)

• K = 0.01

Time Series Plot:


0.7

0.6

0.5

0.4
data

0.3

0.2

0.1

-0.1
0 5 10 15 20 25 30 35 40 45 50
Time (seconds)

• K = 21
Time Series Plot:
3

2.5

1.5
data

0.5

-0.5

-1
0 5 10 15 20 25 30 35 40 45 50
Time (seconds)

4. Determine el valor de Ku y Tu del ejercicio anterior y sintonice un controlador PID digital sin
filtro de la acción derivativa por el método de Ziegler Nichols. Digitalice el controlador a
partir de un PID analógico en su forma independiente, utilice Euler atraso para la acción
derivativa y Euler adelanto para la acción integral. Realice además una sintonización fina
para mejorar el ajuste inicial. Finalice con la realización del controlador en su versión dos
grados de libertad. Compare el desempeño de las dos versiones obtenidas.

Para calcular los valores de Ku y Tu se utilizará el programa Matlab


%Calculo de parametros
gs=zpk([],[0 -1],[2])
gz=c2d(gs,T)
[n,d]=tfdata(gz,'v') %extracción de los valores
ku=(1-d(3))/n(3) %ku=(1-a2)/b2
alfa=-1/2*(ku*n(2)+d(2)) %alfa=-1/2*(ku*b1+a1)
Tu=2*pi*T/acos(alfa)

Como resultado tenemos:


Ku = 10.1695
Tu = 1.4165
Para digitalizar el filtro tenemos:
1
𝐶(𝑠) = 𝑘 (1 + + 𝑠𝑇𝑑)
𝑠𝑇𝑖

Realizando una digitalización por Euler Atraso


𝑧−1
𝑠=
𝑧𝑇
Encontramos las siguientes equivalencias
𝑇 𝑇
𝑠0 = 𝑘 (1 + + ) = 𝟏𝟎. 𝟒𝟎𝟗𝟑
𝑇𝑖 𝑇𝑖
2𝑇
𝑠1 = 𝑘 (−1 − ) = −𝟏𝟐. 𝟗𝟗𝟑𝟖
𝑇𝑑
𝑇𝑑
𝑠2 = 𝑘 = 𝟏𝟎. 𝟖𝟎𝟑𝟖
𝑇
Equivalencias PID
𝐾𝑐 = 0.6𝐾𝑢 = 𝟔. 𝟏𝟎𝟏𝟕
𝑇𝑢
𝑇𝑖 = = 𝟎. 𝟕𝟎𝟖
2
𝑇𝑢
𝑇𝑑 = = 𝟎. 𝟏𝟕𝟕
8
Ensamblando el controlador
𝑠0 𝑧 2 + 𝑠1 𝑧 + 𝑠2
𝐶(𝑧) = ( )
𝑧2 − 𝑧
𝟏𝟎. 𝟒𝟏𝒛𝟐 − 𝟏𝟐. 𝟗𝟗𝒛 + 𝟏𝟎. 𝟖
𝑪(𝒛) =
𝒛𝟐 − 𝒛

5. Experimentalmente, si no se conoce el modelo de un proceso se recurre al método de la


última ganancia de Ziegler-Nichols. Sin embargo, no es conveniente llevar al proceso a
condiciones extremas. Como alternativa se recurre a la utilización de oscilaciones
controladas como por ejemplo el método del relé propuesto por Åström and Hägglund.
Realizar una simulación de aplicación de este método con el proceso del ejercicio 1.

Para calcular Kcr primero agregamos un relé que switcheara en cada


retroalimentación con una amplitud d=10 la cual usaremos en los cálculos.
Esta configuración se muestra en la Figura 1.

Figura 1: Sintonización del controlador con relé.


𝒂 = 𝟏𝟒. 𝟏𝟓
𝟒𝒅
𝒌𝒖 = = 𝟎. 𝟖𝟗𝟗
𝝅𝒂