吳世偉,施廣德,詹成國,李靖霞,紀陵
(國電南京自動化股份有限公司,南京211153)
變電站監(jiān)控系統(tǒng)告警窗口優(yōu)化設計方法
吳世偉,施廣德,詹成國,李靖霞,紀陵
(國電南京自動化股份有限公司,南京211153)
電力系統(tǒng)在發(fā)生故障時會突然產(chǎn)生大量的告警信息,對信息系統(tǒng)產(chǎn)生沖擊。數(shù)據(jù)庫的讀寫速度已經(jīng)足夠快,通信技術有了長足的發(fā)展,相行之下如何有效的顯示、分析利用好這些信息成為更迫切的問題。針對告警窗口大量密集告警信息的即時展示和故障信息的集中綜合展示問題,通過動態(tài)加載和多級緩存方法,在雪崩測試下能快速正確響應變化信息;通過故障告警信息的多維展示方法,便于排除無關信息且集中綜合展示故障信息。該優(yōu)化方法,已經(jīng)在多次檢測中得到驗證,并已應用于特高壓變電站的監(jiān)控系統(tǒng)。
變電站;監(jiān)控系統(tǒng);告警;動態(tài)加載;多維展示
電力系統(tǒng)在發(fā)生故障時會突然產(chǎn)生大量的告警信息,這些信息的產(chǎn)生有別于正常運行工況,大量集中的告警信息一方面帶來了實時展示的困難,另一方面信息序列缺乏邏輯性和條理性,不利于分析信息背后的真實狀況。因此,有效地顯示、分析利用發(fā)生故障時的告警信息就顯得很有必要。目前數(shù)據(jù)庫的讀寫速度已經(jīng)足夠快,關于通信也有足夠的關注和討論,實踐發(fā)現(xiàn)信息實時有效展示成為“瓶頸”。雪崩測試模擬了故障時信息集中在短時內(nèi)爆發(fā)產(chǎn)生的情形,是SCADA(數(shù)據(jù)采集與監(jiān)控)系統(tǒng)重要測試項目[1],為各類測試必備要求。
發(fā)現(xiàn)問題之一,在發(fā)生故障時,各種故障信息分散,要通過操作多個模塊才能查看到所有的故障信息。而且大量的次要信息也很容易干擾值班人員對重要信息的分析判斷。為此提出了一種將故障信息綜合到告警窗口的方法,將便于值班員調(diào)用查看。
問題之二,大量集中突發(fā)告警信息的實時展示。第三方工具QT(跨平臺C++圖形用戶界面應用程序)在電力自動化領域廣泛得到使用,用QT開發(fā)的告警窗口,試驗表明當table中達到1 000條左右信息時,其后插入新條目或刪除已有條目會很緩慢,不久就會出現(xiàn)問題。這個數(shù)字遠沒有達到極端情況下的大量、持續(xù)的壓力數(shù)據(jù)級別,比如30 s內(nèi)8 000條告警。試驗中還發(fā)現(xiàn)table保有的條目數(shù)較少時,插入、刪除和刷新操作較快,無延遲感。
針對上述問題,一種方法是“繞過”:將表格分成多頁處理,缺點是定位操作不便,沒有解決統(tǒng)一顯示的問題。提出了基于動態(tài)加載和多級緩存的處理方法,優(yōu)化了告警窗口設計,并按照雪崩測試條件進行了驗證。
告警系統(tǒng)在結構上分為3個部分:告警窗口,告警服務進程,告警查詢。
(1)告警窗口任務是告警信息的展示,分層分類[2],聲光信息提示,屏蔽過濾、用戶復歸、故障簡報等交互,以及作為告警系統(tǒng)的用戶界面的統(tǒng)一入口。
(2)告警服務進程任務是按定義規(guī)則產(chǎn)生告警,和底層復歸,告警匯總及智能分析等。
(3)告警查詢?nèi)蝿帐翘峁v史存儲信息的查找界面,提供各種關鍵字、層次關系以及模糊條件查找。
整個告警系統(tǒng)與SCADA系統(tǒng)的其他部分之間通過數(shù)據(jù)庫進行交互,前置接入以后信息通過實時庫機制傳遞到告警系統(tǒng)[3-4]。
圖1 告警結構示意
告警窗口采用多線程程序設計。分為主線程和子線程,將密集的數(shù)據(jù)處理任務放在子線程中處理,避免主線程的界面出現(xiàn)停止刷新或無響應卡死現(xiàn)象。主線程任務是接收告警和存入全局列表list receive,并將處理后的告警展示。子線程任務是處理list receive中的告警信息,并以信號槽方式通知主線程。
2.1 新處理方法的提出
圖2 多線程任務分配示意
一般人眼的視覺暫留時間為0.05~0.2 s,一屏大概40行左右,計算得知1 s內(nèi)能反映800~ 200條信息。按上述周期刷新較符合自然習慣,最多顯示800條/s信息。在大于800條/s時(如10 000條/s),以人眼能接受的刷新周期則只能一次處理多于40行,僅取前40行顯示。
試驗中發(fā)現(xiàn)一般QT的table中維護的條目超過3 000時插入、刪除會出現(xiàn)問題,反之保有的數(shù)目較小情況下響應迅速。文獻[5]對嵌入式軟件中QT界面響應慢的原因作了分析,指出資源占用和工具原理局限性是根本原因。該結論與一般工作站實驗情況相符,據(jù)此提出了動態(tài)緩存和多級緩存的方法。
2.2 動態(tài)加載原理及代碼設計
動態(tài)加載方法的原理如圖3所示,先緩存需要顯示的信息再分段加載到窗口。即把大量信息緩存在內(nèi)存中而不是窗口中,在對表格進行插入操作時實際處理的是“瘦身”過的表。
(1)當顯示的條目眾多,且每一個條目中包含了多種信息(如文本、圖片、控件等)時,一次性全部加載及顯示維護需要占用大量資源。反之,把大量信息條目從窗口中搬到內(nèi)存中,減小了窗口的內(nèi)存占用。
(2)對一張巨大的表格插入或刪除操作時,試驗表明耗時很長,這是優(yōu)化的關鍵所在。
圖3 動態(tài)加載原理示意
(3)窗口內(nèi)條目較少時,插入和刪除速度快,新告警能即時響應,并且滾動查看不會有延遲感。
滾動查看時逐次加載前后內(nèi)容,對用戶透明。該過程中先獲知滾動條位置再映射到緩存內(nèi)容的某一段,然后加載并顯示到窗口。滾動機制可通過信號槽實現(xiàn),主要代碼接口如下所示:
2.3 多級緩存
多級緩存分為3級:在收到報警信息時,首先進入一級緩存,原始信息緩存;2級緩存是指處理過并進入表格的信息緩存,便于滾動查看歷史,以提高響應速度;3級緩存是指每周期刷新處理的信息緩存(“窗口”或一屏),便于優(yōu)化顯示,多級緩存示意見圖4。
圖4 多級緩存示意
在發(fā)生故障時,各種故障信息分散,要通過操作多個模塊才能查看到所有的故障信息。例如要通過告警窗口查詢告警信息,通過保護設備管理工具來召喚錄波文件和查看保護定值及保護版本,通過故障錄波分析軟件來打開錄波文件進行分析;同時大量的次要信息也很容易干擾值班人員對重要信息的分析判斷。
故障信息綜合到告警窗口,將便于值班員調(diào)用查看,通過告警信息調(diào)用查看故障簡報和錄波波形,故障信息多維展示見圖5。
圖5 故障信息多維展示
多維展示的步驟:保護裝置在電網(wǎng)發(fā)生故障時動作,動作結束后生成一個錄波文件;將錄波文件包含的故障序號發(fā)送至一體化監(jiān)控系統(tǒng),然后將錄波狀態(tài)設為錄波結束;監(jiān)控系統(tǒng)通過對比故障序號上召對應的錄波文件,將hdr文件轉換成故障信息表格;監(jiān)控系統(tǒng)觸發(fā)告警系統(tǒng)產(chǎn)生一條包含報告按鈕的告警信息,通過點擊報告按鈕調(diào)用故障信息表格在展示窗口進行展示,并在告警窗口可查看錄波波形。
采用QT作為開發(fā)工具[6],在系統(tǒng)原平臺+應用的架構基礎上,針對告警系統(tǒng),按上述方案對告警窗口軟件進行優(yōu)化開發(fā)。其后進行了驗證測試,測試條件為:試驗機DELL OPTIPLEX790,WIN7 64位系統(tǒng)。處理器Intel Core i5-2400,CPU 3.10G,內(nèi)存8 GB,告警窗優(yōu)化前后對比數(shù)據(jù)見表1。
從表1中看出,優(yōu)化后的告警窗克服了“卡死”無響應現(xiàn)象,對大密度數(shù)據(jù)能即時響應,且存量數(shù)據(jù)不會成為新數(shù)據(jù)處理的負擔。另外,新增100條與新增500條的顯示時間相當,原因是處理中門檻值的存在。
表1 告警窗優(yōu)化前后對比數(shù)據(jù)
雪崩測試時,模擬8 000點變位(帶SOE),30 s發(fā)送完畢,顯示結束在發(fā)送后10 s左右。在顯示結束后,可拖動滾動條查看,對于16 000條的總量速度很快。
經(jīng)過多次穩(wěn)定測試和壓力測試,證明采用動態(tài)加載和多級緩存的方法,在大量突發(fā)告警信息情況下監(jiān)控系統(tǒng)能穩(wěn)定運行,按上述方法開發(fā)的告警窗口已擬應用于各特高壓變電站的監(jiān)控系統(tǒng)。
電力系統(tǒng)在發(fā)生故障時會突然產(chǎn)生大量的告警信息,如何有效地顯示、分析、利用好這些信息是一個開放的命題。可視化和人機工程學的研究有益于最終解決上述命題。雪崩測試即是測試信息系統(tǒng)在模擬的極端情況下的抗壓能力,是衡量系統(tǒng)的關鍵指標,反映出監(jiān)控系統(tǒng)在發(fā)生突發(fā)故障下的性能。設計的告警窗口嘗試解決大量密集告警信息的即時展示和故障信息的集中綜合展示問題,做了些許探索。此外,文中的動態(tài)加載和多級緩存方法,適用于處理各類信息量巨大的表格,提出的優(yōu)化顯示方法,已經(jīng)在多次檢測試驗中得到驗證。
[1]劉東,閆紅漫,丁振華,等.SCADA主站系統(tǒng)集成測試技術研究[J].電網(wǎng)技術,2005,23(2)∶62-67.
[2]劉瑩,劉俊勇,張建明,等.電網(wǎng)調(diào)度中的智能告警分類[J].電力自動化設備,2009,29(12)∶48-54.
[3]劉文彪,詹成國.跨平臺SCADA圖形系統(tǒng)的分析與設計[J].華電技術,2008,30(8)∶20-23.
[4]鐘昀,詹成國.分布式內(nèi)存數(shù)據(jù)庫在變電站自動化系統(tǒng)中應用[J].電力自動化設備,2007,27(3)∶116-119.
[5]高彥明,呂強,錢培德,等.試論嵌入式應用程序圖形界面刷新技術[J].計算機應用與軟件,2005,22(12)∶102-104.
[6]JASMIN BLANCHETTE,MARK SUMMERFIELD.C++ GUIProgramming with QT 4,second Edition[M].北京:電子工業(yè)出版社,2013.
(本文編輯:楊勇)
Optim ized Design M ethod of A larm W indow in Substation M onitoring System
WU Shiwei,SHIGuangde,ZHAN Chengguo,LIJingxia,JILing
(Guodian Nanjing Automation Co.,Ltd.,Nanjing 211153,China)
A large number of sudden alarm information generated from power system faults has impact on the information system.Read and write speed of database is fast enough,and communication technology has made considerable progress.Therefore,how to effectively display,analyze and use the information becomes a more instant issue.Due to the alarm window of instant display of a large number of dense information and centralized comprehensive display of fault information,by dynamic loading and multi-level bufferingmethod,the system can quickly and correctly responds to the change information in the avalanche test.Themulti-dimensional display method is easy to exclude the irrelevant information and focus on comprehensively displaying the fault information.This optimization approach has been verified in a number of tests and has been used inmonitoring system of the ultra-high voltage substation.
substation;monitoring system;alarm;dynamic loading;multi-dimensional display
TP274
B
1007-1881(2016)01-0015-04
2015-09-10
吳世偉(1982),男,碩士,工程師,從事電力自動化系統(tǒng)自動化方面的研究開發(fā)工作。