李寅 褚紅健 王聲柱
摘 要:針對(duì)基于雙機(jī)冗余模式的SCADA系統(tǒng),文章提出了一種數(shù)據(jù)同步方案。該數(shù)據(jù)同步方案保證了冗余SCADA系統(tǒng)實(shí)時(shí)數(shù)據(jù)、歷史與報(bào)警數(shù)據(jù)、配置數(shù)據(jù)的一致性,進(jìn)而保證了綜合監(jiān)控系統(tǒng)的高可靠性。多個(gè)風(fēng)電場(chǎng)、光伏電廠、軌道交通SCADA系統(tǒng)均采用了本設(shè)計(jì)方案,充分驗(yàn)證了該方案的有效性。
關(guān)鍵詞:冗余模式;數(shù)據(jù)同步;SCADA系統(tǒng)
0 引言
監(jiān)控與數(shù)據(jù)采集系統(tǒng)(Supervisory Control and Data Acquisition,SCADA)是集計(jì)算機(jī)、網(wǎng)絡(luò)、通信、傳感等技術(shù)于一體的工業(yè)自動(dòng)控制系統(tǒng)。SCADA系統(tǒng)主要應(yīng)用于電網(wǎng)調(diào)度、軌道交通、水供應(yīng)、長(zhǎng)輸管道(石油、天然氣)等能源領(lǐng)域。所以,一般的SCADA系統(tǒng)均采用冗余模式來(lái)提高其可用性和可靠性[1]。
SCADA系統(tǒng)中數(shù)據(jù)包括實(shí)時(shí)數(shù)據(jù)、歷史與報(bào)警數(shù)據(jù)、配置數(shù)據(jù),雙機(jī)冗余模式的SCADA系統(tǒng)需要提供同步機(jī)制,以保證處于熱備的SCADA系統(tǒng)數(shù)據(jù)的一致性。
1 冗余機(jī)制
冗余技術(shù)分為設(shè)備冗余和網(wǎng)絡(luò)冗余,設(shè)備冗余為信號(hào)的實(shí)時(shí)采集、數(shù)據(jù)的實(shí)時(shí)存儲(chǔ)以及設(shè)備的實(shí)時(shí)監(jiān)控奠定了基礎(chǔ);而網(wǎng)絡(luò)冗余為數(shù)據(jù)的傳輸、不同節(jié)點(diǎn)之間的調(diào)度提供了保障,從而使得SCADA系統(tǒng)在減少冗余切換時(shí)間的同時(shí),最終保證其運(yùn)行不受局部故障的影響。
在實(shí)時(shí)監(jiān)控系統(tǒng)中,服務(wù)器是24小時(shí)不間斷工作,而服務(wù)器冷啟動(dòng)時(shí)間較長(zhǎng)。因此,服務(wù)器采用熱備的冗余運(yùn)行模式。雙機(jī)熱備模式即通常所說(shuō)的active/standby方式,active服務(wù)器處于工作狀態(tài);而standby服務(wù)器處于監(jiān)控準(zhǔn)備狀態(tài),服務(wù)器數(shù)據(jù)包括數(shù)據(jù)庫(kù)數(shù)據(jù),同時(shí)往兩臺(tái)或多臺(tái)服務(wù)器寫(xiě)入數(shù)據(jù)(通常各服務(wù)器采用RAID磁盤(pán)陣列卡),保證數(shù)據(jù)的即時(shí)同步。當(dāng)active服務(wù)器出現(xiàn)故障的時(shí)候,通過(guò)軟件診測(cè)或手工方式將standby機(jī)器激活,保證應(yīng)用在短時(shí)間內(nèi)完全恢復(fù)正常使用[2]。
2 實(shí)時(shí)數(shù)據(jù)同步
SCADA系統(tǒng)實(shí)時(shí)運(yùn)行數(shù)據(jù)存放在內(nèi)存緩沖區(qū)中,以提高系統(tǒng)的響應(yīng)速度和處理能力。實(shí)時(shí)庫(kù)數(shù)據(jù)以文件形式持久化,保證下次系統(tǒng)斷電、重啟等重新初始化時(shí)能夠正常載入數(shù)據(jù),保證數(shù)據(jù)不丟失。在雙機(jī)冗余模式下,主備服務(wù)器分別獨(dú)立工作,各自處理不同應(yīng)用的實(shí)時(shí)數(shù)據(jù),實(shí)現(xiàn)可靠與高效的統(tǒng)一,如圖1所示。每臺(tái)工作站與服務(wù)器上都有完全同步的面向?qū)ο蟮膶?shí)時(shí)數(shù)據(jù)庫(kù)副本,因此,有分布式軟件架構(gòu)所具有的高效靈活的優(yōu)點(diǎn)。并行對(duì)象管理服務(wù)(POMS)自動(dòng)向連接到局域網(wǎng)絡(luò)(LAN)的所有服務(wù)器和工作站發(fā)布數(shù)據(jù)。因?yàn)槊颗_(tái)主機(jī)都維護(hù)著POMS數(shù)據(jù)庫(kù),刷新的數(shù)據(jù)只是POMS數(shù)據(jù)庫(kù)的一部分,所以并行的面向?qū)ο蟮膶?shí)時(shí)數(shù)據(jù)庫(kù)極大地簡(jiǎn)化了系統(tǒng)容錯(cuò)功能設(shè)計(jì)。
當(dāng)數(shù)據(jù)發(fā)生變化時(shí),信息在局域網(wǎng)內(nèi)廣播,在網(wǎng)絡(luò)內(nèi)的工作站和服務(wù)器都可以收到廣播信息。每條信息都含有序列號(hào),信息丟失的時(shí)候會(huì)很快被發(fā)現(xiàn),并發(fā)送重傳丟失信息的請(qǐng)求。如果軟件或硬件發(fā)生故障導(dǎo)致某一服務(wù)不再可用,那么將由運(yùn)行在另一臺(tái)主機(jī)或服務(wù)器上的進(jìn)程自動(dòng)接管這一服務(wù)。
3 報(bào)警/歷史數(shù)據(jù)同步
SCADA系統(tǒng)報(bào)警/歷史數(shù)據(jù)的同步是以同步備份文件的形式實(shí)現(xiàn)的,如圖2所示。報(bào)警/歷史數(shù)據(jù)在保存在主服務(wù)器的商用數(shù)據(jù)庫(kù)中之后,系統(tǒng)會(huì)按照用戶(hù)制定的時(shí)間計(jì)劃將數(shù)據(jù)庫(kù)中的報(bào)警/歷史進(jìn)行自動(dòng)增量備份,并將備份文件保存在本機(jī)的備份目錄中。在備份文件保存至備份目錄前,系統(tǒng)首先要對(duì)備份目錄進(jìn)行維護(hù)。對(duì)于備份目錄,有備份時(shí)間和大小的限制,以防備份目錄過(guò)大占用過(guò)多的磁盤(pán)空間。完成維護(hù)本機(jī)備份目錄的工作后,系統(tǒng)將生成的備份文件保存在本地備份目錄中。
自動(dòng)備份生成的備份文件保存到本地備份目錄后,系統(tǒng)檢索網(wǎng)絡(luò)中其他主機(jī)的備份目錄,并將對(duì)比本機(jī)備份目錄與遠(yuǎn)方主機(jī)的備份目錄,對(duì)其進(jìn)行同步。在同步之前,系統(tǒng)同樣將會(huì)對(duì)遠(yuǎn)方主機(jī)的備份目錄進(jìn)行維護(hù)。維護(hù)策略與本地備份目錄相同。
備份文件傳送至備用服務(wù)器的備份目錄之后,會(huì)觸發(fā)自動(dòng)恢復(fù)過(guò)程。系統(tǒng)將會(huì)對(duì)新增的備份文件進(jìn)行恢復(fù),以保證備用服務(wù)器與主服務(wù)器的報(bào)警/歷史數(shù)據(jù)一致性,達(dá)到雙機(jī)熱備的效果。
4 配置數(shù)據(jù)同步
SCADA系統(tǒng)配置數(shù)據(jù)的同步是以同步配置庫(kù)備份文件的形式實(shí)現(xiàn)的。用戶(hù)對(duì)配置數(shù)據(jù)進(jìn)行修改并執(zhí)行提交動(dòng)作之后,系統(tǒng)會(huì)定時(shí)對(duì)配置數(shù)據(jù)進(jìn)行備份,備份時(shí)間可以由用戶(hù)設(shè)定。在沒(méi)有執(zhí)行備份動(dòng)作的情況下,備份與恢復(fù)工具會(huì)每隔兩周執(zhí)行一次自動(dòng)備份配置庫(kù)。系統(tǒng)對(duì)配置數(shù)據(jù)的備份是完全備份。
主服務(wù)器在完成備份并將備份文件保存在本地備份目錄后,同樣會(huì)將配置數(shù)據(jù)備份文件同步至備服務(wù)器的備份目錄。在備份文件被傳遞至備服務(wù)器的備份目錄后,系統(tǒng)會(huì)將配置數(shù)據(jù)配備文件恢復(fù)至備服務(wù)器的配置庫(kù)中,保持主備數(shù)據(jù)庫(kù)的配置數(shù)據(jù)一致。
5 結(jié)語(yǔ)
隨著現(xiàn)代工業(yè)的不斷發(fā)展,生產(chǎn)企業(yè)的規(guī)模越來(lái)越大,對(duì)生產(chǎn)過(guò)程中的安全性和穩(wěn)定性要求越來(lái)越高[3]。隨著近年來(lái)工業(yè)自動(dòng)化的發(fā)展,SCADA系統(tǒng)被廣泛應(yīng)用于電廠自動(dòng)化、軌道交通、石油天然氣管道等監(jiān)控領(lǐng)域,涉及重大民生問(wèn)題,因此可靠性尤為重要。本設(shè)計(jì)方案保證了雙機(jī)冗余模式下SCADA系統(tǒng)的重要數(shù)據(jù)一致性,避免了因服務(wù)器切換造成的數(shù)據(jù)丟失,提高了SCADA系統(tǒng)的安全性、可靠性。
本數(shù)據(jù)同步方案運(yùn)用在本公司綜合監(jiān)控系統(tǒng)軟件平臺(tái)中,已在多個(gè)風(fēng)電場(chǎng)自動(dòng)化監(jiān)控項(xiàng)目、光伏電廠自動(dòng)化監(jiān)控項(xiàng)目、軌道交通綜合監(jiān)控項(xiàng)目中得到了應(yīng)用與驗(yàn)證,并深受用戶(hù)好評(píng)。
[參考文獻(xiàn)]
[1]王達(dá)宗,馬增良.冗余SCADA數(shù)據(jù)同步的設(shè)計(jì)與構(gòu)建[J].計(jì)算機(jī)應(yīng)用,2005(5):87-92.
[2]張杰.地鐵綜合監(jiān)控系統(tǒng)冗余機(jī)制探討[J].科技風(fēng),2013(8):51.
[3]鐘洋洋,王毅璇,王皓,等.跨平臺(tái)SCADA的歷史數(shù)據(jù)收集與存儲(chǔ)設(shè)計(jì)[J].計(jì)算機(jī)技術(shù)與應(yīng)用,2018(12):111-114.
(編輯 王永超)