MATLAB_实验5

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

MATLAB_实验5

实验5 MATLAB在信号与系统的应⽤

【实验⽬的】

1、了解并熟悉MATLAB实现常⽤连续时间信号的产⽣⽅法;连续系统的时域和频域分析⽅法。

2、掌握MATLAB程序的编程⽅法。

3、了解MATLAB信号处理⼯具箱函数的调⽤⽅法。

【实验内容】

1、对书上例题的总结

例1 绘制了单位冲激函数、单位阶跃函数与复指数函数的图形,⽤到的关键语句

单位冲激函数:x1=zeros(1,length(t)); %对所有信号初始化,t为时间

x1(n1)=1/dt; %给出t1时刻脉冲信号,dt为时间间隔

单位阶跃函数:x2 = [zeros(1,n1),ones(1,length(t)-n1)];%产⽣阶跃信

号,n1为t1对应的样本序号

例2 求解了LTI系统的零输⼊响应,⽤到了经典法求解,关键语句如下:

p=roots(a); %求系统的极点

V=rot90(vander(p));c= V\Y0'; % ⽤范德蒙特矩阵求对应于各极点的系数

for k=1:n y= y+c(k)*exp(p(k)*t);end

例3 求解n阶LTI系统的冲激响应,⽤到了residue函数求解极点和留数,还⽤到了for语句叠加各根分量。

例4 主要是卷积的计算。⽤到的函数有conv函数计算卷积,input函数等待⽤户输⼊数值,fliplr(h)函数将h左右翻转。

例5 求LTI系统的零状态响应,和求解零输⼊同样⽤到留数residue函数来求解冲激响应函数,并且绘制冲激响应函数的图形,然后将其与输⼊信号的卷积求出,即输出函数,最后绘制输出函数的图形。

例7 将周期⽅波分解为多次正弦波之和,⽤程序演⽰谐波合成情况。⽤到的新函数是line([0,pi+0.5],[pi/4,pi/4]) % 加上⽅波幅度线及标注

halft=ceil(length(t)/2);

mesh(t(1:halft),[1:10],y(:,1:halft)) %绘制三维图形

例10 ⽐较调幅信号通过带通滤波器后与原波形的区别。⽤到了频率响应函数求解滤波器在各个频点上的频率响应,可以⽤

H=polyval(b,j*w) ;也可以⽤H=freqs(b,a,w);可以再下图中观察到它们的去区别:

例11 ⾮周期信号(⽅波)的频谱分析,⽤到了傅⾥叶变换,F1 = f*exp(-j*t'*w1)*dt; % 求付利叶变换

w = [-fliplr(w1),w1(2:Nf)]; % 补上负频率

F = [fliplr(F1),F1(2:Nf)]; % 补上负频率区的频谱

2、连续信号表⽰:

编写程序:产⽣下列连续信号,并且绘制出相应的波形图:1)、()(2)(4)(26)

=-+- -≤≤

f t u t u t t

程序如下:

t=-2:0.05:6;

x1=t>=2;

x2=t>=4;

x=x1+x2;

stairs(t,x,'linewidth',1.5)

axis([-2,6,-0.1,2.1])

grid on

title('f(t)=u(t-2)+u(t-4)') xlabel('t') ylabel('f(t)')

图形显⽰:

2)、()c o s (4)(03)t ft e

t t π-= ≤≤

程序如下:

t=(0:0.01:3)';

x1=exp(-t)*[1 -1];%⽣成exp(-t)和-exp(-t),即包络曲线 x2=cos(4*pi*t); x=exp(-t).*x2; plot(t,x1,t,x) legend('x1','x1','x'),grid on

图形显⽰:

3)、(0.20.5)()3(04)j t

f t e

t ππ+= ≤≤ 程序如下:

t=0:pi/100:4*pi;

f=3*exp((0.2+j*0.5*pi)*t);

plot(t,f),grid

legend('f')

xlabel('t'),ylabel('f')

图形显⽰:

4)、周期矩形信号。⼀连续周期矩形信号频率为10Hz,信号幅度在-1~1之间,脉冲宽度与周期的⽐例是1:2,⽤128点采样,显⽰三个周期的信号波形(square 函数)。

程序如下:

U=1;N=128;f=10;T=1/f;t=0:T/N:3*T;

u=U*square(2*pi*f*t);

plot(t,u)

axis([0,3*T+eps,-1.1,1.1]),grid on

图形显⽰:

3、信号卷积求解: 1)、已知两信号分别为:

0.61()(010)t f e u t t -= <<

2()(015)f u t t = <<

求两信号的卷积和并画出卷积波形。程序如下: clear

t1=0:0.1:10; t2=0:0.1:15; f1=exp(-0.6*t1); f2=ones(1,length(t2));

tn=t1(length(f1))+t2(length(f2)); f=conv(f1,f2) t=0:0.1:tn;

subplot(3,1,1),plot(t1,f1),title('f1的图形') subplot(3,1,2),plot(t2,f2),title('f2的图形')

subplot(3,1,3),plot(t,f),title('f=conv(f1,f2)的图形') xlabel('t'),ylabel('f'),grid on

结果显⽰:

2)、已知两信号分别为:

f1(t)=0.5t (0

由于conv 求卷积时,两个函数的时间是从0开始求解的,所以对于该题不能直接

利⽤conv 函数来求解卷积,所以必须编写⼀个函数,函数可以从任意时刻开始求卷积,编写的Function 函数如下,命名为conv_m ,以便调⽤:

相关文档
最新文档