1. OPC技術簡介
OPC (OLE for Process Control——用于過程控制的OLE)是基于Microsoft公司的DNA(Distributed Internet Application)構架和COM(Component Object Model)技術的一個工業標準接口,是根據易于擴展性而設計的。
工業控制領域用到大量的現場設備,在OPC出現以前軟件開發商需要開發大量的驅動程序來連接這些設備。即使硬件供應商在硬件上做了一些小小改動,應用程序就可能需要重寫:同時,由于不同設備甚至同一設備不同單元的驅動程序也有可能不同,軟件開發商很難同時對這些設備進行訪問以優化操作。硬件供應商也在嘗試解決這個問題,然而由于不同客戶有著不同的需要,同時也存在著不同的數據傳輸協議,因此一直沒有完整的解決方案。自OPC提出以后,這個問題終于得到解決。
OPC主要適用于過程控制和制造自動化等應用領域。 OPC是以OLE/COM機制作為應用程序的通訊標準。OLE/COM是一種客戶/服務器模式,具有語言無關性、代碼重用性、易于集成性等優點。OPC規范了接口函數,不管現場設備以何種形式存在,客戶都以統一的方式去訪問,從而保證軟件對客戶的透明性,使得用戶完全從低層的開發中脫離出來。
OPC規范包括OPC服務器和OPC客戶兩個部分,其實質是在硬件供應商和軟件開發商之間建立了一套完整的規則,只要遵循這套規則,數據交換對兩者來說都是透明的,硬件供應商無需考慮。OPC接口數據交換示意圖如下圖所示。

OPC技術的實現包括兩個組成部分,OPC服務器部分及OPC客戶部分。OPC服務器是一個現場數據源程序,它收集現場設備數據信息,通過標準的OPC接口傳送給客戶端軟件(SCADA)等。OPC客戶端應用軟件通過OPC標準接口與OPC服務器通信,獲取OPC服務器的各種信息。符合OPC標準的客戶應用可以訪問來自任何生產廠商的OPCMC務器程序。
OPC服務器由三類對象組成:服務器(Server)、組(Group),數據項(Item)。服務器對象 (Server)擁有服務器的所有信息,同時也是組對象 (Group)的容器。組對象 (Group)擁有本組的所有信息,同時包容并邏輯組織OPC數據項 (Item)。一般說來,客戶和服務器的一對連接只需要定義一個組對象。在每個組對象中,客戶可以加入多個OPC數據項 (Item)。OPC數據項是服務器端定義的對象,通常指向設備的一個寄存器單元。OPC客戶對設備寄存器的操作都是通過其數據項來完成的,通過定義數據項,OPC規范盡可能的隱藏了設備的特殊信息,也使OPC服務器的通用性大大增強。OPC數據項并不提供對外接口,客戶不能直接對之進行操作,所有操作都是通過組對象進行的。OPC服務器、組對象與數據項關系如下圖所示。

每個數據項的數據結構包括三個成員變量:即數據值、數據質量和時間戳。數據值是以VARIANT形式表示的。應當注意,數據項表示同數據源的連接而不等同于數據源,無論客戶是否定義數據項,數據源都是客觀存在的。可以把數據項看作數據源的地址,即數據源的引用,而不應看作數據源本身。
目前,許多PC上運行的組態軟件都支持OPC客戶端,如組態王、力控等等。當然,要自己寫支持OPC客戶端的軟件也很容易。在OPC基金會的官方網站上有OPC的最新知識和下載相關資料,網址是 http://www.opcfoundation.org/。
2. OPC技術和LEVI HMI的結合
維控的LEVIStudio可提供一個OPC服務器程序,組態軟件只要實現OPC客戶端即可通過OPC與LEVI HMI進行通信,進而可通過HMI讀入或修改連接在HMI上設備的各個寄存器。
通過OPC,組態軟件可以把其下的所有LEVI HMI管理起來,可以實時的監測或修改各HMI上的當前狀態,方便的實現集中管理。通過地址映射等方式,亦可以實時的監測或修改連接在HMI上的PLC、儀表、變頻器等設備,而無須操作人員一臺一臺機器的去設定和修改。

|