專利名稱:控制系統(tǒng)的數(shù)據(jù)訪問方法
技術領域:
本發(fā)明涉及提供用于在用于控制的計算機化的系統(tǒng)中,從不同的源到軟件應用程序對實時數(shù)據(jù)、歷史數(shù)據(jù)和報警及事件數(shù)據(jù)進行統(tǒng)一且位置透明的訪問的裝置。用于控制的計算機化的系統(tǒng)包括控制系統(tǒng),例如,過程控制系統(tǒng)和制造執(zhí)行系統(tǒng)。特別地,本發(fā)明涉及一種方法和計算機程序,由此不管提供該訪問功能需要什么及多少不同的機械機構,軟件應用程序都可以應用一個且相同的接口來訪問不同的數(shù)據(jù)源。
背景技術:
用于控制和執(zhí)行制造的系統(tǒng)包括多種不同的軟件應用程序。一個例子是過程圖形程序包,它在屏幕上顯示出代表過程當前狀態(tài)的數(shù)據(jù)項,同時,通過為數(shù)據(jù)項輸入新的值而讓操作者發(fā)出控制命令。另一個例子是事件記錄功能,它存儲并顯示有關事件和報警的信息。還有另一個例子是歷史程序包,為長期存儲、為以趨勢曲線顯示或以其他形式顯示、以及為由其他應用程序進行的進一步處理而收集數(shù)據(jù)項值序列。還有另一個例子是報告程序包,它收集確定的數(shù)據(jù)項,實施某種計算,并作為報告顯示該結果。
還有另一個例子是計算程序包,例如電子數(shù)據(jù)表應用程序,它收集數(shù)據(jù)項值的采樣,實施某些計算,并可能地向相同的或不同的數(shù)據(jù)項回復新值。還有另一個例子是最優(yōu)化程序包,根據(jù)描述過程的當前實施情況的多個數(shù)據(jù)項的值,為了最優(yōu)化該實施操作,為多個設定點而計算新的值。
還有另一個例子是生產計劃功能,應用關于當前生產命令儲備(backlog)的信息和描述某些處理操作或制造裝置的當前可用性的數(shù)據(jù)項的值,從而確定最佳的生產計劃。還有另一個例子是生產報告程序包,應用確定的數(shù)據(jù)項來計算并報告已經(jīng)生產的產品的總量。
就其功能性來說,這些應用程序和其他程序都需要訪問例如實時數(shù)據(jù)、歷史數(shù)據(jù)和報警及事件數(shù)據(jù)的信息,這些信息來自控制器和裝置,同時也來自于其他軟件應用程序。然而,現(xiàn)在的控制系統(tǒng)是不同種類的系統(tǒng),其中的部件是不同類型的且來自于不同的廠家,例如,過程控制器、可編程邏輯控制器(PLC)、智能現(xiàn)場裝置、通信鏈路及軟件應用程序,它們都組合在一個集成系統(tǒng)中。
傳統(tǒng)上,這已要求在控制系統(tǒng)中要求數(shù)據(jù)的軟件應用程序具有特殊且不同的匹配從而可以訪問用于實時數(shù)據(jù)、歷史數(shù)據(jù)和報警及事件數(shù)據(jù)的不同的源。這在已有技術的
圖1中以簡圖形式進行了說明,該圖示出了一個過程控制系統(tǒng),該系統(tǒng)具有客戶應用程序1和三個不同的數(shù)據(jù)源5A、5B、5C通過通信驅動器A、4A對其進行訪問的可編程邏輯控制器(PLC)5A;通過通信驅動器B、4B對其進行訪問的過程控制器5B;以及通過軟件接口進行訪問的軟件應用程序5C。其他可用的數(shù)據(jù)源可以是例如不同制造商制造的、需要其他類型通信驅動器的現(xiàn)場總線式連通裝置,以及數(shù)據(jù)庫和具有其他類型軟件接口的其他軟件應用程序??蛻魬贸绦虬ú煌奶厥馄ヅ?,以使其可以通過這些不同的通信驅動器和軟件接口與不同的數(shù)據(jù)源進行通信。
OPC(用于過程控制的OLE,其中OLE是指對象鏈接和嵌入)是一種規(guī)范,它旨在通過要求所有數(shù)據(jù)源都顯示相同類型的接口而消除這些問題中的若干問題。OPC是一種由OPC基金會出版的公知的規(guī)范。它是基于微軟公司的組件對象模型(COM)建立的。
來自于已有技術的圖2示出了一種過程控制系統(tǒng),該系統(tǒng)具有如圖1所示的相同的客戶應用程序1和數(shù)據(jù)源5A、5B、5C,但還具有對應于每種數(shù)據(jù)源的OPC服務器3A、3B、3C。所有OPC服務器都暴露出相同類型的接口,因此客戶應用程序可以不必包括不同的數(shù)據(jù)源特殊匹配。
只要所有數(shù)據(jù)項都是可以通過相同的OPC服務器訪問的,那么,OPC還可使客戶應用程序訪問若干具有一個單一請求的數(shù)據(jù)項。
盡管OPC減輕了客戶應用程序對于不同數(shù)據(jù)源使用特殊匹配的需要,但其還需要客戶應用程序分辨出哪個特殊OPC服務器提供了對哪個數(shù)據(jù)項的訪問,從而指導它對正確OPC服務器的訪問請求。出于同樣的理由,當數(shù)據(jù)項是可以通過不同OPC服務器訪問時,客戶應用程序可以不訪問具有一個單一請求的若干數(shù)據(jù)項。這就具有一個缺點,即,增加了客戶應用程序的復雜度,它需要始終監(jiān)視哪個OPC服務器用于每個單獨的數(shù)據(jù)項,并且需要生成用于數(shù)據(jù)項訪問的單獨的訪問請求,該數(shù)據(jù)項起源于不同類型的數(shù)據(jù)源。另一個缺點是當在系統(tǒng)中安裝一個新的OPC服務器以提供對新類型數(shù)據(jù)源的訪問時,客戶應用程序就必須改變以便也可以使用該OPC服務器。
標題為“中央控制器中在可編程邏輯控制器和程序操作之間進行實時數(shù)據(jù)通信的裝置”的US5038318公開了一種計算機,該計算機與可編程邏輯控制器(PLC)的網(wǎng)絡相連,該網(wǎng)絡可用于實現(xiàn)制造范圍內的監(jiān)視和控制功能。該描述公開了貫穿個人計算機中常規(guī)目標電子數(shù)據(jù)表程序的可操作的內插計算機程序,該目標電子數(shù)據(jù)表程序可以在PC上顯示的電子數(shù)據(jù)表中的單元和可編程邏輯控制器(PLC)的存儲部分之間直接移動實時狀態(tài)和控制信息。這旨在通過可以在個人計算機、PC上運行的程序,簡化用戶實時監(jiān)視和控制在機床上或者在加工站中執(zhí)行的制造過程。
盡管描述了經(jīng)由同軸電纜連接的常規(guī)PLC網(wǎng)絡的功能性。但該功能性說明了PLC和PC之間通信的能力局限于-電子數(shù)據(jù)表程序發(fā)送信息給PLC,-該消息包含PLC的預定的特定存儲寄存器,-該消息經(jīng)由網(wǎng)卡和局域網(wǎng)發(fā)送到特定PLC處,-出于向PC上的電子數(shù)據(jù)表程序中的特定單元寫入信息或從其中讀出信息的目的。
標題為“具有ActiveX的過程控制”的WO99/46651,公開了一種對于用戶的軟件開發(fā)工具包,以生成一個或多個實時交互控制和通信軟件對象,用于與計算機和機器相連。所公開的內容是一種由微軟公司開發(fā)的軟件對象類型(稱為Activex組件)的應用。WO99/46651公開了Activex類型的預制軟件對象可以通過所述的工具包獲得。這些Activex軟件對象還被描述成將OPC作為控制對象的軟件表示和處理機器中控制信號之間的通信手段使用。然而,所述軟件對象的密鑰結合和結構功能是在應用前產生的,也就是說,在運行時間之前。更進一步,由于工具包生成的軟件對象直接鏈接到單獨的特定控制信號的連接標記上,所以,所述的軟件對象關于例如在應用中更新和進一步的使用,或者變化是局限的。
標題為“在計算機化的系統(tǒng)中集成應用程序的方法”的WO00102953,公開了一種在計算機化的系統(tǒng)中集成多個且不同類型的應用程序的方法。該方法是基于將現(xiàn)實世界對象表示成“復合對象”的原理進行的。現(xiàn)實世界對象的不同情況,例如它的實際位置、過程中的當前階段、控制功能、操作員的交互作用、模擬模型、某些關于該對象的記錄等等,都分別描述成復合對象的不同情況。復合對象是一個或多個這樣的情況的集合體。因此,復合對象不是面向目標系統(tǒng)的常規(guī)意義中的對象,而更可以說成是關于這種常規(guī)對象的引用的集合體,這些常規(guī)對象實施不同的情況。每種情況或情況的組合都可以由一個獨立軟件應用程序實施,這個程序通過一組接口提供了它的功能性,這些接口是通過復合對象可訪問的。另一個軟件應用程序因此可以查詢有關它的一種情況相關的功能的復合對象,并且從而通過該復合對象獲得對實施該功能的接口的引用。
網(wǎng)絡服務是下述技術的一個例子,該技術可以通過利用國際互連網(wǎng)技術啟動對(軟件)對象的遠程訪問。標題為“提供網(wǎng)絡服務的方法和裝置”的WO0077653A1公開了一種提供用于商業(yè)的網(wǎng)絡服務的方法和裝置。該描述公開了一種方法,利用HTTP(超文本傳輸協(xié)議)且請求GET和POST,從而為網(wǎng)絡服務提供輸入數(shù)據(jù)。在由微軟出版社于2001年2月期MSDN雜志中出版的文章“網(wǎng)絡服務建立具有SOAP和ASP.NET的可再用web組件”中描述了利用交互平臺技術的網(wǎng)絡服務的應用與開發(fā),例如利用XML(擴展標高語言)、HTTP和SOAP(單一對象訪問協(xié)議)的網(wǎng)絡服務的應用與開發(fā)。該篇文章也公開在微軟msdnmag網(wǎng)址處的國際互連網(wǎng)上。
發(fā)明內容
本發(fā)明的目的是解決上述的一個或多個問題。本發(fā)明提供了用于客戶應用程序以訪問數(shù)據(jù)的裝置,該數(shù)據(jù)例如,實時數(shù)據(jù)、歷史數(shù)據(jù)、及事件和報警數(shù)據(jù),而不需要客戶應用程序分辨出哪個訪問服務器用于每個數(shù)據(jù)項,并且可以統(tǒng)一且透明地進行訪問。本發(fā)明的另一個目的是提供一種裝置,使得即使當數(shù)據(jù)項是可以通過不同OPC服務器訪問時,客戶應用程序也能夠通過一個單一請求對若干數(shù)據(jù)項進行訪問。
這些和其他的目的可以通過根據(jù)權利要求1的方法實現(xiàn),可以通過根據(jù)權利要求26的系統(tǒng)實現(xiàn),也可以通過根據(jù)權利要求47的計算機程序產品實現(xiàn)。
本發(fā)明的主要優(yōu)點在于軟件應用程序,尤其是客戶應用程序,可以不要求每個客戶應用程序分辨出哪個訪問服務器用于每個單獨數(shù)據(jù)項的常規(guī)復雜度而訪問數(shù)據(jù)項,例如實時數(shù)據(jù)、歷史數(shù)據(jù)及報警和事件數(shù)據(jù)。這就又大大地簡化了-客戶應用程序中所需的功能性,-新的客戶應用程序的添加,-新類型數(shù)據(jù)源的添加,及-升級控制系統(tǒng)。
本發(fā)明的另一個優(yōu)點是使客戶應用程序免于常規(guī)復雜度,該常規(guī)復雜度是去處理這樣一些情況所要求的,即在那里每個訪問服務器存在于多個實例之中。可以是這樣的情況,即,當需要系統(tǒng)中非常大量的數(shù)據(jù)項和多個訪問服務器共享加載時,或者例如,當為了改善可用性(冗余)而復制訪問服務器時。
在用于管理及控制工業(yè)裝置和過程的大且復雜的控制系統(tǒng)中,通常有成千或甚至幾十萬的單獨的數(shù)據(jù)項,以及許多不同的客戶應用程序,這些程序必須對上述的數(shù)據(jù)項進行訪問。本發(fā)明使這些客戶應用程序的復雜度降低表現(xiàn)了有效降低提供高級控制系統(tǒng)成本的顯著技術優(yōu)勢。
本發(fā)明優(yōu)選實施例的有利改進包括代理裝置,描述成一個連接器,它使利用在客戶應用程序和針對不同情況的最佳訪問服務器之間進行通信的裝置成為可能。它包括網(wǎng)絡(web)技術的應用,例如,網(wǎng)絡服務和SOAP,該技術通過利用低成本且容易實現(xiàn)的技術,可以經(jīng)濟地實現(xiàn)客戶應用程序更大程度的地理分布。
附圖簡述當參考下面結合附圖進行的詳細描述時,可以更完整的了解本發(fā)明的方法和系統(tǒng),其中圖1(已有技術)示意性地示出了包括客戶應用程序和多個數(shù)據(jù)源的控制系統(tǒng)的綜述;圖2(已有技術)以簡單方式示出了客戶應用程序如何利用OPC服務器與具有數(shù)據(jù)獨立接口的多個數(shù)據(jù)源相連;圖3示出了根據(jù)本發(fā)明實施例在控制系統(tǒng)中具有普通類型訪問服務器而不是OPC服務器的該控制系統(tǒng)的簡圖,客戶應用程序具有訪問服務處理器組件,并且有包含關于數(shù)據(jù)項的信息的實體對象。
圖4示出了本發(fā)明優(yōu)選實施例,在該實施例中,訪問服務處理器是一個具有OPC適應接口的COM對象,并且訪問服務器是OPC服務器。
圖5示出了圖4優(yōu)選實施例的改進之處,其中,訪問服務處理器和每個OPC服務器之間的通信可以經(jīng)由連接器控制。
圖6示出了圖5優(yōu)選實施例的最佳應用,其中進一步的改進,實體對象是復合對象。
圖7示出了一個優(yōu)選實施例的最佳應用,其中,通過配置工具實施控制器裝置的一個方面。
圖8示出了一個優(yōu)選實施例的類似最佳應用,其中,通過提供數(shù)據(jù)項的軟件應用程序實現(xiàn)一個方面。
優(yōu)選實施例的描述一種根據(jù)本發(fā)明的用于提供裝置的方法,該裝置用于在用于控制的計算機化的系統(tǒng)中,以統(tǒng)一且位置透明的方式從不同的源到客戶應用程序訪問實時數(shù)據(jù)、歷史數(shù)據(jù)及報警和事件數(shù)據(jù),該方法包括軟件對象的應用,該軟件對象代表了各種實體,這些實體具有系統(tǒng)中規(guī)定的功能意義。這樣一個實體的例子是流量控制環(huán),另一個例子是溫度測量,第三個例子是啟動序列。在該說明書中,代表這種實體的軟件對象稱為實體對象。
本說明中使用的其他術語包括要求訪問數(shù)據(jù)的軟件應用程序,該程序如前所述稱為客戶應用程序,還包括提供進行這種訪問的裝置的機構,該機構稱為訪問服務器。實時數(shù)據(jù)、歷史數(shù)據(jù)或報警及事件數(shù)據(jù)的項稱為數(shù)據(jù)項。
圖3示出了根據(jù)本發(fā)明一個實施例的控制系統(tǒng),該系統(tǒng)包括客戶應用程序1、訪問服務處理器(Access Service Handler)2和一個或多個實體對象10。在該實施例中,示出的就是過程控制系統(tǒng)。過程控制系統(tǒng)中還包括有三個訪問服務器3A、3B、3C,用于三個不同類型的數(shù)據(jù)源PLC5A、過程控制器5B和軟件應用程序5C。在三個訪問服務器3A、3B、3C和不同的數(shù)據(jù)源(例如5A、5B、5C)之間的通信鏈路,都另外地以與圖2所示已有技術相類似的配置方式示出。
與每個實體對象10相關的是不同的數(shù)據(jù)項,這些數(shù)據(jù)項保持關于實體對象代表的實體的信息。這些實體對象保持每個相關數(shù)據(jù)項的引用,該引用包括關于如何訪問那條數(shù)據(jù)項的信息。該數(shù)據(jù)項位于一個或多個數(shù)據(jù)源中,這些數(shù)據(jù)源例如為分別在下面圖3-8中所示的PLC5A、過程控制器5B或軟件應用程序5C。數(shù)據(jù)項可以包括例如,實時數(shù)據(jù)、歷史數(shù)據(jù)、或報警和事件數(shù)據(jù)。有關實體對象的數(shù)據(jù)項的例子是-對于流量控制環(huán)名稱、說明、值、設定點、增益、輸出和狀態(tài)。
-對于溫度測量名稱、說明、值、高報警限、低報警限、和狀態(tài)。
-對于啟動序列名稱、說明、啟動、停止、當前階段、和狀態(tài)。
有關實體對象的每個數(shù)據(jù)項都以在控制系統(tǒng)中唯一身份的某種形式給出。在本發(fā)明的第一實施例中,這個身份是字符串‘object_name.data_item_name’,其中object_name是唯一地識別實體對象的名稱,data_item_name是在這個對象的范圍內唯一地識別數(shù)據(jù)項的名稱。例如,對流量控制環(huán)FIC201的說明將由字符串‘FIC201.DESCRIPTION’識別,對它的設定點的說明將由字符串‘FIC201.SETPOINT’識別。對于每個有關實體對象的數(shù)據(jù)項來說,該實體對象保持引用,該引用識別訪問服務器,該服務器提供對該條數(shù)據(jù)項的訪問。
與相同或不同實體對象相關的不同的數(shù)據(jù)項是可以通過不同訪問服務器進行訪問的,由于下述任何一個原因-包括不同類型數(shù)據(jù)項的數(shù)據(jù)源,這些數(shù)據(jù)源通過不同通信手段相連,并因此需要不同類型的OPC服務器,-非常大量的數(shù)據(jù)項由許多不同客戶訪問,這樣,幾個計算機之間就必須共享加載,-訪問服務器是冗余的,也就是,訪問服務器在第一計算機和第二計算機中運行,在第一計算機發(fā)生故障的情況下,第二計算機準備接收第一計算機的任務。
在任何情況下,這里描述的方法使客戶應用程序可以應用一種統(tǒng)一的方法訪問所有的數(shù)據(jù)項,可以不必處理包括什么不同類型的訪問服務器,也不必處理每個訪問服務器如何劃分或如何復制。
每個實體對象10都擁有信息,該信息采用前述引用的形式,該信息是關于哪個訪問服務器用于與其相關的數(shù)據(jù)項的信息。對于特殊的數(shù)據(jù)源,這個引用例如可以提供給相關實體對象,通過用于配置該數(shù)據(jù)源的配置工具,或者通過該相關訪問服務器提供的方法,例如,由OPC服務器提供的瀏覽機構,或者由任何其他源提供的瀏覽機構。
根據(jù)本發(fā)明,客戶應用程序對數(shù)據(jù)項的訪問由稱為訪問服務處理器2的軟件組件管理。該組件優(yōu)選以元件庫的形式用于客戶應用程序1,例如DLL(動態(tài)連接庫)或共享程序庫。顯示出對于客戶應用程序的一組統(tǒng)一的接口。優(yōu)選地是,這些接口遵守某個已知的標準,例如OPC或SQL(結構化查詢語言)。通過這些接口,客戶應用程序可以通過查詢數(shù)據(jù)項唯一的身份而訪問該數(shù)據(jù)項。訪問服務處理器應用從相關實體對象中檢索到的信息,生成對不同優(yōu)先訪問服務器的訪問請求,以建立哪個訪問服務器用于每個數(shù)據(jù)項。
參照圖3,該圖示出了根據(jù)本發(fā)明一個實施例的控制系統(tǒng),該系統(tǒng)包括客戶應用程序1、訪問服務處理器2、和一個或多個實體對象10。根據(jù)本發(fā)明一個實施例的方法以下面的方式實施。在運行時間1.客戶應用程序1與訪問服務處理器2組件相關,例如,通過將其作為過程COM對象來示例。
2.客戶應用程序調用訪問服務處理器2的相關接口,傳遞將需要訪問的數(shù)據(jù)項的標識符作為參數(shù),例如‘FIC201.VALUE’、‘FIC201.SETPOINT’、‘TI114.VALUE’、和‘TI114.HIGH ALARMLIMIT’。
3.對于包括在客戶應用程序的訪問請求中的每個數(shù)據(jù)項,訪問服務處理器2,對提供訪問該數(shù)據(jù)項的訪問服務器3的引用查詢相關實體對象10。
4.然后根據(jù)這個信息,訪問服務處理器2將客戶應用程序的請求分離成對于不同訪問服務器3的單獨請求32。
5.當訪問服務器3響應這些請求時,訪問服務處理器2就將這些不同的結果合并到一個響應中,該響應發(fā)送回客戶應用程序1。
具有訪問服務處理器2的客戶應用程序1、實體對象10、和所有訪問服務器3,都可以在同一個計算機中運行,或者在通過網(wǎng)絡相連的不同計算機中運行。
圖4示出了本發(fā)明的優(yōu)點和優(yōu)選實施例。在該實施例中,訪問服務處理器2是COM對象,且接口,例如接口21,暴露于客戶應用程序,是遵守OPC的。進一步,訪問服務器3A、3B、3C主要是OPC服務器。由于OPC是已知規(guī)范,并且OPC服務器對于多種不同類型數(shù)據(jù)源,例如,過程控制器、可編程邏輯控制器(PLC)、和智能現(xiàn)場裝置是商業(yè)上可得到的,所以該實施例是有優(yōu)勢的。
在其定義中,OPC規(guī)定遠程客戶應用程序通過DCOM(分布式COM)與OPC服務器進行通信。在本發(fā)明該優(yōu)選實施例的改進中,這種通信通過作為一種代理而運行的軟件組件來管理。該軟件代理稱為連接器6,它在與各個OPC服務器相同的計算機中運行,并且通過COM局部地與OPC服務器進行交互作用。
參看圖5。圖5示出了在與OPC服務器(3A、3B、3C)相同的計算機中運行的連接器6。訪問服務處理器2和例如,OPC服務器3A之間的通信是經(jīng)由連接器6A給定的路線。這種安排具有一個技術優(yōu)勢,就是它使任何合適的手段都可以用于訪問服務處理器2和連接器6A之間的遠程通信。合適的手段包括下述方法,例如,優(yōu)于TCP/IP的、作為SOAP上網(wǎng)絡服務的套接字通信、或者任何其他可行的或在任何特殊情況或環(huán)境中優(yōu)選的通信手段。連接器6A根據(jù)OPC規(guī)范,通過COM局部地與OPC服務器3A進行交互作用。
這可以與圖2中所示的已有技術相比。在圖2中,可以觀察到通過根據(jù)OPC所定義的內容,OPC服務器和客戶應用程序之間的通信鏈路將適應用于局部過程的COM,且適應用于遠程機器中運行的過程的DCOM。
圖6示出了具有若干情況11-14等的復合對象10′。該復合對象10′代替圖3-5的實體對象。以這個有利的形式,每個實體對象都是如WO00102953定義的復合對象10′,而關于與確定復合對象相關的每個數(shù)據(jù)項的信息由該復合對象的一種情況11-14提供。如WO00102953所述,通過查詢復合對象10′,訪問服務處理器2獲得對實現(xiàn)該功能的接口的引用,該引用用來查詢關于哪個訪問服務器用于特定數(shù)據(jù)項的信息。
圖7示出了用于過程控制器5B的配置工具76,它是一種類型的數(shù)據(jù)源,可以經(jīng)由訪問服務處理器2由客戶應用程序1訪問。在本發(fā)明的這種最佳應用中,提供關于數(shù)據(jù)項信息的情況14由軟件應用程序完成,該軟件應用程序在某種情況下與駐留數(shù)據(jù)項的數(shù)據(jù)源相關。例如,對于駐留于某種類型或某廠家生產的控制器中的數(shù)據(jù)項來說,這種情況14可以由軟件應用程序完成,該軟件應用程序用作對于該種類型控制器的配置工具76。這在圖7中說明。在該實例中,客戶應用程序1通過調用70帶有用于一個或多個數(shù)據(jù)項的作為參數(shù)的標識符的訪問服務處理器2的接口來進行訪問請求。對于每個數(shù)據(jù)項,為了對訪問數(shù)據(jù)項80的訪問服務器的引用,該訪問服務處理器查詢71有關的復合對象10′。這個功能可以更適于(但并不局限于)由前面引用的WO00102953所述的情報檢索系統(tǒng)對象(Aspect System Object)提供。通過查表73,復合對象10′發(fā)現(xiàn)相關有情報檢索系統(tǒng)對象77的引用74,詢問75有關其接口信息的對象,并返回這個對象的適當接口78的引用給訪問服務處理器2。在該例子中,情報檢索系統(tǒng)對象77由配置工具76提供,該配置工具用來給控制器5B編程,該控制器存儲數(shù)據(jù)項80。訪問服務處理器2調用81這個接口,在這種情況下,使對訪問服務的引用用于這個數(shù)據(jù)項、OPC服務器B、3B,將其作為一個響應。然后訪問服務處理器可以進行訪問請求82。
對于其中的軟件應用程序是源的數(shù)據(jù)項,提供關于那些數(shù)據(jù)項的信息的情況優(yōu)選由該軟件應用程序自己完成。在圖8中說明了本實例。圖8示出了軟件應用程序5C′、數(shù)據(jù)項目80和情報檢索系統(tǒng)對象87??蛻魬贸绦?調用70帶有用于一個或多個數(shù)據(jù)項的作為參數(shù)的標識符的訪問服務處理器2的接口。對于每個數(shù)據(jù)項,為對訪問數(shù)據(jù)項80的訪問服務器的引用,訪問服務處理器詢問71有關復合對象10′。通過查表83,復合對象10′發(fā)現(xiàn)有關情報檢索系統(tǒng)對象87的引用84,詢問85有關這個接口信息的對象,并返回這個對象的適當接口88的引用給訪問服務處理器2。訪問服務處理器2調用81這個接口,作為一個響應,獲得對訪問服務的引用以用于這個數(shù)據(jù)項,在此情況下作為OPC服務器C、3C示出。然后,該訪問服務處理器可以進行訪問請求82。
圖6、7、8所示的優(yōu)選實施例表明了本發(fā)明一個或多個最佳應用,由于WO00102953描述了用于集成許多且不同的獨立軟件應用程序的方法和系統(tǒng),本發(fā)明提供了一種擴展該方法的具有創(chuàng)造力且有效的手段,該方法具有用于統(tǒng)一并位置透明地訪問數(shù)據(jù)項的方法和系統(tǒng),這些數(shù)據(jù)項由許多且不同的獨立軟件應用程序和其他數(shù)據(jù)源來管理。
在實施本發(fā)明該方法的過程中,可以利用包括無線通信的不同形式的通信。一個或多個通信手段可以存在于部分數(shù)據(jù)通信信號中??蛻魬贸绦?1)和計算機化的控制系統(tǒng)之間的部分數(shù)據(jù)傳輸中的數(shù)據(jù)通信信號通常包括一個識別部分,該部分識別代表一個實體的已知對象(10,10′),該實體由所述計算機化的控制系統(tǒng)控制;還包括一個數(shù)據(jù)部分,該部分依賴于于所述已知對象相關的數(shù)據(jù)項。根據(jù)已知格式,例如由SGML(標準通用標記語言)導出的格式,格式化該數(shù)據(jù)信號,所述SGML例如是一種適合XML標準或WML或適合例如WAP協(xié)議的語言。
還應該注意,盡管上面描述了本發(fā)明的示范性實施例時,但在不脫離如所附權利要求限定的本發(fā)明范圍的情況下,對于該公開的方案可以進行若干變化和改進。例如,代替OPC,可以利用某些訪問實時數(shù)據(jù)、歷史數(shù)據(jù)、及報警和事件數(shù)據(jù)或其任何子集,的其他已知接口。
根據(jù)本發(fā)明的、包括訪問服務處理器、連接器軟件組件及訪問服務器的計算機程序產品可以至少部分地存儲在不同的介質上,該介質是計算機可讀的。檔案副本可以存儲在標準磁盤、硬盤驅動器、CD或DVD盤、或磁帶上。這個計算機程序產品的不同部分,例如在不同時間,可以存儲在下述任何一種機構中計算機或處理器的易失性隨機存儲器(RAM)、硬盤驅動器、光盤驅動器或磁光盤驅動器、或一種非易失性存儲器,例如ROM、PROM、或EPROM裝置。計算機程序產品還可以部分地配置,作為分布式應用程序,該程序可以大約同時在若干不同的計算機或計算機系統(tǒng)上運行。
權利要求
1.一種用于客戶應用程序(1)從計算機控制的控制系統(tǒng)中的訪問服務器(3)中請求數(shù)據(jù)項的方法,所述控制系統(tǒng)包括對象和多個訪問服務器,所述對象代表各種實體,該實體具有該控制系統(tǒng)中規(guī)定的功能意義,每個所述訪問服務器都可提供對一個或多個實時數(shù)據(jù)、歷史數(shù)據(jù)、及報警和事件數(shù)據(jù)項的訪問,其特征在于-使所述數(shù)據(jù)項和所述對象相關聯(lián),-提供訪問服務處理器(2)組件給所述客戶應用程序(1),-使訪問服務處理器組件和所述客戶應用程序相關聯(lián),-通過訪問服務處理器,產生對所述數(shù)據(jù)項的訪問請求(32)。
2.根據(jù)權利要求1的方法,其特征在于-通過訪問服務處理器(2),查詢用于與所述數(shù)據(jù)項相關的引用的至少一個所述對象(10),-借助與所述數(shù)據(jù)項相關的引用,對處理所述數(shù)據(jù)項的訪問服務器(3A、3B、3C)進行識別。
3.根據(jù)權利要求1的方法,其特征在于-通過訪問服務處理器,發(fā)送關于所述數(shù)據(jù)項的訪問請求(32,82)到訪問服務器。
4.根據(jù)權利要求1的方法,其特征在于-經(jīng)由訪問服務處理器接收一個或多個值形式的響應,該響應是根據(jù)所請求的所述數(shù)據(jù)項而作出的。
5.根據(jù)權利要求1的方法,其特征在于-訪問服務處理器接收所述對于多個所述數(shù)據(jù)項的請求,通過兩個或多個所述不同的訪問服務器可存取所述數(shù)據(jù)項,-訪問服務處理器將客戶應用程序的請求分成獨立的請求,這些獨立的請求發(fā)送到所述不同的訪問服務器,-在訪問服務處理器中,將來自所述不同的訪問服務器的一個或多個響應合并成一個響應,-將包括根據(jù)在單一響應中請求的所述多個數(shù)據(jù)項的一個或多個值的響應返回給所述客戶應用程序。
6.根據(jù)權利要求1-5中任何一項的方法,其特征在于利用唯一的標識符識別所述一個或每一個數(shù)據(jù)項。
7.根據(jù)權利要求6的方法,其特征在于唯一的標識符包括與所述數(shù)據(jù)項相關的所述對象的身份。
8.根據(jù)權利要求6-7中任何一項的方法,其特征在于訪問服務處理器利用客戶應用程序請求中的每個數(shù)據(jù)項的唯一標識符識別有關所述對象。
9.根據(jù)權利要求6-8中任何一項的方法,其特征在于所述客戶應用程序將該唯一的標識符作為參數(shù)傳遞,作為訪問服務處理器接口的請求啟動部分(70)。
10.根據(jù)權利要求6-9中任何一項的方法,其特征在于該唯一的標識符包括例如‘object_name.data_item_name’這種形式的字符串。
11.根據(jù)權利要求1的方法,其特征在于包括訪問服務處理器(2)作為元件庫。
12.根據(jù)權利要求11的方法,其特征在于包括訪問服務處理器作為軟件組件,例如動態(tài)鏈接庫(DLL)。
13.根據(jù)權利要求11的方法,其特征在于包括訪問服務處理器作為軟件組件,例如共享庫。
14.根據(jù)權利要求1的方法,其特征在于至少一個所述一個或多個訪問服務器是OPC服務器。
15.根據(jù)權利要求1的方法,其特征在于訪問服務處理器向客戶應用程序提供OPC適應接口(21)。
16.根據(jù)權利要求1的方法,其特征在于訪問服務處理器生成的對于訪問服務器的請求由用于通信的代理裝置(6)確定路線。
17.根據(jù)權利要求16的方法,其特征在于該代理裝置是連接器(6A、6B、6C)軟件組件。
18.根據(jù)權利要求16的方法,其特征在于該連接器(6A,6B,6C)是SOAP監(jiān)聽器(listener)。
19.根據(jù)權利要求16的方法,其特征在于該SOAP監(jiān)聽器提供通過網(wǎng)絡服務實現(xiàn)接口的裝置。
20.根據(jù)權利要求16的方法,其特征在于該連接器(6A,6B,6C)是TCP/IP插座。
21.根據(jù)權利要求1的方法,其特征在于提供在兩個或多個計算機上運行的訪問服務器,分別控制訪問服務器范圍中的一個或多個部分。
22.根據(jù)權利要求20的方法,其特征在于提供形成收集裝置的多個訪問服務器,用于包括通過復制訪問服務容量的冗余的訪問服務。
23.根據(jù)權利要求1-22中任一的方法,其特征在于所述對象(10′)在多數(shù)例子中是一種或多種情況(11-14)的集合體。
24.根據(jù)權利要求1-23中任一的方法,其特征在于所述對象保持的一種或多種情況(11-14)包括一個對象的引用。
25.根據(jù)權利要求1-24中任一的方法,其特征在于所述數(shù)據(jù)項和所述對象之間的引用在多數(shù)例子中是由所述對象的一種情況所保持的。
26.一個計算機化的控制系統(tǒng),包括含有對象(10)的計算機程序裝置和多個訪問服務器(3),所述對象代表各種實體,該實體具有控制系統(tǒng)中規(guī)定的功能意義,每一個所述訪問服務器都設置成提供對一個或多個實時數(shù)據(jù)、歷史數(shù)據(jù)、及報警和事件數(shù)據(jù)項進行的訪問,其特征在于所述計算機化的控制系統(tǒng)包括計算機程序產品,該產品擁有用于訪問服務處理器(2)軟件組件的裝置,該軟件組件進一步包括與客戶應用程序(1)相關的一個或多個接口,-用于識別哪個所述對象(10)與所述數(shù)據(jù)項相關的裝置,-用于獲得處理所述數(shù)據(jù)項的數(shù)據(jù)訪問服務器(3A,3B,3C)的身份的裝置,-用于從處理所述數(shù)據(jù)項的數(shù)據(jù)服務器中請求所述數(shù)據(jù)項的裝置。
27.根據(jù)權利要求26的計算機化的控制系統(tǒng),其特征在于至少一個訪問服務器與用于通信的代理裝置(6)相關。
28.根據(jù)權利要求27的計算機化的控制系統(tǒng),其特征在于該代理裝置是連接器(6A,6B,6C)組件。
29.根據(jù)權利要求28的計算機化的控制系統(tǒng),其特征在于該連接器組件是一個監(jiān)聽器。
30.根據(jù)權利要求28的計算機化的控制系統(tǒng),其特征在于該連接器組件是一個SOAP監(jiān)聽器。
31.根據(jù)權利要求28的計算機化的控制系統(tǒng),其特征在于該連接器組件包括TCP/IP插座。
32.根據(jù)權利要求26-31中任一的計算機化的控制系統(tǒng),其特征在于所述兩個或多個訪問服務器(3A,3B,3C)至少一個是OPC服務器。
33.根據(jù)權利要求26-32中任一的計算機化的控制系統(tǒng),其特征在于所述對象(10,10′)在多數(shù)例子中是復合對象類型的一種或多種情況(11-14)的集合體。
34.根據(jù)權利要求26-33中任一的計算機化的控制系統(tǒng),其特征在于在所述數(shù)據(jù)項和所述對象(10′)之間的一種引用在多數(shù)例子中由該所述對像(10’)的一種情況(11-14)所保持。
35.根據(jù)權利要求26的計算機化的控制系統(tǒng),其特征在于保持所述數(shù)據(jù)項和所述對象(10’)之間的該引用的情況(11-14)由與一個數(shù)據(jù)源(5A,5B)相關的軟件應用程序(76)保持。
36.根據(jù)權利要求26的計算機化的控制系統(tǒng),其特征在于保持所述數(shù)據(jù)項(80)和所述對象(10′)之間的該引用的情況(13)由為軟件應用程序(5C)的數(shù)據(jù)源保持。
37.根據(jù)權利要求26的計算機化的控制系統(tǒng),其特征在于通過分布在不只一個計算裝置上的復制的訪問服務容量,訪問服務具有冗余。
38.根據(jù)權利要求26的計算機化的控制系統(tǒng),其特征在于通過分布在不只一個數(shù)據(jù)存儲裝置上的復制的訪問服務容量,使該訪問服務具有冗余。
39.一種數(shù)據(jù)通信信號,在客戶應用程序(1)和計算機化的控制系統(tǒng)之間的數(shù)據(jù)傳輸中包括該數(shù)據(jù)通信信號,該數(shù)據(jù)通信信號包括一個識別部分和一個數(shù)據(jù)部分,識別部分識別一個代表實體的已知對象(10,10′),該實體由所述計算機化的控制系統(tǒng)控制,數(shù)據(jù)部分代表與所述已知對象相關的數(shù)據(jù)項。
40.根據(jù)權利要求39的數(shù)據(jù)通信信號,其特征在于所述數(shù)據(jù)通信信號適應于XML標準而部分地進行格式化。
41.根據(jù)權利要求39的數(shù)據(jù)通信信號,其特征在于所述數(shù)據(jù)通信信號適應于例如WAP、WML的SGML標準衍生的標準而部分地進行格式化。
42.根據(jù)權利要求39的數(shù)據(jù)通信信號,其特征在于所述數(shù)據(jù)通信信號適應于一個標準而部分地進行格式化,該標準適于結合便攜式計算裝置和/或電話的顯示應用。
43根據(jù)權利要求26-38中任一的計算機化的控制系統(tǒng)的應用,通過操作員來監(jiān)督系統(tǒng)中的功能,該系統(tǒng)由所述計算機化的控制系統(tǒng)控制。
44.根據(jù)權利要求26-38中任一的計算機化的控制系統(tǒng)的應用,通過操作員來控制系統(tǒng)中的功能,該系統(tǒng)由所述計算機化的控制系統(tǒng)控制。
45.根據(jù)權利要求26-38中任一的計算機化的控制系統(tǒng)的應用,通過在一個或多個計算機中運行的過程來監(jiān)督系統(tǒng)中的功能,該系統(tǒng)由所述計算機化的控制系統(tǒng)控制。
46.根據(jù)權利要求26-38中任一的計算機化的控制系統(tǒng)的應用,通過在一個或多個計算機中運行的過程來控制系統(tǒng)中的功能,該系統(tǒng)由所述計算機化的控制系統(tǒng)控制。
47.一種計算機程序產品,當在一個計算機或處理器上運行時,該產品將使所述計算機或處理器完成根據(jù)權利要求1-25中任何一項方法的一個或多個步驟。
48.根據(jù)權利要求47的計算機程序產品,該計算機程序產品配置在一個或多個計算機可讀介質上。
49.一種客戶應用程序(1)的計算機程序產品,請求計算機控制的控制系統(tǒng)中的訪問服務器(3)中的數(shù)據(jù)項,該程序產品配置在一個或多個計算機可讀介質上,并包括訪問服務處理器(2)軟件組件,所述軟件組件進一步包括一個或多個與客戶應用程序(1)相關的接口;用于識別所述哪個對象(10,10′)與所述數(shù)據(jù)項相關的一個裝置;用于獲得數(shù)據(jù)服務器的身份的一個裝置,該數(shù)據(jù)服務器處理所述數(shù)據(jù)項;以及用于請求處理所述數(shù)據(jù)項的數(shù)據(jù)服務器中的所述數(shù)據(jù)項的一個裝置。
全文摘要
用于客戶應用程序(1)的方法和系統(tǒng),請求計算機控制的控制系統(tǒng)的訪問服務器(3)中的數(shù)據(jù)項。該控制系統(tǒng)包括對象和多個訪問服務器,所述對象代表各種實體,這些實體具有控制系統(tǒng)中的確定功能意義。每個訪問服務器,例如OPC服務器,都可以提供對一個或多個實時數(shù)據(jù)、歷史數(shù)據(jù)、報警和事件數(shù)據(jù)項的訪問。在一個實施例中,該方法提供了一種裝置,此裝置可以通過詢問一個所述對象啟動訪問服務處理器(2)部分,以獲得期望數(shù)據(jù)項的引用,發(fā)現(xiàn)哪一訪問服務器處理所述數(shù)據(jù)項。該訪問服務處理器接著向識別訪問服務器發(fā)出請求。
文檔編號G06F15/16GK1599912SQ02824441
公開日2005年3月23日 申請日期2002年9月18日 優(yōu)先權日2001年10月5日
發(fā)明者T·保利, M·魯丁, J·安德松 申請人:Abb股份有限公司