国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      用于過程控制的對象鏈接和嵌入服務器重定向管理器的制作方法

      文檔序號:7866194閱讀:239來源:國知局
      專利名稱:用于過程控制的對象鏈接和嵌入服務器重定向管理器的制作方法
      交叉引用
      本申請要求2002年6月28日提交的題為“OPC服務器重定向管理器”的美國臨時專利申請第60/392493號的優(yōu)先權。
      背景 1.發(fā)明領域 一般來說,本發(fā)明涉及OPC服務器重定向管理器,它是中間OPC服務器,把客戶機進行的所有OPC呼叫轉發(fā)給與數(shù)據(jù)源通信的實際OPC服務器。具體來說,OPC服務器重定向管理器維護當目標OPC服務器出故障時采取適當動作所需的信息,并確保沒有不良狀態(tài)被返回給客戶機。
      2.相關技術的描述 用于過程控制的OLE(OPC)是新興工業(yè)標準,它通過允許自動化系統(tǒng)共享信息以及與其它工業(yè)自動化、過程控制和工廠的其它商業(yè)系統(tǒng)配合工作來推動一體化。(字母O-P-C最初表示用于過程控制的對象鏈接和嵌入(OLE),但OLE已經(jīng)從面向對象的重構為基于對象的并重命名為ActiveX。)OPC標準是由OPC基金會維護的非專有技術規(guī)范。
      過去,每個軟件或應用程序開發(fā)人員需要編寫定制接口(或服務器/驅動器)以與硬件領域裝置交換數(shù)據(jù)。OPC標準通過提供公共接口來取代這種做法,這允許此工作執(zhí)行一次,然后供人機界面(HMI)、監(jiān)督控制和數(shù)據(jù)采集(SCADA)控制和定制應用容易地再用。
      OPC規(guī)范基于MicrosoftOLE(現(xiàn)在的ActiveX)、組件對象模型(COM)以及分布式組件對象模型(DCOM)技術。OPC定義用于過程控制、制造和自動化應用的接口、屬性和方法的標準集。這些應用包括分布式控制系統(tǒng)、可編程邏輯控制器、輸入/輸出(IO)系統(tǒng)、智能領域裝置和實時信息的其它服務器。ActiveX/COM技術定義各個軟件組件如何交互和共享數(shù)據(jù)。通過使用MicrosoftVisual Basic面向對象的組件、OLE自動化,OPC可經(jīng)由局域網(wǎng)(LAN)、遠程站點或因特網(wǎng)為辦公應用提供工廠基本數(shù)據(jù)。
      OPC為最終用戶和硬件、軟件制造商提供許多益處,包括開放式連通性、高性能以及改進的廠商生產率。OPC提供開放式連通性,為用戶提供在廣泛的工廠基本裝置和客戶機軟件之中的選擇,允許更好地利用優(yōu)質品種應用。由于OPC為開放式標準,因此軟件和硬件制造商把較少時間用于連通性事項,而把較多時間用于應用事項,從而消除大量的重復工作。OPC促進自動化和控制應用、現(xiàn)場裝置以及商業(yè)和辦公應用之間的更大互通性。
      一些重定向系統(tǒng)提供劣于根據(jù)本發(fā)明的重定向管理器的功能性,而且它們看來具有不同的體系結構。一種重定向系統(tǒng)實現(xiàn)為Microsoft Windows服務,而根據(jù)本發(fā)明的重定向管理器采用專用連接方式以限制故障的影響。重定向系統(tǒng)實現(xiàn)OPC數(shù)據(jù)訪問,而根據(jù)本發(fā)明的重定向管理器具有重定向服務器,它實現(xiàn)那些功能以及OPC告警和事件。重定向系統(tǒng)看來似乎經(jīng)由試通機制來實現(xiàn)服務器/節(jié)點健康,而根據(jù)本發(fā)明的重定向管理器采用具有較少網(wǎng)絡業(yè)務量開銷的監(jiān)視方法。為了性能和一致性原因,某些OPC服務器使內部OPC服務器數(shù)據(jù)庫同步。根據(jù)本發(fā)明的重定向管理器可選地提供這種功能。
      其它重定向系統(tǒng)提供所有客戶機連接到的服務。如果那個服務出故障,則所有連接的客戶機受影響。相反,采用根據(jù)本發(fā)明的重定向管理器的客戶機具有專用連接。如果專用連接出故障,則只有所連接的客戶機受影響。傳統(tǒng)重定向系統(tǒng)采用試通機制用于檢測。這比根據(jù)本發(fā)明的重定向管理器的效率低,根據(jù)本發(fā)明的重定向管理器在目標節(jié)點或服務器出故障時采用通知提供者警告重定向管理器。
      本發(fā)明通過維護當目標OPC服務器出故障時采取適當動作以及確保沒有不良狀態(tài)返回給客戶機所需的信息來克服這些問題。需要目標OPC數(shù)據(jù)訪問和/或告警及事件服務器之間的無縫故障解決的任何現(xiàn)有OPC客戶機將連接到重定向管理器的獨特地配置的示例,而不是連接到主服務器。客戶機應用繼續(xù)照常執(zhí)行OPC相關任務。由于每個客戶機連接是獨特的,因此重定向管理器本身不是單一故障點。每個所配置的重定向管理器示例通過預訂故障事件來監(jiān)視目標服務器節(jié)點和目標服務器本身的健康。預訂而不是輪詢(經(jīng)由試通)的使用減少了網(wǎng)絡業(yè)務量。本發(fā)明還提供如下所述的其它許多優(yōu)點。


      發(fā)明內容
      本發(fā)明的一個實施例是重定向管理方法。響應第一OPC客戶機的第一客戶機連接請求,允許從第一OPC客戶機到OPC重定向管理器的第一示例的第一專用連接。響應第二OPC客戶機的第二客戶機連接請求,允許從第二OPC客戶機到OPC重定向管理器的第二示例的第二專用連接。根據(jù)一個實施例,即使第二OPC客戶機的第二專用連接在OPC重定向管理器的第二示例出故障時丟失,第一OPC客戶機的第一專用連接仍被保持。建立到第一目標OPC服務器的連接。建立到用于第一目標OPC服務器的OPC服務器狀態(tài)改變提供者的另一個連接。根據(jù)另一個實施例,建立到至少一個附加目標OPC服務器、包括配置成為第一目標OPC服務器提供備份的第二目標OPC服務器的附加連接。
      在接收到來自用于第一目標OPC服務器的OPC服務器狀態(tài)改變提供者的活動服務器故障事件時,執(zhí)行向第二目標OPC服務器的切換。從OPC服務器狀態(tài)改變提供者接收通知第一目標OPC服務器現(xiàn)在可用以及建立到第一目標OPC服務器的連接。
      假設沒有出現(xiàn)故障,則從第一OPC客戶機接收OPC添加組請求,并將其轉發(fā)到第一目標OPC服務器以便提供服務。在接收到來自第一目標OPC服務器的請求完成事件時,通過創(chuàng)建至少一個組來實現(xiàn)與OPC添加組請求相關的多個添加組接口。OPC添加組請求被轉發(fā)給每個附加目標OPC服務器,以便存儲(這些)組作為不活動的。存儲與OPC添加組請求相關的信息,包括組。
      重定向管理器從第一OPC客戶機接收OPC按數(shù)據(jù)變化(on-data-change)請求,在第一目標OPC服務器與第一接收器對象之間建立連接。接收器對象屬于重定向管理器。在第二目標OPC服務器與第二接收器對象之間建立另一個連接。存儲與OPC按數(shù)據(jù)變化請求相關的信息,包括至少一個組。在重定向管理器接收到來自第一目標OPC服務器的第一按數(shù)據(jù)變化請求之后,所述按數(shù)據(jù)變化請求從重定向管理器提供給第一OPC客戶機。在接收到來自用于第一目標OPC服務器的OPC服務器狀態(tài)改變提供者的活動服務器故障事件時,執(zhí)行向第二目標OPC服務器的切換。至少一個組在第二目標OPC服務器上被激活,以及在重定向管理器接收到來自第二目標OPC服務器的第二按數(shù)據(jù)變化請求之后,所述按數(shù)據(jù)變化請求從重定向管理器提供給第一OPC客戶機。從OPC服務器狀態(tài)改變提供者處接收關于第一目標OPC服務器現(xiàn)在可用的通知,建立到第一目標OPC服務器的連接,以及先前存儲的信息被用于向第一目標OPC服務器添加組。
      本發(fā)明的另一個實施例是重定向管理的方法。響應來自OPC客戶機的OPC創(chuàng)建事件預訂請求,實現(xiàn)與OPC創(chuàng)建事件預訂請求相關的接口。OPC創(chuàng)建事件預訂請求被轉發(fā)給主目標OPC服務器以便得到服務。它還作為不活動的被轉發(fā)給至少一個附加目標OPC服務器,包括配置成為主目標OPC服務器提供備份的輔助目標OPC服務器。存儲與OPC創(chuàng)建事件預訂請求相關的信息,包括狀態(tài)信息。
      由重定向管理器建立到主目標OPC服務器的連接。由重定向管理器建立到用于主目標OPC服務器的OPC服務器狀態(tài)改變提供者的附加連接以及到附加目標OPC服務器的附加連接。如果確定主目標OPC服務器支持OPC告警和事件,則告警和事件模塊被加載。至少一個按事件(on-event)請求從主目標OPC服務器提供給OPC客戶機。在接收到來自用于主目標OPC服務器的OPC服務器狀態(tài)改變提供者的活動服務器故障事件時,執(zhí)行向輔助目標OPC服務器的切換,以及把切換通知告警和事件模塊。使當前活動事件與輔助目標OPC服務器同步,以便防止數(shù)據(jù)丟失,并且把OPC按事件請求從輔助目標OPC服務器提供給OPC客戶機。從OPC服務器狀態(tài)改變提供者接收到關于主目標OPC服務器現(xiàn)在可用的通知時,建立到主目標OPC服務器的連接,并且采用狀態(tài)信息來建立。
      本發(fā)明的另一個實施例是OPC重定向管理系統(tǒng),該系統(tǒng)包括第一OPC服務器、第二OPC服務器以及第一重定向管理器。第一OPC服務器能夠為OPC請求提供服務。第二OPC服務器配置成為第一OPC服務器提供備份。第一重定向管理器能夠代表第一OPC客戶機把OPC請求轉發(fā)給第一OPC服務器或者第二OPC服務器。第一OPC客戶機能夠建立它自己的與第一重定向管理器的專用連接。第一重定向管理器能夠在第一OPC服務器出故障時連接到第二OPC服務器,從而向第一OPC客戶機提供無縫服務。第一重定向管理器能夠存儲與OPC請求相關的信息,供第一OPC服務器出故障時使用。
      OPC重定向管理系統(tǒng)還可包括第三OPC服務器、第四OPC服務器以及第二重定向管理器。第四OPC服務器配置成為第三OPC服務器提供備份。第二OPC客戶機能夠建立它自己的與第二重定向管理器的專用連接。第二重定向管理器能夠在第三OPC服務器出故障時連接到第四OPC服務器,從而向第二OPC客戶機提供無縫服務。第一OPC服務器能夠配置成為第三OPC服務器提供備份。OPC請求的類型可以是數(shù)據(jù)訪問或告警和事件。
      OPC重定向管理系統(tǒng)還可包括主服務器節(jié)點、輔助服務器節(jié)點以及客戶機節(jié)點。主服務器節(jié)點包括第一OPC服務器、主節(jié)點狀態(tài)改變提供者以及主OPC狀態(tài)改變提供者。輔助服務器節(jié)點包括第二OPC服務器、輔助節(jié)點狀態(tài)改變提供者以及輔助OPC狀態(tài)改變提供者??蛻魴C節(jié)點包括第一OPC客戶機、第一重定向管理器、客戶機節(jié)點狀態(tài)改變提供者以及客戶機OPC狀態(tài)改變提供者。第一重定向管理器包括數(shù)據(jù)訪問和預訂狀態(tài)數(shù)據(jù)及切換管理器。第一OPC服務器包括項目高速緩存和條件數(shù)據(jù)庫。第一OPC客戶機是過程控制應用。第一OPC服務器與裝置進行通信以便為OPC請求提供服務,使得第一OPC客戶機接收關于裝置的信息,作為OPC請求的結果。
      本發(fā)明的另一個實施例是機器可讀媒體,存儲用于執(zhí)行一個方法的可執(zhí)行指令。響應第一OPC客戶機的第一客戶機連接請求,允許從第一OPC客戶機到OPC重定向管理器的第一示例的第一專用連接。響應第二客戶機連接請求,允許從第二OPC客戶機到OPC重定向管理器的第二示例的第二專用連接。建立到用于第二OPC客戶機的節(jié)點狀態(tài)改變提供者的連接。當重定向管理器出故障以及第二OPC客戶機的專用連接丟失時,保持第一OPC客戶機的第一專用連接。建立到第一目標OPC服務器的連接。建立到用于第一目標OPC服務器的OPC服務器狀態(tài)改變提供者的另一個連接。建立到配置成為第一目標OPC服務器提供備份的第二目標OPC服務器的另一個連接。在接收到來自用于第一目標OPC服務器的OPC服務器狀態(tài)改變提供者的活動服務器故障事件時,執(zhí)行向第二目標OPC服務器的切換。
      通過參照以下附圖、描述及所附權利要求書,將會更好地理解本發(fā)明的這些及其它特征、方面和優(yōu)點。
      附圖概述

      圖1是根據(jù)本發(fā)明的重定向管理器系統(tǒng)體系結構的單客戶機連接的框圖。
      圖2是根據(jù)本發(fā)明的到重定向管理器的多個示例的多個客戶機連接的框圖。
      圖3是根據(jù)本發(fā)明、重定向管理器如何建立客戶機連接的順序圖。
      圖4是根據(jù)本發(fā)明、重定向管理器如何維護與OPC添加組請求相關的狀態(tài)信息的順序圖。
      圖5是根據(jù)本發(fā)明、重定向管理器如何處理OPC按數(shù)據(jù)變化請求的順序圖。
      圖6是根據(jù)本發(fā)明、重定向管理器如何處理活動目標OPC服務器的故障的順序圖。
      圖7是根據(jù)本發(fā)明、重定向管理器如何使備選目標OPC服務器在它變?yōu)榭捎脮r同步的順序圖。
      圖8是根據(jù)本發(fā)明、重定向管理器如何代表客戶機維護OPC創(chuàng)建事件預訂請求的狀態(tài)信息的順序圖。
      圖9是根據(jù)本發(fā)明、重定向管理器在目標服務器支持OPC告警和事件時如何處理活動目標OPC服務器的故障的順序圖。
      圖10是根據(jù)本發(fā)明、重定向管理器如何使備選目標OPC服務器在它變?yōu)榭捎脮r同步的順序圖。
      優(yōu)選實施例的詳細描述 在以下詳細描述中參照附圖。這些附圖組成本說明的一部分,以及通過舉例給出可實施本發(fā)明的具體優(yōu)選實施例。對這些實施例進行充分詳細描述,使本領域的技術人員能夠實施本發(fā)明??墒褂闷渌鼘嵤├???蛇M行結構的、邏輯的和電氣的變更,而沒有背離本發(fā)明的精神和范圍。因此,以下詳細描述不是限制性的,本發(fā)明的范圍僅由所附權利要求來限定。
      圖1表示根據(jù)本發(fā)明的重定向管理器系統(tǒng)體系結構的單客戶機連接。在客戶機節(jié)點100中的是OPC客戶機101,它連接到重定向管理器102的單個示例,重定向管理器102又與主OPC服務器節(jié)點104中的組件以及備份OPC服務器節(jié)點106中的組件進行通信。主OPC服務器節(jié)點104和備份OPC服務器節(jié)點106中的組件與裝置108進行通信。
      OPC客戶機101連接到重定向管理器102而不是直接連接到主OPC服務器節(jié)點104。利用配置實用程序為OPC客戶機101配置重定向管理器102。一旦配置完成,OPC客戶機101繼續(xù)照常執(zhí)行OPC相關任務。各個所配置的重定向管理器102經(jīng)過注冊,使得它指向已安裝的可執(zhí)行體。在客戶機連接時,創(chuàng)建重定向管理器102的新示例。這個新示例在唯一進程地址空間中執(zhí)行。為了狀態(tài)目的,它對OPC客戶機101是通過唯一標識可識別的。除了重定向管理器102的示例之外,客戶機節(jié)點100具有OPC服務器狀態(tài)改變提供者110和節(jié)點狀態(tài)改變提供者112。
      重定向管理器102是中間OPC服務器,它把OPC客戶機101進行的OPC請求轉發(fā)到與裝置108通信的主OPC服務器節(jié)點104。重定向管理器102維護當主OPC服務器節(jié)點104出故障時采取適當動作所需的信息,并確保沒有不良狀態(tài)被返回給OPC客戶機101。重定向管理器102具有數(shù)據(jù)訪問和預訂狀態(tài)數(shù)據(jù)114及切換管理器116,以便改變活動服務器。
      主OPC服務器節(jié)點104與裝置108以及OPC客戶機101想要訪問以讀取和寫入數(shù)據(jù)的其它數(shù)據(jù)源進行通信,并配置為重定向管理器102所用的主服務器。另外,主OPC服務器節(jié)點104可配置為不同于重定向管理器102的重定向管理器所用的輔助服務器(參見圖2)?;顒覱PC服務器是主OPC服務器節(jié)點104或者備份OPC服務器節(jié)點106,并且是當前通過重定向管理器102正服務于OPC客戶機101的OPC請求的服務器。主OPC服務器節(jié)點104具有包含項目高速緩存120和條件數(shù)據(jù)庫122的OPC服務器118、節(jié)點狀態(tài)改變提供者124以及OPC服務器狀態(tài)改變提供者126。當前數(shù)據(jù)值存儲在項目高速緩存120中,告警狀態(tài)存儲在條件數(shù)據(jù)庫122中。
      當主OPC服務器節(jié)點104出故障時,輔助或備份OPC服務器節(jié)點106是活動OPC服務器。另外,備份OPC服務器節(jié)點106可配置為不同的重定向管理器所用的主服務器(參見圖2)。與主OPC服務器節(jié)點104相似,備份OPC服務器節(jié)點106具有包含項目高速緩存130和條件數(shù)據(jù)庫132的OPC服務器128、節(jié)點狀態(tài)改變提供者134以及OPC服務器狀態(tài)改變提供者136。
      裝置108是能夠服務于數(shù)據(jù)訪問或IO請求以及把告警和事件推向OPC服務器的數(shù)據(jù)源。
      根據(jù)本發(fā)明的重定向管理器102是一種OPC服務器,它可支持OPC數(shù)據(jù)訪問2.05和1.0A、OPC告警和事件1.0、OPC安全1.0接口以及當前已知或將來的其它OPC數(shù)據(jù)訪問、OPC告警和事件、其它OPC接口。在以下意義上,它不是真正的OPC服務器它沒有與實際數(shù)據(jù)源通信,而是用來向實際OPC服務器以及從實際OPC服務器轉發(fā)客戶機呼叫以及維護狀態(tài)信息,允許它在主服務器出故障時交換到備份服務器。重定向管理器102被實現(xiàn)為進程外.exe服務器(參見圖2)。到重定向管理器102的每個客戶機連接有一個.exe服務器。向主和備份服務器、例如主OPC服務器節(jié)點104和備份OPC服務器節(jié)點106進行改變客戶機連接狀態(tài)但不請求IO的那些OPC請求。僅向主OPC服務器118進行IO請求。這使輔助服務器進入熱備用模式。如果主OPC服務器118出故障,則重定向管理器102激活備份OPC服務器128并發(fā)出IO請求。由于OPC客戶機101不知道此交換,因此能夠明顯減少OPC客戶機101本身的錯誤處理情況。重定向管理器102還支持冷備用冗余方案。在這種情況下,不將狀態(tài)復制到備份OPC服務器128。所有狀態(tài)在切換時建立。
      重定向管理器102還支持可選瀏覽界面。重定向管理器102把所有呼叫轉發(fā)給主OPC服務器118或備份OPC服務器128,或者轉發(fā)給所有服務器,同時維護與用于重定向目的的呼叫有關的狀態(tài)信息。當前服務于IO請求的服務器稱作活動服務器。如果當前活動服務器出故障,則作為切換過程的一部分,重定向管理器102把備份服務器之一設置為新的活動服務器。
      重定向管理器102保存OPC客戶機101的請求的狀態(tài),當主服務器出故障時把它們重定向或者重新發(fā)布到備份服務器,以及還用于其它各種情況。一種方法是把客戶機呼叫分類為IO和非IO請求。按照以下方式進行分類。改變客戶機連接狀態(tài)但不請求IO的那些OPC請求被分類為非IO請求,諸如添加組、添加項目、創(chuàng)建事件預訂以及設置過濾器呼叫??蛻魴CIO呼叫被分類為IO請求,諸如讀、寫和確認條件。
      以不同方式處理這些呼叫狀態(tài)的保持。只要OPC客戶機101正在運行,則保持非IO呼叫。需要這種信息的一種情況是同步在OPC客戶機101已經(jīng)進行添加組和添加項目呼叫之后出現(xiàn)的備份服務器。保持IO呼叫信息僅僅直到主或備份服務器為呼叫提供服務為止。一旦呼叫順利地完成,則關于該呼叫的IO信息被刪除。
      重定向管理器102檢查活動服務器返回的所有錯誤。表明沿著重定向管理器102與活動服務器之間的通信路徑的故障的那些錯誤將導致重定向管理器102發(fā)起切換。沒有表明沿著這個通信路徑的故障的那些錯誤被轉發(fā)給OPC客戶機102。OPC客戶機101按照與它直接連接到服務器時相同的方式來處理這些錯誤。重定向管理器102保存所有非IO呼叫的狀態(tài),因此可嘗試重新同步。分類為非IO的所有OPC呼叫被發(fā)送給主服務器和備份服務器。在請求發(fā)給備份服務器之前,呼叫必須在活動服務器上順利進行。如果請求在備份服務器上出故障,則錯誤被記錄,但沒有被返回給客戶機。這時,備份服務器被認為與活動服務器不同步。重定向管理器嘗試在切換時重新同步備份服務器。如果重新同步失敗,則重定向管理器不切換到輔助服務器。
      在初始化過程中,重定向管理器102建立與目標服務器、例如主OPC服務器節(jié)點104和備份OPC服務器節(jié)點106的連接。另外,重定向管理器102還建立與狀態(tài)改變提供者、如OPC服務器狀態(tài)改變提供者110的連接,以便預訂可觸發(fā)切換管理器116的事件。對于節(jié)點故障,重定向管理器102連接到節(jié)點狀態(tài)改變提供者112。節(jié)點狀態(tài)改變提供者112與對等節(jié)點狀態(tài)改變提供者、如節(jié)點狀態(tài)改變提供者106進行通信,以便監(jiān)測其它節(jié)點的健康。同樣,重定向管理器102建立到各目標OPC服務器節(jié)點、如主OPC服務器節(jié)點104和備份OPC服務器節(jié)點106上的OPC服務器狀態(tài)改變提供者、如OPC服務器狀態(tài)改變提供者126、136的遠程預訂連接。服務器狀態(tài)的變化被轉發(fā)到重定向管理器102。如果主OPC服務器節(jié)點104的OPC服務器118從運行狀態(tài)轉變,則重定向管理器102通過切換管理器116發(fā)起向備份OPC服務器節(jié)點106的切換。如果備份OPC服務器128從運行狀態(tài)轉變以及變?yōu)椴豢捎?,則向運行的后續(xù)轉變得到同步。
      重定向管理器102向OPC服務器狀態(tài)改變提供者110報告其狀態(tài)。這實現(xiàn)與主機系統(tǒng)狀態(tài)顯示組件的集成。向用戶揭示從OPC客戶機101到重定向管理器102的連接的健康以及目標OPC服務器118、128的健康。
      OPC客戶機101向重定向服務器102進行OPC請求,好象它直接連接到目標OPC服務器118、128一樣。對于各客戶機組創(chuàng)建,重定向管理器102把請求轉發(fā)給活動和備份OPC服務器118、128。激活組收集的請求僅在活動OPC服務器上執(zhí)行。組數(shù)據(jù)收集在備份服務器上是無效的。同樣,激活事件預訂的請求僅在活動OPC服務器上執(zhí)行。事件預訂在備份OPC服務器上保持無效。
      收集具體數(shù)據(jù)源的請求可要求對裝置108的名稱空間中的名稱的轉換。如果裝置108位于遠處,則這個名稱轉換操作可能在性能方面開銷很大。因此,重定向管理器102優(yōu)化為與裝置名稱空間處理同步,而沒有請求裝置108的多次轉換操作。
      重定向管理器102在分開的線程上向主OPC服務器118和備份OPC服務器128進行所有OPC呼叫或請求。這使因服務器出故障而失敗的OPC呼叫可以向備份OPC服務器128重發(fā)。在創(chuàng)建該線程之后,主OPC服務器118等待由向備份OPC服務器128發(fā)出呼叫的線程所發(fā)出信號通知的請求完成事件。一旦事件被發(fā)出信號通知,則主OPC服務器118把結果返回給OPC客戶機101。重定向管理器102還在活動服務器出故障時等待活動服務器故障事件被發(fā)出信號通知。如果這個事件被發(fā)出信號通知,則重定向管理器102查找備用服務器,以及向那個服務器重新發(fā)出故障請求。內部超時周期被加至該等待,以便處理通知提供者或重定向管理器102本身不能處理的那些情況。這樣,如果以上兩種事件中的任一個沒有被發(fā)出信號通知,則重定向管理器102不會永遠保持掛起。作為配置選項提供超時周期。
      對于用于數(shù)據(jù)訪問以及告警和事件的回叫按照一種方法。重定向管理器102實現(xiàn)OPC客戶機101的所有回叫。它截收活動OPC服務器的回叫,保持OPC客戶機101的所有接收器接口,以及向OPC客戶機101發(fā)出回叫。這確保在切換過程中沒有不良值被返回給OPC客戶機101。對于數(shù)據(jù)訪問,當活動服務器在回叫可能發(fā)生之前出故障時,沒有丟失異步讀取或寫入呼叫。重定向管理器102跟蹤回叫是否已完成,以及當切換發(fā)生時再次向備份服務器重發(fā)呼叫。重定向管理器102回叫把事件轉發(fā)給客戶機按事件回叫,或者把數(shù)據(jù)請求轉發(fā)給按數(shù)據(jù)變化回叫。當活動服務器出故障時,重定向管理器102在輔助服務器上激活客戶機預訂或數(shù)據(jù)訪問組。重定向管理器102刷新事件預訂,以及從輔助服務器開始處理回叫。
      圖2是根據(jù)本發(fā)明、到重定向管理器的多個示例的多個客戶機連接的框圖??蛻魴C節(jié)點200具有已安裝重定向管理器二進制可執(zhí)行體202。配置工具在駐留于Microsoft Windows注冊處的注冊表204中創(chuàng)建用于所注冊的重定向管理器的條目。配置包括標識目標OPC服務器。當客戶機、如客戶機一206連接到所注冊的重定向管理器、如重定向管理器一208時,創(chuàng)建已安裝重定向管理器二進制可執(zhí)行體202的新示例。各示例在其自己的進程空間中運行,與其它任何正運行示例無關,并且為原始操作系統(tǒng)可見的。客戶機連接到不同的多個注冊的重定向管理器,例如重定向管理器一、二、三和四。如果重定向管理器一208的第一示例出故障,則只有客戶機一206被影響,因為客戶機三216具有它自己的到重定向管理器一218的第二示例的專用連接。注冊的重定向管理器又與多個OPC服務器、如OPC服務器210進行通信。多個OPC服務器駐留在服務器節(jié)點、如服務器節(jié)點212中。多個服務器節(jié)點駐留在集群、如OPC服務器節(jié)點集群214中??梢源嬖谌魏螖?shù)量的客戶機、重定向管理器、OPC服務器、服務器節(jié)點以及OPC服務器節(jié)點集群。
      圖3-10是重定向管理器根據(jù)本發(fā)明工作的方式的多種情況的順序圖。雖然重定向管理器設計成適合兩個或兩個以上目標OPC服務器,但這些順序圖僅采用兩個目標OPC服務器(即主和輔助)。這僅用于說明,以便使順序圖更簡單以及更易于理解。重定向管理器成功連接到的第一目標稱作活動服務器。剩余目標OPC服務器稱作備用者。根據(jù)本發(fā)明的重定向管理器支持來自OPC數(shù)據(jù)訪問以及OPC告警和事件發(fā)端的規(guī)范。在以下情況中,可提到具體的發(fā)端,但根據(jù)本發(fā)明的重定向管理器能夠同時服務于數(shù)據(jù)訪問客戶機以及告警和事件客戶機。
      用于圖3-10的以下各表總結了相應圖中的特定事件。但是,表中的事件編號與圖3-10中的步驟編號之間不存在一一對應。
      圖3表示根據(jù)本發(fā)明,重定向管理器如何建立客戶機連接。沿圖3頂部的框中標識的各組件在分開的進程中運行。這些組件為客戶機101、重定向管理器102、節(jié)點狀態(tài)改變提供者112、主OPC服務器118、主服務器狀態(tài)改變提供者126、輔助OPC服務器128以及輔助服務器狀態(tài)改變提供者136。
      圖3假定一些起始條件。用戶或管理員已經(jīng)使用配置工具來創(chuàng)建重定向管理器服務器的命名示例。這個示例包括目標OPC服務器的標識。這個信息由配置工具存儲到重定向管理器運行時間已知的注冊位置(參見圖2)。所有目標OPC服務器是可用的。
      表1一般描述圖3所示的特定事件。表1中的各事件以圖3所示的實例方法來實現(xiàn)。 表1客戶機連接事件事件的描述1 OPC客戶機101采用標準COM連接機制連接到重定向管理器102。2作為COM服務器的重定向管理器102通過允許OPC客戶機101它自己的專用連接來響應連接請求,產生唯一進程。這是可能的,因為重定向管理器102采用COM來建立重定向管理器的各示例將在其自己的進程中運行。連接到相同重定向管理器102的第二客戶機獲得其自己的進程。3重定向管理器102采用Microsoft Windows注冊表來確定用戶/管理員是否已經(jīng)進行必要的配置。(預計用戶已經(jīng)使用單獨的配置工具來定義目標OPC服務器。)重定向管理器102采用標準COM機制連接到目標OPC服務器、主OPC服務器118和輔助OPC服務器128。4 重定向管理器102缺省情況下支持OPC數(shù)據(jù)訪問發(fā)端。如果重定向管理器102確定目標OPC服務器、主OPC服務器118和輔助OPC服務器128支持OPC告警和事件發(fā)端,重定向管理器102加載告警和事件支持模塊以擴展其缺省功能。如果確定目標OPC服務器不支持OPC告警和事件發(fā)端,則重定向管理器102支持系統(tǒng)資源的保留,因而不加載這個模塊。5隨后,重定向管理器102建立與狀態(tài)改變提供者的連接,它連接到本地節(jié)點上的節(jié)點狀態(tài)改變提供者112。然后,它連接到目標OPC服務器節(jié)點上的主服務器狀態(tài)改變提供者126和輔助服務器狀態(tài)改變提供者136。這些提供者通知重定向管理器102狀態(tài)變化,例如節(jié)點或者OPC服務器的故障。
      圖4表示根據(jù)本發(fā)明,重定向管理器如何保持與OPC添加組請求相關的狀態(tài)信息。這種情況中涉及的組件為客戶機101、重定向管理器102、重定向組400(在數(shù)據(jù)訪問和預訂狀態(tài)數(shù)據(jù)114中)、主添加組線程402(由重定向管理器102創(chuàng)建)、輔助添加組線程404(由重定向管理器102創(chuàng)建)、主服務器118以及輔助服務器128。該情況假定主服務器118以及輔助服務器128是可用的。
      圖4假定一些起始條件。管理員已經(jīng)采用重定向管理器配置實用程序進行必要的配置,以便注冊重定向管理器102。另外,OPC客戶機101還建立到重定向管理器102的連接。
      表2一般描述圖4所示的特定事件。表2中的各事件以圖4所示的實例方法來實現(xiàn)。
      表2.OPC數(shù)據(jù)訪問情況添加組事件事件的描述1OPC客戶機101呼叫IOPCServer∷AddGroup()。2 重定向管理器102創(chuàng)建獨立線程AddGroupThread,并把AddGroup參數(shù)以及主服務器118的IOPCServer接口作為變元傳遞給線程。重定向管理器102這時等待兩個事件,即請求完成事件和活動服務器故障事件。在獨立線程上發(fā)出客戶機請求的主要原因是避免在目標服務器出故障的情況下過長的COM/DCOM超時。3 AddGroupThread把AddGroup呼叫轉發(fā)給目標OPC服務器之一、主服務器118。一旦呼叫順利進行,則線程設置請求完成事件并退出。4 在接收到請求完成事件時,重定向管理器102創(chuàng)建重定向組對象400,它實現(xiàn)所有OPC組接口。5 重定向管理器402對剩余目標OPC服務器的每個重復步驟2和3。但是,在這些剩余目標OPC服務器的每個上建立OPC組作為不活動的。6 重定向管理器102保存與AddGroup呼叫相關的狀態(tài)信息以及重定向組對象400中的目標OPC服務器返回的OPC組接口指針。
      圖5表示根據(jù)本發(fā)明,重定向管理器如何處理OPC按數(shù)據(jù)變化請求。這種情況中涉及的組件為客戶機101、重定向組400(作為數(shù)據(jù)訪問和預訂狀態(tài)數(shù)據(jù)114的一部分)、重定向管理器(RDM)主接收器502、重定向管理器(RDM)輔助接收器504、主組506(作為主OPC服務器118的一部分)以及輔助組508(作為輔助OPC服務器128的一部分)。這種情況描述重定向管理器102如何處理OPC按數(shù)據(jù)變化請求以及假定所有目標OPC服務器是可用的。
      圖5假定一些起始條件。OPC客戶機101已經(jīng)連接到重定向管理器,以及已經(jīng)添加組和項目。組和項目已經(jīng)被添加到所有目標OPC服務器。
      表3一般描述圖5所示的特定事件。表3中的各事件以圖5所示的實例方法來實現(xiàn)。表3.OPC數(shù)據(jù)訪問情況OnDataChange事件事件的描述1OPC客戶機101創(chuàng)建實現(xiàn)回叫接口的接收器。2 OPC客戶機101通過呼叫“通知(Advise)”來建立重定向管理器組對象的連接點與其接收器對象之間的連接。3 重定向管理器為各目標OPC服務器連接創(chuàng)建單獨的接收器對象。4 重定向管理器通過呼叫“通知”來建立各目標OPC服務器的連接點與其接收器對象之間的連接。5 當活動服務器檢測到組數(shù)據(jù)的變化時,它呼叫重定向管理器的相應接收器上的OnDataChange()方法。6在接收到回叫時,重定向管理器把數(shù)據(jù)轉發(fā)給客戶機的OnDataChange()方法。
      圖6表示根據(jù)本發(fā)明,重定向管理器如何處理活動目標OPC服務器的故障。在這種情況中涉及的組件為OPC客戶機101、重定向組400、重定向管理器(RDM)主接收器502、重定向管理器(RDM)輔助接收器504、主組506、主組件狀態(tài)提供者126以及輔助組508。
      圖6假定一些起始條件。OPC客戶機101已經(jīng)連接到重定向管理器。OPC客戶機101正經(jīng)由活動目標OPC服務器接收來自重定向管理器的OnDataChange()呼叫。活動目標OPC服務器出故障。
      表4一般描述圖6所示的特定事件。表4中的各事件以圖6所示的實例方法來實現(xiàn)。
      表4.OPC數(shù)據(jù)訪問情況活動目標OPC服務器出故障事件事件的描述1重定向管理器連接到狀態(tài)改變提供者,以及預訂事件。2OPC客戶機101建立回叫,以及接收OnDataChange()呼叫。3 活動目標OPC服務器的節(jié)點上的狀態(tài)改變提供者通知重定向管理器關于OPC服務器故障。4 重定向管理器切換到剩余目標OPC服務器之一。這變?yōu)樾碌幕顒幽繕薕PC服務器。重定向管理器把這個目標OPC服務器上的適當組設置為活動的。5 重定向管理器在組數(shù)據(jù)變化時開始從新的活動目標OPC服務器接收OnDataChange()呼叫。
      圖7表示根據(jù)本發(fā)明,重定向管理器如何使備選目標OPC服務器在它變?yōu)榭捎脮r同步。在這種情況中涉及的組件為OPC客戶機101、重定向管理器102、主OPC服務器118、主服務器狀態(tài)改變提供者126、輔助OPC服務器128以及輔助服務器狀態(tài)改變提供者136。
      圖7假定一些起始條件。OPC客戶機101已經(jīng)連接到重定向管理器102,并由活動目標OPC服務器提供服務。先前沒有運行的備選目標OPC服務器啟動。
      表5一般描述圖7所示的特定事件。表5中的各事件以圖7所示的實例方法來實現(xiàn)。
      表5.OPC數(shù)據(jù)訪問情況 備選目標OPC服務器變?yōu)榭捎玫氖录录拿枋? 重定向管理器102接收來自OPC服務器狀態(tài)改變提供者的通知備選目標OPC服務器現(xiàn)在正運行。2 重定向管理器102連接到這個備選目標OPC服務器,以及使用它的狀態(tài)信息把OPC組和OPC項目添加到這個備選目標OPC服務器。3 重定向管理器102把這個備選目標OPC服務器標記為可用于可能的切換。
      圖8表示根據(jù)本發(fā)明,重定向管理器如何代表客戶機保持OPC創(chuàng)建事件預訂請求的狀態(tài)信息。這種情況中涉及的組件為OPC告警和事件客戶機101、重定向事件服務器(重定向管理器)102、重定向預訂對象804(作為數(shù)據(jù)訪問和預訂狀態(tài)數(shù)據(jù)114的一部分)、獨立線程806(由重定向管理器102創(chuàng)建)、主事件服務器118以及輔助事件服務器128。
      這種情況描述重定向管理器如何代表OPC告警和事件客戶機保持狀態(tài)信息。明確地說,這是對于與OPC創(chuàng)建事件預訂呼叫有關的狀態(tài)信息表示的。這種情況假定主和輔助服務器是可用的。切換事件用來代替活動服務器故障事件,如OPC數(shù)據(jù)訪問情況中那樣。由于重定向管理器的OPC告警和事件功能包含于僅當OPC告警和事件客戶機800需要告警和事件支持時才被加載的獨立模塊中,模塊本身不監(jiān)測目標服務器的可用性或健康。而是重定向管理器的告警和事件模塊依靠主重定向管理器中包含的那些工具。這些主要工具檢測目標服務器故障或者服務于手動交換到備選目標服務器的請求,但在任一情況下,告警和事件模塊只接收更普通的切換事件。
      圖8假定一些起始條件。主和輔助服務器都是可用的。OPC告警和事件客戶機800建立到重定向管理器的連接。在檢測到目標OPC服務器支持OPC告警和事件之后,重定向管理器加載告警和事件支持模塊。客戶機進行的OPC告警和事件請求由這個模塊提供服務。
      表6一般描述圖8所示的特定事件。表6中的各事件以圖8所示的實例方法來實現(xiàn)。
      表6.OPC告警和事件情況 創(chuàng)建事件預訂事件事件的描述1 OPC告警和事件客戶機800呼叫IOPCEventServer∷CreateEventSubscription。2 重定向管理器創(chuàng)建重定向預訂對象800,它實現(xiàn)所有OPC事件預訂接口。3 重定向管理器創(chuàng)建獨立線程802,并把CreateEventSubscription參數(shù)以及主事件服務器118的IOPCEventServer接口作為變元傳遞給線程802。4 重定向管理器等待兩個事件其中之一,即請求完成事件或切換事件。對于利用獨立線程802的所有重定向管理器情況都是真的,以這種方式發(fā)出請求的主要原因是避免在目標服務器出故障的情況下太長的COM/DCOM超時。5 正處理創(chuàng)建預訂請求的獨立線程802把呼叫轉發(fā)給目標OPC服務器其中之一。一旦呼叫順利進行,則獨立線程802設置請求完成事件并退出。6 重定向管理器對剩余目標OPC服務器的每個重復步驟2-4。但是,在這些剩余目標OPC服務器的每個上建立OPC預訂作為不活動的。7 重定向管理器保存與CreateEventSubscription呼叫相關的狀態(tài)信息以及目標OPC服務器返回的OPC預訂接口指針。
      圖9表示根據(jù)本發(fā)明,重定向管理器在目標服務器支持OPC告警和事件時如何處理活動目標OPC服務器的故障。這種情況中涉及的組件為OPC告警和事件客戶機101、重定向事件服務器(重定向管理器)102、重定向預訂900(作為數(shù)據(jù)訪問和預訂狀態(tài)數(shù)據(jù)114的一部分)、線程902(由重定向管理器102創(chuàng)建)、主服務器預訂(主OPC服務器)118以及輔助服務器預訂(輔助OPC服務器)128。
      圖9假定一些起始條件。目標OPC服務器支持OPC告警和事件。OPC告警和事件客戶機101已經(jīng)連接到重定向管理器。OPC告警和事件客戶機101正經(jīng)由活動目標OPC事件服務器接收來自重定向管理器的OnEvent()呼叫?;顒幽繕薕PC事件服務器出故障。
      表7一般描述圖9所示的特定事件。表7中的各事件以圖9所示的實例方法來實現(xiàn)。
      表7.OPC告警和事件情況 活動目標OPC服務器出故障事件事件的描述1重定向管理器102連接到狀態(tài)改變提供者,以及預訂事件。2 OPC告警和事件客戶機101已經(jīng)建立預訂回叫,以及正在接收OnEvent()呼叫。3 活動目標OPC事件服務器的節(jié)點上的狀態(tài)改變提供者通知重定向管理器關于OPC服務器故障。4 重定向管理器102切換到剩余目標OPC事件服務器之一,以及將此宣布為新的活動服務器。作為其切換活動的一部分,重定向管理器102設置切換事件,它警告告警和事件模塊內切換正在進行的功能性。5目標OPC事件服務器中的事件預訂從不活動設置為活動。6重定向管理器100代表OPC告警和事件客戶機101向各個新活動預訂發(fā)出刷新請求。這為OPC告警和事件客戶機900提供了使它對當前活動事件或不活動但未確認事件的觀察與目標服務器同步的機會。這還確保在切換過程中可能已經(jīng)出現(xiàn)的任何事件仍然被提供給客戶機而不會丟失。7 重定向管理器102當新事件出現(xiàn)時開始從新的活動目標OPC事件服務器接收OnEvent()呼叫。
      圖10表示根據(jù)本發(fā)明,重定向管理器如何使備選目標OPC服務器在它變?yōu)榭捎脮r同步。這種情況中涉及的組件為節(jié)點狀態(tài)改變提供者112、重定向事件服務器(重定向管理器)102、重定向預訂1000(作為數(shù)據(jù)訪問和預訂狀態(tài)數(shù)據(jù)114的一部分)、線程1002(由重定向管理器102創(chuàng)建)以及輔助事件服務器(輔助OPC服務器)128。
      圖10假定一些起始條件。目標OPC服務器支持OPC告警和事件。OPC客戶機已經(jīng)連接到重定向管理器,并由活動目標OPC事件服務器提供服務。先前沒有運行的備選目標OPC事件服務器啟動。
      表8一般描述圖10所示的特定事件。表8中的各事件以圖10所示的實例方法來實現(xiàn)。
      表8.OPC告警和事件情況 備選目標OPC服務器變?yōu)榭捎檬录录拿枋? 重定向管理器接收來自狀態(tài)改變提供者的通知備選目標OPC事件服務器現(xiàn)在正運行。2 重定向管理器連接到這個備選目標OPC事件服務器,并通知告警和事件模塊新的目標是可用的。3 告警和事件模塊采用所保存的狀態(tài)信息來添加OPC事件預訂,以及把預訂相關過濾器及其它設定應用于這個備選OPC事件服務器。4 重定向管理器把這個備選目標OPC服務器標記為可用于可能的切換。
      應當理解,以上描述是為了說明而不是限定。通過閱讀以上描述,本領域的技術人員將會十分清楚其它許多實施例,例如本發(fā)明修改為對于OPC規(guī)范的修訂本,或者把本發(fā)明包括在更大系統(tǒng)中,使得命名為客戶機的一些組件是服務器或者反之。本發(fā)明對于過程控制和工業(yè)自動化之外的領域具有適用性。因此,本發(fā)明的范圍應當參照所附權利要求以及這些權利要求涵蓋的完整等效范圍來確定。
      權利要求
      1.一種重定向管理方法,包括
      通過允許第一OPC客戶機到OPC重定向管理器的第一示例的第一專用連接,響應所述第一OPC客戶機的第一客戶機連接請求;以及
      通過允許第二客戶機到所述OPC重定向管理器的第二示例的第二專用連接,響應所述第二OPC客戶機的第二客戶機連接請求。
      2.如權利要求1所述的方法,其特征在于還包括
      當所述OPC重定向管理器的所述第二示例出故障時,丟失所述第二OPC客戶機的所述第二專用連接;以及
      保持所述第一OPC客戶機的所述第一專用連接。
      3.如權利要求1所述的方法,其特征在于還包括
      連接到第一目標OPC服務器;
      連接到用于所述第一目標OPC服務器的OPC服務器狀態(tài)改變提供者;以及
      連接到至少一個附加目標OPC服務器,包括配置成為所述第一目標OPC服務器提供備份的第二目標OPC服務器。
      4.如權利要求3所述的方法,其特征在于還包括
      在接收到來自用于所述第一目標OPC服務器的所述OPC服務器狀態(tài)改變提供者的活動服務器故障事件時,執(zhí)行向所述第二目標OPC服務器的切換。
      5.如權利要求4所述的方法,其特征在于還包括
      接收來自所述OPC服務器狀態(tài)改變提供者的關于所述第一目標OPC服務器現(xiàn)在可用的通知;以及
      連接到所述第一目標OPC服務器。
      6.如權利要求3所述的方法,其特征在于還包括
      接收來自所述第一OPC客戶機的OPC添加組請求;
      把所述OPC添加組請求轉發(fā)給所述第一目標OPC服務器,以便為所述OPC添加組請求提供服務;
      在接收到來自所述第一目標OPC服務器的請求完成事件時,通過創(chuàng)建至少一個組來實現(xiàn)與所述OPC添加組請求相關的多個添加組接口;
      把所述OPC添加組請求轉發(fā)給所述至少一個附加目標OPC服務器中的每一個,以便存儲所述至少一個組作為不活動的;以及
      存儲與所述OPC添加組請求相關的信息,包括所述至少一個組。
      7.如權利要求6所述的方法,其特征在于還包括
      接收來自所述第一OPC客戶機的OPC按數(shù)據(jù)變化請求;
      建立所述第一目標OPC服務器與第一接收器對象之間的連接;
      建立所述第二目標OPC服務器與第二接收器對象之間的連接;
      從所述第一目標OPC服務器向所述第一OPC客戶機提供第一按數(shù)據(jù)變化請求;以及
      存儲與所述OPC按數(shù)據(jù)變化請求相關的信息,包括所述至少一個組。
      8.如權利要求7所述的方法,其特征在于還包括
      在接收到來自用于所述第一目標OPC服務器的所述OPC服務器狀態(tài)改變提供者的活動服務器故障事件時,執(zhí)行向所述第二目標OPC服務器的切換;
      激活所述第二目標OPC服務器上的所述至少一個組;以及
      從所述第二目標OPC服務器向所述第一OPC客戶機提供第二按數(shù)據(jù)變化請求。
      9.如權利要求8所述的方法,其特征在于還包括
      接收來自所述OPC服務器狀態(tài)改變提供者的關于所述第一目標OPC服務器現(xiàn)在可用的通知;
      連接到所述第一目標OPC服務器;以及
      采用先前存儲的信息把所述至少一個組添加到所述第一目標OPC服務器。
      10.一種重定向管理的方法,包括
      響應來自OPC客戶機的OPC創(chuàng)建事件預訂請求,實現(xiàn)與所述OPC創(chuàng)建事件預訂請求相關的接口;
      把所述OPC創(chuàng)建事件預訂請求轉發(fā)給主目標OPC服務器以便得到服務;
      把所述OPC創(chuàng)建事件預訂請求轉發(fā)給至少一個附加目標OPC服務器作為不活動的,所述至少一個附加目標OPC服務器包括配置成為所述主目標OPC服務器提供備份的輔助目標OPC服務器;以及
      存儲與所述OPC創(chuàng)建事件預訂請求相關的信息,包括狀態(tài)信息。
      11.如權利要求10所述的方法,其特征在于還包括
      連接到所述主目標OPC服務器;
      連接到用于所述主目標OPC服務器的OPC服務器狀態(tài)改變提供者;以及
      連接到所述至少一個附加目標OPC服務器。
      12.如權利要求11所述的方法,其特征在于還包括
      確定所述主目標OPC服務器支持OPC告警和事件;以及
      加載告警和事件模塊。
      13.如權利要求12所述的方法,其特征在于還包括
      把至少一個按事件請求從所述主目標OPC服務器提供給所述OPC客戶機;
      在接收到來自用于所述主目標OPC服務器的所述OPC服務器狀態(tài)改變提供者的活動服務器故障事件時,執(zhí)行向所述輔助目標OPC服務器的切換;以及
      把所述切換通知所述告警和事件模塊。
      14.如權利要求13所述的方法,其特征在于還包括
      從所述輔助OPC目標服務器取回所有事件,以及把所述事件轉發(fā)給所述OPC客戶機以防止事件丟失;以及
      把OPC按事件請求從所述輔助目標OPC服務器提供給所述OPC客戶機。
      15.如權利要求13所述的方法,其特征在于還包括
      接收來自所述OPC服務器狀態(tài)改變提供者的關于所述主目標OPC服務器現(xiàn)在可用的通知;
      連接到所述主目標OPC服務器;以及
      采用所述狀態(tài)信息建立所述主目標OPC服務器。
      16.一種OPC重定向管理系統(tǒng),包括
      第一OPC服務器,能夠為OPC請求提供服務;
      第二OPC服務器,配置成為所述第一OPC服務器提供備份;以及
      第一重定向管理器,能夠代表第一OPC客戶機把OPC請求轉發(fā)給所述第一OPC服務器或者所述第二OPC服務器;
      其中所述第一OPC客戶機能夠建立它自己的與所述第一重定向管理器的專用連接;以及
      其中所述第一重定向管理器能夠在所述第一OPC服務器出故障時連接到所述第二OPC服務器,從而向所述第一OPC客戶機提供無縫服務。
      17.如權利要求16所述的系統(tǒng),其特征在于,所述第一重定向管理器能夠存儲與所述OPC請求相關的信息,供所述第一OPC服務器出故障時使用。
      18.如權利要求16所述的系統(tǒng),其特征在于還包括
      第三OPC服務器;
      第四OPC服務器,配置成為所述第三OPC服務器提供備份;以及
      第二重定向管理器;
      其中第二OPC客戶機能夠建立它自己的與所述第二重定向管理器的專用連接;以及
      其中所述第二重定向管理器能夠在所述第三OPC服務器出故障時連接到所述第四OPC服務器,從而向所述第二OPC客戶機提供無縫服務。
      19.如權利要求16所述的系統(tǒng),其特征在于,所述第一OPC服務器能夠配置成為第三OPC服務器提供備份。
      20.如權利要求16所述的系統(tǒng),其特征在于,所述OPC請求的類型是數(shù)據(jù)訪問。
      21.如權利要求16所述的系統(tǒng),其特征在于,所述OPC請求的類型是告警和事件。
      22.如權利要求16所述的系統(tǒng),其特征在于還包括
      主服務器節(jié)點包括所述第一OPC服務器、主節(jié)點狀態(tài)改變提供者以及主OPC狀態(tài)改變提供者;
      輔助服務器節(jié)點包括所述第二OPC服務器、輔助節(jié)點狀態(tài)改變提供者以及輔助OPC狀態(tài)改變提供者;以及
      客戶機節(jié)點包括所述第一OPC客戶機、所述第一重定向管理器、客戶機節(jié)點狀態(tài)改變提供者以及客戶機OPC狀態(tài)改變提供者。
      23.如權利要求22所述的系統(tǒng),其特征在于,所述第一重定向管理器包括
      數(shù)據(jù)訪問和預訂狀態(tài)數(shù)據(jù);以及
      切換管理器。
      24.如權利要求22所述的系統(tǒng),其特征在于,所述第一OPC服務器包括項目高速緩存和條件數(shù)據(jù)庫。
      25.如權利要求16所述的系統(tǒng),其特征在于,所述第一OPC客戶機是過程控制應用。
      26.如權利要求16所述的系統(tǒng),其特征在于,所述第一OPC服務器與裝置進行通信,以便為所述OPC請求提供服務,使得所述第一OPC客戶機接收關于所述裝置的信息,作為所述OPC請求的結果。
      27.一種機器可讀媒體,存取用于執(zhí)行一種方法的可執(zhí)行指令,所述方法包括
      通過允許第一OPC客戶機到OPC重定向管理器的第一示例的第一專用連接,響應所述第一OPC客戶機的第一客戶機連接請求;
      通過允許第二OPC客戶機到所述OPC重定向管理器的第二示例的第二專用連接,響應所述第二OPC客戶機的第二客戶機連接請求;
      當所述OPC重定向管理器的所述第二示例出故障時,丟失所述第二OPC客戶機的所述第二專用連接;以及
      保持所述第一OPC客戶機的所述第一專用連接。
      28.如權利要求27所述的方法,其特征在于還包括
      連接到第一目標OPC服務器;
      連接到用于所述第一目標OPC服務器的OPC服務器狀態(tài)改變提供者;
      連接到配置成為所述第一目標OPC服務器提供備份的第二目標OPC服務器;以及
      在接收到來自用于所述第一目標OPC服務器的所述OPC服務器狀態(tài)改變提供者的活動服務器故障事件時,執(zhí)行向所述第二目標OPC服務器的切換。
      全文摘要
      OPC重定向管理器維護當目標OPC服務器出故障時采取適當動作以及確保沒有不良狀態(tài)被返回給客戶機所需的信息。需要目標OPC數(shù)據(jù)訪問和/或告警及事件服務器之間的無縫故障解決的任何現(xiàn)有OPC客戶機將連接到重定向管理器的獨特配置的示例,而不是連接到主服務器??蛻魴C應用繼續(xù)照常執(zhí)行OPC相關任務。由于每個客戶機連接是特有的,因此重定向管理器本身不是單一故障點。每個所配置的重定向管理器示例通過預訂故障事件來監(jiān)視目標服務器模式和目標服務器本身的健康。
      文檔編號H04L29/08GK1679294SQ0381990
      公開日2005年10月5日 申請日期2003年6月30日 優(yōu)先權日2002年6月28日
      發(fā)明者E·B·豪金森, A·維德亞尚卡, T·福爾廷 申請人:霍尼韋爾國際公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1