Body: Militares
comunicaciones seguras
radar
sonar
guía de misiles
Body: Telecomunicaciones
cancelación de eco
ecualización adaptiva
espectro disperso
video conferencias
comunicaciones de datos
Body: Biomedicina
monitoreo de pacientes
scaners
EEG
ECG
almacenamiento/enriquecimiento de rayos x
Body: En MATLAB:
Toolbox Signal
Otros Archivos-m
Blockset dspblks
Body: Representación de señales
Señales de tiempo continuo: muestras de ellas, suficientemente cercanas (razón de Nyquist)
? Graficar 5 periodos de una señal senoidal de amplitud 1 y frecuencia 20 Hz
a) Graficar 10 puntos
b) Graficar 20 puntos
c) Graficar 150 puntos
Body: Señal senoidal de 20 Hz y amplitud 1. N es el número de muestras a graficar
N=10;
t=0:0.05/N:0.25;
y=sin(2*pi*20*t);
plot(t,y)
Body: MATLAB es ideal para señales y sistemas de tiempo discreto
Para señales y sistemas de tiempo continuo se tienen que tomar muestras
Cada señal para que esté representada requiere de dos vectores:
valores de los elementos
tiempos a que corresponden los elementos
Body: Aquí se muestran algunas secuencias comunes:
Vector de tiempos: t = (0:.001:1)';
Impulso unitario: y = [1; zeros(99,1)];
Escalón: y = ones(100,1);
Rampa: y = t;
Cuadrado: y = t.^2;
Onda cuadrada: y = square(4*t);
Body: Formas de onda comunes
sawtooth: diente de sierra
square: cuadrada
Ejemplo. 1.5 seg. De una onda cuadrada de 50 Hz con una razón de muestreo de 10 KHzTo
Fs = 10000;
t = 0:1/Fs:1.5;
x = sawtooth(2*pi*50*t);
plot(t,x), axis([0 0.2 –1 1])
Body: Funciones para generar formas de onda aperiódicas:
gauspuls: genera un pulso senoidal modulado con una gausiana,
chirp genera una señal coseno barrida en la frecuencia
Body: Ejemplo: 2 segundos de una señal lineal chirp con una razón de muestreo de 1KHz que comienza en DC y termina en 150 Hz en un segundot = 0:1/1000:2;
y = chirp(t,0,1,150); % Plot the spectrogram
specgram(y,256,1000,256,250)
Frequency
Body: Un filtro digital es un sistema lineal e invariante en el tiempo (LTI) cuya salida es obtenida al atenuar selectivamente componentes de frecuencia, tanto de magnitud como de fase
La salida y(n) de un filtro digital está relacionada con su entrada x(n) por la convolución de ésta con la respuesta al impulso h(n) del filtro:
y(n)=x(n)*h(n)
Body: Si h(n) es de longitud finita, se dice que es un filtro FIR (finite impulse response).
Si h(n) es de longitud infinita, se dice que es un filtro IIR (infinite impulse response).
Si tanto la respuesta al impulso como h(n) como la señal de entrada x(n) son finitas, entonces el filtro se puede implementar usando la función conv
Body:
Sacando la transformada Z
Body:
Y(Z), X(Z) y H(Z) son las transformadas Z de y(n), x(n) y h(n), respectivamente
H(z) es la función de transferencia del filtro
b(i) y a(i) son los coeficientes del filtro
Body: Ejemplo:
x = randn(5,1); % vector aleatorio de longitud 5
h = [1 1 1 1]/4; % respuesta al impulso del filtro
y = conv(h,x); % señal filtrada
Body: La función de transferencia de un filtro digital tiene la forma:
En MATLAB, un filtro se representa por medio de sus coeficientes:
B=[b(1) b(2) … B(nb+1)];
A=[a(1) a(2) … A(na+1)];
Body: Con la función filter es fácil implementar un filtro.
Esta función implementa la función de diferencias:
y(n)+a(2)y(n-1)+…+a(na+1)y(n-na)=
b(1)x(n)+b(2)x(n-1)+…+b(nb+1)x(n-nb)
la cual se puede obtener de la función de transferencia H(z)
Body: Por ejemplo: un filtro pasabajas es:
b = 1; % numerador
a = [1 –0.9]; % denominador
los vectores b y a contienen a los coeficientes del filtro en su forma de función de transferencia
y = filter(b,a,x);
se obtiene el mismo número de muestras de salida que de entrada (length(y)==length(x))
si el primer elemento de a no es 1, filter divide los coeficientes de a por a(1) para implementar la ecuación de diferencia
Body: Para implementar un filtro se requiere de una estructura
Página anterior | Volver al principio del trabajo | Página siguiente |