You are on page 1of 23

UNIVERSIDAD DE ANTOFAGASTA

FACULTAD DE INGENIERÍA
DEPARTAMENTO DE INGENIERÍA ELECTRÍCA

SEGUNDA PRUEBA DE PROCESAMIENTO


DIGITAL DE SEÑALES:
LISTA DE EJERCICIOS RESUELTOS APOYADO
CON MATLAB.

ALAN BERGEL BRAVO


NELSON GONZÁLEZ ROJAS

Antofagasta, Mayo 2010


INDICE
Lista de figuras……..

2
LISTA DE FIGURAS

Figura 1.1.- Secuencia g(n)………………………………………………………


Figura 1.2.- DFDT de G2(k)………………………………………………………
Figura 2.1.- Generación de la ventana de las secuencias x1 y x2
realizado en MATLAB……………………………………………………………...
Figura 2.2.- Gráficas generadas por las Secuencias x1(n) y x2(n)...................
Figura 2.3.- Comandos y sentencias usados en MATLAB……………………
Figura 2.4.- Respuesta a impulso h(n)………………………………………….
Figura 2.5.- Comandos de MATLAB para generar el
Diagrama de Polos y Ceros………………………………………………………
Figura 2.6.- Diagrama de Polos y Ceros………………………………………..
Figura 2.7.- Comandos de MATLAB para obtener la
Respuesta en Frecuencia del sistema ‫ ݁ = ܪ‬௝ఠ ………………………………..
Figura 2.8.- Respuesta en Frecuencia del sistema ‫ ݁ = ܪ‬௝ఠ .
Magnitud y Fase…………………………………………………………………….
Figura 2.9.- Comandos utilizados en MATLAB para obtener la
Respuesta del Sistema y(n)…………………………………………………………
Figura 2.10.- Respuesta del Sistema y(n)…………………………………………
Figura 2.11.- Comandos utilizados en MATLAB para obtener las
Secuencias x(n), h(n) e y(n)…………………………………………………………
Figura 2.12.- Secuencias x(n), h(n) e y(n)…………………………………………
Figura 2.13.- Comandos utilizados en MATLAB para determinar DTFT G1,
comparación con su DTF de 16 puntos…………………………………………...
Figura 2.14.- Secuencia de g1(n)…………………………………………………..
Figura 2.15.- Comparación de DTFT G1 con su DTF de 16 puntos……………

3
INTRODUCCIÓN

Debido al crecimiento exponencial de la tecnología, el hombre se ha


visto en la obligación de estar en un constante estudio, análisis y mejora de
este. Para lograr aquello, es necesario contar con un tipo de ingeniería que
sea capaz de realizar estos análisis de una forma clara, correcta y certera.

En particular, si se desea analizar señales de audio, video, voz,


imágenes, existe un área de la ingeniería que se dedica a este tipo de
análisis denominada PDS (Procesamiento Digital de Señales) o DSP
(Digital Signal Processing). El procesamiento digital de señales es la
encargada del análisis y procesamiento de señales que son analógicas para
tratarlas como discretas.

Sin embargo, este tipo de análisis resulta infructuoso si se realiza solo


con la capacidad humana. Para lograr resultados rápidos y óptimos de este,
se debe utilizar programas matemáticos complejos, que facilitan
enormemente los cálculos matemáticos. El que se utiliza, en este caso, es el
programa matemático llamado MATLAB.

La finalidad de esta evaluación es entender y analizar el


comportamiento de señales digitales a través de métodos matemáticos como
son la Transformada Rápida de Fourier, Transformada Discreta de Fourier en
el tiempo, Transformada Discreta de Fourier. Aplicando, por cierto, MATLAB.

Se puede observar, además, el uso de MATLAB, sentencias, graficas,


con los cuales se obtienen resultados para finalmente poder discutir estos y
tener una conclusión satisfactoria.

4
CAPITULO 1:

EJERCICIOS PROPUESTOS PARA EVALUACIÓN.

1. Genere y dibuje en una sola ventana las siguientes secuencias:


a) ‫ݔ‬ଵ ሺ݊ሻ = ෌௠ୀ଴൫ሺ݉ + 1ሻ[ߜሺ݊ − 2݉ሻ − ߜሺ݊ − 2݉ − 1ሻ + ‫ݑ‬ሺ݊ − ݉ሻ]൯ ,
para 0≤n≤5. (1.1)


