当前位置:文档之家› 数字信号处理上机实验(丁玉美,高西泉版)1

数字信号处理上机实验(丁玉美,高西泉版)1

数字信号处理上机实验(丁玉美,高西泉版)1
数字信号处理上机实验(丁玉美,高西泉版)1

第十章 上机实验

数字信号处理是一门理论和实际密切结合的课程,为深入掌握课程内容,最好在学习理论的同时,做习题和上机实验。上机实验不仅可以帮助读者深入的理解和消化基本理论,而且能锻炼初学者的独立解决问题的能力。本章在第二版的基础上编写了六个实验,前五个实验属基础理论实验,第六个属应用综合实验。

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

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

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

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

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

实验六 应用实验——数字信号处理在双音多频拨号系统中的应用

任课教师根据教学进度,安排学生上机进行实验。建议自学的读者在学习完第一章后作实验一;在学习完第三、四章后作实验二和实验三;实验四IIR 数字滤波器设计及软件实现在。学习完第六章进行;实验五在学习完第七章后进行。实验六综合实验在学习完第七章或者再后些进行;实验六为综合实验,在学习完本课程后再进行。

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

1.实验目的

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

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

(3)分析、观察及检验系统的稳定性。 2.实验原理与方法

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

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

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

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

注意在以下实验中均假设系统的初始状态为零。 3.实验内容及步骤

(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 δδδδ

用线性卷积法分别求系统h 1(n)和h 2(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) 给定输入信号为

)4.0s i n ()014.0sin()(n n n x += 求出系统的输出响应,并画出其波形。

4.思考题

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

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

5.实验报告要求

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

(2)简述通过实验判断系统稳定性的方法。分析上面第三个实验的稳定输出的波形。 (3)对各实验所得结果进行简单分析和解释。 (4)简要回答思考题。

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

10.1.2 实验程序清单

%实验1:系统响应及系统稳定性 close all;clear all

%======内容1:调用filter 解差分方程,由系统对u(n)的响应判断稳定性====== A=[1,-0.9];B=[0.05,0.05]; %系统差分方程系数向量B 和A x1n=[1 1 1 1 1 1 1 1 zeros(1,50)]; %产生信号x1(n)=R8(n) x2n=ones(1,128); %产生信号x2(n)=u(n)

hn=impz(B,A,58); %求系统单位脉冲响应h(n)

subplot(2,2,1);y='h(n)';tstem(hn,y); %调用函数tstem 绘图 title('(a) 系统单位脉冲响应h(n)');box on

y1n=filter(B,A,x1n); %求系统对x1(n)的响应y1(n) subplot(2,2,2);y='y1(n)';tstem(y1n,y); title('(b) 系统对R8(n)的响应y1(n)');box on

y2n=filter(B,A,x2n); %求系统对x2(n)的响应y2(n) subplot(2,2,4);y='y2(n)';tstem(y2n,y);

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

%===内容2:调用conv 函数计算卷积============================ x1n=[1 1 1 1 1 1 1 1 ]; %产生信号x1(n)=R8(n) 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(h1n,y); %调用函数tstem 绘图 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); %调用函数tstem 绘图 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

%=========内容3:谐振器分析======================== un=ones(1,256); %产生信号u(n) n=0:255;

xsin=sin(0.014*n)+sin(0.4*n); %产生正弦信号

A=[1,-1.8237,0.9801];B=[1/100.49,0,-1/100.49]; %系统差分方程系数向量B 和A y31n=filter(B,A,un); %谐振器对u(n)的响应y31(n) y32n=filter(B,A,xsin); %谐振器对u(n)的响应y31(n) figure(3)

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

title('(h) 谐振器对u(n)的响应y31(n)');box on subplot(2,1,2);y='y32(n)';tstem(y32n,y);

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

10.1.3 实验程序运行结果及分析讨论

程序运行结果如图10.1.1所示。

实验内容(2)系统的单位冲响应、系统对)()(81n R n x =和)()(2n u n x =的响应序列分别如图(a)、(b)和(c)所示;

实验内容(3)系统h 1(n)和h 2(n)对)()(81n R n x =的输出响应分别如图(e)和(g)所示;

实验内容(4)系统对)(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 。

n

h (n )

(a) 系统单位脉冲响应

h(n)n

y 1(n )

(b) 系统对R8(n)的响应y1(n)

n

y 2(n )

(c) 系统对u(n)的响应y2(n)

n

h 1(n )

(d) 系统单位脉冲响应h1(n)

n

y 21(n )

(e) h1(n)与R8(n)的卷积y21(n)n

h 2(n )

(f) 系统单位脉冲响应

h2(n)

n

y 22(n )

(g) h2(n)与R8(n)的卷积y22(n)

n

y 31(n )

(h) 谐振器对u(n)的响应

y31(n)

n

y 32(n )

(i) 谐振器对正弦信号的响应y32(n)

图10.1.1

10.1.4 简答思考题

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

法求系统的响应。①对输入信号序列分段;②求单位脉冲响应h(n)与各段的卷积;③将各段卷积结果相加。具体实现方法有第三章介绍的重叠相加法和重叠保留法。

(2)如果信号经过低通滤波器,把信号的高频分量滤掉,时域信号的剧烈变化将被平滑,由实验内容(1)结果图10.1.1(a)、(b)和(c)可见,经过系统低通滤波使输入信号()n δ、

)()(81n R n x =和)()(2n u n x =的阶跃变化变得缓慢上升与下降。

10.2 实验二 时域采样与频域采样 10.2.1 实验指导

1. 实验目的

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

2. 实验原理与方法

时域采样定理的要点是:

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

)(?Ωj X

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

/2π=Ω)为周

