实验一:低通采样定理和内插与抽取实现..

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

实验一:低通采样定理和内插与抽取实现

一.实验目的

1. 连续信号和系统的表示方法,以及坊真方法。

2.用MATLAB实现连续信号采用与重构的方法,

3. 采样信号的插值和抽取等重采样实现方法。

4. 用时域采样信号重构连续时域信号的原理和方法。

5. 用MATLAB绘图函数表示信号的基本方法,实验数据的可视化表示。二.原理

1 、时域抽样定理

令连续信号xa(t)的傅里叶变换为Xa(jΩ),抽样脉冲序列p(t)傅里叶变换为P(jΩ),抽样后的信号x^(t)的傅里叶变换为X^(jΩ)若采用均匀抽样,抽样周期Ts,抽样频率为Ωs=2πfs,由前面分析可知:抽样的过程可以通过抽样脉冲序列p(t)与连续信号xa(t)相乘来完成,即满足:x^(t)=xa(t) p(t),又周期信号f(t)傅里叶变换为:

故可以推得p(t)的傅里叶变换为:

其中:

根据卷积定理可知:

得到抽样信号x(t)的傅里叶变换为:

其表明:信号在时域被抽样后,他的频谱X(jΩ)是连续信号频谱X(jΩ)的形状以抽样频率Ω为间隔周期重复而得到,在重复过程中幅度被p(t)的傅里叶级数Pn 加权。因为Pn只是n的函数,所以X(jΩ)在重复的过程中不会使其形状发生变化。

假定信号x(t)的频谱限制在-Ωm~+Ωm的范围内, 若以间隔Ts对xa(t)进行抽样,可知抽样信号X^(t)的频谱X^(jΩ)是以Ωs为周期重复。显然,若在抽样的过程中Ωs<2Ωm,则X^(jΩ)将发生频谱混叠现象,只有在抽样的过程中满足Ωs>=2Ωm条件,X^(jΩ)才不会产生频谱的混叠,接收端完全可以由x^(t)恢复原连续信号xa(t),这就是低通信号抽样定理的核心内容。

2、信号的重建

从频域看,设信号最高频率不超过折叠频率:

Xa(jΩ)=Xa(jΩ) |Ω|<Ωs/2

Xa(jΩ)=0 |Ω|>Ωs/2

则理想取样后的频谱就不会产生混叠,故有:

让取样信号x^(t)通过一带宽等于折叠频率的理想低通滤波器:

H(jΩ)=T |Ω|<Ωs/2

H(jΩ)=0 |Ω|>Ωs/2

滤波器只允许通过基带频谱,即原信号频谱,故:

Y(jΩ)=X^(jΩ)H(jΩ)=Xa(jΩ)

因此在滤波器的输出得到了恢复的原模拟信号:

y(t)=xa(t)

从时域上看,上述理想的低通滤波器的脉冲响应为:

根据卷积公式可求得理想低通滤波器的输出为:

由上式显然可得:

则:

上式表明只要满足取样频率高于两倍信号最高频率,连续时间函数xa(t)就可用他的取样值xa(nT)来表达而不损失任何信息,这时只要把每一个取样瞬时值与内插函数式相乘求和即可得出xa(t),在每一取样点上,由于只有该取样值所对应的内插函数式不为零,所以各个取样点上的信号值不变。

三.内容

1.连续时间信号线性滤波实现

设计一个Butterworth模拟带通滤波器,设计指标为:通带频率:1000- 2000Hz,两侧过渡带宽500Hz,通带波纹1dB,阻带衰减100dB。假设一个信号,其中f1=100Hz,f2=1500Hz,f3=2900Hz。信号的采样频率为10000Hz。试将原信号与通过该滤波器的模拟信号进行比较。参考程序如下:

wp=[1000 2000]*2*pi;ws=[500 2500]*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模拟带通滤波器');

hold on;plot([1000 1000],ylim,'r');plot([2000 2000],ylim,'r');%绘带边界

grid on

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;

for I=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,I)

plot(t,h); hold on;

stem(t,h); hold on;

plot(t,zeros(length(t)),'linewidth',3);

title(['fs/2fh=k,k=',num2str(k)],'fontsize',28);

axis('off')

end

3. 连续时间信号的采样和重建

①、分别用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所示。程序如下:

fs1=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采样时域图');

hold off;

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);

相关文档
最新文档