李定軍
關(guān)鍵詞: 模糊控制;LabVIEW;NI DAQ設(shè)備
自動控制理論經(jīng)過一個多世紀的發(fā)展,正由經(jīng)典控制理論,現(xiàn)代控制理論向智能控制理論發(fā)展。人工智能包括推理,學習和聯(lián)想,是采用非數(shù)學式的方式,將人的思維模型化,并通過計算機來模仿。目前計算機已充分體現(xiàn)了人類左腦的邏輯推理功能,正向右腦的模糊處理方向發(fā)展。模糊控制作為近代控制理論中一種基于語言規(guī)則與模糊推理的高級控制策略和新穎技術(shù),是智能控制的一個重要分支,近來發(fā)展迅速,應(yīng)用廣泛,效果顯著,引人關(guān)注。
什么是模糊
在我們?nèi)粘I钪校?jīng)常有一些概念沒有固定的標準,不能簡單地用對或錯,真或假來評判,而要用到一些不精確的詞句來描述,比如,年輕、好、漂亮。這些概念會因為判斷對象變化而改變判斷標準,所以是模糊的。在人們的工作經(jīng)驗中,往往也存在了許多模糊的東西。例如,煉鋼時需要的鋼水顏色、沸騰情況等模糊信息。1965年美國加州大學L.A.Zadeh教授最早提出了模糊這一概念,并用數(shù)學方式進行分析。
通常,對于一個論域E中討論的集合A={a,b,c},對于論域中的任意元素x,可用特征函數(shù)表示是否屬于A:
(式1)
式1用1和0來表示元素屬于集合的真假,然而若是一個模糊的集合,比如說衣服是否漂亮,里面的元素a,b,c這3件衣服單純用漂不漂亮表示顯然不能更具體表征元素的性質(zhì)。模糊集合把特征函數(shù)的0和1這兩個值,擴展到0到1之間的整個區(qū)間中,以隸屬度μA(0≤μA≤1)來表示元素屬于集合A的程度,比如衣服漂亮的程度。這樣,設(shè)三件衣服的漂亮程度分別為0.3,0.8和0.5,該模糊集合A可表示為A:{(a,0.3),(b,0.8),(c,0.5)}。而隸屬度函數(shù)可寫成:
(式2)
可見模糊集合在多數(shù)情況下更能反應(yīng)元素的特性,特征函數(shù)實際上就是隸屬度函數(shù)的一個特例。
兩個元素之間的某種聯(lián)系,可以用關(guān)系R來表示,通常R用二元邏輯1和0表示元素之間是否存在此關(guān)系。比如,a對b存在指定關(guān)系R,則稱為aRb,否則為 。關(guān)系有時也可以模糊表示,當元素a對于b不完全滿足某指定關(guān)系R,卻也沒有完全不滿足時,它們之間的關(guān)系可以用0到1區(qū)間的某一值表示,即是一種隸屬度的表示法。對于論域E中的兩個集合A={a,b};B={c,d},指定一種關(guān)系R,它們所有元素之間的關(guān)系可以用關(guān)系矩陣表示:
。如果集合是模糊集合,關(guān)系更加模糊化,還需考慮元素對所在集合的隸屬度。集合 A對應(yīng)到B的關(guān)系表達式為A○R=B,通過線性代數(shù)和模糊數(shù)學理論可以根據(jù)集合A,B求出關(guān)系R。
模糊控制
隨著科技的發(fā)展,現(xiàn)場被控對象和控制條件變得復雜,考慮因素增多,而對于控制性能要求卻逐漸提高。通常復雜的系統(tǒng)很難對控制量設(shè)計精確的算法,想要絕對精確變得不可能,需要在精確和復雜間找到平衡。模糊控制就是一種平衡的控制手段,在非線性復雜系統(tǒng)中發(fā)展很快。
通常一個模糊控制系統(tǒng)主要由被控對象,執(zhí)行機構(gòu),模糊控制器,輸入輸出接口和測量裝置組成(圖1)。
圖1 模糊控制系統(tǒng)
其中的核心部分模糊控制器由輸入模糊化接口,數(shù)據(jù)庫,規(guī)則庫,推理機和輸出接模糊接口五部分組成(圖2)。
圖2 模糊控制器
根據(jù)實際需要,模糊控制器可以有幾個輸入和輸出。首先是模糊化,輸入的信號和需要輸出的信號根據(jù)專家經(jīng)驗劃分為語言描述的模糊子集,并將其論域分級離散化,最后把模糊子集中的元素對應(yīng)到量化等級上,可畫出隸屬度函數(shù)。這些輸入輸出信號的隸屬度函數(shù)存入推理機中的數(shù)據(jù)庫,而規(guī)則庫里存放的是基于專家知識或熟練人員長期經(jīng)驗形成的直覺推理的語言規(guī)則表達式。這些模糊規(guī)則由一系列關(guān)聯(lián)詞連接而成,如if—then;or等,這些規(guī)則實際說明了數(shù)據(jù)庫中輸入和輸出這兩組模糊子集的關(guān)系R。推理機通過模糊數(shù)學的算法解模糊方程,可以算出各種輸入狀態(tài)下對應(yīng)的輸出響應(yīng)值。這樣解模糊并輸出實際控制信號或控制等級,用以作用于被控對象。
使用NI DAQ設(shè)備和LabVIEW構(gòu)造模糊控制系統(tǒng)
美國國家儀器公司(簡稱NI)提供了在LabVIEW中使用的模糊控制工具包Fuzzy Logic,可幫助工程師結(jié)合NI數(shù)據(jù)采集設(shè)備快速有效地搭建一個模糊控制器,并省去很多硬件邏輯電路。
安裝NI光盤Tookit Software中的LabVIEW PID Control Tookit,即可在LabVIEW中生成該工具包。安裝完成后打開一個新的VI,右擊程序框圖,在Functions Palette上選擇Control Design&Simulation,即可看到Fuzzy Logic工具包,該工具包由3個VI組成(圖3)。安裝工具包后,可以使用LabVIEW創(chuàng)建.fc格式的文件。.fc文件是NI自定義的一種文件格式,用于仿真模糊控制器推理機中的知識庫。
圖3 Fuzzy Logic工具包
創(chuàng)建一個.fc文件步驟如下:打開一個新的VI,在任務(wù)欄依次點擊Tools——Control Design and Simulation——Fuzzy Logic Controller Design…,接著在彈出的 Fuzzy Logic Controller Design對話框的狀態(tài)欄上點擊File——New,即打開了一個新的.fc文件(圖4)。
圖4 Fuzzy Logic Controller Design
接著彈出一個Fuzzy Set Editor對話框(圖5),這是仿真模糊推理器中的數(shù)據(jù)庫。工程師可根據(jù)專家經(jīng)驗繪制出輸入和輸出量的隸屬函數(shù)圖,繪制完成后點擊Quit;接著彈出Rulebase Editor對話框(圖6),這是仿真模糊推理器的規(guī)則庫。工程師根據(jù)實際情況將制定好的規(guī)則寫入,完成后點擊Quit;最后點擊File——Save,給出保存位置和文件名,一個.fc文件就創(chuàng)建完成了。
圖5 Fuzzy Set Editor
圖6 Rulebase Editor
.fc文件使用工具包Fuzzy Logic中的Load Fuzzy Controller.vi加載,該VI加載后將數(shù)據(jù)傳送到Fuzzy Controller.vi中。Fuzzy Controller.vi接收輸入信號(最多可接受4維輸入),根據(jù).fc文件進行模糊推理,并計算出合適的輸出信號值(圖7)。工具包中的另一個VI是Test Fuzzy Controller.vi,它可以通過手動輸入算出輸出響應(yīng)值,已到達調(diào)試.fc文件中規(guī)則和隸屬度函數(shù)的目的。
構(gòu)建完知識庫后,LabVIEW會結(jié)合計算機代替硬件電路進行模糊推理計算,節(jié)約了成本。模糊控制的精度和輸入輸出的信號是否精確也密切相關(guān)。硬件方面,NI的數(shù)據(jù)采集(DAQ)卡不但和LabVIEW兼容性好,性能穩(wěn)定,而且選擇范圍很廣,工程師總是可以根據(jù)自己的精度等需求選擇到合適的采集卡。
圖7 模糊控制器軟件部分
卓越的性能,精確的采集,如果需要還可以進行軟硬件的信號調(diào)理。準確的信號送到軟件搭建的模糊控制器系統(tǒng),算出輸出響應(yīng)值,再由NI DAQ設(shè)備準確地輸出信號,一個強大的模糊控制器就這樣完成了。