毕业设计
当前位置:首页 > 文秘写作 > 毕业设计 > 列表页

有关差分方程的毕业设计

小草范文网  发布于:2016-12-25  分类: 毕业设计 手机版

篇一:毕业设计

1.课程设计的目的及意义

通过本课程设计, 主要训练和培养我们的以下能力:

(1)训练和培养学生查阅资料,搜集与本设计有关部门的资料(包括从已发表的文献中和从生产现场中搜集)的能力;

(2)方案的选择,树立既考虑技术上的先进性与可行性,又考虑经济上的合理性,并注意提高分析和解决实际问题的能力;

(3)迅速准确的进行工程计算的能力,计算机应用能力; (4)用简洁的文字,清晰的图表来表达自己设计思想的能力。 2.FIR数字滤波器的理论基础

数字滤波是数字信号处理的基本方法。而数字滤波器是数字信号处理中最重要的组成部分之一,几乎出现在所有的数字信号处理系统中。数字滤波器大略可分为有限冲激响应型(FIR)和无限冲激响应型(IIR)两类,可用硬件和软件两种方式实现。FIR滤波器是一种常用的滤波器,能实现各种各样的功能,诸如低通滤波、带通滤波、抗混叠、抽样和内插等。在设计任意幅频特性的同时能够保证严格的线性相位特性。因此,它在图像处理以及数据传输、无线通信等数字信号处理中有着广泛的应用。

数字信号处理是把信号用数字或符号表示的序列,通过计算机或者通用(专用)信号处理设备,用数字的数值计算方法处理(例如滤波、变换、压缩、增强、估计、识别等),以达到提取有用信息便于应用的目的。

有限长单位冲激响应(FIR)数字滤波器可以做成具有严格的线性相位,同时又可以具有任意的幅度特性。此外,FIR滤波器的单位抽样响应是有限长的,因而滤波器一定是稳定的。再有,只要经过一定的延时,任何非因果有限长序列都能变成因果有限长序列,因而总能用因果系统来实现。最后,FIR滤波器由于单位冲激响应是有限长的,因而可以用快速傅里叶变换算法来实现过滤信号,从而可大大提高运算的效率。

FIR滤波器单位冲激响应h(n)的特点: 其单位冲激响应h(n)是有限长(

),系统函数为:

10

()()NnnHzhnz

(2-1)

2

在有限Z平面有(N-1)个零点,而它的(N-1)个极点均位于原点z=0处[1]

。 2.1 FIR数字滤波器的基本原理和结构

设h(n)(n=0,1,2,?,N一1)为滤波器的冲激响应,输入信号为x(n),则滤波器FIR就是要实现差分方程:

(2-2)

公式(2-2)就是FIR滤波器的差分方程。N为滤波器的阶数。它的单位脉冲响应h(n)是一个有

限长序列。由上面的方程可见,FIR滤波算法实际上是一种乘法累加运算,它不断地输入样本x(n),经延时(z-1),做乘法累加,再输出滤波结果y(n)。

对公式(2-2)进行z变换,整理后可得FIR滤波器的传递函数为

(2-3)

从公式(2-3)可以看出,FIR滤波器的一般结如图2-1所示:

图2-1 FIR滤波器的结构图

由公式(2-2)、公式(2-3)可见H(z)为z-1的N-1阶多项式,它在z平面上有N-1个零点并在原点z=0处有N-1重极点。故H(z)永远为稳定系统。若h(n)呈现对称特性,即此FIR滤波器具有线性相位,则可以简化加横截型结构,下面分情况讨论:

所以FIR滤波器具有如下特点:

① 给h(n)附加一定条件就可以实现严格的线性相位特性;

② FIR滤波器的稳定性,在设计过程中不必考虑系统的稳定性问题; ③ 由于h(n)为有限长,便于采用FFT进行系统运算,运算效率高; ④ FIR滤波器的阶数由h(n)的长度决定,所以一个具有良好的幅频特性的FIR滤波器的阶数往往都比较高。

3

图2-2 N为奇数时线形相位FIR滤波器实现结构

图2-3 N为偶数时线性相位FIR滤波器实现结构

2.2 FIR滤波器的性能指标和性质

2.2.1 FIR滤波器的性能

我们在进行滤波器设计时,需要确定其性能指标。一般来说,滤波器的性能要求往往以频率响应的幅度特性的允许误差来表征。以低通滤波器特性为例,频率响应有通带、过渡带及阻带三个范围。

在通带内: 1- AP≤| H(ejω)| ≤1|ω|≤ωc 在阻带中:|H(ejω)| ≤ Ast ωst ≤|ω|≤ωc

