数字信号处理实验二

合集下载

数字信号处理实验报告(实验二)

数字信号处理实验报告(实验二)

实验二 时域采样与频域采样1. 实验目的:(1) 掌握模拟信号采样前后频谱的变化,以及如何选择采样频率才能使采样后的信号不丢失信息。

(2) 掌握频率域采样会引起时域周期化的概念,以及频率域采样定理及其对频域采样点数选择的指导作用。

(3) 会用MATLAB 语言进行时域抽样与信号重建的方法,以及频域抽样与恢复时程序的编写方法。

2. 实验原理:了解时域采样定理的要点,理解理想采样信号)(ˆt xa 和模拟信号)(t x a 之间的关系,了解频域采样定理的要点,掌握这两个采样理论的结论:“时域采样频谱周期延拓,频域采样时域信号周期延拓”。

3. 实验内容:(1)时域采样理论的验证。

给定模拟信号,)()sin()(0t u t Ae t x t a Ω=-α式中A=444.128,α=502π,0Ω=502πrad/s(2)用DFT(FFT)求该模拟信号的幅频特性,选取三种采样频率,以验证时域采样理论。

(3)编写实验程序,计算)(1n x 、)(2n x 和)(3n x 的幅度特性,并绘图显示。

观察分析频谱混叠失真。

(4)频域采样理论的验证。

给定信号如下:⎪⎩⎪⎨⎧≤≤-≤≤+=其它02614271301)(n n n n n x(5)编写程序分别对频谱函数()FT[()]j X e x n ω=在区间]2,0[π上等间隔采样32和16点,得到)()(1632k X k X 和,再分别对)()(1632k X k X 和进行32点和16点IFFT ,得到)()(1632n x n x 和。

(6)分别画出()j X e ω、)()(1632k X k X 和的幅度谱,并绘图显示x(n)、)()(1632n x n x 和的波形,进行对比和分析,验证总结频域采样理论。

4. 思考题:如果序列x(n)的长度为M ,希望得到其频谱()j X e ω在]2,0[π上的N 点等间隔采样,当N<M 时, 如何用一次最少点数的DFT 得到该频谱采样?答:将长序列分段分段计算,这种分段处理方法有重叠相加法和重叠保留法两种。

数字信号处理第二版(实验二) 信号的采样与重建

数字信号处理第二版(实验二) 信号的采样与重建

实验二信号的采样与重建一,实验目的(1)通过观察采样信号的混叠现象,进一步理解奈奎斯特采样频率的意义。

(2)通过实验,了解数字信号采样转换过程中的频率特征。

(3)对实际的音频文件作内插和抽取操作,体会低通滤波器在内插和抽取中的作用。

二,实验内容(1)采样混叠,对一个模拟信号Va(t)进行等间采样,采样频率为200HZ,得到离散时间信号V(n).Va(t)由频率为30Hz,150Hz,170Hz,250Hz,330Hz的5个正弦信号的加权和构成。

Va(t)=6cos(60pi*t)+3sin(300pi*t)+2cos(340pi*t)+4cos(500pi*t )+10sin(660pi*t)观察采样后信号的混叠效应。

程序:clear,close all,t=0:0.1:20;Ts=1/2;n=0:Ts:20;V=8*cos(0.3*pi*t)+5*cos(0.5*pi*t+0.6435)-10*sin(0.7*pi*t);Vn=8*cos(0.3*pi*n)+5*cos(0.5*pi*n+0.6435)-10*sin(0.7*pi*n);subplot(221)plot(t,V),grid on,subplot(222)stem(n,Vn,'.'),gridon,05101520-40-200204005101520-40-2002040(2)输入信号X(n)为归一化频率f1=0.043,f2=0.31的两个正弦信号相加而成,N=100,按因子M=2作抽取:(1)不适用低通滤波器;(2)使用低通滤波器。

分别显示输入输出序列在时域和频域中的特性。

程序:clear;N=100; M=2;f1=0.043; f2=0.31; n=0:N-1;x=sin(2*pi*f1*n)+sin(2*pi*f2*n); y1=x(1:2:100);y2=decimate(x,M,'fir'); figure(1);stem(n,x(1:N));title('input sequence'); xlabel('n');ylabel('fudu'); figure(2); n=0:N/2-1; stem(n,y1);title('output sequence without LP'); xlabel('n');ylabel('fudu'); figure(3); m=0:N/M-1;stem(m,y2(1:N/M));title('output sequence with LP'); xlabel('n');ylabel('fudu'); figure(4);[h,w]=freqz(x);plot(w(1:512),abs(h(1:512)));title('frequency spectrum of the input sequence'); xlabel('w');ylabel('fudu'); figure(5);[h,w]=freqz(y1);plot(w(1:512),abs(h(1:512)));title('frequency spectrum of the output sequence without LP'); xlabel('w');ylabel('fudu'); figure(6);[h,w]=freqz(y2);plot(w(1:512),abs(h(1:512)));title('frequency spectrum of the output sequence without LP'); xlabel('w');ylabel('fudu');0102030405060708090100-2-1.5-1-0.500.511.52input sequencenf u d u05101520253035404550-2-1.5-1-0.500.511.52output sequence without LPnf u d u05101520253035404550-1.5-1-0.50.511.5output sequence with LPnf u d u0.511.522.533.505101520253035404550frequency spectrum of the input sequencewf u d u00.51 1.52 2.53 3.551015202530frequency spectrum of the output sequence without LPwf u d u00.51 1.52 2.53 3.5510152025frequency spectrum of the output sequence without LPwf u d u(3)输入信号X(n)为归一化频率f1=0.043,f2=0.31的两个正弦信号相加而成,长度N=50,内插因子为2.(1)不适用低通滤波器;(2)使用低通滤波器。

数字信号处理实验报告(二)

数字信号处理实验报告(二)

数字信号处理第二次实验报告学院:信息工程学院班级:2012级电子信息工程*班姓名:学号:20125507**指导老师:实验四:IIR数字滤波器设计及软件实现一、实验目的1、熟悉双线性变换设计IIR滤波器的原理与方法2、掌握IIR滤波器的MATLAB实现方法二、实验原理简述IIR数字滤波器间接法基本设计过程:1、将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;2、设计过渡模拟滤波器;3、将过渡模拟滤波器系统函数转换成数字滤波器的系统函数三、程序与图形1、%-----------------信号产生函数mstg---------------function st=mstg %功能函数的写法%产生信号序列向量st,并显示st的时域波形和频谱%st=mstg 返回三路调幅信号相加形成的混合信号,长度N=1600N=1600 %N为信号st的长度。

Fs=10000;T=1/Fs;Tp=N*T; %采样频率Fs=10kHz,Tp为采样时间t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;fc1=Fs/10; %第1路调幅信号的载波频率fc1=1000Hz,fm1=fc1/10; %第1路调幅信号的调制信号频率fm1=100Hzfc2=Fs/20; %第2路调幅信号的载波频率fc2=500Hzfm2=fc2/10; %第2路调幅信号的调制信号频率fm2=50Hzfc3=Fs/40; %第3路调幅信号的载波频率fc3=250Hz,fm3=fc3/10; %第3路调幅信号的调制信号频率fm3=25Hzxt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t); %产生第1路调幅信号xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t); %产生第2路调幅信号xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t); %产生第3路调幅信号st=xt1+xt2+xt3; %三路调幅信号相加fxt=fft(st,N); %计算信号st的频谱%-------绘制st的时域波形和幅频特性曲线-----subplot(2,1,1)plot(t,st);grid;xlabel('t/s');ylabel('s(t)');axis([0,Tp/8,min(st),max(st)]);title('(a) s(t)的波形')subplot(2,1,2)stem(f,abs(fxt)/max(abs(fxt)),'.');grid;title('(b) s(t)的频谱') axis([0,Fs/5,0,1.2]);xlabel('f/Hz');ylabel('幅度')-10123t/ss (t )(b) s(t)的频谱f/Hz幅度2、%-------实验4-2--------- clear all;close allFs=10000;T=1/Fs; %采样频率%调用信号产生函数mstg 产生由三路抑制载波调幅信号相加构成的复合信号st st=mstg;fp=280;fs=450; %下面wp,ws,为fp,fs 的归一化值范围为0-1wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; %DF 指标(低通滤波器的通、阻带边界频)[N,wp]=ellipord(wp,ws,rp,rs); %调用ellipord 计算椭圆DF 阶数N 和通带截止频率wp[B,A]=ellip(N,rp,rs,wp); %调用ellip 计算椭圆带通DF 系统函数系数向量B 和A[h,w]= freqz(B,A);y1t=filter(B,A,st); %滤波器软件实现 figure(2);subplot(2,1,1); plot(w,20*log10(abs(h))); axis([0,1,-80,0]) subplot(2,1,2);t=0:T:(length(y1t)-1)*T; plot(t,y1t);%axis([0,1,-80,0])-10123t/ss (t )(b) s(t)的频谱f/Hz幅度-80-60-40-20000.020.040.060.080.10.120.140.16-1-0.500.511.53、%-------实验4-3---------fpl=440;fpu=560;fsl=275;fsu=900;wp=[2*fpl/Fs,2*fpu/Fs];ws=[2*fsl/Fs,2*fsu/Fs];rp=0.1;rs=60;[N,wp]=ellipord(wp,ws,rp,rs); %调用ellipord 计算椭圆DF 阶数N 和通带截止频率wp[B,A]=ellip(N,rp,rs,wp); %调用ellip 计算椭圆带通DF 系统函数系数向量B 和A[h,w]= freqz(B,A); y2t=filter(B,A,st);figure(3);subplot(2,1,1);plot(w,20*log10(abs(h))); axis([0,1,-80,0]) subplot(2,1,2);t=0:T:(length(y2t)-1)*T; plot(t,y2t);00.20.40.60.81-80-60-40-20000.020.040.060.080.10.120.140.16-2-10124、%-------实验4-4--------- fp=900;fs=550;wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; %DF 指标(低通滤波器的通、阻带边界频)[N,wp]=ellipord(wp,ws,rp,rs);%调用ellipord 算椭圆DF 阶数N 通带截止频率 [B,A]=ellip(N,rp,rs,wp,'high'); %调用ellip 计算椭圆带通DF 系统函数系数向量B 和A[h,w]= freqz(B,A); y3t=filter(B,A,st);figure(4);subplot(2,1,1); plot(w,20*log10(abs(h))); axis([0,1,-80,0]) subplot(2,1,2);t=0:T:(length(y3t)-1)*T; plot(t,y3t);-80-60-40-20000.020.040.060.080.10.120.140.16-2-1012四、实验结果分析由图可见,三个分离滤波器指标参数选取正确,损耗函数曲线达到所给指标。

