成都理工大学信号与系统实验报告资料.docx

上传人:b****1 文档编号:678015 上传时间:2022-10-12 格式:DOCX 页数:25 大小:251.79KB
下载 相关 举报
成都理工大学信号与系统实验报告资料.docx_第1页
第1页 / 共25页
成都理工大学信号与系统实验报告资料.docx_第2页
第2页 / 共25页
成都理工大学信号与系统实验报告资料.docx_第3页
第3页 / 共25页
成都理工大学信号与系统实验报告资料.docx_第4页
第4页 / 共25页
成都理工大学信号与系统实验报告资料.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

成都理工大学信号与系统实验报告资料.docx

《成都理工大学信号与系统实验报告资料.docx》由会员分享,可在线阅读,更多相关《成都理工大学信号与系统实验报告资料.docx(25页珍藏版)》请在冰豆网上搜索。

成都理工大学信号与系统实验报告资料.docx

成都理工大学信号与系统实验报告资料

信号运算及系统分析实验

摘要

实验的内容:

1、MATLAB应用基础

2、常用信号的表示与计算

3、系统时域分析及MATLAB实现

      4、连续系统的频域分析方法

5、连续系统的复频域分析方法

6、离散系统的Z域分析方法

采用的方法:

MATLAB

实验的目标:

让学生具备扎实的信号分析的基本方法和理论。

关键字:

信号的运算;傅里叶变换;拉普拉斯变换;Z变换;Matlab。

第1章信号的时域分析

1.1自定义函数

1.1.1第1个自定义函数

利用MATLAB绘出下列信号的时域波形。

解:

symstk

f1=sym('(t*t-1)*(heaviside(t+1)-heaviside(t-1))')

subplot(2,2,1)

ezplot(f1)

title('f1')

1.1.2

解:

f2=sym('exp(-t)*cos(10*pi*t)*(heaviside(t-1)-heaviside(t-2))')

subplot(2,2,2)

ezplot(f2)

title('f2')

1.1.3

解:

k=-5:

0.5:

5

f3=sin(pi*k/4).*heaviside(k)

subplot(2,2,3)

stem(f3,’filled’)

title('f3')

1.1.4

解:

f4=k.*heaviside(-k+2)

subplot(2,2,4)

stem(f4,’filled’)

title('f4')

1.2.1第2个自定义函数

已知信号波形,利用MATLAB绘出满足下列需求的信号波形。

解:

symst

f1=sym('t*heaviside(t)-t*heaviside(t-1)+heaviside(t-1)-heaviside(t-3)')

subplot(2,3,1),ezplot(f1)

title('f(t)')

f2=subs(f1,t,2-t)

subplot(2,3,2)

ezplot(f2)

title('f(2-t)')

1.2.2

解:

f3=subs(f1,t,2*t-2)

f4=-f3

subplot(2,3,3)

ezplot(f4)

title('f-(2t-2)')

1.2.3

解:

f5=subs(f1,t,t/3)*heaviside(3-t)

subplot(2,3,4)

ezplot(f5)

title('f(t/3)u(3-t)')

1.2.4

解:

f6=int(f1)

subplot(2,3,5)

ezplot(f6)

title('积分')

1.3.1第3个自定义函数

已知离散序列波形,试用MATLAB绘出满足下列需求的序列波形。

解:

symsk

k=-2:

3

f1=(k+3).*(heaviside(k+3)-heaviside(k))+3*(heaviside(k)-heaviside(k-4))

subplot(2,3,1)

stem(f1,'filled')

title('f(k)')

 

f2=subs(f1,k,k-2).*heaviside(k)

subplot(2,3,2)

stem(f2,'filled')

title('f(k-2)*u(k)')

1.3.2

解:

f3=subs(f1,k,-k)

subplot(2,3,3)

stem(f3,'filled')

title('f(-k)')

1.3.3

解:

f4=subs(f1,k,-k+2)

subplot(2,3,4)

stem(f4,'filled')

title('f(-k+2)')

1.3.4

解:

f5=subs(f1,k,k-2).*heaviside(k-2)

subplot(2,3,5)

stem(f5,'filled')

title('f(k-2)u(k-2)')

第2章系统时域分析及MATLAB实现

2.1自定义函数

2.1.1第1个自定义函数

已知连续信号f1(t)与f2(t),试利用MATLAB绘出f1(t)*f2(t)的时域波形。

解:

function[f,k]=sconv(f1,f2,k1,k2,p)

f=conv(f1,f2);

f=f*p;

k0=k1

(1)+k2

(2);

k3=length(f1)+length(f2)-2;

k=k0:

p:

k0+k3*p;

subplot(2,2,1)

plot(k1,f1)

title('f1(t)')

xlabel('t')

ylabel('f1(t)')

subplot(2,2,2)

plot(k2,f2)

title('f2(t)')

xlabel('t')

ylabel('f2(t)')

subplot(2,2,3)

plot(k,f);

h=get(gca,'position');

h(3)=2.5*h(3);

set(gca,'position',h)

title('f(t)=f1(t)*f2(t)')

xlabel('t')

ylabel('f(t)')

p=0.01;

k1=0:

p:

2;

f1=k1;

k2=k1;

f2=0.5*k2;

