数字信号处理 实验报告.docx

上传人:b****1 文档编号:25670 上传时间:2022-10-01 格式:DOCX 页数:32 大小:229.88KB
下载 相关 举报
数字信号处理 实验报告.docx_第1页
第1页 / 共32页
数字信号处理 实验报告.docx_第2页
第2页 / 共32页
数字信号处理 实验报告.docx_第3页
第3页 / 共32页
数字信号处理 实验报告.docx_第4页
第4页 / 共32页
数字信号处理 实验报告.docx_第5页
第5页 / 共32页
点击查看更多>>
下载资源
资源描述

数字信号处理 实验报告.docx

《数字信号处理 实验报告.docx》由会员分享,可在线阅读,更多相关《数字信号处理 实验报告.docx(32页珍藏版)》请在冰豆网上搜索。

数字信号处理 实验报告.docx

数字信号处理实验报告

重庆交通大学

学生实验报告

实验课程名称数字信号处理

开课实验室数学实验室

学院理学院年级09专业班信息与计算科学1班

学生姓名张恒学号09180106

开课时间2011至2012学年第2学期

评分细则

评分

报告表述的清晰程度和完整性(20分)

程序设计的正确性(40分)

实验结果的分析(30分)

实验方法的创新性(10分)

总成绩

教师签名

蒋伟

实验一、Z变换及离散时间系统分析

(一)、实验目的

1、通过本实验熟悉Z变换在离散时间系统分析中的地位和作用。

2、掌握并熟练使用有关离散系统分析的MATLAB调用函数及格式,以深入理解离散时间系统的频率特性。

(二)、实验内容

对于一个给定的LSI系统,其转移函数H(z)习惯被定义为H(z)=B(z)/A(z),即:

公式中

分别是H(Z)分子与分母多项式的阶次,在有关MATLAB的系统分析的文件中,分子和分母的系数被定义为向量,即

并要求

=1,如果

≠1,则程序将自动的将其归一化为1。

1、系统的阶跃响应

调用格式为:

y=filter(b,a,x),其中x,y,a,b都是向量。

2、单位抽样响应h(n)

调用格式为:

h=impz(b,a,N)或[h,t]=impz(b,a,N)

其中N是所需的h(n)的长度,前者绘图时n从1开始,而后者从0开始。

3、求频率响应

基本调用格式为:

[H,w]=freqz(b,a,N,‘whole’,Fs)

其中N是频率轴的分点数,建议N为2的整次幂;w是返回频率轴坐标向量,供绘图用;Fs是抽样频率,若Fs=1,频率轴给出归一化频率;whole指定计算的频率范围是从0~Fs,缺省时是从0~Fs/2。

4、离散系统的极零图

调用格式:

zplane(z,p)或zplane(b,a)

前者是在已知系统零点的列向量z和极点的列向量p的情况下画出的极零图,后者是在已知B(z),A(z)的情况下的极零图。

(三)、实验题目

给定系统

,编程并绘出系统的单位阶跃响应y(n),频率响应

给出实验报告。

(四)、实验过程

1、求系统的阶跃响应的程序代码:

clearall;

x=ones(100);%x(n)=1,n=1~100;

t=1:

100;%t用于后面的绘图;

b=[00-0.2];%形成向量b;

a=[100.8];%形成向量a;

y=filter(b,a,x);

%求所给系统的输出,本例实际上是求所给系统的阶跃响应;

plot(t,x,'r.',t,y,'k-');gridon;%将x(n)(绿色)y(n)(黑色)画在同一个图上;

ylabel('x(n)andy(n)')

xlabel('n')

结果分析:

单位阶跃响应是指系统在单位阶跃信号的作用下所产生的响应。

其单位阶跃序列

,类似于连续时间信号与系统中的单位跃函数u(t),所以x(n)的取值

时为1。

间的关系为

,而

,代入上式可得

,u(n)即为单位阶跃响应,所以y(n)的值有逐渐趋于稳定的趋势,当n越大时,其值也为1。

2、求系统的单位抽样响应的程序代码;

clear;

