通訊協(xié)議011——你知道有哪些方法可以實(shí)現(xiàn)OPC DA跨平臺(tái)通訊

本文介紹OPC DA跨平臺(tái)通訊的幾種方案。更多通訊資源請(qǐng)登錄網(wǎng)信智匯(wangxinzhihui.com)。
OPC(OLE for Process Control)是為過(guò)程控制專(zhuān)門(mén)設(shè)計(jì)的OLE 技術(shù),基于COM/DCOM的數(shù)據(jù)訪問(wèn)的標(biāo)準(zhǔn)。常說(shuō)的OPC通訊,通常指OPC DA(OPC Data Access),是基于OPC標(biāo)準(zhǔn)的數(shù)據(jù)訪問(wèn)接口。由于COM/DCOM依賴(lài)于Windows系統(tǒng), 使得OPC COM接口很難被應(yīng)用到其他非Windows的操作平臺(tái)上,使得工業(yè)互聯(lián)受到很大的限制。
???????? 下文介紹幾種跨平臺(tái)方案,所謂OPC跨平臺(tái),目前主要指的是Windows與Linux平臺(tái)之間的OPC通訊。
1、EntireX DCOM:DCOM 在 Linux 下有多種實(shí)現(xiàn)版本,以Software AG 公司與微軟合作開(kāi)發(fā)的 EntireX DCOM 軟件開(kāi)發(fā)包最為流行。在Linux上安裝EntireX DCOM,并啟用 DCOM 功能,Linux上的客戶(hù)端程序,可以與 Windows 平臺(tái)上的 OPC服務(wù)器通信。

2、Utgard :Utgard 是一個(gè)開(kāi)放源碼項(xiàng)目,提供了Java 語(yǔ)言編寫(xiě)的 OPC 庫(kù)文件。利用 Utgard 庫(kù)文件,可以開(kāi)發(fā)符合 OPC DA 2.0規(guī)范的客戶(hù)端。 Utgard由openscada-opc-dcom、openscada-opc-lib 2個(gè)庫(kù)組成。其中,openscada-opc-dcom庫(kù)使用j-Interop 實(shí)現(xiàn)了 DCOM功能,j-Interop 是一個(gè)實(shí)現(xiàn)了 DCOM wire protocol (MSRPC)的開(kāi)源類(lèi)包。openscada-opc-lib 庫(kù)則是簡(jiǎn)化了的 OPC 接口程序,可以很方便用 Java 開(kāi)發(fā) OPC 客戶(hù)端。

3、OPC XML DA:為解決OPC跨平臺(tái)通訊,OPC基金會(huì)制定了OPC XML標(biāo)準(zhǔn),就是對(duì)原有OPC Server進(jìn)行功能擴(kuò)展。由于XML具有良好的跨平臺(tái)通用性,廣泛應(yīng)用于Internet應(yīng)用,且很容易穿透防火墻,使得OPC DA能夠跨平臺(tái)或在互聯(lián)網(wǎng)上得到應(yīng)用。OPC XML DA基于XML的web技術(shù),采用SOAP作為對(duì)應(yīng)用程序共享消息進(jìn)行包裝的通訊協(xié)議,實(shí)現(xiàn)OPC Server和OPC Client之間通過(guò)Http協(xié)議傳輸數(shù)據(jù),使得數(shù)據(jù)很容易在不同平臺(tái)間傳輸,并輕易實(shí)現(xiàn)在Internet上發(fā)布OPC數(shù)據(jù)。

4、OPC UA:基于COM/DCOM的技術(shù)有著不可根除的缺點(diǎn),例如安全性不高、應(yīng)用平臺(tái)受限等。OPC基金會(huì)又推出OPC UA(Unified Architecture,統(tǒng)一架構(gòu))新一代OPC規(guī)范。相較于OPC Classic,OPC UA在數(shù)據(jù)安全性、跨平臺(tái)性、擴(kuò)展性等方面有著更好的表現(xiàn),這使得越來(lái)越多的企業(yè)開(kāi)始考慮將現(xiàn)有的OPC Classic升級(jí)到OPC UA,以滿(mǎn)足更高的數(shù)據(jù)傳輸性能和安全要求。比如選擇Softing的dataFEED OPC Suite軟件作為OPC UA通信的中間件,將現(xiàn)場(chǎng)OPC Classic服務(wù)器升級(jí)到OPC UA服務(wù)器。

5、協(xié)議轉(zhuǎn)換代理:將OPC轉(zhuǎn)換成TCP協(xié)議,由于TCP協(xié)議天然的跨平臺(tái)特性,使得轉(zhuǎn)換后的協(xié)議可以很方便地在兩個(gè)異構(gòu)平臺(tái)之間傳輸數(shù)據(jù)。用戶(hù)可以自己開(kāi)發(fā)OPC 代理,其本質(zhì)是OPC Client,從OPC Server獲取數(shù)據(jù),并將數(shù)據(jù)封裝成標(biāo)準(zhǔn)的TCP協(xié)議,或者自定義的TCP協(xié)議。該OPC代理運(yùn)行在OPC Server上,Linux客戶(hù)端與OPC代理通訊達(dá)到與OPC Server間接通訊的目的。

更多通訊資源請(qǐng)登錄網(wǎng)信智匯(wangxinzhihui.com)。