:2005-01-16;:2005-03-28:(1964-),,,.215200510JOURNALOFSHANGQIUTEACHERSCOLLEGEVol.21No.5October,2005IIR刘姝延1,马秋明1,吴志2,丁红1(1;2,264025):应用双线性变换法,设计了一个Butterworth低通IIR数字滤波器,给出MATLAB程序,并用心电图信号实例验证了所设计滤波器的有效性.:双线性变换法;IIRDF;心电图:TP312:A:1672-3600(2005)05-0026-04BilineartransformationmethodofIIRfilterdesignLIUShuyan1,MAQiuming1,WUZhi2,DINGHong1(1.SchoolofPhysicsandElectronicEngineering,2.DepartmentofBasicBuilding;YantaiTeachersUniversity,Yantai264025,China)Abstract:Utilizingmethodsofbilineartransformation,ButterworthlowpassIIRdigitalfilterisdesigned,MATLABprogramisgiven.TheexampleofECGsignalillustratesvalidityoftheFilter.Keywords:bilineartransformationmethod;IIRDF;ECG,,,.,,.,,MATLAB.MATLABMathworks1982,,.,(Butterworth)(IIR:InfiniteImpulseResponse)(DF),,.1ButterworthIIRDF11Butterworth()Butterworth,,:A2()=|Ha(j)|2=11+(jjc)2NN,,c3db.N,.12(AF)(DF).H(z)H(s)(),H(s):H(s)=Nk=1Aks+k,.y(t)+y(t)=Ax(t)(1),Ha(s)=Y(s)X(s)=As+(2)(n-1)T!nT(1):∀nT(n-1)Ty(t)dt+∀nT(n-1)Ty(t)dt=A∀nT(n-1)Tx(t)dt,:y(n)-y(n-1)+T2[y(n)+y(n-1)]=AT2[x(n)+x(n-1)]z,:H(z)=Y(z)X(z)=A2T1-z-11+z-1+(3)Ha(s)H(z)(2)(3),H(z)=H(s)2T1-z-11+z-1(4)s=2T1-z-11+z-1,z=2T+s2T-sSZ.,,,=2Ttg(2)=2arctgT2(5),#∃,,DFAF.221,,.x(n),.x(n)={-4,-2,0,-4,-6,-4,-2,-4,-6,-6,-4,-4,-6,-6,-2,6,12,8,0,-16,-38,-60,-84,-90,-66,-32,-4,-2,-4,8,12,12,10,6,6,,6,4,0,0,0,0,0,-2,-4,0,0,0,-2,-2,0,0,-2,-2,-2,-2,0}.2.2MATLABx(n),.221MATLAB%ex.mwp=0.2*pi;ws=0.3*pi;Rp=1;As=15;T=1;Fs=1/T;OmegaP=(2/T)*tan(wp/2);%OmegaS=(2/T)*tan(ws/2);[cs,ds]=adfbutt(OmegaP,OmegaS,Rp,As);%1,Butterwoth[b,a]=bilinear(cs,ds,T);%[b0,B,A]=sdir2cas(b,a);%2,[db,mag,pha,grd,w]=freqzm(b,a)%3,x=[-4,-2,0,-4,-6,-4,-2,-4,-6,-6,-4,-4,-6,-6,-2,6,12,8,0,-16,-38,%,-60,-84,-90,-66,-32,-4,-2,-4,8,12,12,10,6,6,,6,4,0,0,0,0,%,0,-2,-4,0,0,0,-2,-2,0,0,-2,-2,-2,-2,0];%275,:IIRn=0:56;figure(1)subplot(221);plot(w/pi,db);title(&&);xlabel(&-pi&);ylabel(&&);axis([0,0.5,-50,10]);subplot(222);stem(x,&.&);title(&x(n)&);xlabel(&n&);ylabel(&x(n)&);axis([0,56,-100,50]);y=filter(b,a,x);%subplot(224);stem(y,&.&);title(&&);xlabel(&n&);ylabel(&y(n)&);axis([0,56,-100,50]);figure(2);N=1024;n=0:N/2-1;Xk=fft(x,N);AXk=abs(Xk(1:N/2));f=(0:N/2-1)*Fs/N;f=f/Fs;subplot(211);plot(f,AXk);title(&x(n)&);xlabel(&f&);ylabel(&|X(k)|&);axis([0,0.5,0,400]);Yk=fft(y,N);AYk=abs(Yk(1:N/2));subplot(212);plot(f,AYk);title(&y(n)&);xlabel(&f&);ylabel(&|Y(k)|&);axis([0,0.5,0,400]);.222(1)wp=0.2*pi;ws=0.3*pi;Rp=1;As=1512.***ButterwothFilterOrder=612(2)wp=0.2*pi;ws=0.3*pi;Rp=1;As=5,34.:ButterwothFilterOrder=3,(1)14,63Butterworth,;(2)23,y(n)|Y(K)|x(n)|X(K)|,;(3)23,63|Y(K)|,.,282005,,.343AF,,DF.AFDF,.,.:[1],.()[M].:,2001.301.[2],.MATLAB∋∋∋[M].:,1998.205-208.295,:IIR