文档库 最新最全的文档下载
当前位置:文档库 › 数字信号处理实验代码

数字信号处理实验代码

数字信号处理实验代码
数字信号处理实验代码

数字信号处理实验报告

题目: 数字信号处理

班级: 0308409 姓名:杨海清

学号: 030840910 指导老师:李时东

时间: 2010-12-30

实验一:系统响应及系统稳定性

一、实验目的:

(1)掌握

求系统响应的方法。

(2)掌握时域离散系统的时域特性。 (3)分析、观察及检验系统的稳定性。

二、实验原理

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

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

三、实验步骤

(1)编制程序,包括产生输入信号、单位脉冲响应序列的子程序,用filter 函数或conv 函数求解系统输出响应的主 程序。程序中要有绘制信号波形的功能。

(2)给定一个低通滤波器的差分方程为 )1(9.0)1(05.0)(05.0)(-+-+=n y n x n x n y 输入信号 )()(81n R n x = )()(2n u n x =

a) 分别求出系统对)()(81n R n x =和)()(2n u n x =的响应序列,并画出其波形。

b) 求出系统的单位冲响应,画出其波形。 (3)给定系统的单位脉冲响应为 )()(101n R n h =

)3()2(5.2)1(5.2)()(2-+-+-+=n n n n n h δδδδ

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

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

)2()()2(9801.0)1(8237.1)(00--+---=n x b n x b n y n y n y 令 49.100/10=b ,谐振器的谐振频率为0.4rad 。

a) 用实验方法检查系统是否稳定。输入信号为)(n u 时,画出系统输出波形。

b) 给定输入信号为

n

(n

n

x+

)

)

=

