Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Mod Sim Discretos

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 29

Modelado y Simulación de Sistemas Discretos

Ingeniería Electrónica de Comunicaciones

Eva Besada Portas

Departamento de Arquitectura de Computadores y Automática.


Universidad Complutense de Madrid

Curso 2020-2021

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 1 / 57

Esquema

1 Objetivos

2 Ecuaciones en Diferencias

3 Función de Transferencia (FT)

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 2 / 57
Objetivos del tema

Los objetivos de este tema son estudiar:


Diferentes herramientas de modelado de sistemas discretos:
ecuaciones en diferencias y la función de transferencia
Transformaciones entre ambos tipos modelos: transformada Z
El cálculo de la respuesta de un sistema a una entrada partir de:
◮ La función de transferencia y las condiciones iniciales
◮ La función ponderatriz y la convolución
Herramientas de Matlab para el modelado y la simulación de
sistemas LTI discretos

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 3 / 57

Esquema

1 Objetivos

2 Ecuaciones en Diferencias
Ejemplos No Lineales
Ejemplos Lineales

3 Función de Transferencia (FT)

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 4 / 57
Ecuaciones en Diferencias I
La evolución de algunos sistemas se describe de forma mas
natural de forma discontinua o discreta (en vez de continua). En
dichos casos:
Las señales de entrada y las señales de salida se especifican
en unos instantes de tiempo determinados que podemos
asociar con los números enteros (u(n), y (n) con
n = 1, 2, ..., N).
La evolucion se representa como la variación o diferencias
que se da entre las señales en instantes de tiempo sucesivos.
Las ecuaciones en diferencias establecen las diferencias entre
diferentes señales en distintos instantes de tiempo n, por lo que
son la herramienta de modelado más utilizadas para representar
los sistemas dinámicos cuyas señales evolucionan de forma
discreta con el tiempo. Serán la técnica de modelado básico de los
sistemas discretos.
Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 5 / 57

Ecuaciones en Diferencias II

   
u1 (n) y1 (n)
 u2 (n)  u(n) y(n)  y2 (n) 
   
 ..  h (y(n), y(n−1), ..., y(n−R), u(n), u(n−1), ..., u(n−R)) = 0  .. 
 .   . 
uM (n) yP (n)

De forma genérica consideramos un modelo dinámico representado


representado mediante una ecuación en diferencias de orden R
h (y(n), y(n − 1), ..., y(n − R), u(n), u(n − 1), ..., u(n − R)) = 0
con:
M entradas, representadas mediante el vector de entrada
u(n) = [u1 (n), u2 (n), ..., uM (n)]T
P salidas, representadas mediante el vector de salida
y(n) = [y1 (n), y2 (n), ..., yP (n)]T
hj (y(n), y(n − 1), ..., y(n − R), u(n), u(n − 1), ..., u(n − R)) = 0
ecuaciones lineales o no lineales.

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 6 / 57
Ecuaciones en Diferencias vs. ODE

En el caso discreto:
   
u1 (n) y1 (n)
 u2 (n)  u(n) y(n)  y2 (n) 
   
 ..  h (y(n), y(n−1), ..., y(n−R), u(n), u(n−1), ..., u(n−R)) = 0  .. 
 .   . 
uM (n) yP (n)

En el caso continuo:
   
u1 (t) y1 (t)
 u2 (t)  u(t)  y(t)  y2 (t) 
   
 ..  h y(t), y ′ (t), ..., y (R) (t), u(t), u ′ (t), ..., u (R) (t) = 0  .. 
 .   . 
uM (t) yP (t)

Normalmente, a la hora de discretizar un sistema, no es suficiente


con sustituir las variables. En otras palabras, las h(·) suelen ser
diferentes.

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 7 / 57

Esquema

1 Objetivos

2 Ecuaciones en Diferencias
Ejemplos No Lineales
Ejemplos Lineales

3 Función de Transferencia (FT)

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 8 / 57
Ejemplo ecuaciones en diferencias 1

Ejemplo 1: Ecuación logística discreta

Describe la evolución de la ‘densidad’ de N(n+1) = N(n)+


una población x(k) entre dos periodos (a−b N(n)) N(n)
(mes, año,...) sucesivos, teniendo en R =1+a
cuenta que el numero de nacimientos y b
x (n) = R N(n)
muertes estan ligados a a las
condiciones del entorno o habitat por un
parametro R. Cuando 0 < R < 4, se
cumple que 0 ≤ x(k) ≤ 1

x(n + 1) − R x(n) (1 − x(n)) = 0

Es un sistema dinámico discreto no lineal de primer orden


autónomo

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 9 / 57

Ejemplo ecuacion en diferencias 2


Ejemplo 2: Modelo de depredadores y presas de Volterra-Lotka
Es un modelo similar al que vimos en el caso continuo, pero aqui
se modela la variación con una periodicidad anual del número de
presas x1 (n) y de depredadoras x2 (n):
x1 (n + 1) = ox1 (n) − qx1 (n)x2 (n)
x2 (n + 1) = −px2 (n) + rx1 (n)x2 (n)

o > 0: ritmo de nacimiento q > 0: iteracción que modela el


