1. 在Matlab中键入fdatool运行Filter Design and Analysis
Tool。具体使用请参见Matlab Help中的Signal Processing
Toolbox->FDATool。
2.
在fdatool工具中应该注意的几个问题:(a)Fstop(阻带截止频率)不能大于或等于采样频率Fs/2,这是由于数字滤波器设计的方式决定的。(b)将设计好的滤波器导出,可以采用两种方式Export
the filter either as filter coefficients variables or as a dfilt or
mfilt filter object variable。(详细说明参见Matlab Help中的Signal Processing
Toolbox->FDATool->Exporting a Filter
Design。
导出:
File---Export弹出EXPORT对话框,选择“Export As”为“Objects”,“Varable
Names”可以更改,默认为Hd。
3. (a)如果导出的是dfilt or mfilt filter object variable,则可以用[b, a] =
tf(Hd)将dfilt filter object转换为转移函数形式
然后用d=filter(b,a,x);使用这个滤波器。其中:filter是默认函数,b、a是刚刚设计的传递函数参数,x是原始采集信号,d为滤波后的信号。
x=importdata('E:\matlab_work\xy\bb\O6.txt');
N=length(x); %取长度
fs=4000; %采样频率
t=(0:N-1)/fs;
输出Hd;
[b,a]=tf(Hd);%得到传递函数
d=filter(b,a,x);
subplot(311);
plot(t,x); title('原始信号');
xlabel('t');
ylabel('y');
grid on;
subplot(211);
plot(t,d); title('601信号');
xlabel('t');
ylabel('幅值');
grid on;