b) ‫ݔ‬ଶ ሺ݊ሻ = ሺ0.9ሻ௡ ቂcos ቀ0.2ߨ݊ + ଷ ቁ − ‫ݑ‬ሺ݊ − 1ሻቃ , para 0≤n≤20. (1.2)

2. Un sistema LIT es descrito por la siguiente ecuación de diferencia:


‫ݕ‬ሺ݊ሻ + 2.37‫ݕ‬ሺ݊ − 1ሻ + 2.7ሺ݊ − 2ሻ + 1.59‫ݕ‬ሺ݊ − 3ሻ + 0.41‫ݕ‬ሺ݊ − 4ሻ =
0.008‫ݔ‬ሺ݊ሻ − 0.033‫ݔ‬ሺ݊ − 1ሻ + 0.05‫ݔ‬ሺ݊ − 2ሻ − 0.033‫ݔ‬ሺ݊ − 3ሻ + 0.008‫ݔ‬ሺ݊ − 4ሻ
(1.3)

a) Determine la respuesta a impulso h(n).

b) A partir de las muestras de h(n), determine la estabilidad del sistema.

c) Determine la respuesta en frecuencia del sistema ‫ ݁ = ܪ‬௝ఠ . Dibuje


magnitud y fase en una sola ventana. Clasifique el filtro que representa al
sistema. De acuerdo a la respuesta en frecuencia del sistema, ¿qué
esperaría observar en la salida para la entrada x(n) descrita en el ítem
d)?.

d) Si la entrada al sistema es de la forma:


‫ݔ‬ሺ݊ሻ = [2 + 3cosሺ0.2ߨ݊ሻ + 4‫݊݁ݏ‬ሺ0.8ߨ݊ሻ]‫ݑ‬ሺ݊ሻ. (1.4)

5
Determine la respuesta del sistema y(n) para 0≤n≤ 200.
e) Dibuje en una misma ventana las secuencias x(n), h(n) e y(n).

3. A partir de la secuencia g(n) ilustrada en la Fig. 1.1, determine su DTFT


‫ܩ‬ଵ ሺ݁ ௝ఠ ሻ y compare en una misma figura con su DTF de 16 puntos.

4. A partir de la DFT ‫ܩ‬ଶ ሺ݇ሻ ilustrada en la Fig. 1.2, determine la secuencia


g(n).

Fig. 1.1.- Secuencia g(n).

Fig. 1.2.- DFDT de G2(k).

6
CAPITULO 2:

DESARROLLO EJERCICIOS PROPUESTOS.


1. Genere y dibuje en una sola ventana las siguientes secuencias:

a) ‫ݔ‬ଵ ሺ݊ሻ = ෌௠ୀ଴൫ሺ݉ + 1ሻ[ߜሺ݊ − 2݉ሻ − ߜሺ݊ − 2݉ − 1ሻ + ‫ݑ‬ሺ݊ − ݉ሻ]൯ ,
para 0≤n≤5. (2.1)

b) ‫ݔ‬ଶ ሺ݊ሻ = ሺ0.9ሻ௡ ቂcos ቀ0.2ߨ݊ + ଷ ቁ − ‫ݑ‬ሺ݊ − 1ሻቃ , para 0≤n≤20. (2.2)

Solución.
Para obtener la secuencia x1 (n) expandida, se resuelve la sumatoria que
está implicada en (2.1), obteniendo lo siguiente:
‫ݔ‬ଵ ሺ݊ሻ = ߜሺ݊ሻ − ߜሺ݊ − 1ሻ + ‫ݑ‬ሺ݊ሻ + 2[ߜሺ݊ − 2ሻ − ߜሺ݊ − 3ሻ + ‫ݑ‬ሺ݊ − 1ሻ] (2.3)
‫ݔ‬ଵ ሺ݊ሻ = ߜሺ݊ሻ − ߜሺ݊ − 1ሻ + ‫ݑ‬ሺ݊ሻ + 2ߜሺ݊ − 2ሻ − 2ߜሺ݊ − 3ሻ + 2‫ݑ‬ሺ݊ − 1ሻ] (2.4)

Luego usando MATLAB, se procede a elaborar la ventana que la


