实验一 信号、系统及系统响应
一、实验目的
1、 熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解。 2、 熟悉时域离散系统的时域特性。 3、 利用卷积方法观察分析系统的时域特性。
4、 掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对连续信号、离散信号及系统
响应进行频域分析。
二、实验内容及步骤
1、 认真复习采样理论、离散信号与系统、线性卷积、序列的傅里叶变换及性质等有关内容,阅读
本实验原理与方法。
2、 了解要使用到的MATLAB命令:
1)基于DTFT离散时间信号分析函数:freqz,real,imag,abs,angle,unwrap。 函数freqz可以用来计算一个以ej?的有理分式形式给出的序列的DTFT值。freqz的形式多样,
常见的有H=freqz(num,den,w),其中num表示序列有理分式DTFT的分子多项式系数,den表示分母多项式系数(均按z的降幂排列),矢量w表示在0~?中给定的一系列频率点集合。freqz函数的其他形式参见帮助。在求出DTFT值后,可以使用函数real, imag, abs和angle分别求出并绘出其实部,虚部,幅度和相位谱。如果需要,还可以用unwrap函数消除相位中的跳变。 2)函数fft(x)可以计算R点序列的R点DFT值;而fft(x,N)则计算R点序列的N点DFT,若R>N,则直接截取R点DFT的前N点,若R 1)产生实验中要用到的下列信号序列: a.采样信号序列:对下面连续信号 xa(t)?Ae?atsin?(0t)u(t) 进行采样,可得到采样序列 xa(n)?xa(nT)?Ae?anTsin(?0nT)u(n),0?n?50 其中A为幅度因子,a为衰减因子,?0是模拟角频率,T为采样间隔。这些参数都要在实验过程中由键盘输入,产生不同的xa?t?和xa?n?。 b.单位脉冲序列: xb(n)??(n) 1 c.矩形序列: xc(n)?RN(n),N?10 2)产生系统单位脉冲响应序列。 a. ha(n)?R10(n) b. hb(n)??(n)?2.5?(n?1)?2.5?(n?2)??(n?3) 3)编写有限长序列线性卷积子程序,用于完成两个给定长度的序列的卷积。也可以直接调用 MATLAB语言中的卷积函数conv。conv用于两个有限长度序列的卷积,它假定两个序列都从n=0开始。调用格式如下: y=conv(x,h) 其中参数x和h是两个已赋值的行向量序列。 4、完成下述实验内容: 1)分析采样序列的特性。产生采样序列xa(n),A?444.128,a?222,?0?222。 a、 取采样频率fs?1kHz,即T?1ms。观察所采样xa(n)的幅频特性Xe??和xj?a(t)的幅 频特性X?j??在折叠频率处有无明显差别。应当注意,实验中所得频谱是用序列的傅立叶变换公式求得的,所以在频率量度上存在关系:???T。 b、 改变采样频率,fs?300Hz,观察Xe??的变化并做记录。 j?c、 进一步降低采样频率,fs?200Hz,观察频谱混叠是否明显存在,说明原因,并记录 X?ej??。 2) 离散信号、系统和系统响应分析。 a、观察信号xb(n)和系统hb(n)的时域和频域持性;利用线性卷积求信号xb(n)通过系统hb(n)的响应y(n),比较所求响应y(n)和hb(n)的时域及频域特性,注意它们之间有无差异,绘图说明,并用所学结论解释所得结果。 b、 观察系统ha(n)对信号xa(n)的响应特性。利用线性卷积求系统响应y(n),并判断y(n)图形 及其非零值序列长度是否与理论结果一致,对xa(n)?ha?n??R10?n?,说出一种定性判断y(n)图形是否正确的方法。调用序列傅立叶变换子程序,求得Ye?j?k?,观察Y?e?j?R的特性曲线,定性判断结果的正确性。改变xa(n)的长度,取N=5,重复该试验。注意参数变化的影响,说明变化前后的差异,并解释所得的结果。 3) 卷积定理验证。将实验2)中的信号换成xa(n),使a=0.4,?0?2.0734,A=1,T=1,重复 2 实验2)a,打印Ye并绘出Ye卷积定理。 ?j?k?曲线;对主程序作简单修改,计算Y?e??X?e?H?e?, j?kaj?kbj?k?j?k?曲线,与前面直接对进行傅立叶变换所得幅频特性曲线进行比较,验证时域 三、思考题 1、 在分析理想采样序列特性的实验中;采样频率不同时,相应理想采样序列的傅里叶变换谱的数 学频率度量是否都相同?它们所对应的模拟频率是否相同?为什么? 2、 在卷积定理验证的实验中,如果选用不同的频域采样点数M值,例如,选M=10和M=20,分 别做序列的傅里叶变换,求得 Y(ej?k)?Xa(ej?k)Hb(ej?k),k=0,1,……M-1 所得结果之间有无差异?为什么? 四、实验报告要求 1、 简述实验目的及实验原理。. 2、 按实验步骤附上实验过程中的信号序列、系统单位脉冲响应及系统响应序列的时域和幅频特性 曲线,并对所得结果进行分析和解释。 3、 总结实验中的主要结论。 4、 简要回答思考题。 3 实验二 用FFT作谱分析 一、实验目的 1、 进一步加深DFT算法原理和基本性质的理解(因为FFT只是DFT的一种快速算法,所以FFT 的运算结果必然满足DFT的基本性质)。 2、 熟悉FFT算法原理和FFT子程序的应用。 3、 学习用FFT对连续信号和时域离散信号进行谱分析的方法,了解可能出现的分析误差及其原因, 以便在实际中正确应用FFT。 二、实验内容及步骤 1、 复习DFT的定义、性质和用DFT作谱分析的有关内容。 2、 复习FFT算法原理与编程思想,并对照DIT—FFT运算流图和程序框图,读懂本实验提供的FFT 子程序。 3、 编制信号产生子程序,产生以下典型信号供谱分析用: x1(n)?R4(n) 0?n?3?n?1? x2(n)??8?n 4?n?7 ?0其它n?0?n?3?4?n?x3(n)??n?3 4?n?7 ?0其它n? x4(n)?cos?4n n x5(n)?sin?8x6(t)?cos8?t?cos16?t?cos20?t 应当注意,如果给出的是连续信号xa(t),则首先要根据其最高频率确定采样频率fs,以及由频率分辨力确定采样点数N,然后对其进行软件采样(即计算x(n)?xa(nT),0?n?N?1),产生对应序列x(n)。对信号x6(t),频率分辨力的选择要以能分辨开三个频率对应的谱线为准则。对周期序列,最好截取周期的整数倍进行谱分析,否则可能产生较大的分析误差,请同学们根据DFT的隐含周期性思考这个问题。 4、完成下述实验内容: 4 1) 对2中所给出的信号逐个进行谱分析。下面给出各个信号的FFT变换区间N以及连续信号x6(t)的采样频率,供实验时参考。 x1(n):N=8,64 x2(n),x3(n):N=8,16 x4(n),x5(n):N=8,16 2)令x7(n)?x4(n)?x5(n),用FFT计算8点和16点离散傅里叶变换。 3)令x8(n)?x4(n)?jx5(n),用FFT计算8点和16点离散傅里叶变换。 三、思考题 1、在N=8时,x2(n)和x3(n)的幅频特性会相同吗?为什么?N=16呢? 2、如果周期信号的周期预先不知道,如何使用FFT进行谱分析? 四、实验报告要求 1、简述实验原理及目的。 2、结合实验中所得给定典型序列幅频特性曲线,与理论结果比较,并分析说明误差产生的原因以及用FFT作谱分析时有关参数的选择方法。 3、总结实验所得主要结论。 4、简要回答思考题。 5