搜索
您的当前位置:首页正文

随机信号分析试验报告

来源:爱够旅游网


一、实验目的

1、了解确定信号的采样与平稳随机信号的采样之间的关系,掌握信号的采样定理及其应用;

2、掌握随机信号的均值、方差、自相关函数、概率密度、频谱及功率谱密度的特性;

3、掌握随机信号的分析方法;

4、熟悉常用的信号处理仿真软件平台:Matlab或C/C++。

二、实验内容

1、实验原理

若X(t)为平稳随机过程,且具有零均值,它的功率谱密度Sx(w)限于

(wc,wc)之间。当满足条件T1fc时,便可将X(t)将它的振幅样本展开为 2X(t)limNnNNX(nT)sin(wctn)

wctn 上式为平稳随机过程的采样定理,式中T为采样周期。

2、实验内容与要求

(1)通过实验掌握随机信号的抽取与插值的基本原理、方法及其在实际运用中的意义。计算信号的数字特征,理解它们的物理概念。用Matlab或C/C++仿真软件之一编写程序和仿真。系统框图如下

X1(t) X2(t) Y(t) X(t) 抽取 插值 滤波器

(2)输入信号x(t):是在一个波形周期有80个采样点的正弦信号+n(t)。信号的真实频率取决于采样频率。假设采样频率为8000Hz,则输入信号频率就是100Hz。n(t)为高斯白噪声。

要求测试白噪声的均值、均方值、方差、自相关函数、概率密度、频谱及功率谱密度,并用波形图表示。分析实验结果,掌握均值、均方值、方差、自相关函数、频谱及功率谱密度的物理意义。

(3)滤波器设计:要求信号经滤波器后保留有用信号。滤波器结构及参数和所

涉及的采样频率取值根据滤波器在这里所起的作用、输入信号本身的特点所确定。

滤波器设计好之后,要求测试它的频率特性,并将频率特性曲线用波形图表示,以验证是否符合要求。

(4)信号抽取:所谓信号抽取也就是信号采样率的降低。将低通滤波器输出信号作为原始信号,用抽取方法分别以M=2、M=4对原始信号进行抽取。

(5)信号插值:将M=2、M=4抽取信号分别作为原始信号,用插值的方法,分别还原原始信号(滤波后的信号)。

(6)计算x(t),x1(t),x2(t),y(t)的均值、均方值、方差、自相关函数、频谱及功率谱密度。

(7)对采样前后、插值前插值后信号进行比较。观察信号频谱的变化及周期延拓性。

(8)讨论x(t)自相关函数、功率谱密度与y(t)自相关函数、功率谱密度之间关系。

三、实验步骤及结果

1、输入信号x(t):

(1)x(t)时域、频域波形图

Fs=40000;Ns=4096;n=0:Ns-1;t=n/Fs;%t为采样时间,共5000个采样点。 sine=sin(2*pi*100*t);%正弦信号

noise=randn(1,length(t));%高斯白噪声 x=sine+noise;%合成输入信号 plot(t,x);

xlabel('t');ylabel('x');title('输入信号')

x_spectra=fft(x); f=Fs*n/Ns;%频域横坐标

plot(f(1:300),abs(x_spectra(1:300))); xlabel('f'),ylabel('Y');title('输入信号频谱')

(2)高斯白噪声时域、频域波形图 plot(t,noise);title('高斯白噪声')

noise_spectra=fft(noise);plot(f(1:300),abs(noise_spectra(1:300))); xlabel('f'),ylabel('Y');title('高斯白噪声频谱')

高斯白噪声均值、均方值、方差 均值: mean=0.0087 均方值: var=1.0080 方差: fangcha=1.0079

高斯白噪声自相关函数

noise_xcorr=xcorr(noise);

t1=(-Ns+1:Ns-1)/Fs;%相关函数图像横坐标

plot(t1,noise_xcorr); xlabel('t'),ylabel('R'); title('高斯白噪声自相关函数')

高斯白噪声概率密度

[F1,y1]=ksdensity(noise); %y1为噪声信号所有取值,F1为每个值相应概率 plot(y1,F1);

xlabel('y'),ylabel('F');title('高斯白噪声概率密度')

高斯白噪声功率谱密度

P1=noise_spectra.*conj(noise_spectra)/Ns; %频谱函数平方求时间平均 plot(f(1:300),abs(P1(1:300)));xlabel('f'),ylabel('S'); title('高斯白噪声功率谱密度'))

2、滤波器设计: (1)设计代码 fp=1000;fs=2000;

rp=1;rs=35; Fs1=40000;

wp=2*pi*fp/Fs1; ws=2*pi*fs/Fs1; wap=tan(wp/2); was=tan(ws/2); Fs1=Fs1/Fs1;

[N,Wn]=buttord(wap,was,rp,rs,'s'); [z,p,k]=buttap(N);

[bp,ap]=zp2tf(z,p,k);%得到传输函数

