ÔÆÌ⺣ - רҵÎÄÕ·¶ÀýÎĵµ×ÊÁÏ·ÖÏíÆ½Ì¨

µ±Ç°Î»ÖãºÊ×Ò³ > ÐźÅÓëϵͳMATLABʵÑ飨½Ìʦ°æ£©

ÐźÅÓëϵͳMATLABʵÑ飨½Ìʦ°æ£©

  • 62 ´ÎÔĶÁ
  • 3 ´ÎÏÂÔØ
  • 2025/7/10 12:05:36

ʽÖУ¬bºÍa·Ö±ðΪϵͳº¯ÊýH£¨s£©µÄ·Ö×ӺͷÖĸ¶àÏîʽµÄϵÊýÏòÁ¿¡£

£¨j?£©Èç¹ûÒÑ֪ϵͳº¯ÊýH£¨s£©£¬ÇóϵͳµÄµ¥Î»³å¼¤ÏìÓ¦h(t)ºÍƵÂÊÏìÓ¦H¿ÉÒÔÓÃÒÔǰ½éÉܹýµÄimpulseºÍfreqsº¯Êý¡£ Àý6-2 ÒÑ֪ϵͳº¯ÊýΪ H(s)=1 32s?2s?2s?1£¨j?£©ÊÔ»­³öÆäÁ㼫µã·Ö²¼Í¼£¬ÇóϵͳµÄµ¥Î»³å¼¤ÏìÓ¦h(t)ºÍƵÂÊÏìÓ¦H£¬²¢ÅжÏϵͳ

ÊÇ·ñÎȶ¨¡£

½â£ºÆäMATLAB³ÌÐòÈçÏ£º num=[1]; den=[1,2,2,1]; sys=tf(num,den); figure(1);pzmap(sys); t=0:0.02:10;

h=impulse(num,den,t); figure(2);plot(t,h)

title('Impulse Response') [H,w]=freqs(num,den); figure(3);plot(w,abs(H)) xlabel('\\omega')

title('Magnitude Response')

3£®ÓÃMATLAB½øÐÐLaplaceÕý¡¢·´±ä»»

MATLABµÄ·ûºÅÊýѧ¹¤¾ßÏäÌṩÁ˼ÆËãLaplaceÕý¡¢·´±ä»»µÄº¯ÊýLaplaceºÍilaplace,Æäµ÷ÓøñʽΪ

F?laplace(f)

f?ilaplace(F)ÉÏÊöÁ½Ê½ÓҶ˵ÄfºÍF·Ö±ðΪʱÓò±íʾʽºÍsÓò±íʾʽµÄ·ûºÅ±íʾ£¬¿ÉÒÔÓ¦Óú¯ÊýsymʵÏÖ£¬Æäµ÷ÓøñʽΪ

S=sym(A)

ʽÖУ¬AΪ´ý·ÖÎö±íʾʽµÄ×Ö·û´®£¬SΪ·ûºÅÊý×Ö»ò±äÁ¿¡£ Àý6-3 ÊÔ·Ö±ðÓÃLaplaceºÍilaplaceº¯ÊýÇó £¨1£©f(t)?esin(at)u(t)µÄLaplace±ä»»£»

?ts2£¨2£©F(s)?2µÄLaplace·´±ä»»¡£

s?1½â£º£¨1£©Æä³ÌÐòΪ f=sym('exp(-t)*sin(a*t)'); F=laplace(f) »ò

syms a t

F=laplace(exp(-t)*sin(a*t)) £¨2£©Æä³ÌÐòΪ

25

F=sym('s^2/(s^2+1)'); ft=ilaplace(F) »ò syms s

ft= ilaplace(s^2/(s^2+1)) 4£®ÀëɢϵͳÁ㼫µãͼ

Àëɢϵͳ¿ÉÒÔÓÃÏÂÊö²î·Ö·½³ÌÃèÊö£º

?ay(k?i)??bii?0m?0NMmf(k?m)

Y(z)b0?b1z?1?...?bMz?MZ±ä»»ºó¿ÉµÃϵͳº¯Êý£ºH(z)? ?F(z)a0?a1z?1?...?aNz?NÓÃMATLABÌṩµÄrootº¯Êý¿É·Ö±ðÇóÁãµãºÍ¼«µã£¬µ÷ÓøñʽÊÇ

