常用模拟低通滤波器的设计——巴特沃斯滤波器

news2024/11/27 4:20:07

常用模拟低通滤波器的设计——巴特沃斯(Butterworth)滤波器

       滤波器是一种具有频率选择作用的电路或运算处理系统,它具有区分区分输入信号的各种不同频率成分的功能,具有滤除噪声和分离各种不同信号的功能。综合一个滤波器的基本步骤分为逼近和实现。逼近方法有巴特沃斯逼近、切比雪夫逼近、椭圆逼近和贝塞尔逼近。这些逼近方法可直接用于低通滤波器综合,而对于高通、带通、带阻滤波器综合,要借助于频带变换。

1、确定系统函数的极点

      模拟滤波器的设计以几种典型的低通滤波器的原型函数为基础,IIR数字滤波器在设计上可以借助成熟的模拟滤波器的成果,如巴特沃斯滤波器、切比雪夫滤波器和椭圆滤波器等,有现成的设计数据以及曲线和图表可查,其设计工作量比较小。在设计一个IIR数字滤波器时,用户可以根据指标先写出模拟滤波器的公式,然后通过一定的变换,将模拟滤波器的公式转换成数字滤波器的公式。

 2、巴特沃斯(Butterworth)滤波器

       巴特沃斯(Butterworth)滤波器又称为“最平”的幅频响应滤波器,该滤波器的特点是在通带内具有最大平坦的幅度且随频率升高呈单调减小。

        N阶低通巴特沃斯滤波器的特性函数(振幅平方函数)为:

 【例5-8】采样速率为8000Hz,要求设计一个低通滤波器,fp=2100Hz,fs=2500Hz,Rp=3dB,Rs=25dB。

% 【例5-8】采样速率为8000Hz,要求设计一个低通滤波器,
% fp=2100Hz,fs=2500Hz,Rp=3dB,Rs=25dB。
clc, clear, close all
fn = 8000; fp = 2100; fs = 2500; Rp = 3; Rs = 25;
Wp = fp/(fn/2); %计算归一化角频率
Ws = fs/(fn/2);
% 计算阶数和截止频率
[n,Wn] = buttord(Wp,Ws,Rp,Rs);
% 计算H(z)分子、分母多项式系数
[b,a] = butter(n,Wn);
% 计算H(z)的幅频响应, freqz(b,a,计算点数,采样频率)
[H,F] = freqz(b,a,1000,8000);
subplot(211);
plot(F,20*log10(abs(H)));
xlabel('频率(Hz)'); ylabel('幅值(dB)');
title('低通滤波'); axis([0 4000 -30 3]);
grid on;

subplot(212);
pha = angle(H)*180/pi;
plot(F,pha);
xlabel('频率(Hz)'); ylabel('相位');
grid on;

  【例5-9】采样速率为8000Hz,要求设计一个高通滤波器,fp=1000Hz,fs=700Hz,Rp=3dB,Rs=20dB。

% 【例5-9】采样速率为8000Hz,要求设计一个高通滤波器,fp=1000Hz,fs=700Hz,Rp=3dB,Rs=20dB。
% clc, clear, close all
figure
fn = 8000; fp = 1000; fs = 700; Rp = 3; Rs = 20;
Wp = fp/(fn/2); %计算归一化角频率
Ws = fs/(fn/2);
% 计算阶数和截止频率
[n,Wn] = buttord(Wp,Ws,Rp,Rs);
% 计算H(z)分子、分母多项式系数
[b,a] = butter(n,Wn,"high");
% 计算H(z)的幅频响应, freqz(b,a,计算点数,采样频率)
[H,F] = freqz(b,a,1000,8000);
subplot(211);
plot(F,20*log10(abs(H)));
axis([0 4000 -30 3]);
xlabel('频率(Hz)'); ylabel('幅值(dB)');
title('高通滤波'); 
grid on;
subplot(212);
pha = angle(H)*180/pi;
plot(F,pha);
xlabel('频率(Hz)'); ylabel('相位');
grid on;

【例5-10】采样速率为10000Hz,要求设计一个带通滤波器,fp=[1000Hz,1500Hz],fs=[600Hz,1900Hz],Rp=3dB,Rs=20dB。

