Sunteți pe pagina 1din 6

Introducción al análisis de señales y sistemas

discretos
Aplicaciones de Matlab

Danny Javier Cuichán Ayo


Departamento de Eléctrica y electrónica
Universidad de las Fuerzas Armadas ESPE
Quito, Ecuador
djcuichna@espe.edu.ec

Resumen—En el mundo de la electrónica digital, se tiene varios B. Convolucion de 1 señal 4 veces


procesos de control de acuerdo a las diferentes señales que generan Este es muy parecido al anterior solo que, una vez que se
las distintas variables físicas, por lo que el uso de Matlab es útil
saque la convolucion de 𝑦1[𝑛] = 𝑥[𝑛] ∗ 𝑥[𝑛] se sacará otra vez
para diseñar de manera teórica estos sistemas de control digitales
(esto es facilitado mucho porque la computadora es digital). En el 𝑦2[𝑛] = 𝑦1[𝑛] ∗ 𝑦1[𝑛] con la función conv
siguiente documento se plantearán ejercicios resueltos con dicho C. Encontrar la respuesta de una ecuacion de diferencias
programa para mejorar la comprensión de los sistemas digitales (homogenea)
Palabras Clave—Matlab, Pobabilidad, Simulacion, Conteo Como disponemos de las condiciones iniciales, se logra
obtener la respuesta de manera sencilla usando un ciclo
I. INTRODUCCIÓN repetitivo donde se evalua la función para si misma, pero con
En el mundo, el desarrollo tecnológico esta basado en su valores anteriores, en el 1º caso es de 1 a 21 (no existen índices
mayoría por procesos digitales, los cuales nunca podrán ≤ 0) y en el otro casi de 2 a 22, con un mismo eje temporal.
representar a los valores reales de una variable, pero se gracias a D. Encontrar la respuesta impulsiva de una ecuacion de
ello (a su cuantizacion), podemos realizar muchas aplicaciones diferencias
que controlen a un sistema de acuerdo a su señal digital de
entrada. En este caso, simplemente es necesario extraer los
coeficientes de cada ecuación, y usando al comando impz(b,a,N)
Para eso, es necesario saber como muestrear a las señales donde b son los coeficientes de 𝑥, a de 𝑦 y N el numero de
continuas , de manera que nos facilite su control en un sistema elementos, obteniendo la respuesta impulsiva de cada sistema
digital, también como obtener el comportamiento y demás
características de un sistema de acuerdo a sus entradas y salidas E. Encontrar la respuesta de una ecuacion de diferencias
con ayuda de teoremas matemáticos y en su debida En este caso, es una combinación de A y D, donde, se
implementación, con circuitos que cuenten con dicha facilidad consigue las respuestas impulsivas, y luego se realiza la
convolucion entre la entrada muestreada y ℎ de cada ecuación.
El objetivo por tanto es la de Usar la herramienta de Matlab
para lograr comprender de mejor forma lo que sucede con una F. Convertidor A/D → Procesamiento → D/A
señal discreta mediante ejercicios, los cuales se mostraran a lo Similar al anterior ejercicio, primero se obtiene la señal
largo del documento continua, luego se muestrea la señal continua, después se obtiene
II. PROCEDIMIENTO la respuesta impulsiva del sistema, luego se realiza la
convolucion y dinalmente, a la señal obtenida se polariza para
A. Convolucion entre 2 señales obtener una señal continua de nuevo
En este ejercicio se dispone de 2 señales, las cuales son la
entrada x y la respuesta impulsiva h:
III. CÓDIGOS DE PROGRAMA
A. Convolucion entre 2 señales
%%Ejercicio 1
N=12;
n=0:N;
xn=(n>=0).*(n<=2)+(n>=7).*(n<=8);
hn=(n>=1).*(n<=4);
Para lo cual, se creó ambas señales de manera discreta y se yn=conv(xn,hn);
usó el comando conv n2=0:length(yn)-1;
%Graficas resultantes
%Graficas resultantes
figure(1) figure(1)
stem(n,xn) stem(n,y1)
hold on; hold on;
xlabel ('n') xlabel ('n')
ylabel('x[n]') ylabel('y1[n]')
hold off; hold off;

