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

?

IEC61850服務(wù)映射中的矛盾及一種解決方案

2013-10-22 03:08:50張雙悅楊士元
電力自動化設(shè)備 2013年3期
關(guān)鍵詞:數(shù)據(jù)類型數(shù)據(jù)結(jié)構(gòu)客戶端

張雙悅,王 紅,楊士元,胡 喜

(1.清華大學(xué) 自動化系,北京 100084;2.西門子(中國)研究院,北京 100080)

0 引言

隨著智能電網(wǎng)技術(shù)的發(fā)展,國內(nèi)的變電站數(shù)字化工作正在迅速發(fā)展中[1-2]。IEC61850系列標(biāo)準(zhǔn)是由國際電工委員會57號技術(shù)委員會(IEC TC 57)所制定的、面向變電站相關(guān)網(wǎng)絡(luò)通信需求的標(biāo)準(zhǔn)。IEC61850標(biāo)準(zhǔn)中定義了設(shè)備抽象通信服務(wù)接口(ACSI),并通過具體通信服務(wù)映射SCSM(Specific Communication Service Mapping)將其中抽象數(shù)據(jù)結(jié)構(gòu)及大部分抽象服務(wù)都映射到制造報文規(guī)范MMS(Manufacturing Message Specification)來進(jìn)行實(shí)現(xiàn),使得MMS協(xié)議成為智能設(shè)備設(shè)計中的一個技術(shù)關(guān)鍵。

由于MMS并不能完備地提供IEC61850標(biāo)準(zhǔn)所需要的數(shù)據(jù)類型和服務(wù)功能,在SCSM中存在著不少定義模糊甚至映射偏差的現(xiàn)象,很可能出現(xiàn)使用者對標(biāo)準(zhǔn)的理解不一致的情況。國家電力調(diào)度通信中心曾經(jīng)組織開展互操作實(shí)驗(yàn),結(jié)果并不是很理想[3]。

目前IEC61850標(biāo)準(zhǔn)的通信系統(tǒng)的實(shí)現(xiàn)得到了廣泛關(guān)注,但在工程中大多是直接使用第三方開發(fā)工具。在第三方開發(fā)工具中已對SCSM進(jìn)行了封裝,使設(shè)計者不再需要考慮上述問題。然而隨著變電站設(shè)備的專用性越來越強(qiáng),在一些應(yīng)用場合需要對標(biāo)準(zhǔn)進(jìn)行裁剪和簡化實(shí)現(xiàn),在這種需求下,由于第三方開發(fā)工具帶來的種種限制,需要在通用平臺上進(jìn)行開發(fā)。

對于上述問題,之前的研究大多著眼于如何成功完成映射[4-7],而對映射過程中產(chǎn)生的偏差和矛盾的研究并不多。為盡量保證設(shè)備的互操縱性,之前一般都是使用完備、高兼容性的開發(fā)方案,但這也帶來了一定的冗余和浪費(fèi)。同時,在目前的一些方案中,還存在著與IEC61850標(biāo)準(zhǔn)要求不太一致的地方。

本文在使用MMS實(shí)現(xiàn)IEC61850服務(wù)的過程中,就偏差和矛盾比較突出的設(shè)備數(shù)據(jù)結(jié)構(gòu)、目錄服務(wù)及數(shù)據(jù)讀取服務(wù)三方面出現(xiàn)的問題進(jìn)行分析,提出既滿足相關(guān)標(biāo)準(zhǔn)要求、又能有效地減小資源浪費(fèi)的開發(fā)方案,在此基礎(chǔ)上使用C語言實(shí)現(xiàn)了一個基于MMS的IEC61850服務(wù)器模型,并完成與第三方客戶端軟件的通信。

1 設(shè)備數(shù)據(jù)結(jié)構(gòu)模型的實(shí)現(xiàn)

在IEC61850中定義了ACSI用于設(shè)備數(shù)據(jù)結(jié)構(gòu)和服務(wù)的建模[8-9],然后根據(jù)標(biāo)準(zhǔn)中定義的SCSM將這些抽象模型使用 MMS 數(shù)據(jù)結(jié)構(gòu)[10]及服務(wù)[11]進(jìn)行具體的實(shí)現(xiàn)[12]。

ACSI中定義了5層數(shù)據(jù)結(jié)構(gòu)模型:SERVER、LD(Logical Device)、LN(Logical Node)、DATA 和CB(Control Block)、DA(Data Attribute)和 CBA(CB 屬性),其中DATA和DA存在由自嵌套產(chǎn)生的層內(nèi)再次分層的現(xiàn)象。

如圖1所示,只有3種MMS數(shù)據(jù)類型被用在設(shè)備數(shù)據(jù)結(jié)構(gòu)中:SERVER被映射到 VMD(Virtual Manufacturing Device),LD 被映射到 Domain,而 LN以及其中所包含的DATA、DA、CB和CBA全部被映射到一系列有嵌套關(guān)系的NV(Named Variable)。根據(jù)IEC61850-8-1中的描述,只有LN、DA和CB被映射為NV,但同樣據(jù)其所述在具體映射過程中包含了2次映射:第一次映射先將LN映射為獨(dú)立的NV,根據(jù)拓?fù)浣Y(jié)構(gòu)的映射關(guān)系將該LN之中所有DATA及其DA、CB及其屬性映射為該LN的相互之間具有嵌套關(guān)系的組件;第二次映射將上述LN所映射的NV及其中所有組件映射到其所屬Domain中的一組平等關(guān)系的NV。所以原本在MMS定義中不具有自嵌套關(guān)系的NV類型實(shí)際上被當(dāng)作一個自嵌套的數(shù)據(jù)結(jié)構(gòu)使用,且DA和CBA也被映射為NV??芍?,一個LN的數(shù)據(jù)結(jié)構(gòu)被映射為一棵NV樹。

圖1 ACSI數(shù)據(jù)結(jié)構(gòu)模型的映射Fig.1 Mapping of ACSI data structure

在ACSI中,每個DA實(shí)例都有一個確定的功能約束(FC),一個帶有FC的DA被稱為FCDA,與之類似每個CBA也都有一個確定的FC,并且同一個CB的所有屬性FC相同。

FC表征了某個數(shù)據(jù)實(shí)例可以支持的服務(wù)類型,用于對外部訪問的控制,對于CB而言其屬性FC同時表征了該控制模塊的類型。

由于FC在外部通信服務(wù)處理中的重要作用,所以其在映射后的數(shù)據(jù)結(jié)構(gòu)中非常重要。如圖2所示,將DATA中所有FC相同的DA組成一個FCD,CB直接作為一個FCD,然后一個LN中所有FC相同的FCD組織在一起作為LN的一個成員,根據(jù)LNFC-FCD-FCDA的拓?fù)潢P(guān)系在NV樹中組織數(shù)據(jù)。

圖2 ACSI和MMS數(shù)據(jù)拓?fù)浣Y(jié)構(gòu)的差異Fig.2 Difference of data topology between ACSI and MMS

在NV樹中,所有的LN、FC、FCD和FCDA是同等地位的變量,每個節(jié)點(diǎn)用構(gòu)成方式為LNFCFCDFCDA的字串作為名字被MMS服務(wù)用作節(jié)點(diǎn)的訪問,節(jié)點(diǎn)在映射前的具體類型在映射過程中被消除。

由于MMS的拓?fù)浣Y(jié)構(gòu)和ACSI的拓?fù)浣Y(jié)構(gòu)并不一致,所以在數(shù)據(jù)結(jié)構(gòu)的實(shí)現(xiàn)中,至少存在完全基于MMS、完全基于ACSI、混合模式及冗余模式這4類數(shù)據(jù)結(jié)構(gòu)的實(shí)現(xiàn)方式[13]。