presas, función de la cantidad de ritmo de depredación
comida de la que disponen. r > 0: iteracción que modela el
crecimiento de depredadores
p > 0: ritmo de muerte
debido a la existencia de presas
depredadores.
Es un sistema dinámico discreto autónomo no lineal modelado con
un sistema de ecuaciones en diferencias de orden 1
Los parametros son distintos que en el caso continuo
Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 10 / 57
Esquema

1 Objetivos

2 Ecuaciones en Diferencias
Ejemplos No Lineales
Ejemplos Lineales

3 Función de Transferencia (FT)

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 11 / 57

Ejemplo ecuacion en diferencias 3

Ejemplo 3: Valor medio de una secuencia de valores

Si suponemos una sencuencia de valores {u(0), u(1), ....u(n)} que


se generan por medio de algun proceso discreto (por ejemplo la
temperatura maxima cada hora), el valor medio de las n primeras
medidas :
n−1 n−2 n−1
1X u(n−1) 1 X u(n−1) n−1 1 X
y (n) = u(j) = + u(j)= + u(j)
n n n n n−1 n
j=0 j=0 j=0

1 n−1
y(n) = u(n − 1) + y(n − 1)
n n
Es un sistema dinámico discreto lineal con parametros variables
modelado con una ecuacion en diferencias de primer orden

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 12 / 57
Ejemplo ecuacion en diferencias 4

Ejemplo 4: Sucesion de Fibonacci

La ecuacion modela la evolución de una variable cuyo valor resulta


de acumular los dos valores previos (ejemplo granja de conejos) :

y(n) = y(n − 1) + y(n − 2)

Es un sistema dinámico discreto lineal autonomo modelado con


una ecuación en diferencias de segundo orden

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 13 / 57

Ejemplo ecuacion en diferencias 5

Ejemplo 5: Pago de un prestamo bancario

La siguiente expresión modela la evolución de la cantidad y(n) que


queda por pagar de un prestamo teniendo en cuenta que es
interés mensual es de un r % y el pago realizado cada mes es
u(n).

y(n) = y(n − 1) + 0,01 r y(n − 1) − u(n)

Es un sistema dinámico lineal discreto de primer orden

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 14 / 57
Esquema

1 Objetivos

2 Ecuaciones en Diferencias

3 Función de Transferencia (FT)


Introducción
Transformada Z
Función de Transferencia

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 15 / 57

Esquema

1 Objetivos

2 Ecuaciones en Diferencias

3 Función de Transferencia (FT)


Introducción
Transformada Z
Función de Transferencia

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 16 / 57
Introducción

   
u1 (n) y1 (n)
 u2 (n)  u(n) y(n)  y2 (n) 
   
 ..  h (y(n), y(n − 1), ....y(n − R), u(n), u(n − 1), ..., u(n − R)) = 0  .. 
 .   . 
uM (n) yP (n)

Suponiendo que la Ec. en Diferencias h(·) es lineal:


¿Existe otra representación de entrada y salida en la que se
relaciona la entrada u con las salida y, sin que aparezcan las
diferencias temporales?

U Y
Función de Transferencia

La transformada Z nos permite cambiar del espacio temporal


discreto al complejo y eliminar las diferencias temporales
Además, nos permite obtener una representación de entrada-salida
Y (z) = G(z)U(z)

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 17 / 57

Esquema

1 Objetivos

2 Ecuaciones en Diferencias

3 Función de Transferencia (FT)


Introducción
Transformada Z
Función de Transferencia

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 18 / 57
Transformada Z

Se define la transformada Z (unilateral)


P
F (z) = Z [f (n)] = ∞n=0 f (n)z
−n

sobre una f (k) causal, es decir que verifica que f (n) = 0, n < 0
y con z un numero complejo (z = σ + jω)

Por lo tanto, la transformada Z convierte una función temporal


discreta en una función en el espacio complejo z.

Finalmente, también se define la transformada Z inversa:

Z −1 [F (z)] = Z −1 [Z [f (n)]] = f (n)

R∞
Transformada de Laplace: F (s) = L [f (t)] = 0
f (t)e−st dt

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 19 / 57

Propiedades la la Transformada Z - I
Linealidad: Z [αf (n) + βg(n)] = αZ [f (n)] + βZ [g(n)]

X
Demo: Z [αf (n) + βg(n)] = (αf (n) + βg(n)) z −n =
n=0

X ∞
X
= α f (n)z −n +β g(n)z −n = αZ [f (n)]+βZ [g(n)]
n=0 n=0

Convolución:
P∞
y (n) = k =0 g(n − k )u(k )↔Z[y (n)] = Z[g(n)]Z[u(n)]
En el espacio de la transformada, la convolucion es un producto
Demo:

Transformada de Laplace:
L [αf (t) + βg(t)] = αL [f (t)] + βL [g(t)]
R
y (t) = 0 ∞g(t − τ )u(τ )dτ↔L[y (t)] = L[g(t)]L[u(t)]
Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 20 / 57
Propiedades la la Transformada Z - II
Diferencia hacia delante (aparecen las condiciones iniciales)
h Pk −1 i
k
Z [f (n+k )] = z Z [f (n)]− n=0 f (n)z −n

