信号与系统实验指导书 实验八连续时间LTI系统的复频域分析 一、实验目的 1、学会运用MATLAB实现拉普拉斯变换、拉普拉斯逆反变换。 2、学会运用MATLAB进行连续系统的复频域分析的基本实现方法 二、实验原理 当不满足狄氏条件时,傅立叶变换存在一定的局限性出现8(⊙)项,为改善时间信号 的收敛性,考虑在时域加上一个衰减因子e网,傅氏变换则修改为如下形式: f(t)e-e-udt=f(t)edr 0 令o+j0=s即为定义的单边拉氏变换。 拉普拉斯正变换:f】=F(s)=「f)ed 0 拉普拉斯逆正变换:f()= 1"frords 2列 有了衰减因子ε·的作用,使得初等函数的单边拉氏变换都存在,因而它真正能将时域 的微积分运算变为频域的代数运算。 拉普拉斯变换的基本性质: 1、线性性质: 若:[f)=F(s)、[f】=F(s),k、k:为常数 则:[kf)+kf5()】=kE(s)+k,F(S) 2、时域平移: 若:f】=Fs)则:fu-o)ut-o】=eF(s) 3、s域平移:若:f(u)】=F(s)则:f)e]=F(s+a) 4、尺度变换:若:fu=F)则:fa=Fa0 aa 5、原函数积分性质:
信号与系统实验指导书 -1- 实验八 连续时间 LTI 系统的复频域分析 一、实验目的 1、学会运用 MATLAB 实现拉普拉斯变换、拉普拉斯逆反变换。 2、学会运用 MATLAB 进行连续系统的复频域分析的基本实现方法 二、实验原理 当不满足狄氏条件时,傅立叶变换存在一定的局限性出现 δ(ω)项,为改善时间信号 的收敛性,考虑在时域加上一个衰减因子 t e ,傅氏变换则修改为如下形式: 0 0 ( ) f (t)e e dt f (t)e dt t jt j 令 j s 即为定义的单边拉氏变换。 拉普拉斯正变换: 0 £[ f (t)] F(s) f (t)e dt st 拉普拉斯逆正变换: j j st F s e ds j f t ( ) 2 1 ( ) 有了衰减因子 e −σt的作用,使得初等函数的单边拉氏变换都存在,因而它真正能将时域 的微积分运算变为频域的代数运算。 拉普拉斯变换的基本性质: 1、线性性质: 若: £[ ( )] ( ) 1 1 f t F s 、£[ ( )] ( ) 1 1 f t F s ,k1、k2为常数 则: £[ ( ) ( )] ( ) ( ) 1 1 2 2 1 1 2 2 k f t k f t k F s k F s 2、时域平移: 若: £[ f (t)] F(s) 则: £[ ( ) ( )] ( ) 0 0 0 f t t u t t e F s st 3、 S 域平移:若: £[ f (t)] F(s) 则: £[ ( ) ] ( ) f t e F s t 4、尺度变换:若: £[ f (t)] F(s) 则: ( ) 1 £[ ( )] a s F a f at a>0 5、原函数积分性质:
信号与系统实验指导书 若:/1=Fs)则:fe=F+'O 6、原函数微分性质 者:o1=Fo)则:号01=F)-/0) 7、象函数的微分性质: 若:f】=F(s)则:-】=F'(s)则:[(-)”f】=Fm(s) 8、象函数的积分性质:r/凹]=「F(wd山 9、初值定理:f(O)=lim sF(s) 10、终值定理: limf())=limsF(s) 11、卷积定理:f(t】=E(s)、f(t】=F(s)则:f(0)*f5(]=F(s)F(s) 拉普拉斯逆变换的求解 1、部分分式分解法: 0器冷-8a 名词定义:零点:F(s)的分子多项式A(s)的根: 极点:F(s)的分母多项式B(s)的根p,: 系统函数H6)=R E(s) 时域分析的系统零状态响应为: r(t)=h(t)*e(t) 根据卷积定理其变换式为: R(s)=H(s)E(s) H(s)=Bs) KS" A(s)s-p s-P2 +.s-p L.residue函数 功能:按留数法,求部分分式展开系数。 2
信号与系统实验指导书 -2- 若: £[ f (t)] F(s) 则: s f s F s f d t ( ) (0) £[ ( ) ] 1 6、原函数微分性质 若: £[ f (t)] F(s) 则: £[ ( )] ( ) (0 ) f t sF s f dt d 7、象函数的微分性质: 若: £[ f (t)] F(s) 则: £[tf (t)] F(s) 则: £[( ) ( )] ( ) ( ) t f t F s n n 8、象函数的积分性质: s F u du t f t ] ( ) ( ) £[ 9、初值定理: f (0 ) lim sF(s) s 10、 终值定理: lim ( ) lim ( ) 0 f t sF s t s 11、卷积定理: £[ ( )] ( ) 1 1 f t F s 、£[ ( )] ( ) 2 2 f t F s 则: £[ ( ) ( )] ( ) ( ) 1 2 1 2 f t f t F s F s 拉普拉斯逆变换的求解 1、 部分分式分解法: ( )( ).( ) ( )( ).( ) . . ( ) ( ) ( ) 1 2 1 2 0 1 1 0 1 1 n n m m n n n n m m m m b s p s p s p a s z s z s z b s b s b a s a s a B s A s F s 名词定义:零点:F(s)的分子多项式 A(s)的根 zi ; 极点:F(s)的分母多项式 B(s)的根 pj ; 系统函数 ( ) ( ) ( ) E s R s H s 时域分析的系统零状态响应为: r(t) h(t) e(t) 根据卷积定理其变换式为: R(s) H(s)E(s) n N n n n n K S s p r s p r s p r A s B s H s 2 0 2 1 1 . ( ) ( ) ( ) 1.residue 函数 功能:按留数法,求部分分式展开系数
信号与系统实验指导书 调用格式:[r,p,k)=residue(aum,den) num、den分别是B(s)、A(s)多项式系数按降序排列的行向量。 2.Iaplace函数 功能:用符号推理求解拉氏变换 调用格式:L=laplace(): F为函数,默认为变量t的函数,返回L为s的函数。在调用该函数时,要用syms命令定 义符号变量t。 3.ilaplace函数 功能:符号推理求解反拉氏变换 调用格式: L=ilaplace(F) 4.ezplot函数 功能:用符号型函数的绘图函数。 调用格式: ezplot(f):f为符号型函数。 ezplot(f,[min,axl):可指定横轴范围。 ezplot(f,[xmin,max,ymln,ymax]):可指定横轴范围和纵轴范围。 ezplot(x,y):绘制参数方程的图像,默认x=x(),y=y),0>f-sym('l-exp(-a*t)*heaviside) >>Is=laplace(f) 运行结果如下: 1s= 1/s-heaviside/(s+a) 【例8-2】用MATLAB命令求函数f)=e-2t-)的拉普拉斯变换 在MATLAB命令窗口中直接输入下列命令,即可得该函数的单边拉普拉斯变换, >>f=sym('t*exp(-(t-2))*heaviside(t-1)) Is=simplify(laplace(f)
信号与系统实验指导书 -3- 调用格式: [r,p,k] =residue(num,den) num、den 分别是 B(s)、A(s)多项式系数按降序排列的行向量。 2. Iaplace 函数 功能:用符号推理求解拉氏变换 调用格式:L=laplace(F): F 为函数,默认为变量 t 的函数,返回 L 为 s 的函数。在调用该函数时,要用 syms 命令定 义符号变量 t。 3.ilaplace 函数 功能:符号推理求解反拉氏变换。 调用格式: L=ilaplace(F) 4.ezplot 函数 功能:用符号型函数的绘图函数。 调用格式: ezplot(f):f 为符号型函数。 ezplot(f,[min,maxl):可指定横轴范围。 ezplot(f,[xmin,xmax,ymln,ymax]):可指定横轴范围和纵轴范围。 ezplot(x,y):绘制参数方程的图像,默认 x x(t) , y y(t) ,0 t 2 。 5.roots 函数 功能:求多项式的根。 调用格式: r=roots(c) 其中 c 为多项式的系数向量(自高次到低次),r 为根向量,(注 MATLAB 默认根向量为列向 量)。 三、实验内容 1、拉普拉斯变换 【例 8-1】用 MATLAB 命令求函数 f (t) (1 e )u(t) at 的单边拉普拉斯变换。 在 MATLAB 命令窗口中直接输入下列命令,即可得该函数的单边拉普拉斯变换。 >> f=sym('1-exp(-a*t)*heaviside') >> ls=laplace(f) 运行结果如下: ls = 1/s-heaviside/(s+a) 【例 8-2】用 MATLAB 命令求函数 ( ) ( 1) ( 2) f t te u t t 的拉普拉斯变换 在 MATLAB 命令窗口中直接输入下列命令,即可得该函数的单边拉普拉斯变换。 >> f=sym('t*exp(-(t-2))*heaviside(t-1)') >> ls=simplify(laplace(f))
信号与系统实验指导书 运行结果如下: Is= exp(1-s)*(s+2Ms+1)2 2、拉普拉斯逆变换 4s+5 【例3】已知F)=十十6,用MAAB命令求该函数的拉普拉斯逆变换 在MATLAB命令窗口中直接输入下列命令,即可得该函数的拉普拉斯逆变换 >f6s=ym(4*s+5)/s2+5*s+6), >f=ilaplace(fs) 运行结果如下: 7*exp-3*t)-3*exXp(-2*0) 【例8-4】已知F(s)= S+2 ,用MATLAB命令求该函数的拉普拉斯逆变换 3+4s2+3s 在MATLAB命令窗口中直接输入下列命令,即可得该函数的拉普拉斯逆变换。 →>f6=ym(s+2)s^3+4*s2+3*s >>f=ilaplace(fs) 运行结果如下: f= 2/3-1/6*exp(-3*t)1/2*exp(-) 此外,还可以利用residue(O函数求得复杂有理式F(s)的部分分式展开式,从而求解函 数的拉普拉斯逆变换,其语句格式为: [r,p,k]=residue(B,A) 其中,B,A分别表示F(s)的分子和分母多项式的系数向量,值得注意的是有缺项时, 要在相应的位置补0,否则会得出错误的结论。 返回值r为F(s)部分分式的系数,p为极点,k为F(S)中的整数部分。 对于上例,采用residue(函数,在MATLAB命令窗口中输入下列命令,可得: >format rat >b-12: >a=14301 >>[r,p.k]-residue(b,a) r= 4
信号与系统实验指导书 -4- 运行结果如下: ls = exp(1-s)*(s+2)/(s+1)^2 2、拉普拉斯逆变换 【例 8-3】已知 5 6 4 5 ( ) 2 s s s F s ,用 MATLAB 命令求该函数的拉普拉斯逆变换 在 MATLAB 命令窗口中直接输入下列命令,即可得该函数的拉普拉斯逆变换。 >> fs=sym('(4*s+5)/(s^2+5*s+6)'); >> f=ilaplace(fs) 运行结果如下: f = 7*exp(-3*t)-3*exp(-2*t) 【例 8-4】已知 s s s s F s 4 3 2 ( ) 3 2 ,用 MATLAB 命令求该函数的拉普拉斯逆变换 在 MATLAB 命令窗口中直接输入下列命令,即可得该函数的拉普拉斯逆变换。 >> fs=sym('(s+2)/(s^3+4*s^2+3*s)'); >> f=ilaplace(fs) 运行结果如下: f = 2/3-1/6*exp(-3*t)-1/2*exp(-t) 此外,还可以利用 residue()函数求得复杂有理式 F(s) 的部分分式展开式,从而求解函 数的拉普拉斯逆变换,其语句格式为: [r,p,k]=residue(B,A) 其中,B,A 分别表示 F(s) 的分子和分母多项式的系数向量,值得注意的是有缺项时, 要在相应的位置补 0,否则会得出错误的结论。 返回值 r 为 F(s) 部分分式的系数,p 为极点,k 为 F(s) 中的整数部分。 对于上例,采用 residue()函数,在 MATLAB 命令窗口中输入下列命令,可得: >> format rat >> b=[1 2]; >> a=[1 4 3 0]; >> [r,p,k]=residue(b,a) r =
信号与系统实验指导书 -1/6 -1/2 2/3 p= -3 -1 0 0 从上述结果可知,F(s)有三个单极点,分别为P,=-3、P2=-1、P3=0,其对应的 部分分式展开项的系数分别为=石么=分5=子即: 1 12 Fs=6+ 23 s+3 s+1's 因此,可得F(s)的拉普拉斯逆变换为: w f0=2e"-1。 6 可见,结果与上相同。 1、系统函数的零极点分析 在MATLAB中,系统提供了一种简捷的方法绘制系统函数的零极点分布图,即采用 pzmap函数,其语句格式为: pzmap(sys) sys=tf(b,a) 其中,sys()表示LT系统的系统模型,可以通过f()函数定义获得:f()函数中 的b,a分别为系统函数的分子和分母多项式的系数向量,注意在输入过程中,如果缺项, 必须在相应的位置补零。否则会出现错误结果。 8-3 【例8-5】已知系统函数为H(s)= 2+3s+2 试用MATLAB命令画出零极点分布图。 程序如下: b=[1-3 a[132: sys-tf(b,a); pzmap(sys): axis-44-11
信号与系统实验指导书 -5- -1/6 -1/2 2/3 p = -3 -1 0 k = [] 从上述结果可知, F(s) 有三个单极点,分别为 p1 3、 p2 1、 p3 0 ,其对应的 部分分式展开项的系数分别为 6 1 r1 、 2 1 r2 、 3 2 r3 ,即: s s s F s 3 2 1 2 1 3 6 1 ( ) 因此,可得 F(s) 的拉普拉斯逆变换为: ) ( ) 3 2 2 1 6 1 ( ) ( 3 f t e e u t t t 可见,结果与上相同。 1、 系统函数的零极点分析 在 MATLAB 中,系统提供了一种简捷的方法绘制系统函数的零极点分布图,即采用 pzmap 函数,其语句格式为: pzmap(sys) sys=tf(b,a) 其中,sys()表示 LTI 系统的系统模型,可以通过 tf()函数定义获得;tf()函数中 的 b,a 分别为系统函数的分子和分母多项式的系数向量,注意在输入过程中,如果缺项, 必须在相应的位置补零。否则会出现错误结果。 【例 8-5】已知系统函数为 3 2 3 ( ) 2 s s s H s ,试用 MATLAB 命令画出零极点分布图。 程序如下: b=[1 -3]; a=[1 3 2]; sys=tf(b,a); pzmap(sys); axis([-4 4 -1 1]);
信号与系统实验指导书 程序运行后,零极点分布图81如下所示。 对于已知系统函数模型的情况,如果需要求出系统的零极点,可以采用z心ro()函数和 pole()函数,对于上述系统模型,可用如下办法分别求得系统的零极点。 在MATLAB命令窗口中输入下列命令: >b=[13 >a=132外 >sys-tfb,a助: >p=pole(sys) >>z=zero(sys) p= 2 2= 图81系统零极点分布图 52 【例86】已知系统函数为H)=子+35+4 试用MATLAB命令画出零极点分布图并讨论 其系统时域特性。 程序如下: b=1001 a=[134 sys=tf(b.a): subplot(211) pzmap(sys) axis42-22) subplot(212) impulse(b,a)
信号与系统实验指导书 -6- 程序运行后,零极点分布图 8-1 如下所示。 对于已知系统函数模型的情况,如果需要求出系统的零极点,可以采用 zero()函数和 pole()函数,对于上述系统模型,可用如下办法分别求得系统的零极点。 在 MATLAB 命令窗口中输入下列命令: >> b=[1 -3]; >> a=[1 3 2]; >> sys=tf(b,a); >> p=pole(sys) >> z=zero(sys) p = -2 -1 z = 3 【例 8-6】已知系统函数为 3 4 ( ) 2 2 s s s H s ,试用 MATLAB 命令画出零极点分布图并讨论 其系统时域特性。 程序如下: b=[1 0 0]; a=[1 3 4]; sys=tf(b,a); subplot(211) pzmap(sys) axis([-4 2 -2 2]) subplot(212) impulse(b,a) 图 8-1 系统零极点分布图
信号与系统实验指导书 程序运行后,波形如图8-2所示。 Pole-Zero Map 3 2 Real Axis mpulse Response 9 051 25335 Te (sec) 图8-2系统零极点分布及时域特性 由图可知,该系统时域为一高通滤波器网络。 4、拉普拉斯变换求解连续时间LTI系统响应 【例8-7】已知系统的微分方程为y"()+3y'()+2)=x'()+3x(t),激励信号为 x()=),起始条件为y(0-)=1,y'(0-)=2,求系统的零输入响应、零状态响应。 对上述微分方程两边分别取拉普拉斯变换得: sY(s)-Sy(0 )-y(0 )+3(SY(s)-(0))+2Y(s)=SX(s)+3X(s) 整理上式得: YsS2+3S+2)=S+5+s+3xs) Y2+35+2刘-5+38+2*+38+习 S+5 .(6+3)X(s) 在MATLAB命令窗口中输入下列命令: >》syms t s >yzis=(s+5)/(s2+3*s+2): >>yzi=ilaplace(yzis)
信号与系统实验指导书 -7- 程序运行后,波形如图 8-2 所示。 由图可知,该系统时域为一高通滤波器网络。 4、拉普拉斯变换求解连续时间 LTI 系统响应 【例 8-7】已知系统的微分方程为 y (t) 3y (t) 2y(t) x (t) 3x(t) ,激励信号为 x(t) u(t) ,起始条件为 y(0) 1, y (0) 2 ,求系统的零输入响应、零状态响应。 对上述微分方程两边分别取拉普拉斯变换得: S Ys Sy(0_) y (0_) 3SYs y(0_) 2Ys SXs 3Xs 2 整理上式得: YsS 3S 2 S 5 s 3Xs 2 3 2 3 3 2 5 3 2 2 2 2 S S s X s S S S Y s S S 在 MATLAB 命令窗口中输入下列命令: >> syms t s >>yzis=(s+5)/(s^2+3*s+2); >>yzi=ilaplace(yzis) 图 8-2 系统零极点分布及时域特性
信号与系统实验指导书 则有系统的零输入响应为: yzi= 3*exp(-2*t)+4*ex即(-t) 在MATLAB命令窗口中继续输入下列命令: >xt=heaviside(t) >>xs=laplace(xt): >yz55=xs*(s+3)/(s^2+3*s+2) >>yzs=ilaplace(yzss) 系统的零状态响应为: 3/2+1/2*exp(-2*t)-2*exp(-t) >>yt=simplify(yzs+yzi) 系统完全响应为: yt= 3/2-5/2*exp(-2*t)+2*eXp(-t) 四、实验报告要求 1、运用MATLAB命令实现下列信号的拉普拉斯变换。 (1)f0=(1+2r)e (3)f0=fe-2ut-1) (2)fu)=12cos(21) (4)f(t)=sin(21)zu(t-1) 2、运用MATLAB求出下列函数的拉普拉斯逆变换,并绘制信号波形。 (1)F(s)= 4 s(25+3) 3)F8)=g++1 (2)F(6)=F+5s+6 4s+5 (4)F(s)= (s+3) (s+1)3(s+2) s-3 3、已知系统函数为H(s) ,试用MATLAB命令画出零极点分布图。并讨论其系 52+55+4 统时域特性。 -8-
信号与系统实验指导书 -8- 则有系统的零输入响应为: yzi = -3*exp(-2*t)+4*exp(-t) 在 MATLAB 命令窗口中继续输入下列命令: >> xt=heaviside(t); >>xs=laplace(xt); >>yzss=xs*(s+3)/(s^2+3*s+2); >>yzs=ilaplace(yzss) 系统的零状态响应为: yzs = 3/2+1/2*exp(-2*t)-2*exp(-t) >> yt=simplify(yzs+yzi) 系统完全响应为: yt = 3/2-5/2*exp(-2*t)+2*exp(-t) 四、实验报告要求 1、运用 MATLAB 命令实现下列信号的拉普拉斯变换。 (1) t f t t e ( ) (1 2 ) (2) ( ) cos(2 ) 2 f t t t (3) ( ) ( 1) ( 2) f t te u t t (4) f (t) sin(2t)u(t 1) 2、 运用 MATLAB 求出下列函数的拉普拉斯逆变换,并绘制信号波形。 (1) (2 3) 4 ( ) s s F s (2) 5 6 4 5 ( ) 2 s s s F s (3) 1 1 1 ( ) 2 s F s (4) ( 1) ( 2) ( 3) ( ) 3 s s s F s 3、已知系统函数为 5 4 3 ( ) 2 s s s H s ,试用 MATLAB 命令画出零极点分布图。并讨论其系 统时域特性
信号与系统实验指导书 4、已知系统的微分方程为y"(t)+3y'()+2y()=3x(),激励信号为x(t)=e-“u(t),起 始条件为(0-)=2,y'(0-)=2,求系统的零输入响应、零状态响应。 9
信号与系统实验指导书 -9- 4、已知系统的微分方程为 y (t) 3y (t) 2y(t) 3x(t) ,激励信号为 ( ) ( ) 3 x t e u t t ,起 始条件为 y(0) 2 , y (0) 2 ,求系统的零输入响应、零状态响应。 图 1-6 符号 函数信号