期进行周期延拓。公式为:

)](?[)(?t x FT j X a

a =Ω

)(1∑∞

-∞

=Ω-Ω=n s a

jn j X

T

b) 采样频率s Ω必须大于等于模拟信号最高频率的两倍以上,才能使采样信号的

频谱不产生频谱混叠。

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

理想采样信号)(?t x

a 和模拟信号)(t x a 之间的关系为: ∑∞

-∞

=-=n a a nT t t x t x

)()()(?δ 对上式进行傅立叶变换,得到:

dt e

nT t t x j X t

j n a a

Ω-∞

-∞

-∞

=?

∑-=Ω])()

([)(?δ

dt e

nT t t x t

j n a Ω-∞

-∞

=∞

-∑

?

-)()( δ=

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

∑∞

-∞

=Ω-=Ωn nT

j a

a

e nT x

j X )()(?

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

∑∞

-∞

=-=Ωn n

j a

e

n x j X ω)()(?

上式的右边就是序列的傅立叶变换)(ωj e X ,即

T

j a

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

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

a) 对信号x(n)的频谱函数X(e

j ω

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

2()()

, 0,1,2,,1j N k

N

X k X e

k N ω

πω===-

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

()I D F T [()][()]

N N

N N

i x n X k x n i N

R n ∞

=-∞

==+∑ b) 由上式可知,频域采样点数N 必须大于等于时域离散信号的长度M(即N ≥M),才

能使时域不产生混叠,则N 点IDFT[()N X k ]得到的序列()N x n 就是原序列x(n),即

()N x n =x(n)。如果N>M ,()N x n 比原序列尾部多N-M 个零点;如果N

M 短,因此。()N x n 与x(n)不相同。

在数字信号处理的应用中,只要涉及时域或者频域采样,都必须服从这两个采样理论的

要点。

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

3. 实验内容及步骤

(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 的幅频特性曲线

现用DFT(FFT)求该模拟信号的幅频特性,以验证时域采样理论。

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

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

)()s i n ()()(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)频域采样理论的验证。

给定信号如下:

??

?

??≤≤-≤≤+=其它

02614271301)(n n

n n n x

编写程序分别对频谱函数()FT[()]j X e

x n ω

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

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

322

32

()()

, 0,1,2,31j k

X k X e

k ω

πω=

==

162

16

()()

, 0,1,2,15j 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 。

4.思考题:

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

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

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

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

10.2.2 实验程序清单

1 时域采样理论的验证程序清单 % 时域采样理论验证程序exp2a.m Tp=64/1000; %观察时间Tp=64微秒 %产生M 长采样序列x(n) % Fs=1000;T=1/Fs; Fs=1000;T=1/Fs; M=Tp*Fs;n=0:M-1;

A=444.128;alph=pi*50*2^0.5;omega=pi*50*2^0.5;

xnt=A*exp(-alph*n*T).*sin(omega*n*T);

Xk=T*fft(xnt,M); %M点FFT[xnt)]

yn='xa(nT)';subplot(3,2,1);

tstem(xnt,yn); %调用自编绘图函数tstem绘制序列图

box on;title('(a) Fs=1000Hz');

k=0:M-1;fk=k/Tp;

subplot(3,2,2);plot(fk,abs(Xk));title('(a) T*FT[xa(nT)],Fs=1000Hz');

xlabel('f(Hz)');ylabel('幅度');axis([0,Fs,0,1.2*max(abs(Xk))])

%=================================================

% Fs=300Hz和Fs=200Hz的程序与上面Fs=1000Hz完全相同。

2 频域采样理论的验证程序清单

%频域采样理论验证程序exp2b.m

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])

10.2.3 实验程序运行结果

1 时域采样理论的验证程序运行结果exp2a.m如图10.3.2所示。由图可见,采样序列的频谱的确是以采样频率为周期对模拟信号频谱的周期延拓。当采样频率为1000Hz时频谱混叠很小;当采样频率为300Hz时,在折叠频率150Hz附近频谱混叠很严重;当采样频率

