【正文】
飽和;取小了又遲遲不能消除靜差。偏差大時,積分累積速度慢,積分作用弱;反之,偏差小時,使積分累積速度加快,積分作用增強。變速積分 PID 算法為 10( ) ( ) ( ) [ ( ) ] ( ) [ ( ) ( 1 ) ]kP I dju k K e k K e j f e k e k k e k e k????? ? ? ? ? ?????? ( 39) 變速積分 PID 與普通 PID 相比,具有如下的優(yōu)點: ( 1)實現(xiàn)了用比例作用消除大偏差,用積分作用消除小偏差的理想調(diào)節(jié)特性,從而完全消除了積分飽和現(xiàn)象。 變速積分與積分分離控制方法很類似,但是調(diào)節(jié)方式不同。 MATLAB 是目前應用相當廣泛的控制系統(tǒng)分析、仿真的最好平臺 [10]。在歐美高校, MATLAB 已經(jīng)成為線性代數(shù)、自動控制理論、數(shù)理統(tǒng)計、數(shù)字信號分析與處理、動態(tài)系統(tǒng)仿真等高級課程的基本數(shù)學工具,成為高校大學生、研究生必須掌握的基礎知識與基本技能。在該環(huán)境中,不用大量的書寫程序,而只需要通過簡單直觀的鼠標操作,就可以構(gòu)造出復雜的系統(tǒng)模型。采用普通 PID 控制,其階躍 式跟蹤結(jié)果如圖 32 所示。 圖 33是采用 simulink 仿真,通過仿真模塊實現(xiàn)積分分離 PID 控制算法。 部分仿真源程序見附錄一 。 浙江萬里學院本科畢業(yè)論文 23 圖 36 變速積分階躍響應 圖 37 變速積 分參數(shù)的變化 浙江萬里學院本科畢業(yè)論文 24 圖 38 積分分離 PID階躍響應 由仿真結(jié)果可以看出,變速積分與積分分離兩種控制方法很類似,但調(diào)節(jié)方式不同,前者對積分項采用的是緩慢變化,而后者則采用所謂“開關(guān)”控制。而變速積分 PID 控制算法稍為復雜。 浙江萬里學院本科畢業(yè)論文 26 致 謝 經(jīng)過三個月的學習和設計,我在完成畢業(yè)設計的過程中,加深了 PID控制器的了解,并對它的各種算法有了更深的認識,同時在設計過程中掌握了如何使用MATLAB。 在設計過程中,我盡力把各種算法弄懂,但由于時間的倉促和自身能力的有限,最終只能了解了上述中的算法,其他算法有待別的時間繼續(xù)努力,希望各位老師、同學批評指正。 ts=20。 dsys=c2d(sys,ts,39。v39。u_3=0。y_2=0。 ei=0。 error(k)=rin(k)yout(k)。abs(error(k))=40 beta=。abs(error(k))=20 beta=。 ki=。 end if u(k)=110 u(k)=110。u_2=u_1。y_1=yout(k)。 ts=。)。 u_1=。y_2=0。 um=6。 rin=30。 end if u(k)=um u(k)=um。 if M==1 if u(k)=um if error(k)0 alpha=0。 end 浙江萬里學院本科畢業(yè)論文 30 else alpha=1。u_1=u(k)。 error_1=error(k)。 xi(k)=x(3)。 sys=tf([1],[60,1],39。zoh39。)。u_4=0。y_3=0。 for k=1:1:200 time(k)=k*ts。 kp=。B=。 elseif abs(error(k))Bamp。 end u(k)=kp*error(k)+kd*(error(k)error_1)/ts+ki*f(k)*ei。u_4=u_3。 y_3=y_2。 error_1=error(k)。y_1=yout(k)。u_2=u_1。 end if u(k)=10 u(k)=10。 else f(k)=0。 M=2。ki=。 %Step Signal %Linear model yout(k)=den(2)*y_1+num(2)*u_5。error_2=0。 y_1=0。u_2=0。 [num,den]=tfdata(dsys,39。,80)。 close all。 x(2)=(error(k)error_1)/ts。y_2=y_1。 end u_3=u_2。 end elseif u(k)=um if error(k)0 alpha=1。 error(k)=rinyout(k)。 u(k)=kp*x(1)+kd*x(2)+ki*x(3)。ki=。 x=[0,0,0]39。u_3=。v39。 dsys=c2d(sys,ts,39。 error_1=error(k)。 浙江萬里學院本科畢業(yè)論文 29 y_3=y_2。u_4=u_3。 u(k)=kp*error(k)+kd*(error(k)error_1)/ts+beta*ki*ei。 end elseif M==2 beta=。abs(error(k))=30 beta=。 M=2。 yout(k)=den(2)*y_1+num(2)*u_5。 error_1=0。u_5=0。 u_1=0。)。inputdelay39。m KJ ,H190。另一方面,我嘗試了 MATLAB 語言,其功能的強大,給設計工作帶來了很大的幫助。對控制量的變化率的限制 (即執(zhí)行機構(gòu)的動作速度滯后 PID 的實際輸出控制量的變化率 )也會引起飽和 ,同時還會很容易產(chǎn)生超調(diào)。 部分仿真源程序見附錄一。采用變速積分 PID 控制算法進行階躍響應,其結(jié)果如圖 36 和圖 37 所示。采用普通 PID 算法進行離散系統(tǒng)階躍響應,其階躍響應結(jié)果如圖35 所示。積分環(huán)節(jié)不僅可以消除靜差,提高控制精度,由于根據(jù)實際情況人為設誤差的閾值,又可避免產(chǎn)生過大的超調(diào),使系統(tǒng)響應速度提高。 浙江萬里學院本科畢業(yè)論文 19 階躍響應仿真結(jié)果分析 積分分離 PID 與常規(guī) PID算法仿真分析 設被控對象為一延遲對象 80() 60 1seGs s?? ? 采樣時間為 20s,延遲時間為 4 個采樣時間,即 80s,被控對象離散化為( ) ( 2) ( 1 ) ( 2) ( 5 )y k de n y k num u k? ? ? ? ? 采用積分分離式 PID 控制器進行階躍響應,對積分分離式 PID 控制算法進行改進,采用分段積分分離的方式,即根據(jù)誤差絕對值的不同,采用不同的積分強度 [12]。 ( 1)功能強大,適用范圍廣 ( 2)編程效率高 ( 3)界面友好,用戶使用方便 ( 4)擴充能力強 ( 5)語句簡單,內(nèi)涵豐富 ( 6)強大方便的圖形功能 ( 7) MATLAB 的活筆記本功能 ( 8) MATLAB 功能齊備的自動控制軟件工具包 由于上述特點,使得 MATLAB 特別適合進行自動控制系統(tǒng)的仿真,完全采用MATLAB 函數(shù)、語句通過編程就可以建立仿真模型,進行算法仿真。經(jīng)過 Math Works 公司二十幾年的開發(fā)、擴充與不斷完善,MATLAB 已經(jīng)發(fā)展成為適合多學科、功能特強、特全的大型軟件系統(tǒng)。因此,后者調(diào)節(jié)品質(zhì)大為提高,是一種新型的 PID 控制器。 ( 3)適應能力強,一些常規(guī) PID 控制不理想的過程可以采用此算法。每次采樣后,用 [ ( )]f ek 乘以 ()ek ,再進行累加,即 10 ( ) [ ( ) ] ( )kii ju k e j f e k e k??????????? ( 37) 式中, iu 表示變速積分項的輸出值。 變速積分 PID 較好地解決了這一問題。 開 始計 算 偏 差 e ( k )計 算 比 例 及 微 分 項u ( k 1 ) ≥ U m a x ?u ( k 1 ) ≤ U m a x ?u ( k ) 0 ?u ( k ) 0 ?計 算 積 分 項計 算 控 制 量 u ( k )返 回是是否否否否是是 圖 37 抗 積分飽和 PID控制算法程序框圖 浙江萬里學院本科畢業(yè)論文 16 e 0 積 分 不 積 累e 0 積 分 積 累r ( t )U m a xy ( t )u ( t )ttOO 圖 38 抗積分飽和法抑制積分飽和示意圖 變速積分 PID 控制算法 在一般的 PID 調(diào)節(jié)算法中,由于積分系數(shù) IK 是常數(shù),所以在整個調(diào)節(jié)過程中,積分增益不變。因而,在計算 ()uk 時,先判斷 ( 1)uk?是否已超出限制值。 OεeP I D執(zhí) 行 器對象y ( k )e ( k )r ( k ) +p ( k ) u ( k ) y ( t ) 圖 36 帶死區(qū)的積分分離 PID控制器結(jié)構(gòu)圖 死區(qū)是一個非線性環(huán)節(jié),其輸出為: 0 , ( ) ( ) ( )()( ) , ( ) ( ) ( )r k y k e kpke k r k y k e k??? ? ? ??? ?? ? ??? ( 310) 死區(qū)閾值ε是一個可調(diào)參數(shù),其具 體數(shù)值可以根據(jù)實際控制對象由實驗確定。因為在 t ?? 時,工作在積分 分離區(qū),積分不累計。 積分分離算法可表示為 0( ) ( ) ( ) [ ( ) ( 1 ) ]kp i dju k K e k K e j T K e k e k? ?? ? ? ? ?? ( 35) 式中, T 為采樣時間, ? 項為積分項的開關(guān)系數(shù)。 積分飽和效應的解決方法 數(shù)字 PID 調(diào)節(jié)器中的積分飽和作用主要引起大幅度的超調(diào),使系統(tǒng)穩(wěn)定性下降 [7]。 浙江萬里學院本科畢業(yè)論文 11 數(shù) 字 P I D控 制 器執(zhí) 行