MATLAB 巴特沃兹滤波器.docVIP

  • 17
  • 0
  • 约2.79千字
  • 约 8页
  • 2016-08-22 发布于湖北
  • 举报
相位是信号的一个重要参数,所以一般在滤波中希望实现零相位偏移或具有线性相位偏移。 现在大致有两类方法实现零相位偏移: 1、将滤波器与一个全通滤波器级联,用后者的相位响应矫正前者。需要附 加全通滤波器的设计运算量以及额外的矫正算法运算量; 2、使用两个完全相同的滤波器,将通过第一个滤波器后的信号反转再通过 第二个滤波器,再将第二个滤波器的输出序列反转作为整个系统的输出。 综上我们采用第二种方法,用MATLAB实现: clear clc close all %生成一个信号 Fs=1000; t=(0:1/Fs:1); y=sin(2*pi*5*t+pi/4)+sin(2*pi*50*t+pi/5)+sin(2*pi*60*t+pi/12); yy=sin(2*pi*5*t+pi/4); figure(1) subplot(211) plot(t,y),grid on title(输入信号波形) xlabel(t) ylabel(magnitude) subplot(212) plot(t,angle(y)) title(输入信号相位) xlabel(t) ylabel(angle) %设计一个低通滤波器 fp=10/500;%通带截止频率 fs=30/500;%阻带截止频率 wp=3;%通带最大衰减 ws=30;%阻带最大衰减 [n,fc]=buttord(fp,fs,wp,w

文档评论(0)

1亿VIP精品文档

相关文档