figure(2) figure(2)
stem(n,hn) stem(n,y2(2:22))
hold on; hold on;
xlabel ('n') xlabel ('n')
ylabel('h[n]') ylabel('y2[n]')
hold off;
hold off;
figure(3)
stem(n2,yn) D. Encontrar la respuesta impulsiva de una ecuacion de
hold on; diferencias
xlabel ('n') %%Ejercicio 4
ylabel('y[n]') %para las ecuaciones de diferencia
hold off; %y[n] + y[n − 1] + y[n − 2] = x[n]
%4y[n] + y[n − 1] + 3y[n − 2] = x[n] + x[n − 4]
B. Convolucion de 1 señal 4 veces %los vectores a y b son respectivamente:
%%Ejercicio 2 a1=[1 1 1];
N=4; b1=1;
n=0:N; a2=[4 1 3];
xn=(n>=0).*(n<=1) b2=[1 0 0 0 1];
yn=conv(xn,xn);
yn2=conv(yn,yn); %para n=30 muestras
n2=0:length(yn)-1; N=30;
n3=0:length(yn2)-1; n=0:N-1;

%Graficas resultantes %Los resultados son


h1=impz(b1,a1,N);
figure(1) h2=impz(b2,a2,N);
stem(n,xn)
hold on; %Graficas resultantes
xlabel ('n') figure(1)
ylabel('x[n]') stem(n,h1)
hold off; hold on;
xlabel ('n')
figure(2) ylabel('h1[n]')
stem(n2,yn) hold off;
hold on;
xlabel ('n') figure(2)
ylabel('y1[n]') stem(n,h2)
hold off; hold on;
xlabel ('n')
figure(3) ylabel('h2[n]')
stem(n3,yn2) hold off;
hold on;
xlabel ('n') E. Encontrar la respuesta de una ecuacion de diferencias
ylabel('y2[n]') %%Ejercicio 5
hold off; %Para determinar la respuesta de dicha entrada,
%se encuentra primero las respuestas al impulso
C. Encontrar la respuesta de una ecuacion de diferencias w=pi;
(homogenea) k=16;
N=30;
%%Ejercicio 3 h1=impz([1 1 1],1,N);
%Eje temporal h2=impz(1,[1 -1/2],N);
n=0:20; h3=impz([1 2 1],1,N);
%Condiciones iniciales de 1 %Se muestrea la señal original
y1(1)=1; T=2*pi/w;
y1(2)=0; n=0:T/k:3*T;
%Condiciones iniciales de 2 x=sin(w*n);
y2(1)=1; %Se realiza la convolucion entre h y x
y2(2)=1; y1=conv(h1,x);
y2(3)=-2*y1(1)-y(2); y2=conv(h2,x);
%Ciclo que determina la respuesta y3=conv(h3,x);
for i=3:21 %Y se crea los ejes temporales correspondientes
y1(i)=-2*y1(i-1)-y(i-2); n1=0:length(y1)-1;
y2(i+1)=-2*y1(i-1)-y(i); n2=0:length(y2)-1;
end n3=0:length(y3)-1;
IV. RESULTADOS
%Graficas resultantes
figure(1) >> Ejercicio1
stem(n1,y1)
hold on;
xlabel ('n')
ylabel('y1[n]')
hold off;

figure(2)
stem(n2,y2)
hold on;
xlabel ('n')
ylabel('y2[n]')
hold off;

figure(3)
stem(n3,y3)
hold on;
xlabel ('n')
ylabel('y3[n]')
hold off;
.
F. Convertidor A/D → Procesamiento → D/A
%%Ejercicio 6
%Pimero simulamos a la señal continua con 100 veces
la frecuencia de muestreo
f1=1000;
f2=1100;
fp=gcd(f1,f2);
T=1/fp;

fs=4000;
fm=100*fs;

t=0:1/fm:T;
xt=3*sin(2*pi*f1*t)+7*sin(2*pi*f2*t);

%de manera similar muestreamos la señal discreta

n=0:1:T*fs;
xn=3*sin(2*pi*f1*n./fs)+7*sin(2*pi*f2*n./fs);

%Se determina el valor de h


N=5;
h=impz([1 0 1],1,N);

%Se realiza la convolucion


yn=conv(xn,h);
n1=0:length(yn)-1;
%Graficas

figure(1)
plot(t,xt)
hold on;
xlabel ('t')
ylabel('x(t)')
hold off;
figure(2)
stem(n,xn)
hold on;
xlabel ('n')
ylabel('x[n]')
hold off;
figure(3)
stem(n1,yn)
hold on;
xlabel ('n')
ylabel('y[n]')
hold off;
%El siguiente paso es realizar una interpolacion de
las muestras obtenidas
>> Ejercicio2

>> Ejercicio4

>> Ejercicio3
>> Ejercicio5
>> Ejercicio6
V. REFERENCIAS

[1] P. Diniz, E. da Silva y S. Netto, Digital Signal


Processing: System Analysis and Design, Cambridge
University Press, 2010.
[2] H. Monson, Schaum’s Outline of Theory and Problems of
Digital Signal Processing, McGraw Hill, 2011.

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