其中ωc 为通带截止频率, ωst为阻带截止频率,Ap为通带误差, Ast为阻带误差。

与模拟滤波器类似,数字滤波器按频率特性划分为低通、高通、带通、带阻、全通等类型,由于数字滤波器的频率响应是周期性的,周期为2π。各种理想数字滤波器的幅度频率响应如图所示:

5.3.2 实现形式

1. 时延环节模块

时延环节模块使 A / D 转换后的数据通过不同的触发器,从而产生不同的延迟。时延环节模块的 VHDL 设计程序采用文本编辑和原理图编辑。先用文本编辑一个4 阶延时模块,然后用原理图编辑 8 位 64 阶延时器模块。

时延环节模块程序:

ibraryieee;

use ieee. Std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity sipo is

port(clrn,clk,d:in std_logic;

qa:out std_logic_vector(3 downto 0));end sipo;

architecture a of sipo is

signal q:std_logic_vector(3 downto 0);

begin

process(clrn,clk)

begin

if clrn='0' then

q<="0000";

elsif clk'event and clk='1' then

q(0)<=d;

for i in 1 to 3 loop

q(i)<=q(i-1);

end loop;

end if;

end process;

qa<=q;

end a;

2. 存储器模块

存储器模块通过编程实现,利用VHDL硬件描述语言将事先算好的各模块系数存于逻辑单元中,以供选择器选择输出送到累加器中进行运算。

存储器模块程序:

library ieee;

use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity f_muxa is

port( se18:in std_logic_vector(3 downto 0);

q8,q7,q6,q5,q4,q3,q2,q1:in std_logic_vector(3 downto 0);

romout:out std_logic_vector(17 downto 0));

end f_muxa;

architecture m of f_muxa is

signal ss:std_logic_vector(3 downto 0);

signal pp:std_logic_vector(24 downto 0);

begin

p1: process(se18)

begin

case se18 is

when”0000”=>ss<=q1;

when”0001”=>ss<=q2;

when”0010”=>ss<=q3;

when”0011”=>ss<=q4;

when”0100”=>ss<=q5;

when”0101”=>ss<=q6;

when”0110”=>ss<=q7;

when”0111”=>ss<=q8;

when”1000”=>ss<=”0000”;

when”1001”=>ss<=”0000”;

when”1010”=>ss<=”0000”;

when”1011”=>ss<=”0000”;

when”1100”=>ss<=”0000”;

when”1101”=>ss<=”0000”;

when”1110”=>ss<=”0000”;

when”1111”=>ss<=”0000”;

when others=>pp<=”0000”;

end case;

end process;

p2: process(ss)

begin

case ss is

when“0000”=>pp<=”0000000000000000000000000”;

when”0001”=>pp<=”0000000000000000000000000”;

when”0010”=>pp<=”1111111111111111111100100”;

when”0011”=>pp<=”1111111111111111111100100”;

when”0100”=>pp<=”0000000000000000001101000”;

when”0101”=>pp<=”0000000000000000001101000”;

when”0110”=>pp<=”0000000000000000001001100”;

when”0111”=>pp<=”0000000000000000001001100”;

when”1000”=>pp<=”1111111111111111100100101”;

when”1001”=>pp<=”1111111111111111100100101”;

when”1010”=>pp<=”1111111111111111100001001”;

when”1011”=>pp<=”1111111111111111100001001”;

when”1100”=>pp<=”1111111111111111110001101”;

when”1101”=>pp<=”1111111111111111110001101”;

when”1110”=>pp<=”1111111111111111101110001”;

when”1111”=>pp<=”1111111111111111101110001”;

when others=>pp<=”0000000000000000000000000”;

end case;

end process;

begin

case se18 is

when”0000”=>romout(17 doento 0)<=pp(17 downto 0);

when”0001”=>romout(17 doento 0)<=pp(18 downto 1);

when”0010”=>romout(17 doento 0)<=pp(19 downto 2);

when”0011”=>romout(17 doento 0)<=pp(20 downto 3);

when”0100”=>romout(17 doento 0)<=pp(21 downto 4);

when”0101”=>romout(17 doento 0)<=pp(22 downto 5);

when”0110”=>romout(17 doento 0)<=pp(23 downto 6);

when”0111”=>romout(17 doento 0)<=pp(24 downto 7);

when”1000”=>romout(17 doento 0)<=”000000000000000000”;

when”1001”=>romout(17 doento 0)<=”000000000000000000”;

when”1010”=>romout(17 doento 0)<=”000000000000000000”;

when”1011”=>romout(17 doento 0)<=”000000000000000000”;