sin(

4.0

sin(

)

014

.0

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

四、实验代码:

内容一

A=[1,-0.9];B=[0.05,0.05]; %

x1n=[1 1 1 1 1 1 1 1 zeros(1,50)]; %

x2n=ones(1,128);

hn=impz(B,A,58);

subplot(2,2,1);

y='h(n)';

tstem(hn,y);

title('(a)系统响应脉冲响应h(n)');box on

y1n=filter(B,A,x1n);

subplot(2,2,2);

y='y1n(n)';

tstem(y1n,y);

title('(b)系统对R8(n)的响应y1n(n)');box on

y2n=filter(B,A,x2n);

subplot(2,2,3);

y='y2n(n)';

tstem(y2n,y);

title('(c)系统对u(n)的响应y2n(n)');box on

定义stem(xn,yn):

function tstem(xn,yn)

n=0:length(xn)-1;

stem(n,xn,'.');box on

xlabel('n');ylabel(yn);

axis([0,n(end),min(xn),1.2*max(xn)])

内容二

x1n=[1 1 1 1 1 1 1 1];

h1n=[ones(1,10) zeros(1,10)];

h2n=[1 2.5 2.5 1 zeros(1,10)];

y21n=conv(h1n,x1n);

y22n=conv(h2n,x1n);

figure(2);

subplot(2,2,1);y='h1(n)';tstem(y1n,y);

title('(d)系统的脉冲响应h1(n)');box on

subplot(2,2,2);y='y21(n)';tstem(y21n,y);

title(' (e) h1(n)与R8(n)的响应|y21(n)');box on

subplot(2,2,3);y='h2(n)';tstem(h2n,y);

title('(f) 系统的脉冲响应h2(n)');box on

subplot(2,2,4);y='y22(n)';tstem(y22n,y);

title(' (g) h2(n)与R8(n)的响应y22(n)');box on

定义stem(xn,yn):

function tstem(xn,yn)

n=0:length(xn)-1;

stem(n,xn,'.');box on

xlabel('n');ylabel(yn);

axis([0,n(end),min(xn),1.2*max(xn)])

内容三

un=ones(1,256);

n=0:225;

xsin=sin(0.014*n)+sin(0.4*n);

A=[1 -1.8237 0.9801];

B=[1/100.49 0 -1/100.49];

y31n=filter(B,A,un);

y32n=filter(B,A,xsin);

figure(3)

subplot(2,1,1);y='y31(n)';tstem(y31n,y);

title('(h)谐振器对u(n)的响应y31n');box on

subplot(2,1,2);y='y32(n)';tstem(y32n,y);

title(' (i)谐振器对正弦波信号的响应y32(n)');box on

定义stem(xn,yn):

function tstem(xn,yn)

n=0:length(xn)-1;

stem(n,xn,'.');box on

xlabel('n');ylabel(yn);

axis([0,n(end),min(xn),1.2*max(xn)])

五、实验结果:

内容一:

内容二:

内容三:

六、思考题

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

答:可以,先对原序列x(n)以N 为周期进行周期延拓后取主值区序列,

()[()]()

N N i x n x n iN R n ∞

=-∞=+∑

再计算N 点DFT 则得到N 点频域采样:

2()DFT[()] =()

, 0,1,2,,1

j N N N k N

X k x n X e k N ωπω=

==-

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

答:系统对)(n u 和)4.0sin()014.0sin()(n n n x +=的响应序列分别如图(h)和(i)所示。由图(h)可见,系统对)(n u 的响应逐渐衰减到零,所以系统稳定。由图(i)可见,系统对)4.0sin()014.0sin()(n n n x +=的稳态响应近似为正弦序列sin(0.4)n ,这一结论验证了该系统的谐振频率是0.4 rad 。

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

一、实验目的

时域采样理论与频域采样理论是数字信号处理中的重要理论。要

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

二、实验原理与方法

时域采样定理的要点是:

(1)对模拟信号)(t x a 以间隔T 进行时域等间隔理想采样,形成的采样信号的频谱)(?

Ωj X 是原模拟信号频谱()a X j Ω以采样角频率s

Ω(T s /2π=Ω)为周期进行周期延拓。

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

T j a e X j X Ω==Ωωω)()(?

此式说明理想采样信号的傅立叶变换可用相应的采样序列的傅立叶变换得到,只要将自变量ω用T Ω代替即可。 频域采样定理的要点是:

对信号x(n)的频谱函数X(ej ω)在[0,2π]上等间隔采样N 点,N 点IDFT[()N X k ]得到的序列就是原序列x(n)以N 为周期进行周期延拓后的主值区序列

由上式可知,频域采样点数N 必须大于等于时域离散信号的长度M(即N ≥M),才能使时域不产生混叠。

三、实验内容及步骤

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

)()sin()(0t u t Ae t x t

a Ω=-α 式中A=444.128,α=502π,0Ω=502πrad/s ,它的幅频特性曲线如图10.2.1

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

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

为使用DFT ,首先用下面公式产生时域离散信号,对三种采样频率,采样序列按顺序用)(1n x ,)(2n x ,)(3n x 表示。

)()sin()()(0nT u nT Ae nT x n x nT

a Ω==-α 因为采样频率不同,得到的)(1n x ,)(2n x ,)(3n x 的长度不同, 长度(点数)用公式s p F T N ?=计算。选FFT 的变换点数为M=64,序列长度不够64的尾部加零。

X(k)=FFT[x(n)] , k=0,1,2,3,-----,M-1 式中k 代表的频率为

k M k π

ω2=

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

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

??

?

??≤≤-≤≤+=其它026

14271301)(n n n n n x

编写程序分别对频谱函数

()FT[()]j X e x n ω

=在区间]2,0[π上等间隔采样32

和16点,得到)()(1632k X k X 和:

32232

()()

, 0,1,2,31

j k X k X e k ωπ

ω=

==

162

16

()()

, 0,1,2,15

j k

X k X e k ωπω=

==

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

323232()I F F T

[()] , 0,1,2,,31x n X k n == 161616()I F F T

[()] , 0,1,2,

,15

x n X k n == 分别画出

()j X e ω

、)()(1632k X k X 和的幅度谱,并绘图显示x(n)、)()(1632n x n x 和的波形,进行对比和分析,验证总结频域采样理论。

提示:频域采样用以下方法容易变程序实现。

① 直接调用MATLAB 函数fft 计算3232()FFT[()]

X k x n =就得到()j X e ω在]2,0[π的32点频率域采样

② 抽取32()X k 的偶数点即可得到

()j X e ω在]2,0[π的16点频率域采样16()X k ,即1632()(2) , 0,1,2,,15X k X k k == 。

○3 当然也可以按照频域采样理论,先将信号x(n)以16为周期进行周期延拓,取其主值区(16点),再对其进行16点DFT(FFT),得到

的就是

()j X e ω在]2,0[π的16点频率域采样16()X k 。 四、实验代码

Tp=64/1000; %观察时间Tp=64微秒 %产生M 长采样序列x(n) Fs1=1000;T1=1/Fs1; Fs2=300;T2=1/Fs2; Fs3=200;T3=1/Fs3; M1=Tp*Fs1;n=0:M1-1; M2=Tp*Fs2;n=0:M2-1; M3=Tp*Fs3;n=0:M3-1;

A=444.128;alph=pi*50*2^0.5;omega=pi*50*2^0.5; xnt1=A*exp(-alph*n*T1).*sin(omega*n*T1); xnt2=A*exp(-alph*n*T2).*sin(omega*n*T2); xnt3=A*exp(-alph*n*T3).*sin(omega*n*T3); Xk1=T1*fft(xnt1,M1); %M1点FFT[xnt1)] Xk2=T2*fft(xnt2,M2); %M2点FFT[xnt2)] Xk3=T3*fft(xnt3,M3); %M3点FFT[xnt3)] yn1='xa(nT1)';subplot(3,2,1); tstem(xnt1,yn1); %调用自编绘图函数tstem 绘制序列图 box on;title('(a) Fs1=1000Hz'); k1=0:M1-1;fk1=k1/Tp;