p=[a0,a1¡­an],q=[b0,b1¡­bm,0,0¡­0], ²¹0ʹ¶þÕßάÊýÒ»Ñù¡£»­Á㼫µãͼµÄ·½·¨ÓжàÖÖ£¬¿ÉÒÔÓÃMATLABº¯Êý[z,p,k]=tf2zp(b,a)ºÍzplane(q,p)£¬Ò²¿ÉÓÃplotÃüÁî×Ô±àÒ»º¯Êýljdt.m,»­Í¼Ê±µ÷Óá£

function ljdt(A,B)

% The function to draw the pole-zero diagram for discrete system

p=roots(A)£» %Çóϵͳ¼«µã q=roots(B)£» %ÇóϵͳÁãµã p=p'£» %½«¼«µãÁÐÏòÁ¿×ªÖÃΪÐÐÏòÁ¿ q=q'£» %½«ÁãµãÁÐÏòÁ¿×ªÖÃΪÐÐÏòÁ¿ x=max(abs([p q 1]))£» %È·¶¨×Ý×ø±ê·¶Î§ x=x+0.1£» y=x£» %È·¶¨ºá×ø±ê·¶Î§ clf hold on

axis([-x x -y y]) %È·¶¨×ø±êÖáÏÔʾ·¶Î§ w=0:pi/300:2*pi£» t=exp(i*w)£» plot(t) %»­µ¥Î»Ô° axis('square') plot([-x x],[0 0]) %»­ºá×ø±êÖá plot([0 0],[-y y]) %»­×Ý×ø±êÖá text(0.1,x,'jIm[z]') text(y,1/10,'Re[z]')

plot(real(p),imag(p),'x') %»­¼«µã plot(real(q),imag(q),'o') %»­Áãµã title('pole-zero diagram for discrete system') %±ê×¢±êÌâ hold off

Àý6-4 Çóϵͳº¯ÊýÁ㼫µãͼH(z)?

a=[3 -1 0 0 0 1];

26

z?1 543z?z?1

b=[1 1]; ljdt(a,b) p=roots(a) q=roots(b) pa=abs(p)

5£®ÀëɢϵͳµÄƵÂÊÌØÐÔ

ÀëɢϵͳµÄƵÂÊÌØÐÔ¿ÉÓÉϵͳº¯ÊýÇó³ö£¬¼ÈÁîz?ej?,MATLABº¯Êýfreqz¿É¼ÆËãÆµÂÊ

ÌØÐÔ£¬µ÷ÓøñʽÊÇ£º

[H£¬W]=freqz(b,a,n)£¬bºÍaÊÇϵͳº¯Êý·Ö×Ó·ÖĸϵÊý£¬nÊÇ0-?·¶Î§ n¸öµÈ·Ýµã£¬Ä¬ÈÏ

Öµ512£¬HÊÇÆµÂÊÏìÓ¦º¯ÊýÖµ£¬WÊÇÏàӦƵÂʵ㣻

[H£¬W]=freqz(b,a,n,¡¯whole¡¯), nÊÇ0-2?·¶Î§ n¸öµÈ·Ýµã£» freqz(b,a,n)£¬Ö±½Ó»­ÆµÂÊÏìÓ¦·ùƵºÍÏàÆµÇúÏߣ»

Àý6-5 ϵͳº¯ÊýH(z)?z?0.5

ÔËÐÐÈçÏÂÓï¾ä£¬¿ÉµÃ10¸öƵÂʵãµÄ¼ÆËã½á¹û A=[1 0]; B=[1 -0.5];

[H,W]=freqz(B,A,10)

¼ÌÐøÔËÐÐÈçÏÂÓï¾ä£¬¿É½«400¸öƵÂʵãµÄ¼ÆËã½á¹ûÓÃplotÓï¾ä»­·ùƵºÍÏàÆµÇúÏß B=[1 -0.5]; A =[1 0];

[H,w]=freqz(B,A,400,'whole'); Hf=abs(H); Hx=angle(H); clf

figure(1) plot(w,Hf)

title('Àëɢϵͳ·ùÆµÌØÐÔÇúÏß') figure(2) plot(w,Hx)

title('ÀëɢϵͳÏàÆµÌØÐÔÇúÏß')

»¹¿ÉÓÃfreqzÓï¾äÖ±½Ó»­Í¼£¬×¢ÒâÇø±ð A=[1 0]; B=[1 -0.5]; freqz(B,A,400)

Àý6-6 Óü¸ºÎʸÁ¿·¨£¬×Ô±à³ÌÐò»­ÆµÂÊÏìÓ¦

