曹 陽
(重慶鋼鐵股份公司能控中心,重慶 401254)
通訊技術(shù)在現(xiàn)代自動化系統(tǒng)中不僅是下位機采集現(xiàn)場數(shù)據(jù)的重要技術(shù),也是上位機采集下位機或者現(xiàn)場數(shù)據(jù)的重要手段。沒有通訊就談不上自動化,就談不上數(shù)據(jù)處理和分類、乃至是自動化系統(tǒng)的運用。目前,重鋼的通訊技術(shù)也日趨成熟,在生產(chǎn)的后備技術(shù)中扮演著一個重要的角色,本文就以前置通訊技術(shù)及在重鋼scada 系統(tǒng)中的運用進行闡釋。
RTE(Real Time Environment)是一個實時運行環(huán)境。它為其它運行管理(如實時數(shù)據(jù)庫管理,人機界面管理等)及具體應(yīng)用(重鋼電調(diào)實時監(jiān)控,電能量管理系統(tǒng),調(diào)度員培訓(xùn)模擬系統(tǒng)等)提供一個運行環(huán)境;也為不同等級的用戶(應(yīng)用開發(fā)員,系統(tǒng)管理員,系統(tǒng)操作調(diào)度員) 提供一個良好的開發(fā)運行環(huán)境。
所謂環(huán)境,指的就是一整套的管理進程和一整套的服務(wù)以及一整套的管理操作畫面。
從廣義上說,RTE 是一個包在計算機操作系統(tǒng)外面的一個管理系統(tǒng);它管理監(jiān)視整個運行系統(tǒng)中的系統(tǒng)級進程(RTE 各個進程,控制臺進程等)、用戶系統(tǒng)、BOB、網(wǎng)絡(luò)、設(shè)備等“資源”,為用戶提供一個良好的運行開發(fā)環(huán)境。
RTE 提供無差錯的成組廣播通訊服務(wù),每個工作站使用成組廣播方式發(fā)送報文時每個報文都帶有順序號,且保存一定數(shù)量的已發(fā)過的報文。每個接收報文的工作站都要校驗報文的順序號是否連續(xù),若連續(xù)則處理收到的報文;若順序號不連續(xù),則向發(fā)出報文的工作站發(fā)出詢問報文,請求重傳丟失的報文。任何一個工作站收到詢問報文之后,從被保存的報文中選出被請求的報文發(fā)給發(fā)出請求的工作站。
RTE 提供簡單明了的API(應(yīng)用編程接口);其API 所需的參數(shù)為:傳送數(shù)據(jù)的緩沖區(qū)首地址的指針,傳送數(shù)據(jù)的長度以及聯(lián)結(jié)名(如“RTE”);使用該API 的程序只要在編程時說明有關(guān)的頭文件,編譯聯(lián)結(jié)時說明有關(guān)的庫文件即可。
2.3.1 事件的注冊管理
當(dāng)BOB 實例啟動時,必須向RTE 注冊,其注冊的內(nèi)容是:該BOB 實例可以處理哪些事件,哪些事件是應(yīng)該被主BOB 及備用BOB 實例處理,哪些事件是應(yīng)該被鏡象BOB 實例處理。
事件注冊管理記錄每個被注冊的事件都有哪些BOB 實例注冊此事件,作為今后事件管理分發(fā)事件的唯一依據(jù)。
事件注冊管理向RTE 發(fā)出“報告BOB 實例狀態(tài)”事件,以報告該BOB 實例已經(jīng)激活。
事件注冊管理進程每個工作站只有一個,且只處理本工作站的BOB 實例發(fā)出的注冊事件;該注冊事件不發(fā)往其它工作站。
2.3.2 事件的接收管理
a.每個工作站應(yīng)有一個事件的接收進程。
b.該進程接收其它工作站通過成組廣播方式以及點對點方式發(fā)來的事件。
c.該進程對收到的事件采取以下方式處理。
d.若是點對點方式發(fā)來的事件可以馬上掛到目的BOB 實例所在的系統(tǒng)事件處理隊列上。
e.若是重要級的事件可以馬上掛到系統(tǒng)事件處理隊列上。
f.若是BOB 級事件應(yīng)分發(fā)到除系統(tǒng)事件之外的其它用戶系統(tǒng)的接收處理隊列上。
2.3.3 事件的接收與分發(fā)
每個工作站的每個系統(tǒng)都應(yīng)有一個事件管理進程。事件管理進程處理事件的接收與分發(fā)。該進程接收該系統(tǒng)所屬的BOB 實例往外發(fā)送的事件并接收本工作站其它系統(tǒng)以及其它工作站發(fā)來的事件,根據(jù)事件注冊記錄將事件發(fā)往本系統(tǒng)所有注冊該事件的BOB 實例進程。事件總線和BOB 之間的邏輯結(jié)構(gòu)圖,如圖1。
圖1 事件總線和BOB 之間邏輯結(jié)構(gòu)圖
事件總線通過事件驅(qū)動機制進行BOB 數(shù)據(jù)交換和通信,應(yīng)用中多數(shù)BOB 都是通過這種方式進行數(shù)據(jù)交換。事件總線由RTE 的事件管理功能完成。還有一些應(yīng)用直接通過使用其他BOB 處理后的數(shù)據(jù)來進行通信,我們稱之為數(shù)據(jù)總線通信。一般情況下,每個BOB 的數(shù)據(jù)是不能被其他應(yīng)用使用的,所以這種方式的數(shù)據(jù)交換一定要有同步機制保證數(shù)據(jù)的完整性和一致性。
2.3.4 系統(tǒng)監(jiān)視管理
系統(tǒng)管理程序(system manager〕監(jiān)視其它所有的工作站,若發(fā)現(xiàn)某個工作站故障,則改變在有關(guān)數(shù)據(jù)結(jié)構(gòu)中該結(jié)點所屬的所有元素(系統(tǒng),子系統(tǒng),BOB〕的狀態(tài);將其它結(jié)點上與該故障結(jié)點的元素配對的元素(子系統(tǒng),BOB)設(shè)置為相應(yīng)的狀態(tài)(即由備分態(tài)設(shè)為在線態(tài))。
位于各個工作站上的管理程序監(jiān)視在該工作站上的所有的激活態(tài)BOB。若某個BOB 故障,則認為該BOB 所在的子系統(tǒng)故障,則改變在有關(guān)數(shù)據(jù)結(jié)構(gòu)中該子系統(tǒng)及所屬的BOB 的狀態(tài)(即設(shè)置故障態(tài))并對故障子系統(tǒng)所屬的BOB 進行善后處理;并將其它結(jié)點上與該故障子系統(tǒng)同一工作組的配對的子系統(tǒng)及所屬的BOB 設(shè)置為相應(yīng)的狀態(tài)(由備分態(tài)設(shè)置為在線態(tài))。
在重鋼新區(qū)電力調(diào)度前置數(shù)據(jù)采集中采用了兩個BOB 的結(jié)構(gòu):(1)SERBOB。它負責(zé)與對端子站建立鏈路,I/O 讀寫、規(guī)約處理,不涉及對數(shù)據(jù)庫的操作,因此可實現(xiàn)數(shù)據(jù)庫修改時,進程不停、鏈路不斷。(2)TELBOB。它負責(zé)對數(shù)據(jù)庫的維護操作,便于安裝和同步,保證數(shù)據(jù)庫的一致性。同時接收人機指令,修改數(shù)據(jù)庫,發(fā)送命令到SERBOB。下面是RTE和兩個BOB 的結(jié)構(gòu)邏輯圖,如圖2。
圖2 RTE 和BOB 的結(jié)構(gòu)邏輯圖
重鋼新區(qū)的scada 實時監(jiān)控系統(tǒng)的數(shù)據(jù)采集服務(wù)器有2 臺,他們都并列運行,實現(xiàn)負載均衡。正常運行情況下,每臺數(shù)據(jù)采集服務(wù)器承擔(dān)部分數(shù)據(jù)采集任務(wù)。每臺數(shù)據(jù)采集服務(wù)器都配置數(shù)據(jù)采集進程和數(shù)據(jù)采集數(shù)據(jù)庫。按照利于管理、維護簡單、避免頻繁切機的原則對RTU 制定了負載分配表。負載分配表可以由用戶自定義(初始設(shè)定由維護系統(tǒng)自動完成),正常情況下,根據(jù)負載分配表,鏈路首先會運行在優(yōu)先等級最高的節(jié)點。
當(dāng)數(shù)據(jù)采集服務(wù)器故障或數(shù)據(jù)采集進程故障時進行任務(wù)切換。在并列運行的數(shù)據(jù)采集服務(wù)器中,有一臺服務(wù)器被系統(tǒng)任命為管理者,另一個服務(wù)器為被管理者,管理者服務(wù)器的telbob 進程行使指揮調(diào)度權(quán),負責(zé)數(shù)據(jù)采集任務(wù)的分配和管理。當(dāng)某個節(jié)點故障時,該節(jié)點的數(shù)據(jù)采集任務(wù)由其它節(jié)點承擔(dān),鏈路也會根據(jù)負載分配表逐級實現(xiàn)自動切換。
前置通訊采集軟件的一個功能結(jié)構(gòu)如圖3。
圖3 前置通訊采集示意圖
(1)具有并列運行及切換功能,多機互為備用,大大增強了數(shù)據(jù)采集功能的可靠性。
(2)具備對實時數(shù)據(jù)的實時響應(yīng)功能,使得通信數(shù)據(jù)具備實時性。
(3)具有完備齊全的規(guī)約庫,可以對各種遠動規(guī)約及其他規(guī)約進行處理
(4)具有實用、簡單、方便和高效的雙邊表維護工具。
(5)各條鏈路之間相互獨立,各條通信鏈路的性能和類型可以隨通信的要求而各不相同,并且可以動態(tài)修改。
(6)具有豐富的監(jiān)視工具。可以對通信的每一條鏈路進行詳盡的監(jiān)視,也可以對一條鏈路上的每一個廠站進行詳盡的監(jiān)視,還可以對通信中的每一個數(shù)據(jù)點進行動態(tài)跟蹤,而且可以對每一條鏈路上的源碼數(shù)據(jù)進行監(jiān)視。
(7)具有豐富的控制工具??梢詫νㄐ诺拿恳粭l鏈路進行啟動、停止、重起和切換操作,還可以對數(shù)條鏈路進行一次性啟動、停止和重起操作。
(8)具有功能豐富、使用方便的維護工具??梢詫γ恳粭l通信鏈路進行方便的調(diào)試和測試。
在智能化變電站應(yīng)用系統(tǒng)中,scada 前置通訊起著非常重要的作用,可以說沒有前置通訊,后面的PAS 系統(tǒng)、DTS 系統(tǒng)、AGC 系統(tǒng)等都是無法完成其功能效果的。通過前置通訊把數(shù)據(jù)采集到主站scada 中來,完成了一系列的不必要的手動工作,方便了調(diào)度員對現(xiàn)場的實時監(jiān)控,為調(diào)度提供了可靠、穩(wěn)定的保障。
[1]謝希仁.計算機網(wǎng)絡(luò)技術(shù)[M].北京:電子工業(yè)出版社,2003.
[2]王成良.數(shù)據(jù)技術(shù)及應(yīng)用[M].北京:清華大學(xué)出版社.2011.
[3]Klaus-Peter Brand。變電站自動化[M].北京:中國電力出版社.2009.