数字信号处理 实验二

数字信号处理  实验二

实验二离散时间信号时域表示一、实验类型:验证性实验二、实验目的1)掌握序列的产生方法;2)熟悉关于序列的简单运算;3)序列及其运算结果的可视化表示。

三、实验内容和步骤1)编写sy2_1.m程序文件,生成单位抽样序列和单位阶跃序列(n=-10~20),用图形显示。

2)编写sy2_2.m程序文件,生成一个实数值的指数序列(n=0~35,a=1.2),用图形显示。

3)编写sy2_3.m程序文件,生成扫频正弦序列X(n)=cos(pi*n2/200)(n=0~100),用图形显示。

4)编写sy2_4,m程序文件以实现下列功能:用rand函数随机产生噪声,加在一个已知的确定信号上,然后采用三点滑动平均算法y(n)=1/3(x[n-1]+x[n]+x[n+1])实现信号的平滑,用图形显示平滑后的信号。

四、实验结果及分析1)单位阶跃 sy2_1.mn=-10:20;y=[zeros(1,10),1,ones(1,20)];stem(n,y);2) 单位抽样sy2_1_1.mn=-10:20;y=[zeros(1,10),1,zeros(1,20)]; stem(n,y);3) 扫频正弦序列sy2_3.mn=0:1:100;f=cos(pi*n.^2/200);stem(n,f);4)指数序列sy2_2.mn=0:35;a=1.2;y=a.^n;stem(n,y);5)sy2_4.mN=128n=1:N;x=0.5-rand(1,N);stem(n,x);y=1.5*sin(60*pi*n*0.001); z=x+y;plot(n,z);-2-1.5-1-0.50.511.52五、问题思考:Legend 命令的作用是什么?解:添加AXES 里每条线的标识。

