Necesito que alguien compruebe mi comprensión de la frecuencia de Nyquist. Lo entiendo de la siguiente manera.
$$ F_ {nyquist} = (F_ {muestreo} / 2) * n $$ donde n es un entero (negativo y positivo). Por ejemplo:
$$ F_ {muestreo} = 10 kHz $$ luego $$ F_ {nyquist} = [-10, -5, 0 _ {(?)}, 5, 10] kHz $$ No estoy seguro, si 0 es una frecuencia nyquist (pregunta 1). Luego, las frecuencias de alias detectadas a.k.a se pueden encontrar en las siguientes ubicaciones:
(\$F_s\$enlaimagenes\$F_{muestreo}\$)
- verde:señalqueseestámuestreando(señaloriginal)
- rojo-frecuenciasdealias
- amarillo:¿esunafrecuenciadealias?(Pregunta2)
Preguntas:
1)¿esF=0lafrecuenciadeNyquist?
2)¿elreflejoocurrealrededordeF=0?
3)¿escorrectomientendimiento?¿Sonloscírculosrojoslasfrecuenciasdealias?Elproblemaesquenopuedoreplicartodaslasfrecuenciasdealiasenmatlab.Puedoverelaliasen$$F_{alias}=F_{muestreo}*n+F_{señal}$$.Paralaseñalen$$F_{señal}=3kHz$$Puedoveraliasen$$F_{alias}=[13,23,33]$$
ElsiguientecódigoMATLAbdebeilustrarelprocesoqueentiendocomo"buscar" alias.
clear all;
clc;
% sampling rate
F_sample = 10000;
T = 1 / F_sample;
% time range
t = [0:T:T*10]; % asmpling time - 10 samples
t_x = [0:T/100:T*10]; % smooth "time" to see the sinusoids of F_aliases signlas
% nyquist frequency
F_nyquist = F_sample / 2;
% arbitrary signal within sampling range (F_signal is less than F_sample / 2)
F_signal = 3000;
% when the following frequencies are sampled, they should appear as the
% F_signal
F_alias_1 = F_nyquist*2 - F_signal; % 1st mirroring - Zone 2
F_alias_2 = F_nyquist*2 + F_signal; % 2nd mirroring - Zone 3
% from F to w
w_signal = 2*pi*F_signal;
w_alias_1 = 2*pi*F_alias_1;
w_alias_2 = 2*pi*F_alias_2;
% calculate signals
x1 = sin(w_signal*t); % samples (red circles)
x2 = sin(w_alias_1*t_x); % blue signal
x3 = sin(w_alias_2*t_x); % green signal
plot(t,x1,'ro'); % Sampling (red circles)
hold on;
plot(t_x,x2,'b'); % 1st frequency that SHOULD be sampled the same as original signal
hold on;
plot(t_x,x3,'g'); % 2nd frequency that SHOULD be sampled the same as original signal
xlabel('time');
ylabel('amplitude');
- círculosrojos:muestrasdeseñalde3kHzaunavelocidaddemuestreode10kHz(noserepresentalaseñaloriginala3kHz,solosusmuestras)
- azul:aliasa7kHz(primeroporencimade5kHz(Zona2),mitaddelafrecuenciademuestreo)
- verde:aliasa13kHz(segundoporencimade5kHz(Zona3),mitaddelafrecuenciademuestreo)
Obviamente,elazulno"encaja" en las muestras, mientras que el verde se ajusta perfectamente