当前位置:文档之家› 重庆大学光电学院数字信号处理实验

重庆大学光电学院数字信号处理实验

(1)用matlab编程产生并画出信号x1(n)、x2(n)、x3(n)、x4(n)、x5(n)。
(2)用matlab编制FFT函数对上述信号进行频谱分析,并画出上述信号谱图。
六、实验结果分析
1.说明FFT长度N改变对频谱的影响
答:FFT随长度N增加,主瓣宽度减小,分辨率提高,主峰位置也较准确
2.简要回答以下问题:
离散时间信号可以是由模拟信号通过采样得到,例如对模拟信号xa(t)进行等间隔采样,采样间隔为T,得到一个有序的数字序列{xa(nT)}就是离散时间信号,简称序列。
2.常用序列
单位脉冲序列(单位抽样)、单位阶跃序列、矩形序列、实指数序列、复指数序列、正弦型序列等。
3.序列的基本运算
3.1序列的加法:z(n)=x (n)+y(n)
加法用于序列的合成。它把两个序列中位置序号相同的样本相加,形成新的样本序列。
3.2序列的乘法:z(n)=x(n)×y(n)
序列的乘法是一种非线性运算,它用于信号的调制。它把两个序列中位置序号相同的样本相乘,形成新的样本序列。
4.序列的卷积
上式的运算关系称为卷积运算,式中代表两个序列卷积运算。两个序列的卷积是一个序列与另一个序列反褶后逐次移位乘积之和,故称为离散卷积,也称两序列的线性卷积。
四、使用仪器、器材
计算机,MATLAB软件
五、实验过程原始记录(实验源程序、图标、计算等)
1、用matlab编制信号产生子程序,产生以下典型信号序列。
2、利用MATLAB编程完成序列(5)和(6)的移位、反转、加法、乘法等运算,并绘制运算后序列的波形。
3、利用MATLAB编制一个计算两个序列线性卷积的通用程序,计算上述两序列,并绘制卷积后序列的波形。
3、利用MATLAB编制一个计算两个序列线性卷积的通用程序,计算上述两序列,并绘制卷积后序列的波形。
三、实验原理
1.序列的基本概念
离散时间信号在数学上可用时间序列{x(n)}来表示,其中x(n)代表序列的第n个数字,n代表时间的序列。注意:x(n)只在n为整数时才有意义, n不是整数时无定义,但不能认为是0。
plot(x,y);
title('锯齿波')
2、实验中所产生的正弦序列的频率是多少?是否是周期序列?
答:实验中正弦序列的频率是10HZ,是周期序列。
实验题目
用FFT进行谱分析
实验时间
2017年11月21日
实验地点
主教1计性√综合性
教师评语:
□出勤率好□原理正确□方案合理
(2)
答:由于FFT算法对序列长度的要求是 N=2^M,M为正整数。所以,当周期信号序列一个周期的长度满足 N=2^M(M为正整数)的条件时,FFT可以用来分析周期信号的频谱。不是真实的频谱。因为序列的周期N=10不是 2 的整数次幂,所以不是真实的。
□实验结果正确□回答问题正确□报告规范
一、实验目的
(1)进一步加深DFT算法原理和基本性质的理解(因为FFT只是DFT的一种快速算法,所以FFT的运算结果必然满足DFT的基本性质)。熟悉FFT程序结构及编程方法。
(2)熟悉应用FFT对确定信号进行谱分析方法,熟悉FFT算法原理和FFT子程序的应用。
(3)学习用FFT对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因,以便在实际中正确应有FFT。
3.掌握序列的相加、相乘、移位、反转等基本运算及计算机实现与作用。
4.掌握线性卷积软件实现的方法。
5.掌握计算机的使用方法和常用系统软件及应用软件的使用。
6.通过编程,上机调试程序,进一步增强使用计算机解决问题的能力。
二、实验内容
1、用matlab编制信号产生子程序,产生以下典型信号序列。
2、利用MATLAB编程完成序列(5)和(6)的移位、反转、加法、乘法等运算,并绘制运算后序列的波形。
四个步骤:
(1)反转:先将x(n)和h(n)的变量n换成m,变成x(m)和h(m),再将h(m)以纵轴为对称轴反转成h(-m)。
(2)移位:将h(-m)移位n,得h(n-m)。当n为正数时,右移n位;当n为负数时,左移n位。
(3)相乘:将h(n-m)和x(m)的对应点值相乘。
(4)求和:将以上所有对应点的乘积累加起来,即得y(n)。
①在N=8时,x2(n)和x3(n)的幅频特性会相同吗?为什么?N=16呢?
②FFT在什么条件下也可以用来分析周期信号序列的频谱?如果正弦信号系统sin(2πf0k),f0=0.1Hz,用16点FFT来做DFT运算,得到的频谱是信号本身的真实谱吗?为什么?
(1)答:不相同。当N=8时,序列x1(n)和x2(n)中相同的元素值对应的 n 值是不同的,所乘的旋转因子的值也不同,因而得到的最终结果也是不同的。同理,N=16时,所得的幅频特性也是不同的。
实验题目
离散时间信号分析
实验时间
2017年10月24日
实验地点
主教1118
实验成绩
实验性质
□验证性□设计性√综合性
教师评语:
□出勤率好□原理正确□方案合理
□实验结果正确□回答问题正确□报告规范
一、实验目的
1.掌握各种常用的序列,理解其数学表达式和波形表示。
2.掌握在计算机中生成及绘制数字信号波形的方法。
六、实验结果分析
1.如何产生方波信号序列和锯齿波信号序列?
答:方波信号由square函数可得,锯齿波信号由循环语句产生。
%方波
T=0:0.001:2*pi;%方波的时间向量
y=square(6*T);%方波w=6,周期为T=2*pi/6
subplot(2,1,1);
plot(T,y);%画方波
title('方波');
二、实验内容
(1)用matlab编程产生并画出信号x1(n)、x2(n)、x3(n)、x4(n)、x5(n)。
(2)用matlab编制FFT函数对上述信号进行频谱分析,并画出上述信号谱图。
三、实验原理
一个序列x(n)的离散时间傅里叶变换就是它的频谱函数。
四、使用仪器、器材
计算机,MATLAB
五、实验过程原始记录(实验源程序、图标、计算等)
axis([T(1)-1 T(end)+1 -2 2]);%坐标轴区域
hold on
%锯齿波
x=-10:10;
y=[];
for i=1:21%rem为取余函数,此循环使得y(i)交替取值1和-1
if rem(i,2)==0
y(i)=-1;
else
y(i)=1;
end
end
subplot(2,1,2);
相关主题