数字信号处理实验报告一二

数字信号处理实验报告一二

数字信号处理课程实验报告实验一 离散时间信号和系统响应一. 实验目的1. 熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解2. 掌握时域离散系统的时域特性3. 利用卷积方法观察分析系统的时域特性4. 掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对离散信号及系统响应进行频域分析二、实验原理1. 采样是连续信号数字化处理的第一个关键环节。

对采样过程的研究不仅可以了解采样前后信号时域和频域特性的变化以及信号信息不丢失的条件,而且可以加深对离散傅里叶变换、Z 变换和序列傅里叶变换之间关系式的理解。

对连续信号()a x t 以T 为采样间隔进行时域等间隔理想采样,形成采样信号: 式中()p t 为周期冲激脉冲,()a x t 为()a x t 的理想采样。

()a x t 的傅里叶变换为()a X j Ω:上式表明将连续信号()a x t 采样后其频谱将变为周期的,周期为Ωs=2π/T 。

也即采样信号的频谱()a X j Ω是原连续信号xa(t)的频谱Xa(jΩ)在频率轴上以Ωs 为周期,周期延拓而成的。

因此,若对连续信号()a x t 进行采样,要保证采样频率fs ≥2fm ,fm 为信号的最高频率,才可能由采样信号无失真地恢复出原模拟信号ˆ()()()a a xt x t p t =1()()*()21()n a a a s X j X j P j X j jn T π∞=-∞Ω=ΩΩ=Ω-Ω∑()()n P t t nT δ∞=-∞=-∑计算机实现时,利用计算机计算上式并不方便,因此我们利用采样序列的傅里叶变换来实现,即而()()j j n n X e x n e ωω∞-=-∞=∑为采样序列的傅里叶变换2. 时域中,描述系统特性的方法是差分方程和单位脉冲响应,频域中可用系统函数描述系统特性。

已知输入信号,可以由差分方程、单位脉冲响应或系统函数求出系统对于该输入信号的响应。

(完整版)数字信号处理实验二

(完整版)数字信号处理实验二
xlabel('时间序号n'); ylabel('振幅');
y = filter(num,den,x,ic);
yt = a*y1 + b*y2;
d = y - yt;
subplot(3,1,1)
stem(n,y);
ylabel('振幅');
title('加权输入: a \cdot x_{1}[n] + b \cdot x_{2}[n]的输出');
subplot(3,1,2)
%扫频信号通过2.1系统:
clf;
n = 0:100;
s1 = cos(2*pi*0.05*n);
s2 = cos(2*pi*0.47*n);
a = pi/2/100;
b = 0;
arg = a*n.*n + b*n;
x = cos(arg);
M = input('滤波器所需的长度=');
num = ones(1,M);
三、实验器材及软件
1.微型计算机1台
2. MATLAB 7.0软件
四、实验原理
1.三点平滑滤波器是一个线性时不变的有限冲激响应系统,将输出延时一个抽样周期,可得到三点平滑滤波器的因果表达式,生成的滤波器表示为
归纳上式可得
此式表示了一个因果M点平滑FIR滤波器。
2.对线性离散时间系统,若y1[n]和y2[n]分别是输入序列x1[n]和x2[n]的响应,则输入
plot(n, y);
axis([0, 100, -2, 2]);
xlabel('时间序号 n'); ylabel('振幅');

数字信号处理实验二DFT 和FFT

