数字信号大作业

发布 2022-09-02 23:56:28 阅读 7837

题目1:

设采样频率为,信号,,噪声为幅度为10的白噪声(randn()指令产生),输入信号为。试用fft对信号,,作频谱分析(幅频特性、相频特性)fft阶次:n=256;如果对作fir低通线性相位滤波,滤波器通带范围,阶次33,阻带衰减50db,求滤波后输出波形及幅频特性。

程序**。close all;

clear all;

clc;n=256;

n=0:n-1;

fs=2;f1=0.2;

x1=10*sin(2*pi*(f1/fs)*n)+7*cos(2*pi*(3*f1/fs)*n);

s=10*randn(size(n));

x=x1+s;

x=fft(x,n);

figure(1);

subplot(3,2,1);stem(n,abs(x),'xlabel('k(w=2*pi*k/n)')ylabel('|x|')hold on

subplot(3,2,2);stem(n,angle(x),'axis([0,n,-pi,pi]);line([0,n],[0,0]);

xlabel('k(w=2*pi*k/n)')ylabel('arg[x]')hold on

x1=fft(x1,n);

subplot(3,2,3);stem(n,abs(x1),'xlabel('k(w=2*pi*k/n)')ylabel('|x1|')hold on

subplot(3,2,4);stem(n,angle(x1),'axis([0,n,-pi,pi]);line([0,n],[0,0]);

xlabel('k(w=2*pi*k/n)')ylabel('arg[x1]')hold on

s=fft(s,n);

subplot(3,2,5);stem(n,abs(s),'xlabel('k(w=2*pi*k/n)')ylabel('|s|')hold on

subplot(3,2,6);stem(n,angle(s),'axis([0,n,-pi,pi]);line([0,n],[0,0]);

xlabel('k(w=2*pi*k/n)')ylabel('arg[s]')hold on

figure(2);

n1=33;

wc=0.2*pi;

b=fir1(n1,wc/pi,hamming(n1+1));

freqz(b,1,n);

figure(3);

y=filter(b,1,x);%滤波。

y=fft(y,n);

subplot(2,1,1);stem(n,y,'.grid on;title('滤波后信号y');xlabel('时间/s');

subplot(2,1,2);stem(n,abs(y),'grid on;

title('滤波后信号y幅频特性');xlabel('k(w=2*pi*k/n)')ylabel('振幅|y|')

figure(4);

y1=filter(b,1,x1);

y1=fft(y1,n);

subplot(2,1,1);stem(n,y1,'.grid on;title('滤波后信号y1');xlabel('时间/s');

subplot(2,1,2);stem(n,abs(y1),'grid on;

title('滤波后信号y1幅频特性');xlabel('k(w=2*pi*k/n)')ylabel('振幅|y1|')

figure(5);

stem(n,x,'.

实验结果。图。

一、及频谱分析图。

图二按要求设计的fir低通线性相位滤波器。

图三滤波后的波形及幅频特性。

图四滤波后的波形及幅频特性。

题目2:设采样频率为,用window系统自带的录音机录1分钟**,并存于文件打开matlab软件,用指令w**read、w**write、sound、fft、fir1等指令完成下列功能:

1、读取文件到变量x中,并**该文件表示的**。用plot()观察时域波形。

2、从观察的时域波形取x的幅度较大的一段x1,试用fft对信号x1作频谱分析(幅频特性、相频特性)。可用fft或fftshift指令。

3、使用fir窗函数设计方法,对信号x进行线性相位滤波。

参数1:低通滤波通带范围:0~300hz,过渡带50hz,阻带衰减40db

参数2:低通滤波通带范围:0~400hz,过渡带60hz,阻带衰减50db

参数3:带通滤波通带范围:100~500hz,过渡带70hz,阻带衰减40db

参数4:带通滤波通带范围:150~500hz,过渡带80hz,阻带衰减50db

4、对滤波后信号进行**,并存于x2中。用plot观察时域波形。

5、试用fft对信号x2作频谱分析(幅频特性、相频特性)。可用fft或fftshift指令。

程序**。close all;

clear all;

clc;x,fs,bits]=w**read(''

sound(x,fs,bits);

l=length(x);n=2^(nextpow2(l));

t=0:l-1;

x=fft(x,n);

f=fs*(0:n-1)/n;

figure(1);

subplot(2,1,1);plot(t,x);title('原始信号波形');

subplot(2,1,2);plot(f,abs(x));title('原始信号幅频特性');

figure(2);

x1=x(4096:6143,1);

l=length(x1);n=2^(nextpow2(l));

t=0:l-1;

x1=fft(x1,n);

f=fs*(0:n-1)/n;

subplot(3,1,1);plot(t,x1);title('x1波形');

subplot(3,1,2);plot(f,abs(x1));xlabel('k(w=2*pi*k/l1)')ylabel('|x1|')title('x1幅频特性');

subplot(3,1,3);plot(f,angle(x1));axis([0,l,-pi,pi]);line([0,l],[0,0]);

xlabel('k(w=2*pi*k/l1)')ylabel('arg[x1]')title('x1相频特性');

figure(3);

fc1=300;

gdd1=50;

wc1=2*pi*fc1/fs;

w1=2*pi*gdd1/fs;

n1=ceil(6.2*pi/w1);

if rem(n1,2)==0

n1=n1+1;

endb1=fir1(n1,wc1/pi,hanning(n1+1));

freqz(b1,1,fs);

figure(4);

x21=filter(b1,1,x1);%滤波。

l21=length(x21);n21=2^(nextpow2(l21));

t21=0:l21-1;

x21=fft(x21,n21);

f21=fs*(0:n21-1)/n21;

subplot(3,1,1);plot(t21,x21);title('滤波后信号x21');xlabel('时间/s');

subplot(3,1,2);plot(f21,abs(x21));axis([0,400,0,20]);

xlabel('k(w=2*pi*k/l21)')ylabel('振幅|x21|')title('x21幅频特性');

subplot(3,1,3);plot(f21,angle(x21));axis([0,400,-pi,pi]);

xlabel('k(w=2*pi*k/l21)')ylabel('arg[x21]')title('x21相频特性');

w**write(x21,fs,bits,''

sound(x21,fs,bits);

figure(5);

fc2=400;

gdd2=60;

wc2=2*pi*fc2/fs;

w2=2*pi*gdd2/fs;

n2=ceil(6.6*pi/w2);

if rem(n2,2)==0

n2=n2+1;

endb2=fir1(n2,wc2/pi,hamming(n2+1));

freqz(b2,1,fs);

figure(6);

x22=filter(b2,1,x1);%滤波。

l22=length(x22);n22=2^(nextpow2(l22));

t22=0:l22-1;

x22=fft(x22,n22);

f22=fs*(0:n22-1)/n22;

subplot(3,1,1);plot(t22,x22);title('滤波后信号x22');xlabel('时间/s');

subplot(3,1,2);plot(f22,abs(x22));axis([0,500,0,20]);

xlabel('k(w=2*pi*k/l22)')ylabel('振幅|x22|')title('x22幅频特性');

subplot(3,1,3);plot(f22,angle(x22));axis([0,500,-pi,pi]);

xlabel('k(w=2*pi*k/l22)')ylabel('arg[x22]')title('x22相频特性');

w**write(x22,fs,bits,''

sound(x22,fs,bits);

figure(7);

fc3=[100 500];

gdd3=70;

wc3=2*pi*fc3/fs;

w3=2*pi*gdd3/fs;

n3=ceil(6.2*pi/w3);

if rem(n3,2)==0

n3=n3+1;

endb3=fir1(n3,wc3/pi,hanning(n3+1));

freqz(b3,1,fs);

figure(8);

x23=filter(b3,1,x1);%滤波。

l23=length(x23);n23=2^(nextpow2(l23));

t23=0:l23-1;

数字信号处理大作业

数据说明。本实验共分为4组子实验,分别将四组数据命名为 2.1 2.4,刺激频率7hz 30hz,采样率为1000hz。刺激序列 arbrcrdrerfr 8s4s8s4s8s4s8s4s8s4s8s30s 每个子实验按照上述序列闪烁6次,即每个频率刺激8s 6 48s。刺激频率 刺激序列。a hz...

数字信号处理大作业

题目一 利用matlab设计模拟带通巴特沃斯滤波器,要求通带下 上截止频率分别为fhpl 4khz,fhpu 6khz,阻带下 上截止频率分别为fhsl 2khz,fhsu 9khz,通带最大衰减rp 1db,阻带最小衰减rs 20db。问题分析 1 该题目中模拟带通滤波器指标 通带下截止频率 wp...

数字信号处理大作业

设计步骤 这次选择设计的是巴特沃斯数字高通滤波器,对输入信号xn cos 8 pi t cos 20 pi t 最高频率f 20 pi 2 pi 10hz,所以采样频率fs应大于等于20hz,在这里我选择的采样频率fs 80hz。设计思想 从归一化模拟低通原型出发,先在模拟域内经频率变换成为所需类型...