为200Hz时,在折叠频率110Hz附近频谱混叠更很严重。

图10.2.2

2 时域采样理论的验证程序exp2b.m运行结果如图10.3.3所示。

图10.3.3

该图验证了频域采样理论和频域采样定理。对信号x(n)的频谱函数X(e

j ω

)在[0,2π]上等间

隔采样N=16时, N 点IDFT[()N X k ]得到的序列正是原序列x(n)以16为周期进行周期延拓后的主值区序列:

()ID FT[()][()]()N N N N i x n X k x n iN R n ∞

=-∞

==+∑

由于NM ,频域采样定理,所以不存在时域混叠失真,因此。()N x n 与x(n)相同。

10.2.4 简答思考题

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

()[()]()N N i x n x n iN R n ∞

=-∞

=+∑

再计算N 点DFT 则得到N 点频域采样: 2()DFT[()] =()

, 0,1,2,,1j N N N k

N

X k x n X e

k N ω

πω=

==-

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

10.3.1 实验指导

1.实验目的

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

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

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

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

3.实验步骤及内容

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

???

??≤≤-≤≤-=?

??

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

n n n n n x 其它n

n n n n n x n R n x ,

07

4,

330,4)(,074,830,1)()

()(3241

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

(2)对以下周期序列进行谱分析。

4()c o s 4

x n n π

=

5()c o s (/4)c o s (

/8)

x n n

n ππ=+

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

(3)对模拟周期信号进行谱分析

6()c o s 8c o s 16c o s 20

x t t t t πππ=+

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

4.思考题

(1)对于周期序列,如果周期不知道,如何用FFT 进行谱分析? (2)如何选择FFT 的变换区间?(包括非周期信号和周期信号)

(3)当N=8时,)(2n x 和)(3n x 的幅频特性会相同吗?为什么?N=16 呢? 5.实验报告要求

(1)完成各个实验任务和要求。附上程序清单和有关曲线。 (2)简要回答思考题。

10.3.2 实验程序清单

%第10章实验3程序exp3.m % 用FFT 对信号作频谱分析 clear all;close all

%实验内容(1)=================================================== x1n=[ones(1,4)]; %产生序列向量x1(n)=R4(n)

M=8;xa=1:(M/2); xb=(M/2):-1:1; x2n=[xa,xb]; %产生长度为8的三角波序列x2(n) x3n=[xb,xa];

X1k8=fft(x1n,8); %计算x1n的8点DFT

X1k16=fft(x1n,16); %计算x1n的16点DFT

X2k8=fft(x2n,8); %计算x1n的8点DFT

X2k16=fft(x2n,16); %计算x1n的16点DFT

X3k8=fft(x3n,8); %计算x1n的8点DFT

X3k16=fft(x3n,16); %计算x1n的16点DFT

%以下绘制幅频特性曲线

subplot(2,2,1);mstem(X1k8); %绘制8点DFT的幅频特性图

title('(1a) 8点DFT[x_1(n)]');xlabel('ω/π');ylabel('幅度');

axis([0,2,0,1.2*max(abs(X1k8))])

subplot(2,2,3);mstem(X1k16); %绘制16点DFT的幅频特性图

title('(1b)16点DFT[x_1(n)]');xlabel('ω/π');ylabel('幅度');

axis([0,2,0,1.2*max(abs(X1k16))])

figure(2)

subplot(2,2,1);mstem(X2k8); %绘制8点DFT的幅频特性图

title('(2a) 8点DFT[x_2(n)]');xlabel('ω/π');ylabel('幅度');

axis([0,2,0,1.2*max(abs(X2k8))])

subplot(2,2,2);mstem(X2k16); %绘制16点DFT的幅频特性图

title('(2b)16点DFT[x_2(n)]');xlabel('ω/π');ylabel('幅度');

axis([0,2,0,1.2*max(abs(X2k16))])

subplot(2,2,3);mstem(X3k8); %绘制8点DFT的幅频特性图

title('(3a) 8点DFT[x_3(n)]');xlabel('ω/π');ylabel('幅度');

axis([0,2,0,1.2*max(abs(X3k8))])

subplot(2,2,4);mstem(X3k16); %绘制16点DFT的幅频特性图

title('(3b)16点DFT[x_3(n)]');xlabel('ω/π');ylabel('幅度');

axis([0,2,0,1.2*max(abs(X3k16))])

%实验内容(2) 周期序列谱分析================================== N=8;n=0:N-1; %FFT的变换区间N=8

x4n=cos(pi*n/4);

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

X4k8=fft(x4n); %计算x4n的8点DFT

X5k8=fft(x5n); %计算x5n的8点DFT

N=16;n=0:N-1; %FFT的变换区间N=16

x4n=cos(pi*n/4);

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

X4k16=fft(x4n); %计算x4n的16点DFT

X5k16=fft(x5n); %计算x5n的16点DFT

figure(3)

subplot(2,2,1);mstem(X4k8); %绘制8点DFT的幅频特性图

title('(4a) 8点DFT[x_4(n)]');xlabel('ω/π');ylabel('幅度');

axis([0,2,0,1.2*max(abs(X4k8))])

subplot(2,2,3);mstem(X4k16); %绘制16点DFT的幅频特性图

title('(4b)16点DFT[x_4(n)]');xlabel('ω/π');ylabel('幅度');

axis([0,2,0,1.2*max(abs(X4k16))])

subplot(2,2,2);mstem(X5k8); %绘制8点DFT的幅频特性图

title('(5a) 8点DFT[x_5(n)]');xlabel('ω/π');ylabel('幅度');

axis([0,2,0,1.2*max(abs(X5k8))])

subplot(2,2,4);mstem(X5k16); %绘制16点DFT的幅频特性图

title('(5b)16点DFT[x_5(n)]');xlabel('ω/π');ylabel('幅度');

axis([0,2,0,1.2*max(abs(X5k16))])

%实验内容(3) 模拟周期信号谱分析===============================

figure(4)

Fs=64;T=1/Fs;

N=16;n=0:N-1; %FFT的变换区间N=16

x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T); %对x6(t)16点采样