实验二DFT 和FFT一.实验内容1.认真复习周期序列DFS、有限长序列DFT 的概念、旋转因子的定义、以及DFS 和DFT的性质等有关内容;复习基2-FFT 的基本算法,混合基-FFT 的基本算法、Chirp-Z 变换的算法等快速傅立叶变换的方法。

2.掌握有限长序列的循环移位、循环卷积的方法,对序列共轭对称性的含义和相关内容加深理解和掌握,掌握利用DFT 分析序列的频谱特性的基本方法。

3.掌握FFT 算法的基本原理和方法、Chirp-Z 变换的基本原理和方法,掌握利用FFT 分析序列的频谱特性的方法。

4.熟悉利用MATLAB 进行序列的DFT、FFT 的分析方法。

二.实验内容a. 设周期序列x~(n)={ …,0,1,2,3,0,1,2,3,0,1,2,3,….},求该序列的离散傅立叶级数X(k) = DFS[x~(n)],并画出DFS 的幅度特性。

在matlab中新建函数dfs:function [Xk]=dfs(xn,N)n=0:1:N-1;k=0:1:N-1;Wn=exp(-j*2*pi/N);nk=n'*k;Wnk=Wn.^nk;Xk=xn*Wnk;在matlab中输入以下代码:xn=[0,1,2,3];k=0:1:3;N=4;Xk=dfs(xn,N);y=abs(Xk);stem(k,y);title('周期序列的离散傅立叶级数');生成图像如下:由定义可知,对于周期序列,根据离散傅里叶级数公式即可求出,实验中显示了一个周期的傅里叶级数。

