MATLAB切比雪夫带通滤波器

MATLAB切比雪夫带通滤波器原始信号由5Hz,50Hz,110Hz三种频率的正弦信号构成,并含有直流分量。原始信号为:y=sin(5*2*pi*x)+sin(50*2*pi*x)+sin(110*2*pi*x)+0.5;​图1 原始信号 ​使用通带为[10,100]Hz的切比雪夫滤波器,滤波后的信号时域曲线为:图2 滤波信号​对原始信号和滤波信号作傅里叶变换,观察频谱的变化(左图为原始信号…

大家好,又见面了,我是你们的朋友全栈君。

原始信号由5Hz,50Hz,110Hz三种频率的正弦信号构成,并含有直流分量。

原始信号为:y=sin(5*2*pi*x)+sin(50*2*pi*x)+sin(110*2*pi*x)+0.5;​

MATLAB切比雪夫带通滤波器图 1   原始信号 

​使用通带为[10,100]Hz的切比雪夫滤波器,滤波后的信号时域曲线为:

MATLAB切比雪夫带通滤波器图 2   滤波信号

​对原始信号和滤波信号作傅里叶变换,观察频谱的变化(左图为原始信号频谱,有图为滤波信号频谱)。

MATLAB切比雪夫带通滤波器图 3   频谱对比 

​对比图 3 可见,原始信号5Hz,110Hz的交流成分和直流成分都被滤掉了,只保留了50Hz交流成分,并且幅值吻合。

附切比雪夫II型带通滤波器程序

​function [X,Y]=Chebyshev2bp(x,y,fp,fs,Rp,Rs)

% fp 通带边界频率,单位Hz

% fs 阻带边界频率,单位Hz

% Rp 通带波纹,单位分贝(通常取值为1,该值越小通带幅值越平稳,但过渡带宽也越大)

% Rs 阻带衰减,单位分贝(从30附近试取,该值越大阻带幅值越小,但过渡带宽也越大)

wp=fp*2*pi;

ws=fs*2*pi;

[N,Wn]=cheb2ord(wp,ws,Rp,Rs,’s’);  % 根据滤波器要求,求得滤波器最小阶数(计算也越慢)和截止频率(万永革 例5-17)

N

%%% 关于滤波器阶数N的说明

% 理论上,滤波器阶数越高越接近理想滤波器,但滤波器阶数达到一定值后再增加阶数,其逼近程度并不再显著提高,但计算量依然增加,所以理论上不需要无穷大的阶数

% 实际编程中,随着阶数无限升高,更根本的问题是计算机积累误差凸显,将使其与理想滤波器相去甚远,最终时域幅值严重失真,所以实际应用中滤波器阶数也不是越高越好

[z,p,k]=cheb2ap(N,Rs);  %设计Chebyshev II型原型低通滤波器(万永革 例5-8)

[b,a]=zp2tf(z,p,k);  % 将零点极点增益形式转换为传递函数形式

Wo=sqrt(Wn(1)*Wn(2));  % 计算中心点频率(万永革 例5-14)

Bw=Wn(2)-Wn(1);  % 计算频带宽度

[bt,at]=lp2bp(b,a,Wo,Bw);  % 频率转换。将模拟原先低通滤波器转换为带通滤波器

H=[tf(bt,at)];  % 在MATLAB中表示此滤波器(万永革 例5-13)

[Y,X]=lsim(H,y,x);

 

https://www.cnblogs.com/alimy/p/9140695.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136146.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • JAVA基础:二维数组初始化

    JAVA基础:二维数组初始化二维数组的初始化同一维数组初始化类似,同样可以使用”{}”大括号完成二维数组的初始化,不同的是每个一维数组的元素使用大括号定义新的一维数组,即一维数组的每个元素又是一个新的一维数组。定义一个二维数组:把二维数组所有的赋同一个初始化值arrayType[][]arrayName=new arrayTyp[n][m];for(inti=0;iarrayName.l

    2022年5月26日
    49
  • Linux-权限管理(你听过777、755、644吗)

    Linux-权限管理(你听过777、755、644吗)你听过777、755、644吗?文章目录组rwx权限修改权限-chmod修改文件所有者-chown修改文件所在组-chgrp

    2022年6月17日
    32
  • keil c51注册机2032

    keil c51注册机2032keilc51是一款非常优秀的C语言单片机编程软件,同时也是美国KeilSoftware公司出品的51系列软件,是兼容单片机C语言软件开发系统的最新版本,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而使得用户易学易用。但是软件是需要收费的,或者是功能上有所限制,因此小编今天为大家带来了keilc51注册码,同样也是注册机,详细的使用教程,以软件安装为例,且期限是到2032年有效,亲测有效,有需要的朋友欢迎下载体验。原文链接:http://www.ddooo.com/soft

    2022年6月12日
    50
  • c语言反三角函数有哪些,反三角函数公式有哪些?

    01反三角函数公式包括1、arcsin(-x)=-arcsinx。2、arccos(-x)=π-arccosx。3、arctan(-x)=-arctanx。4、arccot(-x)=π-arccotx。5、arcsinx+arccosx=π/2=arctanx+arccotx。6、sin(arcsinx)=x=cos(arccosx)=tan(arctanx)=cot(arccotx)。7、当x∈…

    2022年4月8日
    180
  • aarch64 poky linux,aarch64pokylinuxgcc:错误::没有这样的文件或目录

    aarch64 poky linux,aarch64pokylinuxgcc:错误::没有这样的文件或目录我正在尝试将mlpack包含到我的yocto构建中。如果不启用python绑定,我的配方烘焙成功。但是在构建python绑定时,我得到了以下错误:aarch64-poky-linux-gcc-march=armv8-a-mtune=cortex-a57.cortex-a53–sysroot=/builds/build-h3/tmp/sysroots/h3ulcb-DNDEBUG-g-O…

    2022年8月31日
    0
  • td-scdma/wcdma是什么意思_CDMA频段

    td-scdma/wcdma是什么意思_CDMA频段1.概述比较项目:核心网部分的异同接入网部分的差别业务提供上的异同2.核心网比较TD-SCDMA技术被3GPPR4采纳,因此在R4的核心网部分,TD-SCDMA与WCDMA没有差异:ØTD-SCDMA在核心网方面所用到的接口和主要协议与WCDMA一致。Ø在3GPP核心网中所提供的业务并没有将TD-SCDMA同WCDMA进行区分。Ø

    2022年10月3日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号