»ùÓÚMATLABµÄ¿ØÖÆÏµÍ³Ð£Õý_±ÏÒµÂÛÎÄ ÏÂÔØ±¾ÎÄ

0-2-4-6-8-10-21040200-20-40-21010-110010110210310410-1100101102103104

ÎÒÃÇÔÚ£¨1£©ÖУ¬ÊÇÏȳ¬Ç°Ð£Õý£¬ÔÙÖͺóУÕý£¬³ÆÎª³¬Ç°ÖͺóУÕý£»¶øÔÚ£¨2£©ÖÐÎÒÃÇÊÇÏÈÖͺóУÕý£¬ÔÙ³¬Ç°Ð£Õý£¬³ÆÎªÖͺó³¬Ç°Ð£Õý¡£ËüÃǶ¼×ÛºÏÁ˳¬Ç°Ð£ÕýºÍÖͺóУÕýÁ½ÖÖУÕýµÄÓŵ㣬ÄÜͬʱ¸ÄÉÆÏµÍ³µÄÎÈ̬ÐÔÄܺͶ¯Ì¬ÐÔÄÜ¡£

µÚËÄÕ ·´À¡Ð£Õý

·´À¡Ð£ÕýϵͳµÄ½á¹¹ÌصãÊÇУÕý×°ÖýÓÔÚϵͳ¾Ö²¿·´À¡Í¨Â·ÖС£·´À¡Ð£ÕýϵͳÈçͼ3-1Ëùʾ¡£Æä¿ª»·´«µÝº¯ÊýΪ£º

R(S) G1(s)G2(s)GC(s)C(S) ͼ4-1 ·´À¡Ð£Õýϵͳ

G(s)?G1(s)G2(s)¡£

1?G2(s)GC(s)·´À¡Ð£Õý¾ÍÊÇÓÃУÕý×°ÖðüΧԭϵͳÖжÔÐÔÄÜÖ¸±êÓкܴó×è°­µÄһЩ»·½Ú£¬ÐγÉÒ»¸ö¾Ö²¿·´À¡»ØÂ·£¬µ±Õâ¸ö·´À¡»ØÂ·µÄ¿ª»··ùÖµÔ¶Ô¶´óÓÚ1µÄʱºò£¬ÆäÌØÐÔ¾ÍÖ÷ÒªÓÉ·´À¡Ð£Õý×°Öþö¶¨£¬¶øÓë±»°üΧµÄ»·½ÚûÓйØÏµ£¬Ö»ÒªÎÒÃÇÑ¡ÔñºÏÊʵÄУÕý×°ÖõIJÎÊýºÍÐÎʽ£¬¾Í¿ÉÒÔʹУÕýϵͳµÄ¸÷ÏîÐÔÄÜÖ¸±ê´ïµ½ÒªÇó¡£

·´À¡Ð£Õý¿ÉÒÔ¼õС±»°üΧ»·½Úʱ¼ä³£ÊýºÍÆä·ÇÏßÐÔÌØÐÔµÄÓ°Ï죬»¹¿ÉÒÔ¼õС²ÎÊý¶ÔϵͳÐÔÄܵÄÓ°Ïì¡£

ÏÂÃæÎÒÃÇͨ¹ýÒ»¸öʵÀýÀ´ËµÃ÷·´À¡Ð£ÕýµÄÌØÐÔ¡£

ÉèϵͳµÄ½á¹¹Í¼Èçͼ4-2Ëùʾ£¬Ôò´ýУÕýµÄϵͳ¿ª»·´«µÝº¯ÊýΪ

125000G2(s)?G0?G1(s)G2(s)G3(s)¡£ÆäÖÐG1(s)?£¬£¬

(0.1s?1)(0.02s?1)0.014s?1G3(s)?0.0025£¬ sG0(s)?150¡£

s(0.014s?1)(0.02s?1)(0.1s?1)

G1(s)G2(s)GC(s)G3(s)C(S) ͼ4-2

ÏÂÃæÏÈÇó³öУÕýǰϵͳµÄ·ùÖµÔ£Á¿ºÍÏàλԣÁ¿¡£

num=150;

den1=[1 0];den2=[0.014 1];den3=[0.1 1];den4=[0.02 1]

den5=conv(den1,den2);den6=conv(den3,den4);den=conv(den5,den6); G0=tf(num,den); w=logspace(-1,3); bode(G0,w)

[Gm,Pm,Wcg,Wcp]=margin(G);[Gm,Pm,Wcg,Wcp] ans =

Inf 48.5172 Inf 1.5746

Bode Diagram10050Magnitude (dB)Phase (deg)0-50-100-150-90-180-270-36010-1100101102103Frequency (rad/sec)

È»ºóÎÒÃÇÒýÈëÒ»¸ö·´À¡Ð£Õý×°Ö㬼ÙÉèϵͳУÕý×°ÖõĴ«µÝº¯ÊýΪGC?0.238sG0(s)£¬ÔòУÕýºóϵͳµÄ¿ª»·´«µÝº¯ÊýΪG(s)?¡£

1?0.25s1?G2(s)Gc(s)ÏÂÃæÔÙÇóУÕýºóµÄϵͳ·ùÖµÔ£Á¿ºÍÏàλԣÁ¿¡£

num=150;

den1=[1 0];den2=[0.014 1];den3=[0.1 1];den4=[0.02 1]

den5=conv(den1,den2);den6=conv(den3,den4);den=conv(den5,den6); G0=tf(num,den);bode(G0,w) num2=12; G2=tf(num2,den6); Gc=tf([0.238 0],[0.25 1]); w=logspace(-1,3); bode(G0,w) G=G0/(1+G2*Gc);

[Gm,Pm,Wcg,Wcp]=margin(G); [Gm,Pm,Wcg,Wcp] [m,p]=bode(G0,w); [m1,p1]=bode(G,w); subplot(211)

semilogx(w,20*log10([m(:)'])) hold on

semilogx(w,20*log10([m1(:)'])) gtext('УÕýǰ') gtext('УÕýºó') hold off subplot(212)