b=[00-0.2];

a=[100.8];

[h,t]=impz(b,a,50);

stem(t,h,'.');

结果分析:

单位抽样序列类似于连续时间信号与系统中的单位冲击函数

,当t=0点脉宽趋于零,幅值趋于无限大,面积为1的信号。

系统

,其初始幅值为-0.2,当n趋于无穷大时,其值趋于0。

3、求频率响应

的程序代码:

clear;

b=[00-0.2];

a=[100.8];

[H,w]=freqz(b,a,256,1);

Hr=abs(H);

Hphase=angle(H);%相位角;

Hphase=unwrap(Hphase);%解卷绕

subplot(211)

plot(w,Hr);gridon;

ylabel('AmplitudeFreq.Res.')

subplot(212)

plot(w,Hphase);gridon;

ylabel('PhaseFreq.Res.')

系统的频率响应是h(n)的傅里叶变换,其表达式为

,也是系统函数H(z)在单位圆上的值

由于题目中未给出抽样频率Fs的值,作为缺省时处理,其频率范围是从0~Fs/2。

w是返回频率轴坐标向量。

上图的第一个图表示(w,Hr)的关系,第二个图表示(w,Hphase)的关系。

(五)实验体会

通过此次实验,知道了在离散时间系统中Z变换的重要作用,能够灵活运用MATLAB中的调用函数求系统的单位阶跃响应,单位抽样响应和频率响应。

对z变换有了更深的理解和掌握,希望在以后的学习中,能够有更大的进步和提高,取得更好的成绩。

实验二、快速傅里叶变换

(一)、实验目的

1、通过本实验进一步加深对快速傅里叶变换的理解。

2、会熟练运用fft,ifft,czt实现线性调频z变换。

(二)、实验内容

1、快速傅里叶变换(fft)

调用格式为X=fft(x)或X=fft(x,N)

对前者,若x的长度是2的整次幂,则按该长度实现x的快速变换,否则,实现的是非2的整次幂的变换;对后者,N应为2的整次幂,若x得长度小于N,则补零,若超过N,则舍弃N以后的数据。

ifft的调用格式与之相同。

2、线性调频Z变换(CZT)

CZT可用来计算单位圆上任一段曲线上的Z变换,做DFT时输入的点数N和输出的点数可以不相等,从而达到频域“细化”的目的。

CZT在单位圆上的Z变换就是傅里叶变换。

其调用格式为:

X=czt(x,M,W,A)

式中x是待变换的时域信号x(n),其长度设为N,M是变换的长度,W确定变换的步长,A确定变换的起点。

若M=N,A=1,则CZT变成DFT。

(三)、实验题目

设x(n)由三个实正弦组成,频率分别是8Hz,9Hz,10Hz,抽样频率为60Hz,时域取256点,作CZT变换、IFFT变换和FFT变换,观察波形,更改参数,得出不同参数下的CZT变换波形。

给出实验报告。

(四)、实验过程

1、作CZT变换的程序代码:

clearall;

%构造三个不同频率的正弦信号的叠加作为试验信号

N=256;

f1=8;f2=9;f3=10;fs=60;

stepf=fs/N;

n=0:

N-1;

t=2*pi*n/fs;

n1=0:

stepf:

fs/2-stepf;

x=sin(f1*t)+sin(f2*t)+sin(f3*t);

M=N;

W=exp(-j*2*pi/M);

%A=1时的czt变换

A=1;

Y1=czt(x,M,W,A);

subplot(311)

plot(n1,abs(Y1(1:

N/2)));gridon;

%DTFT

Y2=abs(fft(x));

subplot(312)

plot(n1,abs(Y2(1:

N/2)));gridon;

%详细构造A后的czt

M=60;

f0=7.2;

DELf=0.05;

A=exp(j*2*pi*f0/fs);

W=exp(-j*2*pi*DELf/fs);

Y3=czt(x,M,W,A);

n2=f0:

DELf:

f0+(M-1)*DELf;

subplot(313);plot(n2,abs(Y3));gridon;

结果分析:

