Sunteți pe pagina 1din 28

Procesamiento Digital de Senales

Laboratorio 3 Sistemas Discretos, Transformada


Z y Aplicaciones en Sistemas LTI
Jose Quintanilla, Sebastian Tobar, Pedro Torres
jquintanilla12@alumnos.utalca.cl, stobar12@alumnos.utalca.cl, petorres12@alumnos.utalca.cl
Resumen
El proposito de este laboratorio es aplicar conceptos basicos de sistemas en tiempo discreto, incluyendo aspectos
asociados a sistemas lineales invariantes en el tiempo (LTI), y su division en sistemas FIR (Finite-Duration Impulse
Response) e IIR (Infinite-Duration Impulse Response), la transformada Z y sus aplicaciones al analisis de sistemas LTI.

I NTRODUCCI ON

1.

Para este laboratorio ya se han visto los temas sistemas lineales invariantes en el tiempo (LTI), y su division en
sistemas FIR (Finite-Duration Impulse Response) e IIR (Infinite-Duration Impulse Response), la transformada Z y sus
aplicaciones al analisis de sistemas LTI. Cada uno de estos topicos se centran en gran medida en el a rea de senales de
caracter discreta, en este laboratorio se abordaran reconocimiento de propiedades de los sistemas discretos, utilizacion
de la transformada Z y tambien la creacion de sistemas con los cuales se pueden manipular senales tan complejas
como un sonido.
2.

D ESARROLLO

2-A.

DE PROPIEDADES DE SISTEMAS
EVALUACION

A los dispositivos que operan sobre senales de variable discreta (o tiempo discreto) se les denomina sistemas discretos.
En general, reciben una senal de entrada x(n) para producir una senal de salida y(n). Se dice que el sistema transforma
x(n) en y(n), lo que se expresa como:
y(n) = [x(n)]
donde [x(n)] representa al operador de transformacion o procesamiento realizado por el sistema sobre x(n) para
producir y(n). Una descripcion de entrada-salida define la relacion entre x(n) y y(n). La estructura interna del sistema
es desconocida o ignorada, es decir, el sistema se considera como una caja negra cuyo funcionamiento interno no
interesa, sino el comportamiento especfico ante cierta entrada, tal como se vera a continuacion.
1. Se han entregado tres archivos de MATLAB pre-compilados , los cuales representan tres sistemas desconocidos.
Los archivos funcionan como funciones de MATLAB de modo que y = bboxN (x), donde x e y son las entradas
y salidas de cada sistema con N = 1, 2, 3. se sabe que solo uno de estos sistemas es no-lineal y solo uno es
variante en el tiempo. El trabajo es evaluar las propiedades de los tres sistemas e identificar los sistemas no-lineal
y variante en el tiempo.

a) Linealidad:

Un sistema es lineal si satisface el teorema de superposicion, es decir, para cualesquiera dos constantes a1 , a2 y
para toda senal x1(n) y x2(n) se cumple:
[a1 x1 (n) + a2 x2 (n)] = a1 [x1 (n)] + a2 [x2 (n)]
Un esquema de verificacion de linealidad se muestra a continuacion, donde el sistema es lineal si y solo si para
todo par de entradas x1(n) y x2(n) y para cualesquiera dos constantes a1, a2 siempre la salida d(n) es cero.

Figura 1. Verificacion de linealidad.

Este mismo procedimiento se hara para cada uno de los 3 sistemas, pero no con 2 senales, sino con 5 y todas
de distinto tipo, para forzar aun mas el descubrimiento de las propiedades de los sistemas, en este caso la
propiedad de linealidad, las senales seran del tipo sinusoidal, constante y de ruido, las cuales seran ponderadas
con distintas constantes para comprobar su propiedad multiplicativa, tambien seran todas e stas senales sumadas
para as comprobar tambien la propiedad de suma. El procedimiento se llevara a cabo en MATLAB y de manera
grafica, basandose en que si se grafican las distintas respuestas que se generan en el metodo de verificacion
mostrado de cada sistema, una encima de la otra, e stas deberan aparecer montadas por lo cual se vera una sola
grafica comun, lo que no ocurrira con un sistema no lineal.
A continuacion se muestra el codigo generado para descubrir el sistema buscado y para luego mostrar los graficos.

clear all;

clc;

ts=1/1000;

fs=1000;

t=[ts:ts:2];

min=0;

%amplitud min senal 4

max=1;

%amplitud max senal 4

x1=sin(2*pi*5*t);

%senal 1

x2=0*t+5;

%senal 2

10

x3=sin(2*pi*3*t);

%senal 3

11

x4=min+(max-min).*rand(1,2000); %senal 4

12

x5=square(2*pi*50*t); %senal 5

13
14

a1=0.5;

%tiempo muestreo

15

a2=2;

16

a3=1;

17

a4=13;

18

a5=1;

19

suma=a1*x1+a2*x2+a3*x3+a4*x4+a5*x5; %suma completa

20
21

%% linealidad sistema 1

22

Ssuma1=bbox1(suma);

23

Sx11=a1*bbox1(x1);

24

Sx21=a2*bbox1(x2);

25

Sx31=a3*bbox1(x3);

26

Sx41=a4*bbox1(x4);

27

Sx51=a5*bbox1(x5);

28

descomp1=Sx11+Sx21+Sx31+Sx41+Sx51;

29

subplot 311

30

plot(t,Ssuma1,'r','linewidth',3);

31

xlabel('Tiempo [s]');