Demo:
P P∞ −n′ +1
Z [f (n+1)] = ∞ n=0 f (n + 1)z −n
= n =1
′ f (n ′
)z =
hP ′
i hP ′
i
∞ ∞
=z n′ =1 f (n )z
′ −n
=z n′ =0 f (n )z
′ −n
−f (0) = z[Z [f (n)]−f (0)]
Z [f (n+2)] = z [Z [f (n + 1)] − f (1)] = z 2 Z [f (n)] − f (0)z 2 − f (1)z
Diferencia hacia atrás: Z [f (n − k )] = z −k Z [f (n)]
(al retardar una señal causal, no aparecen condiciones iniciales)
Demo:

Transformada de Laplace:
h n i h i
d n−1 f (0)
L dt n = s L [f (t)] − sn−1 f (0) + sn−2 dfdt(0) + ... +
d f (t) n
dt n−1
hR i
t
L 0 f (τ )dτ = L[fs(t)]
Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 21 / 57

Propiedades la la Transformada Z - III

De las propiedades de la transformadas hacia delante y hacia


atras de una señal podemos establecer la siguiente analogía:
Adelanto: multiplicación por un complejo z
Retardo: división por un complejo z

Por lo tanto, adelantar o retrasar se convierte en multiplicar y


dividir por un complejo z.
Es decir, la transformada Z nos permite convertir los retardos y
adelantos en operaciones algebraicas de multiplicación y división.
Las propiedades de linealidad + retardo + adelanto son las que
nos permiten trabajar con sistemas dinámicos lineales de forma
algebraica.

Laplace: derivada nos daba la multiplicacion, y la integracion la division.

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 22 / 57
Propiedades la la Transformada Z IV

Traslación compleja:

Z [ean f (n)] = F (e−a z)

Multiplicación por nT:

Z [nT f (nT )] = −Tz dZ[f


dz
(n)]

Teorema del valor inicial:

f (0) = lı́m F (z)


z→∞

Teorema del valor final:

lı́m f (k) = lı́m (z − 1)F (z)


k →∞ z→1

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 23 / 57

Transformada Z de señales I
z z
Señal exponencial: Z [e−an ] = z−e−a
Z [ean ] = z−ea
P∞ P∞ 1
Demo: Z [e−an ] = n=0 e−an z −n = n=0 (e−a z −1 )n = 1−z −1 e−a
Si |e−a z −1 | < 1

1 n≥0 z
Escalón unitario: 1(n) = → Z [1(n)] = z−1
0 c.c.
P∞
Demo: Z [1(n) ] = n=0 z −n = 1−z1 −1 = z
z−1
Si|z| < 1
3

e−ak
2.5 eak
1(k)

2
Relación continuo - discreto
Polos
y(k)

1.5

Laplace
1
 −at  Continuo Discreto
1
L e = s+a s = −a z = e −a
L [1(t)] = 1s s=0 z = e0 = 1
0.5

0
0 5 10 15 20 25 30 35 40 45 50
k

Suponiendo a>0
Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 24 / 57
Transformada Z de señales II

Rampa y (n) = n
Señal impulso: δ(n) → Z [δ(n)] = 1 50

P∞ 45

Demo: Z [δ(n)] = n=0 δ(n)z


−n
=1 40

35

z
30

Señal escalón: 1(n) → Z [1(n)] =

y(k)
25

z−1 20

15

z
Señal rampa: n → Z [n] =
10

(z−1)2
5

0
0 5 10 15 20 25 30 35 40 45 50
k
1
d( )
Demo: Z [n] = −z dZ[1(n)]
dz = −z z−1
dz
Parabola y (n) = n2
2500

  z 2 +z
Señal parabola: n2 → Z n2 = (z−1)3
2000

 
1500

y(k)
  d z

Demo: Z n2 = −z 2dZ[n] (z−1)2


1000

dz = −2z dz 500

0
0 5 10 15 20 25 30 35 40 45 50
k

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 25 / 57

Transformada Z de señales III


rz(sinwo )
Z [r n sin(wo n)] = z 2 −2rcos(wo )z+r 2

z 2 −rz(coswo )
Z [r n cos(wo n)] = z 2 −2rcos(w o )z+r
2

En relación con las exponenciales crecientes/decrecientes:


Si 0<r<1 → r = e−a → Z [e−an cos(wn)], Z [e−an sin(wn)]
Si r>1 → r = ea → Z [ean cos(wn)], Z [ean sin(wn)]

y (k ) = e −an sin(wn), a > 0 y (k ) = e an sin(nk ), a > 0


0.8 150

0.6
100

0.4
50
y(n)
y(n)

0.2

0
0

-50
-0.2

-0.4 -100
0 20 40 60 80 100 0 20 40 60 80 100
n n

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 26 / 57
Transformada Z de señales IV
En todas las transformadas Z vistas hasta el momento (salvo la de
la delta), los polos (raices del denominador) son positivos.
z z z
Z [e−an ] = z−e−a Z [ean ] = z−ea Z [1(n)] = z−1
rz(sinwo ) z 2 −rz(coswo )
Z [r n sin(wo k )] = z 2 −2rcos(w o )z+r
2 Z [r n cos(wo k )] = z 2 −2rcos(w o )z+r
2

¿Hay transformadas z donde los polos sean negativos?


