哈工大信号与系统实验电气学院.docx

上传人:b****5 文档编号:27891560 上传时间:2023-07-06 格式:DOCX 页数:24 大小:59.82KB
下载 相关 举报
哈工大信号与系统实验电气学院.docx_第1页
第1页 / 共24页
哈工大信号与系统实验电气学院.docx_第2页
第2页 / 共24页
哈工大信号与系统实验电气学院.docx_第3页
第3页 / 共24页
哈工大信号与系统实验电气学院.docx_第4页
第4页 / 共24页
哈工大信号与系统实验电气学院.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

哈工大信号与系统实验电气学院.docx

《哈工大信号与系统实验电气学院.docx》由会员分享,可在线阅读,更多相关《哈工大信号与系统实验电气学院.docx(24页珍藏版)》请在冰豆网上搜索。

哈工大信号与系统实验电气学院.docx

哈工大信号与系统实验电气学院

实验一常用连续时间信号的实现

1实验目的

(1)了解连续时间信号的特点;

(2)掌握连续时间信号表示的方法;

(3)熟悉MATLAB基本绘图命令的应用。

2实验原理

(1)信号的定义:

信号是带有信息的随时间变化的物理量或物理现象。

(2)信号的描述:

时域法和频域法。

(3)信号的分类:

信号的分类方法很多,可以从不同角度对信号进行分类。

在信号与系统分析中,根据信号与自变量的特性,信号可分为确定信号与随机信号,周期信号与非周期信号,连续时间信号与离散时间信号,能量信号与功率信号,时限与频限信号,物理可实现信号。

3涉及的MATLAB函数

(1)正弦信号;

(2)指数信号;

(3)单位冲激信号;

(4)单位阶跃信号;

(5)抽样信号。

4实验内容与方法

参考给出的程序并观察产生的信号,并通过改变相关参数(例如频率,周期,幅值,相位,显示时间段等),进一步熟悉这些工程实际与理论研究中常用信号的特征。

5实验要求

(1)在MATLAB中输入程序,验证实验结果,并将实验结果存入指定存储区。

(2)要求通过对验证性实验的练习,自行编制完整的程序,实现以下几种信号的模拟,并得出实验结果。

(1)

(2)

(3)

(4)

(5)

(3)在实验报告中写出完整的自编程序,并给出实验结果。

6实验结果

(1)

t=-1:

:

10;

程序和输出如下

y=heaviside(t);

plot(t,y);

axis([-1,10,,])

(3)

程序和输出如下

A=5;a=-1;b=-2;

t=0:

:

10;

ft=A*exp(a*t)-A*exp(b*t);

plot(t,ft)

(4)

程序和输出如下

A=100;B=2000;

t=0:

:

;

ft=cos(A*t)+cos(B*t);

plot(t,ft)

实验二常用LTI系统的频域分析

1.实验目的

(1)掌握连续时间信号傅里叶变换和傅里叶反变换的实现方法以及傅里叶变换的特性实现方法;

(2)了解傅立叶变换的特点及其应用;

(3)掌握MATLAB相关函数的调用格式及作用;

(4)掌握傅里叶变化的数值计算方法以及绘制信号频谱图的方法;

(5)能够应用MATLAB对系统进行频域分析。

2.实验原理

(1)傅里叶级数的三角函数形式

(2)傅立叶级数的指数形式

(3)非周期信号的傅里叶变换

3.涉及的MATLAB函数

(1)fourier函数;

(2)ifourier函数;

(3)quad8函数;(4)quad1函数;

(5)freds函数;

4.实验内容与方法

周期信号的傅里叶级数MATLAB实现;

利用MATLAB画出下图所示的周期三角波信号的频谱。

5.实验要求

(1)在MATLAB中输入程序,验证实验结果,并将实验结果存入指定存储区。

(2)在实验报告中写出完整的自编程序,并给出实验结果。

6.实验结果

实验程序如下

%三角波脉冲信号的傅里叶级数实现

N=10;

n1=-N:

-1;c1=-4*j*sin(n1*pi/2)/pi^2./n1.^2;

c0=0;

n2=1:

N;c2=-4*j*sin(n2*pi/2)/pi^2./n2.^2;

cn=[c1c0c2];n=-N:

N;

subplot211;stem(n,abs(cn));ylabel('Cn的幅度');

subplot212;stem(n,angle(cn));ylabel('Cn的相位');

xlabel('\omega/\omega_0')

输出频谱如下

实验三连续LTI系统的复频域分析

1.实验目的

(1)掌握连续时间信号拉普拉斯变换和拉普拉斯反变换的实现方法以及拉普拉斯变换的特性实现方法;

(2)了解拉普拉斯变换的特点及其应用;

(3)掌握MATLAB相关函数的调用格式及作用;

