当前位置:文档之家› 数字信号Matable实验指导

数字信号Matable实验指导

数字信号Matable实验指导
数字信号Matable实验指导

实验1 常见离散信号的MATLAB 产生和图形显示

1.实验目的:

加深对常用离散信号的理解;

2.实验原理: 单位抽样序列

???=0

1

)(n δ

0≠=n n

在MA TLAB 中可以利用zeros()函数实现。

;

1)1();,1(==x N zeros x

如果)(n δ在时间轴上延迟了k 个单位,得到)(k n -δ即:

???=-0

1)(k n δ

≠=n k n

2.单位阶跃序列

?

??01

)(n u 00<≥n n

在MA TLAB 中可以利用ones()函数实现。

);,1(N ones x =

3.正弦序列

)/2sin()(?π+=Fs fn A n x

在MA TLAB 中

)

/***2sin(*1

:0fai Fs n f pi A x N n +=-=

4.复正弦序列

n

j e

n x ?=)(

在MA TLAB 中

)

**exp(1:0n w j x N n =-=

5.指数序列

n

a n x =)(

在MA TLAB 中

n

a x N n .^1:0=-=

3.实验内容:编制程序产生上述5种信号(长度可输入确定),并绘出其图形。

4.实验要求:

(1)预先阅读附录(MA TLAB 基础介绍); (2)讨论复指数序列的性质;

(3)打印程序清单和要求的各信号波形。

实验2 离散系统的差分方程、冲激响应和卷积分析

1.实验目的:加深对离散系统的差分方程、冲激响应和卷积分析方法的理解。

2.实验原理:离散系统

其输入、输出关系可用以下差分方程描述:

∑=∑=-=

-M k k N k k k n x p k n y d 0

][][

输入信号分解为冲激信号 ∑-=∞

-∞

=m m n m x n x ][][][δ

记系统单位冲激响应

]

[][n h n →δ

则系统响应为如下的卷积计算式 ∑∞

-∞

=-=*=m m n h m x n h n x n y ][][][][][

N

k d k ,...2,1,0==时,h[n]是有限长度的(n :[0,M]),称系统为FIR 系统;

反之,称系统为IIR 系统。

在MA TLAB 中,可以用函数y=Filter(p,d,x) 求解差分方程,也可以用函数 y=Conv(x,h)计算卷积。

3.实验内容:编制程序求解下列两个系统的单位冲激响应和阶跃响应,并绘出其图形。

]

1[][]2[125.0]1[75.0][--=-+-+n x n x n y n y n y ]}

4[]3[]2[]1[{25.0][-+-+-+-=n x n x n x n x n y

4.实验要求:

(1)给出理论计算结果和程序计算结果并讨论; (2)打印程序清单和要求的各信号波形。

实验3 系统响应及系统稳定性

1.实验目的

(1) 掌握求系统响应的方法。

(2)掌握时域离散系统的时域特性。

(3)分析、观察及检验系统的稳定性。

2.实验原理与方法

在时域中,描写系统特性的方法是差分方程和单位脉冲响应,在频域可以用系统函数描述系统特性。已知输入信号, 可以由差分方程、单位脉冲响应或系统函数求出系统对于该输入信号的响应,本实验仅在时域求解。在计算机上适合用递推法求差分方程的解,最简单的方法是采用MA TLAB语言的工具箱函数filter函数。也可以用MA TLAB语言的工具箱函数conv 函数计算输入信号和系统的单位脉冲响应的线性卷积,求出系统的响应。

系统的时域特性指的是系统的线性时不变性质、因果性和稳定性。重点分析实验系统的稳定性,包括观察系统的暂态响应和稳定响应。

系统的稳定性是指对任意有界的输入信号,系统都能得到有界的系统响应。或者系统的单位脉冲响应满足绝对可和的条件。系统的稳定性由其差分方程的系数决定。

实际中检查系统是否稳定,不可能检查系统对所有有界的输入信号,输出是否都是有界输出,或者检查系统的单位脉冲响应满足绝对可和的条件。可行的方法是在系统的输入端加入单位阶跃序列,如果系统的输出趋近一个常数(包括零),就可以断定系统是稳定的[19]。系统的稳态输出是指当n→∞时,系统的输出。如果系统稳定,信号加入系统后,系统输出的开始一段称为暂态效应,随n的加大,幅度趋于稳定,达到稳态输出。

注意在以下实验中均假设系统的初始状态为零。

3.实验内容及步骤

(1)编制程序,包括产生输入信号、单位脉冲响应序列的子程序,用filter函数或conv 函数求解系统输出响应的主程序。程序中要有绘制信号波形的功能。 (2)给定一个低通滤波器的差分方程为

y(n)=0.05x(n)+0.05x(n-1)+0.9y(n-1)

输入信号x1(n)=R8(n), x2(n)=u(n)

①分别求出x1(n)=R8(n)和x2(n)=u(n)的系统响应,并画出其波形。

②求出系统的单位脉冲响应,画出其波形。

(3)给定系统的单位脉冲响应为

h1(n)=R10(n)

h2(n)=δ(n)+2.5δ(n-1)+2.5δ(n-2)+ δ(n-3)

用线性卷积法求x1(n)=R8(n)分别对系统h1(n)和h2(n)的输出响应,并画出波形。

(4)给定一谐振器的差分方程为

y(n)=1.8237y(n-1)-0.9802y(n-2)+b0x(n)-b0x(n-2)

令b0=1/100.49,谐振器的谐振频率为0.4rad。

①用实验方法检查系统是否稳定。输入信号为u(n)时,画出系统输出波形。 ②给定输入信号为x(n)=sin(0.014n)+sin(0.4n)

求出系统的输出响应,并画出其波形。

4.思考题

(1)如果输入信号为无限长序列,系统的单位脉冲响应是有限长序列,可否用线性卷积法求系统的响应?如何求?

(2)如果信号经过低通滤波器,把信号的高频分量滤掉,时域信号会有何变化? 用前面第一个实验结果进行分析说明。

5.实验报告要求

(1)简述在时域求系统响应的方法。

(2)简述通过实验判断系统稳定性的方法。分析上面第三个实验的稳定输出的波形。

(3)对各实验所得结果进行简单分析和解释。

(4)简要回答思考题。

(5)打印程序清单和要求的各信号波形。

实验4 时域采样与频域采样

1.实验目的

时域采样理论与频域采样理论是数字信号处理中的重要理论。要求掌握模拟信号采样前后频谱的变化,以及如何选择采样频率才能使采样后的信号不丢失信息;要求掌握频率域采样会引起时域周期化的概念,以及频率域采样定理及其对频域采样点数选择的指导作用。

2.实验原理与方法

时域采样定理的要点是:

对模拟信号x a (t)以T 进行时域等间隔理想采样,形成的采样信号的频谱 会以采样角频率Ωs (Ωs=2π/T )为周期进行周期延拓。公式为

1

()[()]

()a a a

s

n X j F T x t X j j n T

=-∞

Ω==Ω-

Ω∑

② 采样频率s Ω必须大于等于模拟信号最高频率的两倍以上,才能使采样信号的频谱不产生频谱混叠。

利用计算机计算上式并不方便,下面我们导出另外一个公式,以便在计算机上进行实验。

理想采样信号 ()a x t 和模拟信号()a x t 之间的关系为 ()()()

a a

n x t x t t n T δ∞

=-∞=-∑ 对上式进行傅里叶变换,得到:

()[()

()]()()j t

j t

a a a n n X j x t t nT e

dt x t t nT e

dt

δδ∞

∞∞-Ω-Ω-∞

-∞

=-∞

=-∞

Ω=

-=

-∑

∑?

?

在上式的积分号内只有当t =nT 时,才有非零值,因此:

()()j nt

a a n X j x nT e

-Ω=-∞

Ω=

上式中,在数值上()()a x nT x n =,再将ω=ΩT 代入,得到:

()()

j n

a a n X j x n e ∞

-Ω=-∞

Ω=

上式的右边就是序列的傅里叶变换()j X e

ω

,即

()()

j a T

X j X e

ωω=ΩΩ=

上式说明采样信号的傅里叶变换可用相应序列的傅里叶变换得到,只要将自变量ω用ΩT 代替即可。

频域采样定理的要点是: ① 对信号x (n )的频谱函数()j X e

ω

在[0,2π]上等间隔采样N 点,得到:

2()()

j k N N

X k X e ω

πω=

= k=0,1,2,…,N -1

则N 点IDFT [X N (k)]得到的序列就是原序列x (n )以N 为周期进行周期延拓后的主值区序列,公式为

()[()][

()]N N N

N n x n I D F T X k x n

i N R

n

=-∞

==+∑ ② 由上式可知,频域采样点数N 必须大于等于时域离散信号的长度M (即N ≥M),才能使时域不产生混叠,则N 点[()]N ID FT X k 得到的序列()N x n 就是原序列x (n ),即()()N x n x n =。如果N>M ,()N x n 比原序列尾部多N -M 个零点;如果N

=发

生了时域混叠失真,而且()N x n 的长度N 也比x (n )的长度M 短,因此, ()N x n 与x (n )不相同。 在数字信号处理的应用中,只要涉及时域或者频域采样,都必须服从这两个采样理论的要点。

对比上面叙述的时域采样原理和频域采样原理,得到一个有用的结论: 这两个采样理论具有对偶性,即“时域采样频谱周期延拓,频域采样时域信号周期延拓”。因此,将它们放在一起进行实验。

3.实验内容及步骤

(1)时域采样理论的验证。给定模拟信号 0

()()()t

a x t A e

s i n t u t

α-=Ω 式中, A =444.128

,α=

,0Ω=rad/s ,它的幅频特性曲线如图1所示。 现用DFT(FFT)求该模拟信号的幅频特性,以验证时域采样理论。

按照()a x t 的幅频特性曲线,选取三种采样频率,即F s=1kHz ,300Hz ,200Hz 。观测时间选T p=64 ms 。

为使用DFT ,首先用下面的公式产生时域离散信号,对三种采样频率,采样序列按顺序

图1 x a (t )的幅频特性曲线

用123(),(),()x n x n x n 表示。

0()()()()

nT

a x n x nT Ae sin nT u nT α-==Ω 因为采样频率不同,得到的123(),(),()x n x n x n 的长度不同,长度(点数)用公式N =T p×F s 计算。选FFT 的变换点数为M=64,序列长度不够64的尾部加零。 X(k)=FFT[x(n)] , k =0,1,2,3,…,M -1 式中,k 代表的频率为 2k k M

πω=

要求:编写实验程序,计算123(),(),()x n x n x n 的幅度特性,并绘图显示。观察分析频谱混叠失真。

(2)频域采样理论的验证。给定信号如下:

n+1 0≤n≤13

x(n)= 27-n 14≤n≤26

0 其它

编写程序分别对频谱函数()j X e ω=FT [x(n)]在区间[0,2π]上等间隔采样32点和16点,得到32()X k 和16()X k : 23232

()()j k

X k X e ωπω=

= k=0,1,2,…,31 21616

()()

j k

X k X e ωπω=

= k=0,1,2,…,15

再分别对32()X k 和16()X k 进行32点和16点IFFT ,得到32()x n 和16()x n :

32323()[()]x n I F F T X k = n=0,1,2,…,31 16161()[()]x n I F F T X k = n=0,1,2,…,15

分别画出()j X e

ω

、32()X k 和16()X k 的幅度谱,并绘图显示x (n )、32()x n 和16()x n 的波形,

进行对比和分析,验证总结频域采样理论。 提示:频域采样用以下方法容易编程实现。

(1)直接调用MA TLAB 函数fft 计算3232()[()]X k FFT x n =就得到()j X e ω在[0,2π]的32

点频率域采样32()X k 。

(2)抽取32()X k 的偶数点即可得到()j X e ω在[0,2π]的16点频率域采样16()X k ,即

1632()(2)X k X k = k =0, 1, 2, …, 15。

(3)当然,也可以按照频域采样理论,先将信号x (n )以16为周期进行周期延拓,取其主值区(16点),再对其进行16点DFT(FFT),得到的就是()j X e ω在[0,2π]的16点频率域采样16()X k 。 4.思考题

如果序列x (n )的长度为M ,希望得到其频谱()j X e ω在[0,2π]上的N 点等间隔采样,当N

(1) 运行程序,打印要求显示的图形。

(2) 分析比较实验结果,简述由实验得到的主要结论。 (3) 简要回答思考题。

(4) 附上程序清单和有关曲线。

实验5 离散系统的频率响应分析和零、极点分布

1.实验目的:加深对离散系统的频率响应分析和零、极点分布的概念理解。

2.实验原理:

离散系统的时域方程为

==-=

-M

k k N

k k k n x p k n y d 0

)()(

其变换域分析方法如下: 频域 )()()(][][][][][ω

ω

ω

j j j m e

H e

X e

Y m n h m x n h n x n y =?-=

*=∑∞

-∞

=

系统的频率响应为 ω

ω

ω

ωω

ωωjN N j jM M j j j j e

d e

d d

e p e p p e

D e

p e H ----++++++=

=......)

()()(1010

Z 域 )()()(][][][][][z H z X z Y m n h m x n h n x n y m =

?-=

*=∑∞

-∞

=

系统的转移函数为 N

N M M z

d z

d d z p z p p z D z p z H ----++++++=

=

......)

()()(1

10110

分解因式

∏-∏-=∑∑=

=-=-=-=-N

i i M

i i N

i i k M

i i

k z

z K

z

d z p z H 11

11

)

1()1()(λξ ,其中i ξ和i λ称为零、极点。

在MA TLAB 中,可以用函数[z ,p ,K]=tf2zp (num ,den )求得有理分式形式的系统转移函数的零、极点,用函数zplane (z ,p )绘出零、极点分布图;也可以用函数zplane (num ,den )直接绘出有理分式形式的系统转移函数的零、极点分布图。

另外,在MA TLAB 中,可以用函数 [r ,p ,k]=residuez (num ,den )完成部分分式展开计算;可以用函数sos=zp2sos (z ,p ,K )完成将高阶系统分解为2阶系统的串联。 3.实验内容:求系统

5

4

3

2

1

5

4

3

2

1

2336.09537.08801.14947.28107.110528.0797.01295.01295.00797.00528.0)(-----------+-+-+++++=

z

z z z z

z

z

z

z

z z H 的零、极点和幅度频率响应。

4.实验报告及要求:

(1) 编程实现系统参数输入,绘出幅度频率响应曲线和零、极点分布图。 (2) 附上程序清单和有关图形。

实验6 FFT 算法的应用

1.实验目的

(1)学习用FFT 对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便正确应用FFT 。

(2)加深对离散信号的DFT 的理解及其FFT 算法的运用。

2.实验原理

N 点序列的DFT 和IDFT 变换定义式如下:

1

[][]N kn N

n X k x n W

-==

, 1

1[][]N kn

N

k x n X k W N

--==

利用旋转因子2j

nk

kn

N

N

W

e

π-=具有周期性,可以得到快速算法(FFT )。

在MA TLAB 中,可以用函数X=fft (x ,N )和x=ifft (X ,N )计算N 点序列的DFT 正、反变换。

用FFT 对信号作频谱分析是学习数字信号处理的重要内容。经常需要进行谱分析的信

号是模拟信号和时域离散信号。对信号进行谱分析的重要问题是频谱分辨率D 和分析误差。频谱分辨率直接和FFT 的变换区间N 有关,因为FFT 能够实现的频率分辨率是2π/N , 因此要求2π/N ≤D 。可以根据此式选择FFT 的变换区间N 。误差主要来自于用FFT 作频谱分析时,得到的是离散谱,而信号(周期信号除外)是连续谱,只有当N 较大时, 离散谱的包络才能逼近于连续谱,因此N 要适当选择大一些。

周期信号的频谱是离散谱,只有用整数倍周期的长度作FFT ,得到的离散谱才能代表周期信号的频谱。如果不知道信号周期,可以尽量选择信号的观察时间长一些。

对模拟信号进行谱分析时,首先要按照采样定理将其变成时域离散信号。如果是模拟周期信号,也应该选取整数倍周期的长度,经过采样后形成周期序列,按照周期序列的谱分析进行 3.实验步骤及内容 (1)2N 点实数序列

??

?

??

?????-=+=n N n n N

n N n x 其它,012,...,2,1,0),192cos(21)72cos()(ππ

N=64。用一个64点的复数FFT 程序,一次算出N n x DFT k X 2)]([)(=,并绘出)(k X 。 (2)已知某序列)(n x 在单位圆上的

N=64

等分样点的

Z 变换为

63

,...,2,1,0,8.011

)()(/2=-=

=-k e

k X z X N

k j k π用N 点IFFT 程序计算

)]([)(_

k X IDFT n x =,绘出和)(_

n x 。

(3)对以下序列进行谱分析: x 1(n)=R 4(n) n+1 0≤n≤3 x 2(n) = 8-n 4≤n≤7

0 其它

4-n 0≤n≤3 x 3(n) = n-3 4≤n≤7 0 其它

选择FFT 的变换区间N 为8和16 两种情况进行频谱分析。分别打印其幅频特性曲线,并进行对比、分析和讨论。 (4)对以下周期序列进行谱分析: 4()c o s 4

x n n π

=

5()c o s c o s 4

8

x n n n π

π

=+

选择FFT 的变换区间N 为8和16两种情况分别对以上序列进行频谱分析。分别打印其幅频特性曲线,并进行对比、分析和讨论。 (5)对模拟周期信号进行谱分析: ()c o s 8c o s 16

c o s x t t t t

πππ=+

+ 选择采样频率F s=64Hz ,对变换区间N =16,32,64三种情况进行谱分析。分别打印其幅频特性,并进行分析和讨论。 4.思考题

(1)对于周期序列,如果周期不知道,如何用FFT 进行谱分析? (2)如何选择FFT 的变换区间?(包括非周期信号和周期信号) (3)当N =8时,x 2(n )和x 3(n )的幅频特性会相同吗?为什么?N =16 呢? 5.实验报告要求

(1)利用MA TLAB 编程完成计算,绘出相应图形。并与理论计算相比较,说明实验结果的原因;

(2)简要回答思考题;

(3)完成各个实验任务和要求,附上程序清单和有关曲线。

实验7 IIR 数字滤波器设计及软件实现

1. 实验目的

(1) 熟悉用双线性变换法设计IIR 数字滤波器的原理与方法。

(2) 学会调用MA TLAB 信号处理工具箱中滤波器设计函数(或滤波器设计分析工具FDA Tool )设计各种IIR 数字滤波器,学会根据滤波需求确定滤波器指标参数。

(3) 掌握IIR 数字滤波器的MA TLAB 实现方法。

(4) 通过观察滤波器输入、输出信号的时域波形及其频谱,建立数字滤波的概念。 2. 实验原理

设计IIR 数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。基本设计过程是:

将给定的数字滤波器的指标转换成过渡模拟滤波器的指标; 设计过渡模拟滤波器;

将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。

MA TLAB 信号处理工具箱中的各种IIR 数字滤波器设计函数都是采用双线性变换法。滤波器设计函数butter 、cheby1 、cheby2 和ellip 可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2以及椭圆模拟与数字滤波器。本实验要求调用如上函数直接设计IIR 数字滤波器。本实验的数字滤波器的MA TLAB 实现是指调用MA TLAB 信号处理工具箱函数 filter 对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n )。 3. 实验内容及步骤

(1) 调用信号产生函数mstg 产生由三路抑制载波调幅信号相加构成的复合信号st ,该函数还会自动绘图显示st 的时域波形和幅频特性曲线,如图8.1所示。由图可见,三路信号时域混叠无法在时域分离。但频域是分离的,所以可以通过滤波器在频域分离,这就是本实验的原理。

0.002

0.004

0.006

0.008

0.010.0120.014

0.016

0.018

0.02

-1012

3t/s

s (t )

(a) s(t)的波形

(b) s(t)的频谱

f(Hz)

幅度

(2)要求将st 中三路调幅信号分离,通过观察st 的幅频特性曲线,分别确定可以分离st 中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。要求滤波器的通带最大衰减为0.1 dB, 阻带最小衰减为60 dB 。 提示: 抑制载波单频调幅信号的数学表示式为

图8.1 三路调幅信号st(即s(t))的时域波形和幅频特性曲线

0001()cos(2)cos(2)[cos(2())cos(2())]2

c c c s t f t f t f f t f f t ππππ==

-++

其中, cos(2πf c t )称为载波,f c 为载波频率,cos(2πf 0t )称为单频调制信号,f 0为调制正弦波信号频率,且满足f c >f 0。由式可见,所谓抑制载波单频调幅信号,就是两个正弦信号相乘,它有2个频率成分:和频f c +f 0、差频f c -f 0,这两个频率成分关于载波频率f c 对称。所以,1路抑制载波单频调幅信号的频谱图是关于载波频率f c 对称的两根谱线。容易看出,图8.1中三路调幅信号的载波频率分别为250 Hz 、500 Hz 、1000 Hz 。有关调幅(AM)和抑制载波调幅(SCAM)的一般原理与概念,请参考通信原理教材。

(3) 编程序调用MA TLAB 滤波器设计函数ellipord 和ellip 分别设计这三个椭圆滤波器,并绘图显示其损耗函数曲线。

(4)调用滤波器实现函数filter ,用三个滤波器分别对信号产生函数mstg 产生的信号st 进行滤波,分离出st 中的三路不同载波频率的调幅信号y1(n)、y2(n)和y3(n),并绘图显示y1(n)、y2(n)和y3(n)的时域波形,观察分离效果 4. 信号产生函数mstg 清单 function st=mstg

%产生信号序列向量st, 并显示st 的时域波形和频谱

%st=mstg 返回三路调幅信号相加形成的混合信号,长度N=800 N=800 %N 为信号st 的长度

Fs=10000;T=1/Fs;Tp=N*T; %采样频率Fs=10 kHz ,Tp 为采样时间 t=0:T:(N -1)*T;k=0:N -1;f=k/Tp;

fc1=Fs/10; %第1路调幅信号的载波频率fc1=1000 Hz fm1=fc1/10; %第1路调幅信号的调制信号频率fm1=100 Hz fc2=Fs/20; %第2路调幅信号的载波频率fc2=500 Hz fm2=fc2/10; %第2路调幅信号的调制信号频率fm2=50 Hz fc3=Fs/40; %第3路调幅信号的载波频率fc3=250 Hz fm3=fc3/10; %第3路调幅信号的调制信号频率fm3=25 Hz xt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t);%产生第1路调幅信号 xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t); %产生第2路调幅信号 xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t); %产生第3路调幅信号 st=xt1+xt2+xt3; %三路调幅信号相加 fxt=fft(st, N); %计算信号st 的频谱

%= = = =以下为绘图部分,绘制st 的时域波形和幅频特性曲线= = = = = = subplot(3, 1, 1)

plot(t, st);grid;xlabel('t/s');ylabel('s(t)');

axis([0, Tp/8, min(st), max(st)]);title('(a) s(t)的波形')

subplot(3, 1, 2)

stem(f, abs(fxt)/max(abs(fxt)), '.');grid;title('(b) s(t)的频谱') axis([0, Fs/5, 0, 1.2]); xlabel('f/Hz');ylabel('幅度') 5. 实验程序框图

实验程序框图如图8.2所示:

图8.2 程序框图 6. 思考题

(1) 请阅读信号产生函数mstg ,确定三路调幅信号的载波频率和调制信号频率。 (2) 信号产生函数mstg 中采样点数N=1600,对st 进行N 点FFT 可以得到6根理想谱线。如果取N=1800,可否得到6根理想谱线?为什么?N=2000呢?请改变函数mstg 中采样点数N 的值,观察频谱图验证您的判断是否正确。

(3) 修改信号产生函数mstg ,给每路调幅信号加入载波成分,产生调幅(AM )信号,重复本实验,观察AM 信号与抑制载波调幅信号的时域波形及其频谱的差别。 提示: AM 信号表示式:

()[c o s (2)]c o s (2)

d

m c d

m s t A A f t f t A A ππ=+≥ 7. 实验报告要求

(1) 简述实验目的及原理, 画出实验主程序框图,打印程序清单。 (2) 绘制三个分离滤波器的损耗函数曲线。

(3) 绘制经过滤波分理出的三路调幅信号的时域波形。

(4) 简要回答思考题。

实验8 FIR 数字滤波器设计与软件实现

1. 实验目的

(1) 掌握用窗函数法设计FIR 数字滤波器的原理和方法。

(2) 掌握用等波纹最佳逼近法设计FIR 数字滤波器的原理和方法。 (3) 掌握FIR 滤波器的快速卷积实现原理。

(4) 学会调用MA TLAB 函数设计与实现FIR 滤波器。 2. 实验内容及步骤

(1) 认真复习教材第7章中用窗函数法和等波纹最佳逼近法设计FIR 数字滤波器的原理;

(2) 调用信号产生函数xtg 产生具有加性噪声的信号xt ,并自动显示xt 及其频谱,如图9.1所示。

0.05

0.1

0.15

0.20.250.3

0.35

0.4

-10-505

10t/s

x (t )

(a) 信号加噪声波形

50100150200

250300350400450500

(b) 信号加噪声的频谱f/Hz

幅度

图9.1 具有加性噪声的信号xt 及其频谱图

(3)请设计低通滤波器,从高频噪声中提取xt中的单频调幅信号,要求信号幅频失真小于0.1 dB,将噪声频谱衰减60 dB。观察xt的频谱,确定滤波器指标参数。

(4)根据滤波器指标选择合适的窗函数,计算窗函数的长度N,调用MA TLAB函数fir1设计一个FIR低通滤波器。并编写程序,调用MA TLAB快速卷积函数fftfilt实现对xt的滤波。绘图显示滤波器的频响特性曲线、滤波器输出信号的幅频特性图和时域波形图。

(5)重复(3),滤波器指标不变,但改用等波纹最佳逼近法,调用MA TLAB函数remezord 和remez设计FIR数字滤波器。比较两种设计方法设计的滤波器阶数。

提示:

① MA TLAB函数fir1和fftfilt的功能及其调用格式请查阅附录;

采样频率Fs=1000 Hz,采样周期T=1/Fs;

根据图9.1(b)和实验要求,选择滤波器指标参数:通带截止频率fp=120 Hz,阻带截止频率fs=150 Hz,换算成数字频率,通带截止频率ωp=2πfpT=0.24π,通带最大衰减0.1 dB,阻带截至频率ωs=2πfsT=0.3π,阻带最小衰减为60 dB。

3. 实验程序框图

实验程序框图如图9.2所示:

图9.2 程序框图

4. 思考题

(1) 如果给定通带截止频率和阻带截止频率以及阻带最小衰减, 如何用窗函数法设计线性相位低通滤波器? 请写出设计步骤。

(2) 如果要求用窗函数法设计带通滤波器, 且给定通带上、下截止频率为ωpl和ωpu,

阻带上、下截止频率为ωsl和ωsu,试求理想带通滤波器的截止频率ωcl 和ωcu。

(3)解释为什么对同样的技术指标,用等波纹最佳逼近法设计的滤波器阶数低。

5. 实验报告要求

(1)对两种设计FIR滤波器的方法(窗函数法和等波纹最佳逼近法)进行分析比较,简述其优缺点。

(2)附程序清单, 打印实验内容要求绘图显示的曲线图。

(3)分析总结实验结果。

(4)简要回答思考题。

6.信号产生函数xtg程序清单

function xt=xtg

%信号x(t)产生函数, 并显示信号的幅频特性曲线

%xt=xtg 产生一个长度为N, 有加性高频噪声的单频调幅信号xt, N=1000,

%采样频率Fs=1000 Hz

%载波频率fc=Fs/10=100Hz, 调制正弦波频率f0=fc/10=10 Hz.

N=1000; Fs=1000; T=1/Fs; Tp=N*T;

t=0:T:(N-1)*T;

fc=Fs/10; f0=fc/10; %载波频率fc=Fs/10,单频调制信号频率为f0=Fc/10

mt=cos(2*pi*f0*t); %产生单频正弦波调制信号mt,频率为f0

ct=cos(2*pi*fc*t); %产生载波正弦波信号ct,频率为fc

xt=mt.*ct; %相乘产生单频调制信号xt

nt=2*rand(1, N)-1; %产生随机噪声nt

% 设计高通滤波器hn, 用于滤除噪声nt中的低频成分, 生成高通噪声= =

fp=150; fs=200; Rp=0.1;As=70; %滤波器指标

fb=[fp, fs]; m=[0, 1]; % 计算remezord函数所需参数f, m, dev

dev=[10^(-As/20), (10^(Rp/20)-1)/(10^(Rp/20)+1)];

[n, fo, mo, W]=remezord(fb, m, dev, Fs); % 确定remez函数所需参数

hn=remez(n, fo, mo, W); %调用remez函数进行设计, 用于滤除噪声nt中的低频成分

yt=filter(hn, 1, 10*nt); %滤除随机噪声中低频成分,生成高通噪声yt

%= = = = = = = = = = = 以下为绘图部分= = = = = = = = = = = = = = = = =

xt=xt+yt; %噪声加信号

fst=fft(xt, N); k=0:N-1;f=k/Tp;

subplot(3, 1, 1); plot(t, xt);grid;xlabel(′t/s′); ylabel(′x(t)′);

axis([0, Tp/5, min(xt), max(xt)]);title(′(a) 信号加噪声波形′) subplot(3, 1, 2);

plot(f, abs(fst)/max(abs(fst)));grid;title(′(b) 信号加噪声的频谱′) axis([0, Fs/2, 0, 1.2]); xlabel(′f/Hz′); ylabel(′幅度′)

数字信号处理实验报告

实验一MATLAB语言的基本使用方法 实验类别:基础性实验 实验目的: (1)了解MATLAB程序设计语言的基本方法,熟悉MATLAB软件运行环境。 (2)掌握创建、保存、打开m文件的方法,掌握设置文件路径的方法。 (3)掌握变量、函数等有关概念,具备初步的将一般数学问题转化为对应计算机模型并进行处理的能力。 (4)掌握二维平面图形的绘制方法,能够使用这些方法进行常用的数据可视化处理。 实验内容和步骤: 1、打开MATLAB,熟悉MATLAB环境。 2、在命令窗口中分别产生3*3全零矩阵,单位矩阵,全1矩阵。 3、学习m文件的建立、保存、打开、运行方法。 4、设有一模拟信号f(t)=1.5sin60πt,取?t=0.001,n=0,1,2,…,N-1进行抽样,得到 序列f(n),编写一个m文件sy1_1.m,分别用stem,plot,subplot等命令绘制32 点序列f(n)(N=32)的图形,给图形加入标注,图注,图例。 5、学习如何利用MATLAB帮助信息。 实验结果及分析: 1)全零矩阵 >> A=zeros(3,3) A = 0 0 0 0 0 0 0 0 0 2)单位矩阵 >> B=eye(3) B = 1 0 0 0 1 0 0 0 1 3)全1矩阵 >> C=ones(3) C = 1 1 1 1 1 1 1 1 1 4)sy1_1.m N=32; n=0:N-1; dt=0.001; t=n*dt; y=1.5*sin(60*pi*t); subplot(2,1,1), plot(t,y); xlabel('t'); ylabel('y=1.5*sin(60*pi*t)'); legend('正弦函数'); title('二维图形'); subplot(2,1,2), stem(t,y) xlabel('t'); ylabel('y=1.5*sin(60*pi*t)'); legend('序列函数'); title('条状图形'); 00.0050.010.0150.020.0250.030.035 t y = 1 . 5 * s i n ( 6 * p i * t ) 二维图形 00.0050.010.0150.020.0250.030.035 t y = 1 . 5 * s i n ( 6 * p i * t ) 条状图形

数字信号处理基础实验指导书

《数字信号处理》实验指导书 光电工程学院二○○九年十月

实验一离散时间信号分析 一、实验目的 1.掌握各种常用的序列,理解其数学表达式和波形表示。 2.掌握在计算机中生成及绘制数字信号波形的方法。 3.掌握序列的相加、相乘、移位、反转等基本运算及计算机实现与作用。 4.掌握线性卷积软件实现的方法。 5.掌握计算机的使用方法和常用系统软件及应用软件的使用。 6.通过编程,上机调试程序,进一步增强使用计算机解决问题的能力。 二、实验原理 1.序列的基本概念 离散时间信号在数学上可用时间序列来表示,其中代表序列的第n个数字,n代表时间的序列,n的取值范围为的整数,n取其它值没有意义。离散时间信号可以是由模拟信号通过采样得到,例如对模拟信号进行等间隔采样,采样间隔为T,得到一个有序的数字序列就是离散时间信号,简称序列。 2.常用序列 常用序列有:单位脉冲序列(单位抽样)、单位阶跃序列、矩形序列、实指数序列、复指数序列、正弦型序列等。 3.序列的基本运算 序列的运算包括移位、反转、和、积、标乘、累加、差分运算等。 4.序列的卷积运算 上式的运算关系称为卷积运算,式中代表两个序列卷积运算。两个序列的卷积是一个序列与另一个序列反褶后逐次移位乘积之和,故称为离散卷积,也称两序列的线性卷积。其计算的过程包括以下4个步骤。 (1)反褶:先将和的变量换成,变成和,再将以纵轴为对称轴反褶成。 (2)移位:将移位,得。当为正数时,右移位;当为负数时,左

移位。 (3)相乘:将和的对应点值相乘。 (4)求和:将以上所有对应点的乘积累加起来,即得。 三、主要实验仪器及材料 微型计算机、Matlab软件6.5或更高版本。 四、实验内容 1.知识准备 认真复习以上基础理论,理解本实验所用到的实验原理。 2.离散时间信号(序列)的产生 利用MATLAB或C语言编程产生和绘制下列有限长序列: (1)单位脉冲序列 (2)单位阶跃序列 (3)矩形序列 (4)正弦型序列 (5)任意序列 3.序列的运算 利用MATLAB编程完成上述两序列的移位、反转、加法、乘法等运算,并绘制运算后序列的波形。 4.卷积运算 利用MATLAB编制一个计算两个序列线性卷积的通用程序,计算上述两序列,并绘制卷积后序列的波形。 5.上机调试并打印或记录实验结果。 6.完成实验报告。 五、实验报告要求 1. 简述实验原理及目的。 2. 给出上述序列的实验结果。 3. 列出计算卷积的公式,画出程序框图,并列出实验程序清单 (可略)(包括必要的程序说明)。 4. 记录调试运行情况及所遇问题的解决方法。 5. 给出实验结果,并对结果做出分析。 6. 简要回答思考题。 1 如何产生方波信号序列和锯齿波信号序列? 2 实验中所产生的正弦序列的频率是多少?是否是周期序列?

数字信号处理实验(吴镇扬)答案-2

(1) 观察高斯序列的时域和幅频特性,固定信号)(n x a 中参数p=8,改变q 的 值,使q 分别等于2、4、8,观察他们的时域和幅频特性,了解当q 取不同值时,对信号序列的时域和幅频特性的影响;固定q=8,改变p,使p 分别等于8、13、14,观察参数p 变化对信号序列的时域和幅频特性的影响,注意p 等于多少时会发生明显的泄漏现象,混叠是否也随之出现?记录实验中观察到的现象,绘出相应的时域序列和幅频特性曲线。 ()() ?????≤≤=-其他0150,2n e n x q p n a 解:程序见附录程序一: P=8,q 变化时: t/T x a (n ) k X a (k ) t/T x a (n ) p=8 q=4 k X a (k ) p=8 q=4 t/T x a (n ) p=8 q=8 k X a (k ) p=8 q=8 幅频特性 时域特性

t/T x a (n ) p=8 q=8 k X a (k ) p=8 q=8 t/T x a (n ) 5 10 15 k X a (k ) p=13 q=8 t/T x a (n ) p=14 q=8 5 10 15 k X a (k ) p=14 q=8 时域特性幅频特性 分析: 由高斯序列表达式知n=p 为期对称轴; 当p 取固定值时,时域图都关于n=8对称截取长度为周期的整数倍,没有发生明显的泄漏现象;但存在混叠,当q 由2增加至8过程中,时域图形变化越来越平缓,中间包络越来越大,可能函数周期开始增加,频率降低,渐渐小于fs/2,混叠减弱; 当q 值固定不变,p 变化时,时域对称中轴右移,截取的时域长度渐渐地不再是周期的整数倍,开始无法代表一个周期,泄漏现象也来越明显,因而图形越来越偏离真实值, p=14时的泄漏现象最为明显,混叠可能也随之出现;

数字信号处理实验一

实验一 离散时间信号分析 班级 信息131班 学号 201312030103 姓名 陈娇 日期 一、实验目的 掌握两个序列的相加、相乘、移位、反褶、卷积等基本运算。 二、实验原理 1.序列的基本概念 离散时间信号在数学上可用时间序列)}({n x 来表示,其中)(n x 代表序列的第n 个数字,n 代表时间的序列,n 的取值范围为+∞<<∞-n 的整数,n 取其它值)(n x 没有意义。离散时间信号可以是由模拟信号通过采样得到,例如对模拟信号)(t x a 进行等间隔采样,采样间隔为T ,得到)}({nT x a 一个有序的数字序列就是离散时间信号,简称序列。 2.常用序列 常用序列有:单位脉冲序列(单位抽样)) (n δ、单位阶跃序列)(n u 、矩形序列)(n R N 、实指数序列、复指数序列、正弦型序列等。 3.序列的基本运算 序列的运算包括移位、反褶、和、积、标乘、累加、差分运算等。 4.序列的卷积运算 ∑∞ -∞==-= m n h n x m n h m x n y )(*)()()()( 上式的运算关系称为卷积运算,式中代表两个序列卷积运算。两个序列的卷积是一个序列与另一个序列反褶后逐次移位乘积之和,故称为离散卷积,也称两序列的线性卷积。其计算的过程包括以下4个步骤。 (1)反褶:先将)(n x 和)(n h 的变量n 换成m ,变成)(m x 和)(m h ,再将)(m h 以纵轴为对称轴反褶成)(m h -。

(2)移位:将)(m h -移位n ,得)(m n h -。当n 为正数时,右移n 位;当n 为负数时,左移n 位。 (3)相乘:将)(m n h -和)(m x 的对应点值相乘。 (4)求和:将以上所有对应点的乘积累加起来,即得)(n y 。 三、主要实验仪器及材料 微型计算机、Matlab6.5 教学版、TC 编程环境。 四、实验内容 (1)用Matlab 或C 语言编制两个序列的相加、相乘、移位、反褶、卷积等的程序; (2)画出两个序列运算以后的图形; (3)对结果进行分析; (4)完成实验报告。 五、实验结果 六、实验总结

数字信号处理实验作业

实验6 数字滤波器的网络结构 一、实验目的: 1、加深对数字滤波器分类与结构的了解。 2、明确数字滤波器的基本结构及其相互间的转换方法。 3、掌握用MA TLAB 语言进行数字滤波器结构间相互转换的子函数及程序编写方法。 二、实验原理: 1、数字滤波器的分类 离散LSI 系统对信号的响应过程实际上就是对信号进行滤波的过程。因此,离散LSI 系统又称为数字滤波器。 数字滤波器从滤波功能上可以分为低通、高通、带通、带阻以及全通滤波器;根据单位脉冲响应的特性,又可以分为有限长单位脉冲响应滤波器(FIR )和无限长单位脉冲响应滤波器(IIR )。 一个离散LSI 系统可以用系统函数来表示: M -m -1-2-m m m=0 012m N -1-2-k -k 12k k k=1 b z b +b z +b z ++b z Y(z)b(z)H(z)=== =X(z)a(z) 1+a z +a z ++a z 1+a z ∑∑ 也可以用差分方程来表示: N M k m k=1 m=0 y(n)+a y(n-k)=b x(n-m)∑∑ 以上两个公式中,当a k 至少有一个不为0时,则在有限Z 平面上存在极点,表达的是以一个IIR 数字滤波器;当a k 全都为0时,系统不存在极点,表达的是一个FIR 数字滤波器。FIR 数字滤波器可以看成是IIR 数字滤波器的a k 全都为0时的一个特例。 IIR 数字滤波器的基本结构分为直接Ⅰ型、直接Ⅱ型、直接Ⅲ型、级联型和并联型。 FIR 数字滤波器的基本结构分为横截型(又称直接型或卷积型)、级联型、线性相位型及频率采样型等。本实验对线性相位型及频率采样型不做讨论,见实验10、12。 另外,滤波器的一种新型结构——格型结构也逐步投入应用,有全零点FIR 系统格型结构、全极点IIR 系统格型结构以及全零极点IIR 系统格型结构。 2、IIR 数字滤波器的基本结构与实现 (1)直接型与级联型、并联型的转换 例6-1 已知一个系统的传递函数为 -1-2-3 -1-2-3 8-4z +11z -2z H(z)=1-1.25z +0.75z -0.125z 将其从直接型(其信号流图如图6-1所示)转换为级联型和并联型。

数字信号处理实验报告(实验1_4)

实验一 MATLAB 仿真软件的基本操作命令和使用方法 实验容 1、帮助命令 使用 help 命令,查找 sqrt (开方)函数的使用方法; 2、MATLAB 命令窗口 (1)在MATLAB 命令窗口直接输入命令行计算3 1)5.0sin(21+=πy 的值; (2)求多项式 p(x) = x3 + 2x+ 4的根; 3、矩阵运算 (1)矩阵的乘法 已知 A=[1 2;3 4], B=[5 5;7 8],求 A^2*B

(2)矩阵的行列式 已知A=[1 2 3;4 5 6;7 8 9],求A (3)矩阵的转置及共轭转置 已知A=[1 2 3;4 5 6;7 8 9],求A' 已知B=[5+i,2-i,1;6*i,4,9-i], 求B.' , B' (4)特征值、特征向量、特征多项式 已知A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4] ,求矩阵A的特征值、特征向量、特征多项式;

(5)使用冒号选出指定元素 已知:A=[1 2 3;4 5 6;7 8 9];求A 中第3 列前2 个元素;A 中所有列第2,3 行的元素; 4、Matlab 基本编程方法 (1)编写命令文件:计算1+2+…+n<2000 时的最大n 值;

(2)编写函数文件:分别用for 和while 循环结构编写程序,求 2 的0 到15 次幂的和。

5、MATLAB基本绘图命令 (1)绘制余弦曲线 y=cos(t),t∈[0,2π]

(2)在同一坐标系中绘制余弦曲线 y=cos(t-0.25)和正弦曲线 y=sin(t-0.5), t∈[0,2π] (3)绘制[0,4π]区间上的 x1=10sint 曲线,并要求: (a)线形为点划线、颜色为红色、数据点标记为加号; (b)坐标轴控制:显示围、刻度线、比例、网络线 (c)标注控制:坐标轴名称、标题、相应文本; >> clear;

数字信号处理实验

实验一 离散傅里叶变换(DFT )对确定信号进行谱分析 一.实验目的 1.加深对DFT 算法原理和基本性质的理解。 2.熟悉DFT 算法和原理的编程方法。 3.学习用DFT 对信号进行谱分析的方法,了解可能出现的误差及其原因,以便在实际中正确利用。 二.实验原理 一个连续信号)(t x a 的频谱可以用其傅里叶变换表示,即 dt e t x j X t j a a Ω-∞ ∞ -? = Ω)()( 若对)(t x a 进行理想采样可得采样序列 )(|)()(nT x t x n x a nT t a === 对)(n x 进行DTFT ,可得其频谱为: ∑∞ -∞ =-= n n j j e n x e X ωω )()( 其中数字频率ω与模拟频率Ω的关系为: s f T Ω = Ω=ω )(n x 的DFT 为∑∞ -∞ =-= n nk N j e n x k X π 2)()( 若)(t x a 是限带信号,且在满足采样定理的条件下,)(ω j e X 是)(Ωj X a 的周期延拓, )(k X 是)(ωj e X 在单位圆上的等间隔采样值,即k N j e X k X πωω2| )()(= =。 为在计算机上分析计算方便,常用)(k X 来近似)(ω j e X ,这样对于长度为N 的有限 长序列(无限长序列也可用有限长序列来逼近),便可通过DFT 求其离散频谱。 三.实验内容 1.用DFT 对下列序列进行谱分析。 (1))()04.0sin(3)(100n R n n x π=

1 (2)]0,0,0,0,0,0,0,0,1,1,1,1[)(=n x 2.为了说明高密度频谱和高分辨率频谱之间的区别,考察序列 )52.0cos()48.0cos()(n n n x ππ+= (1)当0≤n ≤10时,确定并画出x(n)的离散傅里叶变换。 (2)当0≤n ≤100时,确定并画出x(n)的离散傅里叶变换。 四.实验结果 1. (1) (2)

数字信号处理实验报告一

武汉工程大学 数字信号处理实验报告 姓名:周权 学号:1204140228 班级:通信工程02

一、实验设备 计算机,MATLAB语言环境。 二、实验基础理论 1.序列的相关概念 2.常见序列 3.序列的基本运算 4.离散傅里叶变换的相关概念 5.Z变换的相关概念 三、实验内容与步骤 1.离散时间信号(序列)的产生 利用MATLAB语言编程产生和绘制单位样值信号、单位阶跃序列、指数序列、正弦序列及随机离散信号的波形表示。 四实验目的 认识常用的各种信号,理解其数字表达式和波形表示,掌握在计算机中生成及绘制数字信号波形的方法,掌握序列的简单运算及计算机实现与作用,理解离散时间傅里叶变换,Z变换及它们的性质和信号的频域分

实验一离散时间信号(序列)的产生 代码一 单位样值 x=2; y=1; stem(x,y); title('单位样值 ') 单位阶跃序列 n0=0; n1=-10; n2=10; n=[n1:n2]; x=[(n-n0)>=0]; stem(n,x); xlabel('n'); ylabel('x{n}'); title('单位阶跃序列');

实指数序列 n=[0:10]; x=(0.5).^n; stem(n,x); xlabel('n'); ylabel('x{n}'); title('实指数序列');

正弦序列 n=[-100:100]; x=2*sin(0.05*pi*n); stem(n,x); xlabel('n'); ylabel('x{n}'); title('正弦序列');

随机序列 n=[1:10]; x=rand(1,10); subplot(221); stem(n,x); xlabel('n'); ylabel('x{n}'); title('随机序列');

数字信号处理实验答案完整版

数字信号处理实验答案 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

实验一熟悉Matlab环境 一、实验目的 1.熟悉MATLAB的主要操作命令。 2.学会简单的矩阵输入和数据读写。 3.掌握简单的绘图命令。 4.用MATLAB编程并学会创建函数。 5.观察离散系统的频率响应。 二、实验内容 认真阅读本章附录,在MATLAB环境下重新做一遍附录中的例子,体会各条命令的含义。在熟悉了MATLAB基本命令的基础上,完成以下实验。 上机实验内容: (1)数组的加、减、乘、除和乘方运算。输入A=[1 2 3 4],B=[3 4 5 6],求C=A+B,D=A-B,E=A.*B,F=A./B,G=A.^B并用stem语句画出A、B、C、D、E、F、G。 clear all; a=[1 2 3 4]; b=[3 4 5 6]; c=a+b; d=a-b; e=a.*b; f=a./b; g=a.^b; n=1:4; subplot(4,2,1);stem(n,a); xlabel('n');xlim([0 5]);ylabel('A'); subplot(4,2,2);stem(n,b); xlabel('n');xlim([0 5]);ylabel('B'); subplot(4,2,3);stem(n,c); xlabel('n');xlim([0 5]);ylabel('C'); subplot(4,2,4);stem(n,d); xlabel('n');xlim([0 5]);ylabel('D'); subplot(4,2,5);stem(n,e); xlabel('n');xlim([0 5]);ylabel('E'); subplot(4,2,6);stem(n,f); xlabel('n');xlim([0 5]);ylabel('F'); subplot(4,2,7);stem(n,g); xlabel('n');xlim([0 5]);ylabel('G'); (2)用MATLAB实现下列序列: a) x(n)= 0≤n≤15 b) x(n)=e+3j)n 0≤n≤15 c) x(n)=3cosπn+π)+2sinπn+π) 0≤n≤15 d) 将c)中的x(n)扩展为以16为周期的函数x(n)=x(n+16),绘出四个周期。

数字信号处理实验(吴镇扬)答案-4

实验四 有限长单位脉冲响应滤波器设计 朱方方 0806020433 通信四班 (1) 设计一个线性相位FIR 高通滤波器,通带边界频率为0.6π,阻带边界频率为0.4π,阻 带衰减不小于40dB 。要求给出h(n)的解析式,并用MATLAB 绘出时域波形和幅频特性。 解: (1) 求数字边界频率: 0.6 , .c r ωπωπ== (2) 求理想滤波器的边界频率: 0.5n ωπ= (3) 求理想单位脉冲响应: []d s i n ()s i n [()] () ()1n n n n n n h n n παωαα παωα π?-- -≠??-=? ? -=?? (4) 选择窗函数。阻带最小衰减为-40dB ,因此选择海明窗(其阻带最小衰减为-44dB);滤 波器的过渡带宽为0.6π-0.4π=0.2π,因此 6.21 0.231 , 152 N N N ππα-=?=== (5) 求FIR 滤波器的单位脉冲响应h(n): []31d sin (15)sin[0.5(15)] 1cos ()15()()()15(15)1 15 n n n R n n h n w n h n n n ππππ?---????-? ?≠? ???==-???? ? ?=? 程序: clear; N=31; n=0:N-1; hd=(sin(pi*(n-15))-sin(0.5*pi*(n-15)))./(pi *(n-15)); hd(16)=0.5; win=hanning(N); h=win'.*hd; figure; stem(n,h); xlabel('n'); ylabel('h(n)'); grid; title('FIR 高通滤波单位脉冲响应h(n)'); [H,w]=freqz(h,1); H=20*log10(abs(H)); figure;3 plot(w/pi,H); axis([0 1 -100 10]); xlabel('\omega/\pi'); ylabel('幅度/dB'); grid; title('FIR 高通滤波器,hanning 窗,N=31');

数字信号处理实验三

实验三:离散LSI 系统的频域分析 一、实验内容 2、求以下各序列的z 变换: 12030() ()sin() ()sin()n an x n na x n n x n e n ωω-=== 程序清单如下: syms w0 n z a; x1=n*a^n;X1=ztrans(x1) x2=sin(w0*n);X2=ztrans(x2) x3= exp(-a*n)*sin(w0*n);X3=ztrans(x3) 程序运行结果如下: X1 =z/(a*(z/a - 1)^2) X2 =(z*sin(w0))/(z^2 - 2*cos(w0)*z + 1) X3 =(z*exp(a)*sin(w0))/(exp(2*a)*z^2 - 2*exp(a)*cos(w0)*z + 1) 3、求下列函数的逆z 变换 0 312342 1 1() () () ()() 1j z z z z X z X z X z X z z a z a z e z ω---= = = = ---- 程序清单如下: syms w0 n z a; X1=z/(z-a);x1=iztrans(X1) X2= z/(a-z)^2;x2=iztrans(X2) X3=z/ z-exp(j*w0);x3=iztrans(X3) X4=(1-z^-3)/(1-z^-1);x4=iztrans(X4) 程序运行结果如下: x1 =a^n x2 =n*a^n/a 课程名称 数字信号 实验成绩 指导教师 实 验 报 告 院系 信息工程学院 班级 学号 姓名 日期

x3 =charfcn[0](n)-iztrans(exp(i*w0),w0,n) x4 =charfcn[2](n)+charfcn[1](n)+charfcn[0](n) 4、求一下系统函数所描述的离散系统的零极点分布图,并判断系统的稳定性 (1) (0.3)()(1)(1) z z H z z j z j -= +-++ z1=[0,0.3]';p1=[-1+j,-1-j]';k=1; [b1,a1]=zp2tf(z1,p1,k); subplot(1,2,1);zplane(z1,p1); title('极点在单位圆外); subplot(1,2,2);impz(b1,a1,20); 由图可见:当极点位于单位圆内,系统的单位序列响应随着频率的增大而收敛;当极点位于单位圆上,系统的单位序列响应为等幅振荡;当极点位于单位圆外,系统的单位序列响应随着频率的增大而发散。由此可知系统为不稳定系统。 -1 -0.5 00.51 -2 -1.5-1-0.500.511.5 2Real Part I m a g i n a r y P a r t 极点在单位圆外 n (samples) A m p l i t u d e Impulse Response

数字信号处理实验作业

实验5 抽样定理 一、实验目的: 1、了解用MA TLAB 语言进行时域、频域抽样及信号重建的方法。 2、进一步加深对时域、频域抽样定理的基本原理的理解。 3、观察信号抽样与恢复的图形,掌握采样频率的确定方法和插公式的编程方法。 二、实验原理: 1、时域抽样与信号的重建 (1)对连续信号进行采样 例5-1 已知一个连续时间信号sin sin(),1Hz 3 ππ=0001f(t)=(2f t)+6f t f ,取最高有限带宽频率f m =5f 0,分别显示原连续时间信号波形和F s >2f m 、F s =2f m 、F s <2f m 三情况下抽样信号的波形。 程序清单如下: %分别取Fs=fm ,Fs=2fm ,Fs=3fm 来研究问题 dt=0.1; f0=1; T0=1/f0; m=5*f0; Tm=1/fm; t=-2:dt:2; f=sin(2*pi*f0*t)+1/3*sin(6*pi*f0*t); subplot(4,1,1); plot(t,f); axis([min(t),max(t),1.1*min(f),1.1*max(f)]); title('原连续信号和抽样信号'); for i=1:3; fs=i*fm;Ts=1/fs; n=-2:Ts:2; f=sin(2*pi*f0*n)+1/3*sin(6*pi*f0*n); subplot(4,1,i+1);stem(n,f,'filled'); axis([min(n),max(n),1.1*min(f),1.1*max(f)]); end 程序运行结果如图5-1所示:

原连续信号和抽样信号 图5-1 (2)连续信号和抽样信号的频谱 由理论分析可知,信号的频谱图可以很直观地反映出抽样信号能否恢复原模拟信号。因此,我们对上述三种情况下的时域信号求幅度谱,来进一步分析和验证时域抽样定理。 例5-2编程求解例5-1中连续信号及其三种抽样频率(F s>2f m、F s=2f m、F s<2f m)下的抽样信号的幅度谱。 程序清单如下: dt=0.1;f0=1;T0=1/f0;fm=5*f0;Tm=1/fm; t=-2:dt:2;N=length(t); f=sin(2*pi*f0*t)+1/3*sin(6*pi*f0*t); wm=2*pi*fm;k=0:N-1;w1=k*wm/N; F1=f*exp(-j*t'*w1)*dt;subplot(4,1,1);plot(w1/(2*pi),abs(F1)); axis([0,max(4*fm),1.1*min(abs(F1)),1.1*max(abs(F1))]); for i=1:3; if i<=2 c=0;else c=1;end fs=(i+c)*fm;Ts=1/fs; n=-2:Ts:2;N=length(n); f=sin(2*pi*f0*n)+1/3*sin(6*pi*f0*n); wm=2*pi*fs;k=0:N-1; w=k*wm/N;F=f*exp(-j*n'*w)*Ts; subplot(4,1,i+1);plot(w/(2*pi),abs(F)); axis([0,max(4*fm),1.1*min(abs(F)),1.1*max(abs(F))]); end 程序运行结果如图5-2所示。 由图可见,当满足F s≥2f m条件时,抽样信号的频谱没有混叠现象;当不满足F s≥2f m 条件时,抽样信号的频谱发生了混叠,即图5-2的第二行F s<2f m的频谱图,,在f m=5f0的围,频谱出现了镜像对称的部分。

实验一 基于Matlab的数字信号处理基本

实验一 基于Matlab 的数字信号处理基本操作 一、 实验目的:学会运用MA TLAB 表示的常用离散时间信号;学会运用MA TLAB 实现离 散时间信号的基本运算。 二、 实验仪器:电脑一台,MATLAB6.5或更高级版本软件一套。 三、 实验内容: (一) 离散时间信号在MATLAB 中的表示 离散时间信号是指在离散时刻才有定义的信号,简称离散信号,或者序列。离散序列通常用)(n x 来表示,自变量必须是整数。 离散时间信号的波形绘制在MATLAB 中一般用stem 函数。stem 函数的基本用法和plot 函数一样,它绘制的波形图的每个样本点上有一个小圆圈,默认是空心的。如果要实心,需使用参数“fill ”、“filled ”,或者参数“.”。由于MATLAB 中矩阵元素的个数有限,所以MA TLAB 只能表示一定时间范围内有限长度的序列;而对于无限序列,也只能在一定时间范围内表示出来。类似于连续时间信号,离散时间信号也有一些典型的离散时间信号。 1. 单位取样序列 单位取样序列)(n δ,也称为单位冲激序列,定义为 ) 0() 0(0 1)(≠=?? ?=n n n δ 要注意,单位冲激序列不是单位冲激函数的简单离散抽样,它在n =0处是取确定的值1。在MATLAB 中,冲激序列可以通过编写以下的impDT .m 文件来实现,即 function y=impDT(n) y=(n==0); %当参数为0时冲激为1,否则为0 调用该函数时n 必须为整数或整数向量。 【实例1-1】 利用MATLAB 的impDT 函数绘出单位冲激序列的波形图。 解:MATLAB 源程序为 >>n=-3:3; >>x=impDT(n); >>stem(n,x,'fill'),xlabel('n'),grid on >>title('单位冲激序列') >>axis([-3 3 -0.1 1.1]) 程序运行结果如图1-1所示。 图1-1 单位冲激序列

数字信处理上机实验答案全

数字信处理上机实验答 案全 Document number【SA80SAB-SAA9SYT-SAATC-SA6UT-SA18】

第十章 上机实验 数字信号处理是一门理论和实际密切结合的课程,为深入掌握课程内容,最好在学习理论的同时,做习题和上机实验。上机实验不仅可以帮助读者深入的理解和消化基本理论,而且能锻炼初学者的独立解决问题的能力。本章在第二版的基础上编写了六个实验,前五个实验属基础理论实验,第六个属应用综合实验。 实验一系统响应及系统稳定性。 实验二时域采样与频域采样。 实验三用FFT对信号作频谱分析。 实验四 IIR数字滤波器设计及软件实现。 实验五 FIR数字滤波器设计与软件实现 实验六应用实验——数字信号处理在双音多频拨号系统中的应用 任课教师根据教学进度,安排学生上机进行实验。建议自学的读者在学习完第一章后作实验一;在学习完第三、四章后作实验二和实验三;实验四IIR数字滤波器设计及软件实现在。学习完第六章进行;实验五在学习完第七章后进行。实验六综合实验在学习完第七章或者再后些进行;实验六为综合实验,在学习完本课程后再进行。 实验一: 系统响应及系统稳定性 1.实验目的 (1)掌握求系统响应的方法。 (2)掌握时域离散系统的时域特性。 (3)分析、观察及检验系统的稳定性。 2.实验原理与方法 在时域中,描写系统特性的方法是差分方程和单位脉冲响应,在频域可以用系统函数描述系统特性。已知输入信号可以由差分方程、单位脉冲响应或系统函数求出系统对于该输入信号的响应,本实验仅在时域求解。在计算机上适合用递推法求差分方程的解,最简单的方法是采用MATLAB语言的工具箱函数filter函数。也可以用MATLAB语言的工具箱函数conv函数计算输入信号和系统的单位脉冲响应的线性卷积,求出系统的响应。 系统的时域特性指的是系统的线性时不变性质、因果性和稳定性。重点分析实验系统的稳定性,包括观察系统的暂态响应和稳定响应。 系统的稳定性是指对任意有界的输入信号,系统都能得到有界的系统响应。或者系统的单位脉冲响应满足绝对可和的条件。系统的稳定性由其差分方程的系数决定。 实际中检查系统是否稳定,不可能检查系统对所有有界的输入信号,输出是否都是有界输出,或者检查系统的单位脉冲响应满足绝对可和的条件。可行的方法是在系统的输入端加入单位阶跃序列,如果系统的输出趋近一个常数(包括零),就可以断定系统是稳定的[19]。系统的稳态输出是指当∞ n时,系统的输出。如果系统稳定,信号加入 → 系统后,系统输出的开始一段称为暂态效应,随n的加大,幅度趋于稳定,达到稳态输出。 注意在以下实验中均假设系统的初始状态为零。 3.实验内容及步骤

数字信号处理实验4

数字信号处理实验四 第一题结果: (1)没有增加过渡点 源码如下: N = 15; H = [1 1 1 0.5 zeros(1,7) 0.5 1 1 1]; %确定抽样点的幅度大小 %H(3,13) = 0.75;H(5,11) = 0.25; %设置过渡点 k = 0:N-1; A = exp(-j*pi*k*(N-1)/N); %抽样点相位大小 HK = H.*A; %求抽样点的H(k) hn = ifft(HK,N); %求出FIR的单位冲激响应h(n) freqz(hn,1,256); %画出幅频相频曲线figure(2); stem(real(hn),'.'); %绘制单位冲激响应的实部 line([0,35],[0,0]);xlabel('n');ylabel('Real(h(n))'); 单位脉冲响应曲线 幅频和相频特性曲线

(2)增加过渡点 源码如下: N = 15; H = [1 1 1 0.5 zeros(1,7) 0.5 1 1 1]; %确定抽样点的幅度大小 H(3) = 0.75;H(13) = 0.75;H(5) = 0.25;H(11) = 0.25; %设置过渡点 k = 0:N-1; A = exp(-j*pi*k*(N-1)/N); %抽样点相位大小 HK = H.*A; %求抽样点的H(k) hn = ifft(HK,N); %求出FIR的单位冲激响应h(n) freqz(hn,1,256); %画出幅频相频曲线figure(2); stem(real(hn),'.'); %绘制单位冲激响应的实部 line([0,35],[0,0]);xlabel('n');ylabel('Real(h(n))'); 单位脉冲响应曲线 幅频和相频特性曲线 第二题结果:

数字信号处理第二章上机作业

第二章上机作业 1、ljdt(A,B)函数定义 function ljdt(A,B) p=roots(A); q=roots(B); p=p'; q=q'; x=max(abs([p q 1])); x=x+0.1; y=x; clf hold on axis([-x x -y y]) w=0:pi/300:2*pi; t=exp(i*w); plot(t) axis('square') plot([-x x],[0 0]) plot([0 0],[-y y]) text(0.1,x,'jIm[z]') text(y,1/10,'Re[z]') plot(real(p),imag(p),'x') plot(ral(q),imag(q),'o') title('pole-zero diagram for discrete system') hold off 例2.26 a=[3 -1 0 0 0 1]; b=[1 1]; ljdt(a,b) p=roots(a) q=roots(b) pa=abs(p) 程序运行结果如下: P= 0.7255+0.4633i 0.7255+0.4633i -0.1861+0.7541i -0.1861-0.7541i -0.7455 q=

-1 pa= 0.8608 0.8608 0.7768 0.7768 0.7455 例2.27 b=[0 1 2 1];a=[1 -0.5 -0.005 0.3]; subplot 311 zplane(b,a);xlabel('实部');ylabel('虚部'); num=[0 1 2 1];den=[1 -0.5 -0.005 0.3]; h=impz(num,den); subplot 312

数字信号处理基础实验报告_

本科生实验报告 实验课程数字信号处理基础 学院名称地球物理学院 专业名称地球物理学 学生姓名 学生学号 指导教师王山山 实验地点5417 实验成绩 二〇一四年十一月二〇一四年十二月

填写说明 1、适用于本科生所有的实验报告(印制实验报告册除外); 2、专业填写为专业全称,有专业方向的用小括号标明; 3、格式要求: ①用A4纸双面打印(封面双面打印)或在A4大小纸上用蓝黑色水笔书写。 ②打印排版:正文用宋体小四号,1.5倍行距,页边距采取默认形式(上下2.54cm, 左右2.54cm,页眉1.5cm,页脚1.75cm)。字符间距为默认值(缩放100%,间距:标准);页码用小五号字底端居中。 ③具体要求: 题目(二号黑体居中); 摘要(“摘要”二字用小二号黑体居中,隔行书写摘要的文字部分,小4号宋体); 关键词(隔行顶格书写“关键词”三字,提炼3-5个关键词,用分号隔开,小4号黑体); 正文部分采用三级标题; 第1章××(小二号黑体居中,段前0.5行) 1.1 ×××××小三号黑体×××××(段前、段后0.5行) 1.1.1小四号黑体(段前、段后0.5行) 参考文献(黑体小二号居中,段前0.5行),参考文献用五号宋体,参照《参考文献著录规则(GB/T 7714-2005)》。

实验一生成离散信号并计算其振幅谱 并将信号进行奇偶分解 一、实验原理 单位脉冲响应h(t)=exp(-a*t*t)*sin(2*3.14*f*t)进行离散抽样,分别得到t=0.002s,0.009s,0.011s采样的结果。用Excel软件绘图显示计算结果。并将信号进行奇偶分解,分别得到奇对称信号h(n)-h(-n)与偶对称信号h(n)+h(-n)。用Excel 软件绘图显示计算结果。 二、实验程序代码 (1)离散抽样 double a,t; a=2*f*f*log(m); int i; for(i=0;i

数字信号处理基础实验报告 (2)

成都理工大学 《信号处理基础》实验 开设时间:2013—2014学年第2学期

题目1:信号的产生和显示 一、实验目的: 认识基本信号 通过使用MATLAB 设计简单程序, 掌握对MATLAB 的基本使用方法 二、实验原理: 找出下列表达式的信号与:正弦信号、最小相位信号、最大相位信号、零相位信号的对应关系。 1、sin60t 2、e-60t sin60t 3、(1- e-60t)sin60t 4、e60t sin60t 三、实验内容: 产生上述信号的信号并显示 (1)t=[-pi/30:0.001:pi/30]; f=sin(60*t); plot(t,f) 产生图形如下:

(2)t=[0:0.001:pi/30]; f=exp(-60*t).*sin(60*t); plot(t,f) 产生图形如下:

(3)t=[-5*pi/30:0.001:5*pi/30]; f=(1-exp(-60*t)).*sin(60*t); plot(t,f) 产生图形如下: (4) t=[-pi/30:0.001:pi/30]; f=exp(6*t).*sin(60*t); plot(t,f) 产生如下波形:

四、实验结果与讨论: 讨论上述信号的特点 从第一个波形图可以看出,它的波形与正弦函数sin(t)的相像,只是相位上有改变,是一个正弦信号。最大相位信号的能量集中在后面,最小相位能量集中在前面,所以第二个是一个最小相位,第四个是一个最大相位信号。第三个由于波形在t>0时没有,所以是一个零相位信号。 题目2:频谱分析与显示 一、实验目的 初步认识频谱分析

习题集-02 数字信号处理习题答案

§ Z 变换 ? Z 变换的定义及收敛域 【习题】 1. 假如)(n x 的z 变换代数表示式是下式,问)(z X 可能有多少不同的收敛域。 )83451)(411(411)(2122----+++- =z z z z z X 【分析】 )要单独讨论,(环状、圆外、圆内:有三种收敛域:双边序列的收敛域为:特殊情况有:左边序列的收敛域为:因果序列的收敛域为:右边序列的收敛域为:特殊情况有:有限长序列的收敛域为 0 0 , , 0 0 , , 0 , 0 0 , 0 , 0 22 11 212 1∞==<<≤≤<≤<<≥≥∞≤<≥∞<<≤∞<≤≥∞≤<≤≤∞<<+ -++--z z R z R n n R z n n R z n n z R n n z R n z n z n n n z x x x x x x

解:对X (Z )的分子和分母进行因式分解得 )43 1 )(21 1)(211(2111111----+-+- =Z jZ jZ Z X (Z )的零点为:1/2,极点为:j/2,-j/2,-3/4 ∴ X (Z )的收敛域为: (1) 1/2 < | Z | < 3/4,为双边序列,见图一 (2) | Z | < 1/2,为左边序列,见图二 (3) | Z | > 3/4,为右边序列,见图三 图一 图二 图三 )431)(211)(411()211)(211()(11211-----++++- =Z Z Z Z Z Z X

? Z 反变换 【习题】 2. 有一右边序列 )(n x ,其 z 变换为)1)(211(1 )(11----=z z z X (a) 将上式作部分分式展开(用 1-z 表示),由展开式求 )(n x 。 (b) 将上式表示成 z 的多项式之比,再作部分分式展开,由展开式求 )(n x ,并说明所得到的序列 与(a)所得的是一样的。 【注意】不管哪种表示法最后求出 x (n ) 应该是相同的。 解:(a) 因为11122 111)(---+--=z z z X 且x(n)是右边序列 所以 )()212()(n u n x n ?? ? ??-= (b) 122 1211 )1)(2 1(21231 )1)(2 1()(2 -+--+=---+=--=z z z z z z z z z X )()212( )1(2)1(21)()( n u n u n u n n x n n ??? ??-=-+-?? ? ??-=δ则

相关主题
文本预览
相关文档 最新文档