y (k ) = e−an sin(wn), a > 0
Z [(−1)n e−an ] = z+ez −a 0.8

0.6

z
Z [(−1)n ean ] = z+e
0.4

y(n)
0.2

z
[(−1)n 1(n)] = z+1
0

Z -0.2

-0.4
0 20 40 60 80 100

rz(sinwo )
[(−1)n r n sin(w
n

Z o n)] = z 2 +2rcos(wo )z+r 2 y (k ) = (−1)n e−an sin(wn),


0.8

z 2 −rz(cosw
0.6

Z [(−1)n r n cos(w o n)] = z 2 +2rcos(wo )z+r 2


o) 0.4

0.2

y(n)
0

Es equivalente a considerar r = ean


-0.2

-0.4

negativas.
-0.6

-0.8
0 20 40 60 80 100
n

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 27 / 57

Ejemplos de transformada Z de señales

TZ: f (n) = 5e−2n − 4e3n + 1(n)


5z 4z z
F (z) = z−e−2
− z−e3
+ z−1

TZ: f (k) = 3(−1)n + 2e−3n + 3n


3z 2z 3z
F (z) = z+1 + z−e−3
+ (z−1)2

2z 2 +4
TZ inversa: F (z) = (z−1)2
2z 4z
F (z) = z−1 + (z−1)2
→ f (n) = 2 ∗ 1(n) + 4n
ze2 sin(3)
TZ inversa: F (z) = e4 z 2 −2 cos(3)e2 z+1

ze−2 sin(3)
F (z) = z 2 −2 cos(3)e−2 z+e−4
→ f (k) = e−2n sin(3n)

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 28 / 57
Esquema

1 Objetivos

2 Ecuaciones en Diferencias

3 Función de Transferencia (FT)


Introducción
Transformada Z
Función de Transferencia

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 29 / 57

Función de Transferencia I
   
u1 (n) y1 (n)
 u2 (n)  u(n) y(n)  y2 (n) 
   
 ..  h (y(n+R), y(n+R −1), ....y(n), u(n+R), u(n+R −1), ..., u(n)) = 0  .. 
 .   . 
uM (n) yP (n)

Cuando la Ec. en Diferencias h(·) es lineal podemos aplicar la


Transformada Z para establecer relaciones entre las
transformadas de las señales de entrada y salida
   
U1 (z) Y1 (z)
 U2 (z)  U(z) Y (z)  Y2 (z) 
   
 ..  ?  .. 
 .   . 
UM (z) YP (z)

La linealidad y los adelantos hacen que, cuando las c.i son nulas,
la relación establecida entre cada salida Ykj (z) y entrada Uj (z)
cuando el resto de las entradas son nulas, sea un cociente de
Y (z)
polinomios en z, que representaremos como Gkj (z) = Ukjj (z) y
llamaremos funciones de transferencia.
Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 30 / 57
Función de Transferencia II
   
U1 (z) Y1 (z)
 U2 (z)  U(z) Y (z)  Y2 (z) 
   
 ..  G(z)  .. 
 .   . 
UM (z) YP (z)

Ykj (z)
Si a partir de las funciones de transferencia Gkj (z) = Uj (z) definimos la
Matriz de Transferencia G(z) como
 
G11 (z) G12 (z) ... G1M (z)
 G21 (z) G22 (z) ... G2M (z) 
 
G(z) =  .. .. .. .. 
 . . . . 
GP1 (z) GP2 (z) ... GPM (z)

se tiene que Y (z) = G(z)U(z)

Es decir: Yk (z) = Gk 1 U1 (z) + Gk 2 U2 (z) + ... + GkM U1 (z)


Yk (z) = Yk 1 (z) + Yk 2 (z) + ... + YkM (z)

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 31 / 57

Ejemplo FT 5
Ejemplo 5: Pago de un prestamo bancario
y(n) = y(n − 1) + 0,01 r y(n − 1) − u(n)
1 Con la Ec. en Dif. adelante: y(n+1) = (1+0,01r )y(n)−u(n+1)
Transformada Z con c.i. nulas:
zY (z) = (1+0,01r )Y (z)−zU(z)
(z − (1+0,01r )) Y (z) = −zU(z)
z z
Y (z) = − z−(1+0,01r ) U(z) → G(z) = − z−(1+0,01r )

2 Con la Ec. en Dif. atras: y(n) = (1+0,01r )y(n−1)−u(n)


Transformada Z
Y (z) = (1+0,01r )z −1 Y (z)−U(z)

1 − (1+0,01r )z −1 Y (z) = −U(z)
1 z
Y (z) = − 1−(1+0,01r )z −1
U(z) → G(z) = − z−(1+0,01r )

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 32 / 57
Ejemplo FT 6

Calcular la matriz de transferencia de:


y1 (n + 1) = y2 (n) + y1 (n) − u1 (n + 1)
y2 (n + 1) = y2 (n) + 4u2 (n)

Transformada Z con c.i. nulas:


zY1 (z) = Y2 (z) + Y1 (z) − zU1 (z)
zY2 (z) = Y2 (z) + 4U2 (z)
(z − 1)Y1 (z) = Y2 (z) − zU1 (z)
4
(z − 1)Y2 (z) = 4U2 (z) → Y2 (z) = z−1 U2 (z)
1 z 4 z
Y1 (z) = z−1 Y2 (z)− z−1 U1 (z) → Y1 (z) = (z−1)2 U2 (z)− z−1 U1 (z)

  " −z 4