(4)能够应用MATLAB对系统进行复频域分析。

2.实验原理

(1)拉普拉斯变换

(2)拉普拉斯的收敛域

(3)拉普拉斯反变换计算方法

(4)微分方程的拉普拉斯变换解法

(5)系统函数H(s)

3.涉及的MATLAB函数

(1)residue函数

(2)laplace函数

(3)ilaplace函数

(4)ezplot函数

(5)roots函数

4.实验内容与方法

已知连续时间信号

,求出该信号的拉普拉斯变换,并用MATLAB绘制拉普拉斯变换的曲面图。

5.实验要求

(1)在MATLAB中输入程序,验证实验结果,并将实验结果存入指定存储区。

(2)在实验报告中写出完整的自编程序,并给出实验结果。

6.实验结果

程序如下

%绘制单边正弦信号拉普拉斯变换曲面图程序

clf;

a=:

:

;

b=:

:

;

[a,b]=meshgrid(a,b);

d=ones(size(a));

c=a+i*b;

c=c.*c;

c=c+d;

c=1./c;

c=abs(c);

mesh(a,b,c);

surf(a,b,c);

axis([,,-2,2,0,15]);

title('单边正弦信号拉普拉斯变换曲面图');

colormap(hsv);

输出结果如下

实验四离散时间信号的卷积和

1实验目的

(1)熟悉离散时间信号卷积的定义和表示以及卷积的结果;

(2)掌握利用计算机进行离散时间信号卷积运算的原理和方法;

(3)熟悉离散时间信号的相关计算方法;

(4)熟悉离散时间信号卷积运算函数dconv的应用。

2实验原理

(1)卷积的定义;

(2)卷积计算的几何解法;

(3)卷积积分的应用。

3涉及的MATLAB函数

(1)dconv函数;

(2)conv函数。

4实验内容与方法

(1)用MATLAB计算两个离散序列的卷积和,并绘制它们的时域波形;

(2)用MATLAB图解法计算两个离散序列的卷积和。

5实验要求

(1)在MATLAB中输入程序,验证实验结果,并将实验结果存入指定存储区域。

(2)要求通过对验证性实验的练习,自行编制完整的程序,实现以下几种情况的模拟,并得出实验结果。

已知序列1为

,序列2为

,分别计算和绘出下列信号的图形:

;②

(3)在实验报告中写出完整的自编程序,并给出实验结果。

6.实验结果

程序和输出如下

1.计算法

f1=[012345];

k1=[012345];

f2=[111111];

k2=[012345];

f=conv(f1,f2)

k0=k1

(1)+k2

(1);

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

k=k0:

k0+k3

subplot221

stem(k1,f1)

title('f1(k)')

xlabel('k')

ylabel('f1(k)')

subplot222

stem(k2,f2)

title('f2(k)')

xlabel('k')

ylabel('f2(k)')

subplot223

stem(k,f)

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

xlabel('k')

ylabel('f(k)')

h=get(gca,'position');

h(3)=*h(3);

set(gca,'position',h)

f=

0136101515141295

k=

012345678910

f1=[012345];

k1=[-5-4-3-2-10];

f2=[111111];

k2=[012345];

f=conv(f1,f2)

k0=k1

(1)+k2

(1);

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

k=k0:

k0+k3

subplot221

stem(k1,f1)

title('f1(k)')

xlabel('k')

ylabel('f1(k)')

subplot222

stem(k2,f2)

title('f2(k)')

xlabel('k')

ylabel('f2(k)')

subplot223

stem(k,f)

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

xlabel('k')

ylabel('f(k)')

h=get(gca,'position');

h(3)=*h(3);

set(gca,'position',h)

f=

0136101515141295

k=

-5-4-3-2-1012345

2.图解法

n=[-10:

10];

x=[000000000001234500000]

h=[000000000011111100000]

subplot321;stem(n,x,'*k');

subplot322;stem(n,h,'k');

n1=fliplr(-n);h1=fliplr(h);

subplot323;stem(n,x,'*k');holdon;stem(n1,h1,'k');

h2=[0,h1];h2(length(h2))=[];n2=n1;

subplot324;stem(n,x,'*k');holdon;stem(n2,h2,'k');

h3=[0,h2];h3(length(h3))=[];n3=n2;

subplot325;stem(n,x,'*k');holdon;stem(n3,h3,'k');

n4=-n;nmin=min(n1)-max(n4);nmax=max(n1)-min(n4);n=nmin:

nmax;

y=conv(x,h)

subplot326;stem(n,y,'.k');

n=[-10:

10];

x=[000000123450000000000]

h=[000000000011111100000]

subplot321;stem(n,x,'*k');

subplot322;stem(n,h,'k');

n1=fliplr(-n);h1=fliplr(h);

