数字信号处理实验指导书 山东大学控制学院生物医学工程专业 刘忠国 2015-2-10
数字信号处理实验指导书 山东大学控制学院生物医学工程专业 刘忠国 2015-2-10
数字信号处理实验目录 实验一离散时间信号与系统分析3 实验二离散时间信号与系统的Z变换分析…7 实验三 11R滤波器的设计与信号滤波…I3 实验四用窗函数法设计F引R数字滤波器…15 实验五用FFT作谱分析… …17 实验六综合实验… …19 附录:各实验参考程序… …20 2
2 数字信号处理实验目录 实验一 离散时间信号与系统分析………………………………3 实验二 离散时间信号与系统的 Z 变换分析 ……………………7 实验三 IIR 滤波器的设计与信号滤波 …………………………13 实验四 用窗函数法设计 FIR 数字滤波器………………………15 实验五 用 FFT 作谱分析…………………………………………17 实验六 综合实验…………………………………………………19 附 录: 各实验参考程序…………………………………………20
实验一离散时间信号与系统分析 一、实验目的 1.掌握离散时间信号与系统的时域分析方法。 2.掌握序列傅氏变换的计算机实现方法,利用序列的傅氏变换对离散信号、系统及系 统响应进行频域分析。 3.熟悉理想采样的性质,了解信号采样前后的频谱变化,加深对采样定理的理解。 二、实验原理 1.离散时间系统 一个离散时间系统是将输入序列变换成输出序列的一种运算。若以T[门来表示这种运 算,则一个离散时间系统可由下图来表示: TH] 图离散时间系统 输出与输入之间关系用下式表示 y(n)=T[x(n)] (1) 离散时间系统中最重要、最常用的是线性时不变系统。 2.离散时间系统的单位脉冲响应 设系统输入x(n)=6(n),系统输出y(n)的初始状态为零,这时系统输出用h(n)表示, 即h(n)=T[6(n)】,则称h(n)为系统的单位脉冲响应。 可得到:y(nm)= 立xmhn-m=m=hm (2) 该式说明线性时不变系统的响应等于输入序列与单位脉冲序列的卷积。 3.连续时间信号的采样 采样是从连续信号到离散时间信号的过渡桥梁,对采样过程的研究不仅可以了解采样前 后信号时域和频域特性发生的变化以及信号内容不丢失的条件,而且有助于加深对拉氏变 换、傅氏变换、Z变换和序列傅氏变换之间关系的理解。 对一个连续时间信号进行理想采样的过程可以表示为信号与一个周期冲激脉冲的乘 积,即:(t)=x(t)6(t) (3)
3 实验一 离散时间信号与系统分析 一、实验目的 1.掌握离散时间信号与系统的时域分析方法。 2.掌握序列傅氏变换的计算机实现方法,利用序列的傅氏变换对离散信号、系统及系 统响应进行频域分析。 3.熟悉理想采样的性质,了解信号采样前后的频谱变化,加深对采样定理的理解。 二、实验原理 1.离散时间系统 一个离散时间系统是将输入序列变换成输出序列的一种运算。若以 T[] 来表示这种运 算,则一个离散时间系统可由下图来表示: 图 离散时间系统 输出与输入之间关系用下式表示 y(n) = T[x(n)] (1) 离散时间系统中最重要、最常用的是线性时不变系统。 2.离散时间系统的单位脉冲响应 设系统输入 x(n) = (n) ,系统输出 y(n) 的初始状态为零,这时系统输出用 h(n) 表示, 即 h(n) = T[ (n)] ,则称 h(n) 为系统的单位脉冲响应。 可得到: y(n) x(m)h(n m) x(n) h(n) m = − = =− (2) 该式说明线性时不变系统的响应等于输入序列与单位脉冲序列的卷积。 3.连续时间信号的采样 采样是从连续信号到离散时间信号的过渡桥梁,对采样过程的研究不仅可以了解采样前 后信号时域和频域特性发生的变化以及信号内容不丢失的条件,而且有助于加深对拉氏变 换、傅氏变换、Z 变换和序列傅氏变换之间关系的理解。 对一个连续时间信号进行理想采样的过程可以表示为信号与一个周期冲激脉冲的乘 积,即: x ˆ(t) x(t) (t) = T (3) T[]
其中,元()是连续信号x(U)的理想采样,6(t)是周期冲激脉冲 d,0=∑t-mD 设模拟信号x(t),冲激函数序列6,(t)以及抽样信号()的傅立叶变换分别为X(2)、 M(2)和X(2),即 X.(2)=F[x(] M(2)=F[6(t)] (U2)=F[t] 根据连续时间信号与系统中的频域卷积定理,式(3)表示的时域相乘,变换到频域为 卷积运算,即 m=元MXUn1 其中 X(U2)=FLx(i=广x0)ed山 由t可以推号出8UQ)-=子之XU0-) 由上式可知,信号理想采样后的频谱是原来信号频谱的周期延拓,其延拓周期等于采样 频率。根据香农定理,如果原信号是带限信号,且采样频率高于原信号最高频率的2倍,则 采样后的离散序列不会发生频谱混叠现象。 4.有限长序列的分析 对于长度为N的有限长序列,我们只观察、分析在某些频率点上的值。 x(n), 0≤n≤W-l x(n)= 0 其它n 一般只需要在0~2π之间均匀的取M个频率点,计算这些点上的序列傅立叶变换: N-I X(em)=∑xn)emm 7=0 其中,og=2k/M,k=0,l,…,M-1。X(°)是一个复函数,它的模就是幅频特 性曲线。 三、主要实验仪器及材料
4 其中, x ˆ (t) a 是连续信号 x (t) a 的理想采样, (t) T 是周期冲激脉冲 =− = − m T (t) (t mT) 设模拟信号 x(t) ,冲激函数序列 (t) T 以及抽样信号 x ˆ(t) 的傅立叶变换分别为 X ( j) 、 M ( j) 和 ( ) X ˆ j ,即 X ( j ) F[x (t)] a = a M( j ) F[ (t)] = T ( ) [ˆ( )] ˆ X j = F x t 根据连续时间信号与系统中的频域卷积定理,式(3)表示的时域相乘,变换到频域为 卷积运算,即 [ ( ) ( )] 2 1 ( ) X ˆ j = M j X j 其中 − − X j = F x t = x t e dt j t ( ) [ ( )] ( ) 由此可以推导出 =− = − k s X j jk T X j ( ) 1 ( ) ˆ 由上式可知,信号理想采样后的频谱是原来信号频谱的周期延拓,其延拓周期等于采样 频率。根据香农定理,如果原信号是带限信号,且采样频率高于原信号最高频率的 2 倍,则 采样后的离散序列不会发生频谱混叠现象。 4.有限长序列的分析 对于长度为 N 的有限长序列,我们只观察、分析在某些频率点上的值。 − = n x n n N x n 0 其它 ( ), 0 1 ( ) 一般只需要在 0 ~ 2 之间均匀的取 M 个频率点,计算这些点上的序列傅立叶变换: − = − = 1 0 ( ) ( ) N n j k jn k X e x n e 其中, k = 2k / M , k = 0,1, ,M −1。 ( ) j X e 是一个复函数,它的模就是幅频特 性曲线。 三、主要实验仪器及材料
微型计算机、Matlab软件。 四、实验内容 1.知识准备 认真复习离散信号与系统、单位脉冲响应、抽样定理等有关内容,阅读本实验原理与方 法。 )2.编制信号产生子程序,用于产生实验中要用到的信号序列,并分析幅频响应 (1)单位脉冲序列 1,n=0 单位脉冲序列x(n)=6(n)= 0,n≠0 (2)系统单位脉冲响应序列 h,(n)=δn)+2.56n-1)+2.58n-2)+6(n-3) (3)理想采样信号序列 对信号x(t)=Ae“cos(21)u(t)进行理想采样,可以得到一个理想的采样信号序列 x(nT)=Aem1cos(2nT)u(nm),0≤n≤100。其中A为幅度因子,a是衰减因子,2是 频率,T为采样周期。这几个参数要在实验过程中输入,以产生不同的x()。 首先产生理想采样信号序列x(n),使A=200,=50π,2=260π。 然后改变参数A=1,=0.4,2=700π,产生理想采样信号序列x(n)。 3.离散信号、系统和系统响应的分析 观察信号x6(n)和系统h(n)的时域和频域特性:利用线性卷积求信号通过系统以后的响 应。比较系统响应和信号的时域和幅频特性。绘出图形。 4.分析理想采样信号序列的特性 产生理想采样信号序列,使: (1)首先选用采样频率为1000Hz,T=1/1000,观察所得理想采样信号的幅频特性,在 折叠频率以内和给定的理想幅频特性无明显差异,并作记录。 (2)改变采样频率为300Hz,T=1/300,观察所得理想采样信号的幅频特性曲线的变化, 并作记录。 (3)进一步减小采样频率为200Hz,T=1/200,观察频谱混叠现象是否明显存在,说明 原因,并记录此时的幅频特性曲线。 5
5 微型计算机、Matlab 软件。 四、实验内容 1.知识准备 认真复习离散信号与系统、单位脉冲响应、抽样定理等有关内容,阅读本实验原理与方 法。 a) 2.编制信号产生子程序,用于产生实验中要用到的信号序列,并分析幅频响应 (1)单位脉冲序列 单位脉冲序列 = = = 0, 0 1, 0 ( ) ( ) n n xb n n (2)系统单位脉冲响应序列 h (n) = (n) + 2.5 (n −1) + 2.5 (n − 2) + (n − 3) b (3)理想采样信号序列 对信号 x(t) Ae cos( t)u(t) t = − 进行理想采样,可以得到一个理想的采样信号序列 x(nT) Ae cos( nT)u(n) nT = − ,0 n 100 。其中 A 为幅度因子,是衰减因子,是 频率, T 为采样周期。这几个参数要在实验过程中输入,以产生不同的 x(n) 。 首先产生理想采样信号序列 x n( ) ,使 A =200, =50 , =260 。 然后改变参数A=1, =0.4, =700 ,产生理想采样信号序列 x n( ) 。 3.离散信号、系统和系统响应的分析 观察信号 xb(n)和系统 hb(n)的时域和频域特性;利用线性卷积求信号通过系统以后的响 应。比较系统响应和信号的时域和幅频特性。绘出图形。 4.分析理想采样信号序列的特性 产生理想采样信号序列,使: (1)首先选用采样频率为 1000Hz,T=1/1000,观察所得理想采样信号的幅频特性,在 折叠频率以内和给定的理想幅频特性无明显差异,并作记录。 (2)改变采样频率为 300Hz,T=1/300,观察所得理想采样信号的幅频特性曲线的变化, 并作记录。 (3)进一步减小采样频率为 200Hz,T=1/200,观察频谱混叠现象是否明显存在,说明 原因,并记录此时的幅频特性曲线
5.卷积定律的验证。 采用参数A=44.128,a=50V2π,2=50V2π,T=1/1000,将xm)和系统h,(m)的 傅氏变换相乘,直接求得Y(eJo),将得到的幅频特性曲线和先求y(n)后再求得的幅频特 性曲线进行比较,观察二者有无差异。验证卷积定律。 五、思考题 1.线性时不变系统的输出的长度与输入及系统的单位冲激响应的长度有什么关系? 2.对信号进行理想抽样时,抽样频率不同,相应理想采样序列傅立叶变换频谱的数字 频率度量是否都相同?它们所对应的模拟频率是否相同?为什么? 六、实验报告要求 1.简述实验原理及目的。 2.总结在上机实验内容中要求比较时域、幅频曲线差异部分内容的结果。 3.总结实验所得主要结论。 4.简要回答思考题。 6
6 5. 卷积定律的验证。 采用参数 A =444.128, =50 2 , =50 2 , T=1/1000,将 x(n) 和系统 h (n) b 的 傅氏变换相乘,直接求得 ( ) k j Y e ,将得到的幅频特性曲线和先求 y(n) 后再求得的幅频特 性曲线进行比较,观察二者有无差异。验证卷积定律。 五、思考题 1.线性时不变系统的输出的长度与输入及系统的单位冲激响应的长度有什么关系? 2. 对信号进行理想抽样时,抽样频率不同,相应理想采样序列傅立叶变换频谱的数字 频率度量是否都相同?它们所对应的模拟频率是否相同? 为什么? 六、实验报告要求 1.简述实验原理及目的。 2. 总结在上机实验内容中要求比较时域、幅频曲线差异部分内容的结果。 3.总结实验所得主要结论。 4.简要回答思考题
实验二离散时间信号与系统的Z变换分析 一、实验目的 1、熟悉离散信号Z变换的原理及性质 2、熟悉常见信号的Z变换 3、了解正/反Z变换的MATLAB实现方法 4、了解离散信号的Z变换与其对应的理想抽样信号的傅氏变换和拉氏变换之间的关系 5、了解利用MATLAB实现离散系统的频率特性分析的方法 二、实验原理 1、正/反Z变换 Z变换分析法是分析离散时间信号与系统的重要手段。如果以时间间隔T、对连续时间 信号f(t)进行理想抽样,那么,所得的理想抽样信号f(t)为: f0=f0*8.0=f0*∑u-k灯,) 理想抽样信号∫。(t)的双边拉普拉斯变换Fs(S)为: 0-[ow20-i-2u0e 若令f(kT)=f(k),z=e, 那么∫,(t)的双边拉普拉斯变换Fs(s)为: Fs(s)=∑fk=Fe 则离散信号f(k)的Z变换定义为: )- 从上面关于Z变换的推导过程中可知,离散信号f(k)的Z变换F(z)与其对应的理想抽 样信号f()的拉氏变换Fs(S)之间存在以下关系: F(s)=F(e儿 同理,可以推出离散信号f(k)的Z变换F(z)和它对应的理想抽样信号∫,(t)的傅里叶变换 之间的关系为 F(jo)=F(2)n. >
7 实验二 离散时间信号与系统的 Z 变换分析 一、 实验目的 1、熟悉离散信号 Z 变换的原理及性质 2、熟悉常见信号的 Z 变换 3、了解正/反 Z 变换的 MATLAB 实现方法 4、了解离散信号的 Z 变换与其对应的理想抽样信号的傅氏变换和拉氏变换之间的关系 5、了解利用 MATLAB 实现离散系统的频率特性分析的方法 二、 实验原理 1、正/反 Z 变换 Z 变换分析法是分析离散时间信号与系统的重要手段。如果以时间间隔 T s 对连续时间 信号 f(t)进行理想抽样,那么,所得的理想抽样信号 f t() 为: ( ) ( )* ( ) ( )* ( ) Ts s k f t f t t f t t kT =− = = − 理想抽样信号 f t() 的双边拉普拉斯变换 F (s)为: ( ) ( )* ( ) ( ) s st ksT s s k k F s f t t kT e dt f kT e − − − =− =− = − = 若令 ( ) ( ) s f kT f k = , s sT z e = , 那么 f t() 的双边拉普拉斯变换 F (s)为: ( ) ( ) ( ) sTs k z e k F s f k z F z − = =− = = 则离散信号 f(k)的 Z 变换定义为: ( ) ( ) k k F z f k z − =− = 从上面关于 Z 变换的推导过程中可知,离散信号 f(k)的 Z 变换 F(z)与其对应的理想抽 样信号 f t() 的拉氏变换 F (s)之间存在以下关系: ( ) ( ) sTs z e F s F z = = 同理,可以推出离散信号 f(k)的 Z 变换 F(z)和它对应的理想抽样信号 f t() 的傅里叶变换 之间的关系为 ( ) ( ) j Ts z e F j F z = =
如果已知信号的Z变换F(z),要求出所对应的原离散序列(k),就需要进行反Z变换,反 Z变换的定义为:f(k)= -∮F(e)zdb,c∈ROC 2πi 其中,C为包围F()z的所有极点的闭合积分路线。 在MATLAB语言中有专门对信号进行正反Z变换的函数ztrans()和itrans()。其 调用格式分别如下: ● F=ztrans(f)对f(n)进行Z变换,其结果为F(z) ● F=ztrans(f,)对f(n)进行Z变换,其结果为F() ● F=ztrans(f,u,v)对fu)进行Z变换,其结果为F() ● f=iztrans(F)对F(z)进行Z反变换,其结果为f(n) ● f=iztrans(F,u)对F(z)进行Z反变换,其结果为f(u) f=iztrans(F,v,u)对F(v)进行Z反变换,其结果为f(u) 注意:在调用函数ztrans()及iztrans()之前,要用syms命令对所有需要用到的变 量(如t,u,V,w)等进行说明,即要将这些变量说明成符号变量。 例①.用MATLAB求出离散序列f[k]=(0.5)dk]的Z变换 MATLAB程序如下: syms k z f=0.5^k; %定义离散信号 Fz=ztrans(f) %对离散信号进行Z变换 运行结果如下: FZ= 2*z/(2*z-1) 例②.已知一离散信号的Z变换式为F()= 22 ,求出它所对应的离散信号f(k) 2z-1 MATLAB程序如下: syms k z Fz=2*z/(2*z-1): %定义Z变换表达式 fk=iztrans(Fz,k) %求反Z变换 运行结果如下: fk= (1/2)^k 例③:求序列f[k]=4k-1]-k-4]的Z变换 clc;clear all syms n hn=sym('kroneckerDelta(n,1)+kroneckerDelta(n,2)+kroneckerDelta(n, 3)) Hz=ztrans(hn) Hz=simplify(Hz) 2、离散系统的频率特性 8
8 如果已知信号的 Z 变换 F(z),要求出所对应的原离散序列 f(k),就需要进行反 Z 变换,反 Z 变换的定义为: 1 1 ( ) ( ) , 2 − == k c f k F z z dz c ROC j 其中,C 为包围 1 ( ) k F z z − 的所有极点的闭合积分路线。 在 MATLAB 语言中有专门对信号进行正反 Z 变换的函数 ztrans( ) 和 itrans( )。其 调用格式分别如下: ⚫ F=ztrans( f ) 对 f(n)进行 Z 变换,其结果为 F(z) ⚫ F=ztrans(f,v) 对 f(n)进行 Z 变换,其结果为 F(v) ⚫ F=ztrans(f,u,v) 对 f(u)进行 Z 变换,其结果为 F(v) ⚫ f=iztrans ( F ) 对 F(z)进行 Z 反变换,其结果为 f(n) ⚫ f=iztrans(F,u) 对 F(z)进行 Z 反变换,其结果为 f(u) ⚫ f=iztrans(F,v,u ) 对 F(v)进行 Z 反变换,其结果为 f(u) 注意: 在调用函数 ztrans( )及 iztrans( )之前,要用 syms 命令对所有需要用到的变 量(如 t,u,v,w)等进行说明,即要将这些变量说明成符号变量。 例①.用 MATLAB 求出离散序列 [ ] (0.5) [ ] k f k u k = 的 Z 变换 MATLAB 程序如下: syms k z f=0.5^k; %定义离散信号 Fz=ztrans(f) %对离散信号进行 Z 变换 运行结果如下: Fz = 2*z/(2*z-1) 例②.已知一离散信号的 Z 变换式为 2 ( ) 2 1 z F z z = − ,求出它所对应的离散信号 f(k) MATLAB 程序如下: syms k z Fz=2* z/(2*z-1); %定义 Z 变换表达式 fk=iztrans(Fz,k) %求反 Z 变换 运行结果如下: fk = (1/2)^k 例③:求序列 f k u k u k [ ] [ 1] [ 4] = − − − 的 Z 变换. clc;clear all syms n hn=sym('kroneckerDelta(n, 1) + kroneckerDelta(n, 2)+ kroneckerDelta(n, 3)') Hz=ztrans(hn) Hz=simplify(Hz) 2、离散系统的频率特性
同连续系统的系统函数H(S)类似,离散系统的系统函数H(z)也反映了系统本身固有 的特性。对于离散系统来说,如果把其系统函数H(z)中的复变量z换成eo=e,(其中 o=2T、),那么所得的函数H(o)就是此离散系统的频率响应特性,即离散时间系统的 频率响应为: H(e)=H(el)e(=H(=) 其中,H(°)称为离散系统的幅频特性,p(o)称为系统的相频特性。同连续系统一样, 离散时间系统的幅频特性也是频率的偶函数,相频特性也是频率的齐函数。 由于是频率o的周期函数,所以离散系统的频率响应特性也是频率o的周期函数, 其周期为2π,或者角频率周期为27= 2π 。实际上,这就是抽样系统的抽样频率,而其 T 中的Ts则是系统的抽样周期。频率响应呈现周期性是离散系统特性区别于连续系统特性的 重要特点。因此,只要分析H()在o≤2π范围内的情况,便可分析出系统的整个频率 特性。 H(e)函数来表示离散系统的频率响应特性,H(eo)表示幅频特性,而相频特性 仍用(o)来表示。应该特别注意的是,虽然这里的变量。仍然称为频率变量,但是它己经 不是原来意义上的角频率概念,而实际上是表示角度的概念。我们称之为数字频率。它与原 来角频率的关系为:o=2T,。也就是说,根据离散系统的系统函数H(z),令其中的z=o, 并且代入0~2π范围内不同的频率值(实际上是角度值),就可以逐个计算出不同频率时 的响应,求出离散系统的频率响应特性。再利用离散系统频率特性的周期性特点(周期为 2π),求出系统的整个频率特性。 离散系统的幅频特性曲线和相频特性曲线能够直观地反映出系统对不同频率的输入序 列的处理情况。在函数H(°)随o的变换关系中,在o=0附近,反映了系统对输入信号低 频部分的处理情况,而在▣=π附近,则反映了系统对输入信号高频部分的处理情况。 一般来说,分析离散系统频率响应特性就要绘制频率响应曲线,而这是相当麻烦的。 虽然可以通过几何矢量法来定性画出频率响应特性曲线,但一般来说这也是很麻烦的。值得 庆幸的是,MATLAB为我们提供了专门用于求解离散系统频率响应的函数freqz(),其调 用格式如下: ● [H,w]=freqz(B,A,N)其中,B和A分别是表示待分析的离散系统的系统函 数的分子,分母多项式的向量,N为正整数,返回向量H则包含了离散系统频率响应函数 H(°)在O~π范围内的N个频率等分点的值。向量o则包含0~π范围内的N个频率等 分点。在默认情况下N=512。 9
9 同连续系统的系统函数 H(s)类似,离散系统的系统函数 H(z)也反映了系统本身固有 的特性。对于离散系统来说,如果把其系统函数 H(z)中的复变量 z 换成 s j j T e e = (其中 =T s ),那么所得的函数 ( ) j H e 就是此离散系统的频率响应特性,即离散时间系统的 频率响应为: ( ) ( ) ( ) ( ) j j j j z e H e H e e H z = = = 其中, ( ) j H e 称为离散系统的幅频特性, ( ) 称为系统的相频特性。同连续系统一样, 离散时间系统的幅频特性也是频率的偶函数,相频特性也是频率的齐函数。 由于 j e 是频率的周期函数,所以离散系统的频率响应特性也是频率的周期函数, 其周期为 2 ,或者角频率周期为 2 T T s = 。实际上,这就是抽样系统的抽样频率,而其 中的 Ts则是系统的抽样周期。频率响应呈现周期性是离散系统特性区别于连续系统特性的 重要特点。因此,只要分析 ( ) j H e 在 2 范围内的情况,便可分析出系统的整个频率 特性。 ( ) j H e 函数来表示离散系统的频率响应特性, ( ) j H e 表示幅频特性,而相频特性 仍用 ( ) 来表示。应该特别注意的是,虽然这里的变量仍然称为频率变量,但是它已经 不是原来意义上的角频率概念,而实际上是表示角度的概念。我们称之为数字频率。它与原 来角频率的关系为: =T s 。也就是说,根据离散系统的系统函数 H(z),令其中的 j z e = , 并且代入 0~ 2 范围内不同的频率值(实际上是角度值),就可以逐个计算出不同频率时 的响应,求出离散系统的频率响应特性。再利用离散系统频率特性的周期性特点(周期为 2),求出系统的整个频率特性。 离散系统的幅频特性曲线和相频特性曲线能够直观地反映出系统对不同频率的输入序 列的处理情况。在函数 ( ) j H e 随的变换关系中,在=0 附近,反映了系统对输入信号低 频部分的处理情况,而在=附近,则反映了系统对输入信号高频部分的处理情况。 一般来说,分析离散系统频率响应特性就要绘制频率响应曲线,而这是相当麻烦的。 虽然可以通过几何矢量法来定性画出频率响应特性曲线,但一般来说这也是很麻烦的。值得 庆幸的是,MATLAB 为我们提供了专门用于求解离散系统频率响应的函数 freqz() ,其调 用格式如下: ⚫ [H,w]=freqz(B,A,N) 其中,B 和 A 分别是表示待分析的离散系统的系统函 数的分子,分母多项式的向量,N 为正整数,返回向量 H 则包含了离散系统频率响应函数 ( ) j H e 在 0~ 范围内的 N 个频率等分点的值。向量则包含 0~ 范围内的 N 个频率等 分点。在默认情况下 N=512
[H,w]=freqz(B,A,N,whole)其中,B,A和N的意义同上,而返回向量H 包含了频率响应函数H(e)在0~2π范围内N个频率等分点的值。 由于调用freqz()函数只能求出离散系统频率响应的数值,不能直接绘制曲线图,因 此,我们可以先用freqz()函数求出系统频率响应的值,然后再利用MATLAB的abs()和 angle()函数以及plot()命令,即可绘制出系统在0~π或0~2π范围内的幅频特性和相频 特性曲线。 例①.若离散系统的系统函数为H(白)=三-0.5 ,请用MATLAB计算0~π频率范围内10 个等分点的频率响应H(e°)的样值。 MATLAB程序如下: A=[10]; %分母多项式系数向量 B=[1-0.5]; %分子多项式系数向量 [H,w]=freqz(B,A,10) %求出对应0~π范围内10个频率点的频率响应样值 运行结果如下: H= 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=[10]; B=[1-0.5]: [H,w]=freqz(B,A,200); 10
10 ⚫ [H,w]=freqz(B,A,N,'whole') 其中,B,A 和 N 的意义同上,而返回向量 H 包含了频率响应函数 ( ) j H e 在 0 ~ 2 范围内 N 个频率等分点的值。 由于调用 freqz()函数只能求出离散系统频率响应的数值,不能直接绘制曲线图,因 此,我们可以先用 freqz()函数求出系统频率响应的值,然后再利用 MATLAB 的 abs()和 angle()函数以及 plot()命令,即可绘制出系统在 0~ 或 0 ~ 2 范围内的幅频特性和相频 特性曲线。 例①.若离散系统的系统函数为 0.5 ( ) z H z z − = ,请用 MATLAB 计算 0~ 频率范围内 10 个等分点的频率响应 ( ) j H e 的样值。 MATLAB 程序如下: A=[1 0]; %分母多项式系数向量 B=[1 -0.5]; %分子多项式系数向量 [H,w]=freqz(B,A,10) %求出对应 0~ 范围内 10 个频率点的频率响应样值 运行结果如下: H = 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);