%£¨1£©ÒÑÖª²î·Ö·½³ÌÇóϵͳÏìÓ¦£¨ÏÔʾ50¸öÊý¾Ý£© clear;clc;close all;
A=[1,-0.9]; B=[0.05,0.05]; %ϵͳ²î·Ö·½³ÌϵÊýÏòÁ¿AºÍB n=0:49,% ÏÔʾ50¸öÊý¾Ý
x1n=[1,1,1,1,1,1,1,1,zeros(1,42)]; %²úÉúÐźÅx1(n)=R8(n) x2n=ones(1,50); %²úÉúÐźÅx2(n)=u(n)
hn=impz(B,A,50); %Çóϵͳµ¥Î»Âö³åÏìÓ¦h(n)
subplot(3,1,1); stem(n,hn,'.'); grid; %»æÖƵã״ͼ²¢¼ÓÍø¸ñ xlabel('n');ylabel('hn');title('ϵͳµÄµ¥Î»Âö³åÏìÓ¦'); y1n=filter(B,A,x1n); %Çóϵͳ¶Ôx1(n)µÄÏìÓ¦y1(n) subplot(3,1,2);
stem(n, y1n,'.'); grid; %»æÖƵã״ͼ²¢¼ÓÍø¸ñ
xlabel('n');ylabel(' y1n ');title('ϵͳ¶ÔR8(n)µÄÏìÓ¦'); y2n=filter(B,A,x2n); %Çóϵͳ¶Ôx2(n)µÄÏìÓ¦y2(n) subplot(3,1,3);
stem(n, y2n,'.'); grid; %»æÖƵã״ͼ²¢¼ÓÍø¸ñ
xlabel('n');ylabel(' y2n ');title('ϵͳ¶Ôu(n)µÄÏìÓ¦'); %£¨2£©ÒÑÖªµ¥Î»Âö³åÏìÓ¦ÇóϵͳÏìÓ¦£¨ÏÔʾ20¸öµã£© clear;clc;close all; n=0:19; %²úÉúÐźźá×ø±ê
xn=[ones(1,8), zeros(1,12)]; %²úÉúÐźÅx(n)=R8(n) h1n=[ones(1,10), zeros(1,10)]; %²úÉúÐźÅh1(n)=R10(n) y1n=conv(h1n,xn); %¾í»ý¼ÆËãÊä³öÐźÅy1(n) h2n=[1, 2.5, 2.5, 1, zeros(1,16)]; y2n=conv(h2n,xn);
subplot(5,1,1); stem(n,xn,'.'); grid; %»æÖƵã״ͼ²¢¼ÓÍø¸ñ ylabel('xn');title('ϵͳµÄÊäÈëÐźÅx(n)');
subplot(5,1,2); stem(n,h1n,'.'); grid; %»æÖƵã״ͼ²¢¼ÓÍø¸ñ ylabel('h1n');title('ϵͳµ¥Î»Âö³åÏìÓ¦h1(n)');
subplot(5,1,3); stem(n,y1n(1:20),'.'); grid;%È¡y1nǰ20¸öÊý¾Ý»æÍ¼ ylabel('y1n');title('ϵͳµÄÊä³öÐźÅy1(n)');
subplot(5,1,4); stem(n,h2n,'.'); grid; %»æÖƵã״ͼ²¢¼ÓÍø¸ñ ylabel('h2n');title('ϵͳµ¥Î»Âö³åÏìÓ¦h2(n)');
subplot(5,1,5); stem(n,y2n(1:20),'.'); grid;%È¡y2nǰ20¸öÊý¾Ý»æÍ¼ ylabel('y2n');title('ϵͳµÄÊä³öÐźÅy2(n)'); %£¨3£©ÏµÍ³µÄÎȶ¨ÐÔÅжϣ¨ÏÔʾ300¸öµã£© clear;clc;close all;
A=[1,-1.8237,0.9801],B=[1/100.49,0,-1/100.49], %ϵͳ²î·Ö·½³ÌϵÊýÏòÁ¿AºÍB
figure(1);freqz(B,A);%¹Û²ìϵͳµÄгÕñƵÂÊ n =0:299; %²úÉúÐźźá×ø±ê
xun =ones(1,300); %²úÉú½×Ô¾ÐźÅ
y1n=filter(B,A,xun); %гÕñÆ÷¶Ô½×Ô¾µÄÏìÓ¦y1(n) figure(2); subplot(2,1,1);
stem(n,y1n,'.'); grid; %È¡y1(n)ǰ300¸öÊý¾Ý»æÍ¼ ylabel('y1(n)');title('гÕñÆ÷¶Ô½×Ô¾ÐźŵÄÏìÓ¦y1(n)');
xsin=sin(0.014*n)+sin(0.4*n); %²úÉúÕýÏÒµþ¼ÓÐźÅ
y2n=filter(B,A,xsin); %гÕñÆ÷¶ÔÕýÏÒÐźŵÄÏìÓ¦y2(n) figure(2); subplot(2,1,2);
stem(n,y2n,'.'); grid; %È¡y2(n)ǰ300¸öÊý¾Ý»æÍ¼
ylabel('y2(n)');title('гÕñÆ÷¶ÔÕýÏÒÐźŵÄÏìÓ¦y2(n)');
5
ʵÑé¶þ£ºÓÃFFT¶ÔÐźÅ×÷ƵÆ×·ÖÎö
1. ʵÑéÄ¿µÄ
£¨1£©Ñ§»áÓÃFFT¶ÔʱÓòÀëÉ¢ÐźŽøÐÐÆ×·ÖÎö¡£
£¨2£©Àí½âÐòÁеĸµÀïÒ¶±ä»»ÓëÐòÁеÄÀëÉ¢¸µÀïÒ¶±ä»»Ö®¼ä¹ØÏµ¡£ £¨3£©Á˽âÀëÉ¢¸µÀïÒ¶±ä»»µÄʱÓòÑ»·ÒÆÎ»¶¨Àí¡£ 2. ʵÑéÔÀí
ÓÃFFT¶ÔÐźÅ×÷ƵÆ×·ÖÎöÊÇѧϰÊý×ÖÐźŴ¦ÀíµÄÖØÒªÄÚÈÝ¡£ÐèÒª½øÐÐÆµÆ×·ÖÎöµÄÐźÅÖ÷ÒªÓÐʱÓòÁ¬ÐøÐźźÍʱÓòÀëÉ¢Ðźš£¶ÔÁ¬ÐøÐźŽøÐÐÆµÆ×·ÖÎöʱ£¬ÏÈÒª¶ÔÐźŽøÐвÉÑù£¬ÔÚÂú×ã²ÉÑù¶¨ÀíÌõ¼þÏ£¬²ÉÑùÐòÁеÄÊý×ÖÆµÆ×ÄÜ׼ȷ·´Ó³Á¬ÐøÐźŵÄÄ£ÄâÆµÆ×£¬·ñÔò»á·¢ÉúƵÆ×»ìµþÏÖÏó¡£ÓÉÓÚDFTÒªÇóÐźÅʱÓòÀëÉ¢ÇÒÊýÁ¿ÓÐÏÞ£¬Èç¹ûÐòÁкܳ¤»ò²ÉÑùµãÊýÌ«¶à£¬¼ÆËã»ú´æ´¢ºÍDFT¼ÆËã¶¼ºÜÀ§ÄÑ£¬Í¨³£²ÉÓüӴ°·½·¨½ØÈ¡²¿·ÖÊý¾Ý½øÐÐDFTÔËËã¡£DFTÖ»ÄÜÃèÊöÆäÓÐÏÞ¸öƵµãµÄƵÂÊÊý¾Ý£¬¹Ê´æÔÚÕ¤À¸Ð§Ó¦¡£×ÜÖ®£¬ÓÃDFT·ÖÎöʵ¼ÊÐÅºÅµÄÆµÆ×£¬Æä½á¹û±ØÈ»ÊǽüËÆµÄ¡£
±¾ÊµÑéÖ»¶ÔÀëɢʱ¼äÐźŽøÐÐÆµÆ×·ÖÎö£¬ÖصãÕÆÎÕÓÃFFT¶ÔʱÓòÀëÉ¢ÐźŽøÐÐÆ×·ÖÎöµÄ·ÖÎö·½·¨£¬Àí½âDFTÓëÐòÁеĸµÀïÒ¶±ä»»Ö®¼äµÄ¹ØÏµ£¬ÑéÖ¤ÀëÉ¢¸µÀïÒ¶±ä»»µÄʱÓòÑ»·ÒÆÎ»¶¨Àí¡£
¹ØÓÚÒ»°ãÐÅºÅµÄÆµÆ×·ÖÎö¹ý³Ì¼°Îó²î·ÖÎö£¬¿É²Î¼û£ºÕÅµÇÆæ,Ñî»ÛÒø.ÐÅºÅµÄÆµÆ×·ÖÎö¼°MATLABʵÏÖ[J].ºþÄÏÀí¹¤Ñ§ÔºÑ§±¨(×ÔÈ»¿ÆÑ§°æ),2010,(03)¡£¹ØÓÚÖÜÆÚÐÅºÅµÄÆµÆ×ÊÇÀëÉ¢Æ×£¬Ö»ÓÐÓÃÕûÊý±¶ÖÜÆÚµÄ³¤¶È×÷FFT£¬µÃµ½µÄÀëÉ¢Æ×²ÅÄÜ´ú±íÖÜÆÚÐÅºÅµÄÆµÆ×¡£Èç¹û²»ÖªµÀÐźÅÖÜÆÚ£¬¿ÉÒÔ¾¡Á¿Ñ¡ÔñÐźŵĹ۲ìʱ¼ä³¤Ò»Ð©¡£¹ØÓÚÄ£ÄâÖÜÆÚÐźţ¬ÏȲÉÑù³ÉÖÜÆÚÐòÁУ¬ÔÙ°´ÖÜÆÚÐòÁнøÐÐÆµÆ×·ÖÎö¡£ 3£®ÊµÑéÄÚÈݼ°²½Öè
£¨1£©²»Í¬µãÊýµÄFFTƵÆ×·ÖÎö£¨²Î¼û½Ì²ÄP76£© ÉèʱÓòÀëÉ¢ÐźÅx1(n)?R4(n)£¬Ñ¡ÔñFFTµÄ±ä»»Çø¼äNΪ8ºÍ16 Á½ÖÖÇé¿ö½øÐÐÆµÆ×·ÖÎö¡£·Ö±ð´òÓ¡Æä·ùÆµÌØÐÔÇúÏß¡£²¢¶Ô½á¹û½øÐжԱȡ¢·ÖÎöºÍÌÖÂÛ¡£ £¨2£©Ñ»·ÒÆÎ»ÐòÁÐµÄÆµÆ×·ÖÎö£¨²Î¼û½Ì²ÄP80£©
ÉèʱÓòÀëÉ¢ÐźÅx2(n)=[1,2,3,4,4,3,2,1]£»x3(n)=[4,3,2,1,1,2,3,4]¡£Ñ¡ÔñFFTµÄ±ä»»Çø¼äNΪ8ºÍ16 Á½ÖÖÇé¿ö·Ö±ð¶ÔÒÔÉÏÐòÁнøÐÐÆµÆ×·ÖÎö¡£·Ö±ð´òÓ¡Æä·ùÆµÌØÐÔÇúÏß¡£²¢¶Ô½á¹û½øÐжԱȡ¢·ÖÎöºÍÌÖÂÛ¡£ 4£®Ë¼¿¼Ìâ
£¨1£©ÓÃFFT¶ÔÁ¬ÐøÐźŽøÐÐÆµÆ×·ÖÎöÖУ¬¼òÊöÁ¬ÐøÐźŵÄÀëÉ¢ÔÔòºÍ¹ý³Ì¡££¨²Î¼û½Ì²ÄP98£© £¨2£©µ±N=8ʱ£¬x2(n)ºÍx3(n)µÄ·ùÆµÌØÐÔ»áÏàͬÂð£¿ÎªÊ²Ã´£¿N=16 ÄØ£¿ 5£®ÊµÑ鱨¸æÒªÇó
£¨1£©½áºÏʵÑéÄÚÈÝ´òÓ¡³ÌÐòÇåµ¥ºÍÐźŲ¨ÐΡ£ £¨2£©¶Ô¸÷ʵÑé½á¹û½øÐмòµ¥·ÖÎöºÍ½âÊÍ¡£ £¨3£©¼òÒª»Ø´ð˼¿¼Ìâ¡£
6£®¸½¼ÓÌâ
½«R4(n)µÄ¸µÀïÒ¶±ä»»·ùƵº¯Êý|X(ej?)|ºÍR4(n)µÄ8µã¼°16µãÀëÉ¢¸µÀïÒ¶±ä»»·ùƵº¯Êý»æÔÚÒ»
¸öͼÉÏ£¬¶Ô±È·ÖÎöÀí½âͼÐΣ¬²¢½âÊÍÀëÉ¢¸µÀïÒ¶±ä»»µÄÎïÀíÒâÒå¡£
6
%£¨1£©²»Í¬µãÊýµÄFFTƵÆ×·ÖÎö£¨²Î¼û½Ì²ÄP76£© clear;clc;close all;format compact x1n=ones(1,4), %²úÉúÐòÁÐ
X1k8=fft(x1n,8); X1k16=fft(x1n,16); %¼ÆËãx1nµÄ8µãºÍ16µãDFT subplot(2,1,1);k8=[0:7];
stem(k8,abs(X1k8),'.') %»æÖÆx1(n)µÄ8µãDFT·ùÆµÌØÐÔͼ xlabel('2¦Ð/8');ylabel('·ù¶È'); grid; title('x1(n)µÄ8µã·ùÆµÌØÐÔ'); axis([0,8,0,1.2*max(abs(X1k8))]); subplot(2,1,2);k16=[0:15];
stem(k16,abs(X1k16),'.') %»æÖÆx1(n)µÄ16µãDFT·ùÆµÌØÐÔͼ xlabel('2¦Ð/16');ylabel('·ù¶È'); grid; title('x1(n)µÄ16µã·ùÆµÌØÐÔ');
axis([0,16,0,1.2*max(abs(X1k16))]);
%£¨2£©Ñ»·ÒÆÎ»ÐòÁÐµÄÆµÆ×·ÖÎö£¨²Î¼û½Ì²ÄP80£© clear;clc;close all;format compact
x2n=[1,2,3,4,4,3,2,1], x3n=[4,3,2,1,1,2,3,4],%²úÉúÐòÁÐ
X2k8=fft(x2n,8); X2k16=fft(x2n,16); %¼ÆËãx2nµÄ8µãºÍ16µãDFT X3k8=fft(x3n,8); X3k16=fft(x3n,16); %¼ÆËãx3nµÄ8µãºÍ16µãDFT subplot(2,2,1);k8=[0:7];
stem(k8,abs(X2k8),'.') %»æÖÆx2(n)µÄ8µãDFT·ùÆµÌØÐÔͼ xlabel('2¦Ð/8');ylabel('·ù¶È'); grid; title('(a) x2(n)µÄ8µã·ùÆµÌØÐÔ'); axis([0,8,0,1.2*max(abs(X2k8))]); subplot(2,2,2);k16=[0:15];
stem(k16,abs(X2k16),'.') %»æÖÆx2(n)µÄ16µãDFT·ùÆµÌØÐÔͼ xlabel('2¦Ð/16');ylabel('·ù¶È'); grid; title('(b) x2(n)µÄ16µã·ùÆµÌØÐÔ'); axis([0,16,0,1.2*max(abs(X2k16))]); subplot(2,2,3);k8=[0:7];
stem(k8,abs(X3k8),'.') %»æÖÆx3(n)µÄ8µãDFT·ùÆµÌØÐÔͼ xlabel('2¦Ð/8');ylabel('·ù¶È'); grid; title('(c) x3(n)µÄ8µã·ùÆµÌØÐÔ'); axis([0,8,0,1.2*max(abs(X3k8))]); subplot(2,2,4);k16=[0:15]; stem(k16,abs(X3k16),'.')
%»æÖÆx3(n)µÄ16µãDFT·ùÆµÌØÐÔͼ
xlabel('2¦Ð/16');ylabel('·ù¶È'); grid; title('(d) x3(n)µÄ16µã·ùÆµÌØÐÔ'); axis([0,16,0,1.2*max(abs(X3k16))]);
7
ʵÑéÈý£ºIIRÊý×ÖÂ˲¨Æ÷Éè¼Æ¼°Èí¼þʵÏÖ
1£®ÊµÑéÄ¿µÄ
£¨1£©ÊìϤÓÃË«ÏßÐԱ任·¨Éè¼ÆIIRÊý×ÖÂ˲¨Æ÷µÄÔÀíÓë·½·¨¡£ £¨2£©Ñ§»á¸ù¾ÝÂ˲¨ÐèÇóÈ·¶¨Â˲¨Æ÷Ö¸±ê²ÎÊý¡£
£¨3£©Ñ§»áµ÷ÓÃÂ˲¨Æ÷Éè¼Æ·ÖÎö¹¤¾ßfdatoolÉè¼Æ¸÷ÖÖIIRÊý×ÖÂ˲¨Æ÷¡£ £¨4£©ÕÆÎÕIIRÊý×ÖÂ˲¨Æ÷µÄMATLABʵÏÖ·½·¨¡£
£¨5£©Í¨¹ý¹Û²ìÂ˲¨Æ÷ÊäÈëÊä³öÐźŵIJ¨ÐΣ¬½¨Á¢Êý×ÖÂ˲¨µÄ¸ÅÄî¡£ 2£®ÊµÑéÔÀí
Éè¼ÆIIRÊý×ÖÂ˲¨Æ÷Ò»°ã²ÉÓüä½Ó·¨£¬¼´ÏÈÉè¼ÆÒ»¸öÄ£ÄâÂ˲¨Æ÷ÔÐÍ£¬ÔÙÀûÓÃÂö³åÏìÓ¦²»±ä·¨»òË«ÏßÐԱ任·¨±ä»»³ÉÊý×ÖÂ˲¨Æ÷£¬ÆäÖУ¬Ó¦ÓÃ×î¹ã·ºµÄÊÇË«ÏßÐԱ任·¨¡£±¾ÊµÑéÒªÇóÄܸù¾ÝÂ˲¨ÐèÇóÈ·¶¨Â˲¨Æ÷Ö¸±ê²ÎÊý£¬Ñ§»á°´Éè¼ÆÔÀí±à³ÌÉè¼ÆºÍµ÷ÓÃÂ˲¨Æ÷Éè¼Æ·ÖÎö¹¤¾ßfdatoolÉè¼Æ¸÷ÐÍIIRÊý×ÖÂ˲¨Æ÷¡£±¾ÊµÑéÈí¼þʵÏÖÊǵ÷ÓÃMATLABÐźŴ¦Àí¹¤¾ßÏ亯Êýfilterº¯Êý¶Ô¸ø¶¨ÊäÈëÐźÅx(n)½øÐÐÂ˲¨£¬µÃµ½Â˲¨ºóµÄÊä³öÐźÅy(n£©¡£ 3. ʵÑéÄÚÈݼ°²½Öè
(1) IIRÊý×ÖÂ˲¨Æ÷Éè¼Æ ¸ù¾ÝË«ÏßÐԱ任·¨Éè¼ÆIIRÊý×ÖÂ˲¨Æ÷µÄÔÀíºÍ²½Ö裬Éè¼ÆÒ»¸öbutterworthÊý×ÖµÍͨÂ˲¨Æ÷£¬ÒªÇóͨ´øÁÙ½çÆµÂÊfp=3400Hz,×è´øÁÙ½çÆµÂÊfs=5000Hz£¬Í¨´øÄÚµÄ×î´óË¥¼õAp=2dB£¬×è´øÄÚµÄ×îС˥¼õAs=20db,²ÉÑùƵÂÊFs=22050Hz¡£ £¨2) IIRÊý×ÖÂ˲¨Æ÷Èí¼þʵÏÖ ÀûÓõڣ¨1£©²½Éè¼ÆµÄÊý×ÖÂ˲¨Æ÷£¬µ÷ÓÃfilterº¯Êý¶ÔÐźŽøÐÐÂ˲¨£¬¹Û²ìÂ˲¨Ç°ºóµÄÐźŲ¨Ðα仯£¬½¨Á¢Êý×ÖÂ˲¨µÄ¸ÅÄî¡£ 4£®Ë¼¿¼Ìâ
£¨1£©¼òÊöË«ÏßÐԱ任·¨Éè¼ÆIIRÊý×ÖÂ˲¨Æ÷µÄÉè¼Æ²½Öè¡£ £¨2£©ÎªÁ˹۲ìÊý×ÖÂ˲¨µÄЧ¹û£¬Ó¦ÔõÑùÉè¼ÆÂ˲¨Ç°µÄÐźţ¿ 5£®ÊµÑ鱨¸æÒªÇó
£¨1£©½áºÏʵÑéÄÚÈÝ´òÓ¡³ÌÐòÇåµ¥ºÍÐźŲ¨ÐΡ£ £¨2£©¶ÔʵÑé½á¹û½øÐмòµ¥·ÖÎöºÍ½âÊÍ¡£ £¨3£©¼òÒª»Ø´ð˼¿¼Ìâ¡£ 6£®¸½¼ÓÌâ
½«?c·Ö±ðÈ¡?cp¡¢?cs¡¢(?cp??cs)/2ʱÈýÖÖÇé¿öϵÄIIRÊý×ÖÂ˲¨Æ÷·ùƵº¯Êý»æÔÚÒ»¸öͼÉÏ£¬¶Ô±È·ÖÎöÀí½âͼÐΣ¬²¢½âÊÍ?cµÄ²»Í¬È¡Öµ¶Ô·ùƵº¯ÊýµÄÓ°Ïì¡£
¸½£ºIIRÊý×ÖÂ˲¨Æ÷µÄ¹¤¾ßÉè¼Æ·¨
¹¤¾ßÉè¼Æ·¨ÊÇÀûÓÃMATLABÌṩµÄÂ˲¨Æ÷Éè¼ÆÓë·ÖÎö¹¤¾ß£¨FDATool£©½øÐÐÉè¼ÆµÄÒ»ÖÖ·½·¨¡£ÔÚÃüÁî´°¿ÚÊäÈëFDATool£¬¼´¿É´ò¿ªÈçͼËùʾµÄͼÐÎÓû§½çÃæÉè¼Æ´°¿Ú¡£¸Ã´°¿Ú·ÖΪÉÏÏÂÁ½²¿·Ö£ºÉÏÃæÊÇÉè¼Æ½á¹ûÏÔʾ£»ÏÂÃæÓÃÀ´É趨ËùÐèµÄ¼¼Êõ²ÎÊý¡£FDAToolÐèÉèÖõIJÎÊýÖ÷ÒªÓÐÏìÓ¦ÀàÐÍ¡¢Éè¼Æ·½·¨¡¢Â˲¨Æ÷½×Êý¼°Ñ¡ÏƵÂʲÎÊýºÍ·ù¶È²ÎÊýµÈÏîÄ¿£¬²»Í¬ÀàÐͺͲ»Í¬·½·¨µÄÂ˲¨Æ÷Éè¼Æ²ÎÊý²»¾¡Ïàͬ£¬Í¼Öиø³öµÄÊÇijÉè¼ÆÊµÀýµÄÉè¼ÆÖ¸±ê¡£ÉèÖúü¼ÊõÖ¸±êºó£¬µã»÷Design Filter°´¼ü£¬¼´¿ÉÍê³ÉÉè¼Æ¡£Ïë¶ÔÉè¼Æ½á¹û½øÐзÖÎö£¬¿Éͨ¹ý·ÖÎö²Ëµ¥»òÏà¹Ø¹¤¾ß½øÐзÖÎö¡£
ÈçÒª½«Éè¼Æ½á¹ûÒÔ´«Ê亯ÊýµÄ·Ö×Ó·ÖĸÐÎʽÊä³ö£¬ÏÈÔËÐÐEdit/convert to single sectionÃüÁÔÙÔËÐÐ File/Export?ÃüÁÔÚµ¯³öµÄ¶Ô»°¿òÖиø±äÁ¿ÃüÃûΪbzºÍaz£¬¼´¿ÉÔÚ¹¤×÷¿Õ¼äµÃµ½Éè¼Æ½á¹û¡£
8