subplot323;stem(n,x,'*k');holdon;stem(n1,h1,'k');

h2=[0,h1];h2(length(h2))=[];n2=n1;

subplot324;stem(n,x,'*k');holdon;stem(n2,h2,'k');

h3=[0,h2];h3(length(h3))=[];n3=n2;

subplot325;stem(n,x,'*k');holdon;stem(n3,h3,'k');

n4=-n;nmin=min(n1)-max(n4);nmax=max(n1)-min(n4);n=nmin:

nmax;

y=conv(x,h)

subplot326;stem(n,y,'.k');

实验五常用LTI系统的频域分析

1.实验目的

(1)熟悉离散LTI系统在典型激励信号下的响应及其特征;

(2)掌握用卷积法计算离散时间系统的零状态响应;

(3)掌握MATLAB相关函数的调用格式及其作用;

(4)通过该实验,掌握应用MATLAB对系统进行频域分析基本方法。

2.实验原理

一般求解线性常系数差分方程有如下方法:

(1)迭代法

(2)经典法(3)零输入响应和零状态响应

(4)卷积计算法

3.涉及的MATLAB函数

(1)impz函数;(系统的冲激响应)

(2)filter函数.(求系统放入差分方程)

4.实验内容与方法

(1)已知离散时间系统差分方程,用MATLAB绘制单位响应波形;

(2)已知离散时间系统差分方程和系统输入序列,用MATLAB绘制输入序列的时域波形和系统的零状态响应波形;

(3)已知离散时间系统差分方程,用MATLAB绘制系统单位阶跃响应的时域波形;

(4)已知某LTI离散系统的单位响应,求该系统在给定激励下的零状态响应并绘制其时域波形图。

5.实验要求

(1)在MATLAB中输入程序,验证实验结果,并存入指定存储区域。

(2)要求通过对验证性实验的练习,自行编制完整的实验程序,实现求解以下系统要求,并得出实验结果。

①设

,输入

,求系统输出

②设离散系统可由下列差分方程表示:

试计算

时的系统冲激响应和阶跃响应。

(3)在实验报告中写出完整的自编程序,并给出实验结果。

6.实验结果

①程序如下

k1=0:

30

f1=.^k1;

k2=k1;

f2=zeros(1,length(k2));

f2([find((k2>=0)&(k2<10))])=1;

f=conv(f1,f2)

k0=k1

(1)+k2

(1);

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

k=k0:

k0+k3

subplot221

stem(k1,f1)

title('h(n)')

xlabel('k')

ylabel('f1(k)')

subplot222

stem(k2,f2)

title('f(n)')

xlabel('k')

ylabel('f2(k)')

subplot223

stem(k,f)

title('y(n)=f(n)*h(n)')

xlabel('k')

ylabel('f(k)')

h=get(gca,'position');

h(3)=*h(3);

set(gca,'position',h)

②程序如下

(1)冲击响应

程序如下

a=[1-1];

b=[1];

k=-20:

100;

x=[zeros(1,20),1,zeros(1,100)];

stem(k,x)

y=filter(b,a,x)

subplot211

stem(k,x)

title('输入序列')

xlabel('k')

ylabel('y(k)')

subplot212

stem(k,y)

title('响应序列')

xlabel('k')

ylabel('y(k)')

结果如下

(2)阶跃响应

a=[1-1];

b=[1];

k=-20:

101;

x=[zeros(1,20),1,ones(1,101)];

stem(k,x)

y=filter(b,a,x)

subplot211

stem(k,x)

title('输入序列')

xlabel('k')

ylabel('y(k)')

subplot212

stem(k,y)

title('响应序列')

xlabel('k')

ylabel('y(k)')

输出如下

实验六离散LTI系的Z域分析

1.实验目的

(1)掌握离散时间信号Z变换和Z反变换的实现方法及编程思想;

(2)掌握系统频率响应函数幅频特性、相频特性和系统函数的零极点图绘制方法;

(3)掌握用系统函数计算离散时间系统的响应;

(4)掌握MATLAB相关函数的调用格式及作用;

(5)通过该实验,了解利用零极图判断系统稳定性的原理。

2.实验原理

(1)Z变换的定义及其收敛域;

(2)Z反变换;

(3)利用Z变换求解差分方程;

(4)离散系统函数

3.涉及的MATLAB函数

(1)ztrans函数

(2)iztrans函数

(3)freqz函数(4)residuez函数

(5)zplane函数

4.实验内容与方法

(1)利用MATLAB实现Z变换和Z反变换;

(2)利用MATLAB绘制离散系统的零极图;

(3)利用MATLAB分析离散系统的零极图分布于系统单位响应时域特性的关系;

(4)利用MATLAB实现Z域的部分分时展开式。

5.实验要求

(1)在MATLAB中输入程序,验证实验结果,并将实验结果存入指定存储区域。

