tft每日頭條

 > 圖文

 > opc和ua什麼意思

opc和ua什麼意思

圖文 更新时间:2024-12-14 00:40:39

在了解OPC UA 協議之前,我們先了解一些它的前身OPC 協議,這樣更有利于了解OPC UA 的本質和由來。

OPC

工業控制領域用到大量的現場設備,在OPC出現以前,軟件開發商需要開發大量的驅動程序來連接這些設備。即使硬件供應商在硬件上做了一些小小改動,應用程序也可能需要重寫。同時,由于不同設備甚至同一設備不同單元的驅動程序也有可能不同,軟件開發商很難同時對這些設備進行訪問以優化操作。為了消除硬件平台和自動化軟件之間互操作性的障礙,建立了OPC軟件互操作性标準,開發OPC的最終目标是在工業控制領域建立一套數據傳輸規範。

OPC全稱是OLE(Object Linking and Embedding) for Process Control。為了便于自動化行業不同廠家的設備和應用程序能相互交換數據,定義了一個統一的接口函數,就是OPC協議規範。OPC是基于WINDOWS COM/DOM的技術,可以使用統一的方式去訪問不同設備廠商的産品數據。簡單來說OPC就是為了用于設備和軟件之間交換數據。

opc和ua什麼意思(OPCUA詳細介紹)1

OPC基金會前前後後規定了不同的接口定義,如下:

• OPC DA (Data Access, exchange of real-time values,數據訪問),定義了數據交換,包括值、時間和質量信息

• OPC A&E (Alarms & Events, exchange of alarms and events,警報和事件),定義了報警和事件類型消息信息的交換,以及變量狀态和狀态管理。

• OPC HDA (Historical Data Access, exchange of historical values,曆史數據訪問),定義了可應用于曆史數據、時間數據的查詢和分析的方法。

• OPC XML DA (XML-based exchange of real-time values)

OPC UA

UA全稱是unified architecture(統一架構)。為了應對标準化和跨平台的趨勢,為了更好地推廣OPC,OPC基金會近些年在之前OPC成功應用的基礎上推出了一個新的OPC标準-OPC UA。OPC UA接口協議包含了之前的 A&E, DA,OPC XML DA or HDA,隻使用一個地址空間就能訪問之前所有的對象,而且不受WINDOWS平台限制,因為它是從傳輸層以上來定義的,導緻了靈活性和安全性比之前的OPC都提升了。

OPC UA實質上是一種抽象的框架,是一個多層架構,其中的每一層完全是從其相鄰層抽象而來。這些層定義了線路上的各種通信協議,以及能否安全地編碼/解碼包含有數據、數據類型定義等内容的訊息。利用這一核心服務和數據類型框架,人們可以在其基礎上(繼承)輕松添加更多功能。

OPC UA将成為一個轉換工具。其它協議/标準(如BACnet)可以非常輕松地轉換為OPC UA内的一個子集。

opc和ua什麼意思(OPCUA詳細介紹)2

OPC UA多層方法實現了最初設計UA規範時的目标:

  • 功能對等性:所有COM OPC Classic規範都映射到UA
  • 平立性:從嵌入式微控制器到基于雲的基礎設施
  • 安全性:信息加密、身份驗證和審核
  • 可擴展性:添加新功能而不影響現有應用程序的能力
  • 綜合信息建模:用于定義複雜信息
OPC UA基礎概念信息模型(Information model)

OPC UA 使用了對象(objects)作為過程系統表示數據和活動的基礎。對象包含了變量,事件和方法,它們通過引用(reference)來互相連接。

OPC UA 信息模型是節點的網絡(Network of Node,),或者稱為結構化圖(graph),由節點(Node)和引用(References)組成,這種結構圖稱之為OPC UA 的地址空間。這種圖形結構可以描述各種各樣的結構化信息(對象)。

地址空間要點:

  • 地址空間是用來給服務器提供标準方式,以向客戶端表示對象。
  • 地址空間的實現途徑是使用對象模型,通過變量和方法的對象,以及表達關系的對象。
  • 地址空間中模型的元素被稱為節點,為節點分配節點類來代表對象模型的元素。
  • 對象及其組件在地址空間中表示為節點的集合,節點由屬性描述并由引用相連。
  • OPC UA建模的基本在于節點和節點間的引用。
1、對象模型

opc和ua什麼意思(OPCUA詳細介紹)3

2、節點模型

opc和ua什麼意思(OPCUA詳細介紹)4

節點模型要點

  • 節點根據用途分屬于不同的節點類别(NodeClass),一些表示實例(/Root/Objects),一些表示類型(/Root/Types)。
  • 節點類依據屬性和引用來定義。OPC UA規範定義的節點類稱為地址空間的元數據,地址空間中每個節點都是這些節點類的實例。
  • 節點是節點類的實例,屬性和引用是節點的基本組件。
  • 屬性(Attribute)用于描述節點,不同的節點類别有不同的屬性(屬性集)。節點類的定義中包括屬性的定義,因此屬性不包括在地址空間中。
  • 引用(Reference)表示節點間的關系。引用被定義為引用類型節點的實例,存在于地址空間中。

