Вы находитесь на странице: 1из 8

Entregable Nº 1:

Modelamiento de Sistemas de Tiempo Discreto

Diego Guamán, David Mayancela & Edwin Rodríguez


Mayo 21, 2018.

Universidad de las Fuerzas Armadas “ESPE”.


Departamento de la Eléctrica y Electrónica.
Control Digital

Abril – Agosto 2018


Ejercicios
Ejercicio 1. Considere el modelo genérico de un sistema de primer orden:

𝑘
𝐺(𝑠) =
𝑠+𝑎

Encuentre su modelo discreto por (a) ZOH y (b) mapeo de polos y ceros. Utilice un período de
muestreo de T segundos. Determine también la relación de los parámetros del modelo
discreto en función de los de tiempo continuo (muestreo inverso).

a) Por retenedor de orden cero ZOH.

𝑧−1 𝐺(𝑠) 𝑧−1 𝑘


𝐺(𝑧) = ( ) ℤ( )=( ) ℤ( )
𝑧 𝑠 𝑧 𝑠(𝑠 + 𝑎)

𝐴(𝑠 + 𝑎) + 𝐵𝑠 = 𝑘
𝑘
𝑘 𝐴 𝐵 𝑠𝑖: 𝑠 = 0 → 𝐴 =
= + 𝑎
𝑠(𝑠 + 𝑎) 𝑠 𝑠 + 𝑎
𝑘
{𝑠𝑖: 𝑠 = −𝑎 → 𝐵 = − 𝑎

𝑘 𝑘
𝑘 𝑧 𝑧
ℤ{ − 𝑎 } = (
𝑎 − )
𝑠 𝑠+𝑎 𝑎 𝑧 − 1 𝑧 − 𝑒 −𝑎𝑇

𝑘 𝑧−1
𝐺(𝑧) = (1 − )
𝑎 𝑧 − 𝑒 −𝑎𝑇

𝑘
(1 − 𝑒 −𝑎𝑇 )
𝐺(𝑧) = 𝑎
𝑧 − 𝑒 −𝑎𝑇

b) Por mapeo de polos y ceros.


 Número de polos: 𝑛 = 1 Número de ceros: 𝑞 = 0

1
𝐺̂ (𝑧) = (𝑧 + 1)𝑛−𝑞−1
𝑧 − 𝑒 −𝑎𝑇
𝑘
𝐾𝑏 = lim 𝐺(𝑠) =
𝑠→0 𝑎

𝑘 𝑇 0 1 𝑘
𝐾𝑧 = lim (( ) ) = (1 − 𝑒 −𝑎𝑇 )
𝑎 𝑧→1 𝑧 − 1 𝐺̂ (𝑧) 𝑎

𝑘
(1 − 𝑒 −𝑎𝑇 )
𝐺(𝑧) = 𝑎
𝑧 − 𝑒 −𝑎𝑇
𝑋(𝑧)
c) Si 𝐺(𝑧) = y expresando la función 𝐺(𝑧) en coeficientes negativos de 𝑧, además si
𝑈(𝑧)
𝑘
llamamos 𝑘𝑧 = 𝑎 (1 − 𝑒 −𝑎𝑇 ) y 𝑝𝑧 = 𝑒 −𝑎𝑇 , se obtiene:

𝑋(𝑧) 𝐾𝑧 𝑧 −1
=
𝑈(𝑧) 1 − 𝑝𝑧 𝑧 −1

𝑋(𝑧) − 𝑝𝑧 𝑧 −1 𝑋(𝑧) = 𝐾𝑧 𝑍 −1 𝑈(𝑧)

𝑥(𝑘) = 𝑝𝑧 𝑥(𝑘 − 1) + 𝐾𝑧 𝑢(𝑘 − 1)

𝑘
[𝑝𝑧 , 𝑘𝑧 ] = 𝑓(𝑘, 𝑇, 𝑎) = [𝑒 −𝑎𝑇 , (1 − 𝑒 −𝑎𝑇 )]
𝑎

Ejercicio 2. Considere el modelo genérico de un motor DC:

𝐾
𝐺(𝑠) =
𝑠(𝑠 + 𝑎)

Encuentre su modelo discreto por los dos métodos citados: ZOH y mapeo de polos y ceros.

a) Por Retenedor de Orden Cero - ZOH:

𝐺(𝑠)
𝐺(𝑧) = (1 − 𝑧 −1 ) 𝑍{ }
𝑠
𝐾
𝑠(𝑠 + 𝑎)
𝐺(𝑧) = (1 − 𝑧 −1 ) 𝑍{ }
𝑠
𝐾
𝐺(𝑧) = (1 − 𝑧 −1 ) 𝑍{ }
𝑠 2 (𝑠+ 𝑎)

