实验一低通采样定理和内插与抽取实现.docx
《实验一低通采样定理和内插与抽取实现.docx》由会员分享,可在线阅读,更多相关《实验一低通采样定理和内插与抽取实现.docx(15页珍藏版)》请在冰豆网上搜索。
实验一低通采样定理和内插与抽取实现
实验一:
低通采样定理和内插与抽取实现
1.实验目的
1.连续信号和系统的表示方法,以及坊真方法。
2.用MATLAB实现连续信号采用与重构的方法,
3.采样信号的插值和抽取等重采样实现方法。
4.用时域采样信号重构连续时域信号的原理和方法。
5.用MATLAB绘图函数表示信号的基本方法,实验数据的可视化表示。
2.原理
1、时域抽样定理
令连续信号xa(t)的傅里叶变换为Xa(ji」),抽样脉冲序列p(t)傅里叶变换为Pj」),抽样后的信号xA(t)的傅里叶变换为XV1)若采用均匀抽样,抽样周期Ts,抽样频率为门s=2二fs,由前面分析可知:
抽样的过程可以通过抽样脉冲序列p(t)与连续信号xa(t)相乘来完成,即满足:
xA(t)=xa(t)p(t),又周期信号f(t)傅里叶变换为:
m
I'lf(i)/=二心可\(Wf
jn=—-oa
故可以推得p(t)的傅里叶变换为:
P(5^)=2nc-"dH
J>=-—
其中:
pn=月zpDlat
根据卷积定理可知:
X(g=p(jo)
得到抽样信号x(t)的傅里叶变换为:
严W
X(jQ)=。
一«Qj/
n=—e
其表明:
信号在时域被抽样后,他的频谱X(j门)是连续信号频谱X(j门)的形状以抽样频率门为间隔周期重复而得到,在重复过程中幅度被p(t)的傅里叶级数Pn加权。
因为Pn只是n的函数,所以Xj」)在重复的过程中不会使其形状发生变化。
假定信号x(t)的频谱限制在亠m~+「m的范围内,若以间隔Ts对xa(t)进行抽样,可知抽样信号XA(t)的频谱XW")是以门s为周期重复。
显然,若在抽样的过程中门s<2im,则XT门)将发生频谱混叠现象,只有在抽样的过程中满足11s>=2「m条件,XW门)才不会产生频谱的混叠,接收端完全可以由xA(t)恢复原连续信号xa(t),这就是低通信号抽样定理的核心内容。
2、信号的重建
从频域看,设信号最高频率不超过折叠频率
Xa(j门)=Xa(j门)『s/2
Xa『」)=0p|>门s/2
则理想取样后的频谱就不会产生混叠,故有:
■90-
Ar(j=J,2ZA:
.
■«—
jtijII£^/2
让取样信号xA(t)通过一带宽等于折叠频率的理想低通滤波器
H(j")=T|门s/2
H(j「)=0|门|>「s/2
滤波器只允许通过基带频谱,即原信号频谱,故:
Y(j门)=XA(j门)H(j门)=Xa(j门)
因此在滤波器的输出得到了恢复的原模拟信号:
y(t)=xa(t)
从时域上看,上述理想的低通滤波器的脉冲响应为
JT
mu于*
□n:
根据卷积公式可求得理想低通滤波器的输出为
y(t)—nT)ha(t—nT)
由上式显然可得
ha(t-nT)=sin(nT)/(^/T)(t-nT)
上式表明只要满足取样频率高于两倍信号最高频率,连续时间函数xa(t)就可用他的取样值xa(nT)来表达而不损失任何信息,这时只要把每一个取样瞬时值与内插函数式相乘求和即可得出xa(t),在每一取样点上,由于只有该取样值所对应的内插函数式不为零,所以各个取样点上的信号值不变。
1•连续时间信号线性滤波实现
设计一个Butterworth模拟带通滤波器,设计指标为:
通带频率:
1000-
2000Hz两侧过渡带宽500Hz,通带波纹1dB,阻带衰减100dB假设一个信号,其中f1=100Hz,f2=1500Hz,f3=2900Hz。
信号的采样频率为10000Hz=试将原信号与通过该滤波器的模拟信号进行比较。
参考程序如下:
wp=[10002000]*2*pi;ws=[5002500]*2*pi;Rp=1;Rs=100;%滤波器设计参数,对于给
定Hz应乘以2
[N,Wn]=buttord(wp,ws,Rp,Rs,'s');%求得滤波器的最小阶数和截止频率
w=linspace(1,3000,1000)*2*pi;%设置绘制频率响应的频率点
[b,a]=butter(N,Wn,'s');%设计模拟Butterworth滤波器
H=freqs(b,a,w);%计算给定频率点的复数频率响应
magH=abs(H);phaH=unwrap(angle(H));%计算幅频响应和相频响应
plot(w/(2*pi),20*log10(magH));%以频率为横坐标绘制幅频响应
xlabel('频率/Hz');ylabel('振幅/dB');
title('Butterworth模拟带通滤波器');
holdon;plot([10001000],ylim,'r');plot([20002000],ylim,'r');%绘带边界
gridon
figure
(2)
dt=1/10000;%模拟信号采样间隔
f1=100;f2=1500;f3=2900;%输入信号的三个频率成分
t=0:
dt:
0.04;%给定模拟时间段
x=sin(2*pi*f1*t)+0.5*cos(2*pi*f2*t)+0.5*sin(2*pi*f3*t);%输入信号
H=[tf(b,a)];%滤波器在MATLAB系统中的表示
[y,t1]=lsim(H,x,t);%模拟输出
subplot(2,1,1),plot(t,x),title('输入信号')%绘出输入信号
subplot(2,1,2),plot(t1,y)%绘制输出信号
title('输出信号'),xlabel('时间/s')
2•理想矩形滤波器的时域表示
clear;clc;
fh=100;
for1=1:
4
k=I;fs=k*2*fh;
N=10*k;n=-N:
N;
dt=1/fs;T=N*dt;
t=-T:
dt:
T;
%h=2*fh/fs*sinc(n/k);
%h=sinc(n/k);
subplot(2,2,l)
plot(t,h);holdon;
stem(t,h);holdon;
plot(t,zeros(length(t)),'linewidth',3);title(['fs/2fh=k,k=',num2str(k)],'fontsize',28);axis('off)
end
fs/2fh=k,k=1
fs/2fh=k,k=3
3.连续时间信号的采样和重建
1、分别用150HZ及300HZ对信号采样
源信号为:
fa=5*sin(2*pi*40*t1)+1.8*sin(4*pi*40*t1)+0.8*sin(5*pi*40*t1),用150Hz的频率
对f(t)进行采样,其采样图如图1所示;用300Hz的频率对f(t)进行采样,其采样图如图
2所示。
程序如下:
fs仁150;
t1=-0.1:
1/fs1:
0.1;
fa=5*sin(2*pi*40*t1)+1.8*sin(4*pi*40*t1)+0.8*sin(5*pi*40*t1);figure
(1);plot(t1,fa),xlabel('fs1=150Hz时,fa采样时域图');
holdoff;
fs2=300;
t2=-0.1:
1/fs2:
0.1;
fb=5*sin(2*pi*40*t2)+1.8*sin(4*pi*40*t2)+0.8*sin(5*pi*40*t2);
-8
1
1
1
r
1F
r
1
1
-0.1
-0.08
-0.06
-0.04
-0.02
00.02
0.04
0.06
0.08
fs1=150Hz
时,fa采样时域图
0.1
图1150HZ采样频率对信号采样图
图2300HZ采样频率对信号采样图
2、对信号进行快速离散傅里叶变换
将两个采样信号进行快速离散傅里叶变换(FFT),用150Hz的频率对f(t)进行采样,其采样后快速傅立叶变换频谱图图3所示;用300Hz的频率对f(t)进行
采样,其采样后快速傅立叶变换频谱图图4所示。
程序如下:
f=40;fs=150;
N=300;k=0:
N-1;
t=-0.1:
1/fs:
0.1;
w1=150*k/N;
fa=5*sin(2*pi*f*t)+1.8*sin(4*pi*f*t)+0.8*sin(5*pi*f*t);
xfa=fft(fa,N);xf1=abs(xfa);
时,fa经fft后频谱图.单位:
Hz');
figure
(1);plot(w1,xf1),xlabel('fs=150Hzf=40;fs=300;
N=300;k=0:
N-1;
t=-0.1:
1/fs:
0.1;
w2=300*k/N
fb=5*sin(2*pi*f*t)+1.8*sin(4*pi*f*t)+0.8*sin(5*pi*f*t);
xfb=fft(fb,N);xf2=abs(xfb);
figure
(2);plot(w2,xf2),xlabel('fs=300Hz时,fb经fft后频谱图.单位:
Hz');
图3150HZ采样后经FFT后频谱图
图4300HZ采样后经FFT后频谱图
3、信号的重建
我们可以通过利用内插法把原信号从采样信号中恢复出来,观察信号在满足怎样的采样条件下能够恢复为原信号,图5和图6分别为恢复后的原信号
程序如下:
Wm=180*pi;Wc=Wm;
fs仁150;Ws=2*pi*fs1;
n=-800:
800;nTs仁n/fs1;
fa=5.1*sin(2*pi*40*nTs1)+1.8*sin(4*pi*40*nTs1)+0.8*sin(5*pi*40*nTs1);Dt=1/fs1;t1=-0.1:
Dt:
0.1;
fa仁fa/fs1*Wc/pi*sinc((Wc/pi)*(ones(length(nTs1),1)*t1-nTs1'*ones(1,length(t1)));
figure
(1);plot(t1,fa1);
axis([-0.10.1-88]);xlabel('fs=150Hz时,fa利用内插由样本重建原信号图.');
Wm=180*pi;Wc=Wm;
fs2=300;Ws=2*pi*fs2;
n=-800:
800;nTs2=n/fs2;
fb=5.1*sin(2*pi*40*nTs2)+1.8*sin(4*pi*40*nTs2)+0.8*sin(5*pi*40*nTs2);Dt=1/fs2;t1=-0.1:
Dt:
0.1;
fb仁fb/fs2*Wc/pi*sinc((Wc/pi)*(ones(length(nTs2),1)*t1-nTs2'*ones(1,length(t1)));
figure
(2);plot(t1,fb1);
axis([-0.10.1-88]);
xlabel('fs=300Hz时,fb利用内插由样本重建原信号图.');
grid;
8
图5150HZ采样后的信号的重建信号
图6300HZ采样后的信号的重建信号
4•采样信号的抽取和插值
%File_C3:
UpSampl.m
%该程序仿真通过零阶保持内插对信号进行上抽样,分析上抽样对信号频谱的影