% 【例5-10】采样速率为10000Hz,要求设计一个带通滤波器,fp=[1000Hz,1500Hz],
% fs=[600Hz,1900Hz],Rp=3dB,Rs=20dB。
% clc, clear, close all
figure
fn = 10000; fp=[1000,1500]; fs=[600,1900]; Rp = 3; Rs = 20;
Wp = fp/(fn/2); %计算归一化角频率
Ws = fs/(fn/2);
% 计算阶数和截止频率
[n,Wn] = buttord(Wp,Ws,Rp,Rs);
% 计算H(z)分子、分母多项式系数
[b,a] = butter(n,Wn);
% 计算H(z)的幅频响应, freqz(b,a,计算点数,采样频率)
[H,F] = freqz(b,a,1000,10000);
subplot(211);
plot(F,20*log10(abs(H)));
axis([0 5000 -30 3]);
xlabel('频率(Hz)'); ylabel('幅值(dB)');
title('高通滤波'); 
grid on;
subplot(212);
pha = angle(H)*180/pi;
plot(F,pha);
xlabel('频率(Hz)'); ylabel('相位');
grid on;

 【例5-11】采样速率为10000Hz,要求设计一个带阻滤波器,fp=[1000Hz,1500Hz],fs=[1200Hz,1300Hz],Rp=3dB,Rs=30dB。

% 【例5-11】采样速率为10000Hz,要求设计一个带阻滤波器,fp=[1000Hz,1500Hz],
% fs=[1200Hz,1300Hz],Rp=3dB,Rs=30dB。
% clc, clear, close all
figure
fn = 10000; fp = [1000,1500]; fs = [1200,1300]; Rp = 3; Rs = 30;
Wp = fp/(fn/2); %计算归一化角频率
Ws = fs/(fn/2);
% 计算阶数和截止频率
[n,Wn] = buttord(Wp,Ws,Rp,Rs);
% 计算H(z)分子、分母多项式系数
[b,a] = butter(n,Wn,'stop');
% 计算H(z)的幅频响应, freqz(b,a,计算点数,采样频率)
[H,F] = freqz(b,a,1000,10000);
subplot(211);
plot(F,20*log10(abs(H)));
axis([0 5000 -35 3]);
xlabel('频率(Hz)'); ylabel('幅值(dB)');
title('高通滤波'); 
grid on;
subplot(212);
pha = angle(H)*180/pi;
plot(F,pha);
xlabel('频率(Hz)'); ylabel('相位');
grid on;

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/615789.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何在电脑上图片裁剪?裁剪图片大小的方法介绍

图片裁剪大小的优点 在数字化时代,图片已成为人们日常生活中使用最频繁的媒介之一。然而,由于不同尺寸和比例的图片在不同的平台上展示效果有所不同,因此需要对其进行裁剪。 图片裁剪大小的主要优点包括: 1. 优化页面显示&…

OJ #207. 评奖2

题目描述 ​ 山治同学所在的班级共有 N名同学,期末考试时进行了数学、语文、英语、地理四门功课的 测试。现要将班里总分最高的同学评为“学习小状元”。​ 如 3 名学生,4 门课程的成绩如下: 数学 语文 英语 地理 hong 98 90 87 74 Ming 96…

Hive学习---5、分区表和分桶表

1、分区表和分桶表 1.1 分区表 Hive中的分区就是把一张大表的数据按照业务需求分散的存储到多个目录,每个目录就称为该表的一个分区。在查询时通过where子句中的表达式选择查询所需要的分区,这样的查询效率会提高很多。 1.1.1 分区表基本语法 1、创建…

树莓派VNC控制报错:The connection was refused by the computer 已解决

在进行VNC远程操控树莓派的时候,出现了这个错误:The connection was refused by the computer。 大概原因有两个:一个是树莓派的IP地址更改了,另一个就是树莓派的VNC服务没有开启。 我的这块板子是个新板子,原因很显…

软件测试理论

测试理论 一 测试定义及原则 1 软件定义 一些列按着特定顺序组织的计算机数据和指令的集合: 软件 数据 指令 文档 2 软件分类 工具类软件游戏类软件电商类软件社交类软件教育类软件等 3. 软件架构分类 单机软件: office、红警等分布式软件 C/…

煤矿井下定位设备,实现特殊环境下人员安全管理

煤矿、金属矿山等地下作业场所的安全管理工作要求高、难度大,矿用人员定位系统通过实时定位等功能,可以帮助企业随时掌握作业人员的位置安全,提高生产和安全管理效率,并可在紧急情况时迅速采取措施,减少事故损失&#…

云原生容器安全检测有多难?安全狗云原生安全新版六招“泰酷辣”

想借助大规模部署和使用容器应用来提升业务系统开发速度?那你一定会发现,大量的数据对象、多种安全风险都需要检测,容器的安全检测难度增加了! 安全狗发现众多企业用户对安全的要求不再停留在“能用就好”的程度,于是新…

5种超超超实用的TikTok选品方法

