專利名稱:在過程設(shè)備中升級及提供控制冗余的方法及設(shè)備的制作方法
技術(shù)領(lǐng)域:
本公開總體上涉及過程設(shè)備,尤其涉及在過程設(shè)備中升級及提供控制冗 余的方法及設(shè)備。
背景技術(shù):
分布式過程控制系統(tǒng)-如那些用于化學、石油及/或其他過程、系統(tǒng)及 /或過程設(shè)備的過程控制系統(tǒng)-典型地包括一個或多個過程控制器,過程控 制器通過多種模擬總線、數(shù)字總線或模擬/數(shù)字混合總線的其中任何一種總 線,與一個或多個現(xiàn)場設(shè)備通信連接。在這些系統(tǒng)及/或過程中,現(xiàn)場設(shè)備-例如閥、閥定位器、開關(guān)及/或傳送器(例如溫度傳感器、壓力傳感器、料 位傳感器及流率傳感器)-在所述過程環(huán)境內(nèi)執(zhí)行過程控制及/或管理功能, 比如開啟或關(guān)閉閥、測量過程參數(shù)等等。過程控制器也可以位于所述設(shè)備環(huán) 境,它們接收指示由所述現(xiàn)場設(shè)備完成的過程測量的信號及/或其他與所述 現(xiàn)場設(shè)備有關(guān)的信息。根據(jù)(例如)所接收的信號,所述過程控制器執(zhí)行控 制器應用程序,以實現(xiàn)任何數(shù)目及/或類別的控制模塊、軟件模塊、軟件子 系統(tǒng)、例程及/或軟件線程,從而發(fā)動告警、做出過程控制決定、產(chǎn)生控制 信號、及/或與其他控制模塊、及/或與其他由現(xiàn)場設(shè)備執(zhí)行的控制模塊及/
或功能塊(比如HART及Foundation Fieldbus設(shè)備)協(xié)作。所述控制器中的 所述控制模塊通過所述通信線,向所述現(xiàn)場設(shè)備發(fā)送所述控制信號,以控制 所述過程設(shè)備的操作。
來自所述現(xiàn)場設(shè)備及/或所述控制器的信息通常通過數(shù)據(jù)高速通道或通 信網(wǎng)絡(luò)傳送到一個或多個其他硬件設(shè)備,比如操作員工作站、個人計算機、 歷史數(shù)據(jù)庫、報告產(chǎn)生器、集中式數(shù)據(jù)庫等等。這些設(shè)備典型地位于控制室
及/或位于相對遠離苛刻過程環(huán)境的其他位置。例如,這些硬件設(shè)備運行應 用程序,以使得操作員能夠執(zhí)行與過程設(shè)備的過程有關(guān)的多種功能中的任何 功能,比如改變操作狀態(tài)、改變所述控制例程的設(shè)置、更改所述控制器及/ 或所述現(xiàn)場設(shè)備內(nèi)的所述控制模塊的操作、檢視所述過程的目前狀態(tài)、檢視 由所述現(xiàn)場設(shè)備及/或過程控制器產(chǎn)生的告警、模擬所述過程的操作以供培 訓人員及/或測試所述過程控制軟件、維持及/或更新配置數(shù)據(jù)庫等等。
作為 一 個例子,由費舍一 柔斯芒特系統(tǒng)股份有限公司(Fisher Rosemount
System, Inc.)--家艾默生過程控制(Emerson Process Management)公司
出售的DeltaV 數(shù)字自動化系統(tǒng)支持存儲在位于過程設(shè)備內(nèi)的潛在多變化 的位置的不同設(shè)備內(nèi)、及/或由位于過程設(shè)備內(nèi)的潛在多變化的位置的不同 設(shè)備執(zhí)行的多個應用程序。位于一個或多個操作員工作站及/或由一個或多 個操作員工作站執(zhí)行的配置應用程序,使得用戶能夠創(chuàng)建及/或更改過程控 制應用程序、及/或通過數(shù)據(jù)高速通道或通信網(wǎng)絡(luò)將過程控制應用程序下載 到專用分布式控制器。典型地,這些控制應用程序是由通信連接及/或互連 的控制模塊、軟件模塊、軟件子系統(tǒng)、例程、軟件線程及/或功能塊構(gòu)成, 功能塊根據(jù)所接收的輸入,在所述控制方案內(nèi)執(zhí)行功能(例如過程控制及/ 或告警產(chǎn)生),及/或提供輸出到所述控制方案內(nèi)的其他功能塊。所述配置 應用程序也可以允許配置工程師及/或操作員創(chuàng)建及/或改變操作員界面,這 些搡作員界面(例如)由(例如)顯示應用程序用于為操作員顯示數(shù)據(jù)及/ 或用于使所述操作員能夠在所述過程控制例程中改變設(shè)置,比如改變設(shè)定點 及/或操作狀態(tài)。每個專用控制器(及在某些情況下還包括現(xiàn)場設(shè)備)存儲 及/或執(zhí)行一個控制器應用程序,以運行被指定執(zhí)行實際過程控制功能的所 述控制模塊。
發(fā)明內(nèi)容
一種用于為過程控制系統(tǒng)的控制設(shè)備升級軟件的范例方法包括實例化所述
軟件的替代組件、將來自現(xiàn)有組件的狀態(tài)數(shù)據(jù)復制到所述替代組件、以及在 所述替代組件的第 一狀態(tài)與所述現(xiàn)有組件的第二狀態(tài)匹配時將所述替代組 件改變?yōu)橹鲃幽J健?br>
另 一種公開的為過程設(shè)備控制系統(tǒng)提供控制冗余的范例方法包括提供 控制輸入到控制軟件子系統(tǒng)的第 一 實例及控制軟件子系統(tǒng)的第二實例,所述 第一及第二實例充分同時地處理所述控制輸入,并提供所述第一實例的輸出
或是所述第二實例的輸出到過程設(shè)備現(xiàn)場設(shè)備。
圖1為一原理圖,其圖解根據(jù)本發(fā)明的教導來建造的一種范例過程控制 系統(tǒng)。
圖2圖解實施圖1的任何范例控制器或所有范例控制器的一種范例方法。
圖3及4圖解用于圖1的過程控制系統(tǒng)的范例冗余控制方案。
圖5為一流程圖,其顯示一范例過程,該范例過程可以用于實施所述范 例冗余控制器及/或(更概括地)可以用于實施圖1及/或2的任何范例控制 器或所有范例控制器。
圖6為一流程圖,其顯示一范例過程,該范例過程可以用于實施圖2的 范例升級模塊,以便升級圖2的任何范例控制組件或所有范例控制組件。
圖7A、 7B、 7C及7D圖解一范例過程,該范例過程可以實施來升級圖 2的任何范例控制組件或所有范例控制組件。
圖8A及8B圖解一范例控制系統(tǒng),該范例控制系統(tǒng)操作控制組件的兩 個版本。
圖9為一原理圖,其圖解一范例處理器平臺,該范例處理器平臺可以用 于及/或編程為執(zhí)行圖5、 6及/或7A-7D的范例過程,及(更概括地)可以 用于實施圖1及/或2的任何范例控制器或所有范例控制器。
具體實施例方式
現(xiàn)代的過程控制系統(tǒng)為過程設(shè)備的運行進行一天二十四小時、 一年三百 六十五天的工作。持續(xù)運行的過程設(shè)備的控制引致需要有效率及/或靈活的 機制來升級控制設(shè)備的固件。這樣的控制設(shè)備升級需要使控制設(shè)備停工期最 小化及/或充分地消除設(shè)備操作中斷。傳統(tǒng)上, 一直采用冗余控制設(shè)備來升 級控制設(shè)備,以減低不可使用期。傳統(tǒng)的程序升級整個備用控制設(shè)備、允許 所述備用設(shè)備由主動設(shè)備配置、執(zhí)行轉(zhuǎn)換為所述備用設(shè)備、然后升級新的備 用設(shè)備(即先前的主動設(shè)備)。
一般上,在此描述的范例設(shè)備、方法及制造件可以用于減低及/或消除 對冗余控制設(shè)備的需要,以便在控制設(shè)備升級期間提供不間斷的過程設(shè)備操 作。明確地說,所述控制設(shè)備及/或控制算法的功能被隔離、分離及/或分散 為單獨的組件(例如軟件模塊及/或軟件子系統(tǒng)),這使每個組件能夠獨立 地升級。通過使用單獨的組件,控制設(shè)備可以在逐一特性、逐一組件的基礎(chǔ) 上升級,及/或可以在不影響其他主動組件、所述控制設(shè)備及/或過程控制系 統(tǒng)的部分的情況下升級,以解決特定組件中存在的問題。為了升級特定組件, 替代組件在當前執(zhí)行需要升級的特定組件的控制設(shè)備中實例化。通過使所述 控制組件能夠?qū)⑦\行時間及/或狀態(tài)數(shù)據(jù)轉(zhuǎn)換為所述相同的組件的其他版 本,升級期間的不可利用期被消除。這樣的智能允許現(xiàn)有組件在其將關(guān)鍵數(shù) 據(jù)傳輸?shù)狡涮娲M件時可繼續(xù)執(zhí)行其功能。 一旦所述新組件的狀態(tài)被更新, 所述替代組件以與原組件的狀態(tài)信息相同的狀態(tài)信息接管操作。通過促進特 定組件的升級,對全部冗余控制設(shè)備的需要得以充分消除。此外,處理器控 制器可以執(zhí)行同 一組件的多個版本。
在有些范例中,控制設(shè)備包括及/或?qū)嵤┲魃壞K,以便從用戶接收 更新的組件固件。所述升級模塊通過創(chuàng)建所述替代組件的實例來安裝所述新 組件,并在所述替代組件及其需替代的組件之間起動數(shù)據(jù)更新。在更新完成 之后,所述替代組件配置成主動模式,而所述舊組件可以終止。
從事件(比如軟件故障、硬件故障)快速恢復及/或在軟件更新期間繼 續(xù)操作非常重要。傳統(tǒng)上,過程控制系統(tǒng)一直試圖通過使用專用的冗余控制 設(shè)備來提供連續(xù)的控制操作。所述控制設(shè)備的冗余拷貝配置成模擬所述主動 運行的控制設(shè)備的當前狀態(tài)。在所述主動運行的設(shè)備(因一種或多種原因) 不再能夠完成其任務時,所述備用設(shè)備接管并運行所述主動運行的設(shè)備被分 配的所有任務。然而,難以確保無縫及/或無擾的失效轉(zhuǎn)移,這是由于無縫 及/或無擾的失效轉(zhuǎn)移需要所述備用設(shè)備不斷地與來自所述主動運行設(shè)備的 過程數(shù)據(jù)及/或狀態(tài)信息同步。這個方法經(jīng)常導致在多個時期不能利用所述 備用設(shè)備來替代所述主動設(shè)備。
一般上,通過允許在所述過程控制系統(tǒng)中分布冗余,在此描述的范例設(shè) 備、方法及制造件可以用于替代對專用冗余控制設(shè)備的需要。使用分布方法, 冗余操作利用其他主動控制設(shè)備的免費資源及/或所述主動控制設(shè)備本身中 的免費資源來實施。實質(zhì)上,所有控制組件被視為主動,因而擁有當前的過 程數(shù)據(jù)及狀態(tài)信息。
在有些范例中,相同類別的多個控制組件同時執(zhí)行,而每個控制組件執(zhí) 行一主動控制組件的動作。來自所有組件的輸出被導引到網(wǎng)關(guān),該網(wǎng)關(guān)使用 表決算法來確定來自哪個控制組件的哪個輸出將被傳送到所述現(xiàn)場設(shè)備。在 其他范例中,所述控制組件交換輸出并共同地確定傳送哪個輸出到所述現(xiàn)場 設(shè)備。
如在此所述,相同類別的所述多個控制組件可以在相同的控制設(shè)備、處 理器及/或控制器上執(zhí)行及/或?qū)嵤?,?或可以在兩個或多個控制設(shè)備、處理 器及/或控制器上實施??梢愿鶕?jù)可利用的控制設(shè)備、處理器及/或控制器的 處理負荷及/或數(shù)目,動態(tài)地確定控制組件在控制設(shè)備、處理器及/或控制器 上的分配。此外,分配可以隨著可利用的控制設(shè)備、處理器及/或控制器的 處理負荷及/或數(shù)目的改變而改變。
如在此所述,基于控制組件(而不是基于控制設(shè)備)來實施過程設(shè)備控 制冗余減低硬件成本,并提供附加的冗余路徑,而且實現(xiàn)較快的故障恢復及
/或消除不可利用過程控制的時期。
雖然在此描述的方法及設(shè)備通過允許在過程控制系統(tǒng)中分布冗余來替 代對專用冗余控制設(shè)備的需要及/或減少及/或消除對冗余控制設(shè)備的需要, 以便在控制設(shè)備升級期間提供不間斷的過程設(shè)備操作,但本領(lǐng)域的普通工程 技術(shù)人員將可以理解,所述范例方法及設(shè)備可以用于為其他系統(tǒng)(比如過程 設(shè)備的安全儀表化系統(tǒng))實施冗余及/或執(zhí)行升級。
圖l為一原理圖,其圖解一范例過程控制系統(tǒng)105。圖l的范例過程控
制系統(tǒng)105包括一個或多個過程控制平臺(其中一個過程控制平臺以參考數(shù) 字110標志)、 一個或多個操作員站(其中一個操作員站以參考數(shù)字115標 志)以及一個或多個工作站(其中兩個工作站以參考數(shù)字120及121標志)。 范例過程控制平臺110、范例操作員站115以及工作站120通過總線及/或局 域網(wǎng)(LAN) 125通信連接,局域網(wǎng)(LAN) 125 —般稱為"應用程序控制 網(wǎng)絡(luò)"(ACN)。
圖1的范例工作站120及121可以配置成應用程序站,以執(zhí)行一個或多 個信息:技術(shù)應用程序、用戶互動應用程序及/或通信應用程序。例如,應用 程序站120可以配置成主要執(zhí)行過程控制相關(guān)的應用程序,而另一應用程序 站121可以配置成主要執(zhí)行通信應用程序,使過程控制系統(tǒng)105能夠使用任 何期望的通信媒介(例如無線通信媒介、固定通信媒介等等)及協(xié)議(例如 HTTP、 SOAP等等)與其他設(shè)備或系統(tǒng)通信。操作員站115及工作站120 及121可以使用一個或多個工作站及/或任何其他合適的計算機系統(tǒng)及/或處 理系統(tǒng)來實施。例如,操作員站115及/或工作站120及121可以使用單處 理器個人計算機、單處理器工作站或多處理器工作站等來實施。
圖l的范例局域網(wǎng)(LAN) 125可以使用任何期望的通信媒介及協(xié)議來 實施。例如,范例局域網(wǎng)(LAN) 125可以基于固定及/或無線以太網(wǎng)(Ethernet) 通信方案。然而,本領(lǐng)域的普通工程技術(shù)人員將可以理解,可以使用任何其 他合適的通信媒介及/或協(xié)議。此外,雖然圖1中圖解單一局域網(wǎng)(LAN) 125,但可以使用超過一個局域網(wǎng)(LAN)及/或其他替代性的通信硬件,在
圖1的范例系統(tǒng)之間提供冗余通信路徑。
圖1的范例控制平臺110通過數(shù)字數(shù)據(jù)總線135及輸入/輸出(I/O)設(shè) 備140,連接到多個智能現(xiàn)場設(shè)備130、 131及132。智能現(xiàn)場設(shè)備130-132 可以是遵守Fieldbus協(xié)議的閥、促動器、傳感器等等,在這種情況下,智能 現(xiàn)場設(shè)備130-132使用廣為人知的Foundation Fieldbus協(xié)議,通過數(shù)字數(shù)據(jù) 總線135進行通信。當然,也可以改為使用其他類別的智能現(xiàn)場設(shè)備及通信 協(xié)議。例如,智能現(xiàn)場設(shè)備130-132可以改為遵守Profibus及/或HART協(xié) 議的設(shè)備,這些設(shè)備使用廣為人知的Profibus及HART協(xié)議,通過數(shù)據(jù)總線 135進行通信。附加的輸入/輸出(I/O)設(shè)備(與輸入/輸出(I/O)設(shè)備140 相似及/或相同)可以連接到控制平臺110,以使附加的智能現(xiàn)場設(shè)備組群(其 可以是Foundation Fieldbus設(shè)備、HART設(shè)備等等)能夠與控制平臺110通
除了范例智能現(xiàn)場設(shè)備130-132之外, 一個或多個非智能現(xiàn)場設(shè)備145 及146可以通信連接到范例控制平臺110。圖l的非智能現(xiàn)場設(shè)備145及146 (例如)可以是傳統(tǒng)4-20 mA (毫安培)或0-10 VDC (伏特直流電)設(shè)備, 它們通過各自的固定鏈路與控制平臺110通信。
圖l的范例控制平臺110可以是(例如)由費舍一柔斯芒特系統(tǒng)股份有
限/>司(Fisher Rosemount System, Inc.)--家艾默生過程控制(Emerson
Process Management) 乂>司出售的DeltaVTM控制器。然而,可以改為4吏用其 他控制器。此外,雖然圖l中只是顯示一個控制平臺110,但任何期望類別 及/或多類別的結(jié)合的附加控制平臺及/或控制器可以連接到局域網(wǎng)(LAN ) 125。無論那種情況,范例控制平臺110執(zhí)行已經(jīng)由使用操作員站115的系 統(tǒng)工程師及/或其他系統(tǒng)操作員產(chǎn)生的、與過程控制系統(tǒng)105相關(guān)的、以及 已經(jīng)下載到控制平臺110及/或在控制平臺110中實例化的一個或多個過程 控制例程。
為了執(zhí)行一個或多個控制算法,圖1的范例控制平臺110包括一個或多 個控制器(即控制設(shè)備)(其中三個控制器以參考數(shù)字150、 151及152標
志)。圖2的范例控制器150、 151及152包含一個或多個處理器(即控制 設(shè)備),以執(zhí)行一個或多個操作系統(tǒng)、控制算法、控制組件及/或軟件子系 統(tǒng)。如在此采用的定義一樣,"控制設(shè)備" 一詞指的是控制器(例如范例控 制器150、 151及152中的任何一個)及/或處理器、中央處理器(CPU)及 /或控制器的處理器芯核。為了方便討論,以下公開涉及使用控制器以促進 控制組件的冗余及/或升級。然而,在此描述的方法及設(shè)備可以基于及/或應 用于任何類別的控制設(shè)備(例如處理器、中央處理器(CPU)及/或控制器 的處理器芯核)。如以下更詳細描述的那樣,范例控制器150-152在不需要 顯式冗余及/或備用控制器的情況下促進控制組件的冗余及/或升級。由范例 控制器150-152執(zhí)行的控制算法被隔離、分離及/或分散為單獨的組件(例如 軟件模塊及/或軟件子系統(tǒng)),以使每個組件能夠獨立地升級。以下連同圖2 描述用于實施圖1的范例控制器150-152中的任何范例控制器或所有范例控 制器的范例方法。
圖1的范例控制器150-152包括及/或?qū)嵤┲魃壞K,以允許由一控制 器150-152執(zhí)行的每個控制組件獨立地升級。為了升級特定組件,替代組件 在當前執(zhí)行需要升級的特定組件的控制器150-152中實例化。通過使所述控 制組件能夠?qū)⑦\行時間及/或狀態(tài)數(shù)據(jù)轉(zhuǎn)換為所述相同的組件的其他版本, 升級期間的不可利用期被消除。這樣的智能現(xiàn)有組件在其將關(guān)鍵數(shù)據(jù)傳輸?shù)?其替代組件時可繼續(xù)執(zhí)行其功能。 一旦所述新組件的狀態(tài)被更新,所述替代 組件以與原組件的狀態(tài)信息相同的狀態(tài)信息接管操作。如以下連同圖8A及 8B進行描述的那樣, 一控制器150-152可以附加地或可選擇地執(zhí)行相同組 件的多個版本。
相同的控制組件的多個拷貝可以由相同的及/或不同的控制器150-152 執(zhí)行,以便為圖1的范例過程控制系統(tǒng)105實施控制冗余。所述控制組件拷 貝可以由相同的控制器150-152、由不同的控制器150-152及/或由不同的控 制平臺110執(zhí)行。如以下連同圖3進行描述的那樣,相同的控制組件的每個 所述拷貝接收來自現(xiàn)場i更備130-132、 145及/或146的相同輸入,并執(zhí)行相
同的軟件子系統(tǒng)。所述控制組件的所述輸出可以接著用于(例如進行比較)
確定傳送哪個輸出到現(xiàn)場設(shè)備130-132、 145及/或146。例如,多數(shù)表決可 以由輸入/輸出(I/O)網(wǎng)關(guān)(例如范例輸入/輸出(I/O)網(wǎng)關(guān)155及/或156 的其中之一)執(zhí)行,以確定應傳送哪個輸出到現(xiàn)場設(shè)備130-132、 145及/或 146。附加地或可選擇地,所述控制組件拷貝可以交換輸出并共同地確定應 傳送哪個輸出到現(xiàn)場設(shè)備130-132、 145及/或146。
為了將范例控制器150-152通信連接到現(xiàn)場設(shè)備130-132、 145及/或146 及/或輸入/輸出(I/O)設(shè)備140,圖1的范例控制平臺110包括一個或多個 輸入/輸出(1/0)模塊及/或網(wǎng)關(guān)(其中兩個輸入/輸出(1/0)模塊及/或網(wǎng)關(guān) 以參考數(shù)字155及156標志)。圖1的范例輸入/輸出(I/O )網(wǎng)關(guān)155及156 配置成在控制器150-152與現(xiàn)場設(shè)備130-132、 145及/或146季節(jié)/或輸入/ 輸出(1/0)設(shè)備140發(fā)送數(shù)據(jù)。范例控制器150-152及范例輸入/輸出(I/O) 網(wǎng)關(guān)155及156通過任何類別的背板160,在控制平臺110中通信連接。如 圖l所示,范例控制平臺110實施為架子及/或擱板,而范例控制器150-152 及輸入/輸出(I/O)網(wǎng)關(guān)155及156為卡片及/或模塊,輸入/輸出(I/O)網(wǎng) 關(guān)155及156在被插入擱板及/或架子時通信連接到背板160。附加地或可選 擇地,控制器150-152及輸入/輸出(I/O)網(wǎng)關(guān)155及156單獨地實施,并 通過局域網(wǎng)(LAN) 125通信連接。
雖然圖1圖解的范例過程控制系統(tǒng)105 (其中所述方法及設(shè)備在過程設(shè) 備中升級及提供控制冗余)(以下將進行更詳細描述)可以方便地使用,但 本領(lǐng)域的普通工程技術(shù)人員將可以理解,如果需要,在此描述的在過程設(shè)備 中升級及提供控制冗余的方法及設(shè)備可以方便地用于復雜性比圖1的圖解 范例高或低(例如具有超過一個控制平臺)的其他過程設(shè)備及/或過程控制 系統(tǒng)。
圖2圖解實施圖l的任何范例控制器150-152或所有范例控制器150-152 的一種范例方法。雖然圖1的任何范例控制器150-152或所有范例控制器 150-152可以以圖2的設(shè)備表示,但為了方便討論,圖2的設(shè)備將稱為控制
器150。圖2的范例控制器150包括至少一個通用可編程處理器205。圖2 的范例處理器205執(zhí)行存在于處理器205的主存儲器210中(例如在隨機存 取存儲器(RAM)及/或只讀存儲器(ROM)中)的編碼指令。處理器205 可以是任何類別的處理單元,比如處理器芯核、處理器及/或微控制器。處 理器205除了執(zhí)行別的以外,還可以執(zhí)行實時操作系統(tǒng)(RTOS) 215、升級 模塊220、冗余控制器225及/或一個或多個控制組件230。范例實時操作系 統(tǒng)(RTOS )215是來自QNX軟件系統(tǒng)有限公司(QNX Software Systems Ltd.) 的QNXTM實時操作系統(tǒng)(RTOS )。圖2的范例主存儲器210可以由處理器 205實施及/或在處理器205中實施,及/或范例主存儲器210可以是電氣連 接到處理器205的一個或多個存儲器及/或存儲器設(shè)備。
如以下連同圖7A-D進行描述的那樣,圖2的范例升級模塊220控制一 個或多個范例控制組件230的升級。如以下連同圖8A-B進行描述的那樣, 范例升級模塊220可以附加地或可選擇地控制一控制算法及/或控制組件(例 如軟件子系統(tǒng))的不同版本的同時及/或并行執(zhí)行。
如以下連同圖3-5進行描迷的那樣,圖2的范例冗余控制器225控制及 /或選擇傳送來自一集合的控制組件拷貝的哪個輸出到現(xiàn)場設(shè)備130-132、 145及/或146。附加地或可選擇地,冗余控制器225確定哪個控制組件拷貝 作為特定控制組件的主控制組件拷貝。雖然圖2顯示范例冗余控制器225與 控制組件230分離,但每個所述控制組件可以包括及/或?qū)嵤┮?冗余控制器。
圖2的范例控制組件230實施及/或執(zhí)行控制算法的全部或部分(例如 軟件子系統(tǒng))。范例控制組件230接收來自一個或多個現(xiàn)場設(shè)備130-132、 145及/或146及/或另一控制組件230的輸入,并處理所述輸入以構(gòu)成(例 如計算) 一個或多個輸出。所述輸出可以導引到另一控制組件230 (例如以 執(zhí)行控制算法的一個或多個步驟)及/或?qū)б揭粋€或多個現(xiàn)場設(shè)備 130-132、 145及/或146。
為了存儲控制算法及/或控制組件(例如軟件子系統(tǒng))的圖像240,圖2 的范例控制器150包括非易失性存儲器235。圖2的范例非易失性存儲器235
存儲一個或多個控制組件的圖像240。除了存儲當前由處理器205執(zhí)行的控 制組件的圖像240之外,范例存儲器235可以存儲可以由處理器205執(zhí)行的 其他控制組件的圖像240。雖然圖2圖解范例存儲器235與特定控制器150 相關(guān),但存儲器235可以存儲于一集合的控制器(例如圖1的范例控制器 150-152 )。存儲器235可以由任何數(shù)目及/或類別的存儲器及/或存儲器設(shè)備 實施。
為了與背板(例如圖1的范例背板160)通信,圖2的范例控制器150 包括背板界面245。圖2的范例背板界面245將范例處理器205電氣地及/ 或通信地連接到控制平臺(例如范例控制平臺110)的背板,而控制器150 插入所述背板。
雖然圖2圖解實施圖1的任何范例控制器150-152或所有范例控制器 150-152的一種范例方法,但圖2中所圖解的數(shù)據(jù)結(jié)構(gòu)、元件、過程及設(shè)備 可以結(jié)合、分開、省略、排除及/或以任何其他方式實施。此外,范例實時 操作系統(tǒng)(RTOS) 215、范例升級模塊220、范例冗余控制器225、范例控 制組件230及/或(更概括地)圖2的范例控制器150可以由硬件、軟件、 固件及/或硬件、軟件及/或固件的任何組合實施。此外,范例控制器150可 以包括圖2中圖解者之外的附加的元件、過程及/或設(shè)備,或除了包括圖2 中圖解者外,還可以包括附加的元件、過程及/或設(shè)備,及/或可以包括圖解 的任何或所有數(shù)據(jù)結(jié)構(gòu)、元件、過程及設(shè)備中的數(shù)目多于一個的數(shù)據(jù)結(jié)構(gòu)、 元件、過程及設(shè)備。
圖3及4圖解用于圖1的過程控制系統(tǒng)105的范例冗余控制方案。在圖 3的圖解范例中,來自一個或多個現(xiàn)場i殳備(例如圖1的現(xiàn)場i殳備130-132、 145及/或146)及/或來自控制算法及/或控制組件的輸入305被提供于特定 控制組件(其中三個控制組件以參考數(shù)字310、 311及312標示)的兩個或 多個拷貝。圖3的范例控制組件310-312實施控制算法的全部或一部分(例 如控制算法的軟件子系統(tǒng))。范例控制組件310-312可以由一個或多個控制 器(例如圖1的一個或多個范例控制器150-152 )來實施及/或執(zhí)行。例如,
所有控制組件310-312可以由一單一控制器執(zhí)行,控制組件310-312中的每 個控制組件可以由不同的控制器執(zhí)行等等??刂平M件310-312在控制器中的 分配可以是靜態(tài)及/或動態(tài)的。如果所述分配是動態(tài)的,所述分配可以(例 如)根據(jù)可利用的控制器的數(shù)目及/或所述可利用的控制器的當前及/或歷史 處理負荷來調(diào)整。此外,特定控制組件的冗余拷貝的數(shù)目可以是靜態(tài)及/或 動態(tài)的,例如視所述控制組件的相對重要性、可利用的控制器的數(shù)目及/或 所述可利用的控制器的當前及/或歷史處理負荷而定。以下連同圖4描述將 不同控制組件(例如軟件子系統(tǒng))的冗余拷貝分配到不同控制器。
圖3的范例控制組件310-312實施及/或執(zhí)行所述相同的軟件子系統(tǒng)。在 所有控制組件310-312適當?shù)夭僮鲿r(例如沒有任何錯誤),所有控制組件 310-312的輸出315相同。在控制組件310-312的特定其中之一已經(jīng)失效、 正在失效、正在經(jīng)歷錯誤情況等等時,其輸出315可能不同于其他控制組件 310-312的輸出315。檢測輸出315的這種差異及/或輸出315的不存在,可 以從而識別已經(jīng)失效、正在失效及/或發(fā)生錯誤的控制組件310-312。
在圖3的圖解范例中,主組件320配置成檢測這樣的已失效、正在失效 及/或發(fā)生錯誤的控制組件、選擇哪個控制組件310-312的哪個(些)輸出 315需傳送到現(xiàn)場設(shè)備及/或相同及/或不同控制算法的另一控制組件。圖3 的范例主組件320可以是中央處理器、控制器及/或軟件子系統(tǒng),其專用于 執(zhí)行多數(shù)表決,從而檢測已經(jīng)失效、正在失效及/或發(fā)生錯誤的控制組件 310-312及/或選擇傳送哪個(些)輸出315到所述現(xiàn)場設(shè)備。附加地或可 選才奪地,范例主組件320可以動態(tài)地選自控制組件310-312。換句話說,控 制組件310-312中的每個控制組件包括擔當該控制組件的主組件320所需要 的邏輯。在這樣的范例中,范例控制組件310-312交換它們的輸出315,以 允許控制組件310-312中的每個控制組件執(zhí)行多數(shù)表決,從而檢測已經(jīng)失效、 正在失效及/或發(fā)生錯誤的控制組件310-312及/或選擇傳送哪個(些)輸出 315到所述現(xiàn)場設(shè)備。如果當前不擔當主組件320的一個控制組件310-312 檢測到主控制組件310-312已經(jīng)失效、正在失效及/或發(fā)生錯誤,該控制組件
310-312可以接管成為主組件320并通知系統(tǒng)操作員(例如通過操作員站 115)有關(guān)已經(jīng)失效、正在失效及/或發(fā)生錯誤的控制組件310-312??梢允?用主組件仲裁方案(比如單循環(huán)選擇算法)來確定由哪個控制組件310-312 接管成為主組件320。
圖4圖解多個控制組件(例如軟件子系統(tǒng))的冗余拷貝分配到不同控制 器的一個范例。在圖4的圖解范例中,軟件子系統(tǒng)L的第一拷貝405被分配 到控制設(shè)備(例如控制器)410,軟件子系統(tǒng)L的第二拷貝415被分配到控 制器410,而軟件子系統(tǒng)L的第三拷貝420被分配到第二控制設(shè)備(例如第 二控制器)425。此外,軟件子系統(tǒng)Z的第一拷貝430被分配到控制器410, 而其第二拷貝435被分配到第三控制器(例如第三控制器440)。同樣地, 軟件子系統(tǒng)B的第一拷貝445被分配到控制器425,而其第二拷貝450被分 配到控制器440。
在圖4的圖解范例中,特定軟件子系統(tǒng)的每個拷貝是該特定軟件子系統(tǒng) 的主拷貝(例如第一級拷貝)或第二級拷貝。主拷貝或第二級拷貝的指定可 以是靜態(tài)及/或動態(tài)的,及/或可以由所述這些軟件子系統(tǒng)的所述拷貝確定, 及/或可以通過中央冗余控制過程來確定。如圖中所示, 一特定控制器可以 是一個軟件子系統(tǒng)的第一級,同時是另一軟件子系統(tǒng)的第二級。此外,每個 軟件子系統(tǒng)的冗余拷貝的數(shù)目可能不同。
圖5為一流程圖,其顯示一范例過程,該范例過程可以用于實施圖2的 范例冗余控制器225及/或(更概括地)可以用于實施在此描述的任何范例 控制器150-152或所有范例控制器150-152。圖6為一流程圖,其顯示一范 例過程,該范例過程可以用于實施圖2的范例升級模塊220,以便升級圖2 的任何范例控制組件或所有范例控制組件。圖5及/或6的范例過程可以由 處理器、控制器及/或任何其他合適的處理設(shè)備實施。例如,圖5及/或6的 范例過程可以收錄于存儲在有形機器可存取或可讀媒介上的編碼指令中,比 如存儲在與處理器(例如以下連同圖9進行討論的范例處理器卯5 )相關(guān)的 閃速存儲器、只讀存儲器(ROM)及/或隨機存取存儲器(RAM)上的編碼
指令中??蛇x擇地,圖5及/或6的一些或所有范例操作可以使用專用集成 電路(ASICs )、可編程邏輯器件(PLDs )、現(xiàn)場可編程邏輯器件(FPLDs )、 離散邏輯、硬件、固件等等的任何組合來實施。此外,圖5及/或6中描繪 的 一 個或多個操作可以手動地實施,或以前述的任何技術(shù)的任何組合來實 施,例如以固件、軟件、離散邏輯及/或硬件的任何組合來實施。此外,雖 然圖5及/或6的范例過程以圖5及/或6的流程圖來進行描述,但本領(lǐng)域的 普通工程:技術(shù)人員將可以理解,圖5及/或6的范例過程可以以許多其他方 法來實施。例如,可以改變流程塊的執(zhí)行順序,及/或可以改變、消除、分 割或結(jié)合所描述的有些流程塊。此外,本領(lǐng)域的普通工程技術(shù)人員將可以理 解,圖5及/或6的任何范例操作或所有范例操作可以按順序地執(zhí)行,及/或 (例如)由個別的處理線程、處理器、器件、離散邏輯、電路等同時執(zhí)行。 圖5的范例過程以控制組件(例如圖2的范例控制組件的其中任何一個) 的拷貝接收來自另 一 控制組件及/或現(xiàn)場設(shè)備的輸入為開始。所述控制組件 拷貝處理所接收的輸入(流程塊505 ),以構(gòu)成(例如計算) 一個或多個輸 出(例如圖3的范例輸出315)。冗余控制器(例如范例冗余控制器225 ) 采集及/或接收由所述控制組件的其他拷貝計算的輸出(流程塊510),然后 對所采集的那些輸出與由所述控制組件的所述拷貝計算的輸出進行比較(流 程塊515)。
如果所述控制組件拷貝是所述控制組件的主拷貝(例如第一級拷貝)(流 程塊520),及如果所述主拷貝的輸出與來自所述控制組件的其他拷貝的輸 出匹配(流程塊525 ),則所述控制組件將其輸出發(fā)送到另 一控制組件(控 制算法相同及/或不同的另一控制組件)及/或現(xiàn)場設(shè)備(流程塊530 )???件接著從圖5的范例過程退出。
返回到流程塊525 ,如果所述主拷貝的輸出與所述控制組件的其他拷貝 的輸出不匹配(流程塊525 ),當前的主拷貝放棄其作為主拷貝的角色(流 程塊535 )。控件接著從圖5的范例過程退出。
返回到流程塊520,如果所述控制組件拷貝當前不是所述控制組件的主
拷貝(流程塊520),所述冗余控制器確定所述當前主拷貝是否正確地操作 (流程塊540)。例如,如果所述主拷貝的輸出與大多數(shù)所述其他控制組件 拷貝的輸出匹配,所述冗余控制器確定該當前的主拷貝正確地操作。附加地 或可選擇地,所述當前主拷貝及所述冗余控制器可以交換所謂"心跳,,信號 (定期及/或不定期的),這允許所述當前主拷貝及/或及所述冗余控制器確 定所述其他設(shè)備是否發(fā)揮功能及/或響應。例如,如果所述冗余控制器接收 來自所述主拷貝的心跳信號,所述冗余控制器確定所述當前主拷貝正確地操 作。如果所述當前主拷貝正確地操作(流程塊540),控件從圖5的范例過 程退出。如果所述當前主拷貝不正確地操作(流程塊540),則所述冗余控 制器拷貝起動所述控制組件的主拷貝的改變(流程塊545 )??丶又鴱膱D 5的范例過程退出。
圖6的范例過程以用戶期望升級特定控制組件為開始。升級模塊(例如 圖2的范例升級模塊220)接收來自所述用戶的二進制圖像(流程塊605 ) 并存儲所述二進制圖像(例如范例圖像235 )(流程塊610)。所述升級模 塊以"待更新,,模式創(chuàng)建所述新控制組件的實例(流程塊615)。在有些范 例中,所述新控制組件實例化為實時操作系統(tǒng)(RTOS)的隔離過程。
所述升級模塊起動從所述舊組件到所述新組件的狀態(tài)數(shù)據(jù)傳送(流程塊 620)。在有些范例中,所述狀態(tài)數(shù)據(jù)以實時操作系統(tǒng)(RTOS)的過程間通 信能力來復制,比如以可移植操作系統(tǒng)界面(POSIX)功能呼叫來復制。在 狀態(tài)數(shù)據(jù)的傳送完成時(流程塊625 ),所述升級模塊終止所述原控制組件 (流程塊630 ),然后將所述新控制組件的模式改變成"主動"(流程塊635 ) 控件接著從圖6的范例過程退出。
在有些范例中,新組件可以在所述舊組件4皮終止之前測試。在這些實例 中,如果所迷新組件不正確地操作,則所述新組件可以被終止,而所述舊組 件保持為主動組件。在其他范例中,新組件可能稍后被發(fā)現(xiàn)存在缺失及/或 缺陷,而所述升級模塊可以回復到原始組件,直到可利用新組件為止。
圖7A、 7B、 7C及7D圖解一范例過程,該范例過程可以由升級模塊(例
如圖2的范例升級模塊220)實施來升級控制組件(例如范例控制組件230 中的任何控制組件或所有控制組件)。圖7A圖解兩個過程控制應用程序705 及710的初始狀態(tài),而過程控制應用程序705及710利用控制組件715及控 制組件720。在圖7A-7D的圖解范例中,需將控制組件715升級為新版本。
如圖7B所示,所述升級模塊創(chuàng)建控制組件715的新版本的實例725, 作為一隔離過程。在圖7C的圖解范例中,原控制組件715將狀態(tài)數(shù)據(jù)及/ 或信息730復制到新控制組件725。如圖7D所示,在新控制組件725的狀 態(tài)與原控制組件715的狀態(tài)匹配時,所述升級模塊將新控制組件725的模式 改變成"主動"并終止原控制組件715。
圖8A及8B圖解一范例控制系統(tǒng),該范例控制系統(tǒng)操作控制組件的兩 個版本。圖8A圖解兩個過程控制應用程序805及810的初始狀態(tài),而過程 控制應用程序805及810利用控制組件815及控制組件820。在圖8A及8B 的圖解范例中,需為控制應用程序810將控制組件815升級為新版本。如 圖8B所示,所述升級模塊創(chuàng)建控制組件815的新版本的實例825,并開始 將過程控制應用程序810的輸入發(fā)送到新控制組件825以及同時將過程控制 應用程序805的輸入傳送到原控制組件815。原控制組件815及新控制組件 825繼續(xù)使用相同的控制組件820。
同時執(zhí)行特定控制組件的兩個版本使過程控制系統(tǒng)在為現(xiàn)有控制組件 添加新特性及/或修正缺陷時能夠有額外的靈活性。例如,包含所謂"熱修 復"的尚未能夠全面接受品質(zhì)測試的新控制組件只可以由需要改變的那些控 制算法引進及使用。其他不需要所述新控制組件的控制算法可以繼續(xù)使用原 控制組件,直到所述新控制組件被正式放棄為止。附加地或可選擇地,控制 組件的兩個版本也可以在其^皮正式放棄之前用于測試新控制組件,及/或不 能向后兼容的改變可以在所有其他受影響的控制組件被更新之前引進。
圖9為一原理圖,其圖解一范例處理器平臺卯O,該范例處理器平臺900 可以用于及/或編程為執(zhí)行在此描述的任何或所有范例控制平臺110、控制器 150-152及/或范例處理器205。例如,處理器平臺900可以由一個或多個通
用處理器、處理器芯核、微控制器等等實施。
圖9的范例的處理器平臺900包括至少一個通用可編程處理器905。處 理器905執(zhí)行存在于處理器905的主存儲器(例如存在于RAM 915及/或 ROM 920)的編碼指令910及/或912。處理器905可以是任何類別的處理單 元,比如處理器芯核、處理器及/或微控制器。處理器卯5除了執(zhí)行別的以 外,還可以執(zhí)行圖5、 6及/或7A-D的范例過程,以實施在此描述的范例控 制平臺110、控制器150-152及/或范例處理器205。處理器卯5通過總線925, 與所述主存儲器(包括ROM 920及/或RAM 915 )進行通信。RAM 915可 以由動態(tài)隨機存取存儲器(DRAM )、同步動態(tài)隨機存取存儲器(SDRAM ) 及/或任何其他類別的隨機存取存儲器(RAM )器件實施,而ROM 920可以 由閃速存儲器及/或任何其他期望類別的存儲器器件實施。對存儲器915及 920的存取可以由存儲器控制器(圖中未顯示)來控制。RAM915可以用于 存儲及/或?qū)嵤?例如)圖2的范例主存儲器210。
處理器平臺900也包括界面電路930。界面電路930可以以任4可類別的 界面標準實施,比如通用串行總線(USB)界面、藍牙(Bluetooth)界面、 外存儲器界面、串口、通用輸入/輸出界面等等。 一個或多個輸入設(shè)備935 及一個或多個輸出設(shè)備940連接到界面電路930。輸入設(shè)備935及/或輸出設(shè) 備940可以用于(例如)實施圖2的范例背板界面245。
雖然在此已經(jīng)描述某些范例方法、設(shè)備及制造件,但本專利包括的范圍 并未受其限制。這些范例的性質(zhì)屬于非限制性的原理性范例,其并未限制本 專利包括的范圍。相反地,本專利包括所有根據(jù)字面意義或等效原則正當?shù)?屬于附此的權(quán)利要求的范圍的方法、設(shè)備及制造件。
權(quán)利要求
1、一種用于為過程控制系統(tǒng)的控制設(shè)備升級軟件的方法,所述方法包括實例化所述軟件的替代組件;將來自現(xiàn)有組件的狀態(tài)數(shù)據(jù)復制到所述替代組件;以及在所述替代組件的第一狀態(tài)與所述現(xiàn)有組件的第二狀態(tài)匹配時,將所述替代組件改變?yōu)橹鲃幽J健?br>
2、 如權(quán)利要求l所述的方法,其中所述現(xiàn)有組件當前為主動。
3、 如權(quán)利要求l所述的方法,進一步包括終止所述現(xiàn)有組件的執(zhí)行。
4、 如權(quán)利要求1所述的方法,其中第一控制應用程序包括所述替代組 件,而第二控制應用程序繼續(xù)包括所述現(xiàn)有組件。
5、 如權(quán)利要求4所述的方法,進一步包括使所述第一控制應用程序回 復到使用所述現(xiàn)有組件。
6、 如權(quán)利要求1所述的方法,其中所述替代組件被實例化為所述現(xiàn)有 組件的冗余模塊。
7、 如權(quán)利要求1所述的方法,其中所述替代組件由實時操作系統(tǒng)實例 化為隔離過程。
8、 如權(quán)利要求1所述的方法,其中過程間通信用于復制所述狀態(tài)數(shù)據(jù)。
9、 如權(quán)利要求8所述的方法,其中所述過程間通信包括可移植操作系 統(tǒng)界面呼叫。
10、 如權(quán)利要求l所述的方法,進一步包括 核驗所述第一狀態(tài)與所述第二狀態(tài)匹配;以及 在所述第一狀態(tài)與所述第二狀態(tài)不匹配時復制附加狀態(tài)數(shù)據(jù)。
11、 如權(quán)利要求1所述的方法,進一步包括在將所述替代組件改變?yōu)樗?述主動模式之前執(zhí)行對所述替代組件的測試。
12、 如權(quán)利要求1所述的方法,其中所述軟件升級在所述過程控制系統(tǒng)不遭受控制時間損失的情況下發(fā)生。
13、 如權(quán)利要求l所述的方法,其中所述替代組件包括一控制應用程序 的 一個子系統(tǒng),及其中所述控制應用程序的其他子系統(tǒng)沒有被升級。
14、 如權(quán)利要求l所述的方法,其中所述軟件升級在沒有使用另一控制 設(shè)備的情況下發(fā)生。
15、 如權(quán)利要求l所述的方法,其中所述替代組件包括熱修復。
16、 一種存儲機器可讀指令的制造件,所述機器可讀指令在被執(zhí)行時促 使機器通過以下步驟為過程控制系統(tǒng)的控制設(shè)備升級軟件實例化所述軟件的替代組件;將來自現(xiàn)有組件的狀態(tài)數(shù)據(jù)復制到所述替代組件;以及 在所述替代組件的第一狀態(tài)與所述現(xiàn)有組件的第二狀態(tài)匹配時,將所述 替代組件改變?yōu)橹鲃幽J健?br>
17、 如權(quán)利要求16所述的制造件,其中所述現(xiàn)有組件當前為主動。
18、 如權(quán)利要求16所述的制造件,其中所述機器可讀指令在被執(zhí)行時 促使所述機器終止所述現(xiàn)有組件的執(zhí)行。
19、 如權(quán)利要求16所述的制造件,其中第一控制應用程序包括所述替 代組件,而第二控制應用程序繼續(xù)包括所述現(xiàn)有組件。
20、 如權(quán)利要求16所述的制造件,其中所述機器可讀指令在被執(zhí)行時 促使所述機器將所述替代組件實例化為所述現(xiàn)有組件的冗余模塊。
21、 如權(quán)利要求16所述的制造件,其中所述機器可讀指令在被執(zhí)行時 促使所述機器將所述替代組件實例化為實時操作系統(tǒng)的隔離過程。
22、 如權(quán)利要求16所述的制造件,其中所述機器可讀指令在被執(zhí)行時 促使所述機器將過程間通信用于復制所述狀態(tài)數(shù)據(jù)。
23、 如權(quán)利要求16所述的制造件,其中所述機器可讀指令在被執(zhí)行時 促使所述機器核驗所述第一狀態(tài)與所述第二狀態(tài)匹配;以及在所述第 一狀態(tài)與所述第二狀態(tài)不匹配時復制附加狀態(tài)數(shù)據(jù)。
24、 如權(quán)利要求16所述的制造件,其中所述機器可讀指令在被執(zhí)行時 促使所述機器在將所述替代組件改變?yōu)樗鲋鲃幽J街皥?zhí)行對所述替代 組件的測i式。
25、 如權(quán)利要求16所述的制造件,其中所述軟件升級在所述過程控制 系統(tǒng)不遭受控制時間損失的情況下發(fā)生。
26、 如權(quán)利要求16所述的制造件,其中所述替代組件包括一控制應用 程序的 一個子系統(tǒng),及其中所述控制應用程序的其他子系統(tǒng)沒有被升級。
27、 如權(quán)利要求16所述的制造件,其中所述機器可讀指令在被執(zhí)行時 促使所述機器在沒有使用另 一控制設(shè)備的情況下執(zhí)行所述軟件升級。
28、 一種用于為過程設(shè)備控制系統(tǒng)提供控制冗余的方法,所述方法包括 提供控制輸入到控制軟件子系統(tǒng)的第 一實例及所述控制軟件子系統(tǒng)的第二實例,所述第一及第二實例充分并行地處理所述控制輸入;以及提供所述第 一 實例的輸出或所述第二實例的輸出到過程設(shè)備現(xiàn)場設(shè)備。
29、 如權(quán)利要求28所述的方法,其中所述第一及第二實例通過不同控 制設(shè)備執(zhí)行。
30、 如權(quán)利要求29所述的方法,其中控制設(shè)備是過程設(shè)備控制器、過 程設(shè)備控制器的處理器、過程設(shè)備控制器的中央處理器及/或過程設(shè)備控制 器的處理器芯核的其中至少之一。
31、 如權(quán)利要求29所述的方法,其中所述不同控制設(shè)備的每個控制設(shè) 備是用于至少 一 個控制應用程序的主動控制器。
32、 如權(quán)利要求29所述的方法,進一步包括根據(jù)所述控制設(shè)備的處理 負荷來選擇由哪些控制設(shè)備執(zhí)行所述第 一 及第二實例。
33、 如權(quán)利要求29所述的方法,進一步包括隨著時間的過去而改變由 哪些控制設(shè)備執(zhí)行所述第 一 及第二實例。
34、 如權(quán)利要求28所述的方法,其中所述第一及第二實例在相同的控 制設(shè)備上執(zhí)行。
35、 如權(quán)利要求28所述的方法,其中所述控制軟件子系統(tǒng)是用于所述 過程設(shè)備控制系統(tǒng)的控制應用程序的部分。
36、 如權(quán)利要求28所述的方法,其中所述第一實例是主組件并確定提 供哪個輸出到所述過程設(shè)備現(xiàn)場設(shè)備。
37、 如權(quán)利要求28所述的方法,進一步包括 提供所述控制輸入到控制軟件子系統(tǒng)的第三實例; 采集所述第一、第二及第三實例的輸出;以及 執(zhí)行表決以確定提供哪個輸出到所述過程設(shè)備現(xiàn)場設(shè)備。
38、 如權(quán)利要求28所述的方法,進一步包括 提供所述控制輸入到控制軟件子系統(tǒng)的第三實例;以及 交換所述第一、第二及第三實例的輸出,其中所述第一、第二及第三實例執(zhí)行表決以確定由哪個實例提供其輸出到所述過程設(shè)備現(xiàn)場設(shè)備。
39、 一種存儲機器可讀指令的制造件,所述機器可讀指令在被執(zhí)行時促 使機器通過以下步驟為過程設(shè)備控制系統(tǒng)提供控制冗余提供控制輸入到控制軟件子系統(tǒng)的第 一 實例及所述控制軟件子系統(tǒng)的 第二實例,所述第一及第二實例充分并行地處理所述控制輸入;以及提供所述第 一 實例的輸出或所述第二實例的輸出到過程設(shè)備現(xiàn)場設(shè)備。
40、 如權(quán)利要求39所述的制造件,其中所述第一及第二實例通過不同 控制設(shè)備執(zhí)行。
41、 如權(quán)利要求40所述的制造件,其中控制設(shè)備是過程設(shè)備控制器、 過程設(shè)備控制器的處理器、過程設(shè)備控制器的中央處理器及/或過程設(shè)備控 制器的處理器芯核的其中至少之一。
42、 如權(quán)利要求40所述的制造件,其中所述不同控制設(shè)備的每個控制 設(shè)備是用于至少 一個控制應用程序的主動控制器。
43、 如權(quán)利要求40所述的制造件,其中所述機器可讀指令在被執(zhí)行時 促使機器根據(jù)所述控制設(shè)備的處理負荷來選擇由哪些控制設(shè)備執(zhí)行所述第 一及第二實例。
44、 如權(quán)利要求40所述的制造件,其中所述機器可讀指令在被執(zhí)行時 促使機器隨著時間的過去而改變由哪些控制設(shè)備執(zhí)行所述第 一及第二實例
45、 如權(quán)利要求39所述的制造件,其中所述第一及第二實例在相同的 控制設(shè)備上執(zhí)行。
46、 如權(quán)利要求39所述的制造件,其中所述控制軟件子系統(tǒng)是用于所 述過程設(shè)備控制系統(tǒng)的控制應用程序的部分。
47、 如權(quán)利要求39所述的制造件,其中所述機器可讀指令在被執(zhí)行時 促使機器配置第 一 實例為主組件以確定提供哪個輸出到所述過程設(shè)備現(xiàn)場 設(shè)備。
48、 如權(quán)利要求39所述的制造件,其中所述機器可讀指令在被執(zhí)行時 促使機器提供所述控制輸入到控制軟件子系統(tǒng)的第三實例; 采集所述第一、第二及第三實例的輸出;以及 執(zhí)行表決以確定提供哪個輸出到所述過程設(shè)備現(xiàn)場設(shè)備。
49、 如權(quán)利要求39所述的制造件,其中所述機器可讀指令在被執(zhí)行時 促使機器提供所述控制輸入到控制軟件子系統(tǒng)的第三實例;以及 交換所述第一、第二及第三實例的輸出,其中所述第一、第二及第三實 例執(zhí)行表決以確定由哪個實例提供其輸出到所述過程設(shè)備現(xiàn)場設(shè)備。
全文摘要
本發(fā)明公開在過程設(shè)備中升級及提供控制冗余的方法及設(shè)備。所公開的一種升級過程控制系統(tǒng)的控制設(shè)備的軟件的范例方法包括實例化所述軟件的替代組件、將來自現(xiàn)有組件的狀態(tài)數(shù)據(jù)復制到所述替代組件、以及在所述替代組件的第一狀態(tài)與所述現(xiàn)有組件的第二狀態(tài)匹配時將所述替代組件改變?yōu)橹鲃幽J健?br>
文檔編號G05B19/02GK101393430SQ20081021140
公開日2009年3月25日 申請日期2008年9月18日 優(yōu)先權(quán)日2007年9月18日
發(fā)明者凱爾·泰特邁耶, 加里·勞, 大衛(wèi)·馬克·史密斯, 布蘭頓·希布, 戈弗雷·R·謝里夫, 戴維·R·丹尼森 申請人:費舍-柔斯芒特系統(tǒng)股份有限公司