genera las secuencias x1 y x2, como se ilustra en la siguiente figura:

% Ejercicio 1
% Graficar en una sola ventana las secuencias x1 y x2
Clear all
clc
n1=[0:5];
x1=impseq(0,0,5)-impseq(1,0,5)+stepseq(1,0,0,5)+2*impseq(2,0,5)-
2*impseq(3,0,5)+2*stepseq(1,1,0,5)
n2=[0:20];
x2=(0.9).^(n2).*cos(0.2*pi*n2+pi/8)-stepseq(0.9,1,0,20);
figure
subplot(2,1,1);stem(n1,x1,'red');grid;xlabel('n');ylabel('x1(n)');
title('Secuencia x1(n)')
subplot(2,1,2);stem(n2,x2,'blue');grid;xlabel('n');ylabel('x2(n)');

Fig. 2.1.- Generación de la ventana de las secuencias x1 y x2 realizado en


MATLAB.

7
Finalmente se obtiene la gráfica generada por ambas secuencias a) y
b), como se muestra en la figura a continuación:

Fig. 2.2.- Gráficas generadas por las Secuencias x1(n) y x2(n).

8
2. Un sistema LIT es descrito por la siguiente ecuación de diferencia:
‫ݕ‬ሺ݊ሻ + 2.37‫ݕ‬ሺ݊ − 1ሻ + 2.7ሺ݊ − 2ሻ + 1.59‫ݕ‬ሺ݊ − 3ሻ + 0.41‫ݕ‬ሺ݊ − 4ሻ =
0.008‫ݔ‬ሺ݊ሻ − 0.033‫ݔ‬ሺ݊ − 1ሻ + 0.05‫ݔ‬ሺ݊ − 2ሻ − 0.033‫ݔ‬ሺ݊ − 3ሻ + 0.008‫ݔ‬ሺ݊ − 4ሻ
(2.5)
a) Determine la respuesta a impulso h(n).
Solución.
Como se puede observar, la ecuación (2.5) es una ecuación
diferencial, por lo que se utilizara la Transformada Z para convertir esta
ecuación diferencial en ecuación algebraica. Esto se puede realizar
directamente ya que es un sistema LIT.

Aplicando la Transformada Z a (2.5) se tiene:

ܻሺ‫ݖ‬ሻ + 2.37ܻሺ‫ݖ‬ሻ‫ି ݖ‬ଵ + 2.7ܻሺ‫ݖ‬ሻ‫ି ݖ‬ଶ + 1.59ܻሺ‫ݖ‬ሻ‫ି ݖ‬ଷ + 0.41ܻሺ‫ݖ‬ሻ‫ି ݖ‬ସ = 0.008ܺሺ‫ݖ‬ሻ −
0.033ܺሺ‫ݖ‬ሻ‫ି ݖ‬ଵ + 0.05ܺሺ‫ݖ‬ሻ‫ି ݖ‬ଶ − 0.033ܺሺ‫ݖ‬ሻ‫ି ݖ‬ଷ + 0.008ܺሺ‫ݖ‬ሻ‫ି ݖ‬ସ (2.6)

Factorizando en (2.6) Y(z) y X(z) para luego obtener la función de


transferencia
௒ሺ௭ሻ
‫ܪ‬ሺ‫ݖ‬ሻ = ௑ሺ௭ሻ (2.7)

ܻሺ‫ݖ‬ሻ[1 + 2.37‫ି ݖ‬ଵ + 2.7‫ି ݖ‬ଶ + 1.59‫ି ݖ‬ଷ + 0.41‫ି ݖ‬ସ ] =


ܺሺ‫ݖ‬ሻ[0.008 − 0.033‫ି ݖ‬ଵ 0.05‫ି ݖ‬ଶ − 0.033‫ି ݖ‬ଷ + 0.008‫ି ݖ‬ସ ] (2.8)

௒ሺ௭ሻ ଴.଴଴଼ି଴.଴ଷଷ௭ షభ ା଴.଴ହ௭ షమ ି଴.଴ଷଷ௭ షయ ା଴.଴଴଼௭ షర


‫ܪ‬ሺ‫ݖ‬ሻ = = (2.9)
௑ሺ௭ሻ ଵାଶ.ଷ଻௭ షభ ାଶ.଻௭ షమ ାଵ.ହଽ௭ షయ ା଴.ସଵ௭ షర