𝐾 𝐾 𝐾
𝐺(𝑧) = (1 − 𝑧 −1 ) 𝑍{ − 2 + }
𝑎2 (𝑠 + 𝑎) 𝑎 ∗ 𝑠 𝑎 ∗ 𝑠 2

𝐾∗𝑧 𝐾∗𝑧 𝐾∗𝑇∗𝑧


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

𝑧−1 𝐾∗𝑧 𝐾∗𝑧 𝐾∗𝑇∗𝑧


𝐺(𝑧) = ( )( 2 − 2 + )
𝑧 𝑎 (𝑧 − 𝑒 ) 𝑎 (𝑧 − 1) 𝑎(𝑧 − 1)2
−𝑎𝑡

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

𝐾 (𝑧 − 1)2 − (𝑧 − 𝑒 −𝑎𝑇 )(𝑧 − 1) + 𝑎𝑇(𝑧 − 𝑒 −𝑎𝑇 )


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

𝐾 𝑧(𝑒 −𝑎𝑇 + 𝑎𝑇 − 1) − 𝑒 −𝑎𝑇 (1 − 𝑎) + 1


𝐺(𝑧) = 2 ( )
𝑎 𝑧 2 − (1 + 𝑒 −𝑎𝑇 )𝑧 + 𝑒 −𝑎𝑇
b) Por Mapeo de Polos y Ceros:

𝐾
𝐺(𝑠) =
𝑠(𝑠 + 𝑎)

𝑛=2 ; 𝑞=0 ; 𝑛−𝑞−1=1

𝑃 = [0 − 𝑎] ; 𝐶 =[]

(𝑧 + 1)𝑛−𝑞−1
𝐺̂ (𝑧) =
(𝑧 − 1)(𝑧 − 𝑒 −𝑎𝑇 )

𝐺(𝑧) = 𝑘𝑧 ∗ 𝐺̂ (𝑧)

𝑘𝐵 = lim 𝑠𝐺(𝑠)
𝑠→0

𝐾 𝐾
𝑘𝐵 = lim 𝑠 ∗ =
𝑠→0 𝑠(𝑠 + 𝑎) 𝑎

𝑇 1
𝑘𝑧 = 𝑘𝐵 ∗ lim ( )∗
𝑧→1 𝑧 − 1 ̂
𝐺 (𝑧)

𝐾 𝑇 (𝑧 − 1)(𝑧 − 𝑒 −𝑎𝑇 )
𝑘𝑧 = ∗ lim ( )∗
𝑎 𝑧→1 𝑧 − 1 (𝑧 + 1)

𝐾 𝑇(1 − 𝑒 −𝑎𝑇 )
𝑘𝑧 = ∗
𝑎 2

𝐺(𝑧) = 𝑘𝑧 ∗ 𝐺̂ (𝑧)

𝐾 𝑇(1 − 𝑒 −𝑎𝑇 ) (𝑧 + 1)
𝐺(𝑧) = ∗ ∗
𝑎 2 (𝑧 − 1)(𝑧 − 𝑒 −𝑎𝑇 )

𝐾 𝑇(1 − 𝑒 −𝑎𝑇 ) (𝑧 + 1)
𝐺(𝑧) = ∗ ∗ 2
𝑎 2 𝑧 − (1 + 𝑒 −𝑎𝑇 )𝑧 + 𝑒 −𝑎𝑇

Ejercicio 3. Encuentre el modelo ZOH del circuito serie R – L de la Fig. 1, el voltaje de la bobina
𝐿
es la salida. Dejar expresado en términos de 𝜏 = 𝑅 y el periodo de muestreo 𝑇

Figura 1 Circuito R – L
𝑉𝑖𝑛 (𝑠) = 𝐼(𝑠) · 𝑅 + 𝐼(𝑠) · 𝐿𝑠 ; 𝑉𝑜 (𝑠) = 𝐼(𝑠) · 𝐿𝑠

𝑉𝑖𝑛 (𝑠) = 𝑉𝑜 (𝑠)(𝑅 + 1)

𝑉𝑜 (𝑠) 𝐿𝑠
= 𝐺(𝑠) =
𝑉𝑖𝑛 (𝑠) 𝑅 + 𝐿𝑠
𝜏𝑠
𝐺(𝑠) =
𝜏𝑠 + 1

𝑧−1 𝐺(𝑠) 𝑧−1 𝜏


𝐺(𝑧) = ( ) ℤ( )=( ) ℤ( )
𝑧 𝑠 𝑧 𝜏𝑠 + 1

𝑧−1 1
𝐺(𝑧) = ( ) ℤ( )
𝑧 1
𝑠+𝜏

