您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 数字信号处理MATLAB实验
实验一熟悉MATLAB环境一、实验目的(1)熟悉MATLAB的主要操作命令。(2)学会简单的矩阵输入和数据读写。(3)掌握简单的绘图命令。(4)用MATLAB编程并学会创建函数。(5)观察离散系统的频率响应。二、实验内容认真阅读本章附录,在MATLAB环境下重新做一遍附录中的例子,体会各条命令的含义。在熟悉了MATLAB基本命令的基础上,完成以下实验。上机实验内容:(1)数组的加、减、乘、除和乘方运算。输入A=[1234],B=[3456],求C=A+B,D=A-B,E=A.*B,F=A./B,G=A.^B并用stem语句画出A、B、C、D、E、F、G。(2)用MATLAB实现以下序列。a)x(n)=0.8n0≤n≤15b)x(n)=e(0.2+3j)n0≤n≤15c)x(n)=3cos(0.125πn+0.2π)+2sin(0.25πn+0.1π)0≤n≤15d)将c)中的x(n)扩展为以16为周期的函数x16(n)=x(n+16),绘出四个周期。e)将c)中的x(n)扩展为以10为周期的函数x10(n)=x(n+10),绘出四个周期。(3)x(n)=[1,-1,3,5],产生并绘出下列序列的样本。a)x1(n)=2x(n+2)-x(n-1)-2x(n)b)51k2)kn(nx(n)x(4)绘出下列时间函数的图形,对x轴、y轴以及图形上方均须加上适当的标注。a)x(t)=sin(2πt)0≤t≤10sb)x(t)=cos(100πt)sin(πt)0≤t≤4s(5)编写函数stepshift(n0,n1,n2)实现u(n-n0),n1n0n2,绘出该函数的图形,起点为n1,终点为n2。(6)给定一因果系统)0.9z0.67z-1)/(1z2(1H(z)-2-1-1求出并绘制H(z)的幅频响应与相频响应。(7)计算序列{8-2-123}和序列{23-1-3}的离散卷积,并作图表示卷积结果。(8)求以下差分方程所描述系统的单位脉冲响应h(n),0≤n50y(n)+0.1y(n-1)-0.06y(n-2)=x(n)-2x(n-1)三、思考题(1)对于有限长序列,如何用MATLAB计算其DTFT?(2)对于由两个子系统级联或并联的系统,如何用MATLAB计算它们的幅频响应与相频响应?四、实验报告要求(1)简述实验目的及原理。(2)按实验步骤附上实验程序。(3)按实验步骤附上有关离散系统的频率特性曲线。(4)简要回答思考题。五、与本实验有关的MATLAB函数x=sin(2*pi*f/fs*n);生成频率为f,采样频率为fs的正弦信号,式中,n=[012…N]。sum(X);对于向量X,计算X各元素的和。对于矩阵X,计算X各列元素之和组成的行向量。plot(t,y);画出以向量t为坐标的向量y(行或列)的曲线。向量t和向量y具有相同的维数。命令plot(s1,t1,s2,t2,s3,t3);将在同一图上画出分别以t1,t2,t3为坐标的向量s1,s2,s3的曲线。xlabel(‘samples’);在x轴上加上标注。ylabel(‘amplitude’);在y轴上加上标注。title(‘sinusoidalsignal’);在图的上部加上标题。y=conv(h,x);计算向量h和x的卷积,结果放在y中。y=filter(b,a,x);以向量b和a为参数的滤波器对输入信号向量x进行滤波处理。h=impz(b,a,N);计算b和a为参数的N点滤波器脉冲响应。[H,f]=freqz(b,a,N,Fs);给定以Hz为单位的采样频率Fs,计算以(b,a)为参数的滤波器N点频率向量f和N点复频率向量H。该命令用于绘制滤波器的幅频和相频响应。如果省略左边的[H,f],该命令将直接绘出滤波器的对数幅频和相频响应。实验二信号的采样与重建一、实验目的(1)在学习本章内容的基础上,通过实验加强本章内容的有关信号采样与重建的基本概念,熟悉相关MATLAB函数。(2)通过观察采样信号的混叠现象,进一步理解奈奎斯特采样频率的意义。(3)通过实验,了解数字信号采样率转换过程中的频谱特性。(4)对实际的音频文件做内插和提取操作,体会低通滤波器在内插和提取中的作用。二、实验内容认真阅读相关的MATLAB函数帮助文件。再熟悉MATLAB函数的基础上,完成以下试验。上机实验内容:(1)一信号是三个正弦信号的和,正弦信号的频率分别为50、500、1000Hz,该信号以8kHz采样。用适当数量的样本画出该信号。(2)一信号是三个正弦信号的和,正弦信号的频率分别为50、500、1000Hz,该信号以800Hz采样。用适当数量的样本画出该信号,并讨论信号的混叠情况。(3)令x(n)=cos(2πfn/fs),其中f/fs=1/16,即每个周期内有16个点。试利用MATLAB编程实现:○1作M=4倍的抽取,使每个周期变成4点。○2作L=3倍的插值,使每个周期变成48点。(4)输入信号x(n)为归一化频率分别为f1=0.04,f2=0.3的正弦信号相加而成,N=50,内插因子为5,抽取因子为3,给出按有理因子5/3做采样率变换的输入输出波形。(5)常见的音频文件采样率为44.1khz。请找一个wav格式、采样率为44.1khz的音频文件,用MATLAB编写程序,把它转换为采样率为48、32、22.05、16和8khz的音频文件,用播放器分别进行播放,比较音质的变化,并解释原因。(6)请找一个wav格式、采样率为11.025khz的音频文件,用MATLAB编写程序,把它转换为采样率为44.1khz的音频文件,采用两种方法:○1直接插零;○2插零后滤波(可直接利用MATLAB相关函数),用播放器分别进行播放,比较音质的变化,并解释原因。三、思考题(1)试说明对于周期信号,应当如何采样,才能保证周期扩展后与原信号保持一致。(2)模拟抗混叠滤波器的指标是如何确定的,欠采样的情况下是否需要模拟抗混叠滤波器?(3)抽取是否会造成信号频谱成分的缺失?为什么还要这样做?四、实验报告及要求(1)简述实验目的及原理。(2)按实验步骤附上试验程序。(3)按实验内容附上有关离散信号的波形或关键样本,对音频信号给出测听的结果。(4)简要回答思考题。五、与本实验相关的MATLAB函数y=decimate(x,M);对信号x按整数M作抽取,抽取前后作抗混叠低通滤波,结果放在y中。y=interp(x,L);对信号x按整数L插零,然后作抗镜像低通滤波,结果放在y中。y=resample(x,L,M);对信号x按有理因子L/M作采样率转换,结果放在y中。[y,fs,bits]=wavread(‘filename.wav’);读取音频波形文件,这里y是声音的数组,fs是声音的采样频率,bits是采样样本的二进制位数。wavwrite(y,fs,bits,‘filename.wav’);将声音的数组y写入音频波形文件,fs是声音的采样频率bits是采样样本的二进制位数。实验三快速傅立叶变换及其应用一、实验目的(1)在理论学习的基础上,通过本实验,加深对FFT的理解,熟悉MATLAB中函数。(2)熟悉应用FFT对典型信号进行频谱分析的方法。(3)了解应用FFT进行信号频谱分析过程中可能出现的问题,以便在实际中正确应用FFT。(4)熟悉应用FFT实现两个序列的线性卷积和相关。二、实验内容实验中用到的信号序列:高斯序列xa(n)={e−(n−p)2q0≪n≪150其他衰减正弦序列xb(n)={e−ansin(2πfn)0≪n≪150其他三角波序列xc(n)={n0≪n≪158−n4≪n≪70其他反三角波序列xd(n)={4−n0≪n≪3n−44≪n≪70其他上机实验内容:(1)观察高斯序列的时域和幅频特性,固定信号xa(n)中参数p=8,改变q的值,使q分别等于2、4、8,观察他们的时域和频域特性,了解当q取不同值时,对信号时域频域特性的影响;固定q=8,改变p,使p分别等于8,13,14,观察参数p变化对信号序列的时域与频域特性的影响,注意当p=多少时会发生明显的泄漏现象,混叠是否也随时出现?记录实验中观察到的现象,绘出相应的时域序列和幅频特性曲线。(2)观察衰减正弦序列xb(n)的时域和幅频特性。=0.1,f=0.0625,检查谱峰出现位置是否正确,注意频谱的形状,绘出幅频特性曲线,改变f,使f分别等于0.4375和0.5625,观察这两种情况下,频谱的形状和谱峰出现位置,有无混叠和泄露现象?说明产生现象的原因。(3)观察三角波和反三角波序列的时域和幅频特性,用N=8点FFT分析信号序列xc(n)和xd(n)的幅频特性,观察两者的序列情况和频谱曲线有什么异同?绘出两序列及其幅频特性曲线。在xc(n)和xd(n)末尾补零,用N=32点FFT分析这两个信号的幅频特性,观察幅频特性发生了什么变化?这些变化说明了什么?(4)一个连续信号含有两个频率分量,经采样得x(n)=sin[2π∙0.125n]+cos[2π∙(0.125+∆f)n]n=0,1,⋯,N−1已知N=16,Δf分别为1/16和1/64,观察其频谱;当N=128时,Δf不变,其结果有何不同,为什么?(5)用FFT分别计算xa(n)(p=8,q=2)和xb(n)(a=0.1,f=0.0625)的16点循环卷积和线性卷积。(6)产生一512点的随机序列xe(n),并用xc(n)和xe(n)做线性卷积,观察卷积前后xe(n)频谱的变化。要求将xe(n)分成8段,分别采用重叠相加法和重叠保留法。(7)用FFT分别计算)2,8)((qpnxa和xb(n)(a=0.1,f=0.0625)的16点循环相关和线性相关,问一共有多少种结果,他们之间有何异同点。(8)用FFT分别计算)2,8)((qpnxa和xb(n)(a=0.1,f=0.0625)的自相关函数。三、思考题(1)实验中的信号序列xc(n)和xd(n),在单位圆上的z变换频谱|Xc(ejw)|和|Xd(ejw)|会相同吗?如果不同,说明哪一个低频分量更多一些,为什么?(2)对一个有限长序列进行DFT等价于将该序列周期延拓后进行DFS展开,因为DFS也只是取其中一个周期来运算,所以FFT在一定条件下也可以用于分析周期信号序列。如果时正弦序列sin(2πfn),f=0.1用16点FFT来作DFS运算,得到的频谱是信号本身的真实谱吗?为什么?四、实验报告要求(1)简述实验目的及原理。(2)按实验步骤附上实验信号序列和幅频特性曲线,分析所得到的图形,说明参数改变对时域和频域的影响。(3)总结实验中的主要结论。(4)简要回答简答题。五、与本实验相关的MATLAB函数y=exp(X);对向量X的各元素做指数运算,结果为一向量。conj(X);对向量X的各元素做复共轭运算,即将虚部改变符号。real(X);对向量X的各元素取其实部。v=randn(size(X));生成同X具有相同维数的正态分布的随机矩阵,通常用于生成高斯白噪声。fft(X,N);计算X的N点FFT,如果X的长度小于N,则将在X后补零。反之,如果X的长度大于N,则对X进行截取。ifft(X);计算X的N点IFFT。fftshift(Y);如果Y为向量,该命令将Y分成左右两部分并交换位置。实验四IIR数字滤波器设计一、实验目的(1)掌握双线性变换法及脉冲响应不变法设计IIR数字滤波器的具体设计方法及其原理,熟悉用双线性变换法及脉冲响应不变法设计低通、高通和带通IIR数字滤波器的计算机编程。(2)观察双线性变换及脉冲响应不变法设计的滤波器的频域特性,了解双线性变换法及脉冲响应不变法的特点。(3)熟悉巴特沃思滤波器、切比雪夫滤波器和椭圆滤波器的频率特性。二、实验内容实验中有关变量的定义:fc通带边界频率fr阻带边界频率δ通带波动At最小阻带衰减fs采样频率T采样周期上机实验内容:(1),,,,,设计一切比雪夫高通滤波器,观察其通带损耗和阻带衰减是否满足要求。(2),,,,,分别用脉冲响应不变法及双线性变换法设计一巴特沃思数字低
本文标题:数字信号处理MATLAB实验
链接地址:https://www.777doc.com/doc-2387660 .html