Luego, utilizando MATLAB se obtiene la respuesta a impulso h(n),


con los respectivos comandos.

9
Notar que para obtener la respuesta impulso h(n), se toman valores
discretos de n arbitrarios, que en este caso serán entre 0 y 100.

A continuación se muestra los comandos y sentencias usados en


MATLAB:

% Ejercicio 2 a)
figure
a=[1 2.37 2.7 1.59 0.41]; %coeficientes que acompañan Y(z)
b=[0.008 -0.033 0.05 -0.033 0.008];%coeficientes que acompañan X(z)
n=[-20:100]; %n=[0:100]
x=impseq(0,-20,100);
H=filter(b,a,x);
stem(n,H);title('Respuesta al impulso para el sistema h(n)');
xlabel('n');ylabel('h(n)');grid
%Para calcular la respuesta al impulso para el sistema h(n)
[R,p,c]=residuez(b,a)
% En caso de raices complejas, se necesita llevarlas a la forma
%exponencial, mediante:
Mp=abs(p') % magnitudes de los polos
format rat % Para expresar el angulo de los polos como fraccion
Ap=angle(p')/pi %angulos de los polos en unidades de pi

Fig. 2.3.- Comandos y sentencias usados en MATLAB.

Gráficamente se puede observar la respuesta impulso h(n) en la


siguiente figura:

10
Fig. 2.4.- Respuesta a impulso h(n).

11
b) A partir de las muestras de h(n), determine la estabilidad del sistema.
Solución.
Para poder observar la estabilidad del sistema se debe tener en
cuenta la ubicación de los polos de la función de transferencia (H(z)). Estos
polos deben estar ubicados dentro del círculo de radio unitario para que el
sistema resulte estable. En la figura 2.6 se muestra el diagrama de polos y
ceros, los cuales serán identificados con “x” y “o” respectivamente.

Usando MATLAB se tiene el Diagrama de Polos y Ceros, el cual es de


la siguiente manera:

zplane(b,a)
title('Diagrama de Polos y Ceros');
xlabel('Parte Real');ylabel('Parte Imaginaria')

Fig. 2.5.- Comandos de MATLAB para generar el Diagrama de Polos y Ceros.

Como se puede observar en la figura 2.6, el sistema es estable ya


que los polos (“x”) están ubicados dentro del círculo unitario. Se debe tener
claro, que un sistema es estable solo por la ubicación de los polos de la
función de transferencia H(z) y que estos deben estar dentro del círculo
unitario. Los polos corresponden a los miembros ubicados en el denominador
de cualquier función de transferencia.

12
Fig. 2.6.- Diagrama de Polos y Ceros.

13
c) Determine la respuesta en frecuencia del sistema ࡴ = ࢋ࢐࣓ . Dibuje
magnitud y fase en una sola ventana. Clasifique el filtro que
representa al sistema. De acuerdo a la respuesta en frecuencia del
sistema, ¿qué esperaría observar en la salida para la entrada x(n)
descrita en el ítem d)?.
Solución.

%Generar grafico magnitud y fase para respuesta en frecuencia H(ejw)


%H=freqz([M],[N],w) M:vector que contiene coeficientes numerador
% N:vector que contiene coeficientes denominador
w=-pi:(2*pi/256):pi;
H=freqz(b,a,w);
H_abs=abs(H)
fi=angle(H)
figure
subplot(2,1,1);stem(w/pi,H_abs);
xlabel('\omega');ylabel('|H(ejw)|');
title('Respuesta en Frecuencia H(ejw)');grid
subplot(2,1,2);stem(w/pi,fi);xlabel('\omega');ylabel('\theta');
title('Respuesta en Frecuencia H(ejw)');grid

Fig. 2.7.- Comandos de MATLAB para obtener la respuesta en frecuencia del


sistema ࡴ = ࢋ࢐࣓ .

Según la figura 2.8 se deduce que la respuesta en frecuencia del


sistema, magnitud y fase, arroja un gráfico el cual indica que se está en
presencia de un tipo de filtro ………………. Este filtro tiene como frecuencia
de corte………