when”1100”=>romout(17 doento 0)<=”000000000000000000”;

when”1101”=>romout(17 doento 0)<=”000000000000000000”;

when”1110”=>romout(17 doento 0)<=”000000000000000000”;

when”1111”=>romout(17 doento 0)<=”000000000000000000”;

when others=>romout<=”000000000000000000”;

end case;

end process;

end m;

程序中se18是计数器的输出,q1,q2,q3,q4,q5,q6,q7,q8是时延环节的输出,也是系数选择信号,它们依次是第一位信号,第二位信号?第八位信号,都是四位二进制,romout是系数的输出,每采样一次,要输出八个数据(每位一次)

3. 累加器模块

累加器模块采用本文编辑实现,利用计数器的输出状态控制选择加数,与前一次的和的输出反馈值相加,共加8次,第9个时钟周期送出结果并使输出保持不变,第10个时钟周期累加器清零。

累加器模块程序

篇二:毕业设计

第一章 绪论

第二章 考虑均匀量化器的控制系统分析和设计 2.1量化误差建模与分析

由于数字设备硬件性能的提高,计算机控制的应用日益广泛。而量化误差正是研究带有量化器的计算机控制系统性能问题的基本概念。由于字长有限,量化误差广泛存在于数字控制系统中。

2.1.1计算机中二进定点制数的表示

二进定点制数的范围为 ?1?x?1 其表示形式为 x??

?...?

1

n

(2-1)

其有n+1位字,且?0是符号位。若?0?0表示正数,?0?1表示负数;尾数部分表示尾数值。

用式(2-1)表示一个数时,可用原码、反码及补码三种形式表示。

对于正数来说,三种码表示形式相同

x???

i?1n

i

2

?i

对于负数来说,尾数部分表示不同。 (1)原码的尾数部分用绝对值表示;

(2)反码的尾数部分用原码的对应位求反; (3)补码采用x对2的补数表示。

2.1.2量化误差

量化一般分为舍入和截尾两种。可设?x?表示量化处理后的x,则分别表示截尾、舍入量化

1、截尾量化

设正数经截尾量化后其字长为n0位,(n0?n) 且x?T???

i?1

?x?、?x?

T

R

n1

?2

i

?i

则截尾量化误差为由此可知,

当?i?0,n1?1?i?n时,

E

T

?x?T??x??

i?

??2

n1?1

i

n

?i

E?0

T

当?i?1,n1?1?i?n时,

E

T

??

i?

?2

n1?1

n

?i

??

?(2n1?2n)

则正数截尾量化误差范围为

?

?(2n1?2?n)?ET?0

负数截尾量化误差为:

(1)原码:由于?0?1,可得

ET?

i?

??2

n1?1

i

n

?i

则可得出结论:原码负数截尾量化误差范围为

(2)反码:由于?0?1,可得

?

?ET?2n1

E

T

?x?T??x??

i?

??2

n1?1

i

n

?i

?

?(2n1?2?n)

则可得出结论:反码负数截尾量化误差范围为 与原码相同。

(3)补码:由于?0?1,可得

?

?ET?2n1

ET??

i?

??2

n1?1

i

n

?i

则可得出结论:反码负数截尾量化误差范围为 ?2?n1?ET?0与正数相同。

2.舍入量化

正数通过舍入量化后,设其字长为n1位,则

其舍入误差为

?x????2

R

l?1

l

n1

?l

??

n 2n1

?

1

1

?

E

R

?

?x??x

R

??1??1

则舍入误差范围为 ?2n1?ER?2n1

负数的三种码,其舍入误差范围均可用上式表示。

补码 原码、反码

由量化误差的定量分析可知,二进定点制有两种量化形式,三种数

?

码表示,其误差大小均与量化阶有关,由于量化阶为2n1,字长越长,

量化误差越小。即量化误差相当于引进了非线性特性。

2.2考虑量化器的闭环控制系统分析和设计

本节中,我们将讨论量化器的加入对于闭环控制系统的影响,进而总结出其规律。

1.一阶环节

讨论一阶环节D(z)?

1?az

??0,k?0

在零输入下的输出。 e(k)???1

??0,k?0

考虑量化器的一阶环节

对应的差分方程为u(k)?au(k?1)?e(k)则得其理想输出为u(k)?a

k

e(0)

如果a?1,D(z)为稳定环节,则当k??,u(k)?0则通过舍入量化方式处理Q???,则对应的控制算法为

??? u(k)?Qau(k?1)?e(k) ????

?

由于k?0,e(k)?0,则有

e(0),k?0

??

?u(k)?????Q(k?1

有关差分方程的毕业设计

),k?0

