Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Simular un sistema de muestreo y retención

Este ejemplo muestra varias formas de simular la salida de un sistema de muestreo y retención mediante el aumento del muestreo y el filtrado de una señal.

Construya una señal sinusoidal. Especifique una frecuencia de muestreo de tal forma que 16 muestras correspondan exactamente a un período de señal. Dibuje una trama de tallo de la señal. Superponer un gráfico de paso de escaleras para la visualización de muestra y retención.

fs = 16; t = 0:1/fs:1-1/fs;  x = .9*sin(2*pi*t);  stem(t,x) hold on stairs(t,x) hold off

Remuestrear la señal por un factor de cuatro. Trace el resultado junto a la señal original. aumenta la frecuencia de muestreo de la señal añadiendo ceros entre las muestras existentes.upsample

ups = 4;  fu = fs*ups; tu = 0:1/fu:1-1/fu;  y = upsample(x,ups);  stem(tu,y,'--x')  hold on stairs(t,x) hold off

Filtre con un filtro FIR de media móvil para rellenar los ceros con valores de muestra y retención.

h = ones(ups,1);  z = filter(h,1,y);  stem(tu,z,'--.') hold on stairs(t,x) hold off

Puede obtener el mismo comportamiento utilizando la función MATLAB® con la interpolación de vecino más cercano.interp1 En ese caso, debe desplazar el origen para Alinar la secuencia.

zi = interp1(t,x,tu,'nearest');  dl = floor(ups/2);  stem(tu(1+dl:end),zi(1:end-dl),'--.') hold on stairs(t,x) hold off

La función produce el mismo resultado cuando se establece el último argumento de entrada en cero.resample

q = resample(x,ups,1,0);  stem(tu(1+dl:end),q(1:end-dl),'--.') hold on stairs(t,x) hold off

Consulte también

|