内容发布更新时间 : 2024/11/15 6:19:43星期一 下面是文章的全部内容请认真阅读。
实验二 离散时间信号与系统的Z变换分析
一、 实验目的
1、熟悉离散信号Z变换的原理及性质 2、熟悉常见信号的Z变换
3、了解正/反Z变换的MATLAB实现方法
4、了解离散信号的Z变换与其对应的理想抽样信号的傅氏变换和拉氏变换之间的关系 5、了解利用MATLAB实现离散系统的频率特性分析的方法
二、 实验原理
1、正/反Z变换
Z变换分析法是分析离散时间信号与系统的重要手段。如果以时间间隔Ts对连续时间信号f(t)进行理想抽样,那么,所得的理想抽样信号f?(t)为:
?f?(t)?f(t)*?Ts(t)?f(t)*??(t?kTs)
k???理想抽样信号f?(t)的双边拉普拉斯变换F? (s)为:
?????stF?(s)???f(t)*??(t?kTs)?edt??f(kTs)e?ksTs
??k???k??????若令f(kTs)?f(k) ,z?esTs , 那么f?(t)的双边拉普拉斯变换F? (s)为:
F?(s)?k??????f(k)z?k?F(z)z?esTs
则离散信号f(k)的Z变换定义为:
F(z)?k????f(k)z?k
从上面关于Z变换的推导过程中可知,离散信号f(k)的Z变换F(z)与其对应的理想抽样信号f?(t)的拉氏变换F? (s)之间存在以下关系:
F?(s)?F(z)z?esTs
同理,可以推出离散信号f(k)的Z变换F(z)和它对应的理想抽样信号f?(t)的傅里叶变换之间的关系为 F?(j?)?F(z)z?ej?Ts
如果已知信号的Z变换F(z),要求出所对应的原离散序列f(k),就需要进行反Z变换,反Z变换的定义为: f(k)??F(z)z2?j?1k?1dz
的所有极点的闭合积分路线。
其中,C为包围F(z)z如下:
k?1在MATLAB语言中有专门对信号进行正反Z变换的函数ztrans( ) 和itrans( )。其调用格式分别? F=ztrans( f ) 对f(n)进行Z变换,其结果为F(z)
1
? F=ztrans(f,v) 对f(n)进行Z变换,其结果为F(v) ? F=ztrans(f,u,v) 对f(u)进行Z变换,其结果为F(v) ? f=itrans ( F ) 对F(z)进行Z反变换,其结果为f(n) ? f=itrans(F,u) 对F(z)进行Z反变换,其结果为f(u) ? f=itrans(F,v,u ) 对F(v)进行Z反变换,其结果为f(u)
注意: 在调用函数ztran( )及iztran( )之前,要用syms命令对所有需要用到的变量(如t,u,v,w)等进行说明,即要将这些变量说明成符号变量。
例①.用MATLAB求出离散序列f(k)?(0.5)k?(k) 的Z变换 MATLAB程序如下:
syms k z
f=0.5^k; %定义离散信号
Fz=ztrans(f) %对离散信号进行Z变换 运行结果如下:
Fz = 2*z/(2*z-1)
例②.已知一离散信号的Z变换式为F(z)?MATLAB程序如下:
syms k z
Fz=2* z/(2*z-1); %定义Z变换表达式 fk=iztrans(Fz,k) %求反Z变换 运行结果如下:
fk = (1/2)^k
例③:求序列f(k)??(k?1)??(t?4)的Z变换.
clc;clear all syms n
hn=sym('kroneckerDelta(n, 1) + kroneckerDelta(n, 2)+ kroneckerDelta(n, 3)') Hz=ztrans(hn) Hz=simplify(Hz)
2z ,求出它所对应的离散信号f(k) 2z?12、离散系统的频率特性
同连续系统的系统函数H(s)类似,离散系统的系统函数H(z)也反映了系统本身固有的特性。对于离散系统来说,如果把其系统函数H(z)中的复变量z换成ej??ej?Ts(其中???Ts),那么所得的函数
H(ej?)就是此离散系统的频率响应特性,即离散时间系统的频率响应为:
H(ej?)?H(ej?)?ej?(?)?H(z)z?ej?
2
j?其中, H(e)称为离散系统的幅频特性,?(?)称为系统的相频特性。同连续系统一样,离散时间系统
的幅频特性也是频率的偶函数,相频特性也是频率的齐函数。
由于ej?是频率?的周期函数,所以离散系统的频率响应特性也是频率?的周期函数,其周期为2?,
或者角频率周期为?T?2?。实际上,这就是抽样系统的抽样频率,而其中的T则是系统的抽样周期。Ts频率响应呈现周期性是离散系统特性区别于连续系统特性的重要特点。因此,只要分析H(ej?)在??2?范围内的情况,便可分析出系统的整个频率特性。
H(ej?)函数来表示离散系统的频率响应特性, H(ej?)表示幅频特性,而相频特性仍用?(?)来表
示。应该特别注意的是,虽然这里的变量?仍然称为频率变量,但是它已经不是原来意义上的角频率概念,而实际上是表示角度的概念。我们称之为数字频率。它与原来角频率的关系为:???Ts。也就是说,根据离散系统的系统函数H(z),令其中的z?ej?,并且代入0~2?范围内不同的频率值(实际上是角度值),
就可以逐个计算出不同频率时的响应,求出离散系统的频率响应特性。再利用离散系统频率特性的周期性特点(周期为2?),求出系统的整个频率特性。
离散系统的幅频特性曲线和相频特性曲线能够直观地反映出系统对不同频率的输入序列的处理情况。在函数H(ej?)随?的变换关系中,在?=0附近,反映了系统对输入信号低频部分的处理情况,而在?=?附近,则反映了系统对输入信号高频部分的处理情况。
一般来说,分析离散系统频率响应特性就要绘制频率响应曲线,而这是相当麻烦的。虽然可以通过几何矢量法来定性画出频率响应特性曲线,但一般来说这也是很麻烦的。值得庆幸的是,MATLAB为我们提供了专门用于求解离散系统频率响应的函数freqz() ,其调用格式如下:
? [H,w]=freqz(B,A,N) 其中,B和A分别是表示待分析的离散系统的系统函数的分子,分母多项式的向量,N为正整数,返回向量H则包含了离散系统频率响应函数H(e)在0~?范围内的N个频率等分点的值。向量?则包含0~?范围内的N个频率等分点。在默认情况下N=512。
? [H,w]=freqz(B,A,N,'whole') 其中,B,A和N的意义同上,而返回向量H包含了频率响
j?应函数H(e)在0~2?范围内N个频率等分点的值。
j?由于调用freqz()函数只能求出离散系统频率响应的数值,不能直接绘制曲线图,因此,我们可以先用freqz()函数求出系统频率响应的值,然后再利用MATLAB的abs()和angle()函数以及plot()命令,即可绘制出系统在0~?或0~2?范围内的幅频特性和相频特性曲线。 例①.若离散系统的系统函数为H(z)?率响应H(e)的样值。 MATLAB程序如下:
A=[1 0]; %分母多项式系数向量 B=[1 -0.5]; %分子多项式系数向量
[H,w]=freqz(B,A,10) %求出对应0~?范围内10个频率点的频率响应样值 运行结果如下: H =
3
j?z?0.5,请用MATLAB计算0~?频率范围内10个等分点的频z 0.5000 0.5245 + 0.1545i 0.5955 + 0.2939i 0.7061 + 0.4045i 0.8455 + 0.4755i 1.0000 + 0.5000i 1.1545 + 0.4755i 1.2939 + 0.4045i 1.4045 + 0.2939i 1.4755 + 0.1545i w = 0 0.3142 0.6283 0.9425 1.2566 1.5708 1.8850 2.1991 2.5133 2.8274
例②.用MATLAB计算前面离散系统在0~2?频率范围内200个频率等分点的频率响应值,并绘出相应的幅频特性和相频特性曲线。 MATLAB程序如下:
A=[1 0]; B=[1 -0.5];
[H,w]=freqz(B,A,200);
[H,w]=freqz(B,A,200,'whole'); %求出对应0~2?范围内200个频率点的频率响%应样值 HF=abs(H); %求出幅频特性值 HX=angle(H); %求出相频特性值 subplot(2,1,1);plot(w,HF) %画出幅频特性曲线 subplot(2,1,2);plot(w,HX) %画出相频特性曲线
运行结果如下:
4
运行结果分析:从该系统的幅频特性曲线可以看出,该系统呈高通特性,是一阶高通滤波器。
三、 实验内容
1. 求出下列离散序列的Z变换
k?① f1(k)?(1)cos(k2)?(k) 2k② f2(k)?k(k?1)(2 3)?(k)③ f3(k)??(k)??(k?5)
④ f4(k)?k(k?1)??(k)??(k?5)?
2. 已知下列单边离散序列的z变换表达式,求其对应的原离散序列。
z2?z?1①F1(z)?
2z?z?2②F2(z)?1?1111?2?3?4 zzzz2(z2?3z?6)③F3(z)?
4zz(z2?z?1)④ F4(z)?
(z?1)(z?2)(z?3)3. 已知离散系统的系统函数H (z)如下,请绘出系统的幅频和相频特性曲线,并说明系统的作用 ① H(z)?4z?4 12(z?2)(z?3)z2?1② H(z)?
2z?0.814. 已知描述离散系统的差分方程为:
y(k)?1.2y(k?1)?0.35y(k?2)?e(k)?0.25e(k?1)
请绘出系统的幅频和相频特性曲线,并说明系统的作用。
四、 预习要求
1、 熟悉正反z变换的意义及用MATLAB软件实现的方法
5