[f,k]=sconv(f1,f2,k1,k2,p)

2.1.2

已知序列f1(k)、f2(k),编写M文件求离散卷积和f1(k)*f2(k),并绘出其波形。

解:

function[f,k]=dconv(f1,f2,k1,k2)

f=conv(f1,f2);

k0=k1

(1)+k2

(1);

k3=length(f1)+length(f2)-2;

k=k0:

k0+k3;

subplot(2,2,1)

stem(k1,f1)

title('f1(k)')

xlabel('k')

ylabel('f1(k)')

subplot(2,2,2)

stem(k2,f2)

title('f2(k)')

xlabel('k')

ylabel('f2(k)')

subplot(2,2,3)

stem(k,f);

h=get(gca,'position');

h(3)=2.5*h(3);

set(gca,'position',h)

title('f(k)=f1(k)*f2(k)')

xlabel('k')

ylabel('f(k)')

f1=[0,1,2,3,3,3,3,0,0];

k1=-3:

5;

f2=[0,1,2,3,2,1,0];

k2=-3:

3;

[f,k]=dconv(f1,f2,k1,k2)

2.1.3

已知离散系统激励函数x(n)=δ(n+2)+2δ(n+1)+δ(n)+δ(n-1)+2δn-2),h(n)=δ(n+2),是利用MATLAB绘出该系统的零状态响应时域波形。

解:

function[f,k]=dconv(f1,f2,k1,k2)

f=conv(f1,f2);

k0=k1

(1)+k2

(1);

k3=length(f1)+length(f2)-2;

k=k0:

k0+k3;

subplot(2,2,1)

stem(k1,f1)

title('f1(k)')

xlabel('k')

ylabel('f1(k)')

subplot(2,2,2)

stem(k2,f2)

title('f2(k)')

xlabel('k')

ylabel('f2(k)')

subplot(2,2,3)

stem(k,f);

h=get(gca,'position');

h(3)=2.5*h(3);

set(gca,'position',h)

title('f(k)=f1(k)*f2(k)')

xlabel('k')

ylabel('f(k)')

f1=[1,2,1,1,2];

k1=-2:

2;

f2=[1];

k2=-2;

[f,k]=dconv(f1,f2,k1,k2)

2.1.4

已知系统的微分方程为:

y’’(t)+4y’(t)+3y(t)=x’(t)+2x(t),试用MATLAB完成下列各题;

(1)绘出该系统的单位冲击响应h(t);

(2)绘出该系统的单位阶跃响应g(t);

(3)若该系统输入输入信号x(t)=e-3tu(t),绘出此时系统的零状态响应波形。

解:

a=[143];

b=[012];

subplot(2,2,1)

impulse(b,a)

subplot(2,2,2)

step(b,a)

clf;

a=[143];

b=[012];

p1=0.6;

t1=0:

p1:

5;

p2=0.3;

t2=0:

p2:

5;

p3=0.005;

t3=0:

p3:

5;

x1=exp(-3*t1);

x2=exp(-3*t2);

x3=exp(-3*t3);

lsim(b,a,x1,t1)

text(0.5,-0.2,'p=0.6','color',[001])

holdon

lsim(b,a,x2,t2)

text(1.5,-0.02,'p=0.3','color',[00.70])

lsim(b,a,x3,t3)

text(0.01,-0.08,'p=0.01','color',[100])

holdoff

gridon

2.1.5

已知描述某离散系统的差分方程如下:

y(k)-3y(k-1)+2y(k-3)=x(k-1)+2x(k-2)

且知该系统的的输入序列为x(k)=(1/4)ku(k),试用MATLAB分析在0~20时间内的下列过程:

(1)绘出输入序列的时域波形;

(2)求出该系统输入序列为x(k)时的零状态响应样值;

(3)绘出该系统输入序列为x(k)时的零状态响应时域波形。

解:

a=[1-302];

b=[0120];

k=0:

20;

x=(1/4).^k;

dk=zeros(1,length(k));

dk

(1)=1;

uk=ones(1,length(k));

subplot(4,1,1)

stem(k,x)

title('输入序列x(k)')

ydk=filter(b,a,dk);

subplot(4,1,2)

stem(k,ydk)

title('单位冲击响应')

yuk=filter(b,a,uk);

subplot(4,1,3)

stem(k,yuk)

title('单位阶跃响应')

y=filter(b,a,x);

subplot(4,1,4)

stem(k,y)

title('激励信号为x(k)的零状态响应')

第3章连续系统的频域分析方法

3.1自定义函数

3.1.1第1个自定义函数

利用MATLAB实现f(t)=te-2tu(t)傅里叶变换,绘出其振幅谱和相位谱。

解:

symstwf

f=t*exp(-2*t)*sym('Heaviside(t)');

F=fourier(f)

omiga=-10:

10;

subplot(2,1,1);

ezplot(abs(F),[-10:

10]);

title('振幅谱')

subplot(2,1,2);

plot(omiga,angle(subs(F,'w',omiga)))

title('相位谱')

3.1.2

利用MATLAB实现F(jw)=-j*2w/(42+w2)的傅里叶变换并绘出其波形。

解:

symstw

F=-j*2*w/(4^2

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 考试认证 > 从业资格考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1