实验方法及数字信号分析处理
课程大作业
第一次作业:
题目:x=sin(2*pi*5*t)+sin(2*pi*50*t)+sin(2*pi*200*t)+0.1*rand(1,m);
①画原信号的曲线;
②从上述信号中滤出5Hz信号,再画曲线;(分别用卷积和递推低通滤波器)
③从上述信号中滤出50Hz信号,再画曲线;(分别用卷积和递推带通滤波器)
Matlab源代码:
dt=0.002; %dt<1/2*fmax=0.0025,满足采样定理
t=0:dt:1; %采样时间序列
m=length(t); %求取时间采样点数
x=sin(2*pi*5*t)+sin(2*pi*50*t)+sin(2*pi*200*t)+0.1*rand(1,m);
%原始信号
%figure
Subplot(321);plot(t,x); %画出原始信号图形
title('原始信号')
%卷积低通滤波器设计
F=10; %截止频率
N=50; %根据经验取N
for i=-N:N
f(1,N+1+i)=sin(2*pi*5*i*dt)/(pi*i);%根据设计公式求fi
end
f(1,N+1)=F*2*dt;
%求取f与x的卷积
M=size(f,2);NN=size(x,2); %求取矩阵列长
X=zeros(1,M+NN-1);A=rot90(