zoukankan      html  css  js  c++  java
  • matlab如何从信号中去除60 Hz Hum电源线噪声

    原文链接:http://tecdat.cn/?p=7003

    美国和其他几个国家的交流电流以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
     

    使用Butterworth陷波滤波器消除60 Hz噪声。  滤波器至少消除了该范围内频率分量的一半功率。

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

    绘制滤波器的频率响应。请注意,此 滤波器可提供高达45 dB的衰减。

     

    过滤信号filtfilt以补偿滤波器延迟。 

     


    使用周期图可以看到已经消除了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
     
    

    如果您有任何疑问,请在下面发表评论。 

  • 相关阅读:
    textarea聚焦的多种写法
    vue.js入门
    全选,反选
    jquery列表,点击反应
    SqlServer中offset..fetch 的使用问题
    复习Spring第四课---Spring对国际化的支持
    SqlServer的order by问题
    设计模式之---代理模式
    解决SpringMVC重复提交的问题
    Java知识复习(三)
  • 原文地址:https://www.cnblogs.com/tecdat/p/11546963.html
Copyright © 2011-2022 走看看