X6k16=fft(x6nT); %计算x6nT的16点DFT

X6k16=fftshift(X6k16); %将零频率移到频谱中心

Tp=N*T;F=1/Tp; %频率分辨率F

k=-N/2:N/2-1;fk=k*F; %产生16点DFT对应的采样点频率(以零频率为中心)subplot(3,1,1);stem(fk,abs(X6k16),'.');box on %绘制8点DFT的幅频特性图

title('(6a) 16点|DFT[x_6(nT)]|');xlabel('f(Hz)');ylabel('幅度');

axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k16))])

N=32;n=0:N-1; %FFT的变换区间N=16

x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T); %对x6(t)32点采样

X6k32=fft(x6nT); %计算x6nT的32点DFT

X6k32=fftshift(X6k32); %将零频率移到频谱中心

Tp=N*T;F=1/Tp; %频率分辨率F

k=-N/2:N/2-1;fk=k*F; %产生16点DFT对应的采样点频率(以零频率为中心)subplot(3,1,2);stem(fk,abs(X6k32),'.');box on %绘制8点DFT的幅频特性图

title('(6b) 32点|DFT[x_6(nT)]|');xlabel('f(Hz)');ylabel('幅度');

axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k32))])

N=64;n=0:N-1; %FFT的变换区间N=16

x6nT=cos(8*pi*n*T)+cos(16*pi*n*T)+cos(20*pi*n*T); %对x6(t)64点采样

X6k64=fft(x6nT); %计算x6nT的64点DFT

X6k64=fftshift(X6k64); %将零频率移到频谱中心

Tp=N*T;F=1/Tp; %频率分辨率F

k=-N/2:N/2-1;fk=k*F; %产生16点DFT对应的采样点频率(以零频率为中心)subplot(3,1,3);stem(fk,abs(X6k64),'.'); box on%绘制8点DFT的幅频特性图

title('(6a) 64点|DFT[x_6(nT)]|');xlabel('f(Hz)');ylabel('幅度');

axis([-N*F/2-1,N*F/2-1,0,1.2*max(abs(X6k64))])

10.3.3 实验程序运行结果

实验3程序exp3.m运行结果如图10.3.1所示。

图10.3.1

程序运行结果分析讨论:

请读者注意,用DFT (或FFT )分析频谱,绘制频谱图时,最好将X(k)的自变量k 换算成对应的频率,作为横坐标便于观察频谱。

2, 0,1,2,,1k k k N N

πω=

=-

为了便于读取频率值,最好关于π归一化,即以/ωπ

作为横坐标。

1、实验内容(1)

图(1a )和(1b )说明14()()x n R n =的8点DFT 和16点DFT 分别是1()x n 的频谱

函数的8点和16点采样; 因为3288()

((3))()x n x n R n =+,所以,3()x n 与2()x n 的8点DFT 的模相等,

如图(2a )和(3a )。但是,当N=16时,3()x n 与2()x n 不满足循环移位关系,所

以图(2b )和(3b )的模不同。

2、实验内容(2),对周期序列谱分析

4()cos

4

x n n π

=的周期为8,所以N=8和N=16均是其周期的整数倍,得到正确

的单一频率正弦波的频谱,仅在0.25π处有1根单一谱线。如图(4b )和(4b )所示。

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

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

3、实验内容(3),对模拟周期信号谱分析

6()c o s 8c o s 16c o s 20

x t t t t πππ=+

+ 6()x t 有3个频率成分,1234,8,10f Hz f Hz f Hz ===。所以6()x t 的周

期为0.5s 。 采样频率12364168 6.4s

