你所不知道的開放通訊協(xié)議,PLC工程師必讀!
2021-7-2新聞
OPC UA OPC UA基于OPC基金會提供的新一代技術(shù),提供安全,可靠和獨立于廠商的,實現(xiàn)原始數(shù)據(jù)和預(yù)處理的信息從制造層級到生產(chǎn)計劃或ERP層級的傳輸。通過OPC UA ,所有需要的信息在任何時間、任何地點對每個授權(quán)的應(yīng)用、每個授權(quán)的人員都可用。 這種功能獨立于制造廠商的原始應(yīng)用、編程語言和操作系統(tǒng)。
OPC UA是目前已經(jīng)使用的OPC I業(yè)標(biāo)準(zhǔn)的補充,提供重要的一些特性, 包括如平臺獨立性、擴展性、高可靠性和連接互聯(lián)網(wǎng)的能力。
OPC UA 不再基于分布式組件對象模型(DCOM),而是以面向服務(wù)的架構(gòu)(SOA)為基礎(chǔ)。OPC UA 因此可以連接更多的設(shè)備。
今天,OPC UA 已經(jīng)成為連接企業(yè)級計算機與嵌入式自動化組件的橋梁 —— 獨立于微軟、 UNIX 或其他操作系統(tǒng)。
一、組件對象模型(COM)/分布式組件對象模型(DCOM)的終止
傳統(tǒng)OPC應(yīng)用之間的數(shù)據(jù)交換是基于微軟的組件對象模型(COM)技術(shù)。因為視窗(Windows)操作系統(tǒng)在世界范圍內(nèi)得到了廣泛的應(yīng)用,同時也促進了視窗計算機在自動化中的使用,所以COM技術(shù)也為OPC技術(shù)的廣泛使用創(chuàng)造了條件。在2002年初,微軟發(fā)布了新的.NET框架并且宣布COM技術(shù)的停止研發(fā)。雖然這不意味著將來的視窗操作系統(tǒng)不支持COM,但作為停止的結(jié)果,傳統(tǒng)OPC的基礎(chǔ)技術(shù)已經(jīng)不再發(fā)展,或早或晚要被淘汰,所以要尋求新的替換方案。
二、COM 的局限
上世紀(jì)90年代,隨著視窗計算機的普及,微軟COM/DCOM技術(shù)引入的一組特性,得到了家庭計算機用戶和工業(yè)自動化用戶的高度欣賞。這些特性包括了拷貝與粘貼,拖拽與投放,鏈接與嵌入。DCOM還提供了完整的通信基礎(chǔ)架構(gòu),并帶有必要的安全機制,諸如授權(quán)、鑒權(quán)和加密。
DCOM安全機制能夠?qū)崿F(xiàn)計算機對數(shù)據(jù)和程序的遠(yuǎn)程訪問。但DCOM安全機制同時也對安裝工程師、系統(tǒng)集成商和開發(fā)者管理項目提出了挑戰(zhàn),其中包括了跨越PC的OPC通信。正確地設(shè)置DCOM安全功能是非常困難的任務(wù),需要很多專業(yè)的知識。作為結(jié)果,安裝工程師和系統(tǒng)集成商會例行公事地選擇快速流程,在所有連網(wǎng)的OPC計算機采取寬松的訪問授權(quán),造成大多數(shù)保護不起作用且允許非授權(quán)遠(yuǎn)程訪問。
這種做法與信息技術(shù)(IT)安全的要求相違背。在長期運行時,可能會有粗心大意者或者蓄意破壞的人造成損害的危險。DCOM安全設(shè)置常常需要一種特別才能,而配置OPC通信功能則非常容易。
三、OPC 通信穿過防火墻
在自動化行業(yè),很早就認(rèn)識到OPC通信需要跨越計算機邊界的必要性,這是另一個DCOM限制傳統(tǒng)OPC通信的地方。DCOM需要多個端口,如鑒權(quán)、傳輸數(shù)據(jù)和一系列服務(wù)建立一個連接。
所以,在防火墻中不得不打開很多端口,才能讓DCOM通信穿過他。在防火墻上每打開一個端口都是一個安全隱患,為黑客攻擊提供一種潛在可能。OPC UA中的隧道技術(shù)是一種被廣泛接受的策略,解決了傳統(tǒng)OPC產(chǎn)品中DCOM限制的問題。
四、在非視窗平臺使用OPC
在工業(yè)應(yīng)用中,幾乎“無所不在”的微軟平臺,把DCOM 作為操作系統(tǒng)的一個組件是傳統(tǒng)OPC能被快速接受的一個重要因素。但是同時,OPC的集成概念在使用其他操作系統(tǒng)時就不靈光了,因為他們不支持DCOM。比如在IT行業(yè),常常使用Unix或者Linux系統(tǒng)就是這種情況。
自動化也是這樣,有的應(yīng)用領(lǐng)域明確拒絕使用視窗操作系統(tǒng)。嵌入式設(shè)備領(lǐng)域是另一個視窗很難(除了視窗CE或者嵌入XP)涉及的領(lǐng)域。這里,復(fù)雜的應(yīng)用直接嵌入到現(xiàn)場設(shè)備、PLC、操作屏和其他設(shè)備之中。他們運行VxWorks、QNX、嵌入式Linux、RTOS或者其他嵌入式操作系統(tǒng)而沒有DCOM。在這些領(lǐng)域里使用OPC 的集成概念注定要失敗,因為OPC需要DCOM作為技術(shù)基礎(chǔ),而這個基礎(chǔ)在嵌入式系統(tǒng)中正好缺失。
五、通過Web服務(wù)實現(xiàn)跨平臺的OPC通信
隨著在2003年OPC XML-DA規(guī)范的發(fā)布,OPC基金會第一次展示了一種獨立于視窗平臺的方式和克服DCOM限制的方法。今天,很多OPC XML-DA產(chǎn)品演示了基于Web服務(wù)的OPC技術(shù)。
但是XML-DA 通信的數(shù)據(jù)吞吐量還是比不上DCOM,通信速度要慢5到7倍。這個速度對于很多自動化的要求而言是太慢了?;赪eb服務(wù)的OPC通信功能還是有用的,因為實現(xiàn)了跨越操作系統(tǒng)的能力,但還要進一步提高數(shù)據(jù)傳輸性能。
六、統(tǒng)一數(shù)據(jù)模型
迄今為止,傳統(tǒng)的OPC技術(shù)已有3種不同的OPC服務(wù)器 – 數(shù)據(jù)訪問服務(wù)器、報警與事件服務(wù)器和歷史數(shù)據(jù)訪問服務(wù)器。如果用戶需要獲取一個溫度傳感器的當(dāng)前值,一個溫度超過限定值的事件和一個溫度的歷史平均值,那么他必須發(fā)送3個請求,訪問3個服務(wù)器。
用戶訪問過程數(shù)據(jù)、事件和歷史數(shù)據(jù)用不同的方法要花費很多的時間。所以,統(tǒng)一這3種對象模型可以使這樣的事情變得非常簡單,不僅對OPC產(chǎn)品的供應(yīng)商有利,也對系統(tǒng)集成商和用戶有利。
七、支持復(fù)雜數(shù)據(jù)結(jié)構(gòu)
OPC的一個主要應(yīng)用是對串行通信或者現(xiàn)場總線聯(lián)網(wǎng)設(shè)備的操作和監(jiān)視。為了配置設(shè)備,OPC客戶機需要寫入數(shù)據(jù)類型,通過OPC服務(wù)器到達設(shè)備,包括數(shù)據(jù)結(jié)構(gòu)元件的意義。
OPC基金會已經(jīng)創(chuàng)建了描述復(fù)雜數(shù)據(jù)結(jié)構(gòu)的方法,即復(fù)雜數(shù)據(jù)規(guī)范。然而,大多數(shù)今天市場上的傳統(tǒng)OPC產(chǎn)品除了很少的例外,不能使用復(fù)雜數(shù)據(jù)規(guī)范。
八、保證通信不丟失數(shù)據(jù)
最早定義的數(shù)據(jù)訪問,可以讓客戶應(yīng)用程序周期獲得過程數(shù)據(jù)的當(dāng)前狀態(tài)。如果在OPC客戶機和遠(yuǎn)程OPC服務(wù)器之間的物理通信連接發(fā)生了問題,數(shù)據(jù)通信會受到損壞。當(dāng)通信損壞時,傳輸?shù)絆PC客戶機數(shù)據(jù)會發(fā)生改變,甚至丟失。
這種數(shù)據(jù)丟失在有些數(shù)據(jù)訪問應(yīng)用中不是關(guān)鍵的,諸如趨勢記錄、過程監(jiān)視或者過程顯示。但在有些場合的應(yīng)用中是非常關(guān)鍵的。比如,OPC技術(shù)已經(jīng)成為這些區(qū)域的基礎(chǔ),諸如化工或者石化工業(yè),這些地方要求必須無縫地記錄數(shù)據(jù)。
為了達到這個目標(biāo),供應(yīng)商需要實施特殊擴展的方法。他們使用基于連接的監(jiān)視系統(tǒng),確保對斷開的通信快速檢測,如果通信斷開能夠自動重新連接,在數(shù)據(jù)訪問服務(wù)器中有數(shù)據(jù)緩存、冗余、存儲和轉(zhuǎn)發(fā)功能。這些擴展的方法很有用,但在傳統(tǒng)的OPC規(guī)范中沒有定義,會因供應(yīng)商不同而不同。
九、對非授權(quán)數(shù)據(jù)訪問而增加的保護
隨著自動化行業(yè)基于以太網(wǎng)的通信不斷增長,自動化和辦公室網(wǎng)絡(luò)已經(jīng)糾纏在一起。同時,垂直集成的想法產(chǎn)生了新的需求,這種類型的集成也帶來了新的安全風(fēng)險。OPC也增加了遠(yuǎn)程維護和遠(yuǎn)程控制概念的使用。
這里再一次提到,對外圍非授權(quán)的訪問,必須滿足更嚴(yán)格的信息安全要求。隨著網(wǎng)絡(luò)犯罪、間諜和破壞活動的增長,信息技術(shù)安全越來越顯得重要 – 所以使用OPC也有了安全的要求。傳統(tǒng)的OPC供應(yīng)商沒有開發(fā)專有的預(yù)防措施,所以不能滿足這些安全要求。
十 、支持新的命令調(diào)用
在很多應(yīng)用中,不僅讀寫數(shù)值非常重要,而且執(zhí)行命令也非常重要,諸如啟動或者停止一臺驅(qū)動器或者把一個文件下載到設(shè)備中。OPC命令規(guī)范定義了執(zhí)行這些命令的方法,但這僅在OPC UA中有效,不能在傳統(tǒng)的OPC中使用。