subplot(3,2,2);plot(fk1,abs(Xk1));title('(b) T1*FT[xa(nT1)],Fs1=1000Hz'); xlabel('f(Hz)');ylabel('幅度');axis([0,Fs1,0,1.2*max(abs(Xk1))]) yn2='xa(nT2)';subplot(3,2,3); tstem(xnt2,yn2); %调用自编绘图函数tstem 绘制序列图 box on;title('(c) Fs2=1000Hz'); k2=0:M2-1;fk2=k2/Tp;

subplot(3,2,4);plot(fk2,abs(Xk2));title('(d) T2*FT[xa(nT2)],Fs2=300Hz'); xlabel('f(Hz)');ylabel('幅度');axis([0,Fs2,0,1.2*max(abs(Xk2))]) yn3='xa(nT3)';subplot(3,2,5); tstem(xnt3,yn3); %调用自编绘图函数tstem 绘制序列图 box on;title('(e) Fs3=1000Hz'); k3=0:M3-1;fk3=k3/Tp;

subplot(3,2,6);plot(fk3,abs(Xk3));title('(f) T3*FT[xa(nT3)],Fs3=200Hz'); xlabel('f(Hz)');ylabel('幅度');axis([0,Fs3,0,1.2*max(abs(Xk3))])

M=27;N=32;n=0:M;

%产生M 长三角波序列x(n)

xa=0:floor(M/2); xb= ceil(M/2)-1:-1:0; xn=[xa,xb];

Xk=fft(xn,1024); %1024点FFT[x(n)], 用于近似序列x(n)的TF X32k=fft(xn,32) ;%32点FFT[x(n)]

x32n=ifft(X32k); %32点IFFT[X32(k)]得到x32(n)

X16k=X32k(1:2:N); %隔点抽取X32k得到X16(K)

x16n=ifft(X16k,N/2); %16点IFFT[X16(k)]得到x16(n)

subplot(3,2,2);stem(n,xn,'.');box on

title('(b) 三角波序列x(n)');xlabel('n');ylabel('x(n)');axis([0,32,0,20])

k=0:1023;wk=2*k/1024; %

subplot(3,2,1);plot(wk,abs(Xk));title('(a)FT[x(n)]');

xlabel('\omega/\pi');ylabel('|X(e^j^\omega)|');axis([0,1,0,200])

k=0:N/2-1;

subplot(3,2,3);stem(k,abs(X16k),'.');box on

title('(c) 16点频域采样');xlabel('k');ylabel('|X_1_6(k)|');axis([0,8,0,200])

n1=0:N/2-1;

subplot(3,2,4);stem(n1,x16n,'.');box on

title('(d) 16点IDFT[X_1_6(k)]');xlabel('n');ylabel('x_1_6(n)');axis([0,32,0,20]) k=0:N-1;

subplot(3,2,5);stem(k,abs(X32k),'.');box on

title('(e) 32点频域采样');xlabel('k');ylabel('|X_3_2(k)|');axis([0,16,0,200])

n1=0:N-1;

subplot(3,2,6);stem(n1,x32n,'.');box on

title('(f) 32点IDFT[X_3_2(k)]');xlabel('n');ylabel('x_3_2(n)');axis([0,32,0,20]) 五、实验结果

内容一

内容二

六、思考题:

(1) 如果序列x(n)的长度为M ,希望得到其频谱

()j X e ω在]2,0[π上的N 点等间隔采样,当N

解:先对原序列x(n)以N 为周期进行周期延拓后取主值区序列,

()[()]()

N N i x n x n iN R n ∞

=-∞=+∑,再计算N 点DFT 则得到N 点频域采样:

2()DFT[()] =()

, 0,1,2,,1

j N N N k N

X k x n X e k N ωπ

ω=

==-

实验三:用FFT 对信号作频谱分析

一、 实验目的

学习用FFT 对连续信号和时域离散信号进行谱分析的方法,了

解可能出现的分析误差及其原因,以便正确应用FFT 。

二、 实验原理

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

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

对模拟信号进行谱分析时,首先要按照采样定理将其变成时域离散信号。如果是模拟周期信号,也应该选取整数倍周期的长度,经过采样后形成周期序列,按照周期序列的谱分析进行。

三、 实验步骤

(1)对以下序列进行谱分析。

???

??≤≤-≤≤-=??

?

??≤≤-≤≤+==其它n

n n n n n x 其它n

n n n n n x n R n x ,07

4,

330,4)(,07

4,

83

0,1)()