32

ylabel('amplitud');

33

title('Linealidad sistema bbox1');

34

hold on

35

subplot 311

36

plot(t,descomp1,'linewidth',3);

37
38

%% linealidad sistema 2

39

Ssuma2=bbox2(suma);

40

subplot 312

41

plot(t,Ssuma2,'r','linewidth',3);

42

xlabel('Tiempo [s]');

43

ylabel('amplitud');

44

title('Linealidad sistema bbox2');

45

hold on

46

Sx12=a1*bbox2(x1);

47

Sx22=a2*bbox2(x2);

48

Sx32=a3*bbox2(x3);

49

Sx42=a4*bbox2(x4);

50

Sx52=a5*bbox2(x5);

51

descomp2=Sx12+Sx22+Sx32+Sx42+Sx52;

52

plot(t,descomp2,'linewidth',3);

53
54

%% linealidad sistema 3 (no lineal, ver pintas rojas)

55

Ssuma3=bbox3(suma);

56

subplot 313

57

plot(t,Ssuma3,'b','linewidth',3);

58

xlabel('Tiempo [s]');

59

ylabel('amplitud');

60

title('Linealidad sistema bbox3 (no lineal)');

61

hold on

62

Sx13=a1*bbox3(x1);

63

Sx23=a2*bbox3(x2);

64

Sx33=a3*bbox3(x3);

65

Sx43=a4*bbox3(x4);

66

Sx53=a5*bbox3(x5);

67

descomp3=Sx13+Sx23+Sx33+Sx43+Sx53;

68

plot(t,descomp3,'r','linewidth',3);

En donde a simple vista en la figura 2 (siguiente pagina), no se pueden apreciar grandes diferencias, pero si se
mira con mas atencion, los sistemas bbox1 y bbox2 tienen una misma grafica en comun por lo que se puede
afirmar que son lineales, ya que que solo el sistema bbox3 se comporta como no lineal, y el grafico presentado es
el contra ejemplo buscado para afirmarlo, ya que en la tercera casilla de la figura se deben apreciar los pequenos
resaltos de una senal por sobre la que se encuentra encima, lo cual no sucede con los primeros dos sistemas
sometidos a la prueba, por lo cual se puede decir que el sistema no lineal buscado, el es sistema bbox3.

amplitud

10

20

30

50

100

150

amplitud

amplitud

x 10

0.2

0.2

0.2

0.4

0.4

0.4

1
Tiempo [s]
Linealidad sistema bbox2

1.2

0.8

1
Tiempo [s]

1.2

1
1.2
Tiempo [s]
Linealidad sistema bbox3 (no lineal)

0.8

0.8

Figura 2. Comprobacion linealidad de sistemas.

0.6

0.6

0.6

Linealidad sistema bbox1

1.4

1.4

1.4

1.6

1.6

1.6

1.8

1.8

1.8

b) Sistemas variantes e invariantes en el tiempo


Un sistema en reposo es invariante en el tiempo o invariante al desplazamiento si y solo si:

x(n) y(n) x(n k) y(n k)


En el diagrama de bloques de la figura 3, el sistema es invariante en el tiempo si y solo si la salida d(n) es
cero para todas las entradas x(n) y para todos los valores de retardo k.

Figura 3. Comprobacion de invariabilidad en el tiempo.

Al igual que en la propiedad anterior esta se comprobara graficamente con el mismo principio de comparacion,
esta vez se debe incluir retardos en el tiempo por lo cual habra que modificar los vectores de tiempo en conjunto
con los de valores de senales, para que, por medio de ceros en los vectores, hacer un efecto de retraso en la
senal. Esta vez se utilizo una sola senal para buscar el u nico sistema variante en el tiempo, esta senal es un
impulso definido con amplitud 1 en el instante 0 seguido de muchos ceros a medida que el tiempo avanza. El
codigo fue hecho en base al diagrama de bloques anteriormente mostrado pero asumiendo que la ultima resta es
la comparacion visual de cada grafico y sus dos senales, en donde a la primera respuesta se le agrega un efecto de
retardo para as poder comparar de manera equitativa las dos senales, que de ser invariantes en el tiempo debieran
coincidir. Codigo y graficos que se muestran a continuacion:

1
2

%% senal impulso
prueba=[ts:ts:3];

tx=[ts:ts:2.3];

delta =[ones(1,1),zeros(1,2299)];

deltadesp =[zeros(1,700),ones(1,1),zeros(1,2299)];

resp1=bbox1(delta);

resp2=bbox2(delta);

resp3=bbox3(delta);

9
10

figure();

11

subplot 311

12

plot(tx,resp1,'linewidth',3);

13

subplot 312

14

plot(tx,resp2,'linewidth',3);

15

subplot 313

16

plot(tx,resp3,'linewidth',3);

17
18

resp12=bbox1(deltadesp);

19

resp22=bbox2(deltadesp);

20

resp32=bbox3(deltadesp);

21
22

normaldesplazada1=[zeros(1,700),resp1];

23

normaldesplazada2=[zeros(1,700),resp2];

24

normaldesplazada3=[zeros(1,700),resp3];

25
26

figure();

27

subplot 311

28

plot(prueba,resp12,'r','linewidth',3);

29

hold on

30

subplot 311

31

plot(prueba,normaldesplazada1,'b','linewidth',2);

32
33

subplot 312

34

plot(prueba,resp22,'r','linewidth',0.1);

35

axis([0,3,-1,1.5]);

