【滤波器】基于matlab脉冲响应不变法+双线性变换法数字滤波器设计【含Matlab源码 884期】
一、获取代码方式
获取代码方式1:
完整代码已上传我的资源:【滤波器】基于matlab脉冲响应不变法+双线性变换法数字滤波器设计【含Matlab源码 884期】
获取代码方式2:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。
备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);
二、数字滤波器设计简介
1 设计原理
1.1 滤波器概念
1.2 数字滤波器的系统函数和差分方程
1.3 数字滤波器结构的表示
1.4 数字滤波器的分类
2.1 IIR滤波器与FIR滤波器的分析比较
2.2 FIR滤波器的原理
3 FIR滤波器的仿真步骤
三、部分源代码
%%利用双线性变换法设计一个Chebyshev I型数字高通滤波器
%确定已知的技术指标
Rp=1.2;Rs=20;T=0.001;fp=300;fs=200;
%求出将要设计的数字滤波器的边界频率
wp=2*pi*fp*T;ws=2*pi*fs*T;
%预畸变
wp1=(2/T)*tan(wp/2);ws1=(2/T)*tan(ws/2);
%设计模拟滤波器
%求出最小阶数和截止频率
[n,wn]=cheb1ord(wp1,ws1,Rp,Rs,'s');
%求出模拟滤波器的分子和分母系数向量
[b,a]=cheby1(n,Rp,wn,'high','s');
%双线性变换
[bz,az]=bilinear(b,a,1/T);
[db,mag,pha,grd,w]=freqz_m(bz,az);
%以w/pi为横轴,以db为纵轴绘图
plot(w/pi,db,'color','m');grid;
function[db,mag,pha,grd,w]=freqz_m(b,a)
[H,w]=freqz(b,a,1000,'whole');
mag=abs(H);
db=20*log10((mag+eps)/max(mag));
pha=angle(H);
grd=grpdelay(pha);
%用双线性变换法设计一个Butterworth数字低通滤波器
%确定已知的技术指标
Rp=1;Rs=25;T=0.001;fp=200;fs=300;
%求出将要设计的数字滤波器的边界频率
wp=2*pi*fp*T;ws=2*pi*fs*T;
%预畸变
wp1=(2/T)*tan(wp/2);ws1=(2/T)*tan(ws/2);
%求出最小阶数和截止频率
[n,wn]=buttord(wp1,ws1,Rp,Rs,'s');
%求出模拟滤波器的分子和分母系数向量
[b,a]=butter(n,wn,'low','s');
%双线性变换
[bz,az]=bilinear(b,a,1/T);
function [db,mag,pha,w] = freqs_m(b,a,wmax)
w = (0:1:500)*wmax/500;
H = freqs(b,a,w);
mag = abs(H);
db = 20*log10((mag+eps)/max(mag));
wp=400*pi;ws=600*pi;Rp=1;Rs=25;
%求出最小阶数和截止频率
[n,wn]=buttord(wp,ws,Rp,Rs,'s');
%求出模拟滤波器的分子和分母系数向量
[b,a]=butter(n,wn,'s');
[db,~,~,w]=freqs_m(b,a,500*2*pi);
subplot(2,1,1);
plot(w/(2*pi),db,'LineWidth',2,'Color','b');
title('模拟滤波器频响');
axis([0,500,-20,1]);
%脉冲响应不变法转换
fs=1000;[bz,az]=impinvar(b,a,fs);
[db,mag,pha,grd,w]=freqz_m(bz,az);
subplot(2,1,2);
wp1=0.25*pi;wp2=0.45*pi;ws1=0.15*pi;ws2=0.55*pi;
%预畸变
wp3=(2/T)*tan(wp1/2);wp4=(2/T)*tan(wp2/2);
ws3=(2/T)*tan(ws1/2);ws4=(2/T)*tan(ws2/2);
%将所需类型模拟滤波器技术指标转换成模拟低通滤波器技术指标,设计模拟滤波器
wp=[wp3,wp4];ws=[ws3,ws4];
[n,wn]=buttord(wp,ws,Rp,Rs,'s');[z,p,k]=buttap(n);[b,a]=zp2tf(z,p,k);
%频率变换
w0=sqrt(wp3*wp4);Bw=wp4-wp3;
[b1,a1]=lp2bp(b,a,w0,Bw);
%双线性变换法
[bz,az]=bilinear(b1,a1,1/T);
[db,mag,pha,grd,w]=freqz_m(bz,az);
四、运行结果
五、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 沈再阳.精通MATLAB信号处理[M].清华大学出版社,2015.
[2]高宝建,彭进业,王琳,潘建寿.信号与系统——使用MATLAB分析与实现[M].清华大学出版社,2020.
[3]王文光,魏少明,任欣.信号处理与系统分析的MATLAB实现[M].电子工业出版社,2018.
【滤波器】基于matlab脉冲响应不变法+双线性变换法数字滤波器设计【含Matlab源码 884期】相关推荐
- 【Matlab生物电信号】生物电信号仿真【含GUI源码 684期】
一.代码运行视频(哔哩哔哩) [Matlab生物电信号]生物电信号仿真[含GUI源码 684期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]董兵,超于毅,李 ...
- 【Matlab语音分析】语音信号分析【含GUI源码 1718期】
一.代码运行视频(哔哩哔哩) [Matlab语音分析]语音信号分析[含GUI源码 1718期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆,张磊,郑铁 ...
- 【Matlab身份证识别】身份证号码识别【含GUI源码 014期】
一.代码运行视频(哔哩哔哩) [Matlab身份证识别]身份证号码识别[含GUI源码 014期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MAT ...
- 【Matlab车牌识别】停车计费系统【含GUI源码 735期】
一.代码运行视频(哔哩哔哩) [Matlab车牌识别]停车计费系统[含GUI源码 735期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MATLA ...
- 【Matlab水果识别】自助水果超市【含GUI源码 594期】
一.代码运行视频(哔哩哔哩) [Matlab水果识别]自助水果超市[含GUI源码 594期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]倪云峰,叶健,樊娇娇 ...
- 【Matlab验证码识别】遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别【含GUI源码 1694期】
一.代码运行视频(哔哩哔哩) [Matlab验证码识别]遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别[含GUI源码 1694期] 二.matlab版本及参考文献 1 matlab ...
- 【Matlab语音处理】汉宁窗FIR陷波滤波器语音信号加噪去噪【含GUI源码 1711期】
一.代码运行视频(哔哩哔哩) [Matlab语音处理]汉宁窗FIR陷波滤波器语音信号加噪去噪[含GUI源码 1711期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 ...
- 【Matlab人脸识别】BP神经网络人脸识别(含识别率)【含GUI源码 891期】
一.代码运行视频(哔哩哔哩) [Matlab人脸识别]BP神经网络人脸识别(含识别率)[含GUI源码 891期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] ...
- 【Matlab人脸识别】形态学教室人数统计(带面板)【含GUI源码 1703期】
一.代码运行视频(哔哩哔哩) [Matlab人脸识别]形态学教室人数统计(带面板)[含GUI源码 1703期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]孟 ...
- 【Matlab人脸识别】人脸实时检测与跟踪【含GUI源码 673期】
一.代码运行视频(哔哩哔哩) [Matlab人脸识别]人脸实时检测与跟踪[含GUI源码 673期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]孟逸凡,柳益君 ...
最新文章
- LeetCode Increasing Triplet Subsequence(动态规划)
- 类加载器源码、双亲委派、自定义类加载器详解
- python的映射_Python学习:映射函数(map)和函数式编程工具(filter和reduce)
- leetcode111. 二叉树的最小深度
- LeetCode 931. 下降路径最小和(DP)
- html input submit 执行,HTML DOM Input Submit用法及代码示例
- HTML 中img标签不显示
- 解决“此图片来自微信公众平台未经允许不可引用”的方法
- 十天学会单片机(3)发光管闪烁,蜂鸣器发声
- 应届生年薪 40w 在杭州可以过上什么样的生活?
- Pisces集成logback
- mysql断开连接_MYSQL,使用什么命令可以断开所有用户的表连接?
- Efficientnet-b5网络结构
- vue的keep-alive属性
- linux安装Oracle11g详细教程(redhat6、Centos7)
- 任务管理器在打开的瞬间是CPU占用过大
- php无法获取操作系统信息,如何获取操作系统信息
- vue路由懒加载的两种方式
- 从软件公司的企业文化浅谈什么是管理能力
- 基于单片机的电话拨号系统设计(#0472)
热门文章
- ld: i386 架构于输入文件foo.o 与 i386:x86-64 输出不兼容
- 在命令行到处MYSQL数据到EXCEL表
- 【转】Nutch源代码研究 网页抓取 数据结构
- 【读书笔记】 多线程程序常见bug
- C# 判断输入的字符是不是数字
- MATLAB调用OpenCV流程(MATLAB R2016a+OpenCV3.1.0+VS2010
- 190316每日一句
- unity界面按钮的位置
- Atitit word结构化提取考试试题读取 poi读取word nlp aiprj 目录 1.1. 结构化后数据	1 1.2. 文字读取	1 1.3. 图片读取	1 1.4. Doc的表格读取 /
- Atitit 技术成果有哪些 1. 技术成果	1 2. 技术成果分类	2 2.1. 职务技术成果和非职务技术成果	2 2.2. 专利技术成果和非专利技术成果	2 3. 范例代码项目 与代码片段	2