au??

??

2.二阶环节

讨论二阶环节D(z)? 其结构图如下图

1?a1z?az

?1

2

??0,k?0

在零输入下的输出 e(k)???2

??0,k?0

考虑量化器的二阶环节

其对应的差分方程为u(k)?a1u(k?1)?a2u(k?2)?e(k)

??????

加入量化器后,可得u(k)?Q?a1u(k?1)??Q?a2u(k?2)??e(k)

????其特征方程为z?a1z?a2?(z?re)(z?re则有

2

2

j?

?j?

?

)?

z

2

?2rcos??z?r?0

2

r

2

??a2,rcos??0.5a1

且r??a2?1

分析一阶、二阶环节的舍入量化运算可知,量化器加入到一阶环节和二阶环节中

对系统输出的影响是均出现状态不能完全收敛的情况。

篇三:毕业设计之最新

摘要

数字滤波是数字信号处理的重要内容。数字滤波器根据时域特性可分为无限脉冲响应IIR滤波器和有限脉冲响应FIR滤波器两大类。本文分别研究了在MATLAB环境下IIR数字滤波器和FIR数字滤波器的设计原理及实现方法,并列出了设计实例程序及运行结果。

在无限脉冲响应(IIR)数字滤波器设计中,先进行模拟滤波器的设计,然后进行模拟-数字滤波器转换,即采用脉冲响应不变法及双线性变换法设计数字滤波器,最后进行滤波器的频带转换。在有限脉冲响应(FIR)数字滤波器设计中,讨论了FIR线性相位滤波器的特点和最优法设计FIR滤波器等问题。两类滤波器整个设计过程都是按照理论分析、编程设计、具体实现的步骤进行的。

关键词:数字滤波器,MATLAB,无限脉冲响应,有限脉冲响应

Abstract

The digital filter is one of the most importantpares in digital signal processing , it can be divided into two kinds , the Infinite Impulse Response and Finite Impulse Response . In this thesis, designs of the Infinite Impulse Response digital filter (IIR) and Finite Impulse Response digital filter (FIR) under MATLAB are studied , the design programs snd the run results are also presented .

The design of IIR filters can be achieved through three steps: firstly, the design of analog low-pass filter; secondly, it is analog-to-digital filter conversion; lastly, it is the conversion of filter frequency band. In design of FIR filters, two questions are discussed: the characteristics of FIR linear phase filter and reasoning of related formulas; the other is about the design of the FIR filters by means of charactor functions. The design of FIR and IIR follows the procedures of theoretical analysis, programming design and realization .

The end of this thesis , we complete the gather and processing of signal with theoretical analysis ,and the correct result is given through designing a digital filter .

Keywords: Digital,Filter,MATLA,IIR,FIR,Research-type experiment

目录

1 前言 .................................................................. 1

1.1 数字滤波器简述 ...................................................... 1

1.2 滤波器的发展过程 .................................................... 1

1.3数字滤波技术 ........................................................ 2

1.3.1滤波器原理 ...................................................... 3

1.3.2数字滤波器设计方法概述 .......................................... 4

2 MATLAB简介 ............................................................ 5

2.1 MATLAB简介及产生的历史背景.......................................... 5

2.2 MATLAB的语言特点.................................................... 6

2.3 MTALAB的功能........................................................ 7

3 IIR滤波器设计及其MATLAB实现 ......................................... 11

3.1 IIR数字滤波器的设计原理............................................ 11

3.2.1 IIR数字滤波器的典型设计法 ..................................... 11

3.2.3 IIR数字滤波器的最优设计法 ..................................... 16

3.2.4 IIR数字滤波器的工具设计法 ..................................... 18

3.3 本章小结 ........................................................... 20

第4章 FIR滤波器设计及其MATLAB实现 .................................... 21

4.1 FIR数字滤波器的设计原理 ............................................. 21

4.2 FIR数字滤波器的设计方法............................................ 21

4.2.1 FIR数字滤波器的窗口设计法 ..................................... 21

4.2.2 FIR数字滤波器的频率采样法 ..................................... 24

4.2.4 FIR数字滤波器的工具设计法 ..................................... 26

4.3 本章小结 ........................................................... 28

结束语 ............................................................. 29

致谢 ................................................................. 30

1 前言

1.1 数字滤波器简述

数字信号处理在通信、语音、图像,自动控制、雷达、军事、航空航天、医疗和家用电器等众多领域得到了广泛的应用。在数字信号处理中,滤波器占有非常重要的地位。数字滤波器在语音和图像处理、HDTV、模式识别、频谱分析等方面得到广泛应用。

