数字信号处理及MATLAB实现
上QQ阅读APP看书,第一时间看更新

第二节 时域离散系统

数学上可将一个离散系统描述为一种运算符T[·],输入信号用xn)表示,输出信号用yn)表示,它们之间的关系可描述为

时域离散系统可划分为线性系统和非线性系统,这里主要研究线性系统以及线性系统中的非时变系统,即线性非时变系统。这类系统便于分析、研究和实现。

一、线性系统

若某个系统的输入信号和输出信号分别用x1n)和y1n)来表示,它们之间的关系描述成y1n)=T[x1n)]。同理,该系统的输入信号为x2n)时,输出信号可表示成y2n)=T[x2n)],输入信号为ax1n)+bx2n)时,输出信号可表示成yn)=T[ax1n)+bx2n)]。当yn)与y1n)及y2n)满足等式yn)=ay1n)+by2n)时,该系统称为线性系统。

例2-2 判断下列系统是否为线性系统:

(1)yn)=T[xn)]=2xn)+3

(2)yn)=T[xn)]=x2n

(3)yn)=xn+1)+x(1-n

:(1)y1n)=T[x1n)]=2x1n)+3,y2n)=T[x2n)]=2x2n)+3,而

yn)=T[a x1n)+b x2n)]=2[a x1n)+b x2n)]+3≠a y1n)+b y2n

因此,该系统为非线性系统。

(2)y1n)=T[x1n)]=n),y2n)=T[x2n)]=n),而

yn)=T[a x1n)+b x2n)]=[a x1n)+b x2n)]2a y1n)+b y2n

因此,该系统为非线性系统。

(3)y1n)=T[x1n)]=x1n+1)+x1(1-n),y2n)=T[x2n)]=x2n+1)+x2(1-n),而yn)=T[a x1n)+b x2n)]=ax1n+1)+ax1(1-n)+bx2n+1)+bx2(1-n)=a y1n)+by2n

因此,该系统为线性系统。

二、非时变系统

当输入信号为xn)时,输出信号用yn)表示。如果输入为xn-n0),输出为yn-n0),即yn-n0)=T[xn-n0)],这时,称该系统为非时变系统(或称时不变系统)。

例2-3 判断下列系统是否为时不变系统:

(1)yn)=xn+1)-x(1-n

(2)yn)=nxn

(3)yn)=xn)+xn-1)

:(1)T[xn-n0)]=xn+1-n0)-x(1-n-n0),而

yn-n0)=xn-n0+1)-x(1-(n-n0))=xn+1-n0)-x(1-n+n0)≠T[xn-n0)]

因此,该系统不是非时变系统。

(2)T[xn-n0)]=nxn-n0),而

yn-n0)=(n-n0xn-n0)≠T[xn-n0)]

因此,该系统不是非时变系统。

(3)T[xn-n0)]=xn-n0)+xn-1-n0),而

yn-n0)=xn-n0)+xn-1-n0)=T[xn-n0)]

因此,该系统是非时变系统。

三、线性时不变系统对任意输入的响应——线性卷积

任何一个序列都可以用单位取样序列δn)的移位加权和表示,即δn-k)。如果将xn)作为一个线性时不变系统的输入,那么输出yn)为

式中,hn)为单位取样序列δn)通过线性时不变系统产生的响应,称为单位冲激响应;*表示线性卷积。

由以上推导可知,任何一个时域离散信号通过一个线性时不变系统,其输出等于该信号与系统的单位冲激响应的线性卷积。下面举例说明卷积的求法。

例2-4 求下面三种情况下的卷积:

(1)xn)={1,2,3,1|n=0,1,2,3},hn)={1,2,1,-1|n=0,1,2,3}

(2)xn)={1,1,1,1|n=0,1,2,3},hn)=anun

(3)xn)=anun),hn)=bnun

:(1)方法一:做图

由卷积公式(2-13)可绘出图2-13。首先,将hm)反转得到h(-m),然后将h(-m)移位,每移动一个单位,xm)和h(-m)位置对应的值相乘,所得乘积全部相加,即为卷积的一个数值。h(-m)移动的范围取决于它与x(-m)是否有位置相对应的样本点。

图2-13 线性卷积的过程

方法二:做表2-1。

将卷积计算的每一步做图用表格的形式表示出来。例如:在表2-1中,h(1-m)表示h(-m)向右平移一个单位,将h(1-m)和xm)位置对应的数值分别相乘,所得的乘积有2个2,相加得4,即为卷积在n=1时的数值,表示成y(1)=4。

