(完整版)基于matlab的Z变换与反Z变换
(完整版)实验二z变换及其应用
实验三z变换及其应用3.1实验目的1)加深对离散系统变换域分析——z变换的理解;2)掌握进行z变换和z反变换的基本方法,了解部分分式法在z反变换中的应用;3)掌握使用MATLAB语言进行z变换和z反变换的常用函数。
3.2实验涉及的MATLAB函数1)ztrans功能:返回无限长序列函数x(n)的z变换。
调用格式:X=ztrans(x);求无限长序列函数x(n)的z变换X(z),返回z变换的表达式。
2)iztrans功能:求函数X(z)的z反变换x(n)。
调用格式:x=iztrans(X);求函数X(z)的z反变换x(n),返回z反变换的表达式。
3)syms功能:定义多个符号对象。
调用格式:syms a b w0;把字符a,b,w0定义为基本的符号对象。
4)residuez功能:有理多项式的部分分式展开。
调用格式:[r,p,c]=residuez(b,a);把b(z)/a(z)展开成部分分式。
[b,a]=residuez(r, p, c);根据部分分式的r、p、c数组,返回有理多项式。
其中:b,a为按降幂排列的多项式的分子和分母的系数数组;r为余数数组;p为极点数组;c为无穷项多项式系数数组。
3.3实验原理1)用ztrans 子函数求无限长序列的z 变换MATLAB 提供了进行无限长序列的z 变换的子函数ztrans 。
使用时须知,该函数只给出z 变换的表达式,而没有给出收敛域。
另外,由于这一功能还不尽完善,因而有的序列的z 变换还不能求出,z 逆变换也存在同样的问题。
例1 求以下各序列的z 变换。
012345(1)(),(),(),21(),()(1)n jw n n n x n a x n n x n x n e x n n n -=====- syms w0 n z a x1=a^n; X1=ztrans(x1) x2=n; X2=ztrans(x2) x3=(n*(n-1))/2; X3=ztrans(x3) x4=exp(j*w0*n); X4=ztrans(x4) x5=1/(n*(n-1)); X5=ztrans(x5)2)用iztrans 子函数求无限长序列的z 反变换MATLAB 还提供了进行无限长序列的z 反变换的子函数iztrans 。
matlab 时域信号z变换
Matlab 时域信号Z变换1. 介绍时域信号是指信号随时间变化的过程,而Z变换是一种用来分析时域信号的工具。
Matlab作为一种强大的科学计算软件,提供了丰富的函数和工具,可以对时域信号进行Z变换分析。
2. Z变换概述Z变换是一种将离散时间信号转换为Z域频率域的方法。
通过Z变换,可以将差分方程转换为传输函数,进而分析控制系统的稳定性和性能。
Z变换在数字信号处理、控制系统设计等领域有着广泛的应用。
3. Matlab中的Z变换函数在Matlab中,可以使用ztrans函数对离散时间信号进行Z变换。
该函数的语法如下:[H,p,k] = ztrans(h)其中,h为输入的差分方程,H为Z变换后的传输函数,p为极点,k 为常数项。
4. 示例以下是一个使用Matlab进行Z变换的示例:假设有一个差分方程:y[n] = 0.5*y[n-1] + x[n]使用Matlab进行Z变换,可以得到传输函数H:syms z;h = 0.5*z^(-1)/(1 - 0.5*z^(-1));[H,p,k] = ztrans(h)通过上述示例可以看出,Matlab提供了简洁方便的函数,可以快速计算得到Z变换后的传输函数。
5. Z变换的应用Z变换在数字信号处理、控制系统设计、滤波器设计等领域有着广泛的应用。
通过Z变换,可以分析系统的频率响应、稳定性、传输函数等重要特性。
在数字滤波器设计中,Z变换可以将滤波器的差分方程转换为传输函数,从而分析滤波器的频率响应和稳定性。
在控制系统设计中,Z变换可以将差分方程转换为传输函数,从而分析系统的稳定性和性能。
6. 结论Matlab提供了丰富的函数和工具,可以方便快速地进行时域信号的Z 变换分析。
Z变换在数字信号处理、控制系统设计等领域有着广泛的应用,对于工程领域的研究和应用具有重要意义。
通过学习和掌握Matlab中的Z变换函数,可以更好地应用Z变换分析信号与系统的特性,促进科学研究和工程应用的发展。
matlab z变换
八、部分和
若 f(k) ←→F(z) , <z<,则
i
f (i) z 1 F ( z )
f (k ) * (k )
k
z
, max(,1)<z<
k
证明
i
f (i ) (k i )
k i
i
f (i )
z
对因果序列f(k),
f (0) lim F ( z )
z
▲
■
第 21 页
证明
F ( z)
k
f (k ) z
k
k
k M
f (k ) z
f (M ) z
M
f ( M 1) z
( M 1)
f ( M 2) z
( M 2 )
k
k 0 k 0
的z变换
lim
N
(az ) lim
1 k k 0
N
1 (az ) 1 az
1
N 1
N
1
可见,仅当az-1<1,即 z >a 时,其z变换存在。
Fy ( z ) z za
jIm[ z]
收敛域为|z|>|a|
o
|a|
Re[z]
▲
■
第 6页
例3 求反因果序列 的z变换
解
F f ( z)
b k , f f (k ) 0,
k 0 k 0
b (k 1)
k
k
(bz
1
1 k
实验-Z变换、零极点分析
(一)离散时间信号的Z 变换1.利用MATLAB 实现z 域的部分分式展开式MATLAB 的信号处理工具箱提供了一个对F(Z)进行部分分式展开的函数residuez(),其调用形式为:[r,p,k]=residuez(num,den)式中,num 和den 分别为F(Z)的分子多项式和分母多项式的系数向量,r 为部分分式的系数向量,p 为极点向量,k 为多项式的系数向量。
【实例1】 利用MATLAB 计算321431818)(-----+zz z z F 的部分分式展开式。
解:利用MATLAB 计算部分分式展开式程序为% 部分分式展开式的实现程序num=[18];den=[18 3 -4 -1];[r,p,k]=residuez(num,den)2.Z 变换和Z 反变换MATLAB 的符号数学工具箱提供了计算Z 变换的函数ztrans()和Z 反变换的函数iztrans (),其调用形式为)()(F iztrans f f ztrans F ==上面两式中,右端的f 和F 分别为时域表示式和z 域表示式的符号表示,可应用函数sym 来实现,其调用格式为()A sym S =式中,A 为待分析的表示式的字符串,S 为符号化的数字或变量。
【实例2】求(1)指数序列()n u a n 的Z 变换;(2)()()2a z az z F -=的Z 反变换。
解 (1)Z 变换的MATLAB 程序% Z 变换的程序实现f=sym('a^n');F=ztrans(f)程序运行结果为:z/a/(z/a-1)可以用simplify( )化简得到 :-z/(-z+a)(2)Z 反变换的MATLAB 程序% Z 反变换实现程序F=sym('a*z/(z-a)^2');f=iztrans(F)程序运行结果为f =a^n*n(二)系统函数的零极点分析1. 系统函数的零极点分布离散时间系统的系统函数定义为系统零状态响应的z 变换与激励的z 变换之比,即)()()(z X z Y z H = (3-1)如果系统函数)(z H 的有理函数表示式为:11211121)(+-+-++++++++=n n n n m m m m a z a z a z a b z b z b z b z H (3-2) 那么,在MATLAB 中系统函数的零极点就可通过函数roots 得到,也可借助函数tf2zp 得到,tf2zp 的语句格式为:[Z,P,K]=tf2zp(B,A)其中,B 与A 分别表示)(z H 的分子与分母多项式的系数向量。
matlab坐标系变换
matlab坐标系变换在MATLAB中,可以使用一些函数和操作实现坐标系的变换。
常见的一些方法有以下几种:1. 平移变换(Translation):通过对坐标系所有点的位置进行加减偏移来实现平移变换。
可以使用矩阵加法或点运算函数来实现。
例如,将坐标系中的点(x, y)平移一定偏移量(dx, dy),可以使用如下代码:```matlabx = x + dx;y = y + dy;```2. 旋转变换(Rotation):通过旋转坐标系中的点来实现旋转变换。
可以使用旋转矩阵或旋转函数来实现。
例如,将坐标系中的点(x, y)按逆时针方向旋转一个角度theta,可以使用如下代码:```matlabtheta_rad = deg2rad(theta); % 将角度转换为弧度x_rot = x*cos(theta_rad) - y*sin(theta_rad);y_rot = x*sin(theta_rad) + y*cos(theta_rad);```3. 缩放变换(Scale):通过缩放坐标系中的点的坐标值来实现缩放变换。
可以使用缩放矩阵或缩放函数来实现。
例如,将坐标系中的点(x, y)在x轴和y轴上分别缩放为原来的两倍,可以使用如下代码:```matlabscale_x = 2; % x轴缩放倍数scale_y = 2; % y轴缩放倍数x_scaled = x * scale_x;y_scaled = y * scale_y;```以上仅是坐标系变换的一些基本操作,实际应用中可能还会涉及更复杂的变换,如剪切、投影等。
MATLAB还提供了一些专门用于处理坐标系变换的函数和工具箱,例如`affine2d`类和`imwarp`函数,可以更方便地进行坐标系变换操作。
基于Matlab语言的线性离散系统的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、根据实验结果,分析离散传递函数不同极点的时间响应特点。
《自动控制原理》z变换与z反变换
7-3 z 变换与z 反变换引言:● 连续系统的分析:拉氏变换 传递函数 ● 用拉氏变换的优点: ……● 离散系统:能否拉氏变换?有什么问题?如何改进? ● 新理论/方法 如何产生?一、离散信号的拉氏变换及其问题设连续信号)(t e 是可拉氏变换的,则拉氏变换定义为⎰∞-=0)()(dt e t e s E st由于0<t 时,有0)(=t e ,故上式亦可写为⎰∞∞--=dt e t e s E st)()(对于采样信号)(*t e ,其表达式为∑∞=-=0*)()()(n nT t nT e t e δ故采样信号)(*t e 的拉氏变换])([)()]()([)()(0**⎰∑⎰∑⎰∞∞--∞=∞∞--∞=∞∞---=-==dt e nT t nT e dt e nT t nT e dt e t e s E stn stn stδδ(7-20)由广义脉冲函数的筛选性质⎰∞∞-=-)()()(nT f dt t f nT t δ故有snTst edt e nT t -∞∞--⎰=-)(δ于是,采样信号)(*t e 的拉氏变换可以写为nsTn enT e s E -∞=∑=0*)()( (7-21)和连续信号比较: ⎰∞-=0)()(dt e t e s E st)(1)(t t e =时: s dt e s E st1*1)(0==⎰∞-例7-3 设)(1)(t t e =,试求)(*t e 的拉氏变换。
解 由式(7-26),有...1)()(20*+++==--∞=-∑TsTsn nsTeeenT e s E一个无穷等比级数,公比为Tse-,求和后得闭合形式1,111)(*<-=-=TsTsTsTs e e e e s E 比较: s dt e s E st1*1)(0==⎰∞-显然,)(*s E 是Tse 的有理函数。
但是s 的超越函数例7-4[没有] 设,0,)(≥=-t e t e at为常数,试求t e *的拉氏变换。
matlab 一阶系统 z 变换
一阶系统的z变换在matlab中的应用1. 概述z变换是数字信号处理中常用的一种数学工具,用于将连续时间信号转换为离散时间信号。
在matlab中,z变换可以通过一些函数和工具实现,特别是在一阶系统中,z变换可以起到非常重要的作用。
2. 一阶系统的传递函数一阶系统是指系统的阶数为1的系统,在控制系统和信号处理中有着广泛的应用。
一阶系统的传递函数一般可以表示为:H(z) = (b0 + b1 * z^-1) / (1 + a1 * z^-1)其中,b0、b1、a1为系统的系数,z^-1表示z的倒数。
一阶系统的传递函数可以通过z变换来进行仿真和分析。
3. Matlab中的z变换在matlab中,可以使用zpk、tf和c2d等函数来进行z变换的操作。
其中,zpk函数用于创建或转换零极点模型,tf函数用于创建传递函数模型,c2d函数用于进行连续时间到离散时间的转换。
4. 一阶系统的z变换示例接下来,我们通过一个具体的示例来介绍一阶系统在matlab中的z变换操作。
假设我们有一个一阶系统的传递函数为:H(s) = 1 / (s + 1)我们首先可以使用tf函数来创建传递函数模型:Hs = tf([1], [1, 1])接下来,我们可以使用c2d函数将连续时间系统转换为离散时间系统:Ts = 0.1 离散化时间间隔Hz = c2d(Hs, Ts, 'tustin') 使用tustin方法进行离散化通过以上操作,我们就可以得到一阶系统在离散时间下的传递函数Hz。
5. 仿真分析在得到离散时间下的传递函数后,我们可以使用zpk函数来创建或转换零极点模型,并进行进一步的仿真分析。
我们可以使用zpk函数来获得离散时间下的零极点模型:[z, p, k] = zpkdata(Hz, 'v') 获取零点、极点和增益disp('离散时间下的零点:')disp(z)disp('离散时间下的极点:')disp(p)通过分析离散时间下的零极点,我们可以对系统的稳定性和动态特性进行评估和分析。
(完整版)基于matlab的Z变换与反Z变换
《数字信号处理》一、课程设计的目的及基本要求:1. 巩固所学的理论知识。
2.提高综合运用所学理论知识独立分析和解决问题的能力。
3. 更好地将理论与实践相结合。
4.掌握信号分析与处理的基本方法与实现。
5.学习并使用Matlab 语言进行编程实现课题要求。
二、课程设计内容1、 学习Matlab 软件及应用2、 学习并研究信号分析与处理课题有关理论3、利用Matlab 编程,完成相应的信号分析与处理课题4、写出课程设计报告,打印程序,给出运行结果(一) 实验目的(二)使用ztrans,iztrans 函数分别求出离散时间信号的Z 变换和逆Z 变换的结果,并用pretty 函数进行结果美化。
编写函数时养成良好的注释习惯,有利于对函数的理解。
复习MATLAB 的基本应用,如:help,可以帮助查询相关的函数的使用方法,巩固理论知识中的离散时间信号的传递函数与二次项式之间的转换。
实验项目一Z 变换(1)求)(])31()21[()(n u n x nn += Z 变换clearsyms nf=0.5^n+(1/3)^n; %定义离散信号F=ztrans(f) %z 变换pretty(F); 运算结果F(2)4)(n n x = Z 变换clearsyms nf=n^4; %定义离散信号F=ztrans(f) %Z 变换pretty(F) 运算结果(3))sin()(b an n x += Z 变换clearsyms a b nf = sin(a*n+b) %定义离散信号F=ztrans(f) %Z 变换pretty(F)运算结果实验项目二Z 反变换(1)2)2(2)(-=z z z X Z 反变换 clearsyms k zFz=2*z/(z-2)^2; %定义逆Z 变换表达式fk=iztrans(Fz,k) %逆Z 变换pretty(fk);运算结果(2)12)1()(2++-=z z z z z X Z 反变换 clearsyms k zFz=z*(z-1)/(z^2+2*z+1); %定义Z 反变换表达式fk=iztrans(Fz,k) %Z 反变换pretty(fk);运算结果f(3) 211cos 211)(---+-+=zz z z X ω Z 反变换 clearsyms k z wFz=(1+z^(-1))/(1-2*z^-1*cos(w)+z^-2); %定义Z 反变换表达式 fk=iztrans(Fz,k) %Z 反变换pretty(fk); 运算结果。
基于matlab的Z变换与反Z变换
《数字信号处理》(一) 实验目的(二)使用ztr a n s,iztra n s 函数分别求出离散时间信号的Z 变换和Z 反变换的结果,并用pre t ty 函数进行结果美化。
编写函数时养成良好的注释习惯,有利于对函数的理解。
复习MA T L AB 的基本应用,如:help,可以帮助查询相关的函数的使用方法,巩固理论知识中的离散时间信号的传递函数与二次项式之间的转换,以及使用z p lane 函数画出相关系统的零极点分布图,根据零极点的分布情况估计系统的滤波特性。
(三) 程序的运行与截图实验项目一Z 变换(1)求)(])31()21[()(n u n x nn += Z 变换clear all;close all;clc;syms nf=0.5^n+(1/3)^n; %定义离散信号F=ztran s (f) %z 变换prett y (F); 运算结果F(2)4)(n n x = Z 变换clear all ;close all ;clc;syms nf=n^4; %定义离散信号F=ztran s (f) %Z 变换prett y (F)运算结果(3))sin()(b an n x += Z 变换clear all;close all;clc;syms a b nf = sin(a*n+b) %定义离散信号F=ztran s (f) %Z 变换prett y (F)运算结果实验项目二Z 反变换(1)2)2(2)(-=z z z X Z 反变换 clear all;close all;clc;syms k zFz=2*z/(z-2)^2; %定义Z 反变换表达式fk=iztra n s(Fz,k) %Z 反变换prett y (fk);运算结果(2)12)1()(2++-=z z z z z X Z 反变换 clear all;close all;clc;syms k zFz=z*(z-1)/(z^2+2*z+1); %定义Z 反变换表达式fk=iztra n s(Fz,k) %Z 反变换prett y (fk);运算结果f(3) 211cos 211)(---+-+=z z z z X ω Z 反变换 clear all;close all;clc;syms k z wFz=(1+z^(-1))/(1-2*z^-1*cos(w)+z^-2); %定义Z 反变换表达式 fk=iztra n s(Fz,k) %Z 反变换prett y (fk);运算结果实验项目三各种模型之间的变换2)2)(1(10)(--=z z z z H =4851023-+-z z z z (1)clear all;close all;clc;b=[0 0 10 0];%分子的系数数组a=[1 -5 8 -4]; %分母的系数数组zplan e (b,a)% 使用zpl ane 函数绘制如下系统的零极点分布图 运算结果(2)clear all ;close all ;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组[r,p,c]=resid u ez(b,a) %使用mat l ab 中的r esid u ez 函数,将分解成为)(z H 多个简单有理分式之和运算结果r =-15.00005.000010.0000p =2.00002.00001.0000c =(3)clearall;closeall;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组[z,p,k]=tf2zp(b,a) %使用tf2z p求出系统函数的零、极点和增益运算结果z =p =2.00002.00001.0000k =10(4)clearall;closeall;clc;z=[1;-3];%零点,列向量p=[2; -4];%极点,列向量k=5; %增益[b,a] = zp2tf(z,p,k) %根据求出的零、极点和增益,然后自学使用zp2tf还原出分子和分母的系数运算结果(5)clearall;closeall;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组[sos,g]=tf2sos(b,a) %使用tf2s os将系统函数分解成一系列二阶子系统的级联形式运算结果sos =0 1.0000 0 1.0000 -2.0000 00 1.0000 0 1.0000 -3.0000 2.0000g =10(6)clearall;closeall;clc;sos=[0 1.0000 0 1.0000 -2.0000 0;0 1.0000 0 1.0000 -3.0000 2.0000];g=10;%增益[b,a]=sos2tf(sos,g) %根据求出的一系列二阶子系统,使用sos2tf还原出分子和分)H母的系数(z运算结果b =0 0 10 0a =1 -5 8 -4(7)clearall;closeall;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组n=(0:500)*pi/500; %在pi范围内取501个采样点[h,w]=freqz(b,a,n);%求系统的频率响应subplo t(2,1,1),plot(n/pi,abs(h));grid %作系统的幅度频响图axis([0,1,1.1*min(abs(h)),1.1*max(abs(h))]);ylabel(‘幅度’);subplo t(2,1,2),plot(n/pi,angle(h));grid %作系统的相位频响图axis([0,1,1.1*min(angle(h)),1.1*max(angle(h))]);ylabel(‘相位’);xlabel(‘以pi为单位的频率’);运行结果2221)(232+++++=z z z z z z H (1)clear all ;close all ;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组zplan e (b,a)% 使用zpl a ne 函数绘制如下系统的零极点分布图 运行结果(2)clear all ;close all ;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组[r,p,k]=resid u ez(b,a) %使用mat l ab 中的r esid u ez 函数,将分解成为)(z H 多个简单有理分式之和运行结果r =-0.4006-0.0497 - 0.1609i-0.0497 + 0.1609ip =-1.5437-0.2282 + 1.1151i-0.2282 - 1.1151ik =0.5000(3)clearall;closeall;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组[z,p,k]=tf2zp(b,a) %使用tf2z p求出系统函数的零、极点和增益运行结果z =-0.5000 + 0.8660i-0.5000 - 0.8660ip =-1.5437-0.2282 + 1.1151i-0.2282 - 1.1151ik =1(4)clearall;closeall;clc;z=[-0.5000 + 0.8660i-0.5000 - 0.8660i];p=[-1.5437-0.2282 + 1.1151i -0.2282 - 1.1151i ];k=1;[b,a]=zp2tf (z,p,k) %根据求出的零、极点和增益,使用zp2t f 还原出)(z H 分子和分母的系数运行结果b =0 1.0000 1.0000 1.0000a =1.00002.0001 2.0001 1.9999(5)clear all ;close all ;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组[sos,g]=tf2so s (b,a) %使用tf2s os 将系统函数分解成一系列二阶子系统的级联形式运行结果sos =0 1.0000 0 1.0000 1.5437 01.0000 1.0000 1.0000 1.0000 0.4563 1.2956g =1(6)clear all ;close all ;clc;sos=[ 0 1.0000 0 1.0000 1.5437 0;1.0000 1.0000 1.0000 1.0000 0.4563 1.2956];g=1;[b,a]=sos2t f (sos,g) %根据求出的一系列二阶子系统,自学使用s o s2tf 还原出分子)(z H 和分母的系数运行结果b =0 1 1 1a =1.00002.0000 2.0000 2.0000(7)clearall;closeall;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组n=(0:500)*pi/500; %在pi范围内取501个采样点[h,w]=freqz(b,a,n);%求系统的频率响应subplo t(2,1,1),plot(n/pi,abs(h));grid %作系统的幅度频响图axis([0,1,1.1*min(abs(h)),1.1*max(abs(h))]);ylabel('幅度');subplo t(2,1,2),plot(n/pi,angle(h));grid %作系统的相位频响图axis([0,1,1.1*min(angle(h)),1.1*max(angle(h))]);ylabel('相位');xlabel('以pi为单位的频率');运行结果实验项目四根据零极点分布图估计系统的滤波特性。
Z变换及逆变换与-稳定性
数字信号处理课程设计课程名称数字信号处理题目名称Z变换与逆变换与稳定性专业班级电子信息(12)学生XX学号指导教师二○××年××月××日Z变换-反变换求系统响应与稳定性判断引言 (1)数字信号处理 (2)MATLAB (2)GUI (2)课题相关 (2)设计要求 (1)理论知识 (1)离散时间系统 (2)Z变换 (2)数字信号处理 (2)离散时间系统的频域分析 (2)系统函数 (6)因果性和稳定在Z域的描述 (6)系统函数的零极点位置 (6)MATLAB仿真 (1)M脚本涉与函数 (2)GUI控件介绍 (2)常用控件 (6)控件的公共属性 (6)程序实现 (1)稳定系统I (5)稳定系统II (5)非稳定系统 (5)致谢 (1)参考文献 (4)附录 (1)1 引言1.1 数字信号处理数字信号处理就是用数值计算的方式对信号进行加工的理论和技术,它的英文原名叫digital signal processing,简称DSP。
另外DSP也是digital signal processor的简称,即数字信号处理器,它是集成专用计算机的一种芯片,只有一枚硬币那么大。
有时人们也将DSP看作是一门应用技术,称为DSP技术与应用。
数字信号处理是将信号以数字方式表示并处理的理论和技术。
数字信号处理与模拟信号处理是信号处理的子集。
数字信号处理的目的是对真实世界的连续模拟信号进行测量或滤波。
因此在进行数字信号处理之前需要将信号从模拟域转换到数字域,这通常通过模数转换器实现。
而数字信号处理的输出经常也要变换到模拟域,这是通过数模转换器实现的。
1.2 MATLABMATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以与数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。
Z变换-反变换求系统响应及稳定性判断
燕山大学课程设计说明书题目:Z变换-反变换求系统响应及稳定性判断学院(系):电气工程学院年级专业:学号:学生姓名:指导教师:教师职称:燕山大学课程设计(论文)任务书院(系):电气工程学院基层教学单位:自动化仪表系说明:此表一式四份,学生、指导教师、基层教学单位、系部各一份。
年月日目录第1章摘要 (1)1引言 (1)第2章基本原理 (2)2.1 MATLAB及数字信号处理 (2)2.2 Z变换与Z反变换的概念与原理 (2)2.3系统的稳定性 (8)第3章程序实现及结果分析 (9)学习心得 (13)第1章摘要1.引言介绍了Z变换及其逆变换的基本概念,论述了利用极点判断方法判定系统稳定性的原理和系统的单位脉冲响应和单位阶跃响应,并用MATLAB具体实现了的程序。
任何系统在扰动作用下都会偏离原平衡状态,开始产生偏差.所谓稳定性,是指系统在扰动消失后,由初始偏差状态恢复到原平衡状态的性能.系统的稳定性是系统设计与运行的首要条件,只有稳定的系统才值得分析与研究,才有必要分析研究该系统的其他自动控制问题.在经典控制理论中,线性系统稳定的充分必要条件。
利用极点判断系统的稳定性,该方法最有效,其计算相对复杂,而matlab又能利用其工具箱快速计算出一个系统的零极点坐标并能绘制出系统的零极点分布图,用户可以直观地判定一个系统是否稳定,简便快捷。
利用matlab分析控制系统的稳定性及系统的单位脉冲响应和单位阶跃响应,具有运算简单、操作方便、处理速度快、分析结果准确可靠等优点。
由此可见,MATLAB为工程技术人员分析、设计较优的控制系统提供了强有力的工具。
[关键词]MATLAB;控制系统;Z变换及反变换;稳定性;极点;单位脉冲响应;单位阶跃响应第2章 基本原理2.1 MATLAB 及数字信号处理MATLAB 是矩阵实验室之意。
除具备卓越的数值计算能力外,它还提供了专业水平的符号计算,文字处理,可视化建模仿真和实时控制等功能。
实验一 基于matlab语言的线性离散系统的z变换分析法1(1)
实验一基于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变换
8 z 19 X ( z) 2 z 5z 6
| z | 3
Z=sym('(8*z-19)/(z^2-5*z+6)'); x=iztrans(Z); simplify(x) ans= -19/6*charfcn[0](n)+5*3^(n-1)+3*2^(n-1) charfcn[0](n)是(n)函数在MATLAB符号工具箱中的表 示,反变换后的函数形式为:
三、实验原理
MATLAB实现
在MATLAB中系统函数的零极点就可通过函数roots得到, 也可借助DSP工具箱中的函数tf2zp得到,tf2zp的语句格 式为: [R,P,K]=tf2zp(B,A) 其中,B与A分别表示分子与分母多项式的系数向量。 它的作用是将H(z)的有理分式表示式转换为零极点增益 形式:
b=[0,0,1]; a=poly([1,1,2]); [r,p,k]=residuez(b,a);
得到 r= 1.0000 -0.0000 + 0.0000i -1.0000 + 0.0000i p=
2.0000 1.0000 + 0.0000i 1.0000 - 0.0000i []
%初始输入分子多项式的项数 %初始输入分子多项式的项数 %求三个系数[r,p,k]
X ( z)
0.36 0.24 0.4 1 0.5 z 1 1 0.3333z 1 (1 0.3333z 1 ) 2
x(n) [0.36 (0.5) n 0.24 (0.3333 ) n 0.4(n 1)(0.3333 ) n ]u(n)
三、实验原理n n x ( n ) Nhomakorabeaz
其中,符号表示取z变换,z是复变量。 相应地,单边z变换定义为:
实验Z变换、零极点分析
实验Z变换、零极点分析1. 学会运⽤MATLAB 求离散时间信号的z 变换和z 反变换;⼀、实验原理及实例分析(⼀)离散时间信号的Z 变换1.利⽤MATLAB 实现z 域的部分分式展开式MATLAB 的信号处理⼯具箱提供了⼀个对F(Z)进⾏部分分式展开的函数residuez(),其调⽤形式为:[r,p,k]=residuez(num,den)式中,num 和den 分别为F(Z)的分⼦多项式和分母多项式的系数向量,r 为部分分式的系数向量,p 为极点向量,k 为多项式的系数向量。
【实例1】利⽤MATLAB 计算321431818)(-----+zz z z F 的部分分式展开式。
解:利⽤MATLAB 计算部分分式展开式程序为% 部分分式展开式的实现程序num=[18];den=[18 3 -4 -1];[r,p,k]=residuez(num,den)2.Z 变换和Z 反变换MATLAB 的符号数学⼯具箱提供了计算Z 变换的函数ztrans()和Z 反变换的函数iztrans (),其调⽤形式为)()(F iztrans f f ztrans F ==上⾯两式中,右端的f 和F 分别为时域表⽰式和z 域表⽰式的符号表⽰,可应⽤函数sym 来实现,其调⽤格式为()A sym S =的Z 反变换。
解(1)Z 变换的MATLAB 程序% Z 变换的程序实现f=sym('a^n');F=ztrans(f)程序运⾏结果为:z/a/(z/a-1)可以⽤simplify( )化简得到 :-z/(-z+a)(2)Z 反变换的MATLAB 程序% Z 反变换实现程序F=sym('a*z/(z-a)^2');f=iztrans(F)程序运⾏结果为f =a^n*n(⼆)系统函数的零极点分析1. 系统函数的零极点分布离散时间系统的系统函数定义为系统零状态响应的z 变换与激励的z 变换之⽐,即)()()(z X z Y z H = (3-1)如果系统函数)(z H 的有理函数表⽰式为:11211121)(+-+-++++++++=n n n n m m m m a z a z a z a b z b z b z b z H (3-2)那么,在MATLAB 中系统函数的零极点就可通过函数roots 得到,也可借助函数tf2zp 得到,tf2zp 的语句格式为:[Z,P,K]=tf2zp(B,A)其中,B 与A 分别表⽰)(z H 的分⼦与分母多项式的系数向量。
实验四_Z变换
实验四 Z 变换【实验目的】 通过MATLAB 仿真离散时间系统,研究其时频域特性,加深对离散系统的冲激响应,频率响应分析和零极点分布概念和理解。
【实验原理】1.Z 变换原理(1).Z 变换 在数字信号处理的分析方法中,除时域分析方法外,还有变换域分析方法。
后者通常指Z 变换和傅里叶变换法。
变换域分析的最大优点是将离散系统的差分方程转化为简单的代数方程,使其求解大大简化,也使得对系统的特性分析更为方便。
对于离散时间信号,设序列为x (n ),则其Z 变换定义为: ,其中z 为复变量,是一个以时部为横坐标,虚部为纵坐∑+∞-∞=-=n n z n x z X )()(标构成的平面上的变量。
Z 变换记作,X (z )存在的z 的集合称为收敛域])([ )(n x z X Z =(ROC ),一般为+-<<x x R z R 由于ROC 是由定义的,因此一般为环形区域。
根据ROC 的特点,可以判定序列是右边序z 列、左边序列、双边序列等。
Z 变换具有一些重要的特性,是傅里叶变换的推广,包括线性、时移特性、频移特性、尺度变换、共轭、翻褶、Z 域微分、序列相乘、序列卷积等一系列性质。
(2).系统函数离散线性时不变(LTI )系统的系统函数H (z )定义为:H (z ) = Z[h (n )] = (4.4)∑+∞-∞=-n n z n h )(若用差分方程表示系统,则有 )k -n (b )k -n (a M 0k k N0k x y k ∑∑===如果系统起始状态为零,直接对上式的两边Z 变换,并利用移位特性,有 ∑∑=-=-==N 0M 0)()()(k k k k k k z a z b Z X z Y z H 因此,系统函数H (z )的分子和分母的系数正好等于差分方程的系数。
归一化,即使得0a y (n )前的参数为1,此时可以对上式的分子、分母进行因式分解,可得∏∏=-=-=N k k M m z z z H 1111m )p -(1)c -(1K )(得到系统的增益函数K 、零点、极点。
序列逆Z变换的Matlab实现
%计算N=60的FFT并绘出其幅频曲线 N=60;n=0:N-1;t=0.01*n; q=n*2*pi/N; x=2*sin(4*pi*t)+5*cos(8*pi*t); y=fft(x,N); figure(1) subplot(2,2,4) plot(q,abs(y)) title('FFT N=60')
%计算N=55的FFT并绘出其幅频曲线 N=55;n=0:N-1;t=0.01*n; q=n*2*pi/N; x=2*sin(4*pi*t)+5*cos(8*pi*t); y=fft(x,N); figure(1) subplot(2,2,3) plot(q,abs(y)) title('FFT N=55')
•disp('留数:');disp(r'); % 显示输出参数
•disp('极点:');disp(p'); •disp('系数项:');disp(c');
程序运行结果为
X(z)的部分分式形式为
X
(z)
1 1 z1
1
1 0.5 z 1
•留数: 1
-1
逆Z变换为
•极点: 1.0000 0.5000 •系数项:
程序运行结果
FFT N=45 150
FFT N=50 150
100
100
50
50
0
0
2
4
6
8
FFT N=55 150
0
0
2
4
6
8
FFT N=60 150
100
100
50
50
0
0
2
用matlab绘制差分方程Z变换-反变换-zplane-residuez-tf2zp-zp2tf-t
《数字信号处理》(一)实验目的 使用ztrans,iztrans 函数分别求出离散时间信号的Z 变换和Z 反变换的结果,并用pretty 函数进行结果美化。
编写函数时养成良好的注释习惯,有利于对函数的理解。
复习MATLAB 的基本应用,如:help,可以帮助查询相关的函数的使用方法,巩固理论知识中的离散时间信号的传递函数与二次项式之间的转换,以及使用zplane 函数画出相关系统的零极点分布图,根据零极点的分布情况估计系统的滤波特性。
(二) 程序的运行与截图实验项目一Z 变换(1)求)(])31()21[()(n u n x nn += Z 变换clear all;close all;clc;syms nf=0.5^n+(1/3)^n; %定义离散信号F=ztrans(f) %z 变换pretty(F); 运算结果F(2)4)(n n x = Z 变换clear all ;close all ;clc;syms nf=n^4; %定义离散信号F=ztrans(f) %Z 变换pretty(F) 运算结果(3))sin()(b an n x += Z 变换clear all;close all;clc;syms a b nf = sin(a*n+b) %定义离散信号F=ztrans(f) %Z 变换pretty(F) 运算结果实验项目二Z 反变换(1)2)2(2)(-=z z z X Z 反变换 clear all;close all;clc;syms k zFz=2*z/(z-2)^2; %定义Z 反变换表达式fk=iztrans(Fz,k) %Z 反变换pretty(fk);运算结果(2)12)1()(2++-=z z z z z X Z 反变换 clear all;close all;clc;syms k zFz=z*(z-1)/(z^2+2*z+1); %定义Z 反变换表达式fk=iztrans(Fz,k) %Z 反变换pretty(fk);运算结果f(3) 211cos 211)(---+-+=z z z z X ω Z 反变换 clear all;close all;clc;syms k z wFz=(1+z^(-1))/(1-2*z^-1*cos(w)+z^-2); %定义Z 反变换表达式fk=iztrans(Fz,k) %Z 反变换pretty(fk);运算结果实验项目三各种模型之间的变换2)2)(1(10)(--=z z z z H =4851023-+-z z z z (1)clear all;close all;clc;b=[0 0 10 0];%分子的系数数组a=[1 -5 8 -4]; %分母的系数数组zplane(b,a)% 使用zplane 函数绘制如下系统的零极点分布图 运算结果(2)clear all ;close all ;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组[r,p,c]=residuez(b,a) %使用matlab 中的residuez 函数,将)(z H 分解成为多个简单有理分式之和运算结果r =-15.00005.000010.0000p =2.00002.00001.0000c =(3)clear all;close all;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组[z,p,k]=tf2zp(b,a) %使用tf2zp求出系统函数的零、极点和增益运算结果z =p =2.00002.00001.0000k =10(4)clear all;close all;clc;z=[1;-3];%零点,列向量p=[2; -4];%极点,列向量k=5; %增益[b,a] = zp2tf(z,p,k) %根据求出的零、极点和增益,然后自学使用zp2tf还原出分子和分母的系数运算结果(5)clear all;close all;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组[sos,g]=tf2sos(b,a) %使用tf2sos将系统函数分解成一系列二阶子系统的级联形式运算结果sos =0 1.0000 0 1.0000 -2.0000 00 1.0000 0 1.0000 -3.0000 2.0000g =10(6)clear all;close all;clc;sos=[0 1.0000 0 1.0000 -2.0000 0;0 1.0000 0 1.0000 -3.0000 2.0000];g=10;%增益[b,a]=sos2tf(sos,g) %根据求出的一系列二阶子系统,使用sos2tf还原出H分子和分母的系数)(z运算结果b =0 0 10 0a =1 -5 8 -4(7)clear all;close all;clc;b=[0 0 10 0]; %分子的系数数组a=[1 -5 8 -4]; %分母的系数数组n=(0:500)*pi/500; %在pi范围内取501个采样点[h,w]=freqz(b,a,n);%求系统的频率响应subplot(2,1,1),plot(n/pi,abs(h));grid %作系统的幅度频响图axis([0,1,1.1*min(abs(h)),1.1*max(abs(h))]);ylabel(‘幅度’);subplot(2,1,2),plot(n/pi,angle(h));grid %作系统的相位频响图axis([0,1,1.1*min(angle(h)),1.1*max(angle(h))]);ylabel(‘相位’);xlabel(‘以pi为单位的频率’);运行结果2221)(232+++++=z z z z z z H (1)clear all ;close all ;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组zplane(b,a)% 使用zplane 函数绘制如下系统的零极点分布图 运行结果(2)clear all ;close all ;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组[r,p,k]=residuez(b,a) %使用matlab 中的residuez 函数,将)(z H 分解成为多个简单有理分式之和运行结果r =-0.4006-0.0497 - 0.1609i-0.0497 + 0.1609ip =-1.5437-0.2282 + 1.1151i-0.2282 - 1.1151ik =0.5000(3)clear all;close all;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组[z,p,k]=tf2zp(b,a) %使用tf2zp求出系统函数的零、极点和增益运行结果z =-0.5000 + 0.8660i-0.5000 - 0.8660ip =-1.5437-0.2282 + 1.1151i-0.2282 - 1.1151ik =1(4)clear all;close all;clc;z=[-0.5000 + 0.8660i-0.5000 - 0.8660i];p=[-1.5437-0.2282 + 1.1151i-0.2282 - 1.1151i ];k=1;[b,a]=zp2tf(z,p,k) %根据求出的零、极点和增益,使用zp2tf 还原出)(z H 分子和分母的系数运行结果b =0 1.0000 1.0000 1.0000a =1.00002.0001 2.0001 1.9999(5)clear all ;close all ;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组[sos,g]=tf2sos(b,a) %使用tf2sos 将系统函数分解成一系列二阶子系统的级联形式运行结果sos =0 1.0000 0 1.0000 1.5437 0 1.0000 1.0000 1.0000 1.0000 0.4563 1.2956g =1(6)clear all ;close all ;clc;sos=[ 0 1.0000 0 1.0000 1.5437 0;1.0000 1.0000 1.0000 1.0000 0.4563 1.2956];g=1;[b,a]=sos2tf(sos,g) %根据求出的一系列二阶子系统,自学使用sos2tf 还原出)(z H 分子和分母的系数运行结果b =0 1 1 1a =1.00002.0000 2.0000 2.0000(7)clear all;close all;clc;b=[0 1 1 1]; %分子的系数数组a=[1 2 2 2]; %分母的系数数组n=(0:500)*pi/500; %在pi范围内取501个采样点[h,w]=freqz(b,a,n);%求系统的频率响应subplot(2,1,1),plot(n/pi,abs(h));grid %作系统的幅度频响图axis([0,1,1.1*min(abs(h)),1.1*max(abs(h))]);ylabel('幅度');subplot(2,1,2),plot(n/pi,angle(h));grid %作系统的相位频响图axis([0,1,1.1*min(angle(h)),1.1*max(angle(h))]);ylabel('相位');xlabel('以pi为单位的频率');运行结果实验项目四根据零极点分布图估计系统的滤波特性。
MATLAB 第3章 Z变换
x(n) z x(n) z n
n n n1 n 0
1
0 Z Rx Z
其中:Rx-为收敛域的最小半径。 数字信号处理
右边序列的 收敛域
Rx Z
第三章 Z变换
jIm[z]
Rx -
o
Re[z]
图3-3 右边序列及其收敛域 (n1<0, |z|=∞除外)
数字信号处理
第三章 Z变换
三.几种序列的收敛域
(1)有限长序列:
x ( n), n1 n n2 x ( n) 其他n 0,
其z变换为
收敛域为
0 z
图3-2 有限长序列及其收敛域 (n1 0, n2 0;z 0, z 除外)
数字信号处理
第三章 Z变换
第三章 Z变换
二.Z变换的收敛域 1.收敛域的定义:对任意给定序列x(n),使其z
变换收敛的所有z值的集合称为X(z)的收敛域。
2. 收敛条件:X ( z )
n
x(n) z n 的级数收敛的充
分必要条件是满足绝对可和的条件,即要求
n | x ( n ) z | M
数字信号处理
第三章 Z变换
例3-2 x(n)=anu(n), 求其z变换及收敛域。
解 这是一个因果序列,其z变换为
X ( z) a z
n 0
n n
1 z (az ) 1 1 az za n 0
1 n
|z|>|a|
这是一个无穷项的等比级数求和,只有在 |az-1|<1 即 |z|>|a|处收敛如图3-4所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数字信号处理》
一、课程设计的目的及基本要求:
1. 巩固所学的理论知识。
2.提高综合运用所学理论知识独立分析和解决问题的能力。
3. 更好地将理论与实践相结合。
4.掌握信号分析与处理的基本方法与实现。
5.学习并使用Matlab 语言进行编程实现课题要求。
二、课程设计内容
1、 学习Matlab 软件及应用
2、 学习并研究信号分析与处理课题有关理论
3、利用Matlab 编程,完成相应的信号分析与处理课题
4、写出课程设计报告,打印程序,给出运行结果
(一) 实验目的
(二)
使用ztrans,iztrans 函数分别求出离散时间信号的Z 变换和逆Z 变换的结果,并用pretty 函数进行结果美化。
编写函数时养成良好的注释习惯,有利于对函数的理解。
复习MATLAB 的基本应用,如:help,可以帮助查询相关的函数的使用方法,巩固理论知识中的离散时间信号的传递函数与二次项式之间的转换。
实验项目一Z 变换
(1)求)(])31()21[()(n u n x n
n += Z 变换
clear
syms n
f=0.5^n+(1/3)^n; %定义离散信号
F=ztrans(f) %z 变换
pretty(F); 运算结果
F
(2)4
)(n n x = Z 变换
clear
syms n
f=n^4; %定义离散信号
F=ztrans(f) %Z 变换
pretty(F) 运算结果
(3))sin()(b an n x += Z 变换
clear
syms a b n
f = sin(a*n+b) %定义离散信号
F=ztrans(f) %Z 变换
pretty(F)
运算结果
实验项目二Z 反变换
(1)2)2(2)(-=z z z X Z 反变换 clear
syms k z
Fz=2*z/(z-2)^2; %定义逆Z 变换表达式
fk=iztrans(Fz,k) %逆Z 变换
pretty(fk);
运算结果
(2)1
2)1()(2++-=z z z z z X Z 反变换 clear
syms k z
Fz=z*(z-1)/(z^2+2*z+1); %定义Z 反变换表达式
fk=iztrans(Fz,k) %Z 反变换
pretty(fk);
运算结果
f
(3) 211
cos 211)(---+-+=z
z z z X ω Z 反变换 clear
syms k z w
Fz=(1+z^(-1))/(1-2*z^-1*cos(w)+z^-2); %定义Z 反变换表达式 fk=iztrans(Fz,k) %Z 反变换
pretty(fk); 运算结果。