本科毕业设计论文
|y(n)|?K?? (3.1.7)
系统稳定的充分必要条件是系统的单位取样响应绝对可和,用公式表示为
n????|h(n)|???
(3.1.8)
3.1.5系统的冲激响应
设系统输入x(n)=u(n)系统输出 的初始状态为零,这时系统输出用h(n)表示,即h(n)=T[u(n)]则称为系统的单位脉冲响应[11]。 对于任意输入信号,输出系统为:
y(n)?T[??x(m)?(n?m)] m???利用系统满足叠加原理得
??y(n)?T[?x(m)?(n?m)]?)T[?(n?m)]m???m?x(m??? 利用系统时不变性质得到
?y(n)??m)?x(n)?h(n)m?x(m)h(n??? 上式的运算关系称为卷积运算。 3.1.6卷积的性质
1)交换律 y(n)?x(n)?h(n)?h(n)?x(n)
2)结合律y(n)?x(n)?h(n)?h(n)?x(n) = [x(n)?h2(n)]?h1(n) ?x(n)?[h1(n)?h2(n)]
3)分配律 x(n)?[h1(n)?h2(n)]?x(n)?h1(n)?x(n)?h2(n) 3.2 matlab在离散系统中的应用
3.2.1 matlab 在离散系统时域分析中的应用 1离散时间系统的仿真
1)M点因果滑动平滑系统的仿真,时域表达为
My(1??1n)?Mx(n?k) k?0 (3.1.9)
(3.1.10)
(3.1.11)
(3.1.12) (3.1.13) (3.1.14)
(3.2.1)
10
本科毕业设计论文
通过上述时域平滑系统可实现由若干个正弦信号之和所组成的信号中滤出高频分量。据此,可以理解M点因果滑动平滑系统[12]。
2)线性与非线性离散时间系统的仿真。 简单的非线性系统实例:
y(n)?x(n)2?x(n?1)x(n?1) (3.2.2)
简单的线性系统实例
y(n)?0.4y(n?1)?0.75y(n?2)?2.3x(n)?2.4x(n?1)?2.3x(n?2) (3.2.3)
3)时变与时不变系统的仿真。
时不变系统实例:
y(n)?0.4y(n?1)?0.75y(n?2)?2.2403x(n)?2.4908x(n?1)?2.2403x(n?2)
(3.2.4) 时变系统实例:
y(n)?nx(n)?x(n?1) (3.2.5)
仿真并比较这两个系统。 2线性时不变系统仿真 1)冲激响应的计算
用MATLAB语言编程实现线性时不变系统的冲激响应计算。
线性时不变系统实例:y(n)?0.4y(n?1)?2x(n)?x(n?1) (3.2.6) 2) 在实际应用中高阶因果线性时不变系统可以用低阶因果线性时不变系统级联得到,这可简化系统的设计与实现。例如,对于四阶线性时不变系统
y(n)?1.6y(n?1)?2.28y(n?2)?1.325(n?3)?0.68y(n?4)?0.06x(n)?0.19x(n?1)?0.27x(n?2)?0.26x(n?3)?0.12x(n?4) (3.2.7)
可以用二个二阶系统级联实现。
第一级y1(n)?0.9y1(n?1)?0.8y1(n?2)?0.2x(n)?0.2x(n?1)?0.4x(n?2) (3.2.8) 第二级y2(n)?0.7y2(n?1)?0.85y2(n?2)?0.2y1(n)?0.5y1(n?1)?0.3y1(n?2)
(3.2.9)
3线性时不变系统的稳定性
若一个线性时不变系统的冲激响应是绝对可和,则此系统就是稳定系统。由此,无限冲激响应线性时不变系统稳定的必要条件是,随着输入序列点的增加,冲激响应衰减到零。用matlab语言编程计算一个IIR线性时不变系统冲激响应的绝对值的和,可以验证稳定特性。
11
本科毕业设计论文
3.2.2 Matlab 在离散系统Z 域分析中的应用 1离散信号的z变换和逆z变换
序列f(n) (n为整数)的双边z变换定义为
F(z)?n????f(n)z??n (3.2.10)
matlab的符号数学工具箱(Symbolic Math Tools)提供了计算z正变换的函数ztrans和计算逆z变换的函数iztrans。其调用形式为:
F=ztrans(f) %求符号函数f的z变换,返回函数的自变量为z; F=ztrans(f,w) %求符号函数f的z变换,返回函数的自变量为w; F=ztrans(f,n,w) %对自变量为n的符号函数f求z变换,返回函数的自变量为w。
f=iztrans(F) %对自变量为z的符号函数F求逆z变换,返回函数的自变量为n;
f=iztrans(F,n) %对自变量为z的符号函数F求逆z变换,返回函数的自变量为k;
f=iztrans(F,w,n) %对自变量为w的符号函数F求逆z变换,返回函数的自变量为k。
例3.2:已知序列f(n)?2?n,求其z变换。
解:在命令窗口中输入如下命令,即可完成f(n)的z变换
>> syms n
>> f=sym(2^(-n)); %定义序列f(n)?2?n >> F=ztrans(f) %求z变换
运行结果为:F =2*z/(2*z-1) ,即
2z 2z?1z例3.3:已知一离散系统的系统函数H(z)?2,求其冲激响应h(n)。
z?3z?2F(z)?解:运行如下M文件,
syms n z
H=sym(z/(z^2+3*z+2));
h=iztrans(H,n) %求逆z变换
运行结果为:h =(-1)^n-(-2)^n,即
h(n)?[(?1)n?(?2)n]u(n)
12
本科毕业设计论文
对象函数F求逆z变换,还可以利用函数residuez( )对象函数作部分分式展开,然后按部分分式展开法求得原函数。
2系统函数的零极点图的绘制
matlab的zplane函数用于系统函数的零极点图的绘制,调用方式为: zplane(b,a)
其中b、a分别为系统函数分子、分母多项式的系数向量。
在matlab中,可以借助函数tf2zp来直接得到系统函数的零点和极点的值,函数tf2zp的作用是将H(z)转换为用零点、极点和增益常数组成的表示式,即:
H(z)?B(z)(z?z1)(z?z2)...(z?zm) (3.2.11) ?CA(z)(z?p1)(z?p2)...(z?pn)tf2zp函数的调用形式如下:
[z,p,C]=tf2zp(b,a)
z2?0.7z?0.1例3.4:已知一离散系统的系统函数H(z)?,试绘制其零极点图。
z2?3z?2解:在MATLAB的命令窗口中输入如下命令,即可得到其零极点图
>> a=[1 3 2]; >> b=[1 -0.7 0.1];
>> zplane(b,a) %绘制其零极点图 图3.1中,零点、极点分别用“○”、“×”表示。
3离散系统的频率响应分析
若离散系统是稳定的,其系统函数的收敛域应包含单位圆,离散系统的频率响应即为单位圆上(z?1)的系统函数,即
图3.1零极点图
H(ej?)?H(ej?)ej?(?)?H(z)z?ej? (3.2.12)
其中,H(ej?)为系统的幅频特性,?(?)为系统的相频特性[13]。
matlab中,利用freqz( )函数可方便地求得系统的频率响应。调用格式如下:
freqz(b,a)
13
本科毕业设计论文
该调用方式将绘制系统在(0-2)范围内的幅频特性和相频特性图,其中,b、a分别为系统函数分子、分母多项式的系数向量。 freqz(b,a,‘whole’)
该调用方式将绘制系统在(0-2)范围内的幅频特性和相频特性图。 freqz(b,a,N)
该调用方式将绘制系统在(0-2)范围内N个频率等分点的幅频特性和相频特性图,N的缺省值为512。 freqz(b,a,N,‘whole’)
该调用方式将绘制系统在(0-2)范围内N个频率等分点的幅频特和相频特性图。
此外,还有如下相类似的四种调用形式。其中,返回向量H包含了离散系统频率响应H(ej?)在0~2范围内各频率点处的值,返回向量w则包含了在(0-2)范围内N个(或512个)频率等分点。利用这些调用方式matlab并不直接绘制系统的频率特性图,但可由向量H、w用abs、angle、plot等函数来绘制幅频特性和相频特性图。
[H,w]= freqz(b,a)
[H,w]=freqz(b,a,‘whole’) [H,w]=freqz(b,a,N)
[H,w]=freqz(b,a,N,‘whole’) 例3.5.已知一离散系统的系统函数H(z)?z,试绘制频率特性图。
z2?0.3z?0.2解:在MATLAB的命令窗口中输入如下命令,即可得到其频率特性图。 >> b=[0 1 0]; >> a=[1 0.3 0.2]; >> freqz(b,a,‘whole') 如图3.2所示。
图3.2频率特性图
14