F Hz f f f ====。变换区间N=16时,观察

时间Tp=16T=0.25s ,不是6()x t 的整数倍周期,所以所得频谱不正确,如图(6a )所示。变换区间N=32,64 时,观察时间Tp=0.5s ,1s ,是6()x t 的整数周期,所以所得频谱正确,如图(6b )和(6c )所示。图中3根谱线正好位于4,8,10H z H z H z 处。变换区间N=64 时频谱幅度是变换区间N=32 时2倍,这种结果正好验证了用DFT 对中期序列谱分析的理论。

注意:

(1)用DFT (或FFT )对模拟信号分析频谱时,最好将X(k)的自变量k 换算成对应的模拟频率fk ,作为横坐标绘图,便于观察频谱。这样,不管变换区间N 取信号周期的几倍,画出的频谱图中有效离散谐波谱线所在的频率值不变,如图(6b )和(6c )所示。

11, 0,1,2,,1s k p

F f k k k k N N

N T

T =

=

=

=-

(2)本程序直接画出采样序列N 点DFT 的模值,实际上分析频谱时最好画出归一化幅度谱,这样就避免了幅度值随变换区间N 变化的缺点。本实验程序这样绘图只要是为了验证了用DFT 对中期序列谱分析的理论。

10.3.4 简答思考题

思考题(1)和(2)的答案请读者在教材3.?节找,思考题(3)的答案在程序运行结果分析讨论已经详细回答。 10.4

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

10.4.1 实验指导

1.实验目的

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

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

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

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

设计IIR 数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标; ②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。MATLAB 信号处理工具箱中的各种IIR 数字滤波器设计函数都是采用双线性变换法。

第六章介绍的滤波器设计函数butter 、cheby1 、cheby2 和ellip 可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器。本实验要求读者调用如上函数直接设计IIR 数字滤波器。

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

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

图10.4.1 三路调幅信号st 的时域波形和幅频特性曲线

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

提示:抑制载波单频调幅信号的数学表示式为

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

f c 对称的2个边带(上下边带),在专业课通信原理中称为双边带抑制载波 (DSB-SC) 调幅信号,简称双边带 (DSB) 信号。如果调制信号m(t)有直流成分,则()()cos(2)c s t m t f t π=就是一般的双边带调幅信号。其频谱图是关于载波频率f c 对称的2个边带(上下边带),并包含载频成分。

(3)编程序调用MATLAB 滤波器设计函数ellipord 和ellip 分别设计这三个椭圆滤波器,并绘图显示其幅频响应特性曲线。

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

4.信号产生函数mstg 清单 function st=mstg

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

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

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

fc1=Fs/10; %第1路调幅信号的载波频率fc1=1000Hz, fm1=fc1/10; %第1路调幅信号的调制信号频率fm1=100Hz fc2=Fs/20; %第2路调幅信号的载波频率fc2=500Hz fm2=fc2/10; %第2路调幅信号的调制信号频率fm2=50Hz fc3=Fs/40; %第3路调幅信号的载波频率fc3=250Hz, fm3=fc3/10; %第3路调幅信号的调制信号频率fm3=25Hz 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.实验程序框图如图10.4.2所示,供读者参考。

数字信号处理实验一

一、实验目的 1. 通过本次实验回忆并熟悉MATLAB这个软件。 2. 通过本次实验学会如何利用MATLAB进行序列的简单运算。 3. 通过本次实验深刻理解理论课上的数字信号处理的一个常见方法——对时刻n的样本附近的一些样本求平均,产生所需的输出信号。 3. 通过振幅调制信号的产生来理解载波信号与调制信号之间的关系。 二、实验内容 1. 编写程序在MATLAB中实现从被加性噪声污染的信号中移除噪声的算法,本次试验采用三点滑动平均算法,可直接输入程序P1.5。 2. 通过运行程序得出的结果回答习题Q1.31-Q1.33的问题,加深对算法思想的理解。 3. 编写程序在MATLAB中实现振幅调制信号产生的算法,可直接输入程序P1.6。 4. 通过运行程序得出的结果回答习题Q1.34-Q1.35的问题,加深对算法思想的理解。 三、主要算法与程序 1. 三点滑动平均算法的核心程序: %程序P1.5 %通过平均的信号平滑 clf; R=51; d=0.8*(rand(R,1)-0.5);%产生随噪声 m=0:R-1; s=2*m.*(0.9.^m);%产生为污染的信号 x=s+d';%产生被噪音污染的信号 subplot(2,1,1); plot(m,d','r-',m,s,'g--',m,x,'b-.');