()(3241

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

4()cos

4x n n

π

=

5

()cos(/4)cos(/8)x n n n ππ=+

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

6()cos8cos16cos20x t t t t πππ=++

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

四、 实验代码

内容一

clear all;close all x1n=[1 1 1 1 ]; xk1=fft(x1n,8); xk2=fft(x1n,16);

subplot(321);stem(xk1);title('x1(n)的8点幅频特性'); subplot(322);stem(xk2);title('x1(n) 的16点幅频特性'); x2n=[1 2 3 4 4 3 2 1]; xk1=fft(x2n,8); xk2=fft(x2n,16);

subplot(323);stem(xk1);title('x2(n) 的8点幅频特性'); subplot(324);stem(xk2);title('x2(n) 的16点幅频特性');

x3n=[4 3 2 1 1 2 3 4];

xk1=fft(x3n,8);

xk2=fft(x3n,16);

subplot(325);stem(xk1);title('x3(n) 的8点幅频特性'); subplot(326);stem(xk2);title('x3(n) 的16点幅频特性');

内容二:

n=1:8;

x4n=cos((pi/4)*n);

xk1=fft(x4n,8);

xk2=fft(x4n,16);

wk=2*pi*(1:length(xk1))/length(xk1);

subplot(321);stem(wk,xk1);title('x4(n) 的8点幅频特性'); wk=2*pi*(1:length(xk2))/length(xk2);

subplot(322);stem(wk,xk2);title('x4(n) 的16点幅频特性'); n=1:16;

x5n=cos((pi/4)*n)+cos((pi/8)*n);

xk1=fft(x5n,8);

xk2=fft(x5n,16);

wk=2*pi*(1:length(xk1))/length(xk1);

subplot(323);stem(xk1);title('x5(n) 的8点幅频特性');

wk=2*pi*(1:length(xk2))/length(xk2);

subplot(324);stem(xk2);title('x5(n) 的16点幅频特性');

内容三:

n=1:8;

fs=64;

t=1/fs;

x8n=cos(8*pi*t*n)+cos(16*pi*t*n)+cos(20*pi*t*n);

xk1=fft(x8n,16);

xk2=fft(x8n,32);

xk3=fft(x8n,64);

wk=2*pi*(1:length(xk1))/length(xk1);

subplot(321);stem(wk,xk1);title('x8(n) 的16点幅频特性'); wk=2*pi*(1:length(xk2))/length(xk2);

subplot(322);stem(wk,xk2);title('x8(n) 的32点幅频特性'); wk=2*pi*(1:length(xk3))/length(xk3);

subplot(323);stem(wk,xk3);title('x8(n) 的64点幅频特性');

五、实验结果

内容一:

内容二:

内容三:

六、 问答题

(1)当N=8时,)(2n x 和)(3n x 的幅频特性会相同吗?为什么?N=16 呢?

答:

4()cos

4x n n

π

=的周期为8,所以N=8和N=16均是其周期的整

数倍,得到正确的单一频率正弦波的频谱,仅在0.25π处有1根单一谱线。

5()cos(/4)cos(/8)x n n n ππ=+的周期为16,所以N=8不是

其周期的整数倍,得到的频谱不正确,如图(5a )所示。N=16是其一个周期,得到正确的频谱,仅在0.25π和0.125π处有2根单一谱线。

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

一、实验目的

(1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法;(2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。

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

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

二、实验原理

设计IIR数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。第六章介绍的滤波器设计函数butter、cheby1 、cheby2 和ellip可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器。本实验要求读者调用如上函数直接设计IIR数字滤波器。

本实验的数字滤波器的MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n)。

三、 实验步骤

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

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

0001

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

2c c c s t f t f t f f t f f t ππππ==-++

其中,cos(2)c f t π称为载波,fc 为载波频率,0cos(2)f t π称为单频调制信号,f0为调制正弦波信号频率,且满足0c f f >。由上式可见,所谓抑制载波单频调幅信号,就是2个正弦信号相乘,它有2个频率成分:和频0c f f +和差频0c f f -,这2个频率成分关于载波频率fc 对称。所以,1路抑制载波单频调幅信号的频谱图是关于载波频率fc 对称的2根谱线,其中没有载频成分,故取名为抑制载波单频调幅信号。容易看出,图10.4.1中三路调幅信号的载波频率分别为250Hz 、500Hz 、1000Hz 。如果调制信号m(t)具有带限连续频谱,无直流成分,则

()()cos(2)c s t m t f t π=就是一般的抑制载波调幅信号。其频谱图是关于载

波频率fc 对称的2个边带(上下边带),在专业课通信原理中称为双

数字信号处理实验报告

实验一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 ) 条状图形

数字信号处理实验(吴镇扬)答案-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时的泄漏现象最为明显,混叠可能也随之出现;

数字信号处理实验报告

数字信号处理作业提交日期:2016年7月15日

实验一 维纳滤波器的设计 第一部分 设计一维纳滤波器。 (1)产生三组观测数据,首先根据()(1)()s n as n w n =-+产生信号()s n ,将其加噪(信噪比分别为20,10,6dB dB dB ),得到观测数据123(),(),()x n x n x n 。 (2)估计()i x n ,1,2,3i =的AR 模型参数。假设信号长度为L ,AR 模型阶数为N ,分析实验结果,并讨论改变L ,N 对实验结果的影响。 1 实验原理 滤波技术是信号分析、处理技术的重要分支,无论是信号的获取、传输,还是信号的处理和交换都离不开滤波技术,它对信号安全可靠和有效灵活地传递是至关重要的。信号分析检测与处理的一个十分重要的内容就是从噪声中提取信号,实现这种功能的有效手段之一是设计一种具有最佳线性过滤特性的滤波器,当伴有噪声的信号通过这种滤波器的时候,它可以将信号尽可能精确地重现或对信号做出尽可能精确的估计,而对所伴随噪声进行最大限度地抑制。维纳滤波器就是这种滤波器的典型代表之一。 维纳(Wiener )是用来解决从噪声中提取信号的一种过滤(或滤波)方法。这种线性滤波问题,可以看做是一种估计问题或一种线性估计问题。 设一线性系统的单位样本响应为()h n ,当输入以随机信号()x n ,且 ()() () x n s n v n =+,其中()s n 表示原始信号,即期望信号。()v n 表示噪声,则输出()y n 为()=()()m y n h m x n m -∑,我们希望信号()x n 经过线性系统()h n 后得到的()y n 尽可能接近 于()s n ,因此称()y n 为估计值,用?()s n 表示。 则维纳滤波器的输入-输出关系可用下面表示。 设误差信号为()e n ,则?()()()e n s n s n =-,显然)(n e 可能是正值,也可能是负值,并且它是一个随机变量。因此,用它的均方误差来表达误差是合理的,所谓均方误差最小即 它的平方的统计期望最小:222?[|()|][|()()|][|()()|]E e n E s n s n E s n y n =-=-=min 。而要使均方误差最小,则需要满足2[|()|]j E e n h ?=0. 进一步导出维纳-霍夫方程为:()()()()*(),0,1,2...xs xx xx i R m h i R m i R m h m m =-==∑ 写成矩阵形式为:xs xx R R h =,可知:1xs xx h R R -=。表明已知期望信号与观测数据的互相关函数以及观测信号的自相关函数时,可以通过矩阵求逆运算,得到维纳滤波器的

《数字信号处理》课程研究性学习报告解读

《数字信号处理》课程研究性学习报告 指导教师薛健 时间2014.6

【目的】 (1) 掌握IIR 和FIR 数字滤波器的设计和应用; (2) 掌握多速率信号处理中的基本概念和方法 ; (3) 学会用Matlab 计算小波分解和重建。 (4)了解小波压缩和去噪的基本原理和方法。 【研讨题目】 一、 (1)播放音频信号 yourn.wav ,确定信号的抽样频率,计算信号的频谱,确定噪声信号的频率范围; (2)设计IIR 数字滤波器,滤除音频信号中的噪声。通过实验研究s P ,ΩΩ,s P ,A A 的选择对滤波效果及滤波器阶数的影响,给出滤波器指标选择的基本原则,确定你认为最合适的滤波器指标。 (3)设计FIR 数字滤波器,滤除音频信号中的噪声。与(2)中的IIR 数字滤波器,从滤波效果、幅度响应、相位响应、滤波器阶数等方面进行比较。 【设计步骤】 【仿真结果】

【结果分析】 由频谱知噪声频率大于3800Hz。FIR和IIR都可以实现滤波,但从听觉上讲,人对于听觉不如对图像(视觉)明感,没必要要求线性相位,因此,综合来看选IIR滤波器好一点,因为在同等要求下,IIR滤波器阶数可以做的很低而FIR滤波器阶数太高,自身线性相位的良好特性在此处用处不大。【自主学习内容】 MATLAB滤波器设计 【阅读文献】 老师课件,教材 【发现问题】(专题研讨或相关知识点学习中发现的问题): 过渡带的宽度会影响滤波器阶数N 【问题探究】 通过实验,但过渡带越宽时,N越小,滤波器阶数越低,过渡带越窄反之。这与理论相符合。 【仿真程序】 信号初步处理部分: [x1,Fs,bits] = wavread('yourn.wav'); sound(x1,Fs); y1=fft(x1,1024); f=Fs*(0:511)/1024; figure(1) plot(x1) title('原始语音信号时域图谱'); xlabel('time n'); ylabel('magnitude n'); figure(2) freqz(x1) title('频率响应图') figure(3) subplot(2,1,1); plot(abs(y1(1:512))) title('原始语音信号FFT频谱') subplot(2,1,2); plot(f,abs(y1(1:512))); title(‘原始语音信号频谱') xlabel('Hz'); ylabel('magnitude'); IIR: fp=2500;fs=3500; wp = 2*pi*fp/FS; ws = 2*pi*fs/FS; Rp=1; Rs=15;

数字信号处理实验作业

实验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;

数字信号处理课程实验报告4

数字信号处理课程实验报告 实验名称FIR数字滤 班级姓名 波器设计 教师姓名实验地点实验日期 一、实验内容 1、设计一个最小阶次的低通FIR数字滤波器,性能指标为:通带0Hz~1500Hz,阻带截 止频率2000Hz,通带波动不大于1%,阻带波动不大于1%,采样频率为8000Hz; 2、用一个仿真信号来验证滤波器的正确性(注意:要满足幅度要求和线性相位特性)。 二、实验目的 1、利用学习到的数字信号处理知识解决实际问题; 2、了解线性相位滤波器的特殊结构; 3、熟悉FIR数字滤波器的设计方法。 三、涉及实验的相关情况介绍(包含使用软件或实验设备等情况) 计算机一台(安装MATLAB6.5版本或以上版本) 四、实验记录(以下1~5项必须完成,第6项为选择性试做) 1.原理基础 令希望设计的滤波器的传输函数是H(ejw,hd(n)是与其对应的单位脉冲响应。一般情况下,由Hd(ejw)求出hd(n),然后由Z变换求出滤波器的系统函数。但是通常Hd(ejw)在边界频率处有不连续点,这使得hd(n)是无限长的非因果序列,所以实际是不能实现的。为了构造一个长度为N的线性相位滤波器,可以将hd(n)截取一段来近似,并且根据线性相位的特点,需要保证截取后的序列关于(N-1)/2对称。设截取的一段为h(n),则 Wr(n)称为矩形窗函数。 当hd(n的对称中心点取值为(N-1)/2时,就可以保证所设计的滤波器具有线性相位。 2 实验流程

1.信号的谱分析 2.信号的采样 3.信号的恢复 3源程序代码 clc; clear all; close all; fs=700;%采样频率 f=[30 40];%截止频率 a=[1 0]; dev=[0.01 0.1]; % dev纹波 [n,fo,ao,w]=remezord(f,a,dev,fs);%n滤波器阶数fo过渡带起止频率ao频带内幅度————firpmord b=remez(n,fo,ao,w);%firpm b=b.*blackman(length(b))'; b=b; a=1; figure(1) % [H,W]=freqz(b,1,1024,Fs); % plot(W,20*log10(abs(H))); freqz(b,1,1024,fs);grid title('滤波器') grid %%%%%%%%%%%%%%%% fc=28; fcl1=50; fcl2=100; fcl3=150; N=1024; n=1:N; % x=2*cos(2*pi*fc/fs*n)+j*2*sin(2*pi*fc/fs*n)+cos(2*pi*fcl/fs*n)+j*sin(2*pi*fcl/fs*n)+1*r and(1,N); xc=2*cos(2*pi*fc/fs*n); x=2*cos(2*pi*fc/fs*n)+2*cos(2*pi*fcl1/fs*n)+2*cos(2*pi*fcl2/fs*n)+0.1*rand(1,N); % x=2*cos(2*pi*fc/fs*n); xfft=abs(fft(x,N));

数字信号处理实验报告一

武汉工程大学 数字信号处理实验报告 姓名:周权 学号: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('随机序列');

数字信号处理实验(吴镇扬)答案-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');

数字信号处理实验作业

实验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的围,频谱出现了镜像对称的部分。

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

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

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

西南交大数字信号处理报告

信息科学与技术学院本科三年级 数字信号处理实验报告 2011 年12 月21日

实验一 序列的傅立叶变换 实验目的 进一步加深理解DFS,DFT 算法的原理;研究补零问题;快速傅立叶变换 (FFT )的应用。 实验步骤 1. 复习DFS 和DFT 的定义,性质和应用; 2. 熟悉MATLAB 语言的命令窗口、编程窗口和图形窗口的使用;利用提供的 程序例子编写实验用程序;按实验内容上机实验,并进行实验结果分析;写出完整的实验报告,并将程序附在后面。 实验内容 1. 周期方波序列的频谱试画出下面四种情况下的的幅度频谱,并分析补零后,对信号频谱的影响。 实验结果: 60 ,7)4(;60,5)3(; 40,5)2(;20,5)1()] (~[)(~,2,1,01 )1(,01,1)(~=========±±=???-+≤≤+-+≤≤=N L N L N L N L n x DFS k X m N m n L m N L m N n m N n x ) 52.0cos()48.0cos()(n n n x ππ+=

2. 有限长序列x(n)的DFT (1) 取x(n)(n=0:10)时,画出x(n)的频谱X(k) 的幅度; (2) 将(1)中的x(n)以补零的方式,使x(n)加长到(n:0~100)时,画出 x(n)的频谱X(k) 的幅度; (3) 取x(n)(n:0~100)时,画出x(n)的频谱X(k) 的幅度。利用FFT 进行谱分析 已知:模拟信号 以t=0.01n(n=0:N-1)进行采样,求N 点DFT 的幅值谱。 请分别画出N=45; N=50;N=55;N=60时的幅值曲线。 实验结果: ) 8cos(5)4sin(2)(t t t x ππ+=

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

第二章上机作业 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

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

数字信号处理实验答案 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),绘出四个周期。

郑州大学数字信号处理课程设计报告

实验一:基于DFT的数字谱分析以及可能出现的问题 一、实验目的: 1.进一步加深对DFT的基本性质的理解。 2.掌握在MATLAB环境下采用FFT函数编程实现DFT的语句用法。 3.学习用DFT进行谱分析的方法,了解DFT谱分析中出现的频谱泄露和栅栏效应现 象,以便在实际中正确应用DFT。 二、实验步骤: 1.复习DFT的定义、物理含义以及主要性质。 2.复习采用DFT进行谱分析可能出现的三个主要问题以及改善方案。 3.按实验内容要求,上机实验,编写程序。 4.通过观察分析实验结果,回答思考题,加深对DFT相关知识的理解。 三、上机实验内容: 1.编写程序产生下列信号供谱分析用: 离散信号: x1=R10(n) x2={1,2,3,4,4,3,2,1},n=0,1,2,3,4,5,6,7 x3={4,3,2,1, 1,2,3,4},n=0,1,2,3,4,5,6,7 连续信号: x4=sin(2πf1t)+sin(2πf2t) f1=100Hz, f2=120Hz,采样率fs=800Hz 2.对10点矩形信号x1分别进行10点、16点、64点和256点谱分析,要求256点 频谱画出连续幅度谱,10点、16点和64点频谱画出离散幅度谱,观察栅栏效应。 3.产生信号x2和x3分别进行8点、16点谱分析,画出离散幅度谱,观察两个信 号的时域关系和幅度谱的关系。 4.对双正弦信号x4以采样率fs=800Hz抽样,生成离散双正弦信号并画出连续波形; 对离散双正弦信号进行时域截断,截取样本数分别为1000、250、50。对不同样本的双正弦信号分别进行1024点谱分析,画出连续幅度谱,观察频谱泄露现象。

习题集-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 ??? ??-=-+-?? ? ??-=δ则

数字信号处理实验报告

3.(1)用双线性变换法设计一个Chebyshev型高通滤波器程序如下 Rp=1.2;Rs=20;T=0.001;fp=300;fs=200; wp=2*pi*fp*T;ws=2*pi*fs*T; wp1=(2/T)*tan(wp/2);ws1=(2/T)*tan(ws/2); [n,wn]=cheb1ord(wp1,ws1,Rp,Rs,'s'); [b,a]=cheby1(n,Rp,wn,'high','s'); [bz,az]=bilinear(b,a,1/T); [db,mag,pha,grd,w]=freqz_m(bz,az);plot(w/pi,db); axis([0,1,-30,2]); 3.(2) a用双线性变换法设计一个Butterworth型数字低通滤波器程序如下Rp=1;Rs=25;T=0.001;fp=300;fs=200; wp=2*pi*fp*T;ws=2*pi*fs*T; wp1=(2/T)*tan(wp/2);ws1=(2/T)*tan(ws/2); [n,wn]=buttord(wp1,ws1,Rp,Rs,'s'); [b,a]=butter(n,wn,'low','s'); [bz,az]=bilinear(b,a,1/T); [db,mag,pha,grd,w]=freqz_m(bz,az);plot(w/pi,db); axis([0,1,-30,2]); b用脉冲响应不变法设计一个Butterworth数字低通滤波器的程序如下:wp=400*pi;ws=600*pi;Rp=1;Rs=25; [n,wn]=buttord(wp,ws,Rp,Rs,'s') [b,a]=butter(n,wn,'s') [db,mag,pha,w]=freqs_m(b,a,500*2*pi);

《数字信号处理》课程实验题目

计电学院《数字信号处理》课程实验 适用专业:电子通信工程专业;实验学时:9 学时 一、实验的性质、任务和基本要求 (一)本实验课的性质、任务 数字信号处理课程实验是数字信号处理课程的有效的补充部分,通过实验,使学生巩固和加深数字信号处理的理论知识的理解和掌握,在实验过程中了解简单但是完整的数字信号处理的工程实现方法和流程。通过实践进一步加强学生独立分析问题和解决问题的能力、实际动手能力、综合设计及创新能力的培养。 (二)基本要求 掌握数字信号处理基本理论知识和滤波器设计及应用。 (三)实验选项

二、实验教学内容 实验一 1、实验目的和要求 1)加深理解时域采样定理、体会使用MATLAB的离散FT函数fft( )来解决涉及模拟信号的问题; 2)加深理解对带通信号的采样特性,学会采用MATLAB解决该问题; 3)加深理解在频率采样法中,过渡点对所设计滤波器特性的影响。 2、实验要求 1)提供MATLAB程序,画出每个步骤的曲线图; 2)写实验报告,包含有对所得结果进行分析和说明。 第一组:张毅雷凌峰白法聪覃昱滔刘强何新文 第二组:邓志强林盛勇李日胜黎少锋梁聪杨晨 实验二 1、实验目的和要求 (1)加深理解采用数字信号处理方法对模拟信号处理的过程、掌握使用MATLAB处理的方法;对一段音乐信号进行处理和输出;要求画出滤波前后语音信号时域波形、信号和滤波器的幅度频率特性曲线、相位频率特性曲线; (2)加深对截断效应的理解; (3)掌握使用MATLAB设计滤波器,并对语音信号处理的方法。对一段音乐信号进行处理和输出;要求画出滤波前后语音信号时域波形、信号和滤波器的幅度频率特性曲线、相位频率特性曲线。 2、实验要求 1)提供MATLAB程序,画出每个步骤的曲线图; 2)写实验报告,包含有对所得结果进行分析和说明。 第九组:汪涛张汉毅巫金敏张经中柳泽举 第六组:罗涛梁乐杰黄乃生 实验三 1、实验目的和要求 掌握采用MATLAB数字滤波器设计软件编制方法。软件要求在界面内有不同类型(高通低通带通带阻)滤波器的选择、或者只对低通滤波器采用不同方法设