b. 设周期方波序列为x(n)=⎩⎨⎧+≤≤++≤≤)1-1)N (m n (01)-L mN n 1(mN L mN (m=0,,....2,1±±)其中N 为基波周期,L/N 是占空比。

(1) 用L 和N 求| X (k) |的表达式;(2) 当L 和N 分别为:L=5,N=20;L=5,N=40;L=5,N=60 以及L=7,N=60 时画出DFS 的幅度谱;(3) 对以上结果进行讨论,总结其特点和规律。

数字信号处理实验报告一二

数字信号处理课程实验报告实验一 离散时间信号和系统响应一. 实验目的1. 熟悉连续信号经理想采样前后的频谱变化关系,加深对时域采样定理的理解2. 掌握时域离散系统的时域特性3. 利用卷积方法观察分析系统的时域特性4. 掌握序列傅里叶变换的计算机实现方法,利用序列的傅里叶变换对离散信号及系统响应进行频域分析二、实验原理1. 采样是连续信号数字化处理的第一个关键环节。

对采样过程的研究不仅可以了解采样前后信号时域和频域特性的变化以及信号信息不丢失的条件,而且可以加深对离散傅里叶变换、Z 变换和序列傅里叶变换之间关系式的理解。

对连续信号()a x t 以T 为采样间隔进行时域等间隔理想采样,形成采样信号: 式中()p t 为周期冲激脉冲,()a x t 为()a x t 的理想采样。

()a x t 的傅里叶变换为()a X j Ω:上式表明将连续信号()a x t 采样后其频谱将变为周期的,周期为Ωs=2π/T 。

也即采样信号的频谱()a X j Ω是原连续信号xa(t)的频谱Xa(jΩ)在频率轴上以Ωs 为周期,周期延拓而成的。

因此,若对连续信号()a x t 进行采样,要保证采样频率fs ≥2fm ,fm 为信号的最高频率,才可能由采样信号无失真地恢复出原模拟信号ˆ()()()a a xt x t p t =1()()*()21()n a a a s X j X j P j X j jn T π∞=-∞Ω=ΩΩ=Ω-Ω∑()()n P t t nT δ∞=-∞=-∑计算机实现时,利用计算机计算上式并不方便,因此我们利用采样序列的傅里叶变换来实现,即而()()j j n n X e x n e ωω∞-=-∞=∑为采样序列的傅里叶变换2. 时域中,描述系统特性的方法是差分方程和单位脉冲响应,频域中可用系统函数描述系统特性。

已知输入信号,可以由差分方程、单位脉冲响应或系统函数求出系统对于该输入信号的响应。

数字信号处理实验

实验二DFT用于频谱分析(一)、在运用DFT进行频谱分析的过程中可能产生三种误差:(1)混叠序列的频谱时被采样信号的周期延拓,当采样速率不满足Nyquist定理时,就会发生频谱混叠,使得采样后的信号序列频谱不能真实的反映原信号的频谱。

避免混叠现象的唯一方法是保证采样速率足够高,使频谱混叠现象不致出现,即在确定采样频率之前,必须对频谱的性质有所了解,在一般情况下,为了保证高于折叠频率的分量不会出现,在采样前,先用低通模拟滤波器对信号进行滤波。

(2)泄漏实际中我们往往用截短的序列来近似很长的甚至是无限长的序列,这样可以使用较短的DFT来对信号进行频谱分析,这种截短等价于给原信号序列乘以一个矩形窗函数,也相当于在频域将信号的频谱和矩形窗函数的频谱卷积,所得的频谱是原序列频谱的扩展。

泄漏不能与混叠完全分开,因为泄漏导致频谱的扩展,从而造成混叠。

为了减少泄漏的影响,可以选择适当的窗函数使频谱的扩散减至最小。

DFT是对单位圆上Z变换的均匀采样,所以它不可能将频谱视为一个连续函数,就一定意义上看,用DFT来观察频谱就好像通过一个栅栏来观看一个图景一样,只能在离散点上看到真实的频谱,这样就有可能发生一些频谱的峰点或谷点被“尖桩的栅栏”所拦住,不能别我们观察到。

减小栅栏效应的一个方法就是借助于在原序列的末端填补一些零值,从而变动DFT的点数,这一方法实际上是人为地改变了对真实频谱采样的点数和位置,相当于搬动了每一根“尖桩栅栏”的位置,从而使得频谱的峰点或谷点暴露出来。

用FFT可以实现两个序列的圆周卷积。

在一定的条件下,可以使圆周卷积等于线性卷积。

一般情况,设两个序列的长度分别为N1和N2,要使圆周卷积等于线性卷积的充要条件是FFT的长度N≥N1+N2对于长度不足N的两个序列,分别将他们补零延长到N。

当两个序列中有一个序列比较长的时候,我们可以采用分段卷积的方法。

有两种方法:重叠相加法。

将长序列分成与短序列相仿的片段,分别用FFT对它们作线性卷积,再将分段卷积各段重叠的部分相加构成总的卷积输出。

数字信号处理实验二

实验二信号的分析与处理综合实验一、实验目的目的:综合运用数字信号处理的理论知识进行信号的采样,重构,频谱分析和滤波器的设计,通过理论推导得出相应结论,再利用Matlab作为编程工具进行计算机实现,从而加深对所学知识的理解,建立概念。

二、基本要求1.掌握数字信号处理的基本概念、基本理论和基本方法;2.学会MA TLAB的使用,掌握MA TLAB的程序设计方法;3.掌握用MA TLAB设计简单实验验证采样定理的方法;4.掌握在Windows环境下语音信号采集的方法;5.学会用MA TLAB对信号进行频谱分析;6.掌握MA TLAB设计FIR和IIR数字滤波器的方法;三、实验内容1.利用简单正弦信号设计实验验证采样定理:(1)Matlab产生离散信号的方法,作图的方法,以及基本运算操作(2)对连续正弦信号以不同的采样频率作采样(3)对采样前后信号进行傅立叶变换,并画频谱图(4)分析采样前后频谱的有变化,验证采样定理。

掌握画频谱图的方法,深刻理解采样频率,信号频率,采样点数,频率分辨率等概念2.真实语音信号的采样重构:录制一段自己的语音信号,并对录制的信号进行采样;画出采样前后语音信号的时域波形和频谱图;对降采样后的信号进行插值重构,滤波,恢复原信号。

(1)语音信号的采集(2)降采样的实现(改变了信号的采样率)(3)以不同采样率采样后,语音信号的频谱分析(4)采样前后声音的变化(5)对降采样后的信号进行插值重构,滤波,恢复原信号3.带噪声语音信号的频谱分析(1)设计一频率已知的噪声信号,与实验2中原始语音信号相加,构造带噪声信号(2)画出原始语音信号和加噪声后信号,以及它们的频谱图(3)利用频谱图分析噪声信号和原语音信号的不同特性4.对带噪声语音信号滤波去噪:给定滤波器性能指标,采样窗函数法或双线性变换设计滤波器,并画出滤波器的频率响应;然后用自己设计的滤波器对采样的语音信号进行滤波,画出滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;回放语音信号;(1)分析带噪声信号频谱,找出噪声所在的频率段(2)利用matlab中已有的滤波器滤波(3)根据语音信号特点,自己设计滤波器滤波(4)比较各种滤波器性能(至少四种),选择一种合适的滤波器将噪声信号滤除(5)回放语音信号,比较滤波前后声音的变化四、实验原理参考《数字信号处理》教材《数字信号处理的MATLAB实现》万永革编著五、主要实验仪器及材料微型计算机、Matlab。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验报告院系信息工程学院
班级课程名称数字信号
学号
实验成绩
实验二:离散LSI系统的时域分析
一、实验内容
1.知描述某离散LSI系统的差分方程为2y(n)-3y(n-1)+y(n-2)=x(n-1),分别用impz和dstep函数、filtic和filter函数两种方法求解系统的单位序列响应和单位阶跃响应。

用impz和dstep函数求解系统的单位序列响应和单位阶跃响应如下
a=[1,-3/2,1/2];
b=[0,1/2,0];
N=32;
n=0:N-1;
hn=impz(b,a,n);
gn=dstep(b,a,n);
subplot(1,2,1);stem(n,hn,'k');
title('系统的单位序列响应');
ylabel('h(n)');xlabel('n');
axis([0,N,*min(hn),*max(hn)]);
subplot(1,2,2);stem(n,gn,'k');
title('系统的单位阶跃响应');
ylabel('g(n)');xlabel('n');
axis([0,N,*min(gn),*max(gn)]);
h (n )
n
g (n )
n
用函数filtic 和filter 求解离散系统的单位序列响应和单位阶跃
解:x01=0;y01=0; a=[1,-3/2,1/2]; b=[0,1/2,0]; N=32;n=0:N-1; xi=filtic(b,a,0); x1=[n==0]; hn=filter(b,a,x1,xi); x2=[n>=0]; gn=filter(b,a,x2,xi); subplot(1,2,1);stem(n,hn,'k'); title('系统的单位序列响应'); ylabel('h(n)');xlabel('n'); axis([0,N,*min(hn),*max(hn)]); subplot(1,2,2);stem(n,gn,'k'); title('系统的单位阶跃响应'); ylabel('g(n)');xlabel('n'); axis([0,N,*min(gn),*max(gn)]);
10
20
30
0.55
0.60.65
0.70.750.80.85
0.9
0.951
1.05h (n )
n
g (n )
n
2.写程序描绘下列序列的卷积波形:
(1)f 1(n)=u(n),f 2(n)=u(n-2), (0≤n<10) n1=0:10; nt=length(n1); f1=ones(1,nt); n2=2:12; nt=length(n2); f2=ones(1,nt);
[y,ny]=convu(f1,n1,f2,n2); subplot(2,2,1);stem(n1,f1); subplot(2,2,2);stem(n2,f2); subplot(2,1,2);stem(ny ,y);
5
10
5
10
15
00.20.40.60.81246810121416182022
(2)x(n)=sin(n/2),h(n)=n (-3≤n ≤4П)
n1=-3:4*pi; f1=.^n1; f2=sin(n2/2);
[y,ny]=convu(f1,n1,f2,n2); subplot(2,2,1);stem(n1,f1); subplot(2,2,2);stem(n2,f2); subplot(2,1,2);stem(ny,y); 定义函数文件调用部分: function[y,ny]= convu(f1,n1,f2,n2) nys=n1(1)+n2(1);nyf=n1(end)+n2(end); y=conv(f1,f2);ny=nys:nyf;
-505101500.511.5
2
-1-0.500.51
-4-20246
3.知某离散LSI 系统的单位序列响应为h(n)=3δ(n-3)+δ(n-4)+δ(n-5)+δ(n-6)δ(n-7) 求输入为x(n)=(n)时的系统响应。

N=16; n=0:N-1; x=exp*n);
subplot(2,2,1);stem(n,x); a=1; b=[0,0,0,3,,,,]; hn=impz(b,a,n); subplot(2,2,2);stem(n,hn) y=conv(x,hn); subplot(2,1,2);stem(y);
1
2
3
4.描述某离散LSI 系统的差分方程为y(n)=(n-1)+2x(n)-x(n-2),求输入为x(n)=u(n-3)时的系统响应。

N=16;n1=3:N+2;
f1=[zeros(1,3),ones(1,(N-3))]; subplot(2,2,1);stem(n1,f1);
a=[1,0,,0]; b=[2,0,-1,0]; f2=impz(b,a,n1); subplot(2,2,2);stem(n1,f2); [y,ny]=convu(f1,n1,f2,n1); subplot(2,1,2);stem(ny,y); 定义函数文件调用部分: function[y,ny]= convu(f1,n1,f2,n2) nys=n1(1)+n2(1);nyf=n1(end)+n2(end); y=conv(f1,f2);ny=nys:nyf;
00.20.40.6
0.8
10
0.10.2
0.30.4
00.20.40.60.81
二、思考题答案
思考本实验提出的有关MATLAB 函数在调用时应注意哪些问题。

调用自定意函数时 按照以下代码
在自定义函数的取值不是从0开始时 就引用一下函数: function[y,ny]=convu(h,nh,x,nx) nys=nh(1)+nx(1);nyf=nh(end)+nx(end); y=conv(h,x);ny=nys:nyf; 里面的变量要一一对应 代码写到function 的文件里面 调用时convu 与文件命名一致!
三、实验小结
(1)遇到问题及解决方法
注意函数的定义 出现问题及时问老师
(2)学到的新的函数及其用法
由离散时间系统的时域分析方法可知,一个离散LSI 系统的响应与激励可以用如下框图表示:
其输入
2、用函数impz 和dstep 求解离散系统的单位脉冲响应和单位阶跃响应。

、输出关系可用以下差分方程描述:
[][]N
M
k
k k k a
y n k b x n m ==-=-∑∑
3、用函数filtic 和filter 求解离散系统的单位序列响应和单位阶跃响应。

4、用MA TLAB 实现线性卷积 1)用函数conv 进行卷积运算:
求解两个序列的卷积和,关键在于如何确定卷积结果的时宽区间。

MA TLAB 提供的求卷积函数conv 默认两个序列的序号均从n=0开始,卷积结果y 对应的序列的序号也从n=0开始。

2)非零起始序列的卷积运算:
当两个序列不是从0开始时,必须对conv 函数稍加扩展。

由卷积原理可知,若待卷积的两个序列序号分别为{x(n);nx=nxs:nxf},{h(n);nh=nhs:nhf},则卷积和y(n)的序号起点和终点分别为:nys=nxs+nhs ,nyf=nxf+nhf 。

据此可定义通用卷积函数convu :
function[y,ny]=convu(h,nh,x,nx) nys=nh(1)+nx(1);nyf=nh(end)+nx(end); y=conv(h,x);ny=nys:nyf; 3)卷积积分的动态过程
5、离散LSI 系统时域响应的求解:
MATLAB 提供了多种方法求解离散LSI 系统的响应:
1) 用conv 函数进行卷积积分,求任意输入的系统零状态响应; 2) 用dlsim 函数求任意输入的系统零状态响应; 3)用filtic 和filter 函数求任意输入的系统完全响应。

相关文档
最新文档