zÔ­Àí£ºÆµÂÊÏìÓ¦H(ej??(e??qjMj))?j?1N?(e??p)jii?1

27

±à³ÌÁ÷³Ì£º¶¨ÒåZÆ½Ãæµ¥Î»Ô²ÉÏk¸öƵÂʵȷֵ㣻Çó³öϵͳº¯ÊýËùÓÐÁãµãºÍ¼«µãµ½ÕâЩµÈ·ÖµãµÄ¾àÀ룻Çó³öϵͳº¯ÊýËùÓÐÁãµãºÍ¼«µãµ½ÕâЩµÈ·ÖµãµÄʸÁ¿µÄÏà½Ç£»Çó³öµ¥Î»Ô²Éϸ÷ ƵÂʵȷֵãµÄ

H(ej?)ºÍ?(?)»­Ö¸¶¨·¶Î§ÄڵķùƵÓëÏàÆµ¡£ÈôÒª»­Á㼫µãͼ£¬¿Éµ÷ÓÃljdt.mº¯Êý¡£ function dplxy(k,r,A,B)

%The function to draw the frequency response of discrete system p=roots(A); %Ç󼫵ã q=roots(B); %ÇóÁãµã figure(1) ljdt(A,B) %»­Á㼫µãͼ w=0:l*pi/k:r*pi; y=exp(i*w); %¶¨Ò嵥λԲÉϵÄk¸öƵÂʵȷֵã N=length(p); %Ç󼫵ã¸öÊý M=length(q); %ÇóÁãµã¸öÊý yp=ones(N,1)*y; %¶¨ÒåÐÐÊýΪ¼«µã¸öÊýµÄµ¥Î»Ô²ÏòÁ¿ yq=ones(M,1)*y; %¶¨ÒåÐÐÊýΪÁãµã¸öÊýµÄµ¥Î»Ô²ÏòÁ¿ vp=yp-p*ones(1,r*k+1); %¶¨Ò弫µãµ½µ¥Î»Ô²Éϸ÷µãµÄÏòÁ¿ vq=yq-q*ones(1,r*k+1); %¶¨ÒåÁãµãµ½µ¥Î»Ô²Éϸ÷µãµÄÏòÁ¿ Ai=abs(vp); %Çó³ö¼«µãµ½µ¥Î»Ô²Éϸ÷µãµÄÏòÁ¿µÄÄ£ Bj=abs(vq); %Çó³öÁãµãµ½µ¥Î»Ô²Éϸ÷µãµÄÏòÁ¿µÄÄ£ Ci=angle(vp); %Çó³ö¼«µãµ½µ¥Î»Ô²Éϸ÷µãµÄÏòÁ¿µÄÏà½Ç Dj=angle(vq); %Çó³öÁãµãµ½µ¥Î»Ô²Éϸ÷µãµÄÏòÁ¿µÄÏà½Ç fai=sum(Dj,1)-sum(Ci,1); %ÇóϵͳÏàÆµÏìÓ¦ H=prod(Bj,1)./prod(Ai,1); %Çóϵͳ·ùƵÏìÓ¦ figure(2) plot(w,H); %»æÖÆ·ùÆµÌØÐÔÇúÏß title('Àëɢϵͳ·ùÆµÌØÐÔÇúÏß') xlabel('½ÇƵÂÊ') ylabel('·ù¶È') figure(3) plot(w,fai) title('ÀëɢϵͳµÄÏàÆµÌØÐÔÇúÏß') xlabel('½ÇƵÂÊ') ylabel('Ïàλ')

5/4(1?z?1)ÒÑ֪ϵͳº¯ÊýH(z)?£¬»­ÆµÂÊÏìÓ¦ºÍÁ㼫µãͼ¡£ ?11?1/4zA=[1 -1/4]; B=[5/4 -5/4];

dplxy(500,2,A,B) %»æÖÆÏµÍ³2¦ÐƵÂÊ·¶Î§ÄÚ500¸öƵÂʵãµÄ·ùƵºÍÏàÆµÌØÐÔÇúÏß

¼°Á㼫µãͼ

28

Èý¡¢ÉÏ»úʵÑéÄÚÈÝ

1£®Ñé֤ʵÑéÔ­ÀíÖÐËùÊöµÄÏà¹Ø³ÌÐò£» 2£®ÇóÐźÅf(t)?te?3tu(t)µÄÀ­ÆÕÀ­Ë¹±ä»»

s3?5s2?9s?73£®Çóº¯ÊýF(s)?µÄ·´±ä»» 2s?3s?24£®ÒÑÖªÁ¬ÐøÏµÍ³µÄϵͳº¯ÊýÈçÏ£¬ÊÔÓÃMATLAB»æÖÆÏµÍ³µÄÁ㼫µãͼ£¬²¢¸ù¾ÝÁ㼫µãͼÅжÏϵͳµÄÎȶ¨ÐÔ

s2?s?2 H(s)=3 23s?5s?4s?6

5£®ÏµÍ³º¯ÊýÊÇ

1?5z?5z

?1?2?z?3

ÇóƵÂÊÏìÓ¦¡£

29

ËÑË÷¸ü¶à¹ØÓÚ£º ÐźÅÓëϵͳMATLABʵÑ飨½Ìʦ°æ£© µÄÎĵµ
  • ÊÕ²Ø
  • Î¥¹æ¾Ù±¨
  • °æÈ¨ÈÏÁì
ÏÂÔØÎĵµ10.00 Ôª ¼ÓÈëVIPÃâ·ÑÏÂÔØ
ÍÆ¼öÏÂÔØ
±¾ÎÄ×÷Õߣº...

¹²·ÖÏí92ƪÏà¹ØÎĵµ

Îĵµ¼ò½é£º

ʽÖУ¬bºÍa·Ö±ðΪϵͳº¯ÊýH£¨s£©µÄ·Ö×ӺͷÖĸ¶àÏîʽµÄϵÊýÏòÁ¿¡£ £¨j?£©Èç¹ûÒÑ֪ϵͳº¯ÊýH£¨s£©£¬ÇóϵͳµÄµ¥Î»³å¼¤ÏìÓ¦h(t)ºÍƵÂÊÏìÓ¦H¿ÉÒÔÓÃÒÔǰ½éÉܹýµÄimpulseºÍfreqsº¯Êý¡£ Àý6-2 ÒÑ֪ϵͳº¯ÊýΪ H(s)=1 32s?2s?2s?1£¨j?£©ÊÔ»­³öÆäÁ㼫µã·Ö²¼Í¼£¬ÇóϵͳµÄµ¥Î»³å¼¤ÏìÓ¦h(t)ºÍƵÂÊÏìÓ¦H£¬²¢ÅжÏϵͳÊÇ·ñÎȶ¨¡£ ½â£ºÆäMATLAB³ÌÐòÈçÏ£º num=[1]; den=[1,2,2,1]; sys=tf(num,den); figure(1);pzmap(sys); t=0:0.02:10; h=impulse(num,den,t); figure(2);plot(t,h) title('Impulse Response') [H,w]=freqs(num,den)

¡Á ÓοͿì½ÝÏÂÔØÍ¨µÀ£¨ÏÂÔØºó¿ÉÒÔ×ÔÓɸ´ÖƺÍÅŰ棩
µ¥Æª¸¶·ÑÏÂÔØ
ÏÞÊ±ÌØ¼Û£º10 Ôª/·Ý Ô­¼Û:20Ôª
VIP°üÔÂÏÂÔØ
ÌØ¼Û£º29 Ôª/Ô ԭ¼Û:99Ôª
µÍÖÁ 0.3 Ôª/·Ý ÿÔÂÏÂÔØ150·Ý
ȫվÄÚÈÝÃâ·Ñ×ÔÓɸ´ÖÆ
VIP°üÔÂÏÂÔØ
ÌØ¼Û£º29 Ôª/Ô ԭ¼Û:99Ôª
µÍÖÁ 0.3 Ôª/·Ý ÿÔÂÏÂÔØ150·Ý
ȫվÄÚÈÝÃâ·Ñ×ÔÓɸ´ÖÆ
×¢£ºÏÂÔØÎĵµÓпÉÄÜ¡°Ö»ÓÐĿ¼»òÕßÄÚÈݲ»È«¡±µÈÇé¿ö£¬ÇëÏÂÔØÖ®Ç°×¢Òâ±æ±ð£¬Èç¹ûÄúÒѸ¶·ÑÇÒÎÞ·¨ÏÂÔØ»òÄÚÈÝÓÐÎÊÌ⣬ÇëÁªÏµÎÒÃÇЭÖúÄã´¦Àí¡£
΢ÐÅ£ºfanwen365 QQ£º370150219
Copyright © ÔÆÌ⺣ All Rights Reserved. ËÕICP±¸16052595ºÅ-3 ÍøÕ¾µØÍ¼ ¿Í·þQQ£º370150219 ÓÊÏ䣺370150219@qq.com