许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  基于MATLAB的数字陷波器设计(Notch Filter)

基于MATLAB的数字陷波器设计(Notch Filter)

阅读数 6
点赞 0
article_banner


基于matlab的数字陷波器设计

陷波器是一种简单的二阶IIR滤波器,其幅度响应在某一频率上为零,可用来消除某个频率分量,如:滤除信号中由电源引起的50Hz工频干扰。其系统函数为:


其中:ω0=2πf0/fs---陷波数字频率(rad);f0---陷波频率(Hz);fs---取样频率(Hz);

r----常数。

实验要求:编程实现以下功能:

1)设陷波频率f0=50Hz,取样频率fs=600Hz,r=0.9,画H(z)的幅频和相频特性。

2)画H(z)的零极点图,体会陷波 原理

3)利用该陷波器对信号:x(n)=2*sin(2*pi*50/fs*n)+sin(2*pi*100/fs*n) (n=0~599)进行滤波,画出x(n)及滤波输出y(n)。 程序代码:
 

%数字陷波器

   clear

   clc
f0 =50;fs=600;r=0.9;

   w0=2*pi*f0/fs;

   b=[1 -2* cos (w0) 1];

   a=[1 -2*r*cos(w0) r*r];

   N=1024;

   [H,w]=freqz(b,a,N);

   subplot(221);plot(w,abs(H));grid on;title('陷波器的幅频响应');

   subplot(222);plot(w,angle(H));grid on;title('陷波器的相频响应');

   subplot(223);zplane(b,a);grid on;title('陷波器的零极点图');

   n=0:N-1;

   x=sin(2*pi*50*n/fs)+sin(2*pi*100*n/fs);

   X=fft(x,N);

   y=filter(b,a,x);

   Y=fft(y,N);

   f=fs/N*(0:N/2-1);

   figure;

   subplot(221);plot(n,x);grid on;title('原信号x(n)');

   subplot(222);plot(f,abs(X(1:N/2)));grid on;title('x(n)的幅频谱');

   subplot(223);plot(n,y);grid on;title('陷波器滤波后的信号y(n)');

   subplot(224);plot(f,abs(Y(1:N/2)));grid on;title('y(n)的幅频谱');

程序运行结果图:




免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空