朱麗娟
(鹽城師范學(xué)院 物理科學(xué)與電子技術(shù)學(xué)院,江蘇 鹽城 224002)
隨著控制過程復(fù)雜性的提高,控制理論的應(yīng)用日益廣泛。但是它的實(shí)際應(yīng)用不能脫離被控對象的數(shù)學(xué)模型。然而在多數(shù)情況下,被控對象的數(shù)學(xué)模型是不知道的,或在正常運(yùn)行期間模型的參數(shù)可能發(fā)生變化,因此利用控制理論去解決實(shí)際問題時(shí),首先需要建立被控對象的數(shù)學(xué)模型,這是控制理論能否成功地用于實(shí)際的關(guān)鍵之一[1-3]。
系統(tǒng)的液位控制是當(dāng)今工業(yè)生產(chǎn)過程中非常重要的問題,直接關(guān)系到系統(tǒng)經(jīng)濟(jì)、安全運(yùn)行。常規(guī) PID控制算法對于大部分工業(yè)過程的被控對象可取得較好的控制效果,但是對于液位控制的復(fù)雜性、變量的關(guān)聯(lián)性、滯后問題,在控制液位時(shí)存在曲線振蕩和精度低的缺點(diǎn)[4,5],而神經(jīng)網(wǎng)絡(luò)具有并行處理、聯(lián)想記憶、分布式知識存儲、魯棒性強(qiáng)等特性,尤其是它的自組織、自適應(yīng)、自學(xué)習(xí)功能,將神經(jīng)網(wǎng)絡(luò)應(yīng)用于非線性系統(tǒng)控制中,可以不受非線性模型的限制,便于給出工程上易于實(shí)現(xiàn)的學(xué)習(xí)算法。本文設(shè)計(jì)中以過程控制實(shí)驗(yàn)室中三容水箱控制系統(tǒng)為對象,采用BP神經(jīng)網(wǎng)絡(luò)的水箱液位控制算法,設(shè)計(jì)了一種基于BP神經(jīng)網(wǎng)絡(luò)液位控制系統(tǒng)[6,7]。
本文研究的三容水箱液位控制系統(tǒng)是 A3000過程控制實(shí)驗(yàn)系統(tǒng)裝置,采用SIEMENS的MICROMASTER 420型變頻器,LWGY型渦輪流量計(jì),ALT-P型壓力變送器,通過Labview 8.2應(yīng)用軟件進(jìn)行動(dòng)態(tài)特性測試實(shí)驗(yàn)操作,均采用1~5 V DC信號范圍。自進(jìn)水管的水通過變頻器送至1號水箱,流經(jīng)2號水箱最后到3號水箱,最終流入儲水箱。采用開環(huán)系統(tǒng),通過改變1號水箱的流量看相應(yīng)的3號水箱液位變化,而流量的改變是通過變頻器來實(shí)現(xiàn)的,所以進(jìn)水流量作為輸入量F,輸出量為3號水箱液位h,如圖1所示。
在圖1中,該三容水箱比單容多了兩個(gè),產(chǎn)生了容量滯后,由于滯后的存在,當(dāng)進(jìn)水流量改變時(shí),3號水箱的液位要經(jīng)過一段時(shí)間才會發(fā)生變化,這樣將會導(dǎo)致對擾動(dòng)不能適時(shí)反應(yīng),也必然會導(dǎo)致較明顯的超調(diào)量和超調(diào)時(shí)間,系統(tǒng)對周期性擾動(dòng)更加敏感,很容易變得不穩(wěn)定,從而造成數(shù)據(jù)采集精度的降低,影響控制精度[8]。
圖1 三容水箱液位系統(tǒng)示意圖
圖2 Labview流程設(shè)計(jì)信號圖
采用LabVIEW8.2軟件平臺產(chǎn)生[-1, 1]的白噪聲,如圖2所示。
采樣頻率為1 S,變頻器的信號范圍是1~5 V DC,送至For循環(huán),經(jīng)過研華PCI1711接口卡的D/A通道送給變頻器,信號記錄到指定目錄路徑下的Excel文件ywkz.xls中。
液位變送器的信號經(jīng)接口卡的 A/D通道信號也記錄到Excel文件ywkz.xls中。
BP網(wǎng)絡(luò)(Back propagation NN)是一種單向傳播的多層前向網(wǎng)絡(luò),如圖3所示,網(wǎng)絡(luò)除輸入輸出節(jié)點(diǎn)外,還有一層或多層的隱層節(jié)點(diǎn),同層節(jié)點(diǎn)間沒有任何耦合。輸入信號從輸入層節(jié)點(diǎn)依次傳過隱層節(jié)點(diǎn),最后傳到輸出節(jié)點(diǎn)。每層節(jié)點(diǎn)輸出只影響下一層節(jié)點(diǎn)的輸出。其節(jié)點(diǎn)傳遞函數(shù)通常為Sigmoid型,但在輸出層有時(shí)為線性[9]。
圖3 BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖
水箱液位控制系統(tǒng)作為非線性離散時(shí)間系統(tǒng),通過分析只需保持現(xiàn)時(shí)以前3個(gè)時(shí)刻的輸入輸出即可,所以取(τ- 1 )~(τ-3)時(shí)刻的F0和H3作為網(wǎng)絡(luò)的輸入,即BP網(wǎng)絡(luò)輸入層,即l=6,輸出層節(jié)點(diǎn)數(shù)為現(xiàn)時(shí)刻輸出流量,即輸出節(jié)點(diǎn)為n=1。
隱含層節(jié)點(diǎn)個(gè)數(shù)的設(shè)置取決于訓(xùn)練樣本數(shù)的多少、樣本噪聲的大小以及樣本中蘊(yùn)涵規(guī)律的復(fù)雜程度。文中采用試湊法,根據(jù)式(1)
確定初始值,對本系統(tǒng),
所以隱含層節(jié)點(diǎn)數(shù)m要大于4,經(jīng)過試湊訓(xùn)練發(fā)現(xiàn)選擇m=16時(shí)訓(xùn)練的精度最高。
BP算法把一組樣本的輸入輸出問題轉(zhuǎn)化為一個(gè)非線性優(yōu)化問題。用迭代運(yùn)算求解網(wǎng)絡(luò)權(quán)值相當(dāng)于學(xué)習(xí)記憶問題,加入隱含結(jié)點(diǎn)使優(yōu)化問題的可調(diào)整參數(shù)增加,因此可得到更精確的解。
BP網(wǎng)絡(luò)的權(quán)值調(diào)整使用的是反向傳播的學(xué)習(xí)算法,標(biāo)準(zhǔn)的BP算法使用最速下降靜態(tài)尋優(yōu)算法。在修正權(quán)值時(shí),學(xué)習(xí)過程易發(fā)生震蕩,且收斂很慢;而Levenberg-Marquardt優(yōu)化算法兼顧最速下降法和高斯-牛頓迭代的長處,既穩(wěn)定又快速,學(xué)習(xí)時(shí)間較最速下降法短得多,經(jīng)大量仿真比較,采用訓(xùn)練效果較好的LM算法[10]。
前 10 S訓(xùn)練樣本數(shù)據(jù)如表 1所示。將原始數(shù)據(jù)ywkz.xls中分別按延時(shí)1、2、3秒的輸入輸出數(shù)據(jù)對作為輸入,取前500秒的數(shù)據(jù)放在xlyb.xls作為訓(xùn)練樣本;把測量剩下的100秒的數(shù)據(jù)對再按延時(shí)1、2、3秒放在csyb.xls作為測試樣本。
表1 訓(xùn)練樣本數(shù)據(jù)
樣本數(shù)據(jù)如果直接用于神經(jīng)網(wǎng)絡(luò)訓(xùn)練,則可能導(dǎo)致網(wǎng)絡(luò)不收斂,從而影響網(wǎng)絡(luò)的性能。為了防止輸入數(shù)據(jù)太大,使神經(jīng)元迅速飽和而麻痹,因此必須要對樣本數(shù)據(jù)進(jìn)行預(yù)處理(歸一化處理),本文的樣本數(shù)據(jù)歸一化按式(2)進(jìn)行:
其中,ix表示輸入或輸出數(shù)據(jù),這樣就可以保證所有樣本數(shù)據(jù)的絕對值波動(dòng)范圍在(0,1]之間,而不會影響網(wǎng)絡(luò)的收斂問題。
利用 Matlab7.0對應(yīng)的神經(jīng)網(wǎng)絡(luò)工具箱提供的newff,train函數(shù)設(shè)計(jì)M程序來建立和訓(xùn)練3層的BP網(wǎng)絡(luò)水箱液位控制模型。將F[t-1]- F[t-3]、H[t-1]- H[t-3]作為輸入樣本,對應(yīng)現(xiàn)時(shí)刻 H[t]作為輸出樣本輸入到 BP神經(jīng)網(wǎng)絡(luò)中。通過大量仿真分析比較得出隱含層神經(jīng)元為16個(gè)時(shí),水箱液位的BP神經(jīng)網(wǎng)絡(luò)模型為6-16-1結(jié)構(gòu)。主要語句如下:
利用已訓(xùn)練好神經(jīng)網(wǎng)絡(luò)對樣本數(shù)據(jù)仿真結(jié)果如下:
網(wǎng)絡(luò)訓(xùn)練過程的誤差變化曲線如圖4所示,仿真測試輸出曲線如圖5所示。
由圖4訓(xùn)練誤差曲線可知,LM算法訓(xùn)練到4次就停止,達(dá)到目標(biāo)精度要求。由圖5的測試樣本仿真響應(yīng)曲線可以看出,LM算法的BP網(wǎng)絡(luò)模型已經(jīng)能很好地?cái)M合系統(tǒng)的響應(yīng)輸出,且具有較高控制精度。結(jié)果表明,對于時(shí)滯非線性的三容水箱液位系統(tǒng),采用LM算法的BP網(wǎng)絡(luò)水箱液位控制模型能有效的控制水箱液位,并且具有較高精度。
圖4 BP算法訓(xùn)練誤差性能曲線
圖5 LM算法歸一化均方誤差測試輸出曲線
由于三容水箱液位過程控制系統(tǒng)中,水箱液體流量與水箱液位高度之間存在著復(fù)雜、滯后的非線性映射關(guān)系,通過設(shè)計(jì)并借助Labview平臺采集數(shù)據(jù),結(jié)合Matlab工具箱函數(shù),搭建BP神經(jīng)網(wǎng)絡(luò)水箱液位控制模型,訓(xùn)練擬合出流量與液位之間的關(guān)系。大量仿真曲線及實(shí)驗(yàn)數(shù)據(jù)表明,采用LM算法的BP神經(jīng)網(wǎng)絡(luò)模型用于水箱液位控制中是可行的,并且具有較高控制精度,能有效的用于工業(yè)生產(chǎn)的水箱液位過程控制中。
[1] Guoping P Liu, Visakan Kadirkamanathan, Steve A Billings.On-line identification of nonlinear system using Volterra polynominal basis function neural networks[J]. Trans Neural Networks, 1998, 11(9): 1645-1657.
[2] Yi Cheng, T W Karjala, David M Himmelblan. Closed Loop Nonlinear Process Identification Using Internally Recurrent Nets[J]. Trans Neural Networks, 1997, 10(3): 573-586.
[3] 李麗榮,韓璞,董澤.人工神經(jīng)網(wǎng)絡(luò)在系統(tǒng)辨識中的研究與應(yīng)用[J].華北電力大學(xué)學(xué)報(bào),2000,27(3):28-33.
[4] Kotaro Hirasawa, Shingo Mabu, Jinglu Hu. Propagation and control of stochastic through Universal Learning Networks[J]. Neural Network, 2006, 19(4): 487-499.
[5] 陳懷忠.基于BP神經(jīng)網(wǎng)絡(luò)PID算法的水箱液位控制系統(tǒng)設(shè)計(jì)[J].實(shí)驗(yàn)技術(shù)與管理,2012,29(12):81-83.
[6] 喬茂偉,韋永斌.BP基于PSO的神經(jīng)網(wǎng)絡(luò)PID在液位控制中的應(yīng)用[J].自動(dòng)化與儀表,2012(9):43-47.
[7] 敖茂堯.串級液位控制系統(tǒng)的改進(jìn)粒子群神經(jīng)網(wǎng)絡(luò)PID控制研究[J].計(jì)算機(jī)測量與控制,2014,22(1):95-99.
[8] 孫紅英,顏德文,李斌.基于參數(shù)自整定模糊PID的三容水箱液位控制[J].電氣應(yīng)用,2006,25(8):97-99.
[9] 林頤清.過程控制中被控對象神經(jīng)網(wǎng)絡(luò)模型的設(shè)計(jì)[J].山東大學(xué)學(xué)報(bào),2002,32(2):122-126.
[10] 飛思科技產(chǎn)品研發(fā)中心.神經(jīng)網(wǎng)絡(luò)與MATLAB7實(shí)現(xiàn)[M].北京:電子工業(yè)出版社,2005:35-40.