36

hold on

37

subplot 312

38

plot(prueba,normaldesplazada2,'linewidth',2);

39
40

subplot 313

41

plot(prueba,resp32,'rx','linewidth',2);

42

hold on

43

subplot 313

44

plot(prueba,normaldesplazada3);

Como se puede a preciar en la figura 4 en el sistema bbox1 se produce una respuesta en el tiempo 0 muy parecida
a la misma entrada impulso, en el sistema bbox2 se produce una salida tipo escalon de amplitud 1, mientras
que en el sistema bbox3 la respuesta es igual a 0. Lo que se comprobara ahora es que estas mismas entradas,
pero desplazadas en el tiempo, deberan dar la misma respuesta, pero desplazadas tambien en el tiempo, lo cual
se puede ver en la figura 5.

respuesta impulso sistema bbox1


amplitud

2
1
0

0.5

1
1.5
Tiempo [s]
respuesta impulso sistema bbox2

0.5

1
1.5
Tiempo [s]
respuesta impulso sistema bbox3

0.5

1
Tiempo [s]

amplitud

2
1
0

amplitud

1
0
1

1.5

Figura 4. Respuestas a impulso sin retardo.

variabilidad sistema bbox1


amplitud

2
1

amplitud

0.5

1.5
2
Tiempo [s]
variabilidad sistema bbox2

2.5

0.5

1.5
2
Tiempo [s]
variabilidad sistema bbox3

2.5

0.5

2.5

1
0
1

amplitud

1
0
1

1.5
Tiempo [s]

Figura 5. Comprobacion de invariabilidad en el tiempo.

Se puede apreciar a simple vista que la respuesta del sistema bbox2 no se corresponde con el de la respuesta
desplazada que esta en la misma casilla, por lo cual e ste es es sistema variante en el tiempo buscado, por
ende de todos los demas, se podra decir, que son invariantes en el tiempo. En el primer y tercer sistema, el

impulso normal y el desplazado tuvieron la misma respuesta en amplitud y sacando los efectos del retraso las dos
respuestas se igualaban, cosa que no sucedio en el sistema bbox2 ya que el impulso sin retardo genero una salida
correspondiente a una senal oscilatoria, mientras que la senal desplazada, produjo una senal escalon retrasada,
por lo cual en e ste sistema si afectan los efectos de retardo y por ende con este contra ejemplo es suficiente para
determinar que el sistema bbox2 en variante en el tiempo.

b) Estabilidad y causalidad de los sistemas


Un sistema es estable en el sentido BIBO (bounded input, bounded output), siempre que se cumpla:

|h(n)| <

n=

Donde h(n) representa la respuesta a impulso del sistema, cuando es excitado con un impulso definido como
(n) = 1 cuando n = 0 y (n) = 0 cuando n 6= 0. De los apartados anteriores se pueden sacar conclusiones,
ya que en su analisis tambien se usaron senales impulso, y se puede concluir que el sistema bbox2 es inestable
ya que su salida no decae cuando el tiempo avanza hacia infinito, ya que la senal escalon y la senal de alta
frecuencia que se observa en la figura 5, no tiende a disminuir, ya que para asegurar estabilidad, en un sistema
estable cualquier excitacion de duracion finita a la entrada, como lo es esta vez el impulso, produce una respuesta
transitoria, es decir, una respuesta cuya amplitud decrece y se anula con el tiempo, lo que no ocurre en el sistema
bbox2 y si ocurre en los demas sistemas.
En el analisis de causalidad tambien se deben utilizar las respuestas al impulso, en donde hay que tener en cuenta
que un sistema causal cumple lo siguiente:
h(n) = 0 para n < 0

Esto
quiere mas bien decir que en los instantes anteriores a cuando el impulso es distinto de 0, o sea cuando
(n) = 1 la lectura debe ser de 0, o mas bien una respuesta nula ya que en teora la entrada es nula. Para asegurar
bien en analisis se creara una senal impulso distinta a las que se ha trabajado, para este caso sera una senal
impulso en donde venga declarado un valor de amplitud 0 antes del propio instante 0, cosa que no fue necesario
en las prueba con las otras propiedades, en donde el impulso solo fue definido desde el instante 0 en adelante.
Se ha generado el siguiente codigo para la comprobacion de causalidad en donde a continuacion se encuentran
los graficos generados.

%% causalidad de sistemas

na=20;

nb=20;

tiempo=-na:nb;

delta=dirac(tiempo);

6
7

for i=1:length(tiempo)

if(delta(i)==inf)

delta(i)= 1;

10

end

11

end

12

stem(tiempo,delta); %creacion de impulso discreto

13
14
15

x1=bbox1(delta);

16

x2=bbox2(delta);

17

x3=bbox3(delta);

18
19

subplot 311

20

plot(tiempo,x1,'linewidth',2);

21

xlim([-na nb]);

22

grid on

23

xlabel('Tiempo [s]');

24

ylabel('amplitud');

25

title('causalidad sistema bbox1');

26
27

subplot 312

28

plot(tiempo,x2,'linewidth',2);

29

xlim([-na nb]);

30

grid on

31

xlabel('Tiempo [s]');

32

ylabel('amplitud');

33

title('causalidad sistema bbox2');

34
35

subplot 313

36

plot(tiempo,x3,'linewidth',2);

37

xlim([-na nb]);

38

grid on

39

xlabel('Tiempo [s]');

40

ylabel('amplitud');

41

title('causalidad sistema bbox3');

causalidad sistema bbox1


amplitud

2
1
0
20

15

10

15

10

15

10

0
5
muestras [n]
causalidad sistema bbox2

10

15

20

10

15

20

10

15

20

amplitud

1
0
1
20

0
5
muestras [n]
causalidad sistema bbox3

amplitud

1
0
1
20

0
muestras [n]

Figura 6. Comprobacion de causalidad.

Como se observa en los graficos los sistemas bbox1 y bbox2 no se cumple con la condicion de causalidad
mencionada anteriormente, ya que la salida no es 0 o nula antes del instante 0, por lo tanto estos sistemas son
no causales, mientras que el sistema bbox3 si cumple con la propiedad, ya que antes del instante 0 su salida es
nula.
En un analisis mas extenso se puede decir que un sistema causal solo depende de las entradas presentes y pasadas
como tambien de salidas pasadas, cosa que no se cumple al ver el comportamiento del sistema bbox2, ya que
como se observa en la figura 5, la naturaleza de su respuesta cambia dependiendo del lugar en el tiempo en donde
se representa el impulso, ya que por una parte se obtiene una respuesta tipo escalon y por otra, una senal mas
cercana a una senal sinusoidal o de ruido, distinto es en el caso de bbox1 ya que para descubrir su no causalidad,
hubo que definir un tiempo negativo cosa que no se observo en los analisis anteriores.

2-B.

DE SISTEMAS
INVERSION

Considere el sistema y = SA (x) dado por y[n] = 21 y[n 1] x[n].


1) Obtenga una expresion para el sistema inverso y = SB (x) de modo que = SB (SA ()), donde representa
una funcion impulso en tiempo discreto. Ya que los sistemas son lineales, para cualquier entrada x[n] se obtiene
x = SB (SA (x)). Estos sistemas se llaman inversos ya que cancelan sus efectos mutuamente.
Para encontrar la expresion y = SB (x) se hara uso de una propiedad que relaciona los sistemas inversos y la
convolucion, esta dice que:
h(n) hi(n) = (n)

donde h(n) corresponde a la respuesta impulso del sistema y = SA (x) y hi(n) es la respuesta impulso del sistema
y = SB (x).
Esta propiedad permite encontrar hi(n) para una respuesta h(n) determinada. Pero en el dominio del tiempo
se hace bastante complicado, por tanto se hace uso de la transformada Z para encontrar mas facilmente esta
expresion, quedando la propiedad de la forma:
h(z)hi(z) = 1
Donde se despeja hi(z)
hi(z) =

1
h(z)

Dicho lo anterior, a la expresion y = SA (x), se le aplicara la transformada Z, para obtener su respuesta impulso
de manera mas rapida.
y(z) =

1
y(z)z 1 x(z)
2

1
y(z)(1 z 1 ) = x(z)
2
h(z) =

y(z)
=
x(z)

1
1 1
2z

Tomando en cuenta las expresiones anteriores:


hi(z) =

1 1
z 1
2

Donde la respuesta impulso del sistema inverso en el tiempo sera:


hi(n) =

1
(n 1) (n)
2

De la expresion anterior es posible saber cual es la funcion que representa al sistema y = SB (x), este vendra a
ser el siguiente:
y = SB (x) =

1
x(n 1) x(n)
2

2) Escriba una funcion en Matlab que implemente el sistema y = SB (x) y obtenga la respuesta de impulso de
SB y SB (SA ).

t =0:10; %definicion de un vector tiempo.

2
3

figure

imp = zeros(1,11); %definicion de un vector para representar un impulso.

imp(1)=1;

%se define el primer valor del vector impulso como 1.

stem(t,imp);

%grafica del impulso.

title('Funcion Impulso','FontWeight','Bold','Fontsize',10,'Color','k')

% Titulo

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

% Etiqueta el eje x

ylabel('Y = Impulso','FontWeight','Bold','Fontsize',8,'Color','k')

% Etiqueta el eje y

10
11
12

x=imp;

%se define la entrada 'x' como un impulso.

13
14

figure

15

y = [1,11];

16

y(1) = 0.5*(0)-x(1);

17

n=1;

18

for i=1:10

19
20

%se define la funcion 'y' como un vector


%funcion que define a 'y'; en este caso el primer valor.

%definicion de 'n' como 1; deberia ser 0


%inicio de un ciclo for para generar la funcion 'y'.

n=n+1;

%se va aumentando el valor de 'n'.

y(n)=0.5*(y(n-1))-x(n);

%la funcion 'y'; este caso los valores siguientes.

21

end

22

stem(t,y);

23

title('Funcion Y=SA(Impulso)','FontWeight','Bold','Fontsize',10,'Color','k') % Titulo

24

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

% Etiqueta el eje x

25

ylabel('Y=SA(Impulso)','FontWeight','Bold','Fontsize',8,'Color','k')

% Etiqueta el eje y

%grafica de la funcion 'y'; especificamente su respuesta impulso de y=SA(x).

26
27

figure

28

h_2 = [1,11];

29

h_2(1) = -(x(1)-0.5*0); %funcion que define a 'h_2'; en este caso el primer valor.

30

n=1;

%definicion de 'n' como 1; deberia ser 0

31

for i=1:10

%inicio de un ciclo for para generar la funcion 'h_2'.

32

n=n+1

33

h_2(n) = -(x(n)-0.5*x(n-1));

34

end

35

stem(t,h_2);

36