𝑧−1 𝑧
𝐺(𝑧) = ( )·( 1 )
𝑧 − ·𝑇
𝑧− 𝑒 𝜏

𝑧−1
𝐺(𝑧) = 1
𝑧 − 𝑒 −𝜏 ·𝑇

3. Evaluación
- Evalúe numéricamente los resultados de los ejercicios 1 y 2, para efecto utilice un
periodo de muestreo 𝑇 = 0.1 segundos, 𝑘 = 1 y 𝑎 = 2.

Ejercicio 1.

𝑘 1
(1 − 𝑒 −𝑎𝑇 ) (1 − 𝑒 −2(0.1) )
𝐺(𝑧) = 𝑎 = 2
𝑧 − 𝑒 −𝑎𝑇 𝑧 − 𝑒 −2(0.1)
0.090635
𝐺(𝑧) =
𝑧 − 0.81873

Ejercicio 2.

𝑇 = 0.1 𝑠𝑒𝑔𝑢𝑛𝑑𝑜𝑠 ; 𝐾=1 ; 𝑎=2

𝐾 𝑧(−2 + 1 + 𝑒 −𝑎𝑇 + 𝑎𝑇) + 1 − 𝑒 −𝑎𝑇 − 𝑎𝑇𝑒 −𝑎𝑇


𝒁𝑶𝑯: 𝐺(𝑧) = ( )
𝑎2 𝑧 2 − (1 + 𝑒 −𝑎𝑇 )𝑧 + 𝑒 −𝑎𝑇

1 𝑧(−2 + 1 + 𝑒 −2∗0.1 + 2 ∗ 0.1) + 1 − 𝑒 −2∗0.1 − 2 ∗ 0.1 ∗ 𝑒 −2∗0.1


𝐺(𝑧) = ( )
22 𝑧 2 − (1 + 𝑒 −2∗0.1 )𝑧 + 𝑒 −2∗0.1
0.0046825𝑧 + 0.00438
𝐺(𝑧) =
𝑧 2 − 1.8187𝑧 + 0.81873

𝐾 𝑇(1 − 𝑒 −𝑎𝑇 ) (𝑧 + 1)
𝑴𝒂𝒑𝒆𝒐: 𝐺(𝑧) = ∗ ∗ 2
𝑎 2 𝑧 − (1 + 𝑒 −𝑎𝑇 )𝑧 + 𝑒 −𝑎𝑇

1 0.1(1 − 𝑒 −2∗0.1 ) (𝑧 + 1)
𝐺(𝑧) = ∗ ∗ 2
2 2 𝑧 − (1 + 𝑒 −2∗0.1 )𝑧 + 𝑒 −2∗0.1

0.0045317𝑧 + 0.0045317
𝐺(𝑧) =
𝑧 2 − 1.8187𝑧 + 0.81873

- Utilizando la función 𝐶2𝐷 de Matlab, compruebe los resultados del ítem anterior.

Ejercicio 1.

Algoritmo Ejecución
[1] k = 1;
[2] a = 2;
0.09063
[3] Ts = 0.1; 𝐺𝑧 =
[4] Gs = tf(k,[1 a]); 𝑧 − 0.8187
[5] Gz = c2d(Gs,Ts,'zoh')

Ejercicio 2.
Algoritmo Ejecución
[1] k = 1;
[2] a = 2;
0.004683𝑧 + 0.004381
[3] Ts = 0.1; 𝐺𝑧 =
[4] Gs = tf(k,[1 a 0]); 𝑧 2 − 1.819𝑧 + 0.8187
[5] Gz = c2d(Gs,Ts,'zoh')

Algoritmo Ejecución
[1] k = 1;
[2] a = 2;
0.004534𝑧 + 0.004534
[3] Ts = 0.1; 𝐺𝑧 =
[4] Gs = tf(k,[1 a 0]); 𝑧 2 − 1.819𝑧 + 0.8187
[5] Gz = c2d(Gs,Ts,'matched')

Muestreo de Sistemas con Retardo [1] (consulta).

Dado que los retardos en sistemas obtenidos de procesos industriales son comunes, el
análisis de sus modelos matemáticos se dificulta. Para facilitar el análisis de estos sistemas
de infinitas dimensiones se toma en cuenta que la señal de control es constante entre
instantes de muestreo, logrando tratar el sistema como uno de dimensiones finitas.
Se puede empezar tratando el sistema descrito generalmente por:

𝑑𝑥(𝑡)
= 𝐴𝑥(𝑡) + 𝐵𝑢(𝑡 − 𝜏)
𝑑𝑡

en donde el retraso 𝜏 es menor o igual al periodo de muestreo. Para calcular el


Retenedor de Orden Cero se tiene entonces una integración en un periodo del sistema
resultando en:
𝑘ℎ+ℎ