# 
Y1 (z) U 1 (z)
= z−1 (z−1)
2

Y2 (z) 4 U2 (z)
0 z−1

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 33 / 57

Ejemplo FT 1, 2, 3 y 4

¿ Que sucede con las FT de los ejemplos 1, 2, 3 y 4 ?

Ejemplo 1. Ecuación logística discreta:


x (n + 1) − R x (n) (1 − x (n)) = 0
Ejemplo 2. Modelo de depredadores y presas de Volterra-Lotka

x1 (n + 1) = ox1 (n) − qx1 (n)x2 (n)


x2 (n + 1) = −px2 (n) + rx1 (n)x2 (n)
Ejemplo 3: Valor medio de una secuencia de valores:

1 n−1
y (n) =
u(n − 1) + y (n − 1)
n n
Ejemplo 4: Sucesion de Fibonacci:
x (n) = x (n − 1) + x (n − 2)

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 34 / 57
Esquema

1 Objetivos

2 Ecuaciones en Diferencias

3 Función de Transferencia (FT)

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 35 / 57

Función Ponderatriz I

Hemos visto que para cada pareja de entrada-salida, la Gkj (z) que
se obtiene de la Ec. en diferencias lineal nos da la relación entre la
entrada y la salida: Ykj (z) = Gkj (z)Uj (z)

Si obtenemos la respuesta del sistema a la función impulso (delta


de Kronecker):

uj (n) = δ(n) → Uj (z) = 1 → Ykj (z) = Gkj (z)

Por lo tanto, la función de transferencia discreta es la transformada


Z de la respuesta del sistema a la función impulso.

Calculando la transformada Z inversa, obtendremos la respuesta


del sistema gkj (n). A esta función también se le denomina función
ponderatriz.

ykj (n) = gkj (n)

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 36 / 57
Función Ponderatriz II
Para un sistema lineal SISO la función
u(n) y (n)
h(y (n + R), y (n + R − 1), ...y (n), u(n + R), u(n + R − 1), ...u(n)) = 0

se puede escribir como


a0 y (n + R) + a1y (n + R − 1) + ... + aR y (n) = b0 u(n + R) + b1u(n + R − 1) + bR u(n)

La transformada Z con c.i. nulas:


(a0 z R + a1 z R−1 + ...aR )Y (z) = (bo z R + b1 z R−1 + ... + bR )U(z)
bo z R +b1 z R−1 +...+bR
Y (z) = a0 z R +a1 z R−1 +...+aR
U(z). Si la entrada es la δ(n)

U(z) = 1 Y (z) = G(z)


bo z R +b1 z R−1 +...+bR−1 z+bR
a0 z R +a1 z R−1 +...+aR−1 z+aR
u(n) = δ(n) y (n) = g(n)

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 37 / 57

Función Ponderatriz III


Acabamos de ver que G(z), la función de transferencia, es la TZ de
la respuesta del sistema a la función impulso.
Además:
Sabemos que la respuesta del sistema LTI ante cualquier entrada
U(z) es Y (z) = G(z)U(z). Además, debido a las propiedades de la
transformada Z y (n) = (g ∗ u)(n). Por lo tanto, la convolución de la
función ponderatriz g(n) con la entrada u(n), nos da la respuesta
del sistema.
Podemos llegar a la misma conclusión teniendo en cuenta las
propiedades propias del sistema LTI:
◮ Respuesta del sistema al impulso: T [δ(n)] = g(n)
◮ Respuesta del sistema a cualquier entrada:
P
T [u(n)] = T [(u ∗δ)(n)] = T [ ∞
k =−∞ u(k )δ(n−k)]
P∞ P
= k =−∞ T [u(k )δ(n−k )] = ∞ k =−∞ u(k )T [δ(n−k)] =
P∞
= n=−∞ u(k )g(n−k ) = (u ∗ g)(n)
◮ La respuesta del sistema a cualquier entrada es la convolución de la
entrada y la respuesta del sistema a la entrada impulso.
Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 38 / 57
Ejemplo respuesta de un SL a δ(n)

Ver la respuesta del siguiente sistema discreto a la función


impulso:
y(n + 2) − 2y(n + 1) + y(n) = 4u(n + 2) − u(n + 1)

Suponemos c.i. nulas:


z 2 Y (z) − 2zY (z) + Y (z) = 4z 2 U(z) − zU(z)
(z 2 − 2z + 1)Y (z) = (4z 2 − z)U(z)
4z 2 −z
Y (z) = z 2 −2z+1
U(z)
u(n) = δ(n) → U(z) = 1
4z 2 −z
Y (z) = z 2 −2z+1
→ y(n) = 4 · 1(n) + 3n
4z 2 −z 4z 3z
(z−1)2
= z−1
+ (z−1)2

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 39 / 57

Esquema

1 Objetivos

2 Ecuaciones en Diferencias

