离散时间系统与z变换分析法(一)
- 格式:pdf
- 大小:712.78 KB
- 文档页数:74
离散时间系统与z变换简介离散时间系统是一种在时间轴上以离散方式运行的系统。
在这种系统中,信号的取样是在特定的时间间隔内进行的,而不是连续地采样。
离散时间系统可以用于模拟实际世界中的许多系统,如数字信号处理、数字滤波器和控制系统等。
离散时间系统的数学表达通常使用z变换。
z变换是一种将离散时间信号转换为复平面上的函数的变换。
它与连续时间系统中的拉普拉斯变换类似,但在z变换中,时间是用离散的步长表示的。
z变换将离散时间系统中的差分方程转换为复平面上的代数表达式,从而方便了对系统的分析和设计。
在离散时间系统中,信号和系统的运算通常使用差分方程进行描述。
差分方程是一种递推关系,它将当前时间步的输入和输出与其之前的时间步的输入和输出之间建立起关联。
z变换提供了一种将这些差分方程转换为代数方程的方法,从而可以更方便地分析系统的特性。
使用z变换,可以计算离散时间系统的频率响应、稳定性和传输函数等重要性质。
频率响应描述了系统对不同频率输入的响应。
稳定性判断了系统是否能够产生有界的输出,而传输函数则表示系统输入和输出之间的关系。
总结来说,离散时间系统是一种以离散方式运行的系统,可以使用z变换进行数学建模和分析。
z变换将离散时间信号和系统转换为复平面上的函数,方便了对系统的频率响应、稳定性和传输函数等特性进行研究。
离散时间系统和z变换在数字信号处理和控制系统等领域具有广泛的应用。
离散时间系统是现代通信、信号处理、控制系统等领域中的核心概念之一。
离散时间系统可以通过对输入信号进行离散采样,以特定的时间间隔获取信号的采样值,从而实现在离散时间点上对信号进行处理和操作。
与连续时间系统不同,离散时间系统的输入和输出信号在时间上都是离散的。
离散时间系统的分析和设计常常采用差分方程描述。
差分方程是一种递推关系,它表达了当前时间步的输入和输出与之前时间步的输入和输出之间的关系。
在离散时间系统中,z变换是一种非常重要的数学工具。
z变换将离散时间信号转换为复平面上的函数,从而方便了对离散时间系统进行数学建模和分析。
基于Matlab语言的线性离散系统的Z变换分析法实验一基于Matlab语言的线性离散系统的Z变换分析法班级: 姓名: 学号: 日期:一、实验目的:1、学习并掌握Matlab语言离散时间系统模型建立方法;2.学习离散传递函数的留数分析与编程实现的方法;3.学习并掌握脉冲与阶跃的编程方法;4.理解与分析离散传递函数不同极点的时间响应特点。
二、实验工具:1MATLAB软件(6、5以上版本);2每人计算机一台。
三、实验内容:1在Matlab语言平台上,通过给定的离散时间系统差分方程,理解课程中Z变换定义,掌握信号与线性系统模型之间Z传递函数的几种形式表示方法;2学习语言编程中的Z变换传递函数如何计算与显示相应的离散点序列的操作与实现的方法,深刻理解课程中Z变换的逆变换;3通过编程,掌握传递函数的极点与留数的计算方法,加深理解G(z)/z的分式方法实现过程;4通过系统的脉冲响应编程实现,理解输出响应的离散点序列的本质,即逆变换的实现过程;5通过编程分析,理解系统单位阶跃响应的Z变换就是系统的传递函数与单位阶跃函数Z变换,并完成响应的脉冲离散序列点的计算;6通过程序设计,理解课程中的不同的传递函数极点对系统动态行为的影响,如单独极点、复极点对响应的影响。
四、实验步骤:(一)传递函数的零极点程序: 结果:numg=[0、1 0、03 -0、07];deng=[1 -2、7 2、42 -0、72];g=tf(numg,deng,-1)get(g);[nn dd]=tfdata(g,'v')[zz,pp,kk]=zpkdata(g,'v')hold onpzmap(g), hold offaxis equal(二)留数法程序:numg=[2 -2、2 0、65];deng=[1 -0、6728 0、0463 0、4860];[rGoz, pGoz,other]=residue(numg,[deng 0])G=tf(numg,deng,-1)impulse(G)[y,k]=impulse(G);stem(k,y,'filled');impulse(G)结果:rGoz = 0、4905 + 0、0122i0、4905 - 0、0122i-2、31851、3374pGoz = 0、6364 + 0、6364i0、6364 - 0、6364i-0、6000other = []Transfer function:2 z^2 - 2、2 z + 0、65-----------------------------------z^3 - 0、6728 z^2 + 0、0463 z + 0、486Sampling time: unspecified(三)不同位置的根对系统的影响1)2个共轭极点(左圆内)+1实极点(圆内)P1 =0、6364 + 0、6364iP2=0、6364 - 0、6364iP3=-0、6000程序: 结果:zz3=[-0、2 0、4];pp3=[-0、6 0、6364+0、6364i 0、6364-0、6364i];kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,50);stem(k,y,'filled'),grid2)2个共轭极点(右圆内)+1实极点(圆内)P1= -0、8592 P2= -0、0932 + 0、4558i P3= -0、0932 - 0、4558i 程序: 结果:zz3=[-0、2 0、4];pp3=[-0、8592 -0、0932+0、4558i -0、0932-0、4558i]; kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,50);stem(k,y,'filled'),grid3)2个共轭极点(圆上)+1实极点(圆内)p1=0、6+0、8i p2=0、6-0、8i p3=-0、6程序: 结果:zz3=[-0、2 0、4];pp3=[-0、8592 -0、6+0、8i -0、6-0、8i];kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,100);stem(k,y,'filled'),grid4、2个共轭极点(虚轴上)+1实极点(圆内)p1=i p2= -i p3= -0、6程序: 结果:zz3=[-0、2 0、4];pp3=[-0、6 i -i];kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,100);stem(k,y,'filled'),grid5、2个实极点(圆内)+1个实极点(圆外)p1=2 p2=0、8 p3=-0、6程序: 结果:zz3=[-0、2 0、4];pp3=[2 0、8 -0、6];kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,100);stem(k,y,'filled'),grid6、2个实极点(圆内)+1个实极点(圆上)p1=1 p2=0、8 p3=-0、6程序: 结果:zz3=[-0、2 0、4];pp3=[1 0、8 -0、6];kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,100);stem(k,y,'filled'),gridp1=1 p2=-0、8 p3=-0、6程序: 结果:zz3=[-0、2 0、4];pp3=[1 0、8 -0、6];kk3=2;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);[y,k]=impulse(eg3,100);stem(k,y,'filled'),grid五、实验报告要求1、根据实验结果,分析离散传递函数不同极点的时间响应特点2、通过程序设计,分析不同的传递函数极点如:单极点、复极点、重根极点对系统动态行为的影响3、分析留数法的意义,根据系统的阶跃响应判别系统的稳定性4、对Z变换的进一步思考六、实验结果:1、根据实验结果,分析离散传递函数不同极点的时间响应特点。
实验一离散时间LTI系统的时域分析与Z域分析一、实验目的1、掌握用MATLAB求解离散时间系统的零状态响应、单位脉冲响应和单位阶跃响应;2、掌握离散时间系统系统函数零极点的计算方法和零极点图的绘制方法,并能根据零极点图分析系统的稳定性。
二、实验原理1、离散时间系统的时域分析(1)离散时间系统的零状态响应离散时间LTI系统可用线性常系数差分方程来描述,即MATLAB中函数filter可对式(1-1)的差分方程在指定时间范围内的输入序列所产生的响应进行求解。
函数filter的语句格式为:y=filter(b,a,x)其中,x为输入的离散序列;y为输出的离散序列;y的长度与x的长度一样;b与a分别为差分方程右端与左端的系数向量。
(2)离散时间系统的单位脉冲响应系统的单位脉冲响应定义为系统在 (n)激励下系统的零状态响应,用h(n)表示。
MATLAB求解单位脉冲响有两种方法:一种是利用函数filter;另一种是利用函数impz。
impz函数的常用语句格式为impz(b,a,n),其中b和a的定义见filter,n表示脉冲响应输出的序列个数。
(3)离散时间系统的单位阶跃响应系统的单位阶跃响应定义为系统在ε(n)激励下系统的零状态响应。
MATLAB求解单位脉冲响应有两种方法:一种是利用函数filter,另一种是利用函数stepz。
stepz函数的常用语句格式为stepz(b,a,N)其中,b和a的定义见filter,N表示脉冲响应输出的序列个数。
2、离散时间系统的Z域分析(1)系统函数的零极点分析离散时间系统的系统函数定义为系统零状态响应的z变换与激励的z变换之比,即如果系统函数H(z)的有理函数表示式为那么,在MATLAB中系统函数的零极点就可通过函数roots得到,也可借助函数tf2zp得到。
roots的语法格式为:Z=roots(b)%计算零点b=[b1b2…bmbm+1]P=roots(a)%计算极点a=[a1a2…anan+1]tf2zp的语句格式为[Z,P,K]=tf2zp(b,a)其中,b与a分别表示H(z)的分子与分母多项式的系数向量。
实验一基于MATLAB语言的线性离散系统的Z变换分析法一、实验目的1. 学习并掌握 Matlab 语言离散时间系统模型建立方法;2.学习离散传递函数的留数分析与编程实现的方法;3.学习并掌握脉冲和阶跃响应的编程方法;4.理解与分析离散传递函数不同极点的时间响应特点。
二、实验工具1. MATLAB 软件(6.5 以上版本);2. 每人计算机一台。
三、实验内容1. 在Matlab语言平台上,通过给定的离散时间系统差分方程,理解课程中Z变换定义,掌握信号与线性系统模型之间Z传递函数的几种形式表示方法;2. 学习语言编程中的Z变换传递函数如何计算与显示相应的离散点序列的操作与实现的方法,深刻理解课程中Z变换的逆变换;3. 通过编程,掌握传递函数的极点与留数的计算方法,加深理解G(z)/z 的分式方法实现过程;4. 通过系统的脉冲响应编程实现,理解输出响应的离散点序列的本质,即逆变换的实现过程;5. 通过编程分析,理解系统的Z传递函数等于单位脉冲响应的Z变换,并完成响应的脉冲离散序列点的计算;6. 通过程序设计,理解课程中脉冲传递函数极点对系统动态行为的影响,如单独极点、复极点对响应的影响。
四、实验步骤1.创建系统How to create digital system g Four examples are as follows:numg=[0.1 0.03 -0.07];deng=[1 -2.7 2.42 -0.72];g=tf(numg,deng,-1)get(g);[nn dd]=tfdata(g,'v')[zz,pp,kk]=zpkdata(g,'v')Unite circle region with distrbuting zeros points and poles points hold onpzmap(g), hold offaxis equal运行结果:2.转换为零极点标准形式Convert from tf(z-function) to zpk(z-function) Part C exercise form gg=zpk(g)[zz,pp,kk tts]=zpkdata(gg,'v')[z,p k,ts]=zpkdata(g,'v')运行结果:3.四个例子Four examples are as follows:Part A exerciseeg1mun=[1.25 -1.25,0.30];eg1den=[1 -1.05 0.80 -0.10];eg1=tf(eg1mun,eg1den,-1);eg1zpk=zpk(eg1);[zz1,pp1,kk1,tts1]=zpkdata(eg1zpk,'v');Part B exerciseeg2mun=[0.84 -0.062 -0.156 0.058];eg2den=[1 -1.03 0.22 0.094 0.05];eg2=tf(eg2mun,eg2den,-1);eg2zpk=zpk(eg2);[zz2,pp2,kk2,tts2]=zpkdata(eg2zpk,'v');Part C exercisezz3=[-0.2 0.4];pp3=[0.6 0.5+0.75i 0.5-0.75i 0.3];kk3=150;tts3=-1;eg3zpk=zpk(zz3,pp3,kk3,tts3);eg3=tf(eg3zpk);Part D exercisezz4=[-0.3 0.4+0.2i 0.4-0.2i];pp4=[-0.6 -0.3,0.5 0.6];kk4=5;tts4=-1;eg4zpk=zpk(zz4,pp4,kk4,tts4);eg4=tf(eg4zpk);4.留数法Residue method and impluse response numg=[2 -2.2 0.65];deng=[1 -0.6728 0.0463 0.4860]; [rGoz, pGoz,other]=residue(numg,[deng 0]) [mag_pGoz,theta_pGoz] =xy2p(pGoz)[mag-rGoz,theta-rGoz]=xy2p(rGoz)G=tf(numg,deng,-1)impulse(G)[y,k]=impulse(G);stem(k,y,'filled');impulse(G)运行结果:5.复杂极点响应When transfer function is G(Z) with complex ,t=t*ts;pole of z=e^(+-j*30*pi/3) and z=-0.5,as well as its gain value is unit step signal,its collecting cycle is 0.5 second,how to analyze its response.gcfts=0.3;num=[1 0.5];den=conv([1 -exp(i*pi/3)],[1 -exp(-i*pi/3)]);g1=tf(num,den,ts)[y,k]=impulse(g1,20);stem(k,y,'filled'),grid运行结果:6.重极点响应How to analyze response with repeating poles dtime=[0:90];y(k+2)-1.8y(k+1)+0.81y(k)=3u(k+1)-1.2u(k) yi=impulse(gstep,dtime)gcfnum=[3 -1.2];den=[1 -1.8 0.81];[rGoz, pGoz,other]=residue(num,[den 0])t=0:60;y=rGoz(2,1).*(t.*(pGoz(2,1).^(t-1)))+rGoz(1,1).*(pGoz(1,1).^(t)) y1=zeros(1,61);y1(1,1)=rGoz(3,1);y=y+y1;t=ts*t;stem(t,y,'filled'),gridSpecial example about difference real pole tosystem response[rGoz,pGoz,other]=residue(num,[den,0])num1=[rGoz(1) 0];den1=[1 -pGoz(1)]gg1=tf(num1,den1,ts)[y,t]=impulse(gg1,50)stem(t,y,'filled'),grid运行结果:7.阶跃响应numg=[2 -2.2 0.56];deng=[1 -0.6728 0.0463 0.4860];g=tf(numg,deng,1);numgstep=[numg 0];dengstep=conv(deng,[1 -1]);gstep=tf(numgstep,dengstep,1)dtime=[0:90];yi=impulse(gstep,dtime)subplot(2,1,1)stem(dtime,yi,'filled')ys=step(g,dtime);subplot(2,1,2)stem(dtime,ys,'filled')dcgain(g)ys_ss=ys(end)ys_ss=ys(max(dtime))运行结果:Example 1: Analysis of subsection input function subplot(1,1,1)num=[2 -2.2 0.56];den=[1 -0.6728 0.0463 0.4860];ts=0.2;g=tf(num,den,ts);dtime=[0:ts:8]';u=2.0*ones(size(dtime));ii=find(dtime>=2.0); u(ii)=0.5;y=lsim(g,u,dtime);stem(dtime,y,'filled'),gridhold onplot(dtime,u,'o')hold offtext(2.3,-1.8,'output')text(1.6,2.3,'input')运行结果:五、实验思考1、根据实验结果,分析离散传递函数不同极点的时间响应特点。
z 变换与离散时间Fourier 1、z 变换2、离散时间3、序列的z Fourier 变换的关系4、离散系统的系统函数,系统的频率响应信号与系统的分析方法:时域分析方法 变换域分析方法连续时间信号与系统: Fourier Laplace离散时间信号与系统: z 变换离散时间信号与系统的分析方法2.1.1 z 变换的定义2.1 z 变换:z X )(其中成一个复平面,称为ωj e r z ⋅=(x z 反变换:其中,积分路径是在逆时针旋转的闭合围线。
在数字信号处理中,不需要用围线积分来求2.1.2 z 变换的收敛域对任意给定序列的所有z 值的集合称为z 变换公式的级数收敛的充要条件是满足绝对可和,对某一具体的使该不等式成立,这个域,收敛域内不能有极点。
n ∞=−∞∑2.1.3 4 种典型序列的除0 和∞两点是否收敛与n 1和n 2取值情况有关外,整个z 平面均收敛。
1. 有限长序列x (n ) 只在n 1≤n ()()z X z x n 其变换:即要求: ROC 至少为:1()()X z x n z −=0(0)x z +如果n 2 ≤0 n 1<0,n 2≤如果n 1≥0 n 1≥0,n 2> 0如果n 1< 0 <n 1<0,n 2 > 0 1100n n Roc ∴≥<当时, 当时, 因果序列的处收敛在∞处收敛的变换,其序列必为因果序列在工程中,人们感兴趣的主要是因果序列。
1()()n n X z x n ∞==∑2. 右边序列x (n ) 在n ≥n 1时有值,在2200n n Roc ∴≤>当时, 当时,2()()()n n n X z x n x n =−∞=−∞==∑∑3. 左边序列x (n ) 在n ≤n 2 时有值,在x x x x x R R R R z R −+−++∴≥<<<当时, 当时,0()()()nn n X z x n x n z ∞−=−∞==∑ Roc: 0≤前式 Roc: x R −后式4. 双边序列n 为任意值时x 例1:x (n )=δ(变换及收敛域。
实验三 z 变换及离散时间LTI 系统的z 域分析一. 实验目的● 学会运用MATLAB 求离散时间信号的z 变换和z 反变换; ● 学会运用MATLAB 分析离散时间系统的系统函数的零极点;● 学会运用MATLAB 分析系统函数的零极点分布与其时域特性的关系; ●学会运用MATLAB 进行离散时间系统的频率特性分析。
二.实验原理及实例分析 1. z 正反变换序列()n x 的z 变换定义为()()[]()∑∞-∞=-==n nzn x n x z X Z (3-1)其中,符号Z 表示取z 变换,z 是复变量。
相应地,单边z 变换定义为()()[]()∑∞=-==0n n z n x n x z X Z (3-2)MATLAB 符号数学工具箱提供了计算离散时间信号单边z 变换的函数ztrans 和z 反变换函数iztrans ,其语句格式分别为Z=ztrans(x) x=iztrans(z)上式中的x 和Z 分别为时域表达式和z 域表达式的符号表示,可通过sym 函数来定义。
注意:符号变量和符号表达式在使用前必须说明;matlab 提供了两个建立符号变量的函数:sym 和syms ,两个函数的用法不同 (1)sym 函数用来建立单个符号变量,调用格式: 符号变量名=sym('符号字符串')该函数可以建立一个符号量,符号字符串也可以是常量、变量、函数或表达式。
>>f1=sym(‘a x^2+b x+c ’) %创建符号变量f1和一个符号表达式(2)函数sym 一次只能定义一个符号变量,而syms 函数一次可以定义多个符号变量,调用格式为:syms 符号变量名1 符号变量名2 … 符号变量名n用这种格式定义符号变量时不要在变量名上加字符串分界符('),变量间用空格而不要用逗号分隔。
>> syms a b c x(3)MATLAB 提供的对符号表达式化简的函数有: simplify(s)【实例3-1】 试用ztrans 函数求下列函数的z 变换。