title('Funcion Y=SB(Impulso)','FontWeight','Bold','Fontsize',10,'Color','k')

% Titulo

37

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

% Etiqueta el eje x

38

ylabel('Y=SB(Impulso)','FontWeight','Bold','Fontsize',8,'Color','k')

% Etiqueta el eje y

%se define la funcion 'h_2' como un vector

%se va aumentando el valor de 'n'.


%la funcion 'h_2'; este caso los valores siguientes.

%grafica de la funcion 'h_2'; que es la respuesta impulso de y = SB(x).

39
40

figure

41

y_2 = [1,11];

42

y_2(1) = -(y(1)-0.5*(0)); %funcion que define a 'y_2'; en este caso el primer valor.

43

n=1;

44

for i=1:10

45

n=n+1

46

y_2(n) = -(y(n)-0.5*y(n-1)); %la funcion 'y_2'; este caso los valores siguientes.

47

end

48

stem(t,y_2); %grafica de la funcion 'y_2'; que es la respuesta impulso de y_2 = SB(SA(x)).

49

title('Funcion Y=SB(SA(Impulso))','FontWeight','Bold','Fontsize',10,'Color','k') % Titulo

50

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

% Etiqueta el eje x

51

ylabel('Y=SB(SA(Impulso))','FontWeight','Bold','Fontsize',8,'Color','k')

% Etiqueta el eje y

%se define la funcion 'y_2' como un vector

%definicion de 'n' como 1; deberia ser 0


%inicio de un ciclo for para generar la funcion 'y_2'.
%se va aumentando el valor de 'n'.

Funcin Impulso
1
0.9
0.8

Y = Impulso

0.7
0.6
0.5
0.4
0.3
0.2
0.1
0

10

10

Figura 7. Funcion impulso.

Funcin Y=SA(Impulso)
0
0.1
0.2

Y=SA(Impulso)

0.3
0.4
0.5
0.6
0.7
0.8
0.9
1

6
n

Figura 8. Respuesta a impulso SA .

Funcin Y=SB(Impulso)
0.5

Y=SB(Impulso)

0.5

10

10

Figura 9. Respuesta a impulso SB .

Funcin Y=SB(SA(Impulso))
1
0.9
0.8

Y=SB(SA(Impulso))

0.7
0.6
0.5
0.4
0.3
0.2
0.1
0

6
n

Figura 10. Respuesta SB (SA (Impulso)).

3) Exprese el sistema y = SB (x) utilizando una ecuacion de diferencias no recurrente (la salida depende solo
de las componentes de la entrada) y una ecuacion de diferencias recurrente (la salida depende tanto de las
componentes de la entrada como de la componentes previas de la salida). Dibuje los diagramas en bloque de estas

dos implementaciones Es la respuesta a impulso igual en estos casos? Justifique.


Para la ecuacion de diferencias de tipo no recurrente basta con usar la definida en el punto 1. Esta es:

y = SB (x) =

1
x(n 1) x(n)
2

El diagrama de bloques de esta expresion sera:

Figura 11. Diagrama de bloques no recurrente.

Ahora para la ecuacion de caracter recurrente, es necesario implementar de alguna forma los valores de la salida
previos. Para ello se hace uso de una propiedad matematica, basada en encontrar la media acumulada de la funcion
0 0

x en el intervalo 0 k n, y tambien en el intervalo 0 k n 1.

y(n) =

y(n) =

y(n) =

y(n) =

n
n1
X
X1
1
(
x(k) +
x(k))
n + 1 n=0
2
n=0

n1
X
1
1
(
x(k) x(k) + x(n 1))
n + 1 n=0
2

1
1
1
(ny(n 1) x(n) + (n 1)y(n 2) + x(n 1))
n+1
2
2

n
1
(n 1
1
y(n 1)
x(n) +
)y(n 2) +
x(n 1)
n+1
n+1
2(n + 1)
2(n + 1)

El diagrama de bloques de esta expresion sera:

Figura 12. Diagrama de bloques recurrente.

Para el caso de aplicar una entrada impulso a cada expresion las respuestas no son iguales, esto debido al hecho
de que la segunda ecuacion es recursiva. Para la primera funcion su salida depende netamente del impulso como

entrada, esto quiere decir que la funcion y(n) no recursiva solo tendra un valor distinto de 0 cuando el argumento
de la entrada sea 0. En cambio, en la funcion recursiva el valor de y(n) como toma en cuenta las salidas previas,
su respuesta variara dependiendo de los valores que vaya emitiendo la senal. Cabe mencionar el hecho de cuando
n = 0 la respuesta de la senal recursiva como la de la senal no recursiva son iguales, y cuando n < 0, las senales
ya no emiten los mismos valores, esto ya que las salidas previas de y(n) son 0 porque la senal impulso de entrada
en esos puntos es nula.
2-C.

INTEGRALES Y DERIVADAS EN TIEMPO DISCRETO

Considere los siguientes sistemas en tiempo continuo:


d
La derivada esta dada por el sistema y = S1 (x) donde y(t) = dt
x(t).
Rt
La integral esta dada por el sistema y = S2 (x) donde y(t) = x( ) d.

1) Formule sistemas en tiempo discreto que aproximen los sistemas continuos S1 y S2 , Son estas aproximaciones
u nicas?.
Luego de discretizar la funcion, es decir representar la senal en un plano discreto, o sea, proceso por el cual
las respuestas al sistema seran solo un muestreo de la respuesta del mismo sistema. Para el sistema S1 (x), su
respuesta discretizada sera la derivada de la senal de entrada x(t), sabiendo que la derivacion numerica se da
como:
y(x + h) y(x)
d y(t)
=
dx
h