3 Función de Transferencia (FT)

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 40 / 57
Respuesta genérica del sistema
La Ecuación en Diferencias de un sistema lineal SISO se puede escribir como:
a0 y (n + R) + a1 y (n + R − 1) + ... + aR y (k ) = b0 u(n + R) + b1 u(n + R − 1) + bR u(n)
La transformada
h Z con c.i. : i P h i
PR PR−k −1 PR−k −1 −j
k =0 ak z R−k Y (z)− j=0
z −j y (j) = R
k =0 bk z
R−k U(z)−
j=0
z u(j)
Reescribimos la expresión, usando FP(z, ·) para representar un polinomio en z
con coeficientes dependientes de los parámetros de entrada:
PR R−k PR R−k
k =0 a k z Y (z)−FP(z, a 0:k , y (0:R−1)) = k =0 bk z U(z)−FP(z, b0:k , u(0:R−1))

PR R−k PR R−k
k =0 ak z Y (z) = k =0 bk z U(z)+FP(z, a0:k , b0:k , y (0: R −1), u(0:R −1))
PR
bk z R−k FP(z,a0:k ,b0:k ,y (0:R−1),u(0:R−1))
Y (z) = PkR=0
a z R−k
U(z) + PR
a z R−k
k =0 k k =0 k

El primer cociente de polinomios corresponde al la FT y el segundo a las


condiciones iniciales. Por lo tanto, la respuesta del sistema se puede obtener
como la suma de la respuesta debido a la entrada (calculada a través de la
función de transferencia) y de la parte asociada a las condiciones iniciales.
Y (z) = G(z)U(z) + CI(z)
Importante: La función de transferencia y CI(z) comparten denominador
Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 41 / 57

Ejemplo respuesta genérica 5

Ejemplo 5: Préstamo bancario


y (n) = y (n − 1) + 0,01 r y (n − 1) − u(n)
Obtener la respuesta del sistema y(n) cuando se tiene una entrada u(n) escalón
de 100 unidades, en el caso en el que r=5 y la condicion inicial y (0) = 1000.

Sustituimos los valores conocidos: y (n + 1) = y (n) + 0,05 y (n) − u(n + 1)


Calculamos TZ, con condiciones iniciales:
zY (z) − zy (0) = Y (z) + 0,05Y (z) − zU(z) + zu(0)
Operamos:
(z − 1,05)Y (z) = −zU(z) + zy (0) + zu(0)
z zy (0)+zu(0)
Y (z) = − z−1,05 U(z) + z−1,05
Como la entrada es el escalón de 100 unidades:
2 2000z(10z−11)
100z 1100z
Y (z) = − (z−1,05)(z−1) + z−1,05
= 20z 2 −41z+21
Se descompone en fracciones simples y calcula la TZ inversa:

21 n
y (n) = 2000 − 1000 20

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 42 / 57
Esquema

1 Objetivos

2 Ecuaciones en Diferencias

3 Función de Transferencia (FT)

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab


Toolbox de cálculo simbólico
Toolbox de control

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 43 / 57

Esquema

1 Objetivos

2 Ecuaciones en Diferencias

3 Función de Transferencia (FT)

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab


Toolbox de cálculo simbólico
Toolbox de control

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 44 / 57
Toolbox de Calculo Simbolico

La toolbox de Calculo Simbolico de Matlab tambien pueden ser


utilizada para realizar operaciones operaciones sobre sistemas
discretos.
Debido a la gran similitud entre las operaciones realizadas en le
caso discreto y continuo, un amplio conjunto de las operaciones
vistas en la sección de continuos (declaración de variables,
manipulación de expresiones, operaciones de calculo, operaciones
de álgebra lineal, y operaciones de resolucion de sistemas de
ecuaciones) son tambien utiles en el caso de sistemas discretos.
Como funciones propias de discreto es conveniente estudiar las
relacionadas con la transformada z:
Fz=ztrans(fn,n,z) y fn=iztrans(Fz,z,n) calculan la transformada Z
y su inversa. Los parametros n y z son opcionales.

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 45 / 57

Transformada Z
>> syms z n %Declaracion de variables
>> fn=1+n %f(n)
fn =
n + 1

>> Fz=simplify(ztrans(fn,n,'z')) %Transformada z


Fz =
z^2/(z - 1)^2

>> Fz=(4*z+1)/(z-1)^2 %Transformada z


Fz =
(4*z + 1)/(z - 1)^2

>> fn=iztrans(Fz,z,n) %Transformada inversa

fn =
5*n + kroneckerDelta(n, 0) - 1

>> Gz=[-z/(z-1), 4/(z-1)^2; 0, 4/(z-1)] %Matriz de transferencia


>> Uz=[ z/(z - 1);z/(z - 1)] %Entrada escalon, entrada escalon
>> Yz=simple(Gz*Uz) %Transformada z de la Respuesta
Yz =
(z*(z - z^2 + 4))/(z - 1)^3
(4*z)/(z - 1)^2

>> yn=iztrans(Yz,z,n) %Respuesta del sistema


yn =
3*n + 4*nchoosek(n - 1, 2) - 5
4*n

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 46 / 57
Ejemplo: Obtención de la FT a partir de la Ec. en Dif.
La FT de un sistema es la transformada Z de la respuesta del sistema a
la función impulso. Su obtención en simbolico no es directa, pero es mas
sencilla que la obtención de la funcion de transferencia continua (porque
no hay que generar las variables de las derivadas).