14
Fig. 2.8.- Respuesta en Frecuencia del sistema ࡴ = ࢋ࢐࣓ .
Magnitud y Fase.

15
d) Si la entrada al sistema es de la forma:
‫ݔ‬ሺ݊ሻ = [2 + 3cosሺ0.2ߨ݊ሻ + 4‫݊݁ݏ‬ሺ0.8ߨ݊ሻ]‫ݑ‬ሺ݊ሻ.
Determine la respuesta del sistema y(n) para 0≤n≤ 200.
Solución.

% Ejercicio 2.d
% Determinar la respuesta del sistema a la entrada y(n)
nx=[0:200];
x=(2+3*cos(0.2*pi.*nx)+4*sin(0.8*pi.*nx));%nx=[0:200];
[delta,n]=impseq(0,0,100)
h=filter(b,a,delta);nh=[0:100];
[y,ny]=convm(x,nx,h,nh)
stem(y)
title('Respuesta del Sistema');xlabel('n');ylabel('|y(n)|');grid;

Fig. 2.9.- Comandos utilizados en MATLAB para obtener la Respuesta del


Sistema y(n).

16
Fig. 2.10.- Respuesta del Sistema y(n).

17
e) Dibuje en una misma ventana las secuencias x(n), h(n) e y(n).
%Ejercicio 2.e
figure
subplot(3,1,1);stem(ny,y,'blue');xlabel('n');ylabel('|y(n)|');
title('Secuencia y(n)');grid
subplot(3,1,2);stem(nx,x,'red');xlabel('n');ylabel('|x(n)|');
title('Secuencia x(n)');grid
subplot(3,1,3);stem(nh,h,'green');xlabel('n');ylabel('|h(n)|');
title('Secuencia h(n)');grid

Fig. 2.11.- Comandos utilizados en MATLAB para obtener las Secuencias


x(n), h(n) e y(n).

Fig. 2.12.- Secuencias x(n), h(n) e y(n).

18
3. A partir de la secuencia g(n) ilustrada en la Fig. 1.1, determine su
DTFT ࡳ૚ ሺࢋ࢐࣓ ሻ y compare en una misma figura con su DTF de 16 puntos.
Solución.
% Ejercicio 3
% Calculo de DTFT para g1(n)
n=[0:6];
g1=[2 6 5 5 4 1 1];
stem(n,g1);title('Secuencia g1(n)');xlabel('n');ylabel('g1(n)');grid

% Calculo de DTFT para secuencia g1(n)


k=0:600;w=(2*pi/600)*k;
X=g1*(exp(-2*j*pi/600)).^(n'*k);
magX=abs(X);angX=angle(X);
realX=real(X);imagX=imag(X);
figure
subplot(2,2,1);plot(w/600,magX);grid
xlabel('\pi');ylabel('|X|');title('Magnitud de X(\omega)')
subplot(2,2,3);plot(w/600,angX/pi);grid
xlabel('\pi');ylabel('radianes/\pi');title('Angulo \theta de X(\omega)')
subplot(2,2,2);plot(w/600,realX);grid;xlabel('\pi');
title('Parte Real de X(\omega)')
subplot(2,2,4);plot(w/600,imagX/pi);grid;xlabel('\pi');
title('Parte Imaginaria de X(\omega)')

Fig. 2.13.- Comandos utilizados en MATLAB para determinar DTFT G1


comparándola con su DTF de 16 puntos.

19
Fig. 2.14.- Secuencia de g1(n).

Fig. 2.15.- Comparación de DTFT G1 con su DTF de 16 puntos.

20
4. A partir de la DFT ࡳ૛ ሺ࢑ሻ ilustrada en la Fig. 1.2, determine la
secuencia g(n).

Falta fig. 2.16

Falta fig. 2.17

Algún comentario

21
CAPÍTULO 3:

CONCLUSIONES.

22
BIBLIOGRAFÍA.

[1] MONTENEGRO MALUENDA, Yasmín, Procesamiento Digital de


Señales, 2009.

[2] OPPENHEIM, Roland W. Schafer, Digital Signal Processing, Englewood


Cliffs, N. j.: Prentice Hall, 1975.

[3] INGLE, Vinay k., PROAKIS, John G., Digital Signal Processing using
MATLAB V. 4, PWS Publishing Company, 1997.

23

You might also like