0 引言
PID控制由千其算法簡單、容易實現和魯棒性好等特點,被廣泛應用于工業過程控制并取得了良好的控制效果。但當被控對象數學模型復雜,尤其對于大滯后、時變和非線性的復雜系統,常規PID控制顯得無能為力,其應用受到很大的限制和挑戰,因此,需要在傳統的PID控制上加人先進的智能控制算法,使得控制效果更為理想。神經網絡具有逼近任意連續有界非線性函數的能力,對于非線性系統和不確定性系統,是一種解決問題的有效途徑川。本文將神經網絡與常規PID控制相結合,發揮各自的優勢,形成神經元自適應PID控制器,并在PLC中設計實現。與傳統PID相比較,具有響應速度快、抗干擾能力強和超調量小等特點。
1 基于PLC的單神經元PID控制系統結構
控制系統采用單神經元組成的PID控制器,它具有傳統PID控制器的優點,也具有神經網絡的并行結構和學習記憶功能,并且結構簡單,易于實現I21。
以PLC作為控制器構成的單神經元PID控制系統如圖1所示。虛線部分為單神經元PID控制器。檢測元件將被控量實際值Y測量轉換為I-SY電壓信號或4-20mA電流信號,該模擬信號接至PLC的AI模塊,進行A1D轉換。將測量值Y與給定值;比較,通過二者的偏差e(t)進行單神經元PID算法的運算得到輸出操作信號u(t),經PLC的AO模塊進行D/A轉換,用于驅動執行機構,實現對被控對象的控制。
2 單神經元PID控制器算法原理
將偏差的比例、積分和微分的三個分量作為單神經元的輸入量,就構成量單神經元PID控制器,其結構如圖1虛線部分所示。
圖1中,根據給定輸人信號r(k)和實際輸出信號y(k),經狀態轉換器轉換為神經元的輸入量x1(k), x2(k), x3(k),即對應積分、比例和微分的三個分量
比較式(3)和(5)可以看出PID參數分別為Kp= Kw2 '(k), K1 = Kw1'(k), Kd=Kw3'(k)。故該神經元控制器具有PID控制器的特性,它通過對加權系數的調整來實現自適應、自組織功能,從而可以達到改善控制系統的控制性能的目的。
權系數的調整可以按不同的學習規則實現,在本系統中單神經元自適應PID控制器采用改進的有監督的Hebb學習規則。
3 基于SCL的單神經元PID控制算法功能塊設計
西門子S7系列PLC在國內工控領域中使用很廣,它的編程軟件STEP7除了支持梯形圖(LAD) ,指令表((STL)和功能塊(FDB)語言編程,還提供結構控制語言SCL (Structure Control Language)編程,SCL非常適合復雜控制算法的編程。以S7300PLC作為控制器,采用SCL語言編寫了功能塊FB3來實現單神經元PID控制算法。
3.1 變量聲明及初始化
采用SCL編寫單神經元PID算法時,先要進行變量聲明及初始化。變量包括輸人變量、輸出變量及中間變量。
根據單神經元PID控制算法,定義的輸入變量包括設定值、過程值、學習速率、權系數、神經元的比例系數以及單神經元PID控制器輸出的最大值最小值,并且在變量聲明時給出了變量數據類型和初始值。
輸出變量傳送當前輸出值到產生調用的塊。單神經元PID控制算法的輸出操作值即為輸出變量。
3.2 單神經元PID控制算法SCL編程
實現單神經元PID控制算法的SCL程序編程步驟如下:
1)計算偏差e(k);
2)計算神經元輸人x;(k);
3)計算加權系數的調整值w;(k);
4)對w;(k)的歸一化處理,計算可(k),
5)計算控制器的輸出u(k),并進行限幅處理。
對SCL源程序文件進行編譯,編譯成功就生成單神經元PID功能塊FB3,并保存在S7程序中的Blocks文件夾中,可以被其他程序調用,也可以作為通用功能塊被其他用戶使用。左側為輸入參數,對應輸入變量;右側為輸出參數,對應輸出變量。在調用FB3時要對相應的參數賦實參,還需要指定一個背景數據塊。
4 單神經元PID控制器應用實例
采用S7300 PLC控制器,以一個典型的雙容液位過程為被控對象,以后一個容器液位為被控量,用STEP 7編寫控制程序調用功能塊FB3進行液位單神經元PID調節。
液位設定值為200mm,采用單神經元PID控制,設初始學習速率ηp=0.01, η1=0.001,ηD=0.01,增益K=300,加權系數初值wKp_1}.015, wKi_10.82, wKd_l}.lb,采樣周期2s。
采用傳統PID控制時的實時響應曲線如圖4所示。
由圖3和圖4可知,單神經元PID控制器超調大大減小,穩態性能也得到提高。
5 結論
將神經網絡與常規PID調節器控制思路相結合,產生了單神經元PID控制器,單神經元結構的連接權值與常規PID的三個參數一一對應,可以在線進行PID參數的學習。以PLC為控制器,利用SCL編程語言實現單神經元PID算法比較簡單,而且編寫的單神經元PID控制功能塊具有通用性。與傳統PID控制器比較,基于PLC的單神經元PID控制器具有自學習和自適應能力超調量和穩態誤差顯著減小,控制效果良好。
(審核編輯: 智匯張瑜)
分享