信号与系统实验75042Word格式.docx

上传人:b****7 文档编号:22097306 上传时间:2023-02-02 格式:DOCX 页数:19 大小:149.15KB
下载 相关 举报
信号与系统实验75042Word格式.docx_第1页
第1页 / 共19页
信号与系统实验75042Word格式.docx_第2页
第2页 / 共19页
信号与系统实验75042Word格式.docx_第3页
第3页 / 共19页
信号与系统实验75042Word格式.docx_第4页
第4页 / 共19页
信号与系统实验75042Word格式.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

信号与系统实验75042Word格式.docx

《信号与系统实验75042Word格式.docx》由会员分享,可在线阅读,更多相关《信号与系统实验75042Word格式.docx(19页珍藏版)》请在冰豆网上搜索。

信号与系统实验75042Word格式.docx

2绘出下列复信号的实部、虚部、模和辐角随时间变化的曲线。

a=2+j*2;

f=exp(-a*t);

fr=real(f);

fi=imag(f);

F=abs(f);

Fi=angle(f)*180/pi;

Subplot(221)

plot(t,fr,'

b'

title('

实部'

Subplot(222)

plot(t,fi,'

虚部'

Subplot(223)

plot(t,F,'

模'

Subplot(224)

plot(t,Fi,'

相角'

3已知连续时间信号

,试用Matlab编程绘出下列信号的时域波形。

(2)

(5)习题1-12和1-13(分单双号做)

例解1:

f='

sin(pi*t)/t'

;

figure

(1)

ezplot(f,[-55])

sin(pi*(1-t/2))/(1-t/2)'

figure

(2)

ezplot(f,[-1014-13.5])

例解2:

t=-10:

f=sin(pi*t)./t;

t1=(1-t/2);

f1=sin(pi*t1)./t1;

plot(t,f,’b’,t,f1,’r’)

4信号的运算:

信号的尺度变换、翻转、平移(信号的尺度变换、翻转、平移,实际上是函数自变量的运算)。

试用Matlab编程先给出一原始信号,再对它进行尺度变换、翻转、平移运算,并绘出它们的时域波形.

实验二连续时间系统的时域分析

一、实验目的

1、掌握连续时间信号卷积及其MATLAB实现方法;

2、掌握连续系统的冲激响应、阶跃响应及其MATLAB实现方法;

3、掌握利用MATLAB求LTI系统响应的方法;

4、掌握利用MATLAB求函数卷积和解微分方程。

1、预习连续系统的卷积积分原理;

2、学习编程实现连续系统的卷积过程;

3、学习冲激响应及其函数impulse()的调用格式;

4、学习阶跃响应及其函数step()的调用格式。

1求信号零状态响应:

Matlab的lsim函数可对由微分方程描述的LTI连续系统的响应进行分析仿真。

该函数有两种调用格式:

lsim(sys,f,t,x0)和y=lsim(sys,f,t)其中,t表示时间范围的向量,f则是输入信号在向量t定义的时间点上的采样值,x0表示该系统的初始状态。

输入参量sys是由Matlab的tf函数根据描述系统的微分方程的系数生成的系统函数对象(TF对象)。

其调用格式为:

sys=tf(b,a)

调用tf函数生成系统函数对象sys,并用向量f和t定义了系统激励信号后,就可调用lsim函数对连续系统的响应进行仿真。

例已知描述某系统的微分方程为

当输入信号为

时,用Matlab进行系统零状态响应的求解,并画出其时域波形.

其理论解为:

a=[132];

b=[13];

sys=tf(b,a);

%定义系统函数对象

p=0.01;

%定义采样时间间隔

t=-1:

p:

%定义时间范围向量

%f=exp(-2*t).*(t>

%定义输入信号

f=1*(t>

y=lsim(sys,f,t);

plot(t,y,'

)%描绘系统零状态响应时域波形

holdon%在原来的图形上加画其它线条而不会把原来的图形覆盖掉

yr=(-2*exp(-t)+0.5*exp(-2*t)+1.5).*(t>

plot(t,yr,'

r--'

)%%描绘系统零状态响应时域波形(理论解)

单位阶跃响应'

(习题2-6)

              

(例2—8)

2信号的冲激响应和阶跃响应

Matlab的impulse函数可对由微分方程描述的LTI连续系统的冲激响应进行分析仿真。

该函数的调用格式:

y=impulse(sys,t).Matlab的step函数可对由微分方程描述的LTI连续系统的阶跃响应进行分析仿真。

y=step(sys,t).其中,t表示时间范围的向量,输入参量sys是由Matlab的tf函数根据描述系统的微分方程的系数生成的系统函数对象(TF对象)。

例已知描述某系统的微分方程为

,用Matlab进行系统阶跃响应的求解,并画出其时域波形.

a=[16116];

b=[102];

t=0:

y=step(sys,t);

plot(t,y);

习题2-9

3卷积运算

例求f1=1.*(u(t1-0.5)-u(t1-1.5))与f2=0.5*t2.*(u(t2)-u(t2-2))的卷积;

lconv.mM函数文件:

function[t,f]=lconv(f1,f2,t1,t2,dt)

f=conv(f1,f2);

f=f*dt;

t0=t1

(1)+t2

(1);

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

t=t0:

dt:

(t0+l*dt);

end

AAAAAAAAAAAAAAAAAAAAAA

M脚本文件:

dt=0.005;

%%%%%%%%%%%%%%%%定义f1_t1

t1=-1:

2;

f1=1.*(heaviside(t1-0.5)-heaviside(t1-1.5));

%%%%%%%%%%%%%%%定义f2_t2

t2=-1:

3;

f2=0.5*t2.*(heaviside(t2)-heaviside(t2-2));

%%%%%%%%%%%%%%%%%%%%

[t,f]=lconv(f1,f2,t1,t2,dt);

%调用自定义lconv函数

subplot(221)

plot(t1,f1)

axis([min(t1),max(t1),min(f1)-min(f1)*0.2,max(f1)+max(f1)*0.2])

f1(t)'

xlabel('

t'

subplot(222)

plot(t2,f2)

axis([min(t2),max(t2),min(f2)-min(f2)*0.2,max(f2)+max(f2)*0.2])

f2(t)'

subplot(212)

plot(t,f)

axis([min(t),max(t),min(f)-min(f)*0.2,max(f)+max(f)*0.2])

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

求                      (书P63页)的卷积;

习题2-19(分单双号选做2小题)

实验三傅里叶变换

1傅里叶变换

如果连续时间信号f(t)可用符号表达式表示,则可利用Matlab提供的fourier函数直接求出其傅立叶变换(方法1)。

该函数常用的调用格式有三种:

F=fourier(f);

F=fourier(f,v);

F=fourier(f,u,v);

与上变换对应的逆变换也有三种常用的调用格式:

f=ifourier(F);

f=ifourier(F,u);

f=ifourier(F,v,u);

连续时间信号f(t)傅立叶变换的数值近似方法(方法2):

傅立叶变换可以表示为

对绝大数信号,当

足够小时上式的近似情况可以满足实际需要。

是时限信号,或当

大于某个给定值时

的值已衰减很厉害(可近似看作是时限的)。

则上式可变为

对角频率

进行离散化,得到N个角频率采样点,描绘幅频特性曲线。

例1.求

的傅立叶变换(方法1)。

symstv%定义符号变量tv

f=exp(-1.5*abs(t));

F=fourier(f);

%F=fourier(f,t,v);

subplot(211)

axis([-11-0.21.2])

ezplot(abs(F),[-55])

axis([-5501.5])

例2.求f=u(t+1.5)-u(t-1.5)的傅立叶变换。

%数值近似方法(方法2):

dt=0.01;

Nt=5;

t=-Nt:

Nt;

f=heaviside(t+1.5)-heaviside(t-1.5);

Nw=20;

dw=0.05;

w=-Nw:

dw:

Nw;

F=zeros(1,length(w));

fork=1:

length(w)

F(k)=dt*exp(-j*w(k)*t)*f'

end

时域信号f(t)'

axis([-5501.2])

plot(w,abs(F))

频谱图F(jw)'

axis([-NwNw03])

求下面典型非周期信号的傅里叶变换,写出傅里叶变换的表达式并画出其频谱图(同时用方法1与方法2):

单边指数信号:

               

双边指数信号:

矩形脉冲信号:

 

习题3-24,3-15

2傅里叶逆变换:

的傅里叶逆变换的表达式,并画出时域波形图.

symstw%定义符号变量tw

F=1/(1+W^2);

f=ifourier(F);

实验四拉普拉斯变换

已知连续系统的系统函数为H(s),可利用Matlab控制工具箱提供的tf函数、pole函数(计算系统极点)、zero函数(计算系统零点)和pzmap函数(绘制零、极点分布图)、laplace函数(拉普拉斯变换),ilaplace函数(拉普拉斯逆变换)。

1.求下面函数的拉普拉斯变换:

例symstaw

F1=laplace(heaviside(t))

F2=laplace(exp(-a*t))

F3=laplace(t^3)

F4=laplace(sin(w*t)

2求下面函数的拉普拉斯逆变换:

习题4-4(分单双号各做任选4道小题)

例函数          (书例4-8)的拉普拉斯逆变换。

symss;

f=ilaplace(10*(s+2)*(s+5)/s/(s+1)/(s+3))

例函数          (书例4-9)的拉普拉斯逆变换。

b=[1,5,9,7];

a1=[1,1];

a2=[1,2];

a=conv(a1,a2);

%计算分母多项式的系数

[r,p,k]=residue(b,a)%部分分式展开,得到系数r,极点p和自由项k

f=ilaplace(s+2+2/(s+1)-1/(s+2));

3连续时间系统的零,极点分析与MATLAB实现

求出

系统函数的零、极点,并绘出其零、极点分布图,并绘制出对应的冲激响应h(t)的时域波形,观察分析系统函数零点位置对冲激响应时域波形的影响。

例b=[0.0400];

a=[0.040.42];

H=tf(b,a);

pzmap(H);

p=pole(H);

z=zero(H);

实验五 傅立叶变换的应用

1、加深对系统的频率特性的理解;

2、加深理解连续时间信号离散化过程中的数学概念和物理概念;

3、掌握对连续时间信号进行抽样和恢复的基本方法;

4、通过实验验证抽样定理。

二、实验内容

1.Matlab提供了专用函数freqs来实现连续系统频率响应H(jω)的分析。

该函数有四种调用格式:

H=freqs(b,a,w)[H,w]=freqs(b,a)[H,w]=freqs(b,a,N)freqs(b,a)

写出习题4-38中各情况下的连续系统频率响应H(jω),并进行频率特性分析,画出其幅频响应和相频响应特性曲线.对例题4-20和4-21中的RC取恰当的值后,对它们分别进行频率特性分析,并画出幅频响应和相频响应特性曲线.

b=[0.0400];

freqs(b,a);

2、为了观察连续信号时域抽样时,抽样频率对抽样过程的影响,在[0,0.1]

区间上以50Hz的抽样频率对下列

信号分别进行抽样,试画出抽样后序列的波形,并分析产生不同波形的原因,提出改进措施并实施。

例t0=0:

0.001:

0.1;

X0=cos(2*pi*20*t0);

Plot(t0,x0);

Holdon

Fs=50;

1/fs:

x=cos(2*pi*20*t0);

stem(t,x);

holdoff;

3.理想时域采样可分为:

过采样(频谱周期拓展无频率混叠现象)和欠采样(频谱周期拓展有频率混叠现象).

读并由Matlab仿真下面的程序,然后回答下面的程序完成了什么工作?

采样过程是过采样还是欠采样?

哪些参数决定它的采样性质?

是如何决定的?

请你改变这些参数观察程序的仿真结果,验证你的理论。

例求cos(2*pi*0.2*t)的采样信号频谱:

clc

clear

Nt=20;

Ts=1.0;

f=cos(2*pi*0.2*t);

%频率为0.2Hz临界采样频率为0.4Hz

Nw=3*pi*1;

dw=0.02;

%axis([-55-0.11.1])

plot(w/(2*pi),abs(F),'

holdon

E=2;

tao=0.3;

ws=2*pi/Ts;

%tao必须小于Ts

N=2;

forn=-N:

N

plot((w+n*ws)/(2*pi),1/Ts*abs(F),'

r'

)%理想抽样

plot((w+n*ws)/(2*pi),(E*tao)/Ts*abs(sinc(n*ws*tao/(2*pi)))*abs(F),'

)%零阶保持抽样

4信号的重构:

如何才能实现信号的重构?

哪些参数决定重构的实现?

例由Sa(t)的采样信号Sa(nTs)恢复出其原始信号。

%Ts小于等于1.0

ts=-Nt:

Ts:

f=sinc(t/pi);

fs=sinc(ts/pi);

%采样信号fs

fr=zeros(1,length(t));

wc=ws/2;

length(t)

fr(k)=sinc((wc/pi)*(t(k)-ts))*fs'

plot(t,f,'

r:

'

实验六离散时间信号的时域分析

熟悉MATLAB软件的使用,了解离散时间信号的特点,掌握离散信号的表示方法,并熟

悉用MATLAB产生和实现离散信号。

离散时间信号指在时间自变量上是离散的,只在某些不连续的规定时刻给出函数值,其

他时刻没有定义,通常用f(kT)或

表示,k表示离散时间变量。

常见的离散时间信号有:

指数序列、正弦序列、单位脉冲序列、单位阶跃序列等。

1利用Matlab绘出下列离散序列的时域波形。

例解法1单位样值信号

的表示。

解1:

n=-2:

4;

x=(n==0);

stem(n,x,'

filled'

title(‘单位样值信号’)

n'

);

ylabel('

x(n)'

解法2:

dwxl.m文件

functiony=dwxl(n)

y=(n==0);

另建.m文件

x=dwxl(n);

stem(n,x,’filled’)

xlabel(‘n’);

ylabel(‘x(n)’);

例 单位阶跃序列

du.m文件

functiony=du(n)

y=(n>

8;

x=du(n);

title(‘单位阶跃序列’)

2.LTI离散时间系统的响应:

调用filter函数(离散时间系统仿真,数字滤波器):

y=filter(b,a,x)

例已知LTI离散系统为

绘出输入序列为

的系统相应的零状态响应。

a=[6-52];

b=[101];

n=0:

20;

x=(3/4).^n;

y=filter(b,a,x);

stem(n,x,‘filled’)

title(‘输入序列x(n)’)

stem(n,y,‘filled’)

title(‘输出序列y(n)’)

LTI离散时间系统的单位序列响应:

impz函数(计算单位样值响应):

impz(b,a,N1:

N2)

例求上例中系统的单位序列响应。

impz(b,a,-10:

30)

title(‘h(n)’)

已知LTI离散系统为

(例7-10);

绘出系统的零状态响应。

绘出系统的零状态响应.

实验七离散时间系统的Z域分析

1利用Matlab的符号运算实现z变换(单边):

调用ztrans函数的命令格式:

X=ztrans(x)和X=ztrans(x,w)

求下列信号的单边z变换:

要求写出信号的单边z变换的表达式

例解:

symsn

x=(1/2)^n;

X=ztrans(x)

2求下列信号的的逆变换。

要求写出所求信号的表达式。

(1)X=2z/(2z-1)     (2)  

(3)          (4)

利用Matlab的符号运算实现z逆变换。

调用iztrans函数的命令格式:

x=iztrans(X)和x=iztrans(X,w)

例解:

symsz

X=2*z/(2*z-1);

x=iztrans(X);

3绘制离散系统零极点分布图。

利用函数zplane绘制离散系统零极点分布图,其调用格式为:

zplane(num,den)

例描绘离散系统的零极点分布图。

    (2)

num=[135];

den=[184];

4传递函数模型与零、极点增益模型之间的转换

函数tf2zp的调用格式:

[z,p,k]=tf2zp(num,den)

函数zp2tf的调用格式:

[num,den]=zp2tf(z,p,k)

例转换

为零极点增益模型。

[z,p,k]=tf2zp(num,den);

[n,d]=zp2tf(z,p,k);

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

当前位置:首页 > 高等教育 > 教育学

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

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