Figura 13. Derivacion numerica.

En la figura 13, h sera el espacio entre cada muestra, es decir el tiempo de muestreo ts. Aplicando la notacion
acorde a los contenidos, la aproximacion al sistema S1 (x) es la siguiente:
d x(t)
x(n + ts) x(n)
=
dx
ts
Para el sistema integrador se utilizo el metodo del trapecio de integracion numerica, en el cual:
Z b
ba
f (x)dx = (
) (f (a) + f (b))
2
a
En donde a equivale en este caso a un tiempo de muestro, y b al siguiente tiempo de muestreo, la idea es calcular

el a rea entre tiempos de muestreo y graficar ese valor para un tiempo de muestreo, la sumatoria total de esas
a reas es 0 pero no se graficara la sumatoria. A continuacion el codigo propuesto:

clc

clear

fs=50*100; %frecuencia de muestreo

ts=1/fs; %tiempo de muestreo

t=ts:ts:0.05; %corrimientos

x = sin(2*pi*100*t); %senal de entrada

y1=((sin(2*pi*100*(t+ts)))-(sin(2*pi*100*t)))/ts; %funcion derivada

y2=(ts/2)*(sin(2*pi*100*t) + sin(2*pi*100*(t+ts)));

suma=sum(y2);

10
11
12

subplot 411

13

grid on

14

stem(t,x)

15

grid on

16

title('Senal Original')

17

xlabel('Tiempo[S]')

18

ylabel('Amplitud')

19
20

subplot 412

21

grid on

22

stem(t,y1)

23

grid on

24

title('Senal Derivada')

25

xlabel('Tiempo[S]')

26

ylabel('Amplitud')

27
28

subplot 413

29

grid on

30

plot(t,y2)

31

grid on

32

title('Senal integrada')

33

xlabel('Tiempo [S]')

34

ylabel('Amplitud')

35
36

subplot 414

37

grid on

38

plot(t,suma,'r')

39

grid on

40

title('Sumatoria integral')

41

xlabel('Tiempo [S]')

42

ylabel('Amplitud')

Como se puede apreciar, la derivada cambia de amplitud respecto a la senal original, e sto dado que la funcion
cambia de valor para cada punto derivado, y es logico ya que matematicamente la derivada de sen(t) es cos(wt).
Para el caso de la integral, se ve que la amplitud en cada punto corresponde al a rea entre tiempos de muestreo,

Seal Original
Amplitud

1
0
1

0.005

0.01

0.015

0.02

0.025
Tiempo[S]
Seal Derivada

0.03

0.035

0.04

0.045

0.05

0.005

0.01

0.015

0.02

0.025
Tiempo[S]
Seal integrada

0.03

0.035

0.04

0.045

0.05

0.005

0.01

0.015

0.02

0.025
Tiempo [S]
Sumatoria integral

0.03

0.035

0.04

0.045

0.05

0.005

0.01

0.015

0.02

0.025
Tiempo [S]

0.03

0.035

0.04

0.045

0.05

Amplitud

1000
0
1000

0
4

Amplitud

x 10

0
2

Amplitud

1
0
1

Figura 14. Derivada e Integral de la funcion.

y si calculamos la sumatoria de estas a reas, su resultado es 0.


Si se resuelve analticamente se puede ver que el resultado efectivamente es 0:
Z 0,05
sen(2100t)dx = 0
0

Se puede acotar que para calcular las integrales o derivadas existen muchos otros metodos numericos disponibles,
para la derivada por ejemplo existe el metodo de Euler, para la integral existe el metodo del punto medio y la
regla de simpson.

2) Escriba las ecuaciones de diferencias que describan a los sistemas representados en el punto anterior. Las
ecuaciones de diferencias deben ser compactas, es decir sin sumatorias.
Para el sistema S1 (x):
1
1
x(x0 + ts) x(x0 )
ts
ts
Y para el Sistema S2 (x) :
ts
ts
x(x0 ) + x(x0 + ts)
2
2
3) Dibuje el diagrama en bloque de ambos sistemas anteriores.
A partir de las ecuaciones en diferencias para cada sistema, se obtiene el diagrama de bloques para cada uno,
teniendo en cuenta que n = tf s, entonces x0 corresponde a n, Es importante tambien destacar que X[n] es la
entrada discretizada.
Para el sistema S1 (x) :
Para el sistema S2 (x) :

Figura 15. diagrama de bloques S1 .

Figura 16. diagrama de bloques S2 .

5) Considere la senal de entrada a los sistemas S1 y S2 dada por x[n] = [n] [n 5] entre las muestras
10 n 20. Grafique la senal original, su derivada e integral para el mismo intervalo de tiempo en cuadros
distintos utilizando subplot.

clear all

close all

clc

na=10;

nb=20;

n=-na:nb;

n1=-10:20

n2=-10:20

delta_1=[zeros(1,10),ones(1,1),zeros(1,4),(-1),zeros(1,15)];

10
11
12

figure

13

subplot 311

14

stem(n1,delta_1,'b','fill','linewidth',2);

15

grid on

16

title('Funcion Impulso Compuesta: x[n]=d[n]-d[n-5]')

17

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

18

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

19

set(gca,'FontWeight','Bold','Fontsize',8);

20

%%derivada

21