𝑥(𝑘ℎ + ℎ) = 𝑒 𝐴ℎ 𝑥(𝑘ℎ) + ∫ 𝑒 𝐴(𝑘ℎ+ℎ−𝑠 ) 𝐵𝑢(𝑠 ′ − 𝜏)𝑑𝑠 ′
𝑘ℎ

A pesar que la señal retardada 𝑢(𝑡 − 𝜏) es constante a trozos, la señal cambiará entre
instantes de muestreo debido al mismo retraso. Por tanto se divide la integral en 2 partes
siendo 𝑢(𝑡 − 𝜏) constante en ambas llegando a
𝑘ℎ+ℎ

∫ 𝑒 𝐴(𝑘ℎ+ℎ−𝑠 ) 𝐵𝑢(𝑠 ′ − 𝜏)𝑑𝑠 ′ = 𝑏1 𝑢(𝑘ℎ − ℎ) + 𝑏𝑜 𝑢(𝑘ℎ)
𝑘ℎ

ℎ−𝜏
𝑏𝑜 = ∫ 𝑒 𝐴𝑠 𝑑𝑠 𝐵
0

𝜏
𝑏1 = 𝑒 𝐴(ℎ−𝜏) ∫ 𝑒 𝐴𝑠 𝑑𝑠 𝐵
0

Resultando en un sistema muestreado de la forma

𝑥(𝑘ℎ + ℎ) = 𝑒 𝐴ℎ 𝑥(𝑘ℎ) + 𝑏𝑜 𝑢(𝑘ℎ) + 𝑏1 𝑢(𝑘ℎ − ℎ)

Ejercicio Considere el siguiente sistema continuo

𝑒 −3𝑠
𝐺(𝑠) =
10𝑠 + 1

Encuentre el modelo discreto analíticamente si 𝑇 = 5 segundos y luego compruebe con la


función 𝐶2𝐷. Consultar el muestreo de sistemas con retardo de transporte cuando el retardo
no es múltiplo entero del periodo de muestreo.

Ejercicio resuelto en base al ejemplo resuelto 2.6 [1]

1 −3𝑠
10 𝑒
𝐺(𝑠) =
1
𝑠 + 10

1 1 −3𝑠
𝑠 𝐺(𝑠) + 𝐺(𝑠) = 𝑒
10 10
1 1
ℒ −1 {𝑠 𝐺(𝑠) + 𝐺(𝑠)} = ℒ −1 { 𝑒 −3𝑠 }
10 10
Como:

ℒ −1 {𝑒 −𝑎𝑠 𝐹(𝑠)} = 𝑓(𝑡 − 𝑎) · 𝑢(𝑡 − 𝑎)

𝑑 1 1
𝑔(𝑡) = − 𝑔(𝑡) + 𝑢(𝑡 − 3)
𝑑𝑡 10 10
τ=3 0≤τ≤T
1
𝛼=−
10
1
𝛽=
10

Nuestro sistema queda de la siguiente manera

𝑥(𝑘) = 𝑎𝑥(𝑘 − 1) + 𝑏0 𝑢(𝑘 − 1) + 𝑏1 𝑢(𝑘 − 2)

𝑎 = 𝑒 𝛼𝑇

𝛽 𝛼(𝑇−𝜏)
𝑏0 = (𝑒 − 1)
𝛼
𝛽 𝛼𝑇
𝑏1 = (𝑒 − 𝑒 𝛼(𝑇−𝜏) )
𝛼

Luego para la función 𝑥(𝑘) obtendremos la transformada Z de la siguiente manera:

𝑋(𝑧) = 𝑎𝑧 −1 𝑋(𝑧) + 𝑏0 𝑧 −1 𝑈(𝑧) + 𝑏1 𝑧 −2 𝑈(𝑧)

𝑋(𝑧) 𝑏0 𝑧 −1 +𝑏1 𝑧 −2
𝐺(𝑧) = =
𝑈(𝑧) 1 − 𝑎𝑧 −1

𝑏1 + 𝑏0 𝑧
𝐺(𝑧) = 𝑧 −1
𝑧−𝑎

Reemplazando valores

0.2122 + 0.18127𝑧
𝐺(𝑧) = 𝑧 −1
𝑧 + 0.6065

Algoritmo Ejecución
[1] T = 5;
[2] t = 3; 0.1813𝑧 + 0.2122
[3] Gs = tf(1,[10 1],'iodelay',t); 𝐺(𝑧) = 𝑧 −1
𝑧 − 0.6065
[4] Gz = c2d(Gs,T)

Referencias:
[1] Aströ m Karl Johan. and Wittenmark Bjö rn, Computer-controlled systems: theory and design.
Upper Saddle River, NJ: Prentice Hall, 1997

Вам также может понравиться