Ejemplo 5: Préstamo bancario


y (n + 1) = y (n) + 0,01ry (n) − u(n + 1)
syms n Y fz =
fk=str2sym('y(n+1)-y(n)-0.01*r*y(n)-u(n+1)'); z*ztrans(y(n),n,z) - z*ztrans(u(n),n,z) -
0.01*r*ztrans(y(n),n,z) + z*u(0) - z*y(0) -
fz=ztrans(fk,n,z) %Transformada z ztrans(y(n),n,z)

fz=subs(fz,str2sym('y(0)'),0); %c.i. nulas fz =


fz=subs(fz,str2sym('u(0)'),0) %c.i. nulas z*ztrans(y(n),n,z) - z*ztrans(u(n),n,z) -
%Entrada impulso --> trans z. 1 0.01*r*ztrans(y(n),n,z) - ztrans(y(n), n, z)
fz=subs(fz,str2sym('ztrans(u(n), n, z)'),1)
%Sustituimos para hacerlo funcion de Y fz =
fz=subs(fz,str2sym('ztrans(y(n), n, z)'),'Y') z*ztrans(y(n),n,z) -
%Despejamos Y, y obtenemos FT. 0.01*r*ztrans(y(n),n,z) - z - ztrans(y(n),n,z)
gz=simplify(solve(fz,Y))
fz =
Y*z - z - 0.01*Y*r - Y

gz =
-(100.0*z)/(r - 100.0*z + 100.0)

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 47 / 57

Ejemplo: Obtención de la respuesta de un LTI

Ejemplo 5: Prestamo bancario


y(k + 1) = y(k) + 0,01ry(k) − u(k + 1)
Obtener la respuesta del sistema y(n) cuando se tiene una entrada
u(n) escalón de 100 unidades, en el caso en el que r=5 y la
condicion inicial y(0) = 1000.
Operando, habíamos llegado a :
z zy (0)+zu(0) 1000
Y (z) = − z−1,05 U(z) + z−1,05 800

600

syms z n 400

y0=1000; 200
y(n)

u0=100;
0
pago=100;
yz=-z/(z-1.05)*pago*z/(z-1)+z*(y0+u0)/(z-1.05); -200

yn=iztrans(yz,z,n) -400

nn=0:20; -600
ynn=subs(yn,n,nn); -800
stem(nn,ynn,'o'); 0 5 10
n
15 20

xlabel('n');ylabel('y(n)');

>> yn=2000 - 1000*(21/20)^n

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 48 / 57
Esquema

1 Objetivos

2 Ecuaciones en Diferencias

3 Función de Transferencia (FT)

4 Función Ponderatriz

5 Respuesta genérica del sistema

6 Operaciones con Matlab


Toolbox de cálculo simbólico
Toolbox de control

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 49 / 57

Toolbox de Control
La toolbox de control de Matlab tambien permite definir y manipular
sistemas discretos:

Como los sistemas discretos se definen al igual que los sistemas


continuos a través del numerador y denominador de la FT discreta;
o de su ganancia, polos y ceros; y las funciones de manipulación
trabajan de forma análoga con los sistemas continuos y discretos,
podemos usar las mismas funciones para definir y manipular los
sistemas dinámicos discretos y continuos.
Sin embargo, como la simulacion de su comportamiento es
diferente, es necesario indicarle a las funciones de definición si el
sistema es continuo o discreto. Para ello, se añade un campo
adicional a los sistemas discretos.
Las funciones de extracción de datos devuelven un parámetro
adicional que nos permite saber el tipo de sistema.
Las funciones de conversión son las mismas

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 50 / 57
Definición de Modelos

Las dos funciones que conocemos para modelos continuos, nos


permiten definir modelos discretos, añadiendo un campo adicional T, que
indica que el sistema es discreto si vale -1, y que es discreto y periódico
con periodo T si T>0. Las nuevas llamadas a las funciones son:

tf(num,den, T): proporcionar el numerador y denominador de FT,


como arrays con los coeficientes de los polinomios en potencias
decrecientes de z.
En sistemas MIMO usar la funcion para cada elemento de la matriz
de transferencia.
zpk(zeros,poles,gain,T ): proporcinar los ceros (raices del numerador),
polos (raices del denominador) y ganancia de la FT. Los zeros y los
polos se le proporcionan en un array.
En sistemas MIMO usar la funcion para cada elemento de la matriz
de transferencia. Si no hay ceros, hacer zeros = [].

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 51 / 57

Funciones de extracción de datos


Dado un modelo sys definido de cualquiera de las dos formas que
hemos visto, podemos extraer con las siguientes funciones los
elementos que lo definen:
[num,den,T]=tfdata(sys,‘v’): obtiene el numerador y
denominador de la funcion de transferencia, y el tipo de
sistema
[zeros,poles,gain,T]=zpkdata(sys,‘v’) (zeros,poles,k data):
obtiene los zeros, polos y la ganacia de las funciones de
transferencia, y el tipo de sistema.

No es necesario que el modelo se haya definido con el tipo de datos que