数字信号处理上机作业

数字信号处理上机作业 学院:电子工程学院 班级:021215 组员:

实验一:信号、系统及系统响应 1、实验目的 (1) 熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解。 (2) 熟悉时域离散系统的时域特性。 (3) 利用卷积方法观察分析系统的时域特性。 (4) 掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对连续信号、离散信号及系统响应进行频域分析。 2、实验原理与方法 (1) 时域采样。 (2) LTI系统的输入输出关系。 3、实验内容及步骤 (1) 认真复习采样理论、离散信号与系统、线性卷积、序列的傅里叶变换及性质等有关内容,阅读本实验原理与方法。 (2) 编制实验用主程序及相应子程序。 ①信号产生子程序,用于产生实验中要用到的下列信号序列: a. xa(t)=A*e^-at *sin(Ω0t)u(t) b. 单位脉冲序列:xb(n)=δ(n) c. 矩形序列: xc(n)=RN(n), N=10 ②系统单位脉冲响应序列产生子程序。本实验要用到两种FIR系统。 a. ha(n)=R10(n); b. hb(n)=δ(n)+2.5δ(n-1)+2.5δ(n-2)+δ(n-3) ③有限长序列线性卷积子程序 用于完成两个给定长度的序列的卷积。可以直接调用MATLAB语言中的卷积函数conv。 conv 用于两个有限长度序列的卷积,它假定两个序列都从n=0 开始。调用格式如下: y=conv (x, h) 4、实验结果分析 ①分析采样序列的特性。 a. 取采样频率fs=1 kHz,,即T=1 ms。 b. 改变采样频率,fs=300 Hz,观察|X(e^jω)|的变化,并做记录(打印曲线);进一步降低采样频率,fs=200 Hz,观察频谱混叠是否明显存在,说明原因,并记录(打印)这时的|X(e^j ω)|曲线。 程序代码如下: close all;clear all;clc; A=50; a=50*sqrt(2)*pi; m=50*sqrt(2)*pi; fs1=1000; fs2=300; fs3=200; T1=1/fs1; T2=1/fs2; T3=1/fs3; N=100;

相关文档
相关文档 最新文档