在完全基于MMS的模式中,樹形數(shù)據(jù)結(jié)構(gòu)的最上層是VMD,第2層是Domain,下面每層都是NV。該結(jié)構(gòu)便于MMS服務(wù)對其進(jìn)行成員的定位,卻完全破壞了ACSI的拓?fù)浣Y(jié)構(gòu)。根據(jù)ACSI規(guī)范,在沒有FC的條件下訪問DATA需要忽略第2層NV直接對第3層進(jìn)行訪問,原本的一個DATA被拆成了若干FCD來進(jìn)行訪問,會增加搜索開銷。文獻(xiàn)[13]在此基礎(chǔ)上進(jìn)行了一些改進(jìn),但仍使用MMS的數(shù)據(jù)拓?fù)浣Y(jié)構(gòu),將多層NV根據(jù)實(shí)際ACSI含義進(jìn)行單獨(dú)的類型定義以體現(xiàn)層間的區(qū)別,沒有本質(zhì)上的變化。

完全基于ACSI的模式利于設(shè)備內(nèi)部系統(tǒng)的訪問,但是該結(jié)構(gòu)中缺少FC。一個簡單的處理方式就是文獻(xiàn)[14]中提出的ACSI-FC混合模式,除了基本信息外,每個DA再添加一個FC信息,在通過MMS的拓?fù)浣Y(jié)構(gòu)訪問FCD時需要遍歷該DATA的所有DA,然后對葉節(jié)點(diǎn)根據(jù)FC進(jìn)行過濾。訪問時必須遍歷所有DA才能確定某個FC在LN或DATA中是否存在。文獻(xiàn)[15]的解決方法則是在LN和DATA中添加一個FC列表來記錄其所包含的FC類型。

本文使用基于ACSI的混合模式,如圖3所示。因?yàn)樵O(shè)備的內(nèi)部智能系統(tǒng)與數(shù)據(jù)結(jié)構(gòu)聯(lián)系更加緊密,數(shù)據(jù)組織的邏輯性也更好。

圖3 基于ACSI拓?fù)涞臄?shù)據(jù)結(jié)構(gòu)設(shè)計Fig.3 Data structure design based on ACSI topology

由于DATA和DA都有復(fù)合的情況,且CB數(shù)據(jù)結(jié)構(gòu)與它們相近,所以統(tǒng)一建模為IedData類型。IedData 類型是一個{Name,F(xiàn)C,Type,Len,Value}的五元組。Type除了用于NV樹葉節(jié)點(diǎn)的基本數(shù)據(jù)類型外,還包含了DATA、復(fù)合DA、CB等類型用于非葉節(jié)點(diǎn);FC是這個節(jié)點(diǎn)的FC標(biāo)識;Len在不同的類型中含義不同;Value是一個union類型,根據(jù)Type來確定被使用的是哪一個成員。使用這種方式的優(yōu)勢在于,LN之下的DATA、CB及其屬性的數(shù)據(jù)結(jié)構(gòu)建立、搜索和訪問在程序?qū)崿F(xiàn)可以統(tǒng)一進(jìn)行。而對于SERVER、LD和LN都單獨(dú)建立數(shù)據(jù)結(jié)構(gòu)模型,IedLogicalNode同樣用一個FC標(biāo)識來表示LN的數(shù)據(jù)類型中的FC類型。圖4為使用IedData類型建立的DATA對象實(shí)例。

使用基于ACSI的模式時,最關(guān)鍵的問題是如何進(jìn)行FC的實(shí)現(xiàn)。文獻(xiàn)[15]中使用鏈表來存儲FC,但存儲和搜索的開銷都會比較大,本文在此基礎(chǔ)上進(jìn)行了改進(jìn)。

由于一共只有17種FC,所以使用一個UINT32中的二進(jìn)制位權(quán)來表示FC:每個單獨(dú)的FC標(biāo)識都是一個2n的數(shù)值且n的取值不同,那么一個LN或DATA的FC標(biāo)識只需用其所有成員的FC標(biāo)識進(jìn)行位或操作即可很方便地得到。

圖4 使用IedData類型建立的DATA對象實(shí)例Fig.4 Example of object constructed with IedData

