葉海燕
隨著計算機控制領(lǐng)域深刻的技術(shù)變革,控制系統(tǒng)結(jié)構(gòu)向網(wǎng)絡(luò)化、開放性方向發(fā)展已成為一種趨勢。網(wǎng)絡(luò)通訊是控制系統(tǒng)的重要組成部分,通訊狀態(tài)直接關(guān)系到控制系統(tǒng)的運行效果。以太網(wǎng)作為目前應(yīng)用最為廣泛的局域網(wǎng)技術(shù),在工業(yè)自動化和過程控制領(lǐng)域得到了越來越多的應(yīng)用。目前寶鋼有多套西門子控制系統(tǒng),控制系統(tǒng)PLC與監(jiān)控系統(tǒng)HMI采用以太網(wǎng)TCP/IP通訊。
故障在線檢測系統(tǒng)在現(xiàn)代社會具有至關(guān)重要的作用,PLC和PC作為其檢測控制的重要設(shè)備,相互之間具有很強的互補性,一般搭配使用。故障在線檢測系統(tǒng)以“狀態(tài)監(jiān)測”為指導(dǎo)思想,通過現(xiàn)場獲取設(shè)備運行的實時狀態(tài)信號,然后對狀態(tài)信號進行分析和處理,得出系統(tǒng)故障狀態(tài),判斷設(shè)備性能劣化趨勢,并制定出相應(yīng)對策和處理方法,其中前端數(shù)據(jù)采集設(shè)備和后端數(shù)據(jù)處理設(shè)備之間的通訊是其關(guān)鍵部分,兩者之間通訊的實現(xiàn)方法及通訊完成后的數(shù)據(jù)解碼直接影響到系統(tǒng)的精度和可靠性。目前西門子Wincc平臺開發(fā)的上位機軟件可以通過實時顯示窗口判斷網(wǎng)絡(luò)通訊的狀態(tài),即上位機(PC)與下位機(PLC)通訊是否正常,但并沒有提供一個網(wǎng)絡(luò)通訊是否正常的變量可以直接應(yīng)用在程序當(dāng)中,即通訊狀態(tài)無法參與系統(tǒng)控制。
馬跡山區(qū)域電網(wǎng)有功沖擊負(fù)荷動態(tài)控制系統(tǒng)由3臺置于中央控制操作室的上位機(HMI)、1臺置于電氣室的控制器(PLC)、5臺置于卸船機上的數(shù)據(jù)采集遠(yuǎn)程I/O站和多臺網(wǎng)絡(luò)設(shè)備組成。其控制系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。
圖1 控制系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)圖
頂層的系統(tǒng)上位機HMI監(jiān)控采用Simens公司組態(tài)軟件平臺Wincc開發(fā),具有完備的組態(tài)開發(fā)環(huán)境和調(diào)試環(huán)境[1];中層的控制系統(tǒng)采用可編程邏輯控制器來實現(xiàn)系統(tǒng)動態(tài)有功實時控制模型,具體產(chǎn)品為Simens公司S7-300系列PLC硬件和STEP7開發(fā)軟件平臺,用戶程序中包括了位邏輯計數(shù)器、定時器、復(fù)雜數(shù)學(xué)運算器以及與其它智能模塊通訊等指令內(nèi)容,能夠控制各種設(shè)備以滿足自動化控制需求[2];底層數(shù)據(jù)采集系統(tǒng)為安裝在五臺卸船機上的控制遠(yuǎn)程I/O站,用于采集該控制系統(tǒng)所需要的現(xiàn)場設(shè)備信號。
本系統(tǒng)上位機PC與中央控制器PLC之間的通訊方式為工業(yè)以太網(wǎng),PLC與遠(yuǎn)程I/O站之間的通信方式為現(xiàn)場總線Profibus。
馬跡山區(qū)域電網(wǎng)有功沖擊負(fù)荷動態(tài)控制系統(tǒng)需根據(jù)PC與PLC的通訊狀態(tài)判斷進行有功沖擊負(fù)荷動態(tài)控制。系統(tǒng)控制方式設(shè)計為遠(yuǎn)程自動控制、本地自動控制和本地手動控制三種,這三種控制方式具有互斥性,每次操作只能選擇一種控制方式。在通訊正常時,系統(tǒng)可以進行所有電網(wǎng)運行方式的選擇和設(shè)備數(shù)據(jù)上傳顯示,當(dāng)通訊故障時顯示故障報警同時限制電網(wǎng)運行方式不能選擇遠(yuǎn)程自動方式。
所有通訊狀態(tài)正常前提下,選擇遠(yuǎn)程自動控制方式,電網(wǎng)運行和調(diào)相方式、基本負(fù)荷、沖擊負(fù)荷等所有控制和顯示用數(shù)據(jù)均由PLC采集上傳,系統(tǒng)根據(jù)PLC上傳數(shù)據(jù)進行計算和判斷,自動進行有功沖擊動態(tài)負(fù)荷控制,不需要任何人工操作。
當(dāng)PC-PLC通訊正常,有部分遠(yuǎn)程I/O站與主PLC通訊異常時,選擇本地自動控制方式,人工手動輸入運行和調(diào)相方式以及電網(wǎng)基本負(fù)荷值,系統(tǒng)根據(jù)手工輸入數(shù)據(jù)進行系統(tǒng)仿真,進行計算和判斷后,自動進行有功沖擊動態(tài)負(fù)荷控制。
PC-PLC通訊異常情況下,選擇本地手動控制方式,根據(jù)現(xiàn)場工況和港區(qū)沖擊負(fù)荷輸入選擇區(qū)間、方向限制、沖擊限制的要求,人工手動輸入方向限制、沖擊限制原則以及電網(wǎng)沖擊負(fù)荷限值。系統(tǒng)根據(jù)手工輸入數(shù)據(jù)進行仿真、計算和判斷,根據(jù)手工輸入控制方式進行有功沖擊動態(tài)負(fù)荷控制。
馬跡山港負(fù)荷波動激烈,短時峰值很大,且正峰與負(fù)峰交錯,可能出現(xiàn)峰值疊加的情況,因此,有功沖擊負(fù)荷動態(tài)控制系統(tǒng)和監(jiān)控系統(tǒng)均要求響應(yīng)快、穩(wěn)定性好。在原控制系統(tǒng)設(shè)計中,監(jiān)控系統(tǒng)與控制系統(tǒng)之間的通訊是雙向的,PLC主要接收上位機PC端傳來的參數(shù)與指令,同時反饋狀態(tài)信息和上位機監(jiān)控所需要的參數(shù)實時數(shù)據(jù)?;赪incc軟件平臺開發(fā)的監(jiān)控系統(tǒng)能根據(jù)通訊狀態(tài)實時進行數(shù)據(jù)顯示,但并沒有提供一個網(wǎng)絡(luò)通訊是否正常的變量參與系統(tǒng)控制,一旦通訊故障,上位機所顯示的現(xiàn)場設(shè)備數(shù)據(jù)會一直保持?jǐn)嗑€以前的數(shù)值,不能反映真實設(shè)備狀態(tài)和自動進行控制方式切換,導(dǎo)致區(qū)域電網(wǎng)因沖擊負(fù)荷造成電壓和頻率惡性下降,并可能導(dǎo)致系統(tǒng)崩潰,嚴(yán)重影響生產(chǎn)。
針對原馬跡山區(qū)域電網(wǎng)有功沖擊負(fù)荷動態(tài)監(jiān)控系統(tǒng)中網(wǎng)絡(luò)通訊不能參與控制的問題,基于Wincc平臺開發(fā)了PC-PLC通訊狀態(tài)在線檢測功能,通過編程將PC與PLC之間的通訊狀態(tài)、PLC與遠(yuǎn)程I/O站之間的通訊狀態(tài)分別以變量的形勢表現(xiàn)出來,并參與有功沖擊負(fù)荷控制方式組態(tài)控制,保證了數(shù)據(jù)信號傳輸?shù)膶崟r準(zhǔn)確性,同時也避免了因通訊故障導(dǎo)致控制系統(tǒng)不能反映實時設(shè)備狀態(tài)和自動進行控制方式切換從而影響生產(chǎn)事故發(fā)生。
馬跡山區(qū)域電網(wǎng)有功沖擊負(fù)荷動態(tài)控制系統(tǒng)在控制過程中經(jīng)常需要判斷PC-PLC通訊狀態(tài),并需要有直接反映通訊狀態(tài)的變量參與系統(tǒng)控制?;赪incc平臺開發(fā)的PC-PLC通訊狀態(tài)在線檢測技術(shù),就是利用Wincc全局腳本編程將網(wǎng)絡(luò)通訊狀態(tài)以變量的形式表現(xiàn)出來,參與系統(tǒng)控制和監(jiān)控顯示。具體實現(xiàn)方式是在Wincc上位機軟件中創(chuàng)建一個全局腳本,定義一個變量A用于表示PC與PLC之間的通訊狀態(tài)。腳本函數(shù)編程示例如下:
#include"apdefap.h"
int gscAction(void)
{
#define plc"plcdushu"
#define A"A"
static old=0,count=0;
if(GetTagSDWordWait(plc)==old)
{old=GetTagSDWordWait(plc);
if(count>5)
SetTagBit(A,FALSE);
elsecount++;
}
else
{old=GetTagSDWordWait(plc);
SetTagBit(A,TRUE);
count=0;
}
return 0;
}
上述腳本程序?qū)崿F(xiàn)的功能是:PLC通過一個數(shù)據(jù)傳輸點發(fā)出一個遞增的函數(shù)值(plcdushu);old變量用來存儲plcdushu的更新前的數(shù)值;當(dāng)兩者相等表明傳上來的數(shù)據(jù)沒有發(fā)生變化(即plcdushu變量沒有增加),count記數(shù)加1,根據(jù)現(xiàn)場設(shè)備狀態(tài)情況考慮,當(dāng)掃描兩者相等超過5次的話(即count>5),認(rèn)為通訊中斷,HMI輸出0。否則,表明通訊正常,HMI輸出 1,count清零。
在馬跡山區(qū)域電網(wǎng)有功沖擊負(fù)荷動態(tài)控制系統(tǒng)的程序中設(shè)定一個中間變量M1對應(yīng)于通訊狀態(tài)參數(shù)Wincc變量A,參與控制方式選擇程序編制。對于不同通訊狀態(tài)下進行有功沖擊負(fù)荷動態(tài)控制方式選擇的控制邏輯流程圖如圖2所示。
圖2 動態(tài)控制方式選擇邏輯控制圖
在馬跡山區(qū)域電網(wǎng)有功沖擊負(fù)荷動態(tài)監(jiān)控系統(tǒng)中組態(tài)通訊狀態(tài)監(jiān)測顯示功能,用不同網(wǎng)絡(luò)鏈路顏色動態(tài)顯示PC-PLC、PLC-I/O站之間的通訊狀態(tài),并根據(jù)通訊狀態(tài)顯示不同控制方式下可操作的中控按鈕。網(wǎng)路通訊監(jiān)控畫面如圖3所示。
圖3 網(wǎng)絡(luò)通訊監(jiān)控畫面
基于Wincc平臺PC-PLC通訊狀態(tài)在線檢測技術(shù),采用Wincc全局腳本方便靈活地實現(xiàn)了PLC和PC機的通訊狀態(tài)監(jiān)測,將原本內(nèi)置與Wincc軟件平臺的通訊監(jiān)測功能外化為可參與控制的參數(shù),實現(xiàn)了馬跡山區(qū)域電網(wǎng)有功沖擊負(fù)荷動態(tài)監(jiān)控系統(tǒng)中上位機監(jiān)控畫面HMI實時顯示系統(tǒng)的通訊狀態(tài),并根據(jù)不同的通訊狀態(tài)動態(tài)調(diào)整有功沖擊負(fù)荷控制策略和選擇馬跡山港電網(wǎng)作業(yè)工作方式,確保了正常情況下馬跡山電網(wǎng)有功沖擊負(fù)荷控制系統(tǒng)的穩(wěn)態(tài)穩(wěn)定運行。
本系統(tǒng)基于西門子軟硬件平臺開發(fā),具有較強的通用性和可擴展性,具有很好的推廣應(yīng)用價值,可廣泛應(yīng)用于控制測試領(lǐng)域,特別適合三電一體化的控制系統(tǒng)通訊監(jiān)測解決方案。
[參 考 文 獻]
[1]蘇昆哲.深入淺出西門子Wincc V6[M].北京:北京航空航天出版社,2004:148-166.
[2]張平.PLC應(yīng)用開發(fā)技術(shù)與工程實踐(第1版)[M].北京:人民郵電出版社,2008:25-35.