滤波器 订阅
滤波器是由电容、电感和电阻组成的滤波电路。滤波器可以对电源线中特定频率的频点或该频点以外的频率进行有效滤除,得到一个特定频率的电源信号,或消除一个特定频率后的电源信号。 展开全文
滤波器是由电容、电感和电阻组成的滤波电路。滤波器可以对电源线中特定频率的频点或该频点以外的频率进行有效滤除,得到一个特定频率的电源信号,或消除一个特定频率后的电源信号。
信息
应    用
电子元器件
外文名
filter
作    用
对信号有处理作用的器件或电路
中文名
滤波器
组    成
由电容、电感和电阻
滤波器简介
滤波器是一种选频装置,可以使信号中特定的频率成分通过,而极大地衰减其他频率成分。利用滤波器的这种选频作用,可以滤除干扰噪声或进行频谱分析。换句话说,凡是可以使信号中特定的频率成分通过,而极大地衰减或抑制其他频率成分的装置或系统都称之为滤波器。滤波器,是对波进行过滤的器件。“波”是一个非常广泛的物理概念,在电子技术领域,“波”被狭义地局限于特指描述各种物理量的取值随时间起伏变化的过程。该过程通过各类传感器的作用,被转换为电压或电流的时间函数,称之为各种物理量的时间波形,或者称之为信号。因为自变量时间是连续取值的,所以称之为连续时间信号,又习惯地称之为模拟信号(Analog Signal)。滤波是信号处理中的一个重要概念,在直流稳压电源中滤波电路的作用是尽可能减小脉动的直流电压中的交流成分,保留其直流成分,使输出电压纹波系数降低,波形变得比较平滑。  
收起全文
精华内容
下载资源
问答
  • 滤波器

    千次阅读 2015-09-09 13:00:37
    无源滤波器通常是以 L-C、R-C 等无源器件组成的一种只允许通过给定的频带信号而阻止其它频率信号通过的选频网络。无源滤波器常用在旁路、平滑滤波、电源去耦以及高频滤波等电路中。在测试系统中,常用 RC 滤波器。...

           无源滤波器通常是以 L-C、R-C 等无源器件组成的一种只允许通过给定的频带信号而阻止其它频率信号通过的选频网络。无源滤波器常用在旁路、平滑滤波、电源去耦以及高频滤波等电路中。在测试系统中,常用 RC 滤波器。因为在这一领域中,信号频率相对来说不高。而 RC 滤波器电路简单,抗干扰性强,有较好的低频性能,并且选用标准的阻容元件易得,所以在工程测试的领域中最经常用到的滤波器是 RC 滤波器。对各种无源 RC 滤波器的滤波特性做简要的分析,并提出一些设计方案,对所设计的方案进行频率特性的研究。 

    一阶RC低通滤波器实验方案

     
       一阶 RC低通滤波电路采用 RC 串联电路,把 R 或C 做为负载端,对负载端与输入端的信号做比较得到电路的特性曲线。图 1 所示RC 串联电路构成一个双口网络, 

    图1  一阶RC 低通滤波的实验电路图 

            根据图 1,其负载端开路时电容电压对输入电压的转移电压比为 


           分析可知,当ω很小时, H (j ω)=1,信号不受衰减的通过;当 f 很大时,H (j ω) =0,信号完全被阻挡,不能通过。利用 MATLAB 工具描绘一阶 RC 无源低通滤波器幅频特性曲线和相频特性曲线如图 2 所示。 


    一阶RC高通滤波器实验方案 

             一阶 RC 高通滤波电路采用 RC 串联电路,把 R 或C 做为负载端,对负载端与输入端的信号做比较,得到电路的特性曲线。图 3所示 RC 串联电路构成一个双口网络,


          分析可知,当 f 很小时,A(f)=0,信号完全被阻挡,不能通过;当 f 很大时,A(f)=1信号不受衰减的通过。设计 ωC =100rad/s 的一阶 RC 高通滤波器的电路如下图所示,其中 R=100Ω,C=1μF,利用 MATLAB 工具可描绘一阶 RC 无源高通滤波器幅频特性曲线和相频特性曲线。

    二阶RC低通滤波器实验方案 

          与一阶 RC 滤波电路相比,二阶 RC 由R、C 串并联而成,结构上稍显复杂,同时二阶 RC 电路对同频带外信号的抑制能力更强,滤波效果更好。二阶RC 滤波电路不仅能实现低通和高通滤波特性,还能实现带通滤波特性。其具体实验方案如图 4: 



    总结 

             本实验方案主要是针对由 R、C 组成的无源滤波器进行介绍,对各种无源 RC 滤波器的幅频特性和相频特性进行分析。然后对转折频率 ωC =1000rad/s 的情形分别提出一个一阶 RC无源低、高通滤波器和一个二阶 RC 无源低通滤波器的学生实验设计方案,对所设计的方案进行频率特性的研究。RC 滤波器电路简单,抗干扰性强,有较好的低频性能,并且选用标准的阻容元件易得,所以在工程测试的领域中最经常用到的滤波器是 RC 滤波器。 

    展开全文
  • 滤波器实验滤波器实验滤波器实验滤波器实验滤波器实验
  • 滤波器是射频系统中必不可少的关键部件之一,主要是用来作频率选择----让需要的频率信号通过而反射不需要的干扰频率信号。  经典的滤波器应用实例是接收机或发射机前端,如图1、图2所示:  从图1...
  • 发送滤波器 :包括升余弦脉冲滤波器 、平方根升余弦滤波器 、高斯滤波器 等。学习滤波器,通信原理,信号与系统,MATLAB仿真,滤波器设计。
  • 有源带通滤波器有源低通滤波器有源高通滤波器有源陷波器有源谐振滤波器5个Multisim源码文件
  • 信号产生函数,及IIR滤波器(低通,带通,高通)
  • IIR 滤波器设计 - 巴特沃斯滤波器 - 高通和低通滤波器
  • 双边滤波器和引导滤波器理论介绍
  • 1) 标准卡尔曼滤波器2) 扩展卡尔曼滤波器3) 双卡尔曼滤波器4) 平方根卡尔曼滤波器 该软件包还包含每种过滤器类型的说明性示例,演示它们的实际应用。 在所有 4 种情况下,KF 函数都接受多维系统的输入噪声样本,并...
  • 滤波器设计

    2019-03-14 11:18:56
    滤波器设计工具手册,老版的总结。比较经典滤波器书籍
  • 数字滤波器用于离散系统;模拟滤波器用于连续时间系统,也可以用在离散时间系统中,比如SC(开关电容)滤波器
  • 基于电流最大允许脉动、逆变器开关频率和阻尼特性要求,提出了应用在三相并联有源电力滤波器中的LCL滤波器的一种新颖的设计方法。LCL滤波器是一种滤除逆变器开关谐波的有效手段,具有比LC滤波器更优异的性能,能够克服...
  • 卡尔曼滤波器,自适应滤波器设计,线性预测滤波器,Lattice滤波器。全部设计程序
  • 匹配滤波器

    2018-12-27 20:29:14
    matlab实现匹配滤波器
  • 浅析模拟滤波器和数字滤波器的区别
  • Filter 滤波器

    2017-08-15 15:12:22
    besself 贝塞尔模拟滤波器设计 %butter 比特沃思模拟和数字滤波器设计 % yulewalk 递归数字滤波器设计% FIR滤波器设计
  • 高通滤波器

    2018-05-08 12:49:21
    各种高通多阶滤波器,有源、无源高通滤波器Multisim仿真实例
  • 本文介绍了RC滤波器和LC滤波器的区别。
  • 巴特沃斯滤波器

    2018-08-07 10:10:42
    自己用C#写的巴特沃斯滤波器有带通,带阻,高通,低通滤波器四种。
  • 程控滤波器

    2018-08-26 19:23:20
    用multisim做的程控滤波器仿真,基于multisim做的由程序mdk5和12864显示的程控滤波器
  • 下两个滤波器都是切比雪夫I型数字滤波器,不是巴特沃尔滤波器,请使用者注意!1.低通滤波器使用说明:将下列代码幅值然后以m文件保存,文件名要与函数名相同,这里函数名:lowp。function y=lowp(x,f1,f3,rp,rs,Fs) ...

    本文为转载内容,原文地址为点击打开链接

    下两个滤波器都是切比雪夫I型数字滤波器,不是巴特沃尔滤波器,请使用者注意!

    1.低通滤波器

    使用说明:将下列代码幅值然后以m文件保存,文件名要与函数名相同,这里函数名:lowp。

    function y=lowp(x,f1,f3,rp,rs,Fs)
    %低通滤波
    %使用注意事项:通带或阻带的截止频率的选取范围是不能超过采样率的一半
    %即,f1,f3的值都要小于 Fs/2
    %x:需要带通滤波的序列
    % f 1:通带截止频率
    % f 3:阻带截止频率
    %rp:边带区衰减DB数设置
    %rs:截止区衰减DB数设置
    %FS:序列x的采样频率
    % rp=0.1;rs=30;%通带边衰减DB值和阻带边衰减DB值
    % Fs=2000;%采样率
    %
    wp=2*pi*f1/Fs;
    ws=2*pi*f3/Fs;
    % 设计切比雪夫滤波器;
    [n,wn]=cheb1ord(wp/pi,ws/pi,rp,rs);
    [bz1,az1]=cheby1(n,rp,wp/pi);
    %查看设计滤波器的曲线
    [h,w]=freqz(bz1,az1,256,Fs);
    h=20*log10(abs(h));
    figure;plot(w,h);title('所设计滤波器的通带曲线');grid on;
    %
    y=filter(bz1,az1,x);%对序列x滤波后得到的序列y
    end
    --------------------------------------

    低通滤波器使用例子的代码

    fs=2000;
    t=(1:fs)/fs;
    ff1=100;
    ff2=400;
    x=sin(2*pi*ff1*t)+sin(2*pi*ff2*t);
    figure;
    subplot(211);plot(t,x);
    subplot(212);hua_fft(x,fs,1);
    %低通测试
    % y=filter(bz1,az1,x);
    y=lowp(x,300,350,0.1,20,fs);
    figure;
    subplot(211);plot(t,y);
    subplot(212);hua_fft(y,fs,1);%hua_fft()函数是画频谱图的函数,代码在下面给出,要保存为m文件调用
    %这段例子还调用了我自己写的专门画频谱图的函数,也给出,不然得不出我的结果;

    %画信号的幅频谱和功率谱
    %频谱使用matlab例子表示
    function hua_fft(y,fs,style,varargin)
    %当style=1,画幅值谱;当style=2,画功率谱;当style=其他的,那么花幅值谱和功率谱
    %当style=1时,还可以多输入2个可选参数
    %可选输入参数是用来控制需要查看的频率段的
    %第一个是需要查看的频率段起点
    %第二个是需要查看的频率段的终点
    %其他style不具备可选输入参数,如果输入发生位置错误
    nfft=2^nextpow2(length(y));%找出大于y的个数的最大的2的指数值(自动进算最佳FFT步长nfft)
    %nfft=1024;%人为设置FFT的步长nfft
      y=y-mean(y);%去除直流分量
    y_ft=fft(y,nfft);%对y信号进行DFT,得到频率的幅值分布
    y_p=y_ft.*conj(y_ft)/nfft;%conj()函数是求y函数的共轭复数,实数的共轭复数是他本身。
    y_f=fs*(0:nfft/2-1)/nfft;�T变换后对应的频率的序列
    % y_p=y_ft.*conj(y_ft)/nfft;%conj()函数是求y函数的共轭复数,实数的共轭复数是他本身。
    if style==1
        ifnargin==3
           plot(y_f,2*abs(y_ft(1:nfft/2))/length(y));%matlab的帮助里画FFT的方法
           %ylabel('幅值');xlabel('频率');title('信号幅值谱');
           %plot(y_f,abs(y_ft(1:nfft/2)));%论坛上画FFT的方法
        else
           f1=varargin{1};
           fn=varargin{2};
           ni=round(f1 * nfft/fs+1);
           na=round(fn * nfft/fs+1);
           plot(y_f(ni:na),abs(y_ft(ni:na)*2/nfft));
        end
    
    elseif style==2
               plot(y_f,y_p(1:nfft/2));
               %ylabel('功率谱密度');xlabel('频率');title('信号功率谱');
        else
           subplot(211);plot(y_f,2*abs(y_ft(1:nfft/2))/length(y));
           ylabel('幅值');xlabel('频率');title('信号幅值谱');
           subplot(212);plot(y_f,y_p(1:nfft/2));
           ylabel('功率谱密度');xlabel('频率');title('信号功率谱');
    end
    end

    下面三幅图分别是滤波前的时频图,滤波器的滤波特性曲线图和滤波后的时频图,通过图可以看出成功留下了100Hz的低频成分而把不要的高频成分去除了。

    2.高通滤波器

    function y=highp(x,f1,f3,rp,rs,Fs)
    %高通滤波
    %使用注意事项:通带或阻带的截止频率的选取范围是不能超过采样率的一半
    %即,f1,f3的值都要小于 Fs/2
    %x:需要带通滤波的序列
    % f 1:通带截止频率
    % f 2:阻带截止频率
    %rp:边带区衰减DB数设置
    %rs:截止区衰减DB数设置
    %FS:序列x的采样频率
    % rp=0.1;rs=30;%通带边衰减DB值和阻带边衰减DB值
    % Fs=2000;%采样率
    %
    wp=2*pi*f1/Fs;
    ws=2*pi*f3/Fs;
    % 设计切比雪夫滤波器;
    [n,wn]=cheb1ord(wp/pi,ws/pi,rp,rs);
    [bz1,az1]=cheby1(n,rp,wp/pi,'high');
    
    %查看设计滤波器的曲线
    [h,w]=freqz(bz1,az1,256,Fs);
    h=20*log10(abs(h));
    figure;plot(w,h);title('所设计滤波器的通带曲线');grid on;
    y=filter(bz1,az1,x);
    end

    下面是高通滤波器的例子

    fs=2000;
    t=(1:fs)/fs;
    ff1=100;
    ff2=400;
    x=sin(2*pi*ff1*t)+sin(2*pi*ff2*t);
    figure;
    subplot(211);plot(t,x);
    subplot(212);hua_fft(x,fs,1);
    
    %------高通测试
    z=highp(x,350,300,0.1,20,fs);
    figure;
    subplot(211);plot(t,z);
    subplot(212);hua_fft(z,fs,1);


    下面三幅图分别是滤波前的时频图,滤波器的滤波特性曲线图和滤波后的时频图,通过图可以看出成功留下了400Hz的高频成分而把不要的低频成分100Hz去除了。


    3.带通滤波器

    function y=bandp(x,f1,f3,fsl,fsh,rp,rs,Fs)
    %带通滤波
    %使用注意事项:通带或阻带的截止频率与采样率的选取范围是不能超过采样率的一半
    %即,f1,f3,fs1,fsh,的值小于 Fs/2
    %x:需要带通滤波的序列
    % f 1:通带左边界
    % f 3:通带右边界
    % fs1:衰减截止左边界
    % fsh:衰变截止右边界
    %rp:边带区衰减DB数设置
    %rs:截止区衰减DB数设置
    %FS:序列x的采样频率
    % f1=300;f3=500;%通带截止频率上下限
    % fsl=200;fsh=600;%阻带截止频率上下限
    % rp=0.1;rs=30;%通带边衰减DB值和阻带边衰减DB值
    % Fs=2000;%采样率
    %
    wp1=2*pi*f1/Fs;
    wp3=2*pi*f3/Fs;
    wsl=2*pi*fsl/Fs;
    wsh=2*pi*fsh/Fs;
    wp=[wp1 wp3];
    ws=[wsl wsh];
    %
    % 设计切比雪夫滤波器;
    [n,wn]=cheb1ord(ws/pi,wp/pi,rp,rs);
    [bz1,az1]=cheby1(n,rp,wp/pi);
    %查看设计滤波器的曲线
    [h,w]=freqz(bz1,az1,256,Fs);
    h=20*log10(abs(h));
    figure;plot(w,h);title('所设计滤波器的通带曲线');grid on;
    y=filter(bz1,az1,x);
    end

    带通滤波器使用例子

    %--------------
    %带通滤波器测试程序
    fs=2000;
    t=(1:fs)/fs;
    ff1=100;
    ff2=400;
    ff3=700;
    x=sin(2*pi*ff1*t)+sin(2*pi*ff2*t)+sin(2*pi*ff3*t);
    figure;
    subplot(211);plot(t,x);
    subplot(212);hua_fft(x,fs,1);
    % y=filter(bz1,az1,x);
    y=bandp(x,300,500,200,600,0.1,30,fs);
    figure;
    subplot(211);plot(t,y);
    subplot(212);hua_fft(y,fs,1);


    %调用到的hua_fft()函数代码如下

    function hua_fft(y,fs,style,varargin)
    %当style=1,画幅值谱;当style=2,画功率谱;当style=其他的,那么花幅值谱和功率谱
    %当style=1时,还可以多输入2个可选参数
    %可选输入参数是用来控制需要查看的频率段的
    %第一个是需要查看的频率段起点
    %第二个是需要查看的频率段的终点
    %其他style不具备可选输入参数,如果输入发生位置错误
    nfft=2^nextpow2(length(y));%找出大于y的个数的最大的2的指数值(自动进算最佳FFT步长nfft)
    %nfft=1024;%人为设置FFT的步长nfft
      y=y-mean(y);%去除直流分量
    y_ft=fft(y,nfft);%对y信号进行DFT,得到频率的幅值分布
    y_p=y_ft.*conj(y_ft)/nfft;%conj()函数是求y函数的共轭复数,实数的共轭复数是他本身。
    y_f=fs*(0:nfft/2-1)/nfft;�T变换后对应的频率的序列
    % y_p=y_ft.*conj(y_ft)/nfft;%conj()函数是求y函数的共轭复数,实数的共轭复数是他本身。
    if style==1
        ifnargin==3
           plot(y_f,2*abs(y_ft(1:nfft/2))/length(y));%matlab的帮助里画FFT的方法
           %ylabel('幅值');xlabel('频率');title('信号幅值谱');
           %plot(y_f,abs(y_ft(1:nfft/2)));%论坛上画FFT的方法
        else
           f1=varargin{1};
           fn=varargin{2};
           ni=round(f1 * nfft/fs+1);
           na=round(fn * nfft/fs+1);
           plot(y_f(ni:na),abs(y_ft(ni:na)*2/nfft));
        end
    
    elseif style==2
               plot(y_f,y_p(1:nfft/2));
               %ylabel('功率谱密度');xlabel('频率');title('信号功率谱');
        else
           subplot(211);plot(y_f,2*abs(y_ft(1:nfft/2))/length(y));
           ylabel('幅值');xlabel('频率');title('信号幅值谱');
           subplot(212);plot(y_f,y_p(1:nfft/2));
           ylabel('功率谱密度');xlabel('频率');title('信号功率谱');
    end
    end
    运行结果如下图,第一幅是滤波前测试信号的时频图,第二幅是滤波器的滤波曲线图,第三幅是经滤波后的测试信号时频图。

    4.带阻滤波器

    function y=bands(x,f1,f3,fsl,fsh,rp,rs,Fs)
    %带阻滤波
    %使用注意事项:通带或阻带的截止频率与采样率的选取范围是不能超过采样率的一半
    %即,f1,f3,fs1,fsh,的值小于 Fs/2
    %x:需要带通滤波的序列
    % f 1:通带左边界
    % f 3:通带右边界
    % fs1:衰减截止左边界
    % fsh:衰变截止右边界
    %rp:边带区衰减DB数设置
    %rs:截止区衰减DB数设置
    %FS:序列x的采样频率
    % f1=300;f3=500;%通带截止频率上下限
    % fsl=200;fsh=600;%阻带截止频率上下限
    % rp=0.1;rs=30;%通带边衰减DB值和阻带边衰减DB值
    % Fs=2000;%采样率
    %
    wp1=2*pi*f1/Fs;
    wp3=2*pi*f3/Fs;
    wsl=2*pi*fsl/Fs;
    wsh=2*pi*fsh/Fs;
    wp=[wp1 wp3];
    ws=[wsl wsh];
    %
    % 设计切比雪夫滤波器;
    [n,wn]=cheb1ord(ws/pi,wp/pi,rp,rs);
    [bz1,az1]=cheby1(n,rp,wp/pi,'stop');
    %查看设计滤波器的曲线
    [h,w]=freqz(bz1,az1,256,Fs);
    h=20*log10(abs(h));
    figure;plot(w,h);title('所设计滤波器的通带曲线');grid on;
    y=filter(bz1,az1,x);
    end

    使用例子

    %带阻滤波器测试
    fs=1000;
    t=(1:fs)/fs;
    y=sin(2*pi*100*t)+sin(2*pi*150*t)+sin(2*pi*200*t);
    figure;hua_fft(y,fs,1);
    z=bands(y,110,190,140,160,0.1,30,fs);
    figure;hua_fft(z,fs,1);

    运行结果如下图,第一幅是滤波前测试信号的频谱图,第二幅是滤波器的滤波曲线图,第三幅是经滤波后的测试信号频谱图。




    展开全文
  • IIR数字滤波器设计(数字信号处理)

    万次阅读 多人点赞 2018-12-18 16:31:38
    IIR数字滤波器设计(数字信号处理) 一、实验目的 1.熟悉双线性变换法设计IIR数字滤波器的原理与方法。 2.掌握IIR数字滤波器的MATLAB实现方法,会调用ellipord()和ellip() 函数设计各种滤波器。 3.观察分析...

    ~~ 如果有什么问题可以在我的个人博客留言 ,我会及时回复。欢迎来访交流 ~~


                   IIR数字滤波器设计(数字信号处理)

    一、实验目的

    1.熟悉双线性变换法设计IIR数字滤波器的原理与方法。

    2.掌握IIR数字滤波器的MATLAB实现方法,会调用ellipord()和ellip() 

    函数设计各种滤波器。

    3.观察分析滤波器输入输出数据波形,理解数字滤波的概念。

                 

    二、实验原理及步骤

    (一)实验原理-双线性变换法

    数字滤波器是对数字信号实现滤波的线性时不变系统。数字滤波实质上是一种运算过程,实现对信号的运算处理。输入数字信号(数字序列)通过特定的运算转变为输出的数字序列,因此,数字滤波器本质上是一个完成特定运算的数字计算过程,也可以理解为是一台计算机。描述离散系统输出与输入关系的卷积和差分方程只是给数字信号滤波器提供运算规则,使其按照这个规则完成对输入数据的处理。时域离散系统的频域特性:

    其中 分别是数字滤波器的输出序列和输入序列的频域特性(或称为频谱特性),是数字滤波器的单位取样响应的频谱,又称为数字滤经过滤波后的频域响应。只要按照输入信号频谱的特点和处理信号的目的,适当选择,使得滤波后满足设计的要求,这就是数字滤波器的滤波原理。

    数字滤波器根据其冲激响应函数的时域特性,可分为两种,即无限长冲激响应(IIR)数字滤波器和有限长冲激响应(FIR)数字滤波器。IIR 数字滤波器的特征是,具有无限持续时间冲激响应,需要用递归模型来实现,其差分方程为:

    系统函数为:

                 

    设计IIR滤波器的任务就是寻求一个物理上可实现的系统函数H(z),使其频率响应H(z)满足所希望得到的频域指标,即符合给定的通带截止频率、阻带截止频率、通带衰减系数和阻带衰减系数。

    基本设计过程如下:

    1.将给定的数字滤波器指标转换成模拟滤波器的指标。

    2.设计模拟滤波器。

    3.将模拟滤波器转换成数字滤波器系统函数。

    (二)实验步骤

    1.在完成滤波器设计之后,采用filter()对输入信号进行滤波处理。调用信号产生函数mstg产生由抑制载波调制信号相加构成的复合信号st,该函数还会自动绘图显示其时域波形和幅频特性曲线,如下图1所示。

    由图1中(a)和(b)可见,三路信号时域混叠无法在时域分离,但在频域是可以分离的,可以通过滤波的方法进行分离,即通过设计IIR滤波器,分离这三个不同频率的信号。

    2.要求将三路信号进行分离,通过观察st信号的幅频特性曲线,分别确定可以分离st中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。滤波器的通带最大衰减为0.1dB,阻带最小衰减为60dB。

    3.调用ellipord()和ellip()分别设计这三个椭圆滤波器,并绘图显示其损耗函数曲线分别如图2,图3,图4。

                                                                     图2 低通损耗函数曲线

    4.调用filter(),用三个滤波器分别对信号产生函数mstg产生的信号进行滤波,分离出st中的不同载波频率信号,并绘图显示三个信号的时域波形,分别如图5,图6,图7。

    三、实验结果分析

    (一)函数mstg

    阅读信号产生函数mstg,确定三路调幅信号的载波频率和调制信号频率。第1路调幅信号的载波频率fc1=1000Hz,调制信号频率fm1=100Hz。第2路调幅信号的载波频率fc2=500Hz,调制信号频率fm2=50Hz。第3路调幅信号的载波频率fc2=250Hz,调制信号频率fm2=25Hz。

    • 采样点数对频谱图的影响

    1.调幅信号

    当N=800,1600,1800,2000时,调幅信号产生的频谱图如图8,9,10,11所示。

                                                                 图8 N=800时s(t)的波形及频谱图

    分析:因为信号s(t)是周期序列,频谱分析时要求观察时间为整数倍周期。s(t)的每个频率成分都是25Hz的整数倍。采样频率Fs=10kHz=25*400Hz,即在25Hz的正弦波的一个周期中采样400个点。所以,当N为400的整数倍时一定为s(t)的整数倍周期。因此,采样点数N=800,1600,2000时,对s(t)进行N点FFT可以得6根理想谱线,而当N=1800时,不是400的整数倍,则不能得到。

    2.AM调幅信号

    当N=800,1600,1800,2000时产生的频谱图如图12,13,14,15所示。

    分析:因为信号s(t)时周期序列,频谱分析时要求观察时间为整数倍周期。因此,采样点数N=800,1600,2000时,对s(t)进行N点FFT可以得理想谱线,而当N=1800时,不是400的整数倍,则不能得到。当将该调幅信号修改为AM信号后,s(t)的频谱中有较大的频谱分量。如图所示。

    • IIR滤波器
    1. 滤波器参数选取

    由(一)可知,三路调幅信号的载波频率分别为250Hz,500Hz,1000Hz。带宽为50Hz,100Hz,200Hz。所以分离混合信号st中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的指标参数选取如下:

    对载波频率为250Hz的调幅信号,用低通滤波器分离,其通带截止频率fp=280Hz,通带最大衰减ap=0.1dB,阻带截止频率为fs=450Hz,阻带最小衰减as=60dB。对载波频率为500Hz的调幅信号,用低通滤波器分离,其通带截止频率fpl=440Hz、fph=560Hz,通带最大衰减ap=0.1dB,阻带截止频率为fsl=275Hz、fsh=900Hz阻带最小衰减as=60dB。对载波频率为1000Hz的调幅信号,用低通滤波器分离,其通带截止频率fp=890Hz,通带最大衰减ap=0.1dB,阻带截止频率为fs=600Hz,阻带最小衰减as=60dB。

    IIR.m

    function main
    st=mstg;   %调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号s
    Fs=10000; T=1/Fs;  %采样频率
    fp=280; fs=450;wp=2*fp/Fs;ws=2*fs/Fs; %低通
       name='y_1(t)';LHL_filter(wp,ws,name,st,T,'low');
    fp_L=440; fp_R=560;fs_L=275; fs_R=900;%带通
       wp=[2*fp_L/Fs,2*fp_R/Fs];ws=[2*fs_L/Fs,2*fs_R/Fs];
       name='y_2(t)'; LHL_filter(wp,ws,name,st,T,'bandpass');
    fp=890; fs=600;wp=2*fp/Fs;ws=2*fs/Fs; %高通
       name='y_3(t)';LHL_filter(wp,ws,name,st,T,'high');
    end
    function LHL_filter(wp,ws,name,st,T,flag)
    rp=0.1;rs=60; %DF指标(低通滤波器的通、阻带边界频)
    [N,wp]=ellipord(wp,ws,rp,rs); %调用ellipord计算椭圆DF阶数N和通带截止频率wp?
    [B,A]=ellip(N,rp,rs,wp,flag); %调用ellip计算椭圆带通DF系统函数系数向量B和A
    yt=filter(B,A,st); %滤波器软件实现
     figure; freqz(B,A);%B,A分别为系统函数分子,分母多项式系数向量?
     figure;tplot(st,yt,T,name);
    end
    function tplot(st,xn,T,name)
    %时域序列连续曲线绘图函数?
    %?xn:信号数据序列,%?T为采样间隔
    N=length(xn);n=0:N-1; t=n*T; Tp=N*T; f=n/Tp;
    subplot(311);plot(t,xn);xlabel('t/s');ylabel(name);
    axis([0,t(end),min(xn),1.2*max(xn)]);
    subplot(312);stem(f,abs(fftshift(fft(st,N))));
    title('原 st(t)的频谱');xlabel('f/Hz');ylabel('幅度');
    subplot(313);stem(f,abs(fftshift(fft(xn,N))));
    title('滤波后xn(t)的频谱');xlabel('f/Hz');ylabel('幅度');
    end
    function st=mstg
    %产生信号序列向量st,并显示st的时域波形和频谱
    %st=mstg 返回三路调幅信号相加形成的混合信号,长度N=1600
    N=1600;Fs=10000;T=1/Fs;Tp=N*T; % N为信号st的长度。采样频率Fs=10kHz,Tp为采样时间
    t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;
    fc1=Fs/10;fm1=fc1/10;%第1路调幅信号的载波频率fc1=1000Hz,调制信号频率fm1=100Hz
    fc2=Fs/20;fm2=fc2/10;%第2路调幅信号的载波频率fc2=500Hz,调制信号频率fm2=50Hz
    fc3=Fs/40;fm3=fc3/10;%第3路调幅信号的载波频率fc3=250Hz,调制信号频率fm3=25Hz                  
    xt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t); %产生第1路调幅信号
    xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t); %产生第2路调幅信号
    xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t); %产生第3路调幅信号
    st=xt1+xt2+xt3;         %三路调幅信号相加
    fxt=fft(st,N);          %计算信号st的频谱
    subplot(211);plot(t,st);xlabel('t/s');ylabel('s(t)');
    axis([0,Tp/2,min(st),max(st)]);title('(a) s(t)的波形');
    subplot(212);stem(f,abs(fxt)./max(abs(fxt)));
    title('(频谱');xlabel('f/Hz');ylabel('幅度');
    end

    mstg.m

    function st=mstg
    %产生信号序列向量st,并显示st的时域波形和频谱
    %st=mstg; 返回三路调幅信号相加形成的混合信号,长度N=1600
    N=2000;Fs=10000;T=1/Fs;Tp=N*T; % N为信号st的长度。采样频率Fs=10kHz,Tp为采样时间
    t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;
    fc1=Fs/10;fm1=fc1/10;%第1路调幅信号的载波频率fc1=1000Hz,调制信号频率fm1=100Hz
    fc2=Fs/20;fm2=fc2/10;%第2路调幅信号的载波频率fc2=500Hz,调制信号频率fm2=50Hz
    fc3=Fs/40;fm3=fc3/10;%第3路调幅信号的载波频率fc3=250Hz,调制信号频率fm3=25Hz                  
    xt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t); %产生第1路调幅信号
    xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t); %产生第2路调幅信号
    xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t); %产生第3路调幅信号
    st=xt1+xt2+xt3;         %三路调幅信号相加
    fxt=fft(st,N);          %计算信号st的频谱
    subplot(2,1,1);plot(t,st);xlabel('t/s');ylabel('s(t)');
    title(['N=',num2str(N),'s(t)的波形']);axis([0,Tp/8,min(st),max(st)]);
    subplot(2,1,2);stem(f,abs(fxt)/max(abs(fxt)));
    title(['N=',num2str(N),'s(t)的频谱']);xlabel('f/Hz');ylabel('幅度');
     axis([0,Fs/5,0,1.2]);
    end

    AM_mstg.m

    function AM_mstg
    N=2000; Fs=10000;T=1/Fs;Tp=N*T;t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;
    fc1=Fs/10;fm1=fc1/10;%第1路调幅信号的载波频率fc1=1000Hz,调制信号频率fm1=100Hz
    fc2=Fs/20;fm2=fc2/10;%第2路调幅信号的载波频率fc2=500Hz,调制信号频率fm2=50Hz
    fc3=Fs/40;fm3=fc3/10;%第3路调幅信号的载波频率fc3=250Hz,调制信号频率fm3=25Hz
    xt1=[1+cos(2*pi*fm1*t)].*cos(2*pi*fc1*t);
    xt2=[1+cos(2*pi*fm2*t)].*cos(2*pi*fc2*t);
    xt3=[1+cos(2*pi*fm3*t)].*cos(2*pi*fc3*t);
    st=xt1+xt2+xt3;fxt=fft(st,N);
    subplot(211);plot(t,st);xlabel('t/s');ylabel('s(t)');
    axis([0,Tp/8,min(st),max(st)]);title(['N=',num2str(N),' AM s(t)波形图'])
    subplot(212);stem(f,abs(fxt)/max(abs(fxt)));title(['N= ',num2str(N),'频谱图'])
    axis([0,Fs/5,0,1.2]);xlabel('f/Hz');ylabel('幅度');
    end

    资源点击下载

    展开全文
  • 文章为大家介绍了模拟滤波器和数字滤波器的异同点。
  • 切比雪夫滤波器

    2018-08-08 10:31:39
    此为切比雪夫滤波器的设计组成程序代码,是设计各种OFDM、FBMC、UFMC必须使用的一种滤波器组。
  • 自适应滤波器自适应滤波器自适应滤波器自适应自适应滤波器滤波器自适应滤波器
  • 该文档包含了巴特沃斯滤波器、切比雪夫1、2滤波器以及椭圆函数形滤波器分别在低通、高通、帯通、帯阻的matlab代码实现。
  • 程控滤波器程控滤波器程控滤波器程控滤波器
  • 简介:在电子系统里滤波器是很见的组成部分,可以通过R,L,C的搭配组成各种滤波电路。一阶RC滤波器的截止频率等于1/2*pi*RC.,R,C,L串联可以搭建二阶带通滤波器等等。 在电子系统里滤波器是很见的组成部分,可以通过...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 119,444
精华内容 47,777
关键字:

滤波器