而在對樹形數(shù)據(jù)結(jié)構(gòu)進(jìn)行搜索或遍歷時,如果有確定的一個或多個FC限制,則將它們進(jìn)行位或操作后得到一個“過濾器”,與結(jié)構(gòu)樹中每個節(jié)點(diǎn)的FC進(jìn)行位與操作,如果結(jié)果為零則跳過這一節(jié)點(diǎn)。如果沒有FC限制,則使用0xFFFFFFFF進(jìn)行搜索即可。在設(shè)備互操作需求的不斷發(fā)展中可能會出現(xiàn)對若干個FC同時進(jìn)行訪問的情況,這種方式將會明顯比使用FC列表的方式更便捷。

在各種FC中,控制對象(CO)和SP(設(shè)定值)處理起來比較麻煩。

SP可能出現(xiàn)在CB中也可能出現(xiàn)在DATA中,而在標(biāo)準(zhǔn)中這2種情況的外部訪問限制并不相同,所以使用2個不同的FC值來標(biāo)記:CB及其屬性為SPb,DATA或DA為SPd。以FC=SP為條件搜索時用上述2個FC值的位或結(jié)果作為“過濾器”,同時對它們進(jìn)行搜索,將這個“過濾器”與當(dāng)前IedData節(jié)點(diǎn)的FC值進(jìn)行位與即可得到唯一的FC值。

控制對象特定用于ACSI控制服務(wù),允許目錄而不允許讀取,結(jié)構(gòu)固定,內(nèi)部系統(tǒng)也沒有讀取的需要,所以在開發(fā)過程中選擇不實(shí)現(xiàn)控制對象,只進(jìn)行FC值的標(biāo)記以表示這個DATA包含控制對象,在目錄服務(wù)中對其FC進(jìn)行特殊處理。

由于映射中數(shù)據(jù)類型及拓?fù)浣Y(jié)構(gòu)的變化,再加上服務(wù)功能本身的一些限制,導(dǎo)致在服務(wù)的映射中會出現(xiàn)偏差甚至矛盾,在目錄和數(shù)值讀取服務(wù)上表現(xiàn)的最為嚴(yán)重,下面將對其具體實(shí)現(xiàn)進(jìn)行分析。

2 兩級目錄服務(wù)的實(shí)現(xiàn)

ACSI對5層數(shù)據(jù)結(jié)構(gòu)模型中的上面4層都定義了目錄服務(wù),用于獲取各節(jié)點(diǎn)包含的下一層節(jié)點(diǎn)信息。而在SCSM中,這一系列服務(wù)只映射為2種MMS服務(wù)。由于不同層上的服務(wù)被映射成同一種服務(wù),加之?dāng)?shù)據(jù)組織拓?fù)浣Y(jié)構(gòu)的變化,在服務(wù)的實(shí)現(xiàn)中存在著一些矛盾[16]。

目錄服務(wù)映射關(guān)系如表1所示。在MMS中,GetNameList請求的參數(shù)包括特定類型和數(shù)據(jù)類型,結(jié)合設(shè)備數(shù)據(jù)結(jié)構(gòu)的特點(diǎn),只有部分請求參數(shù)有對應(yīng)的ACSI含義,對于其他請求情況可以回復(fù)服務(wù)錯誤或者根據(jù)實(shí)際情況進(jìn)行回復(fù)。通過GetNameList(Domain,VMD-specific)實(shí)現(xiàn) GetServerDirectory 時,服務(wù)的功能在映射時沒有出現(xiàn)改變,但是對于5層數(shù)據(jù)結(jié)構(gòu)中下面4層的目錄服務(wù)會出現(xiàn)一些問題。GetNameList(NV,Domain-specific)服務(wù)可以獲取一個Domain中的所有NV對象的名字,即在ACSI中所提出的分類型、分層次的目錄獲取實(shí)際上是同時進(jìn)行的;此外,由于FCDA也被當(dāng)作NV來處理,按照MMS其也會被包含在獲取結(jié)果中,但是按照ACSI規(guī)范則屬于無效信息。