表2-1 线性卷积

方法三:借助数学中的乘法运算

xn)和hn)位置变量的范围可表示为0≤n1≤3和0≤n2≤3。因此,yn)位置变量的范围为0≤n=n1+n2≤6。yn)可表示为yn)={1,4,8,8,3,-2,-1|n=0,1,2,3,4,5,6}。

方法四:借助δn)的移位加权和

xn)=δn)+2δn-1)+3δn-2)+δn-3),hn)=δn)+2δn-1)+δn-2)-δn-3),则yn)=xn)*hn)=δn)+4δn-1)+8δn-2)+8δn-3)+3δn-4)-2δn-5)-δn-6)

这里运用了卷积性质:任何一个序列与δn)的卷积等于它本身,即xn)=xn)*δn)。

(2)方法一:借助δn)的移位加权和

xn)=δn)+δn-1)+δn-2)+δn-3),则

yn)=xn)*hn)=anun)+an-1un-1)+an-2un-2)+an-3un-3)

=a0δn)+a1δn-1)+a2δn-2)+anun-3)+a0δn-1)+a1δn-2)+an-1un-3)+a0δn-2)+an-2un-3)+an-3un-3)

=δn)+(1+aδn-1)+(1+a+a2δn-2)+(an+an-1+an-2+an-3un-3)

方法二:解析法

故根据n的取值来确定m的范围:

n<0时,m无取值范围,yn)=0;

当0≤n<3时,0≤mn

n≥3时,0≤m≤3,=an+an-1+an-2+an-3

综上所述:

或者可表示为

yn)=δn)+(1+aδn-1)+(1+a+a2δn-2)+(an+an-1+an-2+an-3un-3)

(3)由于xn)和hn)均为无限长序列,用做图和做表等方法都无法完整准确地将两个序列表达出来,这里只能用解析法求解它们的线性卷积。

其中,m≥0,n-m≥0,所以有

n<0时,yn)=0;

n≥0时,

综上所述

以下源码表示用MATLAB信号处理工具箱提供的conv函数计算两个序列的线性卷积:

脚本中,xn)和hn)的位置都是从n=0开始。如果xn)和hn)的起点是任意位置,即{xn)|nxbnnxe}和{hn)|nhbnnhe},yn)的起点和终点分别为nyb=nxb+nhbnye=nxe+nhe。这时,不能直接用conv函数,可用下面的conv_m函数完成任意位置序列的线性卷积。conv_m函数参考代码如下:

例2-5 计算xn)={1,2,3,4|n=-1,0,1,2}和hn)={1,2,3,4|n=-2,-1,0,1}的线性卷积。

:在MATLAB命令窗口调用conv_m函数:

在求线性卷积的过程中,经常会用到一些性质,包括交换律、结合律、分配律和延时特性,现归纳如下,供读者参考:

交换律xn)*hn)=hn)*xn

分配律和结合律xn)*(h1n)+h2n))=xn)*h1n)+xn)*h2n

延时特性xn-n1)*hn-n2)=xn)*hn-n1-n2)=xn-n1-n2)*hn

当单位取样序列δn)与其他序列线性卷积时,容易证明得到下面两个有用的公式:

xn)=xn)*δn),xn-n0)=xn)*δn-n0)。

四、因果系统

如果系统n时刻的输出只与n时刻及以前的输入有关,而与n时刻之后的输入无关,这样的系统称为因果系统。在线性时不变系统中,当n<0时,单位脉冲响应hn)=0,该系统是因果系统。同样,当一个序列在n<0时,它的数值均为0,则该序列称为因果序列。

例2-6 判断下列系统是否为因果系统:

(1)hn)=anun

(2)yn)=xn+1)-xn

:(1)根据hn)=0,n<0来判断其因果性。因为hn)=anun)=0,n<0,系统是因果系统。

(2)根据定义,yn)不仅与n时刻的输入xn)有关,还与n+1时刻的xn+1)有关,因此系统是非因果系统。

五、稳定系统

当且仅当每一个有界输入序列都产生一个有界输出序列时,系统是稳定的。在线性系统中,单位冲激响应满足如下条件时,该系统为稳定系统:

例2-7 判断下列系统是否为稳定系统:

(1)hn)=anun

(2)

:(1)

当|a|<1时,,系统稳定;

当|a|≥1时,系统不稳定。

(2)

由(1)可知,当|a|<1且|b|>1时,系统稳定。