孟凡順 張景擴(kuò)* 李東亞 袁繼斌 孫 哲 邵世碩
(1.蘇州大學(xué)應(yīng)用技術(shù)學(xué)院,江蘇 蘇州 215300;2.棗莊礦業(yè)(集團(tuán))有限責(zé)任公司鐵路運(yùn)輸處,山東 棗莊 277100)
在工業(yè)生產(chǎn)中,人們常常需要對液位進(jìn)行檢測與調(diào)節(jié)?;竟ぷ鬟^程為:液面過高時,輸入液體控制閥關(guān)閉,輸出液體控制閥打開,進(jìn)行排放;液面過低時,輸出液體控制閥關(guān)閉,輸出液體控制閥打開,進(jìn)行存儲功能。
本文采用PLC控制,所實(shí)現(xiàn)的功能遠(yuǎn)超傳統(tǒng)的繼電器控制電路,具有可靠性高、抗干擾能力強(qiáng)、體積小,重量輕,功耗低等特點(diǎn),能夠?yàn)樽詣踊刂茟?yīng)用提供安全可靠和比較完善的解決方案[1]。采用PID算法來調(diào)節(jié)水位,PID算法憑借參數(shù)少、效果好、經(jīng)濟(jì)可靠等優(yōu)秀的綜合性能,在工業(yè)控制中經(jīng)常被采用,PID的控制效果由比例、積分和微分參數(shù)決定,PID中的比例、積分及微分控制參數(shù)要經(jīng)過一系列的方法進(jìn)行整定,正確適當(dāng)?shù)膮?shù)設(shè)置能夠讓控制設(shè)備在靜態(tài)與動態(tài)中的能力更強(qiáng),將BP神經(jīng)網(wǎng)絡(luò)作為基礎(chǔ)的PID計算方式是把BP神經(jīng)網(wǎng)絡(luò)的計算方法與PID參數(shù)整定融合起來的一種更加先進(jìn)的計算方式[2-3]。圖1為BP神經(jīng)網(wǎng)絡(luò)與PID算法結(jié)合后的原理圖。
PID控制算法對于簡單的線性系統(tǒng)控制具有良好的控制表現(xiàn),PID控制憑借著調(diào)整部分少、效果優(yōu)、可靠高等優(yōu)良的綜合性能,在工業(yè)控制領(lǐng)域內(nèi)被廣泛采用,PID的控制原理圖由3部分進(jìn)行對被控對象的控制,PID控制器參數(shù)和控制性能的關(guān)系主要從控制系統(tǒng)的穩(wěn)定性、系統(tǒng)響應(yīng)、超調(diào)量及穩(wěn)態(tài)誤差這些方面對系統(tǒng)中的控制效果進(jìn)行評價。在PID的調(diào)節(jié)中,Kp-比例、Ki-積分、Kd-微分3項(xiàng)系數(shù)指數(shù)對控制器的工作效果也存在著很大的改變。PID控制原理如圖2所示。
圖1 BP神經(jīng)網(wǎng)絡(luò)與PID算法結(jié)合后的原理圖
圖2 PID控制原理圖
PID控制算法中的比例、積分和微分具體作用如下:
(1)比例作用。Kp是比例系數(shù)指數(shù)中反映系統(tǒng)工作時的反應(yīng)速度的。如果系統(tǒng)發(fā)生了誤差,這時Kp發(fā)揮它的作用,將誤差減少到最小。Kp越小,說明這時系統(tǒng)中所發(fā)生的工作反應(yīng)速度慢,然后隨著Kp的增長,系統(tǒng)中所發(fā)生的工作反應(yīng)速度也會隨之增長,但如果Kp太大時,對系統(tǒng)中的工作不友好,系統(tǒng)容易受到干擾,比例部分不能使被控量達(dá)到設(shè)定值,所以純粹的比例控制不能去除系統(tǒng)中的穩(wěn)態(tài)誤差[4-5]。
(2)積分作用。Ki是積分系數(shù)指數(shù)中反映系統(tǒng)中的穩(wěn)態(tài)誤差進(jìn)行消除工作的系數(shù)。在這過程中,如果誤差在系統(tǒng)中表現(xiàn)出來,Ki會一直計算,然后進(jìn)行累積,不斷地將累積的進(jìn)行輸出,將系統(tǒng)中的誤差填滿之后,停止工作。Ki的設(shè)置很關(guān)鍵,要根據(jù)系統(tǒng)中的條件設(shè)置適宜值,如果Ki的存在不夠讓系統(tǒng)達(dá)到平衡,會導(dǎo)致超調(diào)量大,進(jìn)而影響系統(tǒng)的動態(tài)性能。
(3)微分作用。Kd是用來對誤差進(jìn)行預(yù)測及抑制,Kd的存在將使系統(tǒng)中的調(diào)節(jié)時間大大減少。但是Kd的存在也有一定的劣勢,使系統(tǒng)的抗干擾性降低,因此Ki的設(shè)置也很關(guān)鍵。
BP神經(jīng)網(wǎng)絡(luò)算法工作過程為:選擇任意一組權(quán)值,將設(shè)定的目標(biāo)輸出作為線性方程的代數(shù)和去構(gòu)建線性方程組,獲得待求權(quán)。BP神經(jīng)網(wǎng)絡(luò)算法可以學(xué)習(xí)并儲存眾多的輸入-輸出映射關(guān)系,而這種映射關(guān)系的數(shù)學(xué)方程并不需要過多描述。利用最速下降法的學(xué)習(xí)規(guī)則,并通過反向傳播不斷調(diào)節(jié)BP神經(jīng)網(wǎng)絡(luò)算法中的權(quán)值和閾值,將BP神經(jīng)網(wǎng)絡(luò)算法的誤差平方和降至最小[6]。圖3為BP神經(jīng)網(wǎng)絡(luò)算法結(jié)構(gòu)圖,結(jié)構(gòu)包括輸入層、隱含層以及輸出層。根據(jù)其擅長求解內(nèi)部機(jī)制復(fù)雜的問題及具備自主學(xué)習(xí)的能力,該算法被廣泛使用。
圖3 BP神經(jīng)網(wǎng)絡(luò)算法結(jié)構(gòu)圖
本文的控制器由西門子S7-1200 station CPU實(shí)現(xiàn)算法和控制,通過博圖V14進(jìn)行軟件編輯、界面設(shè)計、仿真、調(diào)試等工作。PLC在具體工作時,首先是順序讀取輸入端子的狀態(tài),并將讀取的信息存至內(nèi)存中的輸入映像寄存器。按先左后右,先上后下的步序,逐行掃描程序。輸出鎖存器保存寄存器的狀態(tài),經(jīng)過各種電路的處理,使輸出端子對外輸出控制信號保持外部負(fù)載工作。
本文將水箱液位作為被控對象,同時將水箱液位作為調(diào)節(jié)參數(shù),圖4為液位仿真系統(tǒng)界面。BP神經(jīng)網(wǎng)絡(luò)PID算法液位控制系統(tǒng)系統(tǒng)包含2部分:一是PID控制器,利用比例、積分、微分參數(shù)對水箱液位閉環(huán)控制。二是BP神經(jīng)網(wǎng)絡(luò),根據(jù)水箱液位的表現(xiàn)情況不斷調(diào)整和優(yōu)化PID中比例、積分、微分參數(shù),進(jìn)而調(diào)節(jié)電動調(diào)節(jié)閥開度大小,實(shí)現(xiàn)液位調(diào)節(jié)。
本文采用Matlab進(jìn)行BP神經(jīng)網(wǎng)絡(luò)PID算法液位控制系統(tǒng)仿真,圖5為BP神經(jīng)網(wǎng)絡(luò)PID算法液位控制系統(tǒng)仿真曲線??梢钥闯觯豪肂P神經(jīng)網(wǎng)絡(luò)PID整定后的水箱液位函數(shù)曲線具備較強(qiáng)的跟蹤特性,整個系統(tǒng)在啟動時可很快地調(diào)整參數(shù),超調(diào)量較小,過渡時間短,具有更好的動態(tài)特性和穩(wěn)定性能,保證整個控制系統(tǒng)具備較優(yōu)的性能。
圖4 液位仿真系統(tǒng)界面
圖5 BP神經(jīng)網(wǎng)絡(luò)PID算法液位控制系統(tǒng)仿真曲線
本文基于西門子PLC平臺,提出了基于BP神經(jīng)網(wǎng)絡(luò)的PID控制算法,去獲得最優(yōu)的比例、積分和微分控制參數(shù),實(shí)現(xiàn)對液位控制系統(tǒng)更好地檢測和調(diào)節(jié)。實(shí)驗(yàn)顯示,BP神經(jīng)網(wǎng)絡(luò)的PID控制算法相比常規(guī)的PID算法控制,具有響應(yīng)快、過渡平穩(wěn)、超調(diào)量小、調(diào)整時間短等優(yōu)勢。