所谓滤波器,是指对输入信号进行滤波的软件或硬件。所谓数字滤波器,是指输入、输出均为数字信号,通过一定运算关系改变输入信号所含频率成分的相对比例或者滤除某些频率成分的硬件或软件。由于数字滤波信号形式与实现滤波方法与模拟滤波方法不同,数字滤波器具有比模拟滤波器精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配以及可以避免模拟滤波器所无法克服的电压漂移和噪声问题。

数字滤波器的设计,其实质是数学逼近理论的应用,通过计算使物理可实现的实际滤波器频率特性逼近理想的或给定的频率特性,以达到去除干扰提取有用信号的目的。

1.2 滤波器的发展过程 凡是有能力进行信号处理的装置都可以称为滤波器。在近代电信装备和各类控制系统中,滤波器应用极为广泛;在所有的电子部件中,使用最多,技术最复杂要算滤波器了。滤波器的优劣直接决定产品的优劣,所以,对滤波器的研究和生产历来为各国所重视。

1917年美国和德国科学家分别发明了LC滤波器,次年导致了美国第一个多路复用系统的出现。50年代无源滤波器日趋成熟。自60年代起由于计算机技术、集成工艺和材料工业的发展,滤波器发展上了一个新台阶,并且朝着低功耗、高精度、小体积、多功能、稳定可靠和价廉方向努力,其中小体积、多功能、高精度、稳定可靠成为70年代以后的主攻方向,导致RC有源滤波器 、数字滤波器、开关电容滤波器和电荷转移器等各种滤波器的飞速发展。到70年代后期,上述几种滤波器的单片集成被研制出来并得到应用。80年代致力于各类新型滤波器性能提高的研究并逐渐扩大应用范围。90年代至今在主要致力于把各类滤波器应用于各类产品的开发和研制。当然,对滤波器本身的研究仍在不断进行。

我国广泛使用滤波器是50年代后的事,当时主要用于话路滤波和报路滤波。经过半个世纪的发展,我国滤波器在研制、生产应用等方面已有一定进步,但由于缺少专门

研制机构,集成工艺和材料工业跟不上来,使许多新型滤波器的研制应用与国际水平有一段距离。

1.3数字滤波技术

数字滤波是数字信号处理的重要基础,数字信号处理主要是研究用数字或符号的序列来表示信号波形,并用数字的方式去处理这些序列,把它们改变成在某种意义上更希望的形式,以便估计信号的特征参量,或削弱信号中的多余分量和增强信号中的有用分量。数字滤波器在对信号的过滤、检测与参数估计等处理过程中,是使用最为广泛的一种线性系统。

数字滤波器(Digital Filter,简称为DF)是指完成信号滤波处理功能的、用有限精度算法实现的离散时间线性非时变系统。数字滤波器的数学运算有两种实现方式。一种是频域法,即利用FFT快速运算办法对输入信号进行离散傅立叶变换,分析其频谱,然后根据希望的频率特性进行滤波,再利用傅立叶反变换恢复出时域信号。这种方法具有较好的频域选择特性和灵活性,并且由于信号频率与所希望的频谱特性是简单的相乘关系,所以它比计算等价的时域卷积要快得多。另一种方法是时域法,这种方法是通过对离散抽样数据作差分数学运算来达到滤波目的的。

数字滤波器的输入是一组(由模拟信号取样和量化的)数字量,其输出是经过数字变换的另一组数字量。数字滤波器具有稳定性高、精度高、灵活性大等突出优点。随着数字技术的发展,用数字技术实现滤波器的功能愈来愈受到人们的重视,并得到了广泛的应用。

熟字信号处理学科的一项重大进展是关于数字滤波器设计方法的研究。60年代开始形成关于数字滤波器的一套完整的正规理论。这一时期,提出了各种各样的数字滤波器结构,有的以运算误差最小为特点,有的则以运算速度高见长;出现了数字滤波器的各种逼近方法和实现方法,对递归和非递归两类滤波器作了全面的比较;统一了数字滤波器的基本概念和理论,对有限冲激响应(IIR)和无限冲激响应(FIR)的认识有了完整理论。70年代后,科学技术蓬勃发展,数字信号处理开始与大规模和超大规模集成电路技术、微处理技术等新工艺新技术结合起来,并引进计算机辅助设计方法,大大丰富了数字滤波器的分析与设计,各种新的数字信号处理系统,也都能用专用数字硬件实时加以实现。相信在未来,随着电子仪器与电子技术应用系统朝着数字化、小型化、自动化以及多功能化等方向发展,包括数字滤波器在内的数字信号处理技术会有以惊人的速度进行飞跃式发展。

本文已影响