節點模型通用屬性

opc和ua什麼意思(OPCUA詳細介紹)5

包含引用的節點為源節點,被引用的節點稱目标節點。引用的目标節點可以與源節點在同一個地址空間,也可以在另一個OPC服務器的地址空間,甚至是目标節點可以不存在。

3、引用模型

opc和ua什麼意思(OPCUA詳細介紹)6

類型定義節點

類型定義節點是服務器提供用于對象和變量的類型定義。

标準的節點類
  1. 節點類用于定義OPC UA地址空間中的節點
  2. 地址空間中模型的元素被稱為節點,為節點分配節點類來代表對象模型的元素。
  3. 節點類源于通用的基本節點類。
  4. 首先定義基本節點類,然後定義用于組織地址空間的節點類,之後再定義用于代表對象的節點類。
  5. 代表對象的節點類分為三種:用于定義實例,定義實例的類型,以及定義數據類型。

标準的節點類有如下幾種:

  • 基本節點類:能夠派生所有其他節點類。
  • 對象節點類
  • 對象類型節點類
  • 變量節點類:定義數據變量
  • 變量類型節點類:定義特性
  • 方法節點類:定義方法,方法沒有類型定義,可以綁定到對象上。
  • 引用類型節點類:定義引用。
  • 視圖節點類:定義地址空間中節點子集。

opc和ua什麼意思(OPCUA詳細介紹)7

在OPC UA中,最重要的節點類别是對象,變量和方法。

1. 節點類别為對象

節點類别為對象的節點用于(構成)地址空間結構。

  • 對象不包含數據,使用變量為對象公開數值。
  • 對象可用于分組管理對象、變量或方法(變量和方法總屬于一個對象)。
  • 對象也可以是一個事件通知器(設定EventNotifier屬性),客戶端可以訂閱事件通知器來接收事件(事件在地址空間中是不可見的,被綁定到對象)。

2. 節點類别為變量

節點類别為變量的節點代表一個值。

  • 值的數據類型取決于變量,類型的種類在BaseDataType中。
  • 客戶端可以對值進行讀取,寫入和訂閱其變化。
  • 變量節點最重要的屬性是Value,它由DataType,ValueRank和ArrayDimensions屬性定義,通過這三個屬性,可以定義各種類型數據。

3. 節點類别為方法

節點類别為方法的節點,代表服務器中一個由客戶端調用并返回結果的方法。

  • 方法指定客戶端使用的輸入參數,并返回給客戶端輸出參數。
  • 輸入參數和輸出參數作為方法的特性存在,是數據方法的變量。
  • 客戶端使用調用服務(Call)調用方法

OPC UA的模型采用XML 文件描述,然後通過一個編譯工具可以将XML 編譯成C 語言的程序。

OPC UA的優勢:

一、功能方面,OPC UA不僅支持傳統OPC的所有功能,更支持更多新的功能:

1. 網絡發現:自動查詢本PC機中與當前網絡中可用的OPC Server。

2. 地址空間優化:所有的數據都可以分級結構定義,使得OPC Client不僅能夠讀取并利用簡單數據,也能訪問複雜的結構體。

3. 互訪認證:所有的讀寫數據/消息行為,都必須有訪問許可。

4. 數據訂閱:針對OPCClient不同的配置與标準,提供數據/消息的監控,以及數值變化時的變化報告。

5. 方案(Methods)功能:OPC UA中定義了通過在OPCServer中定義方案(Methods),來讓OPC client執行特定的程序。

二、平台支持方面,由于不再基于COM/DCOM技術,OPC UA标準提供了更多的可支持的硬件或軟件平台。

三、安全性方面,最大的變化是OPC UA可以通過任何單一端口(經管理員開放後)進行通信,這使得OPC通信不再會由于防火牆受到大量的限制。

OPC UA在通過防火牆時通過提供一套控制方案來解決安全問題:

  • 傳輸:定義了許多協議,提供了諸如超快OPC二進制傳輸或更通用的SOAP-HTTPS等選項
  • 會話加密:信息以128位或256位加密級别安全地傳輸
  • 信息簽名:信息接收時的簽名與發送時必須完全相同
  • 測序數據包:通過排序消除了已發現的信息重放攻擊
  • 認證:每個UA的客戶端和服務器都要通過OpenSSL證書标識,提供控制應用程序和系統彼此連接的功能
  • 用戶控制:應用程序可以要求用戶進行身份驗證(登錄憑據,證書等),并且可以進一步限制或增強用戶訪問權限和地址空間“視圖”的能力
  • 審計:記錄用戶和/或系統的活動,提供訪問審計跟蹤

核心的區别是因為OPC和OPC UA協議使用的TCP層不一樣,OPC是基于DOM/COM上,應用層最頂層;OPC UA是基于TCP IP scoket 傳輸層

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关圖文资讯推荐

热门圖文资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved