国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

異步傳輸方式在IEC60870—5—104規(guī)約中的應用

2014-11-12 10:26:29夏焱朱巖
無線互聯(lián)科技 2014年10期
關鍵詞:傳輸方式子站規(guī)約

夏焱 朱巖

摘 要:為了滿足配電網自動化中高容量數(shù)據(jù)存儲、高速率數(shù)據(jù)通信的通信要求,根據(jù)異步傳輸?shù)奶攸c,結合IEC60870-5-104協(xié)議的參考模型,提出了異步傳輸方式在IEC60870-5-104規(guī)約中的應用設計。軟件部分以.NET為平臺,采用C#語言設計異步回調方法,結合多線程,實現(xiàn)數(shù)據(jù)傳輸,并快速、實時響應主站操作。結果表明,使用異步傳輸方式,可以滿足系統(tǒng)的實時性,快速性,有效性。

關鍵詞:IEC60870-5-104;異步傳輸;配電自動化;回調;多線程

隨著世界電力系統(tǒng)的飛速發(fā)展,電力技術日新月異,IEC60870-5-104規(guī)約也應運而生。IEC60870-5-104遠動規(guī)約主要應用于調度主站與RTU之間的數(shù)據(jù)傳輸。它將IEC60870-5-101的應用層與TCP/IP網絡傳輸層相結合,在確保規(guī)約標準化的同時也保證了通信的實時性和可靠性。

1 異步傳輸與同步傳輸要點

1.1 異步傳輸(Asynchronous Transmission)

異步傳輸是將數(shù)據(jù)(BIT)先分成若干個部分再進行傳輸。發(fā)送端發(fā)送數(shù)據(jù)是隨機的,可以在任意時刻發(fā)送,所以接收方不能準確的計算出數(shù)據(jù)何時會到達。

在異步傳輸模式中,需要在待傳送字符碼前添加起始位,用來表示字符碼傳輸?shù)拈_始;而在字符碼后面同樣需要添加1-2個停止位,用來表示字符結束。通過起始位和停止位,接收方便可以判斷出一個新字符是否開始或結束,最終使得發(fā)送方與接收方達到同步[1]。

1.2 同步傳輸(Synchronous Transmission)

同步傳輸是把字符組合起來一并發(fā)送,同樣的,每個字符都需要加上起始位和停止位。我們把這些組合叫做數(shù)據(jù)幀,簡稱為幀[2]。

數(shù)據(jù)幀頭即起始位,它是一種特殊的比特組合,其作用是告知接收方數(shù)據(jù)幀是否已送達,同時,它還能使得發(fā)送方與接收方進入同步,保證了數(shù)據(jù)的傳輸速度和接收方的讀取速度相一致。數(shù)據(jù)幀尾是結束標志位,相當于停止位,其作用是表示數(shù)據(jù)已經傳輸結束,不會再有其他數(shù)據(jù)到達。

1.3 異步傳輸與同步傳輸?shù)膮^(qū)別

由于字符之間通過異步方式來傳輸,所以異步傳輸方式并不需要發(fā)送方和接收方的時鐘同步。而對于同步傳輸方式來說,發(fā)送方和接收方則需時鐘同步,因為字符間的傳輸是同步的。

異步傳輸?shù)臅r候,需要調用異步函數(shù)發(fā)送數(shù)據(jù),這個函數(shù)立馬有返回值返回,程序可以繼續(xù)執(zhí)行其他函數(shù);接收時,當異步函數(shù)有數(shù)據(jù)來時,將會收到通知,或者直接調用回調函數(shù)。

同步傳輸?shù)臅r候,對方在確認收到數(shù)據(jù)之前,該函數(shù)無返回值;接收時,線程就一直處于等待狀態(tài),直到接收到返回值,然后繼續(xù)執(zhí)行其他指令,否則不執(zhí)行任何操作[3]。

2 IEC60870-5-104協(xié)議

為了適應網絡更安全更高效的傳輸,國際電工委員會制訂了IEC60870-5-104規(guī)約,它是以IEC60870-5-101遠動通信規(guī)約為基礎的。IEC60870-5-104規(guī)約利用以太網進行傳輸,網絡層使用TCP/IP協(xié)議,應用層使用IEC60870-5-101規(guī)約中的應用服務數(shù)據(jù)單元(ASDU)。

IEC60870-5-104遠動規(guī)約結構[4]如圖1所示。在該圖的5層結構中,IEC60870-5-104規(guī)約處于應用層協(xié)議的位置。IEC60870-5-104規(guī)約規(guī)定傳輸層使用的是TCP協(xié)議,每一種應用層協(xié)議都有一個網絡端口號對應。應用規(guī)約數(shù)據(jù)單元(APDU),是由應用規(guī)約控制信息(APCI)和應用服務數(shù)據(jù)單元(ASDU)兩部分組成,它是一個標準的數(shù)據(jù)幀[5]。

3 異步傳輸在104中的應用

IEC60870-5-104規(guī)約通信過程主要包括以下幾個步驟:

3.1 建立連接過程

TCP連接和建立采用客戶端/服務器端方式,在建立TCP連接之前,服務器端始終處于偵聽狀態(tài)以等待客戶端的連接請求,客戶端不斷的向服務器端發(fā)出連接請求;當服務器端接收到連接請求以后,TCP連接建立,并開始持續(xù)的監(jiān)測TCP連接狀態(tài),以便TCP連接被關閉或意外斷開后重新發(fā)出連接請求[6][9]。

3.2 啟動傳輸

其數(shù)據(jù)幀為U格式幀,主要用于測試鏈路、啟動/停止數(shù)據(jù)傳輸。在建立連接后,由于建立連接時STOPDT處于未確認狀態(tài),服務器端不會發(fā)送任何數(shù)據(jù),直到客戶端主動發(fā)送一個STARTDT指令用來激活用戶數(shù)據(jù)的傳輸[7]。如圖2所示:

3.3 總召

由主站啟動發(fā)送。子站收到總召命令后依次向主站發(fā)送總召確認幀、測試幀、結束幀,來完成整個總召激活過程。

3.4 數(shù)據(jù)傳輸

準備工作完成后,子站開始主動地向主站即服務器端發(fā)送數(shù)據(jù)。

3.5 對時

主站發(fā)送時間同步數(shù)據(jù)幀,啟動對時命令,子站在收到幀后更新時間,并向主站發(fā)送確認幀。

3.6 子站事件自動上傳

根據(jù)實際情況,子站將主動的向主站發(fā)送一些突發(fā)事件。以太網對于服務器端和客戶端都是一個高速的全雙工網絡,因此IEC6080-5-104的傳輸方式應當選擇非平衡式傳輸。

3.7 命令傳輸

主站向子站發(fā)送命令,子站返回確認并發(fā)送數(shù)據(jù),最后子站向主站發(fā)送總召結束命令[8]。

由于IEC60870-5-104規(guī)約的特殊性,接收方不知道什么時候數(shù)據(jù)會到達,不能做到與發(fā)送方的時鐘同步,所以采用的是非平衡方式傳輸,即一方發(fā)起通訊,另一方進行響應。采用網絡協(xié)議的IEC60870-5-104規(guī)約,子站會將消息主動上傳到主站,數(shù)據(jù)幀解析后再將消息交給線程進行處理,所以采用的是異步傳輸方式。設計流程圖如圖3。

通訊過程中連接的建立使用Socket異步傳輸方法BeginReceiveAsync()和EndReceiveAsync()來接收、處理數(shù)據(jù)包,當數(shù)據(jù)處理結束后,使用AsyncCallback委托方法回調[10]。

// 啟動異步

this.socket.BeginReceiveFrom(packet.Data, 0, UdpPacket.BUFFERSIZE,SocketFlags.None,ref packet.RemoteEndPoint, new AsyncCallback(EndReceiveAsync), packet);

在建立TCP連接之前,服務器端需要始終處于偵聽狀態(tài)以等待客戶端的連接請求,這里使用的是TcpListener類進行偵聽;客戶端不斷的向服務器端發(fā)出連接請求,建立連接后,開始并持續(xù)監(jiān)測TCP連接的狀態(tài),當TCP連接被關閉或斷開后,客戶端立即重新向服務器端發(fā)出連接請求。

連接建立后,客戶端與服務器端之間就可以開始數(shù)據(jù)交互傳輸。由于同步傳輸是單線程的,等待操作的過程中可能會導致方法阻塞,異步方法很好的解決了這些問題,異步執(zhí)行某個方法,程序在線程池里選取一個新線程來運行該異步方法,這樣主線程就不容易卡死。

由異步開辟出的新線程,用完之后我們要想辦法將它回收。這里我們使用的是異步回調方法。其核心如下:

⑴使用回調函數(shù),異步操作結束后,程序將會自動調用此回調函數(shù)。

⑵在主線程的回調函數(shù)中使用EndInvoke方法。

異步回調的大致流程:啟動異步,在主程序里加上異步結束時所需執(zhí)行的回調函數(shù),然后就可以繼續(xù)執(zhí)行其他程序,最后當此異步線程工作自動完成,就會執(zhí)行主程序里的那個回調函數(shù),將其結果返回給主函數(shù),并執(zhí)行下一步操作。如圖4所示:

采用異步回調的方法,并運用多線程的處理,可以在等待響應的過程中執(zhí)行下一行代碼,大幅提高程序的運行速率,防止程序因等待過程的無響應而死掉。最好的體現(xiàn)就是在IEC60870-5-104中與連接有關的四個超時時間t0-t3。通過異步回調,程序可以在等待響應的時間段里繼續(xù)執(zhí)行后面代碼,而通過回調函數(shù)可以接收到超時狀態(tài),有效的解決了因等待而造成的程序停滯、癱瘓,體現(xiàn)了其快速性、高效性、可靠性。

4 結語

隨著計算機網絡技術和電力自動化技術的蓬勃發(fā)展,國家電網對配電自動化水平的要求越來越高,電力監(jiān)控系統(tǒng)越來越多地使用IEC60870-5-104遠動規(guī)約。作為國際化標準,IEC60870-5-104規(guī)約能很好地保證通信的統(tǒng)一性和安全性。而使用異步傳輸方式,可以有效的提高IEC60870-5-104規(guī)約的傳輸效率,使得IEC60870-5-104規(guī)約更加簡單可靠,在未來的配電網自動化發(fā)展中的應用也將會越來越廣泛。

[參考文獻]

[1]D.W.CALDWELLA Distributed Spacecraft Thermal Control Architecture Using the Dallas Semicinductor MicroLan Products.Digital Avionics Systems Conference,1997,10:1-8.

[2]姜川.汽車音響系統(tǒng)中雙機通信的設計與實現(xiàn)[D].遼寧:大連理工大學.2007.

[3]葛紉秋,王玉花,馬秋菊,等.實用微機接口技術[M].北京:高等教育出版社.2003:172-175.

[4]劉玉芳.華為交換機維護心得[J].江西通信科技.2007.

[5]彭永峰.104規(guī)約通信在遠動系統(tǒng)的應用[J].科技資訊.2010.

[6]魯晶.基于DES理論的IEC60870-5-104通訊異常的自動探測方法[D].湖南:長沙理工大學.2013.

[7]薛飛.IEC60870-5-104協(xié)議的軟件建模與實現(xiàn)[D].北京:華北電力大學.2012.

[8]朱永利,王德文,邸劍,等.遵循IEC61850的新型網絡化電力遠動系統(tǒng)[J].華北電力大學學報.2008,35(6).

[9]邵留成.程控交換機的維護與管理[J].電力與能源.2009.

[10]陳什,朱巖.大規(guī)模車輛監(jiān)控系統(tǒng)中通信服務器的設計與實現(xiàn)[J].計算機與現(xiàn)代化.2011.

猜你喜歡
傳輸方式子站規(guī)約
液壓平推CNG子站改造為標準CNG子站的建議
電力系統(tǒng)通信規(guī)約庫抽象設計與實現(xiàn)
測控技術(2018年7期)2018-12-09 08:58:34
一種在復雜環(huán)境中支持容錯的高性能規(guī)約框架
一種改進的LLL模糊度規(guī)約算法
淺談10kV配電自動化系統(tǒng)設計
可穿戴式多通道傳感系統(tǒng)功能需求分析及設計
配電自動化建設方案研究
科學家(2016年4期)2016-07-25 03:07:01
基于分布式傳感器的GIS局部放電在線監(jiān)測實時數(shù)據(jù)傳輸方式的研究
電測與儀表(2016年1期)2016-04-12 00:35:16
淺談工程建設中的信息化發(fā)展與網絡傳輸方式選擇
修辭的敞開與遮蔽*——對公共話語規(guī)約意義的批判性解讀
信宜市| 苏尼特左旗| 东源县| 云浮市| 广灵县| 思南县| 胶州市| 内丘县| 临武县| 聂荣县| 新平| 固镇县| 田东县| 清涧县| 大厂| 乌兰察布市| 肇庆市| 南澳县| 田东县| 闽清县| 北安市| 阿拉善右旗| 巴林左旗| 牙克石市| 渭南市| 岱山县| 永昌县| 富阳市| 武定县| 陵水| 锡林郭勒盟| 勐海县| 万全县| 黑河市| 瑞昌市| 平凉市| 醴陵市| 镇远县| 岳池县| 长沙市| 锡林浩特市|