您的当前位置:首页正文

高通滤波器系统函数的测试

2024-06-25 来源:客趣旅游网
 -

西安电子科技大学

课程实验报告

实验名称

学院 班

成 绩 姓名 学号 同作者 实验日期 年 月 日

指导教师评语: 指导教师: 年 月 日 实验报告内容基本要求及参考格式 一、实验目的 二、实验所用仪器(或实验环境) 三、实验基本原理及步骤(或方案设计及理论计算) 四、实验数据记录(或仿真及软件设计) 五、实验结果分析及回答问题(或测试环境及测试结果) 六、写出自己实验心得体会 1

-

2、任务与要求 任务一

①利用matlab模拟高斯白噪声,观察高斯白噪声的时域和频域波形 %产生高斯白噪声 F=10000; T=10; n=round(T*F); t=linspace(0,T,n); noise=wgn(1,n,0); figure; plot(t,noise);

title('高斯白噪声时域'); xlabel('t/s'); ylabel('幅度');

fft_noise=fftshift(fft(noise));%高斯白噪声双边谱 f=linspace(-F/2,F/2,n); figure;

plot(f,abs(fft_noise)); title('高斯白噪声频域'); xlabel('f/Hz'); ylabel('幅度');

2

-

波形如下:

②利用matlab模拟高通滤波器,并观察其幅频特性曲线 %建立高通滤波器

B=2000;%高通滤波器截止频率 fs=10000;%=F

b=fir1(150,B/(fs/2),'high');%高通滤波器 figure; freqz(b);

3

-

幅频特性如下:

③让信号通过高通滤波器,观察输出x(t)的时域和频域波形x(t) x=filter(b,1,noise);%高斯白噪声通过高通滤波器 figure; plot(t,x);

title('滤波后信号时域'); xlabel('t/s'); ylabel('幅度'); fft_x=fftshift(fft(x));

p=linspace(-fs/2,fs/2,n);%双边带 figure;

plot(p,abs(fft_x));%abs 绝对值 title('滤波后信号频谱'); xlabel('f/Hz'); ylabel('幅度');

4

-

波形如下:

④将原始高斯白噪声与x(t)进行互关运算,结果为a(t),观察a(t)的时域和频域波形; noise和x(t)进行互关运算 [a,b]=xcorr(noise,x);%进行互相关运算 figure;

tau=(-length(noise)+1:length(noise)-1)/10000;

5

-

plot(tau,a); fft_a=fft(a); figure; cno=abs(fft_a);

f1=(0:length(fft_a)-1)*10000/length(fft_a); plot(f1(1:length(f1)/2),cno(1:length(f1)/2),'-b'); title('a(t)的频谱'); xlabel('f/Hz'); ylabel('幅度'); 波形如下:

6

-

⑤利用matlab模拟低通滤波器,并观察低通滤波器的幅频特性; 建立低通滤波器 Fs=10000;%Fs=fs=F T=1/Fs;

wp=2000/Fs; %边界频率归一化 ws=2800/Fs; Rp=1; As=40;

[N,wc]=buttord(wp,ws,Rp,As);

[B,A]=butter(N,wc); %设计数字滤波器 [H,w]=freqz(B,A); figure;

plot(w/pi,abs(H)); title('低通数字滤波器'); xlabel('\\omega/\\pi'); 幅频特性曲线如下:

7

-

⑥将a(t)通过低通滤波器,输出为y(t),观察y(t)的时域和频域波形;

%通过低通滤波器 h=ifft(H); y=conv(h,a);

t2=(0:length(y)-1)*10000/length(y); figure; plot(t2,y,'-r'); title('y(t)'); figure; X=fft(y); cmo=abs(X);

f2=(0:length(X)-1)*10000/length(X); plot(f2(1:length(f2)/2),cmo(1:length(f2)/2),'-b'); title('y(t)的频谱); xlabel('f/Hz');

8

-

ylabel('幅度);

t3=(-length(y)+1:length(y)-1)/10000; E=mean(noise); S=var(noise); E2=S+E*E; 波形如下:

9

-

任务二

10

-

11

-

12

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