第一个图形表示A=1时的线性调频Z变换(czt),第二个图形表示离散时间傅里叶变换(DTFT),第三个图形表示详细构造A后的线性调频Z变换(czt),即改变M和N的值和其他相应的参数(如

点间的角度间隔

,频率分辨率,起始点

等),所得到的czt变换的图形,由于变换长度M的值减小,因此所得到的图形较第一个图形离散。

CZT是用来计算单位圆上任一段曲线上的Z变换,当M=N且变换起点A=1,即起始抽样点

z0的矢量半径长度为1时,CZT在单位圆上的Z变换就是傅里叶变换,也就是说,抽样序列在单位圆上的Z变换,就等于其理想抽样信号的傅里叶变换。

因此第一个图形和第二个图形相同。

作IFFT变换和FFT变换的程序代码:

clearall;

%产生三个正弦;

N=256;%2的8次幂,进行8级蝶形运算;

f1=8;f2=9;f3=10;fs=60;

n=0:

N-1;

t=2*pi*n/fs;

x=sin(f1*t)+sin(f2*t)+sin(f3*t);

%应用FFT求频谱;

subplot(3,1,1);

plot(x(1:

N/4));%作图向量x的第一到第N/4个值;

xlabel('x=N/4');

ylabel('x(1:

N/4)');

title('X');

f=-0.5:

1/N:

0.5-1/N;

X=fft(x);%快速傅里叶变换;

y=ifft(X);%快速傅里叶逆变化

subplot(3,1,2);

plot(f,fftshift(abs(X)));

title('FFT');

subplot(3,1,3);

plot(real(y(1:

N/4)));%作图向量y的第一到第N/4个值的实部;

title('IFFT');

(五)实验体会

通过此次实验,使我对快速傅里叶变换有了更进一步的理解和加深,快速傅里叶变换只是离散傅里叶变换(DFT)的一种快速算法,FFT算法的基本思路是利用

的对称性、周期性和可约性,将长序列的DFT分解为短序列的DFT,减小运算量。

对FFT算法,若x的长度是2的整次幂,则按该长度实现x的快速变换,否则,实现的是非2的整次幂的变换;对后者,N应为2的整次幂,若x得长度小于N,则补零,若超过N,则舍弃N以后的数据。

FFT算法分为按时间抽选法(DIT)和按频率抽选法(DIF)。

且能够利用MATLAB编程,运用fft,ifft,czt实现线性调频z变换,从而得到fft,ifft,czt的图形,及其改变参数后的图形。

收获不少,取得了一定的进步,希望在以后的学习中能够学到更多,更上一层楼。

实验三、无限冲击响应数字滤波器设计

(一)实验目的

1、要求掌握IIR数字滤波器的设计原理、设计方法和设计步骤;

2、能根据给定的滤波器指标进行滤波器设计;

3、掌握数字巴特沃斯滤波器、数字切比雪夫滤波器的设计原理和步骤;

(二)、实验内容

IIR数字滤波器的设计有多种方法,如频率变换法、数字域直接设计以及计算辅助设计等。

下面只介绍频率变换设计法。

首先考虑由模拟低通滤波器到数字低通滤波器的转换,其基本的设计过程如下:

1、将数字滤波器的技术指标转换为模拟滤波器的技术指标;

2、设计模拟滤波器G(S);

3、将G(S)转换成数字滤波器H(Z)

在低通滤波器的设计基础上,可以得到数字高通、带通、带阻滤波器的设计流程,以高通数字滤波器的设计为例:

1、将数字高通滤波器

的技术指标

,通过

转变为模拟高通

的技术指标

,作归一化处理后得

2、利用频率变换关系

,将模拟高通

的技术指标转换为归一化的低通滤波器G(p)的技术指标,并有p=

;

3、设计模拟低通滤波器G(p);

4、将G(p)转换为模拟高通滤波器的转移函数

p=

;

5、将

转换成数字高通滤波器的转移函数

,s=(z-1)/(z+1)。

以上5个步骤同样适用于数字带通、数字带阻滤波器的设计。

只是在步骤2,3,4中频率转

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1