xlabel('时间序号n');ylabel('振幅'); legend('d[n]','s[n]','x[n]'); x1=[0 0 x];x2=[0 x 0];x3=[x 0 0]; y=(x1+x2+x3)/3; subplot(2,1,2); plot(m,y(2:R+1),'r-',m,s,'g--'); legend('y[n]','s[n]'); xlabel('时间序号n');ylabel('振幅'); 2. 振幅调制信号的产生核心程序:(由于要几个结果,因此利用subplot函数画图) %程序P1.6 %振幅调制信号的产生 n=0:100; m=0.1;fH=0.1;fL=0.01; m1=0.3;fH1=0.3;fL1=0.03; xH=sin(2*pi*fH*n); xL=sin(2*pi*fL*n); y=(1+m*xL).*xH; xH1=sin(2*pi*fH1*n); xL1=sin(2*pi*fL1*n); y1=(1+m1*xL).*xH; y2=(1+m*xL).*xH1; y3=(1+m*xL1).*xH; subplot(2,2,1); stem(n,y); grid; xlabel('时间序号n');ylabel('振幅');title('m=0.1;fH=0.1;fL=0.01;'); subplot(2,2,2); stem(n,y1); grid; xlabel('时间序号n');ylabel('振幅');title('m=0.3;fH=0.1;fL=0.01;'); subplot(2,2,3); stem(n,y2); grid; xlabel('时间序号n');ylabel('振幅');title('m=0.3;fH=0.3;fL=0.01;'); subplot(2,2,4); stem(n,y3); grid;

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

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

实验一离散时间信号分析 一、实验目的 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 实验中所产生的正弦序列的频率是多少?是否是周期序列?

数字信号处理实验一

实验一 离散时间信号分析 班级 信息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)完成实验报告。 五、实验结果 六、实验总结

西电数字信号处理上机实验报告

数字信号处理上机实验报告 14020710021 张吉凯 第一次上机 实验一: 设给定模拟信号()1000t a x t e -=,t 的单位是ms 。 (1) 利用MATLAB 绘制出其时域波形和频谱图(傅里叶变换),估计其等效带宽(忽略谱分量降低到峰值的3%以下的频谱)。 (2) 用两个不同的采样频率对给定的()a x t 进行采样。 ○1()()15000s a f x t x n =以样本秒采样得到。 ()()11j x n X e ω画出及其频谱。 ○2()()11000s a f x t x n =以样本秒采样得到。 ()() 11j x n X e ω画出及其频谱。 比较两种采样率下的信号频谱,并解释。 (1)MATLAB 程序: N=10; Fs=5; T s=1/Fs; n=[-N:T s:N]; xn=exp(-abs(n)); w=-4*pi:0.01:4*pi; X=xn*exp(-j*(n'*w)); subplot(211) plot(n,xn); title('x_a(t)时域波形'); xlabel('t/ms');ylabel('x_a(t)'); axis([-10, 10, 0, 1]); subplot(212); plot(w/pi,abs(X)); title('x_a(t)频谱图'); xlabel('\omega/\pi');ylabel('X_a(e^(j\omega))');

ind = find(X >=0.03*max(X))*0.01; eband = (max(ind) -min(ind)); fprintf('等效带宽为%fKHZ\n',eband); 运行结果: 等效带宽为12.110000KHZ

数字信号处理实验

实验一 离散傅里叶变换(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)

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

文件名:tstem.m(实验一、二需要) 程序: f unction tstem(xn,yn) %时域序列绘图函数 %xn:被绘图的信号数据序列,yn:绘图信号的纵坐标名称(字符串)n=0:length(xn)-1; stem(n,xn,'.'); xlabel('n');ylabel('yn'); axis([0,n(end),min(xn),1.2*max(xn)]); 文件名:tplot.m(实验一、四需要) 程序: function tplot(xn,T,yn) %时域序列连续曲线绘图函数 %xn:信号数据序列,yn:绘图信号的纵坐标名称(字符串) %T为采样间隔 n=0;length(xn)-1;t=n*T; plot(t,xn); xlabel('t/s');ylabel(yn); axis([0,t(end),min(xn),1.2*max(xn)]); 文件名:myplot.m(实验一、四需要)

%(1)myplot;计算时域离散系统损耗函数并绘制曲线图。function myplot(B,A) %B为系统函数分子多项式系数向量 %A为系统函数分母多项式系数向量 [H,W]=freqz(B,A,1000) m=abs(H); plot(W/pi,20*log10(m/max(m)));grid on; xlabel('\omega/\pi');ylabel('幅度(dB)') axis([0,1,-80,5]);title('损耗函数曲线'); 文件名:mstem.m(实验一、三需要) 程序: function mstem(Xk) %mstem(Xk)绘制频域采样序列向量Xk的幅频特性图 M=length(Xk); k=0:M-1;wk=2*k/M;%产生M点DFT对应的采样点频率(关于pi归一化值) stem(wk,abs(Xk),'.');box on;%绘制M点DFT的幅频特性图xlabel('w/\pi');ylabel('幅度'); axis([0,2,0,1.2*max(abs(Xk))]); 文件名:mpplot.m(实验一需要)

数字信号处理实验1,2,3,4

实验一 连续时间系统的时域和频域分析相关MATLAB 函数1.设描述连续时间系统的微分方程为:)()()()()()()()(01)1(1)(01)1(1)(t f b t f b t f b t f b t y a t y a t y a t y a m m m m n n n n +'+++=+'+++---- 则可用向量和表示该系统,即 a b ] ,,,,[011a a a a a n n -=],,,,[011b b b b b m m -=注意,向量和的元素一定要以微分方程时间求导的降幂次序排列,且缺项要用0补齐。a b 如微分方程)()()(2)(3)(t f t f t y t y t y +''=+'+''表示该系统的向量为 ]2 3 1[=a ]1 0 1[=b (1)求解冲激响应:impulse()函数impulse()函数有以下四种调用格式: ① impulse(b,a) 该调用格式以默认方式绘制由向量和定义的连续时间系统的冲激响应的时域波形。a b ② impulse(b,a,t)该调用格式绘制由向量和定义的连续时间系统在时间范围内的冲激响应的时a b t ~0域波形。③ impulse(b,a, t1:p:t2)该调用格式绘制由向量和定义的连续时间系统在时间范围内,且以时间间a b 21~t t 隔均匀抽样的冲激响应的时域波形。p ④ y=impulse(b,a,t1:p:t2)该调用格式并不绘制系统冲激响应的波形,而是求出由向量和定义的连续时间系a b 统在时间范围内以时间间隔均匀抽样的系统冲激响应的数值解。21~t t p (2)求解阶跃响应:step()函数 step()函数也有四种调用格式:① step(b,a) ② step(b,a,t) ③ step(b,a, t1:p:t2) ④ y=step(b,a,t1:p:t2) 上述调用格式的功能与impulse()函数完全相同。

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

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

数字信号处理上机实验(第三版)

数字信号处理实验(Matlab) 实验一: 系统响应及系统稳定性 %实验1:系统响应及系统稳定性 close all;clear all %======内容1:调用filter解差分方程,由系统对u(n)的响应判断稳定性====== A=[1,-0.9];B=[0.05,0.05]; %系统差分方程系数向量B和A x1n=[1 1 1 1 1 1 1 1 zeros(1,50)]; %产生信号x1(n)=R8(n) x2n=ones(1,128); %产生信号x2(n)=u(n) hn=impz(B,A,58); %求系统单位脉冲响应h(n) subplot(2,2,1);y='h(n)';tstem(hn,y); %调用函数tstem绘图 title('(a)系统单位脉冲响应h(n)');box on y1n=filter(B,A,x1n); %求系统对x1(n)的响应y1(n) subplot(2,2,2);y='y1(n)';tstem(y1n,y); title('(b)系统对R8(n)的响应y1(n)');box on y2n=filter(B,A,x2n); %求系统对x2(n)的响应y2(n) subplot(2,2,4);y='y2(n)';tstem(y2n,y); title('(c)系统对u(n)的响应y2(n)');box on %===内容2:调用conv函数计算卷积============================ x1n=[1 1 1 1 1 1 1 1 ]; %产生信号x1(n)=R8(n) h1n=[ones(1,10) zeros(1,10)]; h2n=[1 2.5 2.5 1 zeros(1,10)];

数字信号处理实验报告一

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

数字信号处理实验三

实验三:离散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

数字信号处理上机实验答案(全)1

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

实验一 基于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 单位冲激序列

数字信号处理实验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))'); 单位脉冲响应曲线 幅频和相频特性曲线 第二题结果:

数字信号处理上机报告-一

数字信号处理上机报告-一

