1. 程式人生 > 其它 >OPC 協議概述

OPC 協議概述

OPC 介紹

OPC是Object Linking and Embedding(OLE)for Process Control的縮寫,它是微軟公司的物件連結和嵌入技術在過程控制方面的應用。OPC主要基於微軟的OLE(現在的Active X)、COM(部件物件模型)和DCOM(分散式部件物件模型)技術。

背景:在過去,為了存取現場裝置的資料資訊,每一個應用軟體開發商都需要編寫專用的介面函式。由於現場裝置的種類繁多,且產品的不斷升級,往往給使用者和軟體開發商帶來了巨大的工作負擔。通常這樣也不能滿足工作的實際需要,系統整合商和開發商急切需要一種具有高效性、可靠性、開放性、可互操作性的即插即用的裝置驅動程式。

OPC產生的好處:

(1)硬體開發商將取代軟體開發商為自己的硬體產品開發統一的OPC介面程式
(2)軟體開發者可以免除開發驅動程式的工作,充分發揮自己的特長,將更多的精力投入到其核心產品的開發上。

常見的OPCServer:

(1)KEPWARE
(2)SIMATIC NET
(3)PC ACCESS(PC ACCESS SMART)
(4)Matrikon、Knight公司的OPC軟體

OPC 的讀寫方式

01 同步方式

(1)客戶端傳送請求,必須等到伺服器響應全部完成後才能返回,期間處於等待狀態
(2)多客戶端向伺服器操作時,客戶端程式產生阻塞(3)同步通訊適用於客戶端較少,資料量較小的場合

▲ 同步讀資料框圖
02 非同步方式

(1)客戶端傳送請求後立即返回,不需要等待伺服器的相應,可以進行其他操作
(2)伺服器完成響應後再通知客戶端
(3)相對於同步通訊,非同步通訊的效率更高

▲ 非同步讀資料框圖
03 訂閱方式

(1)客戶端傳送請求後立即返回,不需要等待伺服器的相應,可以進行其他操作
(2)伺服器的Group組內有資料發生變化時,自動重新整理客戶端資料
(3)相對客戶端只向伺服器傳送一次請求

▲ 訂閱方式資料框圖
04 OPC寫資料

(1)OPC寫資料有兩種方式:同步和非同步,區別與上文敘述的機制一樣。
(2)在生產應用中,如果寫資料參與控制,一般採用同步方式。

OPC 訪問介面方式

OPC主要包含兩種介面:CUSTOM標準介面和OLE自動化標準介面。

自定義介面是一組COM介面,主要用於C++語言的應用程式開發。

自動化介面是一組OLE介面,主要用於VB,DELPHI,Excel等基於指令碼的語言的應用程式開發。

很多OPC伺服器都是基於COM平臺開發的,從而對基於.NET框架下的C#語言,作為客戶端程式語言方位OPCServer,都存在需要解決兩個平臺間無縫遷移的問題。
OPC基金會對會員提供了OpcRcw動態連結庫,OPC NET COM和OPC NETAPI,將OPC複雜的規範封裝成簡單的C#類,從而可以較為容易地實現資料訪問。

▲ 訪問介面的方式


參考:

2-1 OPC協議概述 // 喜科堂,教程基於 KEPServerEX v4.5_v3 破解 5.0 以上版本不好破解,用4.5版本就可以了。