for i=2:31

22

der(i)=(delta_1(i)-delta_1(i-1));;

23

end

24

subplot 312

25

stem(n2,der);

26

grid on

27

title('Derivada Funcion Impulso Compuesta: x[n]=d[n]-d[n-5]')

28

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

29

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

30

set(gca,'FontWeight','Bold','Fontsize',8);

31
32

%%integral

33

for i=2:31

34

int(i)=delta_1(i-1)+((delta_1(i)));

35

end

36

subplot 313

37

stem(n2,int);

38

title('Integral Funcion Impulso Compuesta: x[n]=d[n]-d[n-5]')

39

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

40

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

41

set(gca,'FontWeight','Bold','Fontsize',8);

Funcion Impulso Compuesta: x[n]=d[n]d[n5]

1
10

5
n

10

15

20

Derivada Funcion Impulso Compuesta: x[n]=d[n]d[n5]

1
10

5
n

10

15

20

Integral Funcion Impulso Compuesta: x[n]=d[n]d[n5]

1
10

5
n

10

15

20

Figura 17. Derivada e Integral de senal impulso compuesta.

Cabe mencionar que una senal discreta es una senal de muestras, es decir se compone de sumatoria de datos. Es
por ello que al derivar o integrar una senal de este de tipo de la misma forma que las de tipos continua, no es
un metodo correcto. Es por lo anterior que en el a mbito discreto la derivada de una senal se transforma en una
diferencia, y la integral en una sumatoria. En ambos casos lo que se hace es agregar un adelanto o un retraso; en
el caso de esta resolucion se uso un retraso. Al agregar un retraso a la funcion original, genera un desplazo en la
senal que se aprecia en la grafica; tanto para el caso de la derivada como de la integral. 6) Considere la senal de
entrada a los sistemas anteriores x[n] = u[n] u[n (N + 1)], con N = 10 y entre las muestras 10 n 20.
Grafique la senal original, su derivada e integral para el mismo intervalo de tiempo en cuadros distintos utilizando
subplot

clear all

close all

clc

4
5

n=-10:20;

x=[zeros(1,10),ones(1,10),zeros(1,11)];

7
8

figure

subplot 311

10

stem(n,x,'b','fill','linewidth',2);

11

grid on

12

title('Funcion Compuesta: y[n]=u[n]-u[n-11]')

13

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

14

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

15

set(gca,'FontWeight','Bold','Fontsize',8);

16
17

%%

18

for i=2:31

19

der(i)=(x(i)-x(i-1));

20

end

21

subplot 312

22

stem(n,der);

23

grid on

24

title('Derivada Funcion Compuesta: y[n]=u[n]-u[n-11]')

25

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

26

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

27

set(gca,'FontWeight','Bold','Fontsize',8);

28
29

%%

30

for i=2:31

31

int(i)=x(i-1)+x(i);

32

end

33

subplot 313

34

stem(n,int);

35

title('Integral Funcion Compuesta: y[n]=u[n]-u[n-11]')

36

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

37

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

38

set(gca,'FontWeight','Bold','Fontsize',8);

Funcion Compuesta: y[n]=u[n]u[n11]

0.5

0
10

5
n

10

15

20

Derivada Funcion Compuesta: y[n]=u[n]u[n11]

1
10

5
n

10

15

20

Integral Funcion Compuesta: y[n]=u[n]u[n11]

0
10

5
n

10

15

20

Figura 18. Derivada e Integral de senal escalon compuesta.

Para este caso de senal discreta, si existe una derivada y una integral. En el caso de la senal escalon, su derivada
corresponde a un impulso y su integral a una rampa. Para su implementacion, es recomendable usar el mismo
metodo que en el punto anterior; donde se ve la derivada como una diferencia y la integral como una sumatoria.
Se ve en la grafica de la derivada un comportamiento tipo impulso, y en la de la integral un comportamiento tipo
rampa.
7) Descargue los archivos de audio music.wav y speech.wav de la pagina web del laboratorio (archivo
adjunto en el e-mail). Utilice estas senales como entrada a los sistemas anteriores y comente como los sistemas
alteran la calidad del sonido. Grafique la senal original, su derivada e integral en cuadros distintos utilizando
subplot.

clear all

close all

clc

fs=8000;

5
6

tono='music.wav'; %%cambia el nombre de archivo

siz=wavread(tono,'size');

[x,fs]=wavread(tono);

9
10
11

figure

12

subplot 311

13

sound(x,fs);

14

plot(x);

15

grid on

16

title('Funcion Compuesta: y[n]=u[n]-u[n-11]')

17

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

18

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

19

set(gca,'FontWeight','Bold','Fontsize',8);

20
21

%%

22

for i=2:65001

23

der(i)=(x(i)-x(i-1));

24

end

25

subplot 312

26

sound(der,fs);

27

stem(der);

28

grid on

29

title('Derivada music.wav')

30

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

31

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

32

set(gca,'FontWeight','Bold','Fontsize',8);

33
34

%%

35

for i=2:65001

36

int(i)=x(i-1)+x(i);

37

end

38

subplot 313

39

sound(int,fs);

40

stem(int);

41

title('Integral music.wav ')

42

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

43

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

44

set(gca,'FontWeight','Bold','Fontsize',8);

Funcion sonido music.wav

1
0
1
0

7
4

x 10

Derivada sonido music.wav


0.5
y

0
0.5
0

7
4

x 10

Integral sonido music.wav

2
0
2
0

