数字信号处理实验报告1.docx
《数字信号处理实验报告1.docx》由会员分享,可在线阅读,更多相关《数字信号处理实验报告1.docx(13页珍藏版)》请在冰点文库上搜索。
数字信号处理实验报告1
数字信号处理课程实验报告
课程名称:
数字信号处理
任课教师:
姚娜
机房:
逸夫楼
计算机编号:
实验日期:
2013.11.12
实验成绩:
实验班级:
通信15-1
学生姓名:
方刚
实验名称:
卷积和z变换
实验目的:
1、掌握离散序列的基本运算
2、掌握卷积的原理及应用
3、掌握z变换的应用
实验步骤与内容:
一、通过以下两个例子,了解常用离散序列的产生
1、单位抽样序列
n1=-5;n2=5;n0=0;
n=n1:
n2;
x=[n==n0];
stem(n,x,'filled');
axis([n1,n2,0,1.1*max(x)]);
title('单位脉冲序列');
xlabel('时间(n)');ylabel('幅度x(n)');
2、已知一时域周期性正弦信号的频率为1Hz,振幅值幅度为1v。
在窗口上显示2个周期的信号波形,并对该信号的一个周期进行32点采样获得离散信号。
试显示原连续信号和其采样获得的离散信号波形。
f=1;Um=1;nt=2;
N=32;T=1/f;
dt=T/N;
n=0:
nt*N-1;
tn=n*dt;
x=Um*sin(2*f*pi*tn);
subplot(2,1,1);plot(tn,x);
axis([0nt*T1.1*min(x)1.1*max(x)]);
ylabel('x(t)');
subplot(2,1,2);stem(tn,x);
axis([0nt*T1.1*min(x)1.1*max(x)]);
ylabel('x(n)');
实验任务:
编写程序实现
1.
2.
2.
n1=-5;n2=5;
n=n1:
n2;
subplot(1,1,1);stem(n,x0,'filled','k');
axis([n1,n2,1.1*min(x0),1.1*max(x0)]);
ylabel('u(n)');
3.一个连续的周期性三角波信号频率为50Hz,信号幅度在0-+2v之间,在窗口上显示2个周期的信号波形,对信号的一个周期进行16点采样来获得离散信号。
试显示原连续信号和采样获得的离散信号波形。
填写内容:
程序:
f=50;Um=2;nt=2;
N=16;T=1/f;
dt=T/N;
n=0:
nt*N-1;
tn=n*dt;
x=Um*sin(2*f*pi*tn);
subplot(2,1,1);plot(tn,x);
axis([0nt*T1.1*min(x)1.1*max(x)]);
ylabel('x(t)');
subplot(2,1,2);stem(tn,x);
axis([0nt*T1.1*min(x)1.1*max(x)]);
ylabel('x(n)');
实验结果:
思考:
采样频率、采样点数、采样时间间隔之间有什么联系?
二、通过以下两个例子,了解序列的基本运算
1、序列的移位
n1=-10;n2=10;
k0=0;k1=-6;k2=4;
n=n1:
n2;
x0=[n>=k0];
x1=[(n-k1)>=0];
x2=[(n-k2)>=0];
subplot(3,1,1);stem(n,x0,'filled','k');
axis([n1,n2,1.1*min(x0),1.1*max(x0)]);
ylabel('u(n)');
subplot(3,1,2);stem(n,x1,'filled','k');
axis([n1,n2,1.1*min(x1),1.1*max(x1)]);
ylabel('u(n+6)');
subplot(3,1,3);stem(n,x2,'filled','k');
axis([n1,n2,1.1*min(x2),1.1*max(x2)]);
ylabel('u(n-4)');
2.尺度变换
n=(0:
20)/20;
x=sin(2*pi*n);
x1=sin(2*pi*n*2);
x2=sin(2*pi*n/2);
subplot(3,1,1);stem(n,x,'filled');
ylabel('x(n)');
subplot(3,1,2);stem(n,x1,'filled');
ylabel('x(2n)');
subplot(3,1,3);stem(n,x2,'filled');
ylabel('x(n/2)');
实验任务:
实现下列信号序列:
1.
n1=-5;n2=5;
k0=0;k1=2;k2=-2;
n=n1:
n2;
x0=[n>=k0];
x1=[(n-k1)>=0];
x2=[(n-k2)>=0];
subplot(3,1,3);stem(n,x0,'filled','k');
axis([n1,n2,1.1*min(x0),1.1*max(x1+x2)]);
ylabel('x(n)');
subplot(3,1,1);stem(n,x1,'filled','k');
axis([n1,n2,1.1*min(x1),1.1*max(x1)]);
ylabel('u(n+2)');
subplot(3,1,2);stem(n,x2,'filled','k');
axis([n1,n2,1.1*min(x2),1.1*max(x2)]);
ylabel('u(n-2)');
2.已知信号
,显示
在区间
的波形。
填表:
实验程序:
实验结果:
三、了解卷积运算
nf1=0:
20;
f1=0.8.^nf1;
subplot(2,2,1);stem(nf1,f1,'filled');
title('f1(n)');
nf2=0:
10;
lf2=length(nf2);
f2=ones(1,lf2);
subplot(2,2,2);stem(nf2,f2,'filled');
title('f2(n)');
y=conv(f1,f2);
subplot(2,1,2);stem(y,'filled');
title('y(n)');
两个信号的表达式是什么?
实验任务:
实现以下信号的卷积:
1、
填表:
实验程序:
实验结果:
附加:
了解查看卷积的过程
clf;
nf1=0:
20;
f1=0.8.^nf1;
lf1=length(f1);
nf2=0:
10;
lf2=length(nf2);
f2=ones(1,lf2);
lmax=max(lf2,lf1);
iflf2>lf1nf2=0;nf1=lf2-lf1;
elseiflf2elsenf2=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);
fork=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]);holdon
pause
(1);
end