張 亮/楊 林/王艷鋒(中國(guó)五洲工程設(shè)計(jì)集團(tuán)有限公司,北京100053)
?
電力系統(tǒng)監(jiān)控平臺(tái)客戶端的分析與實(shí)現(xiàn)
張亮/楊林/王艷鋒(中國(guó)五洲工程設(shè)計(jì)集團(tuán)有限公司,北京100053)
摘要根據(jù)現(xiàn)場(chǎng)實(shí)際考察,對(duì)電力系統(tǒng)監(jiān)控平臺(tái)客戶端進(jìn)行了分析和論述。利用功能較完善、兼容性較好的軟件實(shí)現(xiàn)系統(tǒng)的監(jiān)控,有助于提高系統(tǒng)的安全性和可靠性,減少額外的工作量。針對(duì)西門子公司的WinCC監(jiān)控軟件,對(duì)其在系統(tǒng)中的應(yīng)用進(jìn)行了介紹。
關(guān)鍵詞監(jiān)控平臺(tái)客戶端 WinCC 監(jiān)控軟件
Analysis and Realization of the Client of Power System Monitoring Platform
Zhang Liang/Yang Lin/Wang Yanfeng
Abstract According to the site investigation,an analysis of the client of the power system monitoring platform is made.Since using fully functional software with perfect compatibility helps improve the security and reliability of the system and reduce extra workload,the application of WinCC monitoring software belonging to SIEMENS in the system is introduced.
Keywords monitoring platform client,WinCC,monitoring software
隨著計(jì)算機(jī)和互聯(lián)網(wǎng)技術(shù)的發(fā)展,計(jì)算機(jī)網(wǎng)絡(luò)在電力監(jiān)控系統(tǒng)的應(yīng)用越來越廣泛,監(jiān)控系統(tǒng)的軟件客戶端是監(jiān)控系統(tǒng)的核心部分。電力監(jiān)控系統(tǒng)的基本功能(如線路電流、電壓的實(shí)時(shí)顯示、曲線趨勢(shì)圖、電力線路故障報(bào)警、報(bào)表生成等)一般由軟件工程師編程完成。由于整個(gè)系統(tǒng)比較龐大,獨(dú)立編程工作量過于繁重,使用成熟的監(jiān)控軟件可以縮短系統(tǒng)的研發(fā)周期,同時(shí)也可使系統(tǒng)的可靠性和兼容性大大提高。WinCC軟件是德國(guó)西門子公司開發(fā)的監(jiān)控軟件,其功能完善且擴(kuò)展性強(qiáng)。通過對(duì)國(guó)外電力監(jiān)控系統(tǒng)軟件的使用,也可以對(duì)國(guó)內(nèi)軟件研發(fā)提出建設(shè)性意見[1]。
電力監(jiān)控系統(tǒng)包括上位機(jī)層、前端機(jī)層、智能監(jiān)控層和負(fù)載層4個(gè)部分,系統(tǒng)結(jié)構(gòu)如圖1所示。
上位機(jī)層為筆記本計(jì)算機(jī)或控制中心計(jì)算機(jī),用于整個(gè)電力系統(tǒng)的人員安排、系統(tǒng)設(shè)備監(jiān)控管理和綜合數(shù)據(jù)分析;前端機(jī)層選用工業(yè)計(jì)算機(jī)作為現(xiàn)場(chǎng)控制設(shè)備,是監(jiān)控系統(tǒng)的重要組成部分,有利于現(xiàn)場(chǎng)監(jiān)控操作,可以更直接地控制和管理現(xiàn)場(chǎng)設(shè)備,符合智能監(jiān)控系統(tǒng)的要求;智能監(jiān)控層是系統(tǒng)的基本監(jiān)控部分,擔(dān)負(fù)現(xiàn)場(chǎng)原始數(shù)據(jù)的檢測(cè)和設(shè)備的直接控制;負(fù)載層為電力系統(tǒng)基本設(shè)備,如電力變壓器、發(fā)電機(jī)、電力線路等基本電力設(shè)施[2]。
圖1 監(jiān)控系統(tǒng)結(jié)構(gòu)圖
2.1客戶端基本功能和實(shí)現(xiàn)
2.1.1安全功能
為了防止誤操作和無授權(quán)單位的非法操作,客戶端軟件可以設(shè)置用戶管理權(quán)限,即在用戶管理目錄下設(shè)置用戶和密碼,并且在編輯畫面中進(jìn)行操作權(quán)限設(shè)置,實(shí)現(xiàn)客戶端監(jiān)控畫面的保護(hù)。
2.1.2基本組態(tài)功能
通過在變量管理中創(chuàng)建變量,可以在圖形編輯器中進(jìn)行包括系統(tǒng)中電流、電壓、溫度和壓力等數(shù)據(jù)的采集和分析、系統(tǒng)實(shí)時(shí)變量曲線及界面動(dòng)畫的顯示,在報(bào)警記錄中可以進(jìn)行系統(tǒng)故障報(bào)警分析處理,在報(bào)表編輯器編輯數(shù)據(jù)報(bào)表打印輸出。[3]
2.2腳本運(yùn)行系統(tǒng)
由于客戶端軟件面向?qū)ο蟮姆秶容^廣,不可能涵蓋某一專業(yè)所需要的所有動(dòng)作和功能,因此客戶端軟件除提供基本功能外,還為用戶提供了開放的編輯平臺(tái),用戶可以根據(jù)自身需要,利用國(guó)際通用的編程語言,通過編寫程序,對(duì)軟件功能進(jìn)行擴(kuò)展。
2.2.1ANSI-C腳本
WinCC軟件兼容C語言編程。其基本動(dòng)作由相應(yīng)的觸發(fā)器觸發(fā),而函數(shù)不需要觸發(fā)器,作為動(dòng)作組件使用,其工作原理如圖2所示。
函數(shù)是由C語言代碼編譯而成,其中有軟件中集成的基本函數(shù)功能,用戶也可以根據(jù)實(shí)際需要編寫適合現(xiàn)場(chǎng)應(yīng)用的復(fù)雜動(dòng)作。客戶端中的函數(shù)和動(dòng)作范圍如圖3所示。
圖2 C-Script動(dòng)作和函數(shù)的工作原理
圖3 函數(shù)和動(dòng)作范圍
下面以C-Script完成按鈕觸發(fā)調(diào)用函數(shù)求取三個(gè)數(shù)據(jù)平均值為例進(jìn)行詳細(xì)講解。應(yīng)用此功能可以方便地計(jì)算三相回路的平均電流。
首先,編輯求取平均數(shù)的C函數(shù)。首先打開全局范圍有效的C函數(shù)編輯器;右鍵點(diǎn)擊項(xiàng)目函數(shù),新建一個(gè)項(xiàng)目,然后編寫如下函數(shù)代碼:
Double MeanValue(double dvalue1,double dvalue2,doubule dvalue3)
{
Double dMeanVlue;
dMeanValue=(dvalue1+dvalue2+dvalue3)/3;
Return dMeanVlue;
}
然后對(duì)函數(shù)進(jìn)行編譯和保存。核對(duì)編輯窗口下端編譯器的編譯結(jié)果,有無錯(cuò)誤信息,如果有錯(cuò)誤信息,則應(yīng)檢查函數(shù)代碼,更正錯(cuò)誤信息,完成之后繼續(xù)編譯糾錯(cuò),直至完全正確。對(duì)于報(bào)警信息,由于不影響系統(tǒng)運(yùn)行,可以選擇更改或者忽略。
下一步編輯按鈕的觸發(fā)動(dòng)作。在圖形編輯器中打開目標(biāo)畫面,調(diào)出對(duì)象屬性工作框;在目標(biāo)屬性或事件中選擇C動(dòng)作打開。C動(dòng)作的標(biāo)題可以自動(dòng)生成,且不能更改。在標(biāo)題第一行包括apdefap.h文件,可以向C函數(shù)庫(kù)通報(bào)所有函數(shù)。C動(dòng)作的第二部分為C函數(shù)標(biāo)題,第三部分括號(hào)中的內(nèi)容為函數(shù)的代碼。其具體代碼為:
#include“apdefa.h”
Void onclick(cgar^lpszFidureName.char^lpszFraptyName)
{
Double dxalue1=206;
Doulbe dvalue2=78;
Double dvalue3=96;
Double dMeanValue
Double dMeanValue=MeanValue(dvalue,dvalue2,dvalue3)print
Printf(“fexampl2 ”)
Printf(“The meanvalue r n”dvalue1,dvalue2,dvalue3,dMeanValue)
}
最終對(duì)函數(shù)進(jìn)行編譯糾錯(cuò),如有故障信息則應(yīng)及時(shí)更正。最終,運(yùn)行圖形進(jìn)行輸出,檢驗(yàn)編程效果。
2.2.2VBScrip腳本
WinCC客戶端軟件還可以利用VBScrip進(jìn)行編輯動(dòng)態(tài)化圖形對(duì)象。VBScrip動(dòng)作、過程和模塊的關(guān)系如圖4所示。
圖4 VBScrip動(dòng)作、過程及模塊關(guān)系圖
類似于C函數(shù),VB腳本函數(shù)只需創(chuàng)建一次就可以在其他項(xiàng)目重復(fù)調(diào)用。在編寫時(shí)應(yīng)注意,相互關(guān)聯(lián)調(diào)用的過程應(yīng)當(dāng)置于相同模塊里。由于過程被調(diào)用時(shí),包含對(duì)應(yīng)功能的模塊也會(huì)被調(diào)用,則應(yīng)注意,同一畫面中,正在加載的模塊數(shù)量越大,則系統(tǒng)運(yùn)行性能越差;模塊規(guī)模越龐大,過程動(dòng)作越多,那么其加載運(yùn)行就需要更多時(shí)間。因此,在程序編寫過程中應(yīng)盡量使程序結(jié)構(gòu)簡(jiǎn)單,以提高系統(tǒng)的運(yùn)行性能。
例如,下面的代碼在客戶端運(yùn)行時(shí),單擊畫面一次,把圓形的直徑設(shè)置為30。
Dim objCircle
Set objCircle=ScreenItems(“Circle1”)
Objcircle:radius=30
VB也可以在給變量賦值以后進(jìn)行錯(cuò)誤檢查,并且如果有錯(cuò)誤發(fā)生,錯(cuò)誤代碼和錯(cuò)誤的描述信息就會(huì)在全局腳本的診斷窗口中顯示。最終,進(jìn)行質(zhì)量代碼檢查,如果檢測(cè)結(jié)果正常,則同樣會(huì)在診斷窗口顯示,其代碼如下:
Dim objTag
Set objTag=HMIRuntime.Tags(“Tag1”)
objTag.Write 9
If 0<>objTag.LastError Then
HMIRuntime.Trace“Error:”
&objTag.LastError&vbCrLf&
“ErrorDescription:”&objTag.
ErrorDescription&vbCrLf
Else
objTag.Read
If&H80<>objTag.QualityCode Then
HMIRuntime.Trace“QualityCode:Ox”Hex(objTag.QualityCode)&vbCrLf
End If
End If
2.2.3VBA編輯器
在WinCC軟件中同時(shí)也集成有VBA編輯器,VBA編輯器可以用作自動(dòng)化的組態(tài),其功能和Microsoft Office中的VBA功能及編程方法相似,可以直接用VBA編程語言和編程習(xí)慣進(jìn)行編程。VBA可以增強(qiáng)圖像編輯器的功能,可以編輯畫面和對(duì)象,同時(shí)還可以為畫面和對(duì)象增加動(dòng)態(tài)屬性。VBA雖然不能取代動(dòng)態(tài)向?qū)?,但是,VBA可以使動(dòng)態(tài)向?qū)У墓δ茉鰪?qiáng)。下面以定義一個(gè)對(duì)象的屬性為例,介紹一下VBA編程,以下代碼的功能是把一個(gè)圓插入畫面中,同時(shí)圓的背景顏色和線寬被改變。
Sub EditDefindeObjectType()
Dim objCircle As HMICircle
Set objCircle=ActiveDocument.HMIObjects.AddHMIObject(“myCircleAsCircle”,
“HMICircle”)
With objCircle
‘Direct calling lf objectproperties abailable
.BorderWidth=4
.BorderColor=RGB(255,0,255)
END With
End Sub
依靠以上三種開放性的編程方式,用戶可以根據(jù)需要自由組態(tài)所需的各種功能和動(dòng)作,依靠強(qiáng)大的擴(kuò)展功能,WinCC可以很好地應(yīng)用于電力系統(tǒng)的輸配電客戶端監(jiān)控。
2.3開放的網(wǎng)絡(luò)通信接口
WinCC監(jiān)控客戶端軟件兼容OPC串口通信、PROFIBUS通訊以及工業(yè)以太網(wǎng)通信??梢约嫒荻喾N品牌設(shè)備的通信傳輸,且組態(tài)和運(yùn)行方式簡(jiǎn)便可靠。適合智能化的需求,有很大的借鑒意義。
2.4強(qiáng)大的實(shí)時(shí)數(shù)據(jù)庫(kù)
WinCC具有強(qiáng)大的實(shí)時(shí)數(shù)據(jù)庫(kù),可以歸檔過程值變量和消息。儲(chǔ)存能力很強(qiáng),數(shù)據(jù)按時(shí)間段儲(chǔ)存,如果其容量超過限制或到達(dá)更新時(shí)間,則舊的數(shù)據(jù)會(huì)被新的數(shù)據(jù)片段取代,使歸檔重新開始(如圖5)。為了防止數(shù)據(jù)丟失,可以在硬盤中設(shè)定儲(chǔ)存空間進(jìn)行數(shù)據(jù)備份。
圖5 歸檔數(shù)據(jù)結(jié)構(gòu)示意圖
WinCC客戶端軟件的監(jiān)控界面可以顯示工作電流和工作電壓,以及繼電保護(hù)狀態(tài)。同時(shí),可以根據(jù)歷史故障記錄和歷史曲線,對(duì)歷史故障進(jìn)行分析。
電力系統(tǒng)的客戶端建設(shè)是我國(guó)電力系統(tǒng)智能化建設(shè)的重要組成部分,由于WinCC在各行各業(yè)的廣泛應(yīng)用,使其有著強(qiáng)大的使用優(yōu)勢(shì)。借鑒國(guó)際先進(jìn)的組態(tài)軟件可以在短時(shí)間內(nèi)完成系統(tǒng)客戶端的建設(shè),并且可以保證系統(tǒng)穩(wěn)定可靠運(yùn)行。在客戶端的使用過程中,同樣可以吸取其先進(jìn)的設(shè)計(jì)理念,為國(guó)產(chǎn)客戶端的科研開發(fā)提供更多的參考經(jīng)驗(yàn)。
參考文獻(xiàn)
[1]馬國(guó)華.監(jiān)控組態(tài)軟件及其應(yīng)用[M].北京:清華大學(xué)出版社,2001.
[2]馬明建,周長(zhǎng)城.數(shù)據(jù)采集與處理技術(shù)[M].西安:西安交通大學(xué)出版社,1998.
[3]王實(shí),劉曉明.深入淺出wincc6.0[M].北京:北京航空航天大學(xué)出版社,2004:89 -110.
張 亮
畢業(yè)于哈爾濱工業(yè)大學(xué)電氣工程及其自動(dòng)化專業(yè),就職于中國(guó)五洲工程設(shè)計(jì)集團(tuán)有限公司,高級(jí)工程師,電氣室主任。作為電氣專業(yè)負(fù)責(zé)人承擔(dān)了數(shù)十項(xiàng)大型項(xiàng)目的設(shè)計(jì)工作,包括化工、煙草、電廠、辦公、住宅等工業(yè)及民用項(xiàng)目,參編《工業(yè)建筑節(jié)能設(shè)計(jì)統(tǒng)一標(biāo)準(zhǔn)》、《110kV及以下電力電纜終端和接頭》等國(guó)家標(biāo)準(zhǔn),并發(fā)表《智能照明控制系統(tǒng)》、《垃圾焚燒發(fā)電工程的電氣主接線比較》等多篇論文。
作者簡(jiǎn)介