我用matlab设计数字滤波器对一段振动加速度的信号进行处理,按道理说处理后峰值会降低,但有部分峰值呈现增加的状态,请教一下我哪儿出错了
clc,clear;
acc=xlsread('acc.xlsx');
Fs=200;
fpl=4;fph=12.5;fsl=0.1;fsh=100;
wpl=fpl*2*pi/Fs;wph=fph*2*pi/Fs;
wsl=fsl*2*pi/Fs;wsh=fsh*2*pi/Fs;%通带阻带截止频率
wp=[wpl wph];ws=[wsl wsh];
wap=2*Fs*tan(wp/2);
was=2*Fs*tan(ws/2);%模拟滤波器的技术指标
rp=1;rs=60;%衰减系数
[n,wac]=buttord(wap,was,rp,rs,'s');%阶次和截止频率
[b,a]=butter(n,wac,'s');
[B,A]=bilinear(b,a,Fs);%转换为数字滤波器
[h,w]=freqz(B,A);
plot(w*100/pi,abs(h));
ACC=filter(B,A,acc);