信号与系统实验八 下载本文

信号与系统实验

实验八:系统的复频域分析

小组成员:

黄涛 13084220 胡焰焰 13084219 洪燕东 13084217

一、实验目的

1、掌握系统的复频域分析方法。 2、掌握测试系统的频率响应的方法。 二、预习内容

1、系统频响的方法。(见第四章波特图的介绍) 三、实验原理

1. N阶系统系统的传递函数

用微分方程描述的N阶系统为:

C0dndtnr(t)?C1dn?1dtr(t)???Cn?1n?1ddmdm?1dr(t)?Cnr(t)?E0me(t)?E1m?1e(t)???Em?1e(t)?Eme(t)dtdtdtdt

根据零状态响应(起始状态为零),则对其进行拉氏变换有:

C0Snr(S)?C1Sn?1r(S)???Cn?1Sr(S)?Cnr(S)?E0Sme(S)?E1Sm?1e(S)???En?1Se(S)?Ene(S)

则系统传递函数可表达为:

r(S)E0Sm?E1Sm?1???En?1S?EnH(S)??e(S)C0Sn?C1Sn?1???Cn?1S?Cn

用差分方程描述的N阶系统为:

a0y[n]?a1y[n?1]?...?aNy[n?N]?b0x[n]?b1x[n?1]?...?bMx[n?M]

根据零状态响应(起始状态为零),则对其进行拉氏变换有:

a0Y(z)?a1z?1Y(z)?...?aNz?NY(z)?b0X(z)?b1z?1X(z)?...?bMz?MX(z)

则系统传递函数可表达为:

b0?b1z?1...?bMz?M Y(z)H(z)??X(z)a0?a1z?1?...?aNz?N2.根据系统传递函数的零极点图分析系统 零点:传递函数分子多项式的根。 极点:传递函数分母多项式的根。 根据零极点图的不同分布分析系统。 3.涉及到的Matlab函数

(1)freqz函数:实验六中出现过,可用来求单位圆上的有理z变换的值。 调用格式:同实验六

(2)zplane函数:得到有理z变换的零极点图。 调用格式:zplane(num,den)

其中,num和den是按z的升幂排列的、z变换分子分母多项式系数的行向量。 (3)roots函数:求多项式的根。

调用格式:r=roots(c), c为多项式系数向量;r为根向量。 四、实验内容

1.系统零极点的求解

?11?z?2s2?1(1)求解系统H(s)?3和H(z)?的零极点,验

1?2z?1?3z?2?2z?3s?2s2?3s?2证下面程序的运行结果,根据系统零极点图分析系统性质。

b=[1,0,-1]; a=[1,2,3,2]; zr=roots(b); pr=roots(a);

plot(real(zr),imag(zr),'go',real(pr),imag(pr),'mx','markersize',12,'linewidth',2); grid; legend('零点','极点'); figure; zplane(b,a);

图7-1 系统零极点图 图7-2 由zplane函数直接绘制系统零极点图

2?5z?1?9z?2?5z?3?3z?4(2)参考上述程序,绘制系统H(s)?2和H(z)?5?45z?1?2z?2?z?3?z?4s?3s?2s?1的零极点图,并分析系统性质。与用zplane函数直接绘制系统零极点图(注:圆心的圆圈并

非系统的零点)做比较。

clc;

b=[1,-1]; a=[1,3,2]; zr=roots(b); pr=roots(a); subplot(2,1,1);

plot(real(zr),imag(zr),'go',real(pr),imag(pr),'mx','markersize',12,'linewidth',2); grid;

legend('零点','极点'); subplot(2,1,2); zplane(b,a);

legend('零点','极点'); figure;

zplane(b,a); b=[2,5,9,5,3]; a=[5,45,2,1,1]; zr=roots(b); pr=roots(a); subplot(2,1,1);

plot(real(zr),imag(zr),'go',real(pr),imag(pr),'mx','markersize',12,'linewidth',2); grid;

%legend('零点','极点'); subplot(2,1,2); zplane(b,a);

2. 求解z变换

(1)对上题中的系统H(z)在单位圆上求z变换。 w=-4*pi:8*pi/511:4*pi; num=[2 5 9 5 3]; den=[5 45 2 1 1]; h=freqz(num,den,w); subplot(2,1,1); plot(w/pi,abs(h)); grid;title('幅度谱');

xlabel('omega/\\pi');ylabel('振幅'); subplot(2,1,2); plot(w/pi,angle(h)); grid;title('相位谱'); xlabel('omega/\\pi');

ylabel('以弧度为单位的相位');