queremos extraer.
Los ‘v’ de las dos primeras funciones hacen que nos devuelvan la información en
vectores en el caso de sistemas SISO.
Si el sistema ha sido definido de forma continua (sin T) y le pedimos que en las
funciones de datos devuelvan, T=0.
Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 52 / 57
Ejemplos básicos
>> num=[1 0]; >> gs=tf([1 0],[1 -1])
>> den=[1 -1]; >> [num,den,T]=tfdata(gs,'v') %Datos como FT
>> tf(num,den,-1) %FT discreta num =
Transfer function: 1 0
z den =
----- 1 -1
z - 1 T =
Sampling time: unspecified -1

>> tf(num,den,0) %FT continua >> gz=tf([1 0],[1 -1],10);


Transfer function: >> [z,p,k,T]=zpkdata(gz,'v') %Datos como z,p,k
s z =
----- 0
s - 1 p =
1
tf(num,den,1) % %FT discreta k =
Transfer function: 1
z T =
----- 10
z - 1
Sampling time: 1

>> zero=0;
>> poles=1;
>> k=1;
>> zpk(zero,poles,k,-1) %FT discreta
Zero/pole/gain:
z
-----
(z-1)
Sampling time: unspecified

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 53 / 57

Funciones de simulación

Las funciones de simulación de la toolbox de Control son las


mismas que habíamos visto, ya que a la hora de definir el modelo
se le indica si es continuo (sin pasarle el parámetro T o con T=0) o
discreto (pasandole el parámetro T o con T=-1). Por lo tanto, las
funciones de simulación son capaces de determinar, sin ninguna
ayuda adicional, la forma en la que se debe hacer la simulación.
Sin embargo, en el caso simular la respuesta a una entrada
genérica mediante a la orden lsim(gz,utn,tn) para un sistema
discreto hay que tener en cuenta que el paso de tiempo de tn tiene
que ser igual que el valor de T. En caso contrario, da un mensaje
de error, indicando que el vector de tiempos no es correcto.

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 54 / 57
Ejemplo: Obtención de la respuesta de un LTI

Ejemplo 5: Prestamo bancario


y (k + 1) = y (k ) + 0,01ry (k ) − u(k + 1)
Obtener la respuesta del sistema y(n) cuando se tiene una entrada u(n)
escalón de 100 unidades, en el caso en el que r=5 y la condicion inicial
y (0) = 1000.
Operando, habiamos llegado a :
z zy (0)+zu(0) 1000
Y (z) = − z−1,05 U(z) + z−1,05 800

600

gz=tf([-1 0],[1 -1.05],1); 400

gci=tf([1100,0],[1,-1.05],1); 200

y(n)
[y1,n]=step(gz,20);
0
[y2,n]=impulse(gci,20);
y=100*y1+y2; -200

stem(n,y,'o'); -400

xlabel('n');ylabel('y(n)'); -600

-800
0 5 10 15 20
n

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 55 / 57

Ejemplo: Obtención de la respuesta de un LTI

Ejemplo 5: Prestamo bancario


y (k + 1) = y (k ) + 0,01ry (k ) − u(k + 1)
Obtener la respuesta del sistema y(n), en el caso en el que r=5 y la
condicion inicial y (0) = 1000, se paguen 0 euros al mes durante los
primeros 10 meses, 100 euros al mes durante los siguientes 10 meses y
500 euros al mes hasta el final de la hipoteca
Operando, habiamos llegado a :
z zy (0)+zu(0) 2000
Y (z) = − z−1,05 U(z) + z−1,05 1000

0
gz=tf([-1 0],[1 -1.05],1);
gci=tf([1000,0],[1,-1.05],1); -1000
y(n)

un=[zeros(10,1);100*ones(10,1);500*ones(10,1)];
[y1,n]=lsim(gz,un,0:29); -2000

[y2,n]=impulse(gci,0:29); -3000
y=y1+y2;
stem(n,y,'o'); -4000

xlabel('n');ylabel('y(n)'); -5000
0 5 10 15 20 25 30
n

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 56 / 57
Ejemplo: Obtención de la respuesta de un LTI

Ejemplo 6: Sistema MIMO


  " # 
−z 4
Y1 (z) z−1 (z−1)2 U1 (z)
= 4
Y2 (z) 0 z−1
U2 (z)
Obtener las respuestas del sistema ante las entradas u1 (n) = sin(0,1πn)
y u2 (n) = δ(n).
Linear Simulation Results
200
gz(1,1)=tf([-1 0],[1 -1],1);
gz(1,2)=zpk([],[1,1],4,1); 100

To: Out(1)
gz(2,1)=0; 0
gz(2,2)=tf(4,[1 -1],1);
n=[0:50]'; -100

y(n)
20
u1=20*sin(0.1*pi*n);
u2=zeros(size(n));u2(1)=1; 10

To: Out(2)
lsim(gz,[u1,u2],n); 0
xlabel('n');ylabel('y(n)');
-10

-20

Las entradas se le proporcionan en


0 10 20 30 40 50
n (seconds)

las diferentes columnas de una


matriz
¿ Se podrían considerar condiciones iniciales en el sistema ?

Eva Besada Portas (DACYA. UCM) Sistemas Lineales Modelar & Simular Discretos 57 / 57

También podría gustarte