表1 目錄服務(wù)映射關(guān)系Tab.1 Mapping of directory service

在MMS中,GetVariableAccessAttribute用于NV對象的類型定義,在返回的完整結(jié)構(gòu)的樹形類型定義描述中,每個節(jié)點(diǎn)都包含了其名字,即該服務(wù)一次性返回2個ACSI服務(wù)原型所需要的結(jié)果。此外,在ACSI規(guī)范中,被獲取對象只要求返回最高層子節(jié)點(diǎn)的信息,而被請求被限制為FCD和FCDA。

在目錄服務(wù)的映射過程中,共同點(diǎn)是MMS服務(wù)覆蓋了ACSI服務(wù)的需求,但有可能超出ACSI范圍的功能,或者返回多余的ACSI所請求的信息。同時,映射之后的2層服務(wù)的覆蓋范圍之間存在著重疊。

根據(jù)MMS,僅使用單一的GetNameList請求即可獲得除葉節(jié)點(diǎn)的數(shù)據(jù)類型外的完整設(shè)備結(jié)構(gòu),但是根據(jù)這個服務(wù)的返回結(jié)果進(jìn)行數(shù)據(jù)結(jié)構(gòu)重建的單位工作量和總工作量都很大,通??蛻舳思词公@取了全部的名字,仍然需對其進(jìn)行過濾來選取需要的部分,而之后如果需要下層數(shù)據(jù)結(jié)構(gòu)則再次發(fā)送GetVariableAccessAttribute請求,如SIEMENS公司的IEC Browser對收到的名字列表過濾到頂層FCD,而OMICRON公司的IEDScout則過濾到LN。ACSI樹形數(shù)據(jù)結(jié)構(gòu)的特點(diǎn)導(dǎo)致被過濾的無效信息占據(jù)了大部分返回結(jié)果。這些無效信息的傳輸浪費(fèi)了一定的網(wǎng)絡(luò)帶寬,而且即使目錄服務(wù)并不被頻繁調(diào)用,在服務(wù)器端也需要為目錄服務(wù)的響應(yīng)提供更多的資源,如目錄列表的存儲空間等。

基于客戶端的上述應(yīng)用特性,服務(wù)器實(shí)現(xiàn)時可以不依循MMS,而主動對名字列表進(jìn)行過濾,只發(fā)送其中位于樹形結(jié)構(gòu)上部的部分[16]。但是使用這種方法后,如果客戶端不接受服務(wù)器的主動過濾,可能會出現(xiàn)互操作性問題。

雖然進(jìn)行主動過濾并不滿足MMS,但是根據(jù)ACSI的服務(wù)規(guī)范,服務(wù)器是可以進(jìn)行主動過濾的。由于所實(shí)現(xiàn)的是基于IEC61850標(biāo)準(zhǔn)的通信系統(tǒng),雖然適應(yīng)性可能會降低,但MMS只是實(shí)現(xiàn)ACSI的一個工具,進(jìn)行主動過濾仍然是一種合理的選擇。主動過濾后,只要服務(wù)器能夠?qū)杉壞夸浄?wù)覆蓋整個數(shù)據(jù)結(jié)構(gòu),那么整個目錄服務(wù)就是完備的。

如果依循 ACSI規(guī)范,GetLogicalNodeDirectory所返回的最小單元應(yīng)該是DATA,但在真實(shí)的數(shù)據(jù)結(jié)構(gòu)中沒有這一層,那么這個過濾的分界線可以選擇FCD(保留 3~4層 NV)、頂層 FCD(保留 3層 NV)或者 FC(保留 2層 NV)。

