ÔËÐнá¹ûÈçͼ5-3Ëùʾ
ͼ5-3¸ù¹ì¼£
MATLABÖÐÌṩÁ˶àÖÖÇóÈ¡²¢»æÖÆÆµÂÊÏìÓ¦ÇúÏߵĺ¯Êý£¬³£Óõĺ¯ÊýÈç±í5.2Ëùʾ£º
±í5.2 »æÖÆÆµÂÊÏìÓ¦ÇúÏߵĺ¯Êý
Ãû³Æ dnyquist dbode dnichols º¯Êý¹¦ÄÜ ÇóÈ¡»ò»æÖÆÀëɢϵͳµÄNyquistÇúÏß ÇóÈ¡»ò»æÖÆÀëɢϵͳµÄBodeÇúÏß ÇóÈ¡»ò»æÖÆÀëɢϵͳµÄNicholsÇúÏß £¨1£© NyquistÇúÏß»æÖƺ¯Êýdnyquist() ¸ñʽ£º[re,im,w]=dnyquist(num,den,Ts,w)
¹¦ÄÜ£ºÇóÈ¡»ò»æÖÆÏßÐÔ¶¨³£Àëɢʱ¼äϵͳµÄNyquistÇúÏß £¨2£© ¶ÔÊýƵÂÊÌØÐÔÇúÏߵĻæÖƺ¯Êýdbode()
¸ñʽ£ºdbode(num,den,Ts,w)
¹¦ÄÜ£ºÇóÈ¡»ò»æÖÆÏßÐÔ¶¨³£ÀëɢϵͳµÄ¶ÔÊýƵÂÊÌØÐÔÇúÏߣ¨BodeÇúÏߣ© £¨3£© NicholsÇúÏß»æÖƺ¯Êýdnichols() ¸ñʽ£º[mag,pha,w]=dnichols(num,den,Ts,w) ¹¦ÄÜ£ºÇóÈ¡»ò»æÖÆÏßÐÔ¶¨³£ÀëɢϵͳµÄNicholsÇúÏß
z2?0.2z?0.95ÀýÈç ÀëɢϵͳµÄÂö³å´«µÝº¯ÊýΪH?z??4,²ÉÑùÖÜÆÚ
z?0.24z3?10z2Ts=0.5s.»æÖÆÆäNyquistͼ£¬NicholsͼÒÔ¼°Bodeͼ ÔÚMATLAB½¨Á¢MÎļþ£¬³ÌÐòÈçÏ num =
1.0000 0.2000 9.5000 >> den=[1 0.24 10 0 0] den =
1.0000 0.2400 10.0000 0 0 >> subplot(2,2,1)
>> dnyquist(num,den,0.5) >> subplot(2,2,2) >> dnichols(num,den,0.5) >> subplot(2,2,[3 4]) >> dbode(num,den,0.5) ÔËÐнá¹ûÈçͼ5-4Ëùʾ
ͼ5-4 Nyquistͼ£¬NicholsͼÒÔ¼°Bodeͼ
5.3 SIMULINK½¨Ä£
ÔÚ»ù±¾Ä£¿éÖÐÑ¡Ôñ¡°Discrete¡±,ÔÚÓÒ²àµÄÁбí¿òÖм´»áÏÔʾÈç5-5ͼËùʾµÄÀëɢģ¿é¡£
ͼ5-5Àëɢģ¿é
³£ÓõÄÄ£¿éÓУº
Discrete Filter-ÀëÉ¢¹ýÂË·ÖÎöÄ£¿é£¬
Discrete State-Space-Àëɢ״̬¿Õ¼äÄ£ÐÍ£¬
Discrete-Time Integrator-Àëɢʱ¼ä±äÁ¿¼¸·ÖÄ£¿é£¬ First-Order =[1 1 0.3] >>sysd=tf(num,den,0.1) Transfer function: