基於微控制器的液位模糊控制器設計論文

基於微控制器的液位模糊控制器設計論文

  摘 要:液位控制由於其應用極其普遍,種類繁多,其中不乏一些大型的複雜系統,譬如在石油化工等工業生產中。它主要有以下幾個特點:

  1、時滯性很大。在大型、複雜的液位控制系統中,當改變進出容器的液體流量來控制液位時,控制效果在較長的時間後才能得到體現,這會使得最後的穩態誤差較大,液位在期望值附近波動。

  2,時變性。液位控制一般是透過控制液體流入量的大小來控制液位的,流出量是根據後續工藝生產的需求而調節,這種需求的數量和速度是在不斷變化的。

  3,非線性。容器內液體流出量不僅隨後續工藝生產需求變化,即使在控制閥門保持不變的情況下,實際的流出量也隨著液位高度的變化而發生一種非線性的變化。這幾個特點,都嚴重影響PID控制的效果,當實際生產對控制有較高的效能指標要求時,就需要將智慧控制方法引入到液位控制系統中來。

  關鍵詞:模糊控制;液位;PID;微控制器

  1 模糊控制的基本原理

  模糊控制屬於智慧控制的範疇,它是以模糊數學和模糊邏輯為理論基礎、模仿人的思維方式而統籌考慮的一種控制方式。 它是以模糊集合論、模糊語言變數和模糊邏輯推理為基礎的一種計算機數字控制。模糊控制模仿人的思維方式,計算控制量時並不需要引數的精確量,而是以引數的模糊資訊為基礎,透過模糊推理得到控制量的模糊形式,然後再經過反模糊化處理輸出具體的控制量。

  模糊控制器的'設計的基本原理

  1. 在取樣時刻,取樣系統的輸出值,然後根據所選擇的系統的輸入變數來進行計算,得到輸入變數的具體值。一般系統通常選擇誤差及誤差的變化情況作為輸入變數。

  2. 將輸入變數的精確值變為模糊量。當然,在這之前需要先確定模糊變數的基本論域、模糊子集論域、模糊詞集及隸屬函式。系統中輸入變數的實際變化範圍稱為變數的基本論域,對於模糊控制輸入所要求的變化範圍稱為它們的模糊子集論域。模糊子集論域的確定和下一步的模糊推理中需要的模糊值有關。模糊值可用模糊詞集來表示,人們對數值的模糊表示一般可用大、中、小加以區別,再加上正負模糊詞集就可表示為:

  {負 大 , 負中,負小,零,正小,正中,正大}

  一般系統的輸入變數的模糊子集論域所含的元素個數應為詞集總數的兩倍以上,這樣才能確保模糊詞集能較好地覆蓋

  模糊子集論域,避免出現失控現象。針對上面選用的模糊詞集,模糊子集論域可選擇為

  {-6 , -5 ,-4,-3,-2,一1,0 , 1,2 ,3 ,4 ,5 ,6 }

  對於一個模糊控制系統,它的控制器輸入變數的實際範圍一般不會正好和模糊子集論域一致,這時就需要進行轉化。假如基本論域為[a. b],模糊子集論域為[m, n],則將一個精確輸入量x轉化到模糊子集論域中的變數Y是透過以下公式來實現的。

  y=(n-m)*[x-(b-a)/2]/(b-a)

  模糊 子 集 論域和模糊詞集之間是透過隸屬函式來聯絡的。模糊變數的隸屬函式就和普通變數的特徵函式一樣,但它的取值範圍並不是單純的0或1,而是在[0, 1]之間連續變化。隸屬函式的形狀常採用梯形、三角形、鐘形、高斯形等。在實際應用中,為方便起見,採用三角形的較多。

  3. 根據上一步得到的輸入變數(模糊量)及模糊控制規則,按模糊推理合成規則計算控制量(模糊量)。模糊控制規則是根據操作者的經驗或專家的知識,用if, then描述的一組條件語句。

  4. 控制量的模糊量轉化為精確量。上一步雖然透過模糊推理得到了控制量,但它是模糊形式的,而真正的執行機構不能接受模糊量,只能接受精確量,所以必須把控制量由模糊形式轉化為精確形式,這一步也叫做解模糊化。

  2 模糊控制器的設計過程

  2.1模糊控制器的結構設計

  模糊控制器的結構設計是指確定模糊控制器的輸入變數和輸出變數。模糊控制器輸入變數的個數稱為模糊控制器的維數,目前廣泛採用的均為二維模糊控制器.在此我們也選擇這一結構形式。我們設計的是液位模糊控制器,就選擇液位的

  誤差和誤差的變化作為模糊控制器的輸入變數,分別記作E, Ec。模糊控制器的輸出應該是用來控制液位的,液位實際上就是受流入量和流出量的影響,而流出量是根據後續工藝不停的變化,是不可控的。所以模糊控制器的輸出就只有一個,作為控制流入量執行機構的控制量,記作U。對於模糊控制器的輸出,可以有兩種形式,一種是絕對的控制量輸出,另一種是增量方式輸出。在本次設計的模糊控制器中,我們選擇了絕對值輸出方式 。

  2.2模糊控制規則的設計

  控制規則的設計一般包括三部分內容:選擇描述輸入輸出變數的詞集,定義各模糊變數的模糊子集和建立模糊控制器的控制規則。下面就分別來進行說明:

  1.選擇描述輸入、輸出變數的詞集

  對於液位誤差、誤差變化率及控制量我們選用相同的模糊詞集,都用自然語言大、中、小來進行描述,將大、中、小再加上正、負兩個方向並考慮變數的零狀態,共有七個詞彙,即

  {負 大 , 負 中 ,負小,零,正小,正中,正大}

  為敘述方便,用英文字頭縮寫表示為

  {N B ,N M , N S ,Z E, PS, PM,P B}

  其中,N=Negative, P=Positive, B=Big, M=Medium, S=Small, ZE=Zero 。

  2.定義各模糊變數的模糊子集

  定義一個模糊子集,實際上就是要確定模糊子集隸屬函式曲線的形狀。對於輸入變數誤差和誤差變化率,我們選用的模糊子集論域和隸屬函式曲線都完全一致,所以在此就只針對誤差的模糊子集的確定來進行說明。誤差的模糊子集論域取[-6,6 ]之間,然後離散化,只取整數,所以它的模糊子集論域可表示為

  {-6 ,-5 ,-4,-3,-2,-1,0 ,1 ,2 ,3 ,4 ,5 ,6 }

  其中有13個元素,而模糊詞集中有7個元素,基本滿足了二倍的關係,可以保證不會出現失控現象。為了計算方便,將隸屬函式曲線都選為三角形形式,而且根據經驗,在靠近0附近,三角形的形狀選的窄一些,這樣有利於提高靈敏度,抑制超調。在遠離0的地方,三角形的形狀選的寬一些,因為這時候誤差還很大,不會引起超調。至於三角形具體形狀及位置的有關引數,是根據經驗初步確定的,在控制器除錯的時候還需要對這些進行反覆的修改。

最近訪問