如果只考慮服務(wù)器端,為了較高的兼容性,可以選擇過濾到FCD。如果同時考慮通信雙方,一種比較理想的實(shí)現(xiàn)方式如圖5所示??蛻舳司哂幸欢ǖ淖儎有裕谑褂肎etNameList獲取上層目錄結(jié)構(gòu)后,根據(jù)服務(wù)器端的返回結(jié)果來選擇合適的GetVariableAccessAttribute獲取下層目錄結(jié)構(gòu),使得兩級目錄服務(wù)沒有交疊的部分或盡量減小交疊的部分;而服務(wù)器端則根據(jù)具體的數(shù)據(jù)結(jié)構(gòu)特點(diǎn)來選擇合適的過濾分界線,如在測量和計算等功能的LN中,DATA和DA的復(fù)合很普遍,分界線的選擇可以偏低一些,而如果DATA、DA均較簡單,則分界線的選擇可以偏高一些,如以FC為分界線。當(dāng)然這需要服務(wù)器端和客戶端雙方的配合。

圖5 需要通信雙方配合的兩級目錄服務(wù)實(shí)現(xiàn)Fig.5 Implement of 2-level directory service

GetVariableAccessAttribute同時關(guān)系到數(shù)據(jù)讀取服務(wù)的實(shí)現(xiàn),將在下一節(jié)中進(jìn)行進(jìn)一步分析。

3 數(shù)據(jù)讀取服務(wù)及下層目錄服務(wù)的聯(lián)合實(shí)現(xiàn)

很多ACSI服務(wù)都被映射到了MMS的Read服務(wù)。這些服務(wù)中的GetDataSetValues、GetLogStatus-Value和Select比較特殊,其他服務(wù)本質(zhì)上都是對NV的數(shù)據(jù)讀取,可同時實(shí)現(xiàn)。如表2所示,ACSI服務(wù)的被讀取對象的范圍涵蓋了所有映射到NV的類型。

表2 被映射到NV讀取的全部ACSI服務(wù)Tab.2 All ACSI services mapped to NV reading service

Read服務(wù)在實(shí)現(xiàn)過程中應(yīng)該提供對所有映射到NV類型的數(shù)據(jù)結(jié)構(gòu)的支持,但是需要加入一些限制,以更好地貼合ACSI的功能及限制。

在ACSI規(guī)范中,GetAllDataValues服務(wù)要求同時返回成員的引用和成員的值,但是Read服務(wù)并不支持引用的返回。如果客戶端想要獲取成員的引用,就只能通過GetVariableAccessAttribute這一目錄服務(wù)變通地實(shí)現(xiàn),例如IEC Browser就使用了這一方法。這個請求有時是在IEC61850目錄服務(wù)范圍之外的,但是服務(wù)器在設(shè)計時應(yīng)當(dāng)要考慮到客戶端的這種需求,將其認(rèn)為是數(shù)據(jù)讀取服務(wù)的一部分。

如表3所示,IEC61850中存在只允許目錄而不允許讀取的情況。嚴(yán)格按照MMS進(jìn)行的請求響應(yīng)可能會違反ACSI規(guī)范,如在讀服務(wù)的響應(yīng)中出現(xiàn)了FC=CO的控制對象;如果嚴(yán)格按照IEC61850的服務(wù)功能和訪問限制來進(jìn)行請求響應(yīng),則可能會出現(xiàn)某個實(shí)例對應(yīng)的目錄服務(wù)響應(yīng)和讀服務(wù)的響應(yīng)中樹結(jié)構(gòu)不一致,如對一個邏輯節(jié)點(diǎn)分別進(jìn)行GetVariable-AccessAttribute請求和Read請求,F(xiàn)C=CO的對象應(yīng)該包含在前者的結(jié)果中而不包含在后者的結(jié)果中,這種情況可能會引起誤解,實(shí)現(xiàn)過程中需要基于ACSI規(guī)范對服務(wù)請求的響應(yīng)進(jìn)行一定的改動來避免這一問題。下面針對不同的被請求對象類型對這2個服務(wù)的具體實(shí)現(xiàn)方法進(jìn)行分析。

表3 FC的訪問限制Tab.3 Access constraint of FC

