專利名稱:用于使用多個控制器進行通信的方法、系統和設備的制作方法
用于使用多個控制器進行通信的方法、系統和設備背景技術
本文描述的實施例大體涉及數據交換系統,并且更具體而言,涉及用于使用通信網絡在系統構件之間交換數據的系統。
至少一些已知的控制系統需要用于一些參數的較短控制期間,但允許用于其它參數的較長控制期間。因此,至少一些已知的控制系統使用單獨的輸入/輸出(I/o)網絡,使得能夠使用不同的控制期間在系統構件之間通信。其它已知的控制系統將單個系統分成兩個獨立運行的系統,并且然后使用專門設計的通信協議或體系結構復制兩個系統之間的I/ O交換。但是,由于有雙重諸如傳感器、促動器等的系統構件,這樣的系統的實現成本和/或服務要求會迅速提高。此外,使用專門設計的通信協議或體系結構往往需要附加的裝備和 /或軟件實現成本。發明內容
在一方面,提供一種用于運行控制系統的方法,該控制系統包括多個控制器和通過網絡耦合到多個控制器上的至少一個接口單元。該方法包括通過多個控制器中的第一控制器將第一中斷重復地傳輸到至少一個接口單元,其中,第一中斷以第一頻率傳輸。方法還包括在第一控制器處接收來自至少一個接口單元的、響應于第一中斷的第一響應,以及在多個控制器中的第二控制器處接收來自至少一個接口單元的第二響應,其中,第二響應相對于第一頻率是非周期性的。
在另一方面,一種系統包括包含至少一個輸入/輸出(I/O)模塊的至少一個接口單元,通過網絡耦合到接口單元上的第一控制器,以及通過網絡耦合到接口單元上的第二控制器。第一控制器配置成以第一頻率將第一中斷重復地傳輸到接口單元,以及接收來自接口單元的、響應于第一中斷的第一響應。第二控制器配置成接收來自接口單元的第二響應,其中,第二響應相對于第一頻率是非周期性的。
在另一方面,提供一種用于控制系統的接口單元,其中,接口單元通過網絡耦合到第一控制器和第二控制器上。接口單元包括處理器,處理器配置成以第一頻率重復地接收來自第一控制器的第一中斷,響應于第一中斷將第一響應傳輸到第一控制器,以及將第二響應傳輸到第二控制器,其中,第二響應相對于第一頻率是非周期性的。
通過結合附圖參照以下描述,可更好地理解本文描述的實施例。
圖I是示例性冗余網絡系統的示意性框圖;圖2是示出運行圖I中示出的冗余網絡系統的示例性方法的流程圖;圖3是可用于圖I中示出的冗余網絡系統的控制器存儲器區域的示意性框圖。
具體實施方式
本文描述一種用于通過網絡交換輸入數據和輸出數據的方法、系統和設備的示例性實施例。本文描述實施例使得一個或多個網絡能夠用于在控制器和一個或多個遠程輸入 /輸出(I/o)架(其包括接口單元和一個或多個I/O模塊)之間可靠且高性能地交換輸入數據和輸出數據。此外,本文描述的實施例使得能夠使用各自具有不同的性能要求的兩個或更多個控制系統。例如,第一控制系統(諸如氣體壓縮機控制系統)可能比第二控制系統(諸如通風控制系統)需要短得多的控制期間或響應期間。因此,本文描述的實施例使得能夠使用單個I/O網絡來減少對雙重的傳感器、促動器、I/O模塊和/或通信模塊的需要。
圖I是示例性冗余網絡系統100的示意性框圖,在例如自動化系統或工業通信系統中可使用該示例性冗余網絡系統100,以有利于在系統100內進行高速數據交換。在示例性實施例中,系統100包括多個控制器102,控制器102包括至少第一控制器104和第二控制器106。此外,系統100包括多個接口單元108和多個I/O模塊110。在一些實施例中, 控制器102布置成冗余對,其中一個控制器102被指定為控制系統運行的主控制器,而另一個控制器102被指定為在切換之后承擔對系統100的控制的輔助或備用控制器。此外,接口單元108可單獨地運行,或者可以以冗余對或三重布置來運行。I/O模塊110可為離散模塊、模擬模塊,或者離散模塊和模擬模塊的混合體。
各個接口單元108通過I/O網絡112耦合到各個控制器102上。更具體而言,系統100包括多個I/O網絡112,諸如第一 I/O網絡114和第二 I/O網絡116,以在接口單元 108和控制器102之間提供冗余的通信通道。在示例性實施例中,各個I/O網絡112包括一個或多個集線器118,集線器118有利于在控制器102和接口單元108之間發送通信分組, 通信分組包括數據、命令、中斷等。另外,各個控制器102通過控制器網絡120耦合到各個其余的控制器102上。更具體而言,系統100包括多個控制器網絡120,以在控制器102之間提供冗余的通信通道。另外,控制器網絡120可布置成任何適當的拓撲結構,包括但不限于星形網絡、環形網絡或點對點網絡。在示例性實施例中,I/O網絡112和控制器網絡116 是反射存儲器網絡。反射存儲器網絡使得網絡化系統(諸如控制器102和接口單元108)能夠共享數據。
例如,在示例性實施例中,I/O網絡112和/或控制器網絡120是光纖反射存儲器網絡,光纖反射存儲器網絡以大約2. 12吉波特(Gigabaud)運行,并且允許例如256個控制或計算機平臺彼此共享存儲器。在一些實施例中,控制或計算機平臺能夠共享在16兆字節 (MB)和256 MB之間的控制數據。此外,I/O網絡112和/或控制器網絡120或者使用多模式收發器或者使用單模式收發器,以使得能夠在高達大約10公里的距離上通信。反射存儲器網絡還實現高的網絡數據吞吐率,諸如介于每秒傳輸43百萬字節和174百萬字節之間。 此外,利用反射存儲器網絡的低水平網絡分組控制使用例如4字節分組至64字節分組來自動地提高網絡吞吐量。因此,諸如I/O網絡112和/或控制器網絡120的反射存儲器網絡提供高性能的控制數據傳送和確定機制。將理解的是,上面描述的共享存儲器大小、距離和 /或網絡容量僅是示例性的,并且不意于限制本文公開的實施例。
在示例性實施例中,各個控制器102包括處理器122、存儲器區域124、I/O網絡接口 126和控制器網絡接口 128。存儲器區域124包括通過控制器網絡120可用于其它控制器102的共享存儲器部分(未示出)。在一個實施例中,各個控制器102能夠讀取和寫入共享存儲器部分。在備選實施例中,各個控制器102能夠僅讀取共享存儲器部分中的一些,但能夠讀取和寫入共享存儲器部分的其余部分。在示例性實施例中,各個控制器102包括專用于I/O網絡112的各個實例的I/O網絡接口 126,以及專用于控制器網絡120的各個實例的控制器網絡接口 128。在備選實施例中,各個控制器102包括多個處理器122。此外,存儲器區域124可實施為任何適當的存儲器裝置或應用程序,包括(但不限于)數據庫、硬盤裝置、固態裝置,或者適合于如本文描述的那樣存儲數據的任何其它裝置。此外,在示例性實施例中,存儲器區域124位于控制器102內。備選地,存儲器區域124可包括在控制器102 內部、外部或者可由其訪問的任何存儲器區域。另外,存儲器區域124或存儲在其上的任何數據都可與在遠程控制器102本地或遠處(例如,能夠通過I/O網絡112和/或控制器網絡 120訪問)的任何服務器或其它計算機相關聯。
在示例性實施例中,各個接口單元108包括處理器130,存儲器區域132,以及有利于通過I/o網絡112與各個控制器102通信的I/O網絡接口 134。更具體而言,在示例性實施例中,接口單元108包括專用于I/O網絡112的各個實例的I/O網絡接口 134。在備選實施例中,各個接口單元108包括多個處理器130。此外,存儲器區域132可實施為任何適當的存儲器裝置或應用程序,包括但不限于數據庫、硬盤裝置、固態裝置,或者適于如本文描述的那樣存儲數據的任何其它裝置。此外,在示例性實施例中,各個集線器118包括用于到 I/O網絡112的每個連接的專用I/O網絡接口 136。
圖2是示出運行系統100 (在圖I中示出)的示例性方法的流程圖200。在示例性實施例中,第一控制器104 (在圖I中示出)初始化202通過I/O網絡112 (在圖I中示出)、 諸如通過第一 I/O網絡114 (在圖I中示出)與接口單元108 (在圖I中示出)的同步I/O 操作。另外,以及在示例性實施例中,第二控制器106 (在圖I中示出)初始化204通過I/ O網絡112、諸如通過第二 I/O網絡116 (在圖I中示出)與接口單元108的異步I/O操作。 異步I/o操作的初始化使得第二控制器106能夠通過I/O網絡112接收206來自接口單元 108的響應。這種響應可包括接口單元108從I/O模塊110 (在圖I中示出)中獲取的輸入數據。異步I/O操作還包括被第二控制器106傳輸到一個或多個接口單元108以存儲在I/ O模塊110上的輸出數據。
在示例性實施例中,第一控制器104通過將中斷傳輸到208 —個或多個接口單元 108來啟動同步I/O操作。在一個實施例中,第一控制器104以第一頻率重復地傳輸208(諸如定期傳輸)中斷。此外,中斷包括數據收集命令或數據存儲命令。響應于中斷,接口單元 108暫停210與異步I/O操作有關的處理和/或通信,以便處理中斷。例如,接口單元108 處理數據收集命令,以從I/O模塊110中獲取輸入數據,或者處理數據存儲命令,以將輸出數據存儲到I/O模塊110。同步地將中斷傳輸到接口單元108確保中斷基本同時由接口單元108接收和處理。響應于中斷,接口單元108通過I/O網絡112將響應傳輸到第一控制器104。因此,第一控制器104接收212來自接口單元108的響應。在一個實施例中,第一控制器104在針對來自接口單元108的響應而掃描I/O網絡112之前等待特定的時間段,以使得各個接口單元108能夠完成對中斷的處理并將響應置于I/O網絡112上。如果第一控制器104確定214需要附加的同步I/O操作,則第一控制器104重復地傳輸208中斷。如果不存在附加的同步I/O操作,則接口單元108恢復對異步I/O操作的處理。在示例性實施例中,相對于第一控制器104所傳輸的中斷,第二控制器106所接收到的響應是非周期性的。例如,第一控制器104以第一頻率傳輸中斷,并且以第一頻率接收來自接口單元108的響應。但是,在示例性實施例中,第二控制器106未以第一頻率接收來自接口單元108的響應,而是以不同的頻率、或者不考慮規則的頻率來接收響應。
在備選實施例中,第一控制器104和第二控制器106兩者使用同步I/O操作來與接口單元108交換數據。在一個這種實施例中,第一控制器104將第一中斷傳輸到接口單元108,并且第二控制器106將第二中斷傳輸到接口單元108,兩者都以第一頻率傳輸。在另一個這種實施例中,第一控制器104以第一頻率將第一中斷傳輸到接口單元108,并且第二控制器106以不同于第一頻率的第二頻率將第二中斷傳輸到接口單元108。例如,第二頻率可為第一頻率中的倍數,或者反之亦然。在這些備選實施例中,來自第一控制器104和第二控制器106的各個中斷指示目標接口單元108,使得未指定的接口單元108忽略該中斷。 此外,各個接口單元108編程成使中斷排隊,以及/或者推遲對一個中斷的處理,直到另一個中斷的處理完成為止。另外,各個接口單元108編程成解決同時接收或幾乎同時接收到的中斷之間的沖突。
圖3是可用于另一個備選實施例中的特定控制器102的存儲器區域124的示意性框圖。在這種實施例中,存儲器區域124包括第一部分302、第二部分304和第三部分306。 例如,在一些實施例中,第一部分302包括僅對特定的接口單元108和/或特定的控制器 (諸如第一控制器104)可用的關鍵數據和/或控制參數;第二部分304包括可由所有接口單元108和控制器102訪問的數據和/或參數;并且第三部分306包括僅可由特定的接口單元108和/或特定的控制器(諸如第二控制器106)訪問的數據和/或參數。此外,在一些實施例中,同步I/O操作限于第一部分302和/或第二部分304的使用,并且異步I/O操作限于第二部分304和/或第三部分306的使用。
上面詳細描述了一種用于通過網絡在多個控制器和一個或多個接口單元之間交換輸入數據和輸出數據的方法、系統和設備的示例性實施例。方法、系統和設備不限于本文描述的實施例,而是相反,方法的操作和/或系統和/或設備的構件可獨立于并且分離于本文描述的其它操作和/或構件來使用。另外,所描述的操作和/或構件還可限定在其它系統、方法和/或設備中,或者與其它系統、方法和/或設備結合起來使用,并且不限于僅用本文描述的系統、方法和存儲介質來實踐。
諸如本文描述的那些的控制器或接口單元典型地包括至少一些形式的計算機可讀介質。以示例和無限制的方式,計算機可讀介質包括計算機存儲介質和通信介質。計算機存儲介質包括以任何方法或技術實現以存儲諸如計算機可讀指令、數據結構、程序模塊或其它數據的信息的易失性和非易失性、可移動和不可移動的介質。通信介質典型地包含計算機可讀指令、數據結構、程序模塊或調制數據信號(諸如載波或其它傳輸介質)中的其它數據,并且包括任何信息輸送介質。本領域技術人員熟悉調制數據信號,調制數據信號使其特征中的一個或多個以在信號中編碼信息的方式設置或改變。以上中的任一個的組合也包括在計算機可讀介質的范圍內。
雖然結合示例性控制和/或計算系統環境來描述本發明,但可用許多其它通用或專用控制和/或計算系統環境或配置來運行本發明的實施例。控制和/或計算系統環境不意于建議對本發明的任何方面的使用或功能性的范圍有任何限制。此外,控制和/或計算系統環境不應解釋為具有與示例性運行環境中示出的構件的任何一個或組合有關的任何依賴或要求。
可在計算機可執行指令的一般語境中描述本發明的實施例,諸如由一個或多個計算機或其它裝置執行的程序構件或模塊。可用任何數量和組織的構件或模塊來實現本發明的各方面。例如,本發明的各方面不限于圖中示出以及本文描述的特定的計算機可執行指令或特定的構件或模塊。本發明的備選實施例可包括比本文示出的和描述的具有更多或更少功能性的不同的計算機可執行指令或構件。
在本文示出的和描述的本發明的實施例中的操作的執行或進行的順序不是必要的,除非另有規定。也就是說,操作可按任何順序進行,除非另有規定,而且本發明的實施例可比本文公開的那些包括附加的或更少的操作。例如,構想到的是,在另一個操作之前、與其同時或之后執行或進行特定的操作,是在本發明的各方面的范圍內的。
在一些實施例中,術語“控制器”大體表示任何計算機系統,計算機系統包括可編程的自動化控制器(PAC)、可編程的邏輯控制器(PLC),以及能夠如本文描述的那樣控制自動化和/或通信功能的任何其它計算機系統。以上示例僅是示例性的,并且從而無論如何不意于限制術語“控制器”的定義和/或含義。
在一些實施例中,術語“處理器”大體表示任何可編程的系統,可編程的系統包括系統和微控制器、精簡指令集電路(RISC)、專用集成電路(ASIC)、可編程的邏輯電路,以及能夠執行本文描述的功能的任何其它電路或處理器。以上示例僅是示例性的,并且從而無論如何不意于限制術語“處理器”的定義和/或含義。
當介紹本發明的各方面或本發明的實施例的要素時,冠詞“一”、“該”和“所述”意于表示存在一個或多個該要素的意思。術語“包括”、“包含”和“具有”意于為包括性的,并且表示除了列出的要素之外可存在另外的要素的意思。
本書面描述使用示例來公開本發明,包括最佳模式,并且還使本領域任何技術人員能夠實踐本發明,包括制造和使用任何裝置或系統,以及進行任何結合的方法。本發明的可取得專利的范圍由權利要求限定,并且可包括本領域技術人員想到的其它示例。如果這樣的其它示例具有不異于權利要求的字面語言的結構要素,或者如果它們包括與權利要求的字面語言無實質性差異的等效結構要素,則它們意于處在權利要求的范圍之內。
權利要求
1.一種運行控制系統的方法,所述控制系統包括多個控制器和通過網絡耦合到所述多個控制器上的至少一個接口單元,所述方法包括 通過所述多個控制器中的第一控制器重復地將第一中斷傳輸到所述至少一個接口單元,所述第一中斷以第一頻率傳輸; 在所述第一控制器處接收來自所述至少一個接口單元的、響應于所述第一中斷的第一響應;以及 在所述多個控制器中的第二控制器處接收來自所述至少一個接口單元的第二響應,所述第二響應相對于所述第一頻率是非周期性的。
2.根據權利要求I所述的方法,其中 傳輸第一中斷包括傳輸包括數據收集命令的所述第一中斷;以及 接收第一響應包括在所述第一控制器處接收來自所述至少一個接口單元的、響應于所述至少一個接口單元執行所述數據收集命令的輸入數據。
3.根據權利要求I所述的方法,其中,傳輸第一中斷包括傳輸包括數據存儲命令的所述第一中斷。
4.根據權利要求I所述的方法,其中,接收第一響應包括在所述第一控制器處以所述第一頻率接收所述第一響應。
5.根據權利要求I所述的方法,所述方法進一步包括暫停來自所述至少一個接口單元的所述第二響應在所述網絡上的傳送,使得所述至少一個接口單元能夠處理所述第一中斷。
6.根據權利要求I所述的方法,所述方法進一步包括所述第二控制器將第二中斷傳輸到所述至少一個接口單元,其中,來自所述至少一個接口單元的所述第二響應響應于所述第二中斷。
7.根據權利要求6所述的方法,其中,傳輸第二中斷包括以所述第一頻率重復地傳輸所述第二中斷。
8.根據權利要求6所述的方法,其中,傳輸第二中斷包括以不同于所述第一頻率的第二頻率重復地傳輸所述第二中斷。
9.根據權利要求I所述的方法,其中,所述第一控制器包括第一共享存儲器,并且所述第二控制器包括第二共享存儲器,所述方法進一步包括通過所述第一控制器訪問所述第一共享存儲器的、對所述第二控制器不可用的第一部分。
10.一種系統,包括 包括至少一個輸入/輸出(I/o)模塊的至少一個接口單元; 通過網絡耦合到所述至少一個接口單元上的第一控制器,所述第一控制器配置成 重復地將第一中斷傳輸到所述至少一個接口單元,所述第一中斷以第一頻率傳輸;以及 接收來自所述至少一個接口單元的、響應于所述第一中斷的第一響應;以及 通過所述網絡耦合到所述至少一個接口單元上的第二控制器,所述第二控制器配置成接收來自所述至少一個接口單元的第二響應,所述第二響應相對于所述第一頻率是非周期性的。
11.根據權利要求10所述的系統,其中,所述第二控制器進一步配置成暫停來自所述至少一個接口單元的所述第二響應在所述網絡上的傳送,使得所述至少一個接口單元能夠處理所述第一中斷。
12.根據權利要求10所述的系統,其中,所述第二控制器進一步配置成將第二中斷傳輸到所述至少一個接口單元,以及其中,來自所述至少一個接口單元的所述第二響應響應于所述第二中斷。
13.根據權利要求12所述的系統,其中,所述第二控制器配置成以所述第一頻率重復地傳輸所述第二中斷。
14.根據權利要求12所述的系統,其中,所述第二控制器配置成以不同于所述第一頻率的第二頻率重復地傳輸所述第二中斷。
15.根據權利要求10所述的系統,其中,所述第一控制器包括第一共享存儲器,所述第一共享存儲器包括對所述第二控制器不可用的第一部分。
16.一種用于控制系統的接口單元,所述接口單元通過網絡耦合到第一控制器和第二控制器上,所述接口單元包括 處理器,其配置成 重復地接收來自所述第一控制器的第一中斷,以第一頻率接收所述第一中斷; 響應于所述第一中斷,將第一響應傳輸到所述第一控制器;以及 將第二響應傳輸到所述第二控制器,所述第二響應相對于所述第一頻率是非周期性的。
17.根據權利要求16所述的接口單元,其中,所述處理器進一步配置成在接收到所述第一中斷之后暫停傳輸所述第二響應。
18.根據權利要求16所述的接口單元,其中,所述處理器進一步配置成 接收來自所述第二控制器的第二中斷;以及 響應于所述第二中斷,將所述第二響應傳輸到所述第二控制器。
19.根據權利要求18所述的接口單元,其中,所述第一中斷和所述第二中斷中的至少一個包括數據收集命令,所述處理器進一步配置成 通過從至少一個輸入/輸出(I/o)模塊中獲取輸入數據來執行所述數據收集命令;以及 傳輸包括所述輸入數據的所述第一響應和所述第二響應中的至少一個。
20.根據權利要求18所述的接口單元,其中,所述第一中斷和所述第二中斷中的至少一個包括數據存儲命令,所述處理器進一步配置成通過將輸出數據存儲到至少一個輸入/輸出模塊來執行所述數據存儲命令。
全文摘要
運行控制系統包括通過多個控制器中的第一控制器將第一中斷重復地傳輸到至少一個接口單元,其中,第一中斷以第一頻率傳輸。在第一控制器處接收來自至少一個接口單元的、響應于第一中斷的第一響應,并且在多個控制器中的第二控制器處接收來自至少一個接口單元的第二響應,其中,第二響應相對于第一頻率是非周期性的。
文檔編號G05B19/418GK102985889SQ201180034611
公開日2013年3月20日 申請日期2011年6月22日 優先權日2010年7月14日
發明者W.H.呂肯巴赫, G.普拉特, G.通諾, M.葉恩斯基 申請人:通用電氣智能平臺有限公司