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.

Retire el Hum de 60 Hz de una señal

La corriente alterna en los Estados Unidos y varios otros países oscila a una frecuencia de 60 Hz. Esas oscilaciones a menudo corrompen las mediciones y tienen que ser rrestadas.

Estudiar la tensión de bucle abierto a través de la entrada de un instrumento analógico en presencia de 60 Hz de ruido de línea de alimentación. La tensión se muestrea a 1 kHz.

load openloop60hertz, openLoop = openLoopVoltage;  Fs = 1000; t = (0:length(openLoop)-1)/Fs;  plot(t,openLoop) ylabel('Voltage (V)') xlabel('Time (s)') title('Open-Loop Voltage with 60 Hz Noise') grid

Elimine el ruido de 60 Hz con un filtro de muesca Butterworth. Utilícelo para diseñarlo.designfilt La anchura de la muesca se define por el intervalo de frecuencia de 59 a 61 Hz. El filtro elimina al menos la mitad de la potencia de los componentes de frecuencia que se encuentran en ese rango.

d = designfilt('bandstopiir','FilterOrder',2, ...                'HalfPowerFrequency1',59,'HalfPowerFrequency2',61, ...                'DesignMethod','butter','SampleRate',Fs);

Trazar la respuesta de frecuencia del filtro. Tenga en cuenta que este filtro de muesca proporciona hasta 45 dB de atenuación.

fvtool(d,'Fs',Fs)

Filtrar la señal con para compensar el retardo del filtro.filtfilt Observe cómo las oscilaciones disminuyen significativamente.

buttLoop = filtfilt(d,openLoop);  plot(t,openLoop,t,buttLoop) ylabel('Voltage (V)') xlabel('Time (s)') title('Open-Loop Voltage') legend('Unfiltered','Filtered') grid

Utilice el periodograma para ver que se ha eliminado el "pico" a 60 Hz.

[popen,fopen] = periodogram(openLoop,[],[],Fs); [pbutt,fbutt] = periodogram(buttLoop,[],[],Fs);  plot(fopen,20*log10(abs(popen)),fbutt,20*log10(abs(pbutt)),'--') ylabel('Power/frequency (dB/Hz)') xlabel('Frequency (Hz)') title('Power Spectrum') legend('Unfiltered','Filtered') grid

Consulte también

| | |

Temas relacionados