比例-積分-微分(PID)控制占當今控制和自動化應用的90%以上,主要是因為它是一種有效且簡單的解決方案。雖然PID算法最初用于線性、時不變系統(tǒng),但現(xiàn)在已經發(fā)展到控制具有復雜動力學的系統(tǒng)。在現(xiàn)實世界中,所有系統(tǒng)都具有非線性組件,因此在使用PID等經典反饋控制時存在一些挑戰(zhàn)。借助增益調度和級聯(lián)PID等方法,能夠使用相同的PID算法控制非線性系統(tǒng)。
1. 經典控制
最早反饋控制用于機械系統(tǒng)的控制。系統(tǒng)使用機械手段(例如浮球閥)來控制溫度,速度和液位。現(xiàn)代基于計算機的控制系統(tǒng)通過進行傳感器測量,將其與所需的設定值進行比較,然后根據(jù)該差異調整控制輸出來利用反饋。例如,可以通過測量當前溫度,將其與所需溫度值進行比較,然后使用加熱器或風扇將溫度移近所需的設定值來完成控制溫度。然后,困難在于弄清楚調整多少控制輸出以實現(xiàn)最佳響應。加熱器應該完全打開還是只打開一部分?基本的PID控制器將單個輸入與設定值進行比較,并計算單個輸出值以控制系統(tǒng),并且算法假設響應將是線性的,不會隨時間變化。
2. 增益調度
在非線性系統(tǒng)中使用PID的一種方法是通過增益調度技術。人們在PID控制中遇到性能問題的最常見原因是P、I和D的增益參數(shù)不正確。對于非線性系統(tǒng),最佳參數(shù)可能會發(fā)生變化,具體取決于系統(tǒng)所處的“狀態(tài)”。例如,許多系統(tǒng)在預熱階段表現(xiàn)出不同的特性,與運行一段時間后特性不同。另一個例子是,一旦達到某個設定點,就使用不同的增益參數(shù),因為一旦處于穩(wěn)態(tài),系統(tǒng)就會做出不同的響應。增益調度是根據(jù)系統(tǒng)狀態(tài)修改P、I和D增益參數(shù)的過程。這些狀態(tài)可以通過某個持續(xù)時間來定義,甚至可以通過使用系統(tǒng)輸入來定義。這種方法最適合具有可預測動態(tài)變化的系統(tǒng),以便可以計算和應用預定增益。增益調度能夠通過將過程劃分為多個近似線性特征的部分來控制。然后,將每個部分調整為一組不同的參數(shù),以最佳方式控制系統(tǒng)。使用LabVIEW中的PID工具包,這非常容易實現(xiàn)。
圖1:LabVIEW中的PID增益調度
圖1顯示了如何使用PID增益Schedule.vi,根據(jù)設定值和測量值之間的電流差設置PID增益參數(shù)。在本例中,正在測量溫度傳感器,將溫度傳感器與用戶定義的設定值進行比較。計算兩個值之間的差值(也稱為誤差項),發(fā)送到增益調度程序。調度程序本身只是一組PID增益,這些增益根據(jù)輸入進行索引。當溫度接近設定值時,可以使用一組不同的增益參數(shù)來實現(xiàn)更好的控制響應。有許多不同的方法可以實現(xiàn)增益調度,一旦輸入穩(wěn)定在接近設定值附近,這種方法有利于通過增加積分增益或I項來減少穩(wěn)態(tài)誤差。
3. 避免整體清盤
PID控制器的積分參數(shù)連續(xù)對系統(tǒng)的誤差項求和,這對于減少穩(wěn)態(tài)誤差非常有效。不斷積分改誤差的一個副作用是“清盤”的可能性。這是當累積誤差導致測量信號超過基于控制器I項的所需設定值時。這也帶來了長時間的延誤和其他不穩(wěn)定的影響。根據(jù)應用的不同,由于材料損失或周圍硬件損壞,代價可能很昂貴,甚至很危險。盡管如此,當試圖達到特定的設定點時,積分項使超調幾乎不可避免。減少積分上鏈影響的一種技術是在系統(tǒng)開始穩(wěn)定在設定點附近后重置累積誤差。通過重置PID功能,仍然可以獲得使用積分項減少穩(wěn)態(tài)誤差的好處,但不會導致大量過沖。這里是一個如何在LabVIEW中實現(xiàn)的示例。
圖2:通過復位PID.避免整體清盤
與增益調度示例類似,圖2顯示了一個溫度傳感器被讀取,然后與用戶定義的設定值進行比較。計算誤差項,一旦在某個值(在本例中為0.25)內,PID功能就會復位,然后從該點開始僅積分穩(wěn)態(tài)誤差。
4. 非SISO系統(tǒng)
雖然PID算法適用于單輸入單輸出(SISO)系統(tǒng),但通過軟件定制,在多輸入多輸出(MIMO)系統(tǒng)中使用此控制器的方法有很多。
o不同輸出的條件結構
o并聯(lián)回路PID
o多個PID
圖3:單輸入多輸出(SIMO)示例
在圖3中,有一個來自溫度傳感器的輸入,然后是兩個控制器輸出或執(zhí)行器,用于改變溫度。PID可以輸出正值和負值,因此,示例使用條件結構來決定何時使用每個執(zhí)行器。假設輸出通道1連接到加熱器,輸出通道2連接到風扇以冷卻系統(tǒng)。如果PID輸出值為正,那么希望通過將輸出值寫入加熱器,并通過將零寫入通道2來關閉風扇,來提高溫度。但是,如果PID輸出值為負,則假情況結構將輸出值寫入風扇,將零寫入輸出通道1。這是實現(xiàn)具有多個輸出的PID的一種非常常見的方法。
5. 級聯(lián)PID
圖4:級聯(lián)PID示例
在本例中,我們將第一個PID函數(shù)的輸出發(fā)送到第二個PID函數(shù)的輸入中,從而減慢響應時間并使輸出平滑到執(zhí)行器。實現(xiàn)級聯(lián)PID的更常用方法是使用來自系統(tǒng)的兩個輸入,例如提供有關位置和速度的信息。這種多輸入、單輸出(MISO)系統(tǒng)在運動或位置控制應用中非常常見。
圖5:位置速度級聯(lián)PID示例
將位置編碼器與所需的設定值進行比較,然后計算出的輸出成為速度控制的設定值。當系統(tǒng)具有與速度成比例的固有延遲時,這一點尤其適用。例如,摩擦會導致系統(tǒng)滯后,具體取決于位置變化的速率。
6. 帶前饋控制的PID
干擾解耦是基本PID控制的一種變體,有助于對干擾響應緩慢的系統(tǒng)。如果可以測量干擾,則可以立即調整補償器輸出以做出響應。例如,如果風扇將冷空氣引入溫度室,則可以立即增加加熱器輸出,而不是首先等待溫度傳感器附近的溫度下降。
圖6:帶前饋控制的PID
在上圖中,測量干擾傳感器,乘以一些用戶定義的增益值,然后添加到PID輸出值中。如果干擾增加,補償器輸出通道將立即增加,以保持對系統(tǒng)的控制。這種方法并不總是必要的,因為增加傳統(tǒng)PID補償器的比例增益也會改善干擾抑制,并且不需要測量干擾。
這是LabVIEW的一個功能介紹,更多的使用方法與開發(fā)案例,歡迎登錄官網,了解更多信息。
審核編輯 黃宇
-
傳感器
+關注
關注
2541文章
49578瀏覽量
745891 -
LabVIEW
+關注
關注
1947文章
3628瀏覽量
319732 -
PID
+關注
關注
35文章
1463瀏覽量
84617
發(fā)布評論請先 登錄
相關推薦
評論