信号仿真实验

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

信号分析与处理实验报告

电气工程学院

09级自动化一班

李亚威

20090220115

【例9-7】:离散时间序列的卷积

实验目的:学会使用MA TLAB中提供的求卷积函数conv(), 即y=conv(x,h) 来求离散时间序列的卷积;

实验内容:

1、我们构造一新的函数conv_m(),可求任意两个有限序列的卷积。

函数程序为:

function[y,ny]=conv_m(x,nx,h,nh)

nyb=nx(1)+nh(1);

nye=nx(length(x))+nh(length(h));

ny=[nyb:nye];

y=conv(x,h);

2、设线性时不变系统的单位脉冲响应为h(n)=n)9.0(ε(n),输入序列

为x(n)= ε(n)-ε(n-10),求系统的输出y(n)。

程序如下:

>> nx=-4:40;

>> x=zeros(1,length(nx));

>> x(1,5:14)=1;

>> nh=0:40;

>> h=(0.9).^nh;

>> [y,ny]=conv_m(x,nx,h,nh);

>> subplot(3,1,1);stem(nx,x,'filled');axis([-4,40,0,1]);title('x[n]');

>> subplot(3,1,2);stem(nh,h,'filled');axis([-4,40,0,1]);title('h[n]');

>> subplot(3,1,3);stem(ny,y,'filled');axis([-4,40,0,8]);title('y[n]');

实验结果:执行程序,绘出系统的输入序列、脉冲响应和输出序列图形。

【例9-8】:连续时间信号的卷积

实验目的:研究连续时间信号的卷积,连续时间信号的卷积可通过数值卷积来实现。

实验内容:1、将参加卷积的两个连续信号以等间隔进行采样,得到两个离散序列,然后调用MA TLAB提供的卷积函数conv()

求解。

2、已知莫连续系统的单位冲激响应h(t)=t e5 ε(t),

输入信号x(t)=ε(t)-ε(t-1),求系统的零状态响应y(t).

程序如下:

>> p=0.01;

>> t=0:p:2;

>> x=heaviside(t)-heaviside(t-1);

>> h=exp(-5.*t);

>> h1=h*p;

>> y=conv(x,h1);

>> y=y(1:length(t));

>>subplot(3,1,1);plot(t,x);axis([-1,2,0,1.2]);title('x(t)');

>>subplot(3,1,2);plot(t,h);axis([0,2,0,1.2]);title('h(t));

>>subplot(3,1,3);plot(t,y);axis([0,2,0,0.22]);title('y(t)');

实验结果:如图所示:

【例9-18】:用MATLAB绘制周期信号的频谱

实验目的:学会用MATLAB来绘制周期信号的频谱,MATLAB提供了符号积分函数int(),int(x,t,a,b),式中:x为符号表达式;t为积分变量;

a和b分别为积分的下限和上限。

实验内容:1、周期矩形脉冲信号,若A=1,T=5s,τ=T/4=1.25s,试求其傅里叶系数

X,并绘制出频谱图。

K

程序如下:

>> syms t k;

>> T=5;tao=1.25;A=1;

>> x0=int(A,t,-tao/2,tao/2)/T

x0 =

1/4

>> x=A*exp(-j*k*2*pi/T*t);

>> xk=int(x,t,-tao/2,tao/2)/T;

>> xk=simple(xk)

xk =

sin((pi*k)/4)/(pi*k)

>> t=[-2*T:0.01:2*T];

>> x1=rectpuls(t,tao);

>> subplot(1,2,1);plot(t,x1)

>> hold on

>> x1=rectpuls(t-5,tao);

>> plot(t,x1)

>> hold on

>> x1=rectpuls(t+5,tao);

>> plot(t,x1)

>> hold off

>> title('周期矩形脉冲(tao=T/4)')

>> xlabel('t')

>> axis([-8,8,0,1.2])

>> k=[-20:-1,eps,1:20];

>> xk=subs(xk,k,'k');

>> subplot(1,2,2);stem(k,xk,'filled')

>> line([-20,20],[0,0])

>> title('周期矩形脉冲的频谱')

>> xlabel('k')

>> ylabel('Xk')

2、若减小脉冲宽度,令τ=T/8=0.625s,只需将原程序中的tao=0.625s。此时,执行结果

x0 =1/8

xk =sin((pi*k)/8)/(pi*k)

实验结果:如图:

τ=T/4=1.25s时:

相关文档
最新文档