matlab设计理想数字带通滤波器,基于matlab的数字带通滤波器课程设计报告

41528d3028836879cd698677c3999917.gif基于matlab的数字带通滤波器课程设计报告

1 西安文理学院机械电子工程系 课程设计报告 专业班级 08级电子信息工程1班 题 目 基于 MATLAB 的数字带通滤波器 学 号 学生姓名 指导教师 2011 年 12 月 西安文理学院机械电子工程系2 课程设计任务书 学生姓名 _______专业班级 ________ 学 号 ______ 指导教师 ______ 职 称 副教授 教研室 电子信息工程 课 程 数 字 信 号 处 理 题目基于MATLAB 的数字带通滤波器设计 任务与要求 设计任务: 要求设计一个 IIR 带通滤波器,其中通带的中心频率为 ,通   5 . 0  po 带的截止频率 , ,通带最大衰减 ;阻带最小   4 . 0 1  p   6 . 0 2  p dB p 3   衰减 ,阻带截止频率 , 。 dB s 15     3 . 0 1  s   7 . 0 2  s 设计要求: 1. 根据设计任务要求给出实现方案及实现过程。 2. 给出所实现的滤波器幅频特性及相频特性曲线并加以分析。 3. 论文要求思路清晰,结构合理,语言流畅,书写格式符合要求。 开始日期 2011.12.19 完成日期 2011.12.30 2011年 12月 18 日3 一、设计任务 设计一数字带通滤波器,用 IIR 来实现,其主要技术指标: 通带边缘频率:wp1=0.4 ,wp2=0.6   通带最大衰减:Ap=3dB 阻带边缘频率:ws1=0.3 ,ws2=0.7   阻带最小衰减:As=15dB 设计总体要求:用 MATLAB 语言编程进行设计,给出 IIR 数字滤波器 的参数,给出幅度和相位响应曲线,对 IIR 实现形式和特点等方面进行讨 论。 二、设计方法 IIR数字滤波器具有无限宽的冲激响应,与模拟滤波器相匹配,所以 IIR滤波器的设计可以采取在模拟滤波器设计的基础上进一步变换的方法。 比较常用的原型滤波器有巴特沃什滤波器(Butterworth) 、切比雪夫滤波 器(Chebyshev) 、椭圆滤波器(Ellipse)和贝塞尔滤波器(Bessel)等。 他们有各自的特点,巴特沃什滤波器具有单调下降的幅频特性;切比雪夫 滤波器的幅频特性在通带和阻带里有波动,可以提高选择性;贝塞尔滤波 器通带内有较好的线性相位特性;椭圆滤波器的选择性最好。本设计IIR 数字滤波器采用巴特沃什滤波器 [3] 。 设计巴特沃什数字滤波器时,首先应根据参数要求设计出相应的模拟 滤波器,其步骤如下: (1)由模拟滤波器的设计指标wp,ws,Ap,As和式(1)确定滤波器 阶数N。(1) ) lg( 2 ) 1 10 1 10 lg( 1 . 0 1 . 0 w w s p As Ap N    (2)由式(2)确定wc。4(2) N As s c N Ap p w w w 2 1 1 . 0 2 1 1 . 0 ) 1 10 ( ) 1 10 (     (3)若N是奇数,则有式(3)和式(4)确定滤波器的系统函数;若 N是偶数,则式(3)和式(5)确定滤波器的系统函数。然后把设计好的 模拟Butterworth滤波器变换成数字滤波器,常采用的方法有脉冲响应不 变法和双线性变换法 [4] 。(3) ) ( ) ( w s H s H c LO (4)        2 / ) 1 ( 1 2 1 ) (sin 2 1 ) 1 ( 1 ) ( N k k LO s s s s H (5)      2 / 1 2 1 ) (sin 2 1 ) ( N k k LO s s s H  巴特沃什滤波器是根据幅频特性在通频内具有最平坦特性而定义的滤 波器。一维巴特沃什滤波器的平方幅频特性函数为(6)   2 2 1 ( ) 1 N c H j      可以看出,滤波器的幅频特性随着滤波器阶次N的增加而变得越来越 好。在截止频率Ωc处的函数值始终为 的情况下,在通带内更多的频带 1 2 区的值接近1;在阻带内函数更迅速的趋近0。巴特沃什滤波器的主要特征: (1)对于所有N, 2 0 ( ) 1 a j H     (2)对于所有N, 2 1 2 ( ) c a j H      (3) 是Ω的单调下降函数。 2 ( ) a j H  (4) 随着阶次N的增大而更加接近于理想滤波器。 2 ( ) a j H  最常用于设计IIR数字带通滤波器的方法基于原型模拟传输函数的双5 线性变换。模拟传输函数通常是:巴特沃什、切比雪夫1型、切比雪夫2 型和椭圆传输函数。巴特沃什低通传输函数在dc处有一个最大平坦的幅度 响应,且随着频率增加幅度响应单调地减少。本设计IIR数字带通滤波器 就采用巴特沃什型。 巴特沃什型数字带通滤波器的设计,MATLAB调用形式如下: [N,wn]=buttord(wp,ws,Ap,As) [num,den]=butter(N,wn) 在buttord中,调用参数wp,ws,是数字带通滤波器的归一化通带和 阻带截止频率,Ap是通带最大衰减,As是阻带最小衰减。返回参数N是巴 特沃什滤波器的阶数,wn是3dB截止频率,函数butter获得数字(den) 和(num)是巴特沃什滤波器系统函数H(z)的分母多项式和分子多项式。 三、数字带通滤波器的具体设计及实现 3.1用MATLAB设计的IIR数字带通滤波器的具体程序如下: ws=[0.3 0.7]; %ws为归一化阻带边界频率 wp=[0.4 0.6]; %wp为归一化通带边界频率 Ap=3; %Ap单位为dB的通带波形 As=15; %As单位为dB的最小阻带衰减 [n1,wn1]=buttord(wp,ws,Ap,As);%估计数字滤波器的阶数%wn1为归一化截止频率 [num,den]=butter(n1,wn1); %设计数字滤波器 %计算单位为dB的gain函数 %单位圆上将函数转化为256等份 w=0:pi/255:pi; %计算相位 h=freqz(num,den,w); %频率计算 g=20*log10(

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

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

相关文章

xml序列号错误

xml序列号错误((XmlHelper.Deserialize))提示&#xff1a;XML 文档(1, 2)中有错误。{"不应有 <entryOrder xmlns>。"} 原因&#xff1a;1.缺少根目录&#xff08;<root>&#xff09;2.xml字段转换失败&#xff08;string->int&#xff09; ----------…

关于windows10 CMD 的一些操作

之前接触过cmd的一些操作方法&#xff0c;比如用dir、tasklist等一些方法&#xff0c;但是用了会立马忘记&#xff0c;再用到时又要重新google&#xff0c;这着实让我头痛&#xff01;&#xff01;&#xff01; 今天又碰到一个关于改变目录的问题&#xff0c;又是纠结万分&…

oracle dblink 验证,Oracle DBLINK 简单使用

oracle在进行跨库访问时&#xff0c;可以通过创建dblink实现&#xff0c;今天就简单的介绍下如果创建dblink&#xff0c;以及通过dblink完成插入、修改、删除等操作首先了解下环境&#xff1a;在tnsnames.ora中配置两个数据库别名&#xff1a;orcl(用户名&#xff1a;wangyong …

六、表达式:前缀后缀

count为运算后的值。 转载于:https://www.cnblogs.com/Strugglinggirl/p/9026856.html

ubuntu中安装hadoop集群

hadoop是由java 语言编写的主从结构分布式计算存储架构 准备工作&#xff1a; 操作系统&#xff1a; Ubuntu16.04 软件安装包&#xff1a;jdk-8u171-linux-x64.tar.gz &#xff1b; hadoop-2.6.5.tar.gz 配置环境&#xff1a;3台虚拟机 master:192.168.122.10node1 …

linux 内核3.8,[Beaglebone] BBB迁移到linux 3.8实时内核

8种机械键盘轴体对比本人程序员&#xff0c;要买一个写代码的键盘&#xff0c;请问红轴和茶轴怎么选&#xff1f;动机之前使用TI SDK提供的3.2标准内核&#xff0c;在和fpga进行高速通信时出现CPU 100%中断响应延迟严重(偶尔>50ms)造成数据丢包。为达到严格的中断响应速度(&…

软考解析:2017年上半年下午试卷

软考解析&#xff1a;2017年上半年下午试卷 第一题&#xff1a;数据流图 第二题&#xff1a;数据库设计 第三题&#xff1a;面向对象开发 真题 理论 类图 状态图 解题思路 第四题&#xff1a;算法与数据结构 第五题&#xff1a;设计模式与Java转载于:https://www.cnblogs.com/…

PHP配置开发环境

PHP配置开发环境 1.建3个文件夹&#xff1a; 2&#xff1a;找到apache的安装包 3&#xff1a;可以随意写 4&#xff1a; 5&#xff1a;找到你的apache的路径 6&#xff1a;注意&#xff1a;不要解压到当前文件夹 7&#xff1a;剪切替换名字修改为php 8&#xff1a;在apache >…

linux下tar包安装sudo命令,ubuntu12.04LTS安装gv-412-Linux-x86.tar.gz方法

折腾了2天多&#xff0c;终于装好了。操作系统Ubuntu 12.04 LTS (在win7系统下用ubuntu的windows安装工具安装的&#xff0c;有点类似双系统)gaussian view程序gv-412-Linux-x86.tar.gz(软件可以从这里找到一些Linux&WinGaussian&gview下载地址)特别提示下面的设计到的…

6章 Models

传统的MVC结构中&#xff0c;有模型这么一个概念。Django中&#xff0c;Models又是怎么一回事呢? 刚才生成的这些乱七八糟的数据迁移就是Django自带的一些应用 INSTALLED_APPS [django.contrib.admin,django.contrib.auth,django.contrib.contenttypes,django.contrib.sessio…

android activity之间传递对象,Android Activity之间的数据传递

一、通过startActivity来进行Activity的传值在Android中&#xff0c;如果我们要通过一个Activity来启动另一个Activity&#xff0c;可以使用 startActivity(Intent intent)方法来传入一个Intent对象&#xff0c;这个Intent对象我们可以精确的指定我们需要跳转的Activity上&…

[UE4]更新UI的三种方式

一、函数绑定 二、属性绑定 只会列出匹配的数据类型。 三、事件驱动更新 啦啦啦啦啦 结论&#xff1a;函数和属性绑定的原理都是每帧都去调用绑定的函数/属性&#xff0c;效率比较低下&#xff0c;一般不推荐使用。事件驱动更新的效率最好&#xff0c;性能最好。 在正式的产品开…

使用handler倒计时

点击button暂停 public class MainActivity extends AppCompatActivity {BindView(R.id.button)Button button;BindView(R.id.first_textview)TextView textView;Handler mHandler;volatile boolean flagtrue;Object objectnew Object();MThread mThread;Overrideprotected voi…

android实现3种定位的切换,Android 滑动定位+吸附悬停效果实现

在前两篇文章中&#xff0c;分别介绍了tablayoutscrollview 和 tablayoutrecyclerview 实现的滑动定位的功能&#xff0c;文章链接&#xff1a;Android 实现锚点定位Android tabLayoutrecyclerView实现锚点定位仔细看的话&#xff0c;这种滑动定位的功能&#xff0c;还可以整体…

unity mmd不支持android,MMD模型导入Unity的解决方案

前言学了Unity后&#xff0c;总是感觉缺少资源&#xff0c;包括人物、物品模型、动作数据、贴图、特效&#xff0c;各种插件&#xff0c;还被骗去学了几天各种美术软件。说起模型和动作数据&#xff0c;就又想到MMD&#xff0c;毕竟有那么现成的资源&#xff0c;虽然不能商用&a…

android中的 listview,Android中ListView的初步认识(一)

ListView是安卓开发中常用的组件之一&#xff0c;它的作用是在一个垂直的列表中展现出所需的项目。接下来&#xff0c;我们看一下ListView的实现方法&#xff1a;第一种 是常见的在XML中定义然后在activity中使用findViewById来获取的方式(这个相当基础了&#xff0c;直接代码)…

android开发app初始化,安卓快速开发框架(一)XBaseAndroid初始化使用

XBaseAndroid如果您需要使用最新版可以去github查看。该文章描述的是1.0.9.4版本。使用AndroidStudio 3.0创建一个新的安卓项目如果您不知道如何创建&#xff0c;请猛戳此处。配置仓库引用项目结构.png点击build.gradle(Project)&#xff0c;添加以下maven仓库。allprojects {r…

Python之模块与包(下)

1、什么是包 #官网解释 Packages are a way of structuring Python’s module namespace by using “dotted module names” 包是一种通过使用‘.模块名’来组织python模块名称空间的方式。 #具体的&#xff1a;包就是一个包含有__init__.py文件的文件夹&#xff0c;所以其实我…

接口测试学习——操作MySQL

第一步要导入第三方的jar包。&#xff08;jemeter不能直接连接MySQL&#xff09; 操作方法就是点击“测试计划”&#xff0c;右侧展开的页面中选择【浏览】&#xff0c;选择MySQL的jar包。导入即可。 第二步&#xff1a;创建数据库链接的配置&#xff1a;MySQL的路径URL、端口号…

html5网页自动滚动,Html5 滚动穿透的方法

问题背景&#xff1a;网站需要在移动端完成适配,针对移动端H5以及web端采用的都是bluma这种flex布局解决方案在H5中使用的列表采用的是 react-virtualized 来绘制表格为了展示表格中单行数据的具体详情&#xff0c;通常的解决方案是采用新页面或者是弹窗来完成。这里采用的是弹…