陳午陽, 李強, 管延智
(北方工業(yè)大學(xué) 機械與材料工程學(xué)院,北京 100144)
基于STEP7功能塊的PID控制仿真
陳午陽, 李強, 管延智
(北方工業(yè)大學(xué) 機械與材料工程學(xué)院,北京 100144)
PID控制器和西門子300/400 PLC(可編程邏輯控制器)在現(xiàn)代工業(yè)中用途廣泛,但在現(xiàn)場調(diào)試過程中基于很多不確定因素調(diào)節(jié)時間長,成本高。對PID控制的基本原理以及參數(shù)調(diào)整的方法進(jìn)行了,創(chuàng)新點在于介紹了一種利用西門子編程軟件STEP7,WINCC和PLCSIM等相關(guān)的軟件對簡化的工業(yè)數(shù)學(xué)模型進(jìn)行功能塊編程模擬被控對象的輸出和反饋,從而實現(xiàn)整個閉環(huán)控制的模擬,并且通過WINCC組態(tài)調(diào)節(jié)部分參數(shù)然后可以觀察到變量的變化震蕩曲線,從而證明了方法的可行性。
PLC ;PID;STEP7;功能塊;模擬仿真
PID控制技術(shù)經(jīng)過幾十年的發(fā)展因其穩(wěn)定性和可靠性在各行各業(yè)控制系統(tǒng)中占據(jù)了很大的份額,基于不同類型的數(shù)學(xué)模型,PID控制能取得很好的效果?;谖鏖T子STEP7軟件的強大功能將不同工業(yè)數(shù)學(xué)模型通過編程集成到功能塊FB100當(dāng)中模擬閉環(huán)控制系統(tǒng)執(zhí)行和反饋部分,然后和西門子特有的PID控制模塊FB41結(jié)合起來共同構(gòu)成PID閉環(huán)控制系統(tǒng),這樣可以大大節(jié)省實際項目中調(diào)試的時間,節(jié)約人力和物力成本,并且對于學(xué)習(xí)PID控制的讀者也是一個很好方法。
功能塊 FB41提供了一種模塊化的PID算法,PID控制器的輸出u(t)與輸入e(t)的關(guān)系式為[1]:
(1)
式中U(t)是PID調(diào)節(jié)器的輸出,e(t)是PID調(diào)節(jié)器的輸入,PID調(diào)節(jié)器是一種線性調(diào)節(jié)器,它根據(jù)給定值r(t)和實際輸出值y(t)構(gòu)成控制偏差e(t),將偏差e(t)進(jìn)行比例P、積分I和微分D運算,再通過線性組合構(gòu)成控制量對控制對象進(jìn)行控制,其中KP為比例系數(shù),TI為積分時間常數(shù),TD為微分時間常數(shù),U0是初始值。比例、積分和微分的作用是關(guān)聯(lián),參數(shù)可以分別調(diào)節(jié),也可以只采用其中一種或兩種控制規(guī)律[2]。
比例控制:即成比例地反映控制系統(tǒng)的偏差信號e(t),系統(tǒng)偏差一旦產(chǎn)生,控制器立即產(chǎn)生與其成比例的控制作用,以減小偏差。
積分控制:積分的控制作用主要用于消除穩(wěn)態(tài)誤差,提高系統(tǒng)的無差度。積分作用的強弱取決于積分時間常數(shù)TI,TI越大,積分速度越慢,積分作用越弱,反之則越強。
微分控制:微分的作用是能反映偏差信號的變化速率,具有預(yù)見性,能預(yù)見偏差信號的變化趨勢,并能在偏差信號的值變得太大之前,在系統(tǒng)中引入一個有效的早期修正信號,從而加快系統(tǒng)的響應(yīng)速度,減少超調(diào)和調(diào)節(jié)時間。
典型閉環(huán)模擬量PID閉環(huán)控制系統(tǒng)如圖1所示。
圖1 模擬量閉環(huán)控制系統(tǒng)
2.1 閉環(huán)控制的基本結(jié)構(gòu)
1)模擬量閉環(huán)控制的數(shù)學(xué)模型
在工業(yè)生產(chǎn)過程中,大多數(shù)被控對象可以用一階系統(tǒng)、二階系統(tǒng)、一階滯后系統(tǒng)、二階滯后系統(tǒng)這幾種數(shù)學(xué)模型來近似表達(dá)[3],不同控制系統(tǒng)的組成,所用的部件及其功能都是不同的,但是從控制理論的角度出發(fā),只要數(shù)學(xué)模型相同,其動態(tài)性能必須相同,因此,不論控制系統(tǒng)的物理模型有何不同,都認(rèn)為他們是有幾種典型單元組成。
文獻(xiàn)[4]中給出了創(chuàng)建模擬仿真的數(shù)學(xué)模型,但是沒有給出模擬仿真時的震蕩曲線以及在調(diào)試過程當(dāng)中的曲線的變化,為了讓讀者在閱讀的過程中能觀察到模擬仿真的過程。所以在本文中增加了震蕩曲線以及在參數(shù)變化過程當(dāng)中的震蕩曲線的變化,使仿真模擬更加形象直觀。
文獻(xiàn)[5]中利用 STEP7 提供PID標(biāo)準(zhǔn)程序塊FB106和FB105組成的PID控制系統(tǒng)來模擬實際工業(yè)現(xiàn)場的閉環(huán)控制,但是缺少必要的數(shù)學(xué)模型來驗證。在本文中的閉環(huán)系統(tǒng)用FB100來模擬3個串聯(lián)的慣性環(huán)節(jié)和一個比例環(huán)節(jié)合并。
(1)比例環(huán)節(jié)的微分方程是:
C(t)=Kr(t)
(2)
傳遞函數(shù)是:
G(s)=K
(3)
式中K為比例系數(shù),傳遞系數(shù)或者是放大系數(shù)。
(2)慣性環(huán)節(jié)的微分方程是:
(4)
(3)傳遞函數(shù)是:
(5)
式中T為慣性時間常數(shù),S為拉普拉斯變換因子。
由慣性串聯(lián)環(huán)節(jié)的等效可知:三個慣性環(huán)節(jié)串聯(lián)起來之后的傳遞函數(shù)是:
(6)
式中GAIN為比例增益為TM_LAG1 - TM_LAG1慣性的時間常數(shù),s代表自動控制理論中的拉氏變換的拉普拉斯變化因子,將某一時間常數(shù)設(shè)置成0,可以減少被控對象的階數(shù)。
2)模擬量閉環(huán)仿真控制的結(jié)構(gòu)
本文引用文獻(xiàn)[6]數(shù)學(xué)模型并采用PI方法,在STEP7當(dāng)中對控制對象簡化的數(shù)學(xué)模型進(jìn)行程序化設(shè)計而生成功能塊FB100來模擬實際的執(zhí)行機構(gòu)和控制對象,與FB41組成閉環(huán)系統(tǒng)如圖2所示,DISV是系統(tǒng)的擾動量。
圖2 系統(tǒng)仿真組成
可借助人機界面上面I/O域來修改PID控制器和被控制對象的參數(shù),通過運行用戶程序,觀察閉環(huán)控制的效果。
在該系統(tǒng)中的閉環(huán)用FB100采用三個串聯(lián)的慣性環(huán)節(jié)來模擬被控制對象,然后通過FB100接收到的LMN信號經(jīng)過運算輸出OUTV轉(zhuǎn)換為FB41的過程變量PV_IN作為反饋信號輸入到PID控制器當(dāng)中,進(jìn)而實現(xiàn)PLC對模擬量的閉環(huán)控制模擬。
打開STEP7,新建一個PID控制項目,硬件組態(tài),CPU的型號選取315-2DP,編譯。打開WINCC生成一個新項目,項目中添加變量相關(guān)變量的趨勢圖,設(shè)置PG/PC接口將STEP7項目和WINCC項目連接在一起。
2.2 PID的控制程序以及參數(shù)的調(diào)整方法
1)PID控制程序初始化
在OB1中,用兩個延遲定時器設(shè)置振蕩電路,時間周期均為30 s,通過周期方波的形式給FB41功能塊的SP_INT分別賦值,在接通延時定時器常開觸點和常閉觸點斷開和閉合時分別賦值20%和70%,其中SP_INT數(shù)據(jù)類型是浮點型。
在啟動組織塊OB100中,設(shè)置功能塊的初始值,如果沒有設(shè)置初始值那么系統(tǒng)會自動的給功能塊賦對應(yīng)的參數(shù)賦默認(rèn)值。其中:(1)令啟動標(biāo)志COM_RST為真,執(zhí)行PID的重啟功能,將PID內(nèi)部的參數(shù)設(shè)置初始值。(2)設(shè)置采樣周期CYCLE為200ms,F(xiàn)B100和FB41的采樣周期要與OB35中的循環(huán)中斷周期相同。(3)設(shè)置的PID的控制參數(shù)GAIN,TI和TD的初始值,設(shè)置AO模塊為單極性輸出設(shè)置上限為100%,下限0。
在FB100(程序代碼省略)中設(shè)置其他的以下參數(shù):(1)令啟動標(biāo)志COM_RST為真,初始化輸出FB100的輸出值和內(nèi)部值。(2)設(shè)置采樣周期是CYCLE為200 ms。(3)設(shè)置增益GAIN的初始值是3.0,三個慣性環(huán)節(jié)的時間常數(shù)(TM_LAG1-TM_LAG3)初始值分別是5 s,2 s和0 s。在退出OB100之前應(yīng)該將啟動標(biāo)志位COM_RST復(fù)位,將PID控制器的給定值設(shè)置為70%。
為了保證PID運算的采樣周期的精度,在循環(huán)組織塊OB35中調(diào)用FB41和FB100。將控制器的輸出變量LMN送給FB100的輸入變量INV,將FB100的輸出變量OUTV送給PID控制器輸入變量PV_IN,利用兩個數(shù)據(jù)塊可以實現(xiàn)對模擬量的仿真。
2)PID控制參數(shù)的調(diào)整方法
為了減少需要整定的參數(shù),可以首先采用PI控制器。為了保證系統(tǒng)的安全,避免出現(xiàn)系統(tǒng)不穩(wěn)定或者是超調(diào)量增大的異常情況,在開始時應(yīng)該設(shè)置比較保守的參數(shù),例如增益不要太大,積分時間不要太小。給出階躍給定信號,觀察系統(tǒng)輸出量的波形(在WINCC趨勢圖中可以觀察到)可以獲得系統(tǒng)的性能消息,例如超調(diào)量和調(diào)節(jié)時間。
如果階躍響應(yīng)的超調(diào)量比較大,經(jīng)過多次震蕩才能穩(wěn)定或者是根本不穩(wěn)定,應(yīng)減少PID輸出的比例系數(shù),增大積分時間。如果階躍響應(yīng)沒有超調(diào)量,但是被控量上升過于緩慢,過渡時間太長,應(yīng)該按相反的方向調(diào)整相應(yīng)的參數(shù)。
如果消除誤差的速度較慢,可以適當(dāng)?shù)臏p少積分時間。反復(fù)調(diào)節(jié)KP和KI,如果超調(diào)量仍然很大,可以加上微分,KD從零開始逐漸增大,反復(fù)調(diào)節(jié)KP、KI和KD。
需要注意的是在改變增益的KP值同時也會影響到積分分量和微分分量,而不僅僅是影響到比例分量??傊?,PID參數(shù)調(diào)節(jié)是一個綜合的相互影響的過程,實際過程中的多次調(diào)試是非常必要的。
2.3 PID控制的仿真實驗及結(jié)果分析
打開PLCSIM,切換到RUN模式,在STEP7中打開項目,根據(jù)調(diào)試的需要,可以用變量表修改和監(jiān)控數(shù)據(jù)塊中的變量,通過監(jiān)控背景數(shù)據(jù)塊,還可以看到功能塊初始化時沒有賦值的參數(shù)默認(rèn)值[7]。
打開WINCC中已經(jīng)完成的圖形畫面,然后和建立好的PLC項目建立連接,點擊激活按鈕顯示出已經(jīng)組態(tài)好的啟動畫面,此時CPU已經(jīng)切換到RUN模式,出現(xiàn)了WINCC仿真畫面板中的在線趨勢圖如圖3所示,其中方形波是隨時間變化的FB41預(yù)設(shè)值,震蕩曲線是隨時間變化的FB100輸出值。
在圖3中的PID 階躍響應(yīng)曲線的初始值是:比例系數(shù)是2.00,積分時間是0 s,微分時間是0 s,該曲線因為超調(diào)量增大,震蕩時間長。
在圖4中的PID 階躍響應(yīng)曲線的初始值是:比例系數(shù)是5.00,積分時間是0 s,微分時間是0 s,該曲線超調(diào)量相對于圖3超調(diào)量減少,震蕩時間減小。
圖3 PID階躍響應(yīng)曲線1
圖4 PID階躍響應(yīng)曲線2
圖5 PID階躍響應(yīng)曲線3
在圖5中的PID 階躍響應(yīng)曲線的初始值是:比例系數(shù)是5.00,積分時間是1 s,微分時間是0 s,該曲線超調(diào)量相對于圖4超調(diào)量減小,震蕩時間減小,但是下降沿卻提前達(dá)到穩(wěn)定狀態(tài),繼續(xù)調(diào)節(jié)比例系數(shù)和微分出現(xiàn)的曲線不是理想中的曲線,并且曲線超調(diào)量越來越大。由于本系統(tǒng)設(shè)定值選取的原因在沒有設(shè)置微積分時間常數(shù)的情況下系統(tǒng)就達(dá)到了穩(wěn)定狀態(tài),但是在其他的情況下可能就需要設(shè)置其他的參數(shù)。
通過圖3,圖4,圖5相互對比可以發(fā)現(xiàn):在3個震蕩曲線當(dāng)中圖5在趨向給定值的過程中第一個幅值A(chǔ)和第二個幅值B分別是A=12,B=3,即震蕩曲線的衰減比是4,符合傳統(tǒng)的震蕩曲線指標(biāo)。
通過對STEP7和WINCC進(jìn)行組態(tài),利用簡化了的數(shù)學(xué)模型編寫的功能塊可以簡單在計算機平臺上搭建一個PID模擬量仿真系統(tǒng)。采用西門子STEP7和WINCC搭建的仿真平臺開發(fā)時間短、成本低, 同時也可以根據(jù)實際工業(yè)環(huán)境中的情況構(gòu)造數(shù)學(xué)模型采用理論計算整定法得出控制參數(shù)。由于本文所建立的數(shù)學(xué)模型的局限性以及缺少實驗的驗證不能真正的模擬工業(yè)現(xiàn)場設(shè)備真實情況。
[1] 王文強.基于S7-300與STEP7實現(xiàn)的PID控制器[J].化學(xué)工程與裝備,2011,40(11),114.
[2] 楊巨慶,黃健,段麗華.PID控制技術(shù)與應(yīng)用[J].哈爾濱師范大學(xué)(自然科學(xué)學(xué)報),2004,20(2):76-79.
[3] 陳玉,王靜平,奚琳.智能PID控制器控制算法及其仿真研究[J].工程與試驗,2009,49(1):66-69.
[4] 千博,楊庚辰,過潤秋.自動控制原理[M].西安:西安電子科技大學(xué)出版社,2012.
[5] 衛(wèi)蘇軍.STEP7中PID仿真實驗的實現(xiàn)方法[J].電子世界,2013,35(13):108.
[6] 廖常初.跟我動手學(xué)S7-300/400PLC[M].北京:機械工業(yè)出版社,2010.
[7] 關(guān)朝旺,廖常初.西門子S7-PLCSIM仿真軟件的應(yīng)用[J].電工技術(shù),2004,25(1):64.
The Simulation of PID Control Based on STEP7 Function Block
Chen Wuyang, Li Qiang, Guan Yanzhi
(College in Mechanics and Materials Engineering, North China University of Technology, Beijing 100144, China)
PID controller and Siemens 300/400 PLC (Programmable Logic Controller) are widely applied in modern industry, but have a long field debugging time and high cost due to many uncertain factors. This paper introduces the basic principle and parameter regulation method of PID control. As an innovation point, this paper further introduces an approach to use Siemens programming software STEP7, WINCC and PLCSIM to carry out function block programming for the simplified industrial mathematical model to simulate the output and feedback of the controlled object, thus realizing simulation of the whole closed-loop control. Moreover, the parameters in the WINCC configuration regulation part can be used to observe the vibration curve of the variables. Thus, the approach is proved to be feasible.
PLC; PID; STEP7; function block; simulation
10.3969/j.issn.1000-3886.2017.01.028
TP206+.1
A
1000-3886(2017)01-0095-03
陳午陽(1990-),男,河南平頂山人,碩士生,主要從事變截面輥彎成型裝備自動化控制方向。
定稿日期: 2016-05-12