王俊偉 于新海 劉麗秋
(河套學院機電工程系)
由于PID算法的應用比較簡單而且性能分析比較容易[1,2],因此在過程控制領域應用較為成熟。 當系統(tǒng)具有線性特征時PID控制效果較好,但是對于系統(tǒng)的非線性特征,由于沒有精確的數(shù)學模型,傳統(tǒng)PID控制效果較差[3]。
單容水箱液位恒值控制采用PID算法可以滿足控制要求, 但是當液位隨著時間快速變化時,PID算法的控制精度較差,很難應用于該場合。 單容水箱液位隨動系統(tǒng)可以看作是簡單的多變量非線性系統(tǒng),多變量非線性系統(tǒng)的控制在過程控制領域占有很重要的地位[4]。 過程控制領域中大多數(shù)是非線性和難以建模的系統(tǒng),因此研究非線性的自動控制具有重要意義[5,6]。
實現(xiàn)水箱液位控制的方法有人工經驗法、閉環(huán)反饋PID算法、模糊控制及視覺檢測法等。 工程中主要利用閉環(huán)反饋PID算法。 視覺檢測法與傳感器檢測法誤差較大,應用不太成熟[7]。采用模糊控制技術對隨動系統(tǒng)進行控制, 相較于PID算法的優(yōu)勢是可實現(xiàn)非線性控制。 因此,筆者采用模糊控制實現(xiàn)單容水箱液位隨動系統(tǒng)的控制。
模糊控制是以模糊集合、語言變量、語言規(guī)則和模糊推理為基礎的一種智能控制方法,是模仿人的推理和決策的過程[8]。模糊控制原理如圖1所示,將傳感器反饋的信號進行模糊化,轉換為模糊集合(采用語言變量描述),然后作為模糊規(guī)則的輸入,經過推理運算之后得到一個模糊集合輸出,而控制輸出為真值變量,所以需要將模糊規(guī)則輸出的模糊集合進行解模糊化,最終得到真值的輸出。
圖1 模糊控制原理框圖
建立水箱液位模糊控制系統(tǒng),首先需要深入了解水箱液位的工藝流程,然后按照模糊控制步驟設計整個控制系統(tǒng)。 筆者研究的單容水箱液位工藝流程如圖2所示。
圖2 單容水箱液位工藝流程
利用液位計檢測實際液位h,當實際液位h達到液位設定值h0時注水調節(jié)閥關閉,停止注水;當實際液位h低于液位設定值h0時, 注水調節(jié)閥工作;當實際液位h高于液位設定值h0時,注水調節(jié)閥關閉,出水調節(jié)閥打開。 當實際液位h高于液位設定值h0的差值e較大時, 出水調節(jié)閥的開度較大,出水較快;當實際液位h低于液位設定值h0的差值e較大時,注水調節(jié)閥開度較大,進水較快。最終使得實際液位h穩(wěn)定在液位設定值h0[9]。
輸入變量即觀測量,輸出變量即控制量。 假設液位設定值為h0,液位的實際值為h,則液位的偏差e=h0-h。 如果h0不是恒定值而是隨時間變化的函數(shù),則e也是隨時間變化的函數(shù),此時的偏差變化率ec=de/dt,由于e和ec為輸入變量,故也稱為觀測量, 觀測量有幾個就稱為幾維模糊控制器。所以模糊系統(tǒng)是一個實值向量向一個實值標量所做的二輸入一輸出映射[10]。 本項目中的液位設定值h0=0.5sin(5t)是隨時間變化的函數(shù)。 在e的論域上定義語言變量“誤差E”,在ec的論域上定義語言變量“誤差變化率EC”,控制量u所對應的語言變量為“控制量U”。
偏差e、 偏差變化率ec和控制量u的模糊集合分別定義為E=EC=U={NB,NM,NS,ZO,PS,PM,PB}={負大,負中,負小,零,正小,正中,正大}。 為簡單起見,選擇量化因子ke和kec為1,比例因子ku為1,這樣值域和模糊論域就完全一樣。e和ec的值域 為[-0.3,0.3],輸 入 論 域 為{-0.3,-0.2,-0.1,0.0,0.1,0.2,0.3}。 控制量u的值域為[-30,30],輸出論域為{-30,-20,-10,0,10,20,30}。
模糊集合中各元素的隸屬度函數(shù)用Matlab得到。
語言變量E和EC的模糊集合中各有7個元素,所以模糊控制規(guī)則共有49條。 根據(jù)單容水箱液位隨動的特性建立的模糊控制規(guī)則見表1[11,12]。 確定模糊集合的隸屬度函數(shù)和模糊控制規(guī)則之后,就可以計算49 條模糊控制規(guī)則所對應的模糊關系。
二維模糊控制器所采用的模糊規(guī)則形式為:
表1 模糊控制規(guī)則
上述模糊規(guī)則可以總結為:IF A and B THEN C的形式,其中A和B為輸入論域上的模糊子集。
確定上述規(guī)則的模糊關系Rl(l=1,2,…,49),共49條規(guī)則對應49種模糊關系,總模糊關系矩陣R=R1∪R2∪…∪R49。 總的控制量U=(A×B) R,由此可以確定輸出的模糊集合U,將U解模糊化得到最終控制量u的輸出。
上述模糊推理得到的控制量是一個模糊集合, 而不是真正的物理量的實際精確值輸出,將輸出的模糊集合控制量轉換為物理上的精確值的輸出即解模糊,因為只有物理上的精確值才能驅動執(zhí)行器,所以需要解模糊。 解模糊的典型方法有3種:最大隸屬度法[13]、重心法和加權平均法,本項目采用最大隸屬度法。
由Matlab得到的模糊推理系統(tǒng)和模糊集合隸屬度函數(shù)如圖3~6所示。
當模糊集合的隸屬度函數(shù)和模糊規(guī)則確定之后,整個模糊推理系統(tǒng)建立完畢。但要實現(xiàn)模糊控制系統(tǒng)的仿真, 需要將建立的模糊推理系統(tǒng)嵌套到模糊控制器中。嵌套到模糊控制器的步驟如下:
圖3 模糊推理系統(tǒng)
圖4 e的隸屬度函數(shù)
圖5 ec的隸屬度函數(shù)
圖6 u的隸屬度函數(shù)
a. 生成模糊推理系統(tǒng)的FIS文件;
b. 將FIS文件送入Matlab的工作空間;
c. 將工作空間中的FIS文件導入模糊控制器[14]。
筆者建立的整個模糊控制系統(tǒng)如圖7所示。
將生成的FIS文件導入圖7所示的模糊控制器,得到圖8所示的跟蹤效果圖。 可以看出,筆者設計的模糊控制系統(tǒng)實現(xiàn)了單容水箱液位隨動的跟蹤,跟蹤效果較好,說明模糊控制可以應用于非線性控制和系統(tǒng)模型不確定的場合。 但也有缺點,即隨著輸入變量的增加,控制規(guī)則將增加,實現(xiàn)較困難。
圖7 模糊控制器
圖8 單容水箱液位隨動跟蹤效果
從仿真結果可知,模糊控制系統(tǒng)對單容水箱液位隨動的跟蹤效果較為理想, 相比于傳統(tǒng)PID控制方法的恒值控制,模糊控制系統(tǒng)不僅能實現(xiàn)恒值控制,還可以實現(xiàn)非線性控制。 但是在曲線的波峰和波谷位置實際液位的跟蹤效果不是很理想,還需要進一步改進。