【正文】
//E[k-2]項 //存儲誤差,用于下次計算 sptrPrevError = sptrLastError。 //Error[1] sptrPrevError = 0。 //微分常數(shù) Derivative Const int LastError。 由(26)可以看出,如果計算機控制系統(tǒng)采用恒定的采樣周期T,一旦確定A、B、C,只要使用前后三次測量的偏差值,就可以由(26)求出控制量。) { // Mock Up of PID Processing rIn = sensor ()。 // PID Response (Output) double rIn。 // 積分 dError = Error ppLastError。 // 積分常數(shù)Integral Const double Derivative。如果采樣周期足夠小,則(24)的近似計算可以獲得足夠精確的結(jié)果,離散控制過程與連續(xù)過程十分接近。(21) 在時域的傳遞函數(shù)表達式參考資料1)MixedSignal Control Circuits Use Microcontroller for Flexibility in Implementing PID Algorithms,By Eamon Neary (圖1,表1)2. 記錄下振蕩時的P部分的臨界增益Kc,和振蕩周期Pc,代到下表中計算出KP,Ti, Td。這樣,即使誤差很小,積分項也會隨著時間的增加而加大,它推動控制器的輸出增大使穩(wěn)態(tài)誤差進一步減少,直到等于零。自動控制系統(tǒng)的調(diào)節(jié)單元將來自變送器的測量值與給定值相比較后產(chǎn)生的偏差進行比例、積分、微分(PID)運算,并輸出統(tǒng)一標準信號,去控制執(zhí)行機構(gòu)的動作,以實現(xiàn)對溫度、壓力、流量、也為及其他工藝參數(shù)的自動控制。比例+積分(PI)控制器比例放大系數(shù)的加大,會引起系統(tǒng)的不穩(wěn)定。解決辦法是引入微分(D)控制,即在誤差很大的時候,抑制誤差的作用也很大;在誤差接近零時,抑制誤差的作用也應該是零。最好的尋找PID參數(shù)的辦法是從系統(tǒng)的數(shù)學模型出發(fā),從想要的反應來計算參數(shù)。 自動測試方法:為了確定過程的臨界周期Pc和臨界增益Kc,控制器會臨時使它的PID算法失效,取而代之的是一個ON/OFF的繼電器來讓過程變?yōu)檎袷幍?。位置式PID控制算法的簡化示意圖 由于全量輸出,所以每次輸出均與過去狀態(tài)有關(guān),計算時要對e(k)(k=0,1,…n)進行累加,工作量大。 =====================================================================================================*/ include include //C語言中memset函數(shù)頭文件/*==================================================================================================== PID Function The PID (比例、積分、微分) function is used in mainly control applications. PIDCalc performs one iteration of the PID algorithm. While the PID function works, main is just a dummy program showing a typical usage. ============================================================================================