a.對LN的請求。由于ACSI對LN服務(wù)模型的GetAllDataVaules這一服務(wù)的功能描述是返回一個LN中的全部DATA或者某FC的全部DATA的值,而CB的值不應(yīng)包含在返回結(jié)果中。所以在服務(wù)實(shí)現(xiàn)時,只返回 FC 值為 ST、MX、CF、DC、EX、SG、SE、SPd的IedData實(shí)例對象的值,在具體程序?qū)崿F(xiàn)過程中使用這些FC值的位或結(jié)果作為“過濾器”對數(shù)據(jù)結(jié)構(gòu)樹進(jìn)行搜索并生成結(jié)構(gòu)相同的回復(fù)報文即可。而對應(yīng)的GetVariableAccessAttribute請求并不在IEC61850目錄服務(wù)范圍內(nèi),所以在其回復(fù)中也只返回這些對象的結(jié)構(gòu),這樣這2個服務(wù)的回復(fù)結(jié)果的樹結(jié)構(gòu)就是一致的。

b.對FC的請求。在數(shù)據(jù)讀取中,該請求仍然屬于GetAllDataVaules服務(wù),而在目錄獲取中沒有對應(yīng)的IEC61850服務(wù)。所以對控制對象及CB,即FC=CO、RP、BR、LG、GS、GO、MS、US、SC 的讀數(shù)據(jù)請求予以拒絕,但是對目錄服務(wù)請求可以按照MMS來回復(fù);對FC=SP的情況在目錄請求和讀請求的回復(fù)中都只返回FC值為SPd的IedData對象的值;其余FC的讀請求和目錄請求均按照MMS進(jìn)行。

c.對FCD或FCDA的請求。在這種情況下不存在訪問對象一部分屬性允許讀取而另一部分屬性不允許讀取的情況,而目錄獲取也有對應(yīng)的IEC61850服務(wù)。所以直接按照FC訪問權(quán)限的要求進(jìn)行服務(wù)的設(shè)計,讀服務(wù)只拒絕對控制對象的讀?。‵C=CO的請求),其余請求都根據(jù)MMS來進(jìn)行,而所有目錄請求都根據(jù)MMS來進(jìn)行。

在這個實(shí)現(xiàn)方案中,首先依據(jù)的是ACSI的服務(wù)規(guī)范,在沒有ACSI規(guī)范要求的部分則以減少誤解為目的并兼顧MMS進(jìn)行設(shè)計。這種處理方法并不完全滿足MMS,與上層目錄服務(wù)的實(shí)現(xiàn)方案相同,是有理論依據(jù)的。

4 實(shí)驗(yàn)驗(yàn)證

本文在PC環(huán)境中,基于TCP套接字、使用C語言進(jìn)行了通信系統(tǒng)的實(shí)現(xiàn),并以變壓器溫度傳感器為背景建立了一個數(shù)據(jù)結(jié)構(gòu)來進(jìn)行仿真。

所實(shí)現(xiàn)的通信系統(tǒng)與2款第三方客戶端軟件——SIEMENS公司的IEC Browser和OMICRON公司的IEDScout成功進(jìn)行了通信,從而驗(yàn)證了方案的可行性,并在一定程度上證明了所提方案的兼容性。

在所實(shí)現(xiàn)的通信系統(tǒng)中,在GetNameList(NV,Domain-specific)的響應(yīng)中,分別測試了3種不同的過濾分界線及其對應(yīng)的返回列表長度。過濾分界線為FC、FCD和不過濾3種情況下,報文長度分別為9、21和59。所使用的2款客戶端軟件只有IEC Browser在過濾到FC的情況下可能會出現(xiàn)一些兼容性問題,但對實(shí)際功能沒有太大影響;其他情況下都能夠非常順利地在客戶端建立服務(wù)器數(shù)據(jù)結(jié)構(gòu)。

在這個測試中,報文的響應(yīng)速度主要取決于網(wǎng)絡(luò)傳輸速度。但是即使對于這樣簡單的數(shù)據(jù)結(jié)構(gòu),在不進(jìn)行列表主動過濾時所產(chǎn)生的響應(yīng)報文已經(jīng)需要分片傳輸,在增加了網(wǎng)絡(luò)傳輸量的同時,也增加了近1倍的響應(yīng)時間,這說明進(jìn)行主動過濾是必要的。

