ͼ1-3 ϵͳµ¥Î»È¡ÑùÏìÓ¦
1.2.3 Àëɢʱ¼äÐźŵľí»ýºÍÔËËã
ÓÉÓÚϵͳµÄÁã״̬ÏìÓ¦ÊǼ¤ÀøÓëϵͳµÄµ¥Î»È¡ÑùÏìÓ¦µÄ¾í»ý£¬Òò´Ë¾í»ýÔËËãÔÚÀëɢʱ¼äÐźŴ¦ÀíÁìÓò±»¹ã·ºÓ¦Óá£Àëɢʱ¼äÐźŵľí»ý¶¨ÒåΪ
?y(n)?x(n)*h(n)?m????x(m)h(n?m) £¨1-2£©
¿É¼û£¬Àëɢʱ¼äÐźŵľí»ýÔËËãÊÇÇóºÍÔËË㣬Òò¶ø³£³ÆÎª¡°¾í»ýºÍ¡±¡£
MATLABÇóÀëɢʱ¼äÐźží»ýºÍµÄÃüÁîΪconv£¬ÆäÓï¾ä¸ñʽΪ
y=conv(x,h)
ÆäÖУ¬xÓëh±íʾÀëɢʱ¼äÐźÅÖµµÄÏòÁ¿£»yΪ¾í»ý½á¹û¡£ÓÃMATLAB½øÐоí»ýºÍÔËËãʱ£¬ÎÞ·¨ÊµÏÖÎÞÏÞµÄÀÛ¼Ó£¬Ö»ÄܼÆËãʱÏÞÐźŵľí»ý¡£
ÀýÈ磬ÀûÓÃMALABµÄconvÃüÁîÇóÁ½¸ö³¤Îª4µÄ¾ØÐÎÐòÁеľí»ýºÍ£¬¼´
g(n)?[u(n)?u(n?4)]*[u(n)?u(n?4)]£¬Æä½á¹ûÓ¦Êdz¤Îª7£¨4+4-1=7£©µÄÈý½Ç
ÐòÁС£ÓÃÏòÁ¿[1 1 1 1]±íʾ¾ØÐÎÐòÁУ¬MATLABÔ´³ÌÐòΪ
>>x1=[1 1 1 1]; >>x2=[1 1 1 1]; >>g=conv(x1,x2) g=
1 2 3 4 3 2 1
4
Èç¹ûÒª»æ³öͼÐÎÀ´£¬ÔòÀûÓÃstemÃüÁ¼´
>>n=1:7;
>>stem(n,g,'fill'),grid on,xlabel('n')
³ÌÐòÔËÐнá¹ûÈçͼ1-4Ëùʾ¡£
ͼ1-4 ¾í»ý½á¹ûͼ
¶ÔÓÚ¸ø¶¨º¯ÊýµÄ¾í»ýºÍ£¬ÎÒÃÇÓ¦¼ÆËã¾í»ý½á¹ûµÄÆðʼµã¼°Æä³¤¶È¡£Á½¸öʱÏÞÐòÁеľí»ýºÍ³¤¶ÈÒ»°ãµÈÓÚÁ½¸öÐòÁг¤¶ÈµÄºÍ¼õ1¡£
¡¾ÊµÀý1-3¡¿ ÒÑ֪ijϵͳµÄµ¥Î»È¡ÑùÏìӦΪh?n??0.8?u?n??u?n?8??£¬ÊÔ
nÓÃMATLABÇóµ±¼¤ÀøÐźÅΪx(n)?u(n)?u(n?4)ʱ£¬ÏµÍ³µÄÁã״̬ÏìÓ¦¡£
½â£ºMATLABÖпÉͨ¹ý¾í»ýÇó½âÁã״̬ÏìÓ¦£¬¼´x(n)*h(n)¡£ÓÉÌâÒâ¿ÉÖª£¬ÃèÊöh(n)ÏòÁ¿µÄ³¤¶ÈÖÁÉÙΪ8£¬ÃèÊöx(n)ÏòÁ¿µÄ³¤¶ÈÖÁÉÙΪ4£¬Òò´ËΪÁËͼÐÎÍêÕûÃÀ¹Û£¬ÎÒÃǽ«h(n)ÏòÁ¿ºÍx(n)ÏòÁ¿¼ÓÉÏһЩ¸½¼ÓµÄÁãÖµ¡£MATLABÔ´³ÌÐòΪ
>>nx=-1:5; %x(n)ÏòÁ¿ÏÔʾ·¶Î§(Ìí¼ÓÁ˸½¼ÓµÄÁãÖµ) >>nh=-2:10; %h(n)ÏòÁ¿ÏÔʾ·¶Î§(Ìí¼ÓÁ˸½¼ÓµÄÁãÖµ) >>x=uDT(nx)-uDT(nx-4);
>>h=0.8.^nh.*(uDT(nh)-uDT(nh-8)); >>y=conv(x,h);
>>ny1=nx(1)+nh(1); %¾í»ý½á¹ûÆðʼµã
>>%¾í»ý½á¹û³¤¶ÈΪÁ½ÐòÁ㤶ÈÖ®ºÍ¼õ1,¼´0µ½(length(nx)+length(nh)-2) >>%Òò´Ë¾í»ý½á¹ûµÄʱ¼ä·¶Î§Êǽ«ÉÏÊö³¤¶È¼ÓÉÏÆðʼµãµÄÆ«ÒÆÖµ >>ny=ny1+(0:(length(nx)+length(nh)-2));
5
>>subplot(311)
>>stem(nx,x,'fill'),grid on >>xlabel('n'),title('x(n)') >>axis([-4 16 0 3]) >>subplot(312)
>>stem(nh,h','fill'),grid on >>xlabel('n'),title('h(n)') >>axis([-4 16 0 3]) >>subplot(313)
>>stem(ny,y,'fill'),grid on
>>xlabel('n'),title('y(n)=x(n)*h(n)') >>axis([-4 16 0 3])
³ÌÐòÔËÐнá¹ûÈçͼ1-5Ëùʾ¡£
ͼ1-5 ÀûÓþí»ýºÍ·¨Çó½âϵͳµÄÁã״̬ÏìÓ¦
6
1.3 ±à³ÌÁ·Ï°
1.
ÊÔÓÃMATLABÃüÁîÇó½âÒÔÏÂÀëɢʱ¼äϵͳµÄµ¥Î»È¡ÑùÏìÓ¦£¬²¢ÅжÏϵͳµÄÎȶ¨ÐÔ¡£
£¨1£©3y(n)?4y(n?1)?y(n?2)?x(n)?x(n?1)
5y(n)?6y(n?1)?10y(n?2)?x(n) 272. ÒÑ֪ijϵͳµÄµ¥Î»È¡ÑùÏìӦΪh?n??()n?u?n??u?n?10??£¬ÊÔÓÃMATLAB
8Çóµ±¼¤ÀøÐźÅΪx(n)?u(n)?u(n?5)ʱ£¬ÏµÍ³µÄÁã״̬ÏìÓ¦¡£
£¨2£©¸½£º
1. µ¥Î»È¡ÑùÐòÁÐ
µ¥Î»È¡ÑùÐòÁÐ?(n)£¬Ò²³ÆÎªµ¥Î»³å¼¤ÐòÁУ¬¶¨ÒåΪ
?(n)???1?0(n?0)(n?0) £¨12-1£©
ҪעÒ⣬µ¥Î»³å¼¤ÐòÁв»Êǵ¥Î»³å¼¤º¯ÊýµÄ¼òµ¥ÀëÉ¢³éÑù£¬ËüÔÚn=0´¦ÊÇȡȷ¶¨µÄÖµ1¡£ÔÚMATLABÖУ¬³å¼¤ÐòÁпÉÒÔͨ¹ý±àдÒÔϵÄimpDT.mÎļþÀ´ÊµÏÖ£¬¼´
function y=impDT(n)
y=(n==0); %µ±²ÎÊýΪ0ʱ³å¼¤Îª1,·ñÔòΪ0
µ÷Óøú¯Êýʱn±ØÐëΪÕûÊý»òÕûÊýÏòÁ¿¡£
¡¾ÊµÀý2-1¡¿ ÀûÓÃMATLABµÄimpDTº¯Êý»æ³öµ¥Î»³å¼¤ÐòÁеIJ¨ÐÎͼ¡£ ½â£ºMATLABÔ´³ÌÐòΪ
>>n=-3:3; >>x=impDT(n);
>>stem(n,x,'fill'),xlabel('n'),grid on >>title('µ¥Î»³å¼¤ÐòÁÐ') >>axis([-3 3 -0.1 1.1])
7