[bs,as]=lp2lp(bp,ap,wap);%低通到低通频谱转换 [bz,az]=bilinear(bs,as,Fs1/2);

[H,w]=freqz(bz,az,256,Fs1*10000);%特性分析 plot(w,abs(H));

title('低通滤波器的频谱'); xlabel('f/hz');

(2)低通滤波器输出信号x1(t) x1(t)=filter(bz,az,x) 3、信号抽取

对x1(t)抽样,采样频率8000Hz(即fs1) 波形输出程序:

fs1=8000;%采样周期取8000Hz

t2=(0:Fs/fs1:Ns-1)/Fs;%采样信号横坐标 sample=zeros(1,length(t));

for k=1:length(t)

if mod(k,(Fs/fs1))==1 sample(k)=y(k); else

sample(k)=0; end end

sample1=zeros(1,ceil(length(t)/(Fs/fs1))); i=1;

for k=1:length(t)

if mod(k,(Fs/fs1))==1 sample1(i)=x1(t)(k);

i=i+1; end end

stem(t2,sample1)%除去相邻采样点间零点的采样信号 (1)M=2时抽取

fs1=8000;t2=(0:Fs/fs1:Ns-1)/Fs;

sample2=zeros(1,ceil(length(t)/(Fs/fs1))); for k=1:length(t2) if mod(k,3)==1

sample2(k)=sample(k); else

sample2(k)=0; end end

sample3=zeros(1,ceil(length(t)/(Fs/fs1)/3)); i=1;

for k=1:3:length(t2) sample3(i)=sample1(k); i=i+1; end

stem((1:3:length(t2))/8000,sample3);%除去相邻采样点间零点的采样信号 (2)M=4抽取

sample4=zeros(1,ceil(length(t)/(Fs/fs1))); for k=1:length(t2) if mod(k,5)==1

sample4(k)=sample(k); else

sample4(k)=0; end end

sample5=zeros(1,ceil(length(t)/(Fs/fs1)/5));

i=1;

for k=1:5:length(t2) sample5(i)=sample1(k); i=i+1; end

stem((1:length(t2)/5)/300,sample5);%除去相邻采样点间零点的采样信号 4、对抽取后得到的x2(t)信号插值,得到y(t)

(1)对M=2抽取信号进行插值(每间隔插入4个值),还原原始信号 t4=zeros(1,(length(t2)-1)*4+length(t2));%插值信号横坐标 for k=1:length(t4) if mod(k,5)==1

t4(k)=(1/fs1)*fix(k/5); end

if mod(k,5)==2

t4(k)=(1/fs1)*fix(k/5)+(1/fs1)/5; end

if mod(k,5)==3

t4(k)=(1/fs1)*fix(k/5)+(2/fs1)/5; end

if mod(k,5)==4

t4(k)=(1/fs1)*fix(k/5)+(3/fs1)/5; end

if mod(k,5)==0

t4(k)=(1/fs1)*(k/5-1)+(4/fs1)/5; end end

inter4=interp1(t2,sample2,t4,'cubic'); stem(t4,inter);%插值信号

(2)对M=4抽取信号进行插值(每间隔插入4个值),还原原始信号 t8=zeros(1,(length(t2)-1)*4+length(t2));%插值信号横坐标 for k=1:length(t8) if mod(k,5)==1

t8(k)=(1/fs1)*fix(k/5); end

if mod(k,5)==2

t8(k)=(1/fs1)*fix(k/5)+(1/fs1)/5; end

if mod(k,5)==3

t8(k)=(1/fs1)*fix(k/5)+(2/fs1)/5; end

if mod(k,5)==4

t8(k)=(1/fs1)*fix(k/5)+(3/fs1)/5; end

if mod(k,5)==0

t8(k)=(1/fs1)*(k/5-1)+(4/fs1)/5; end end

inter8=interp1(t2,sample4,t8,'cubic'); stem(t8,inter8);%插值信号

5、x(t),x1(t),x2(t),y(t)的均值、均方值、方差、自相关函数、频谱及功率谱密度。

(1)输入信号x(t)

频谱见第4页

均值: mean=0.0342 均方值: var=1.4971 方差: fangcha=1.4959 自相关函数:

x_xcorr=xcorr(x); t1=(-Ns+1:Ns-1)/Fs; plot(t1,x_xcorr);

xlabel('t'),ylabel('R'); title('输入信号相关函数');

功率谱密度:

P1=x_spectra.*conj(x_spectra)/Ns;%频谱函数的平方求时间平均 plot(f(1:300),abs(P1(1:300)));%功率谱密度

xlabel('f'),ylabel('S'); title('输入信号功率谱密度')

(2)低通滤波器输出信号x1(t) 均值: mean=0.0314 均方值: var=0.5416 方差: fangcha=0.5406 自相关函数:

x1_xcorr=xcorr(x1); plot(t1,x1_xcorr);

xlabel('t'),ylabel('R');

title('低通滤波器输出信号相关函数')

频谱:

x1_spectra=fft(x1);

f=Fs*n/Ns;plot(f(1:300),abs(x1_spectra(1:300))); xlabel('f'),ylabel('Y');

title('低通滤波器输出信号频谱')

功率谱密度:

P1=x1_spectra.*conj(x1_spectra)/Ns;%频谱函数的平方求时间平均 plot(f(1:300),abs(P1(1:300)));%功率谱密度 xlabel('f'),ylabel('S');

title('低通滤波器输出信号功率谱密度')

(3)抽取后得到的信号x2(t) 1)M=2时的x2(t)

均值: mean=0.0056 均方值: var=0.0342 方差: fangcha=0.0341 自相关函数:

sample_xcorr4=xcorr(sample2);

t3=(-Ns+1)*fs1/Fs:(Ns-1)*fs1/Fs;%相关函数图像横坐标 plot(t3,sample_xcorr4);%相关函数 xlabel('t'),ylabel('R');

title('M=2采样信号相关函数');

频谱:

sample_spectra4=fft(sample2); f=40000*n/Ns;

plot(f(1:800),abs(sample_spectra4(1:800))); title('M=2采样信号频谱')

功率谱密度;

P2=sample_spectra4.*conj(sample_spectra4)/Ns; plot(f(1:800),abs(P2(1:800))); title('M=2采样信号功率谱密度')

2)M=4时的x2(t)

均值: mean=-0.0077 均方值: var=0.0091 方差: fangcha=0.0099 自相关函数:

sample_xcorr8=xcorr(sample4);

t3=(-Ns+1)*fs1/Fs:(Ns-1)*fs1/Fs;%相关函数图像横坐标 plot(t3,sample_xcorr8);%相关函数 xlabel('t'),ylabel('R');

title('M=4采样信号相关函数');

频谱:

sample_spectra8=fft(sample4); f=40000*n/Ns;

plot(f(1:800),abs(sample_spectra8(1:800))); title('M=4采样信号频谱')

功率谱密度:

P2=sample_spectra8.*conj(sample_spectra8)/Ns; plot(f(1:800),abs(P2(1:800))); title('M=4采样信号功率谱密度')

(4)插值后得到的信号y(t)

1)将M=2抽取信号作为原始信号,用插值方法还原原始信号,得到的y(t) 均值: mean=-0.0026 均方值: var=0.0245 方差: fangcha=0.0244 自相关函数:

t5=(-Ns+1:(Fs/fs1)/5:Ns-1)/Fs; inter4_xcorr=xcorr(inter4); plot(t5,inter4_xcorr)

title('2抽取插值信号相关函数')

频谱:

f1=5*fs1*(0:length(t4)-1)/length(t4); inter4_spectra=fft(inter4);

plot(f1(1:300),abs(inter4_spectra(1:300))); xlabel('f'),ylabel('Y'); title('2抽取插值信号频谱');

功率谱密度:

P5=inter4_spectra.*conj(inter4_spectra)/length(t4); plot(f1(1:300),P5(1:300)); xlabel('f'),ylabel('S');

title('2抽取插值信号功率谱密度');

2)将M=4抽取信号作为原始信号,用插值方法还原原始信号,得到的y(t) 均值: mean=-0.0077 均方值: var=0.0736 方差: fangcha=0.0735 自相关函数:

t5=(-Ns+1:(Fs/fs1)/5:Ns-1)/Fs; inter8_xcorr=xcorr(inter8); plot(t5,inter8_xcorr)

title('4抽取插值信号相关函数')

频谱:

f1=5*fs1*(0:length(t8)-1)/length(t8); inter8_spectra=fft(inter8);

plot(f1(1:300),abs(inter8_spectra(1:300))); xlabel('f'),ylabel('Y'); title('4抽取插值信号频谱');

功率谱密度:

p6=inter8_spectra.*conj(inter8_spectra)/length(t8); plot(f1(1:300),p6(1:300)); xlabel('f'),ylabel('S');

title('4抽取插值信号功率谱密度');

四、试验结果分析

1、对采样前后、插值前插值后信号进行比较。观察信号频谱的变化及周期延拓性。

采样后信号的频谱是以采样角频率为周期延拓的。经滤波器对信号进行8000Hz采样,然后分别以M=2,M=4对信号进行抽取。其抽取后的信号频谱分别减小为抽取前信号频谱周期的1/3,1/5。对插4点后的信号频谱增为插值前信号频谱周期的5倍。 2、讨论x(t)自相关函数、功率谱密度与y(t)自相关函数、功率谱密度之间关系。 自相关函数,是频谱的傅里叶反变换,M=2,M=4抽取后幅度分别为抽取前的1/3、1/5。插值后幅度为插值前的5倍。

功率谱密度是频谱平方的时间平均,M=2,M=4抽取后幅度分别减小为抽取前的1/9,1/25.对插4点后的信号频谱增为插值前信号频谱的5倍,其幅度也增大为插值前信号的25倍。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top