(2)要求通过对验证性实验的练习,自行编制完整的实验程序,实现求解以下系统要求,并得出实验结果:

①用MATLAB的residuez函数,求出下列各式的部分分时展开式和

②已知离散时间系统的差分方程为

,试用filter函数求系统的

1零状态输入响应2零状态响应3全响应

③已知离散系统的系统函数分别为

试用MATLAB实现下列分析过程:

求出系统的零极点位置;绘出系统的零极点图,根据零极点图判断系统的稳定性;绘出系统单位响应的时域波形,并分析系统稳定性与系统单位响应时域特性的关系。

④已知描述离散系统的差分方程为

试用MATLAB绘出该系统的零极点分布图,并绘出系统的幅频和相频特性曲线,分析系统的作用。

⑤已知因果(单边)离散序列的Z变换分别如下所示,试用MATLAB求出其Z反变换。

(3)在实验报告中写出完整的自编程序,并给出实验结果。

6.实验结果

程序如下

num=[216445632];

den=[33-1518-12];

[r,p,k]=residuez(num,den)

结果如下

r=

+

-

p=

+

-

k=

程序如下

num=[4];

den=[1-210665];

[r,p,k]=residuez(num,den)

结果如下

r=

+

-

-

+

p=

+

-

+

-

k=

零输入响应

程序如下

num=[2-1-3];

den=[2-1];

y0=[1,3];

N=50;

n=[0;N-1]';

x=0;

zi=filtic(num,den,y0);

[y,zf]=filter(num,den,x,zi);

plot(n,x,n,y,'b--');

title('零输入响应');

xlabel('n');ylabel('x(n)-y(n)');

legend('输入x','输出y',1);

grid;

结果如下

零状态响应

程序如下

num=[2-1-3];

den=[2-1];

y0=[0,0];

N=50;

n=[0;N-1]';

x=.^n;

zi=filtic(num,den,y0);

[y,zf]=filter(num,den,x,zi);

plot(n,x,n,y,'b--');

title('零状态响应');

xlabel('n');ylabel('x(n)-y(n)');

legend('输入x','输出y',1);

grid

结果如下

全响应

程序如下

num=[2-1-3];

den=[2-1];

y0=[1,3];

N=50;

n=[0;N-1]';

x=.^n;

zi=filtic(num,den,y0);

[y,zf]=filter(num,den,x,zi);

plot(n,x,n,y,'b--');

title('全响应');

xlable('n');ylable('x(n)-y(n)');

xlabel('n');ylabel('x(n)-y(n)');

legend('输入x','输出y',1);

grid

结果如下

程序如下

a=[200-1];

b=[1-2-1];

p=roots(a);

q=roots(b);

p=p'

q=q';

x=max(abs([pq1]));

x=x+;

y=x;

clf

holdon

axis([-xx-yy]);

axis([-xx-yy]);

w=0:

pi/300:

2*pi;

t=exp(i*w)

plot(t)

axis('square');

plot([-x,x],[0,0]);

plot([0,0],[-y,y]);

text,x,'jim[z]');

text(y,,'Re[z]');

plot(real(p),imag(p),'x');

plot(real(q),imag(q),'o');

title('pole-zerodiagramfordiscretesystem')

holdoff

结果和输出如下

p=

-+

q=

num=[1-2-1];

den=[200-1];

[H,w]=freqz(num,den)

plot(w,H,'*')

输出如下

程序如下

a=[4-1-1];

b=[1-1-1];

p=roots(a);

q=roots(b);

p=p'

q=q';

x=max(abs([pq1]));

x=x+;

y=x;

clf

holdon

axis([-xx-yy]);

w=0:

pi/300:

2*pi;

t=exp(i*w)

plot(t)

axis('square');

plot([-x,x],[0,0]);

plot([0,0],[-y,y]);

text,x,'jim[z]');

text(y,,'Re[z]');

plot(real(p),imag(p),'x');

plot(real(q),imag(q),'o');

title('pole-zerodiagramfordiscretesystem')

holdoff

结果和输出如下

p=

q=

den=[4-1-1];

num=[1-1-1]

[H,w]=freqz(num,den)

plot(w,H,'*')

输出如下

(1)

程序如下

F=sym('(z^2+z+1)/(z^2+z-2)');

f=iztrans(F);

f

结果如下

f=

(-2)^n/2-kroneckerDelta(n,0)/2+1

(2)

程序如下

F=sym('(2*z^2-z+1)/(z^3+z^2+*z)');

f=iztrans(F);

f

结果如下

f=

(-+*i)^(n-1)**i+*kroneckerDelta(n-1,0)-(--*i)^(n-1)**i-*kroneckerDelta(n,0)

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

当前位置:首页 > 教学研究 > 教学计划

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

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