5 結(jié)語

本文對IEC61850通過SCSM映射到MMS過程中出現(xiàn)的一些矛盾進(jìn)行了分析,并提出了可行的解決方案,且在通信服務(wù)器模型中進(jìn)行了實(shí)驗(yàn)驗(yàn)證,并與2款第三方軟件成功通信。

對設(shè)備數(shù)據(jù)結(jié)構(gòu)而言,一個好的數(shù)據(jù)結(jié)構(gòu)應(yīng)該能同時滿足來自內(nèi)部系統(tǒng)和外部通信方的數(shù)據(jù)訪問需求,而在該過程中如何處理FC是一個關(guān)鍵問題。

對于通信服務(wù)而言,由于映射過程中出現(xiàn)的功能偏差,使得一些服務(wù)基于ACSI服務(wù)規(guī)范和MMS服務(wù)規(guī)范可以產(chǎn)生完全不同的實(shí)現(xiàn)方案,所以也不存在唯一的“正確方法”。本文所提實(shí)現(xiàn)方案的核心思想是以ACSI規(guī)范為基本出發(fā)點(diǎn),兼顧MMS且盡可能降低通信中的誤解和資源浪費(fèi),并根據(jù)這一思想對目錄服務(wù)及數(shù)據(jù)讀取服務(wù)進(jìn)行了實(shí)現(xiàn)。

由于通信過程必須由服務(wù)器和客戶端協(xié)作完成,本文提出的方案也需要通信雙方共同遵守才能起到應(yīng)有的作用。本文所提方案能夠完全滿足ACSI規(guī)范所涉及的范圍,即其在通信雙方都以ACSI規(guī)范為根本的情況下不會出現(xiàn)兼容性問題。

猜你喜歡
數(shù)據(jù)類型數(shù)據(jù)結(jié)構(gòu)客戶端
詳談Java中的基本數(shù)據(jù)類型與引用數(shù)據(jù)類型
如何理解數(shù)據(jù)結(jié)構(gòu)中的抽象數(shù)據(jù)類型
縣級臺在突發(fā)事件報道中如何應(yīng)用手機(jī)客戶端
傳媒評論(2018年4期)2018-06-27 08:20:24
孵化垂直頻道:新聞客戶端新策略
傳媒評論(2018年4期)2018-06-27 08:20:16
基于Vanconnect的智能家居瘦客戶端的設(shè)計與實(shí)現(xiàn)
電子測試(2018年10期)2018-06-26 05:53:34
“翻轉(zhuǎn)課堂”教學(xué)模式的探討——以《數(shù)據(jù)結(jié)構(gòu)》課程教學(xué)為例
高職高專數(shù)據(jù)結(jié)構(gòu)教學(xué)改革探討
中國市場(2016年45期)2016-05-17 05:15:48
TRIZ理論在“數(shù)據(jù)結(jié)構(gòu)”多媒體教學(xué)中的應(yīng)用
《數(shù)據(jù)結(jié)構(gòu)》教學(xué)方法創(chuàng)新探討
河南科技(2014年5期)2014-02-27 14:08:57
客戶端空間數(shù)據(jù)緩存策略
玉山县| 收藏| 西城区| 隆安县| 永顺县| 寿宁县| 澄城县| 乡宁县| 桦川县| 格尔木市| 和平区| 略阳县| 阳泉市| 莱阳市| 绥阳县| 阳城县| 凌源市| 石渠县| 壤塘县| 奉节县| 资中县| 宿松县| 固原市| 广安市| 永新县| 克拉玛依市| 天柱县| 丹阳市| 沙坪坝区| 苍梧县| 昭苏县| 怀仁县| 南汇区| 砀山县| 台山市| 马边| 清苑县| 宁安市| 淄博市| 富裕县| 凤城市|