labview的深入探索----OPC系列之基本概念
NI的OPC SERVER是WINDOWS 32位應用程序,它為PC用戶提供了訪問外部設備數據和信息的通道或者說手段,通過OPC,設備變成了PC網絡的一個成員。
OPC的概念
OPC是OLE FOR PROCES CONTROL的英文縮寫,直譯是OLE用于過程控制,OLE是WINDOWS的一個基本概念,是對象嵌入鏈接的縮寫,過程控制實際是工業自動化控制的概念,目前,PLC技術和NC技術、CAD CAM技術以及工業控制總線已經成了工業自動化控制的核心,因此可以說OPC本身就是PC在工業自動化控制領域的擴展。
1994年,世界一些知名的工業設備制造商成立了一個專業組織,宗旨是為各種各樣的工業設備指定一個統一的軟件數據通訊(不是物理層的通訊)標準,這就是后來為大家熟知的OPC。
OPC的一個主要目的是避免PC客戶為工業設備開發通訊驅動程序,為一個特定設備開發驅動程序是極其復雜和耗時的,因為設備千差萬別,硬件接口也是多種多樣的,對于一般的軟件開發人員是很那作到的,一個更好的辦法是制定一個統一的數據訪問標準,而硬件驅動的部分有硬件廠商或者專門OPC開發人員負責,這樣,PC用戶就可以依據這個標準,和外部工業設備無逢連接,這個數據訪問標準就是OPC。
通過OPC,一個PC客戶(OPC客戶)可以訪問多個外部設備

多個OPC客戶(可能是網絡上的)可以訪問多個外部設備

對于OPC CLIENT,OPC SERVER提供了幾個高層對象供CLIENT訪問,分別是SERVER,GROUP和ITMES,這非常類似DDE通訊。
SERVER對象提供的是服務的有關信息,同時有是GROUP對象的容器。
GROUP對象提供的性能相似的分類信息,OPC CLIENT可以配置是否允許GROUP和GROUP
組數據的更新頻率,同時也提供了如果數據訪問失敗的錯誤信息。GROUP同時也是ITEM對象的容器。
ITEM對象是每個特定的數據項目,比如可能是設備一個特定的寄存器。
這是一個典型的分層結構,如果我們要訪問一個ITEM,途徑必須是
SERVER----》GRUOP----》ITEM
OPC CLIENT是沒有辦法直接訪問具體的ITEM,這樣有效地實現了數據的封裝。
有兩種形式的OPC GROUP,公有或者私有(也稱做局部),公有可以被所有的OPC CLIENT訪問,私有只能被特定的OPC CLIENT訪問。
每一個GROUP對象都包括多個ITEM對象。

對于每一個具體的ITEM,又由三部分組成,VALUE,QUALITY和TIMESTAMP
VALUE是變體數據,表示ITEM當前值,QUALITY與總線形式有關,TIMESTAMP是時間戳。
雖然OPC主要用于網絡設備的數據訪問,但是在單機控制設備時也經常使用。

OPC服務器的內核是COM的DCOM,對于PC CLIENT提供了兩種接口,一種是針對C++客戶,可以直接訪問,速度較快,另外一種是通過AUTOMATION自動化服務器,這是VB和腳本語言用戶使用的接口,因為OPC需要對其進行解釋,相對速度較慢。

評論