程 航,許曉平,洪燦梅,劉名揚,李英娜,李 川(昆明理工大學 信息工程與自動化學院,云南 昆明 650500)
基于IEC60870-5-104協(xié)議監(jiān)聽與測試系統(tǒng)的研究*
程 航,許曉平,洪燦梅,劉名揚,李英娜,李 川
(昆明理工大學 信息工程與自動化學院,云南 昆明 650500)
為了防止IEC60870-5-104協(xié)議通信中出現(xiàn)的主站抖動現(xiàn)象,開發(fā)了一個基于 IEC104協(xié)議的監(jiān)聽與測試系統(tǒng)。根據(jù)云南電網(wǎng)調度自動化系統(tǒng)生產運行的實際情況,對IEC104協(xié)議模型進行分析,使用SOCKET編程對通信報文進行抓包,并通過對測試數(shù)據(jù)的分析,成功地對IEC104規(guī)約運行狀況進行實時、可靠、準確的監(jiān)聽、分析與統(tǒng)計。測試結果驗證了監(jiān)聽與測試系統(tǒng)符合標準化的協(xié)議規(guī)范,而且能夠在主子站通信發(fā)生故障時第一時間報警,減少了網(wǎng)絡阻塞,提高了網(wǎng)絡通信的效率。
IEC104規(guī)約;測試與監(jiān)聽系統(tǒng);UML;遠動設備;報文分析
IEC60870-5-104協(xié)議具有可靠性高、實時性好、數(shù)據(jù)流量充足、支持網(wǎng)絡傳輸?shù)葍?yōu)點,因此 IEC104協(xié)議在電力系統(tǒng)中得到廣泛的應用。RTU設備的使用使得數(shù)據(jù)采集更為方便,但是在不同RTU設備的通信過程中會出現(xiàn)通信故障[1-6]。2011年上海申瑞電力科技股份有限公司梁竹靚等人提出分布式電力監(jiān)控系統(tǒng) IEC104規(guī)約通信單元的設計方法[7-9]。2012年華北電力大學薛飛總結并提出了一套針對 IEC104規(guī)約的以面向對象為理論基礎,統(tǒng)一建模語言為工具的高度結構化的編程實現(xiàn)框架,該實現(xiàn)框架具有更好的可維護性、可復用性[10-13]。IEC104協(xié)議僅規(guī)定了重傳多次后還未收到確認報文自動斷開連接,并沒有對這種故障發(fā)出任何警告,如果出現(xiàn)了網(wǎng)絡故障,主控站人員要經歷很長時間才能發(fā)現(xiàn),會導致主站抖動,使得數(shù)據(jù)無法上送和連接,造成網(wǎng)絡堵塞。
本文結合市場需求,研究一種基于IEC104遠動規(guī)約的監(jiān)聽與測試系統(tǒng),利用SOCKET編程實現(xiàn)對Client和Server端通信協(xié)議的抓包和數(shù)據(jù)檢測分析,當出現(xiàn)通信故障時會發(fā)送報警信息,使控制人員第一時間發(fā)現(xiàn)故障并解決問題,從而大大提高了IEC104的可靠性。
本文采用網(wǎng)絡監(jiān)聽的方式針對基于 TCP/IP協(xié)議族和電力通信領域的遠動傳輸協(xié)議IEC60870-5-104通信規(guī)約的測試分析方法進行研究。系統(tǒng)支持在線測試,并且可以長時間進行測試而無需人工干預;同時也支持離線分析,在線監(jiān)聽獲取通信過程中傳輸?shù)乃袛?shù)據(jù),并保存到數(shù)據(jù)庫或者文件中,可供線下分析。監(jiān)聽與測試系統(tǒng)的用例圖如圖1所示。
圖1 IEC104協(xié)議監(jiān)聽與測試系統(tǒng)的用例圖
測試系統(tǒng)主控站和從站的主線程流程圖如圖2、圖3所示。
圖3 測試系統(tǒng)的從站主線程的流程圖
監(jiān)聽系統(tǒng)作為第三方參與,不干涉通信雙方的具體通信僅當監(jiān)聽到有某條報文重復發(fā)送時,則向服務器端報警。監(jiān)聽系統(tǒng)的流程圖如圖4所示。
圖4 監(jiān)聽系統(tǒng)的流程圖
IEC104協(xié)議采用應答模式的通信方式,即發(fā)送一條報文后收到此條報文的確認報文才認為此次通信成功,否則將會重傳這條報文。例如未出現(xiàn)故障的遙控操作的泳道圖如圖5所示。
圖5 遙控操作未出現(xiàn)網(wǎng)絡故障時的泳道圖
在測試系統(tǒng)中當通信一方發(fā)送一條報文后在一定的時間內未收到確認報文,就會啟動重傳機制重傳此條報文。若還是未收到確認報文當未超過最大重傳次數(shù)時就繼續(xù)重傳,否則就自動斷開連接。圖6是出現(xiàn)通信故障時的遙控操作的泳道圖。
圖6 遙控操作出現(xiàn)故障時的泳道圖
測試系統(tǒng)中采用的超時處理方案如下:
(1)當TCP連接的時間超過30s還未收到目的子站的確認報文,則認為連接網(wǎng)絡出現(xiàn)了嚴重的情況,TCP連接失敗,重新發(fā)送測試報文。
(2)當鏈路空閑時為了確保鏈路處于聯(lián)通狀態(tài),會發(fā)送U格式的測試報文,若在15s內未收到確認報文則T1此時自動斷開TCP連接,隨后重新開始TCP連接。
(3)子站向主站發(fā)送執(zhí)行完畢報文或突發(fā)請求報文,希望獲得主站的S格式的報文確認回復,若10s內未收到主站的回復報文,則子站自動斷開TCP連接。
(4)當鏈路處于空閑狀態(tài)超過 30s,會啟動鏈路測試功能,向對方發(fā)送U格式的鏈路測試報文。
本文采用端口匯聚技術將物理上的兩個端口連接起來形成一條邏輯鏈路,并使用端口鏡像技術將通信報文復制到鏡像端口,通過對鏡像端口通信報文的監(jiān)聽實現(xiàn)監(jiān)聽測試系統(tǒng)的服務器端和客戶端之間的通信。使用這種監(jiān)聽方法的優(yōu)點是不會影響測試系統(tǒng)的正常通信,監(jiān)聽站作為第三方僅監(jiān)聽兩站的通信報文。圖7是測試系統(tǒng)配置圖。
圖7 測試系統(tǒng)配置圖
測試系統(tǒng)采用 C++語言和 codeblocks-10.05為開發(fā)平臺,使用wxWidgets開源軟件庫實現(xiàn)。根據(jù)IEC104規(guī)約結構要求,本文采用的測試系統(tǒng)類繼承關系如圖8所示。
圖8 IEC104協(xié)議類繼承關系
監(jiān)聽系統(tǒng)采用網(wǎng)絡監(jiān)聽工具Winpcap的庫函數(shù)API來實現(xiàn)捕獲數(shù)據(jù)包的功能。通過IP地址來區(qū)別主控站和從站。監(jiān)聽系統(tǒng)作為第三方僅監(jiān)聽鏡像端口的報文數(shù)據(jù),通過對報文的抓包分析,判斷遠動主站和子站的通信是否出現(xiàn)故障。監(jiān)聽系統(tǒng)要完成的最主要的功能是從TCP報文中準確地提取 IEC104報文和數(shù)據(jù)部分的重組,即流程圖中的解包和重組部分。解包和重組過程的流程圖如9所示。
圖9 解包和重組過程的流程圖
經過解包和重組后獲得了IEC104數(shù)據(jù)幀,對IEC104幀的解析主要是判斷是否是重復報文。如果是重復報文則向主控站報警并提供錯誤報文的基本信息。測試數(shù)據(jù)如圖10、圖11所示。
圖10 沒有發(fā)生故障時的測試數(shù)據(jù)
IEC104規(guī)約應用報文APDU包括APCI和ASDU,由圖10可以看出監(jiān)聽正常進行,TCP重組正確,報文格式和內容完全正確,且測試程序全部都能正確解析出來。
由圖11可以看出,在14:27:06時主從站應答正常;在14:27:16時主站連續(xù)發(fā)生同一段幀,此時主從站通信出現(xiàn)異常,系統(tǒng)應向主控站報警并提供錯誤報文的基本信息。
本文主要針對遠動主站和子站之間能否及時并正確的通信以及出現(xiàn)網(wǎng)絡故障不能及時發(fā)現(xiàn)的問題,設計開發(fā)了一種電力遠動設備的IEC60870-5-104通信協(xié)議監(jiān)聽與測試系統(tǒng)。通過建模、軟件設計和測試數(shù)據(jù)分析不僅能夠將報文分析以報表的形式輸出,大大降低工作人員調試的工作量,提高分析和判斷能力,同時也保證了電網(wǎng)的高效運行,還能在發(fā)生通信故障時第一時間報警,為電力遠動系統(tǒng)的正常運行提供了保障。
圖11 發(fā)生故障后的測試數(shù)據(jù)
[1]張建設,馬維青,郭晉洋.IE60870-5-104協(xié)議在遠動通信中的應用[J].電力系統(tǒng)自動化,2003,27(11):91-93.
[2]陳建榮,王樂春,龔正虎,等.協(xié)議一致性測試執(zhí)行系統(tǒng)的體系結構研究[J].計算機工程,2003,29(8):78-80.
[3]譚文恕.遠動信息的網(wǎng)絡訪問[J].電力系統(tǒng)自動化,2001,25(12):51-55.
[4]趙淵,沈智健.基于 TCP/IP的 IEC60870-5-104遠動規(guī)約在電力系統(tǒng)中的應用[J].電網(wǎng)技術,2003,27(10):56-60.
[5]杜龍,施魯寧,楊晉柏.基于 TCP/IP的 IEC60870-5-104遠動通信協(xié)議在直調廠站中的應用[J].電力系統(tǒng)保護與控制,2008,36(17):51-55.
[6]吳衛(wèi)華,唐健,楊瑞景,等.基于無線傳感網(wǎng)的智能電網(wǎng)線路傳感器系統(tǒng)的研制[J].微型機與應用,2013,32(5):54-56,59.
[7]梁竹靚,韓兵,彭永,等.IEC60870-5-104規(guī)約在分布式電力監(jiān)控系統(tǒng)中的應用[J].電力系統(tǒng)保護與控制,2011,39(4):124-127.
[8]李建軍,邵培南,段曉峰,等.軟件可靠性測試及評估平臺的設計與實現(xiàn)[J].微型機與應用,2014,33(15):10-12,22.
[9]牛春霞,宋瑋.IEC60870-5-104遠動網(wǎng)絡通信協(xié)議的應用與實施[J].河北電力技術,2006,25(1):30-32.
[10]朱彥杰,鄧昌延,李國杰,等.IEC104協(xié)議在變電站系統(tǒng)的應用與測試[J].繼電器,2004,32(1):43-45.
[11]李國棟,冶莉娟,李暉,等.104規(guī)約在青海電網(wǎng)調度自動化系統(tǒng)應用中的問題診斷及處理[J].青海電力,2011,30(1):56-59.
[12]王成山,王守相,郭力,等.我國智能配電技術展望[J].南方電網(wǎng)技術,2010,4(1):18-22.
[13]馮煥霞,楊俊華,鄭儉華,等.IEC60870-5-104協(xié)議的實時性能分析[J].華東電力,2009,37(4):0577-0581.
圖7 自主充電算法流程圖
參考文獻
[1]季國棟,王文理.蓄電池剩余容量檢測系統(tǒng)設計[J].微型機與應用,2015,34(3):38-40.
[2]林丹.一種室內清潔機器人返回路徑規(guī)劃算法[J].重慶科技學院學報,2010,2(1):110-113.
[3]沈玉,韓廷,武驥,等.一種電動汽車動力電池電流檢測系統(tǒng)的設計[J].電子技術應用,2014,40(7):69-71.
[4]梁喜鳳,室內地面清潔機器人路徑規(guī)劃[J].中國計量學院學報,2006,17(1):64-66.
[5]禹建麗,徐亮.室內自主清掃機器人的路徑規(guī)劃[J].中原工學院學報,2010,21(3):25-30.
[6]王三武,劉進.清掃機器人移動驅動機構的研究[J]機械制造與自動化,2008,37(5):89-95.
(收稿日期:2015-07-19)
作者簡介:
李進(1980-),女,碩士,講師,主要研究方向:嵌入式技術、物聯(lián)網(wǎng)技術。
Research of monitoring and testing system based on IEC60870-5-104 protocol
Cheng Hang,Xu Xiaoping,Hong Canmei,Liu Mingyang,Li Yingna,Li Chuan
(Paculty of Information Engineering and Automation,Kunming University of Science and Technology,Kunming 650500,China)
In order to prevent the master jitter in IEC60870-5-104 protocol communication,this paper developed a monitoring and testing system based on IEC104 protocol.According to the actual production and operation situation of Yunnan power grid dispatching automation system,it analyzed the model of the IEC104 protocol,used SOCKET program to capture communication packet,and then it succeeded in real-time,reliable,accurate monitoring,analysis and statistics of the operation status of IEC104 protocol on the basis of the test data.The test results verify the monitoring and testing system is conforming to the standardized protocol,it could alarm at the first time when communication get out of order,and it also could reduce network congestion and improve the efficiency of network communication.
IEC104 protocol;testing and monitoring system;UML;telemechanics equipment;message analysis
TP311
A
1674-7720(2015)22-0014-04
程航,許曉平,洪燦梅,等.基于 IEC60870-5-104協(xié)議監(jiān)聽與測試系統(tǒng)的研究[J].微型機與應用,2015,34(22):14-17.
2015-06-23)
程航(1990-),男,碩士研究生,主要研究方向:電網(wǎng)規(guī)約通信與計算機技術。
李川(1971-),通信作者,男,教授,博士生導師,主要研究方向:光纖 Bragg光柵傳感器的應用。E-mail:boatriver@eyou.com。
云南省應用基礎研究計劃項目(2013FZ021);中國博士后科學基金(一等資助)(2014M552552XB)