滤波器设计与信号滤波课程设计报告要点

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中北大学信息与通信工程学院

课程设计报告

题目:滤波器设计与信号滤波

专业: 电子信息科学与技术

班级: 12050142

姓名:周先涛

时间:2015.06.28~2015.07.10

指导教师:王小燕

完成日期:2015年07月 10日

课程设计任务书

课程设计任务书

目录

1 设计背景 (3)

2m a t l a b (3)

3 滤波器性能分析和比较 (9)

4 滤波器的程序及参数设定 (15)

5 滤波器处理结果及分析 (18)

6实验总结与体会 (20)

7 主要参考文献 (20)

1.设计背景

滤波器是一种能使有用信号顺利通过而同时对无用频率信号进行抑制(或衰减)的电子装置。随着大功率电子器件的出现,谐波干扰已经是工业生产和科研事业发展的巨大的障碍,应运而生的滤波器产品也就派上用场,滤波器的发展前景是不可小视的,可以说凡有电子产品的地方必有滤波器产品。在近代电信设备和各类控制系统中,滤波器应用极为广泛,在所有的电子部件中,使用最多,技术最为复杂的要算滤波器了。滤波器的优劣直接决定产品的优劣及整个系统的性能。所以,对滤波器的研究和生产历来为各国所重视。

工程上常用滤波器来做信号处理、数据传送和抑制干扰等。以往主要采用无源元件R、L和C组成模拟滤波器,六十年代以来,R、C组成的有源滤波器,具有不用电感、体积小、重量轻等优点,随着微电子学的发展,基于放大器和R、C构成的有源滤波器应用日益广泛。人们已经可以把一些电阻和电容与运放集成在一块芯片上构成通用有源滤波器。这种芯片集成度高,片内集成了设计滤波器所需的电阻和电容,在应用中只需极少数外部器件就可以很方便地构成一个有源滤波器。到70年代后期,上述几种滤波器的单片集成已被研制出来并得到应用。80年代,致力于各类新型滤波器的研究,努力提高性能并逐渐扩大应用范围。90年代至现在主要致力于把各类滤波器应用于各类产品的开发和研制。因此滤波器的发展对于一个国家的经济产业起到很重要的作用。因此滤波器的设计显得尤为重要。

2. matlab

2.1 开发算法和应用程序

MATLAB 提供了一种高级语言和开发工具,使您可以迅速地开发并分析算法和应用程序。

2.1.1 MATLAB 语言

MATLAB 语言支持向量和矩阵运算,这些运算是工程和科学问题的基础。这样使得开发和运行的速度非常快。

使用 MATLAB 语言,编程和开发算法的速度较使用传统语言大大提高,这是因为无须执行诸如声明变量、指定数据类型以及分配内存等低级管理任务。在很多情况下,MATLAB 无须使用 "for" 循环。因此,一行 MATLAB 代码经常等效于几行 C 或 C++ 代码。

同时,MATLAB 还提供了传统编程语言的所有功能,包括算法运算符、流控制、数据结构、数据类型、面向对象编程 (OOP) 以及调试功能。

利用 MATLAB,无须执行编译和链接即可一次执行一个或一组命令,这样就可以迅速迭代到最佳解决方案。

为快速执行大量的矩阵和向量计算,MATLAB 使用了处理器经过优化的库。对于通用的标量计算,MATLAB 使用其 JIT(即时)编译技术生成机器代码指令。这一技术可用于大多数平台,它提供了可与传统编程语言相媲美的执行速度。

2.1.2 开发工具

MATLAB 包含一些有助于高效实施算法的开发工具。这些工具如下:

MATLAB 编辑器 -提供标准的编辑和调试功能,如设置断点及单步执行

M-Lint 代码检查器- 对代码进行分析并提出更改建议,以提高其性能和可维护性

MATLAB 事件探查器 - 记录执行各行代码所花费的时间

目录报表 -扫描目录中的所有文件,并报告代码效率、文件差异、文件相关性和代码覆盖

2.2 分析和访问数据

2.2.1 分析和访问数据

MATLAB 对整个数据分析过程提供支持,该过程从外部设备和数据库获取数据,通过对其进行预处理、可视化和数值分析,最后到生成质量达到演示要求的输出。

2.2.2 数据分析

MATLAB 提供了一些用于数据分析运算的交互式工具和命令行函数,包括:

1.内插和抽取

2.抽取数据段、缩放和求平均值

3.阈值和平滑处理

4.相关性、傅立叶分析和筛选

5.一维峰值、谷值以及零点查找

6.基本统计数据和曲线拟合

7.矩阵分析

2.2.3 数据访问

MATLAB 是一个可高效地从文件、其他应用程序、数据库以及外部设备访问数据的平台。您可以从各种常用文件格式(如 Microsoft Excel)、ASCII 文本或二进制文件、图像、语音和视频文件以及诸如 HDF 和 HDF5 等科学文件中读取数据。借助低级二进制文件 I/O 函数,可以处理任意格式的数据文件。而其他函数可使您从 Web 页面和 XML 中读取数据。

2.3 数据可视化

2.3.1 实现数据可视化

MATLAB 中提供了将工程和科学数据可视化所需的全部图形功能。这些功能包括二维和三维绘图函数、三维卷可视化函数、用于交互式创建图形的工具以及将结果输出为各种常用图形格式的功能。可以通过添加多个坐标轴、更改线的颜色和标记、添加批注、LATEX 方程和图例以及绘制形状,对图形进行自定义。

2.3.2 二维绘图

可以通过使用二维绘图函数将数据向量可视化,创建以下图形:

1.线图、区域图、条形图以及饼图

2.方向图及速率图

2.3.3 三维绘图和卷可视化

MATLAB 提供了一些用于将二维矩阵、三维标量和三维向量数据可视化的函数。可以使用这些函数可视化庞大的、通常较为复杂的多维数据,以帮助理解;还可以指定图形特性,如相机取景角度、透视图、灯光效果、光源位置以及透明度等等。三维绘图函数包括:

1.曲面图、轮廓图和网状图

2.成像图

3.锥形图、切割图、流程图以及等值面图

2.3.4 交互式创建和编辑图形

MATLAB 提供了一些用于设计和修改图形的交互式工具。在 MATLAB 图形窗口中,可以执行以下任务:

1.将新的数据集拖放到图形上

2.更改图形上任意对象的属性

3.缩放、旋转、平移以及更改相机角度和灯光

4.添加批注和数据提示

5.绘制形状

6.生成可供各种数据重复使用的 M 代码函数

2.4 执行数字运算

MATLAB 包含了各种数学、统计及工程函数,支持所有常见的工程和科学运算。这些由数学方面的专家开发的函数是 MATLAB 语言的基础。这些核心的数学函数使用 LAPACK 和 BLAS 线性代数子例程库和 FFTW 离散傅立叶变换库。由于这些与处理器相关的库已针对 MATLAB 支持的各种平台进行了优化,因此其执行速度比等效的 C 或 C++ 代码的执行速度要快。

MATLAB 提供了以下类型的函数,用于执行数学运算和数据分析:

相关文档
最新文档