美国和其他几个国家的交流电流以60赫兹的频率振荡。这些振荡经常会破坏测量值并且必须减去。
在存在60 Hz电源线噪声的情况下研究模拟仪器输入端的开环电压。电压以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
need-to-insert-img
need-to-insert-img
使用Butterworth陷波滤波器消除60 Hz噪声。滤波器至少消除了该范围内频率分量的一半功率。
d = designfilt('bandstopiir','FilterOrder',2, ... 'HalfPowerFrequency1',59,'HalfPowerFrequency2',61, ... 'DesignMethod','butter','SampleRate',Fs);
need-to-insert-img
绘制滤波器的频率响应。请注意,此 滤波器可提供高达45 dB的衰减。
need-to-insert-img
过滤信号filtfilt以补偿滤波器延迟。
need-to-insert-img
使用周期图可以看到已经消除了60 Hz的“尖峰”。
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
need-to-insert-img
need-to-insert-img
网友评论