实验作业(1)
实验2-1 离散系统的分析的基本理论(手工完成) 实验目的:加深对离散系统基本理论和方法的理解
1 一线性移不变离散时间系统的单位抽样响应为
h(n)?(1?0.3n?0.6n)u(n)
(1) 求该系统的转移函数H(z),并画出其零-极点图; (2) 写出该系统的差分方程。
2 已知用下列差分方程描述的一个线性移不变因果系统
y(n)?y(n?1)?y(n?2)?x(n?1)
(a) 求这个系统的系统函数H(z)?收敛区域;
(b) 求此系统的单位抽样响应;
Y(z),画出H(z)的零-极点图并指出其X(z)3 一个离散时间系统的一对共轭极点:p1?0.8e阶重零点。
j?4,p2?0.8e?j?4,在原点有二
(1) 写出该系统的转移函数H(z),画出零-极点图; (2) 试用零-极点分析的方大致画出其幅频响应(0~2π);
(3) 若输入信号x(n)?u(n),并且系统有初始条件y(?2)?y(?1)?1,求该系统
的输出y(n)
实验2-2 离散系统的差分方程、冲激响应和卷积分析
实验目的:加深对离散系统的差分方程、冲激响应和卷积分析方法的理解。 实验原理:离散系统
x[n]y[n]Discrete-timesystme
其输入、输出关系可用以下差分方程描述:
?dk?0Nky[n?k]??pkx[n?k]
k?0M 输入信号分解为一系列单位冲激信号,x[n]?m????x[m]?[n?m]。记系统单位冲
1
?
激响应?[n]?h[n],则系统响应为如下的卷积计算式:
y[n]?x[n]?h[n]?m????x[m]h[n?m]
? 当dk?0,k?1,2,...N时,h[n]是有限长度的(n:[0,M]),称系统为FIR系统;反之,称系统为IIR系统。
在MATLAB中,可以用函数y=Filter(p,d,x) 求解差分方程,也可以用函数 y=Conv(x,h)计算卷积。
实验内容:编制程序求解下列两个系统的单位冲激响应和阶跃响应,并绘出其图形。
y[n]?0.75y[n?1]?0.125y[n?2]?x[n]?x[n?1] y[n]?0.25{x[n?1]?x[n?2]?x[n?3]?x[n?4]}
实验要求:给出理论计算结果和程序计算结果并讨论。
实验2-3 离散系统的频率响应分析和零、极点分布
实验目的:加深对离散系统的频率响应分析和零、极点分布的概念理解。 实验原理:离散系统的时域方程为
?dk?0Nky(n?k)??pkx(n?k)k?0M
其变换域分析方法如下: 频域:
m???
系统的频率响应为
y[n]?x[n]?h[n]??x[m]h[n?m]?Y(e?)?X(e?)H(e?)jjj?
p(ej?)p0?p1e?j??...?pMe?jM?H(e)??j??j??jN?D(e)d?de?...?de01N
Z域
j?m???
系统的转移函数为
y[n]?x[n]?h[n]??x[m]h[n?m]?Y(z)?X(z)H(z)?
p(z)p0?p1z?1?...?pMz?MH(z)???1?ND(z)d?dz?...?dz01N
分解因式
2
H(z)?
i?0N?pkz?dkzM?i?i?K?1?(1??iz)?1?(1??iz)i?1i?1NMi?0
其中?i和?i称为零、极点。
在MATLAB中,可以用函数[z,p,K]=tf2zp(num,den)求得有理分式形式的系统转移函数的零、极点,用函数zplane(z,p)绘出零、极点分布图;也可以用函数zplane(num,den)直接绘出有理分式形式的系统转移函数的零、极点分布图。
(Vector DEN specifies the coefficients of the denominator in descending powers of s. Matrix NUM indicates the numerator coefficients with as many rows as there are outputs. The zero locations are returned in the columns of matrix Z, with as many columns as there are rows in NUM. The pole locations are returned in column vector P, and the gains for each numerator transfer function in vector K.
For discrete-time transfer functions, it is highly recommended to make the length of the numerator and denominator equal to ensure correct results. You can do this using the function EQTFLENGTH in the Signal Processing Toolbox. However, this function only handles
single-input single-output systems.)
另外,在MATLAB中,可以用函数 [r,p,k]=residuez(num,den)完成部分分式展开计算;可以用函数sos=zp2sos(z,p,K)完成将高阶系统分解为2阶系统的串联。
实验内容:求系统
0.0528?0.797z?1?0.1295z?2?0.1295z?3?0.797z?4?0.0528z?5H(z)?1?1.8107z?1?2.4947z?2?1.8801z?3?0.9537z?4?0.2336z?5
的零、极点和幅度频率响应。
实验要求:编程实现系统参数输入,绘出幅度频率响应曲线和零、极点分布图。
3