Figura 19. Derivada e Integral de music wav.

7
4

x 10

Funcion sonido speech.wav

1
0
1
0

10

12

14
4

x 10

Derivada sonido speech.wav


0.5
y

0
0.5
0

10

12

14
4

x 10

Integral sonido speech.wav

2
0
2
0

10

12

14
4

x 10

Figura 20. Derivada e Integral de speech wav.

Para este caso tambien se aplica el cambio de caso continuo a discreto. Es decir, la derivada es una diferencia y
la integral una sumatoria. En el uso de sonido este proceso si bien se ve cierta diferencia en las amplitudes de
las graficas, es mas perceptible el cambio al escucharlos. En el sonido de la derivada, se siente una baja en el
volumen. Y para la integral, el volumen crece.
8) En funcion de las aproximaciones previas de los sistemas S1 y S2 , escriba las ecuaciones de diferencias para
una doble derivada y = S1 (S1 (x)), doble integral y = S2 (S2 (x)), y la integral de la derivada y = S2 (S : 1(x)),
y la derivada de la integral y = S1 (S2 (x)).

clear all

close all

clc

na=10;

nb=20;

n=-na:nb;

n1=-10:20

n2=-10:20

delta_1=[zeros(1,10),ones(1,1),zeros(1,4),(-1),zeros(1,15)];

10
11
12

%%

13

for i=2:31

14

der(i)=(delta_1(i)-delta_1(i-1));

15

end

16

for i=2:31

17
18

der_2(i)=(der(i)-der(i-1));
end

19

subplot 411

20

stem(n2,der_2);

21

grid on

22

title('Derivada Segunda Funcion Impulso Compuesta: x[n]=d[n]-d[n-5]')

23

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

24

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

25

set(gca,'FontWeight','Bold','Fontsize',8);

26
27

%%

28

for i=2:31

29

int(i)=delta_1(i-1)+((delta_1(i)));

30

end

31

for i=2:31

32

int_2(i)=int(i-1)+((int(i)));

33

end

34

subplot 412

35

stem(n2,int_2);

36

title('Integral Segunda Funcion Impulso Compuesta: x[n]=d[n]-d[n-5]')

37

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

38

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

39

set(gca,'FontWeight','Bold','Fontsize',8);

40

%%

41

for i=2:31

42

der(i)=(delta_1(i)-delta_1(i-1));

43

end

44

for i=2:31

45

int_3(i)=(der(i)+der(i-1));

46

end

47

subplot 413

48

stem(n2,int_3);

49

grid on

50

title('Int. de Der. Funcion Impulso Compuesta: x[n]=d[n]-d[n-5]')

51

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

52

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

53

set(gca,'FontWeight','Bold','Fontsize',8);

54
55

%%

56

for i=2:31

57

int(i)=delta_1(i-1)+((delta_1(i)));

58

end

59

for i=2:31

60

der_3(i)=int(i-1)-((int(i)));

61

end

62

subplot 414

63

stem(n2,der_3);

64

title('Der. de Int. Funcion Impulso Compuesta: x[n]=d[n]-d[n-5]')

65

xlabel('n','FontWeight','Bold','Fontsize',8,'Color','k')

66

ylabel('y','FontWeight','Bold','Fontsize',8,'Color','k')

67

set(gca,'FontWeight','Bold','Fontsize',8);

En el punto 5, se definio la derivada e integral en el plano discreto, y para este caso es el mismo metodo. Hay

Derivada Segunda Funcion Impulso Compuesta: x[n]=d[n]d[n5]


y

2
0
2
10

5
n

10

15

20

Integral Segunda Funcion Impulso Compuesta: x[n]=d[n]d[n5]


y

2
0
2
10

5
n

10

15

20

Int. de Der. Funcion Impulso Compuesta: x[n]=d[n]d[n5]


y

1
0
1
10

5
n

10

15

20

Der. de Int. Funcion Impulso Compuesta: x[n]=d[n]d[n5]


y

1
0
1
10

5
n

10

15

20

Figura 21. graficos enunciado 8.

que decir que para el caso de la integral de la derivada y la derivada de la integral el valor original del muestreo
en relacion a la senal original crece; de 1 a 2, y ademas se genera un nuevo retraso en el muestreo. Para el caso
de la derivada e integral de segundo orden, se vuelve a repetir el caso de las de primer orden, es decir se enfatiza
aun mas su aplicacion.

9) Dibuje el diagrama en bloque de los sistemas del punto anterior.

Figura 22. Diagrama de bloques derivada de derivada.

Figura 23. Diagrama de bloques integral de integral.

Figura 24. Diagrama de bloques integral de derivada.

Figura 25. Diagrama de bloques derivada de integral.

C ONCLUSIONES
Queda de manifiesto que las senales de tipo discreto son de principal uso para su procesamiento. Se vio que si bien,
su uso es mas complejo que las de tipo continua, su aplicacion parece ser mas amplia, como es el caso de los sonidos.
Recalcar la importancia de las senales de prueba como el impulso, escalon y rampa, donde con su uso se puede
determinar propiedades de los sistemas de manera sencilla.
Mencionar tambien que la transformada Z viene a ser una herramienta de gran utilidad para el procesamiento de
senales, esto porque su importancia radica en que permite reducir Ecuaciones en Diferencias o ecuaciones recursivas
con coeficientes constantes a Ecuaciones Algebraicas lineales dando as una facilidad a la hora de realizar un analisis.

S-ar putea să vă placă și