是不是有很多人在做TikTok Shop时不知道该如何选品,面对琳琅满目的产品纠结该上哪款产品呢?今天就给大家介绍5种超实用的TikTok选品方法。 一、选品方法 1.从用户需求方面入手 做TikTok面向的是国外,所以选品时不能以国内的市场需求做参考&…

深入剖析SQL JOIN原理,助你掌握数据连接的奥秘!

大家好,我是小米,在技术的海洋中畅游的小编。今天,我要带你探索SQL JOIN的神奇原理,为你解锁高效数据查询的技巧!无论你是初学者还是资深开发者,相信这篇文章都能给你带来新的启发。废话不多说,…

算法技巧-双指针

欢迎关 Android茶话会 回 pdf 取阿里&字节经典面试题、Android、算法、Java等系列武功秘籍 在技术学习、个人成长的道路上,让我们一起前进! 前言 双指针技巧在算法题中算是常用技巧了,让我们省去for循环,降低复杂度&#xff…

第二十章_Redis分布式锁Redlock算法和底层源码分析

当前代码为8.0版接上一步 自研一把分布式锁,面试中回答的主要考点 按照JUC里面java.util.concurrent.locks.Lock接口规范编写 lock()加锁关键逻辑 加锁的Lua脚本,通过redis里面的hash数据模型,加锁和可重入性都要保证 加锁不成,…

NLP面经集结 | 达摩院、腾讯、微软、美团、百度

作者 | Codle 整理 | NewBeeNLP 面试锦囊之面经分享系列,持续更新中 赶紧后台回复"面试"加入讨论组交流吧 写在前面 本人情况:双非本末流985研二,爱奇艺NLP日常实习经历,无论文,投的都是 NLP 算法岗。 目前…

Ansible基础5——条件语句、循环语句、handlers、任务失败处理

文章目录 一、 循环语句1.1 单量循环1.2 多量循环1.3 老版本用法1.4 loopregister 二、条件判断2.1 根据变量状态判断2.2 根据变量是否存在判断2.3 根据事实判断2.4 多条件判断2.4.1 and用法2.4.2 or用法 2.5 循环判断2.6 根据上个任务结果判断 三、handlers处理程序四、任务失…

CDGA 认证:第十二章 元数据管理(重点章节)习题集解析

1. 以下内容不属于元数据综合解决方案功能需求点的是 ( ) A 历史信息 B 存储容量 C 运维要求 D 安全要求 【答案解析】DAMA-DMBOK2 P334 2. 关于 ISO/IEC 11179 元数据注册标准的说法正确的是:( ) A 该标准由 6 个部分组成 B 该标准用于定义元数据注册的框架 C 该标准包含…

Express+vue.js+nodejs银行排队取号系统

开发语言 node.js 框架:Express 前端:Vue.js 数据库:mysql 数据库工具:Navicat 开发软件:VScode 系统主要包括系统用户中心、显示管理、用户管理、排队管理、服务业务管理、用户评价管理、等候区管理等功能模块。 (a) 管理员&am…

00后求你善良,不要这么卷了...

前几天我们公司一下子也来了几个新人,这些年前人是真能熬啊,本来我们几个老油子都是每天稍微加会班就打算走了,这几个新人一直不走,搞得我们也不好走。 2023年春招结束了,最近内卷严重,各种跳槽裁员&#x…

Studio One6新生代DAW数字音频工作站

提到编曲软件,就不得不说这款水果编曲软件。它对新手和老手都比较友好,是一款较为经典的编曲软件。 这款软件提供了强大而全面的音符、音效编辑器,可以在其中插入各种乐器声音,如果内置乐器无法满足编曲需求,还可以外…

数据结构-递归

递归 概述 定义 计算机科学中,递归是一种解决计算问题的方法,其中解决方案取决于同一类问题的更小子集 In computer science, recursion is a method of solving a computational problem where the solution depends on solutions to smaller instan…

Web大前端时代之:HTML5+CSS3入门系列

Old: 联系源码:GitHub - dunitian/LoTHTML5: LoT家族的一员~HTML5系列 文档下载:https://github.com/dunitian/LoTDotNet/ 思维导图(不断更新): 图片:http://dnt.dkill.net/DNT/HTML5/index.jpg 源码&#…

超级全面的100个思维导图模板

思维导图是一款有效提升生活以及工作的效率工具。使用思维导图有非常多的好处。 思维导图可以用在我们生活的方方面面,以及各种各样的学科中。 接下来给大家分享不同的思维导图模板,希望可以帮助到大家。 一、读书笔记类 1、西游记 2、《战胜拖拉》读…