OPC,及其在水泥工廠中的應(yīng)用
OPC(OLE For Process Control,用于過程控制的OLE)是一個工業(yè)標準。它由一些世界上占領(lǐng)先地位的自動化系統(tǒng)和硬件、軟件公司與微軟(Microsoft)緊密合作而建立的。這個標準定義了應(yīng)用Microsoft操作系統(tǒng)在基于PC 的客戶機之間交換自動化實時數(shù)據(jù)的方法?!睴代表OLE(對象鏈接和嵌入),P (process過程),C (control控制)。OLE已從面向?qū)ο笾匦露x為基于對象并更名為Active X〕。管理OPC標準的組織是OPC基金會。OPC基金會現(xiàn)有會員已超過230家,遍布全球,包括世界上所有主要的自動化控制系統(tǒng)、儀器儀表及過程控制系統(tǒng)的公司。其前身由一個Fisher-Rosemount、Rockwell Software、Siemens、Opto22、Intellution和Intuitive Technology等著名大公司組成專門的工作組,僅僅用了短短的一年時間便開發(fā)出一個基本的可運行的OPC技術(shù)規(guī)范。在1996年8月發(fā)布了簡化的、一步到位的解決方案。
OPC基于微軟的OLE (現(xiàn)在的Active X)、COM (部件對象模型)和DCOM (分布式部件對象模型)技術(shù)。Micosoft是OPC基金會的一個成員,已給予OPC基金會強有力的支持。Active X/COM技術(shù)定義各種不同的軟件部件如何交互使用和分享數(shù)據(jù)。其宗旨是在Microsoft COM、DCOM和Active X技術(shù)的功能規(guī)程基礎(chǔ)上開發(fā)一個開放的和互操作的接口標準,這個標準的目標是促使自動化/控制應(yīng)用、現(xiàn)場系統(tǒng)/設(shè)備和商業(yè)/辦公室應(yīng)用之間具有更強大的互操作能力。概括的說,OPC簡化了來自不同供應(yīng)廠商的自動化部件與PC應(yīng)用程序(例如可視化化和辦公系統(tǒng))之間的接口。不論過程中采用什么軟件或設(shè)備,OPC為多種多樣的過程控制設(shè)備之間進行通信提供了公用的接口。 OPC包括一整套接口、屬性和方法的標準集,用于過程控制和制造業(yè)自動化系統(tǒng)。
OPC提供眾多的優(yōu)點
在過程控制和機械制造等工業(yè)領(lǐng)域的“即插即用”
OPC使自動化環(huán)境中的即插即用設(shè)想成為現(xiàn)實。OPC允許在不同供應(yīng)商開發(fā)的硬件裝置和應(yīng)用軟件之間通過共同的接口進行數(shù)據(jù)交換,Windows技術(shù)和OPC接口使之有可能將可編程序控制器(PLC)的硬件和軟件組合在一起,而不需要開發(fā)大量的專用通訊接口程序,由此減少了不少人力物力
OPC使從辦公室產(chǎn)品到過程數(shù)據(jù)的訪問簡單易行而且靈活可靠
OPC和現(xiàn)場總線的標準化
OPC提供現(xiàn)場總線以外的重要的附加功能,現(xiàn)場總線領(lǐng)域標準化主要目標是快速、可靠的數(shù)據(jù)傳輸。OPC使標準通訊達到這樣的程度,即使任何OPC服務(wù)器和應(yīng)用軟件聯(lián)網(wǎng)運行而不會產(chǎn)生任何問題。
OPC與自動化軟件
通常說來, OPC提供了對于不同廠商的設(shè)備和軟件包的內(nèi)部連接能力,在OPC誕生以前, 企業(yè)中的應(yīng)用程序與設(shè)備的I/O驅(qū)動軟件(Software Driver)之間的關(guān)系如圖1所示。
在圖1中, 不同的應(yīng)用程序和不同的廠商的硬件的驅(qū)動程序之間存在著大量的連接問題, 需要開發(fā)各種特定的通信程序。 OPC標準的制定, 使得所有的通信連接問題變得簡單, 它提供了一種軟件的總線形式(圖2),這樣,應(yīng)用就變得簡單、輕巧、更易于使用, 應(yīng)用程序只需知道如何從OPC數(shù)據(jù)源獲取數(shù)據(jù)(OPC Client), 設(shè)備的驅(qū)動程序只需知道如何以簡單的格式提供數(shù)據(jù)(OPC Server)。
另一方面, 雖然OPC解決的問題主要是I/O驅(qū)動程序, 但在圖3中也可以看到它不僅應(yīng)用在設(shè)備和 SCADA,SoftPLC和DCS 系統(tǒng)之間,同時也應(yīng)用在SCADA, SoftPLC 或DCS內(nèi)核以及HMI, 趨勢和報表等需要使用OPC數(shù)據(jù)的高端應(yīng)用程序之間。在這樣的結(jié)構(gòu)中, SCADA系統(tǒng)、DCS系統(tǒng)或 Softlogic系統(tǒng), 變成了一個“智能”設(shè)備。
OPC技術(shù)規(guī)范
OPC技術(shù)規(guī)范是以Microsoft的OLE/COM技術(shù)為基礎(chǔ),定義了一組接口規(guī)范。它包括OPC自動化接口(Automation Interface)和OPC定制接口(Custom Interface)。另外,OPC技術(shù)規(guī)范定義的是OPC服務(wù)器程序和客戶機程序進行通訊的接口或通訊的方法。OPC的技術(shù)小組也分為: Data Access, Historical Access, Alarms and Events, Security和Batch。當然目前應(yīng)用最多的還僅是Data Access。OPC基金會其目標是制訂一套針對于控制對象和設(shè)備的公共接口標準, 它可以讓任何 OPC客戶機去請求和獲取 OPC服務(wù)器的數(shù)據(jù)。這里的OPC客戶機和服務(wù)器可以是任何廠商的任何產(chǎn)品, 通過這種方式, 繁雜的各類設(shè)備驅(qū)動程序問題可以消除, 同時也加速了數(shù)據(jù)的傳輸。
基于OPC的軟件結(jié)構(gòu)如圖。
由圖可見,應(yīng)用程序與OPC服務(wù)器之間必須有OPC接口,OPC規(guī)范提供了兩套標準接口:Custom標準接口,OLE自動化標準接口。通常在系統(tǒng)設(shè)計中采用OLE自動化標準接口。
OLE自動化標準接口,及采用OLE自動化技術(shù)進行調(diào)用,其技術(shù)為上節(jié)所述的OLE自動化技術(shù)。OLE自動化標準接口定義了以下三層接口,依次呈包含關(guān)系。
OPC Server:OPC啟動服務(wù)器,獲得其他對象和服務(wù)的起始類,并用于返回OPC Group類對象;
OPC Group:存儲由若干OPC Item組成的Group信息,并用于返回OPC Item類對象。
OPC Item:存儲具體Item 的定義、數(shù)據(jù)值、狀態(tài)值等信息。
由于OPC規(guī)范基于OLE/COM技術(shù),同時OLE/COM的擴展遠程OLE自動化與DCOM技術(shù)支持TCP/IP等多種網(wǎng)絡(luò)協(xié)議,因此可以將OPC客戶、服務(wù)器在物理上分開,分布于網(wǎng)絡(luò)不同節(jié)點上。
OPC規(guī)范可以應(yīng)用在許多應(yīng)用程序中,如它們可以應(yīng)用于從SCADA 或者DCS系統(tǒng)的物理設(shè)備中獲取原始數(shù)據(jù)的最低層,它們同樣可以應(yīng)用于從SCADA 或者DCS系統(tǒng)中獲取數(shù)據(jù)到應(yīng)用程序中。實際上,OPC設(shè)計的目的就是從網(wǎng)絡(luò)上某節(jié)點獲取數(shù)據(jù)。
OPC對象與接口:
OPC服務(wù)器對象提供了對數(shù)據(jù)源進行存?。ㄗx/寫)或通訊的方法,而數(shù)據(jù)源可以是現(xiàn)場的I/O設(shè)備,也可以是其它的應(yīng)用程序。通過接口,OPC客戶應(yīng)用程序可以同時連到由一個或多個廠商提供的OPC服務(wù)器上。OPC服務(wù)器封裝了與I/O控制設(shè)備進行通訊和訪問數(shù)據(jù)的類型與名字及進行設(shè)備操作的代碼。
OPC數(shù)據(jù)存取(Data Access)規(guī)范:
總體來說,OPC數(shù)據(jù)存取規(guī)范包含幾個對象:服務(wù)器對象(Server Object)、組對象(Group Object)、項對象(Item Object)。OPC服務(wù)器對象維護著服務(wù)器的信息,同時也是OPC組對象的包容器。OPC組對象維護著它自己的信息并提供包容OPC項的機制,同時管理OPC項。
OPC組提供客戶應(yīng)用程序組織數(shù)據(jù)的機制,例如:一個組可以包含一個顯示面板所有數(shù)據(jù)的項,并可對數(shù)據(jù)進行讀寫。在一些特殊情況下,還可以在組里建立客戶應(yīng)用程序與項的連接,并可以根據(jù)需要禁止或允許這種連接。OPC客戶應(yīng)用程序還可以修改OPC服務(wù)器向OPC客戶應(yīng)用程序提交數(shù)據(jù)變化的刷新數(shù)率。
OPC項代表了與服務(wù)器里數(shù)據(jù)源的連接。從定制接口(Custom Interface)角度來看,一個OPC項不能被OPC客戶程序作為一個對象來進行操作,因此,在OPC項中沒有定義外部接口。所有對OPC項的操作都是利用OPC項的包容器 (OPC組)或OPC項的定義來進行的。
每個OPC項包含值(Value)、品質(zhì)(Quality)和時間標簽(Time Stamp)。
應(yīng)當注意的是項不是數(shù)據(jù)源,而只是與數(shù)據(jù)源的連接。例如:在DCS系統(tǒng)中定義的可以讓OPC客戶程序訪問的標簽。OPC項應(yīng)該被看成是數(shù)據(jù)地址的標示,而不是數(shù)據(jù)的物理源。
OPC報警與事件(Alarm and Event)規(guī)范:
OPC報警與事件規(guī)范接口提供了一種機制。通過這種機制,當I/O設(shè)備中有指定的事件或報警條件產(chǎn)生時,OPC客戶應(yīng)用程序能得到通知。通過OPC報警與事件規(guī)范接口,OPC客戶應(yīng)用程序可以設(shè)置OPC服務(wù)器支持的事件和條件,并獲的其當前狀態(tài)。
OPC事件服務(wù)器接口類IOPCEventServer提供的方法可以使OPC客戶程序完成如下功能:
● 決定OPC服務(wù)器支持的事件類型。
● 對某些特定事件進行登記,以便OPC客戶能在這些事件發(fā)生時得到通知,也可以采用過濾器定義這些事件的一個子集。
● 對OPC服務(wù)器實現(xiàn)的情況進行存取或處理。
除了IOPCEventServer接口外,OPC事件服務(wù)器還支持其它接口,可以對服務(wù)器實現(xiàn)的情況進行瀏覽和對公共組進行管理
OPC歷史數(shù)據(jù)存?。℉istorical Data Access)
歷史數(shù)據(jù)引擎能夠把那些必須分散存儲的信息組合成一個額外的數(shù)據(jù)源并把它們提供給對它們感興趣的用戶或OPC客戶程序。當前大部分歷史數(shù)據(jù)系統(tǒng)采用自己專用的接口分發(fā)數(shù)據(jù),這種方式不能提供即插即用的功能,從而限制了其應(yīng)用的范圍和功能。
在目前的本人所接觸的水泥工廠控制系統(tǒng)的組態(tài)中OPC標準正越來越廣泛的應(yīng)用。如2000年北京水泥廠水泥磨改造項目,應(yīng)用系統(tǒng)為:ABB master S800系統(tǒng)+Intellution FIX7.0,通訊采用OPC,效果良好,椐稱其為ABB系統(tǒng)在國內(nèi)首次采用OPC與其他軟件的通訊;2001年牡丹江水泥廠 Rockwell AB LOGIC5000,系統(tǒng)均為OPC通訊。甘肅山丹水泥廠:貝加萊B&R系統(tǒng)+組態(tài)王,OPC通訊。等等,以上均為不同的上下位系統(tǒng)之間或同一系統(tǒng)內(nèi)部采用OPC的實例。同時我們所開發(fā)的生料質(zhì)量控制系統(tǒng)QCX與工廠過程控制系統(tǒng)DCS的通訊中也多次采用了OPC標準,編制自己的OPC客戶端,與DCS進行實時通訊。目前已與ABB Freelance2000系統(tǒng),Siemens S7系統(tǒng),和利時DCS系統(tǒng),Rockwell AB系統(tǒng),均采用的是OPC通訊。同時由于OPC為同一通訊標準,一個OPC客戶端開發(fā)完成后,幾乎不需進行修改即可連接到多個可支持的OPCSERVER上,既可連接到目前大多數(shù)的DCS,這也是OPC與PC系統(tǒng)軟件連接的一個例證。由于OPC標準的統(tǒng)一性,在我們編制工廠信息管理系統(tǒng)PMIS和企業(yè)資源規(guī)劃系統(tǒng)ERP時,統(tǒng)一的接口程序,也大大簡化了與不同系統(tǒng)之間通訊的工作量;同時在一個工廠內(nèi),當存在幾個不同系統(tǒng)時,例如我們目前許多廠均為擴建改造項目,不同的新老系統(tǒng)連接,OPC也提供了一種可能。客戶端編制OPC數(shù)據(jù)存取程序主要為以下幾部:系統(tǒng)環(huán)境初始化,獲得OPC SERVER ID,創(chuàng)建OPC連接,連接成功,這時系統(tǒng)會自動調(diào)用OPC SERVER,您既可獲得OPCSERVER 的一些信息,添加OPC GROUP,在OPC GROUP中添加ITEM,將DCS對應(yīng)的標簽賦予ITEM,OPC已經(jīng)建立完成,下面就是對OPC的ITEM進行實時讀寫了。一些相關(guān)支持也可有相關(guān)OPC網(wǎng)站下載。
結(jié)束語
基于COM/DCOM技術(shù)的OPC技術(shù)規(guī)范在幾年內(nèi)得到了極大的發(fā)展,并得到了國際上自動化領(lǐng)域領(lǐng)先廠商的支持。采用OPC技術(shù)規(guī)范的產(chǎn)品實現(xiàn)了工業(yè)自動化系統(tǒng)中軟件之間的互操作和無縫集成,以及現(xiàn)場監(jiān)測、控制設(shè)備的即插即用,為該領(lǐng)域的硬件、軟件廠商及最終用戶帶來了直接和明顯的巨大利益。
參考文獻
(1) www.opcfoundation.org
(2) OPC Data Access Aotomation Interface Standard Version 2.02EN
(3) OPC Data Access Custom Interface Standard Version 2.0
(4) OPC Data Access 3.0 Initiative
編輯:
監(jiān)督:0571-85871667
投稿:news@ccement.com