数字信号处理第一次上机实验报告 实验一: 设给定模拟信号()1000t a x t e -=,的单位是ms 。 (1) 利用MATLAB 绘制出其时域波形和频谱图(傅里叶变换),估计其等效带宽(忽略谱分量降低到峰值的3%以下的频谱)。 (2) 用两个不同的采样频率对给定的进行采样。 ○1 。 ○2 。 比较两种采样率下的信号频谱,并解释。 实验一MATLAB 程序: (1) N=10; Fs=5; Ts=1/Fs; n=[-N:Ts:N]; xn=exp(-abs(n)); w=-4*pi:0.01:4*pi; X=xn*exp(-j*(n'*w)); subplot(211) plot(n,xn); title('x_a(t)时域波形'); xlabel('t/ms');ylabel('x_a(t)'); t ()a x t ()()15000s a f x t x n =以样本秒采样得到。()()11j x n X e ω画出及其频谱()()11000s a f x t x n =以样本秒采样得到。()() 11j x n X e ω画出及其频谱

axis([-10, 10, 0, 1]); subplot(212); plot(w/pi,abs(X)); title('x_a(t)频谱图'); xlabel('\omega/\pi');ylabel('X_a(e ^(j\omega))'); ind = find(X >=0.03*max(X))*0.01; eband = (max(ind) -min(ind)); fprintf('等效带宽为 %fKHZ\n',eband); 运行结果:

数字信号处理实验报告(实验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;

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

本科生实验报告 实验课程数字信号处理基础 学院名称地球物理学院 专业名称地球物理学 学生姓名 学生学号 指导教师王山山 实验地点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

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

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

第十章上机实验 数字信号处理是一门理论和实际密切结合的课程,为深入掌握课程内容,最好在学习理论的同时,做习题和上机实验。上机实验不仅可以帮助读者深入的理解和消化基本理论,而且能锻炼初学者的独立解决问题的能力。本章在第二版的基础上编写了六个实验,前五个实验属基础理论实验,第六个属应用综合实验。 实验一系统响应及系统稳定性。 实验二时域采样与频域采样。 实验三用FFT对信号作频谱分析。 实验四 IIR数字滤波器设计及软件实现。 实验五 FIR数字滤波器设计与软件实现 实验六应用实验——数字信号处理在双音多频拨号系统中的应用 任课教师根据教学进度,安排学生上机进行实验。建议自学的读者在学习完第一章后作实验一;在学习完第三、四章后作实验二和实验三;实验四IIR数字滤波器设计及软件实现在。学习完第六章进行;实验五在学习完第七章后进行。实验六综合实验在学习完第七章或者再后些进行;实验六为综合实验,在学习完本课程后再进行。 functiontstem(xn,yn) %时域序列绘图函数 %xn:信号数据序列,yn:绘图信号的纵坐标名称(字符串) n=0:length(xn)-1; stem(n,xn,'.');boxon xlabel('n');ylabel(yn); axis([0,n(end),min(xn),*max(xn)]) 实验一: 系统响应及系统稳定性 1.实验目的 (1)掌握求系统响应的方法。 (2)掌握时域离散系统的时域特性。 (3)分析、观察及检验系统的稳定性。 2.实验原理与方法 在时域中,描写系统特性的方法是差分方程和单位脉冲响应,在频域可以用系统函数描述系统特性。已知输入信号可以由差分方程、单位脉冲响应或系统函数求出系统对于该输入信号的响应,本实验仅在时域求解。在计算机上适合用递推法求差分方程的解,最简单的方法是采用MATLAB语言的工具箱函数filter函数。也可

数字信号处理实验1认识实验

实验1认识实验-MATLAB语言上机操作实践 一、实验目的 ㈠了解MATLAB语言的主要特点、作用。 ㈡学会MATLAB主界面简单的操作使用方法。 ㈢学习简单的数组赋值、运算、绘图、流程控制编程。 二、实验原理 ㈠简单的数组赋值方法 MATLAB中的变量和常量都可以是数组(或矩阵),且每个元素都可以是复数。 在MATLAB指令窗口输入数组A=[1 2 3;4 5 6;7 8 9],观察输出结果。然后,键入:A(4,2)= 11 键入:A (5,:) = [-13 -14 -15] 键入:A(4,3)= abs (A(5,1)) 键入:A ([2,5],:) = [ ] 键入:A/2 键入:A (4,:) = [sqrt(3) (4+5)/6*2 –7] 观察以上各输出结果。将A式中分号改为空格或逗号,情况又如何?请在每式的后面标注其含义。 2.在MATLAB指令窗口输入B=[1+2i,3+4i;5+6i ,7+8i], 观察输出结果。 键入:C=[1,3;5,7]+[2,4;6,8]*i,观察输出结果。 如果C式中i前的*号省略,结果如何? 键入:D = sqrt (2+3i) 键入:D*D 键入:E = C’, F = conj(C), G = conj(C)’ 观察以上各输出结果, 请在每式的后面标注其含义。 3.在MATLAB指令窗口输入H1=ones(3,2),H2=zeros(2,3),H3=eye(4),观察输出结果。 ㈡、数组的基本运算 1.输入A=[1 3 5],B= [2 4 6],求C=A+B,D=A-2,E=B-A 2.求F1=A*3,F2=A.*B,F3=A./B,F4=A.\B, F5=B.\A, F6=B.^A, F7=2./B, F8=B.\2 *3.求B',Z1=A*B’,Z2=B’*A 观察以上各输出结果,比较各种运算的区别,理解其含义。 ㈢、常用函数及相应的信号波形显示 例1:显示曲线f(t)=2sin(2πt),(t>0) ⅰ点击空白文档图标(New M-file),打开文本编辑器。 ⅱ键入:t=0:0.01:3; (1) f=2*sin(2*pi*t); (2) plot(t,f); title(‘f(t)-t曲线’); xlabel(‘t’),ylabel(‘f(t)’);

数字信号处理基础实验报告 (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:频谱分析与显示 一、实验目的 初步认识频谱分析

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