武汉工程大学数字信号处理实验二时域离散系统及系统响应
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验二时域离散系统及系统响应
一、实验目的
1、掌握求解离散时间系统冲激响应和阶跃响应的方法;
2、进一步理解卷积定理,掌握应用线性卷积求解离散时间系统响应的基本方法;
3、掌握离散系统的响应特点。
二、实验内容
1、请分别用impz 和dstep函数求解下面离散时间系统的冲激响应和阶跃响应。(1)系统的差分方程为:)
y
n
n
n
y
-
=
(n
-
+
y+
x
)2
.0
866
)
(
(
8.0
64
(
)1
.0
a=[1,-0.8,0.64];
b=[0.866,0,0];
n=20;
hn=impz(b,a,n); %冲激响应
gn=dstep(b,a,n); %阶跃响应
subplot(2,1,1),stem(hn,'filled'); %显示冲激响应曲线
title('系统的单位冲激响应');
ylabel('h(n)');xlabel('n');
axis([0,n,1.1*min(hn),1.1*max(hn)]);
subplot(2,1,2),stem(gn,'filled'); %显示阶跃响应曲线
title('系统的单位阶跃响应'); ylabel('g(n)');xlabel('n');
axis([0,n,1.1*min(gn),1.1*max(gn)]);
2
4
6
8
10121416
18
20
-0.4
-0.200.20.40.6
0.8系统的单位冲激响应
h (n )n
2
4
6
8
1012
14
16
18
20
11.21.4
1.6系统的单位阶跃响应
g (n )
n
(2)系统的系统函数为:2
11
15.01)(---+--=z
z z z H a=[1,-1,1]; b=[1,-0.5,0]; n=20;
hn=impz(b,a,n); %冲激响应 gn=dstep(b,a,n); %阶跃响应
subplot(2,1,1),stem(hn,'filled'); %显示冲激响应曲线 title('系统的单位冲激响应'); ylabel('h(n)');xlabel('n');
axis([0,n,1.1*min(hn),1.1*max(hn)]);
subplot(2,1,2),stem(gn,'filled'); %显示阶跃响应曲线 title('系统的单位阶跃响应'); ylabel('g(n)');xlabel('n');
axis([0,n,1.1*min(gn),1.1*max(gn)]);
2
4
6
8
10121416
18
20
-1-0.500.5
1系统的单位冲激响应
h (n )
n
2
4
6
8
1012
14
16
18
20
-0.5
00.51
1.5系统的单位阶跃响应
g (n )
n
2、运行例题2.3,理解卷积过程和程序中每一句的意义。
clf;
nf1=0:20; %f1µÄʱ¼äÏòÁ¿
f1=0.8.^nf1;
lf1=length(f1);
nf2=0:10; % f2µÄʱ¼äÏòÁ¿
lf2=length(nf2); %È¡f2µÄʱ¼äÏòÁ¿µÄ³¤¶È
f2=ones(1,lf2);
lmax=max(lf2,lf1);
if lf2>lf1 nf2=0;nf1=lf2-lf1;
elseif lf2 else nf2=0;lf1=0; end lt=lmax; u=[zeros(1,lt),f2,zeros(1,nf2),zeros(1,lt)]; t1=(-lt+1:2*lt); f1=[zeros(1,2*lt),f1,zeros(1,nf1)]; hf1=fliplr(f1); N=length(hf1); y=zeros(1,3*lt); for k=0:2*lt p=[zeros(1,k),hf1(1:N-k)]; y1=u.*p yk=sum(y1); y(k+lt+1)=yk; subplot(4,1,1);stem(t1,u); subplot(4,1,2);stem(t1,p); subplot(4,1,3);stem(t1,y1); subplot(4,1,4);stem(k,yk); axis([-20,50,0,5]);hold on pause(1); %Í£¶Ù1ÃëÖÓ end -20-1001020304050 5 3、利用第1题求得的系统冲激响应求解系统在激励)3 u n x下的响应。 (- =n ( ) a=[1,-0.8,0.64]; b=[0.866,0,0];