欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

自動化設(shè)備及更新方法

文檔序號:6631721閱讀:610來源:國知局
專利名稱:自動化設(shè)備及更新方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種用于控制和/或監(jiān)測技術(shù)過程的自動化設(shè)備,其具有一個用于存儲至少一個具有至少一個任務(wù)的應(yīng)用程序以及與過程和應(yīng)用程序相關(guān)的數(shù)據(jù)的存儲器,其中,在耦接一個冗余的自動化設(shè)備時,將該存儲器的內(nèi)容傳送至該冗余自動化設(shè)備的存儲器中。本發(fā)明還涉及一種用于對與該自動化設(shè)備通信相連的冗余自動化設(shè)備進(jìn)行更新的方法。
存儲程序控制裝置(Speicherprogrammierbare SteuerungSPS)是一種應(yīng)用廣泛、專用于單操作并由此而適用于非冗余操作的自動化設(shè)備的實現(xiàn)。一臺所謂的過程計算機(jī)或一臺比純粹辦公室用的個人計算機(jī)增加了一個專用的網(wǎng)絡(luò)部件、一種專用的屏蔽設(shè)施、一個緩沖存儲器和/或一個不間斷電源的所謂個人計算機(jī)也可以用作自動化設(shè)備。
自動化設(shè)備基本上和“標(biāo)準(zhǔn)計算機(jī)”一樣,至少包含一個執(zhí)行存儲在存儲器中的應(yīng)用程序的處理器。自動化設(shè)備與標(biāo)準(zhǔn)計算機(jī)相比其特殊性在于,自動化設(shè)備具有用于與被控制和/或被監(jiān)測的過程連接的裝置,特別是輸入/輸出裝置,如數(shù)字/模擬輸入接口及數(shù)字/模擬輸出接口。
與設(shè)計用于單操作的自動化設(shè)備相反,適用于與至少一個冗余的自動化設(shè)備(以下將稱之為后備自動化設(shè)備)進(jìn)行冗余操作的自動化設(shè)備,其不同之處在于其至少具有一個用于與配屬于它的冗余自動化設(shè)備進(jìn)行通信連接的裝置。這種裝置通常是一種接口,如一個使與所配屬的冗余自動化設(shè)備能夠進(jìn)行通信連接的串行/并行接口或總線接口。這類適用于冗余操作的自動化設(shè)備例如已由EP 0 497 147、EP0636956或DE 19624 302公知。
由EP 0 497 147公知了一種由兩個分裝置構(gòu)成的冗余自動化設(shè)備。每個分裝置都具有一個中央單元和一個存儲器,以及一個通信處理器,其中,兩個通信處理器通過一個通信連接相互連接。兩個分裝置執(zhí)行相同的應(yīng)用程序,并且為了保證該相同的應(yīng)用程序的同步處理,通過通信連接交換同步數(shù)據(jù)。
由EP0 636 956同樣公知了一種由兩個子系統(tǒng)(即一個原始自動化系統(tǒng)和一個附加自動化系統(tǒng))構(gòu)成的自動化系統(tǒng)。當(dāng)其中一個子系統(tǒng)發(fā)生故障時,將通過仍存在的子系統(tǒng)、即所述起始自動化系統(tǒng)實施所述技術(shù)過程。在更換了故障子系統(tǒng)、即所述附加自動化系統(tǒng)之后,須將其與所述原始自動化系統(tǒng)再次進(jìn)行耦接。為此,所述原始自動化系統(tǒng)和附加自動化系統(tǒng)均具有一個通信接口,該兩個子系統(tǒng)通過該接口得以通信地連接。原始自動化系統(tǒng)存儲器的內(nèi)容通過該通信接口被傳送到附加自動化系統(tǒng)的存儲器中。這種傳輸是通過保持原始自動化系統(tǒng)對技術(shù)過程的控制實現(xiàn)的,其中,傳輸或者是在原始自動化系統(tǒng)對時間要求不高的情況下進(jìn)行的,或者是連續(xù)地在所謂的時間片內(nèi)進(jìn)行的。
將第一設(shè)備/子系統(tǒng)的存儲器內(nèi)容傳輸?shù)饺哂嗟牡诙O(shè)備/子系統(tǒng)的存儲器也稱為“更新”。例如由DE 196 24 302所公知的一種更新方法,利用該方法在進(jìn)行維護(hù)工作時,將原始自動化系統(tǒng)的當(dāng)前數(shù)據(jù)傳輸至主要處于靜候狀態(tài)的附加自動化系統(tǒng)。
該公知的更新方法被劃分為兩個運行過程。在第一運行過程中,傳輸是通過連續(xù)讀出原始自動化系統(tǒng)存儲器的內(nèi)容,并將其寫入附加自動化系統(tǒng)的存儲器實現(xiàn)的。其中,在一個步驟中要讀出或要寫入的數(shù)據(jù)的范圍是由該過程所需的時間間隔和與待控制的過程有關(guān)的、該原始自動化系統(tǒng)的最大允許執(zhí)行周期來確定的。在進(jìn)行了一定數(shù)量的這種寫、讀過程之后,原始自動化系統(tǒng)的“基本數(shù)據(jù)”被傳送給附加自動化系統(tǒng)。但在此期間由于對技術(shù)過程的控制并未中斷,因此原始自動化系統(tǒng)存儲器中的數(shù)據(jù)仍在不斷地發(fā)生改變。在此期間改變的存儲器內(nèi)容將在另一個運行過程中被傳輸。為此在向原始自動化系統(tǒng)的存儲器寫入新的和/或改變了的數(shù)據(jù)時,也將相同的數(shù)據(jù)與位置信息一起寫入中間存儲器,并且在第二運行過程中,在對位置信息進(jìn)行分析之后,將中間存儲器的內(nèi)容傳輸至附加自動化系統(tǒng)的存儲器。
本發(fā)明要解決的技術(shù)問題是,提供一種適用于冗余操作的自動化設(shè)備,利用它能夠非常有效地實現(xiàn)冗余自動化設(shè)備或后備自動化設(shè)備的更新,而對對技術(shù)過程的繼續(xù)控制沒有明顯的干擾,并且不需要額外的硬件開銷。此外本發(fā)明還提供了一種尤其適于對與這樣一種自動化設(shè)備通信連接的冗余的自動化設(shè)備進(jìn)行更新的方法。
對于所述關(guān)于自動化設(shè)備的技術(shù)問題本發(fā)明是通過權(quán)利要求1的特征實現(xiàn)的。其優(yōu)選實施方式由引用該權(quán)利要求的從屬權(quán)利要求給出。
對于本發(fā)明的有關(guān)更新方法的技術(shù)問題本發(fā)明是通過權(quán)利要求4的特征實現(xiàn)的。相應(yīng)的實施方式由引用該權(quán)利要求的從屬權(quán)利要求給出。
本發(fā)明的優(yōu)點尤其在于,一方面為了更新無需中斷對技術(shù)過程的控制和/或監(jiān)測;另一方面即使是在對技術(shù)過程進(jìn)行控制和/或監(jiān)測期間,也能保持響應(yīng)時間的上限,即對過程狀態(tài)的改變作出響應(yīng)的時間間隔,其中,當(dāng)更新任務(wù)與其所屬的應(yīng)用程序任務(wù)一起所要求的運行時間過多時,更新任務(wù)將被終止。一旦更新任務(wù)被終止,將對技術(shù)過程的控制和/或監(jiān)測重新建立沒有更新要求的情況,從而使應(yīng)用程序能夠重新對技術(shù)過程的狀態(tài)變化做出響應(yīng)。
該自動化設(shè)備的存儲在存儲器中、并由處理器執(zhí)行的應(yīng)用程序包含至少一個所謂的任務(wù),即該應(yīng)用程序的一個運行單元,其運行(順序、持續(xù)時間)由操作系統(tǒng)的調(diào)度程序來確定。在自動化設(shè)備的存儲器中,除了應(yīng)用程序之外還存儲有與過程相關(guān)和應(yīng)用程序相關(guān)的數(shù)據(jù),例如過程狀態(tài)及應(yīng)用程序變量。
在連接了后備自動化設(shè)備之后,例如在對后備自動化設(shè)備進(jìn)行了維護(hù)之后,就可以將自動化設(shè)備存儲器的內(nèi)容傳輸至后備自動化設(shè)備的存儲器中(更新)。其中,這種傳輸是在自動化設(shè)備運行期間完成的,即在不中斷自動化設(shè)備對技術(shù)過程的控制的情況下完成的。
該更新方法分為兩個運行過程。在第一運行過程中,類似于由DE196 24 302所公知的更新方法,通過連續(xù)地讀出自動化設(shè)備存儲器的內(nèi)容并將其寫入后備自動化設(shè)備的存儲器來實現(xiàn)傳輸。其中,在一個步驟中要讀出或要寫入的數(shù)據(jù)的范圍是由該過程所需的時間間隔和與待控制的過程有關(guān)的、該自動化設(shè)備的最大允許執(zhí)行周期來確定的。在進(jìn)行了一定數(shù)量的這種寫、讀過程之后,自動化設(shè)備的“基本數(shù)據(jù)”被傳送給后備自動化設(shè)備。但在此期間由于對技術(shù)過程的控制并未中斷,因此自動化設(shè)備存儲器中的數(shù)據(jù)仍在不斷地發(fā)生改變。在此期間改變的存儲器內(nèi)容將在另一個更新過程中被傳輸。
繼續(xù)的更新是借助于專用的更新任務(wù)實現(xiàn)的,這些更新任務(wù)是為了傳輸每個任務(wù)所訪問的存儲器部分的內(nèi)容而為應(yīng)用程序的每個任務(wù)所配置的。還可以設(shè)置成,一個更新任務(wù)配屬于多個應(yīng)用程序的任務(wù)。其中,各更新任務(wù)在其所屬的任務(wù)執(zhí)行結(jié)束時被執(zhí)行。任務(wù)及其所配屬的更新任務(wù)的運行時間的總和應(yīng)大于任務(wù)本身的運行時間。
為了使更新對技術(shù)過程的控制沒有明顯的干擾,允許更新任務(wù)的運行以可識別的方式在邊界上推遲應(yīng)用程序的其它任務(wù)的開始。為使這一點得到保證,將對任務(wù)及其所屬的更新任務(wù)的運行時間總和進(jìn)行確定,并作為總運行時間來測量。當(dāng)測得的總運行時間超過了預(yù)先給定的或可預(yù)先給定的運行時間上限時,將結(jié)束更新任務(wù)的執(zhí)行,更新任務(wù)將被終止。
下面結(jié)合附圖對本發(fā)明的實施方式進(jìn)行詳細(xì)描述。其中,

圖1所示為一個具有用于實施技術(shù)過程的一個自動化設(shè)備和一個與此通信連接的冗余的自動化設(shè)備的自動化系統(tǒng)的示意圖,圖2至圖5所示分別為一個應(yīng)用程序的、具有不同優(yōu)先級的任務(wù)的時序圖,圖6所示為將該自動化設(shè)備存儲器的一個段的內(nèi)容傳送到相應(yīng)的冗余自動化設(shè)備的存儲器的示意圖,圖7所示為自動化設(shè)備的存儲器布局示意圖,其中,標(biāo)出了所述存儲器的由某一任務(wù)訪問的部分/段。
圖1示出了自動化系統(tǒng)AG、AG’,以及受其控制和/或監(jiān)測的技術(shù)過程TP。所述自動化系統(tǒng)AG、AG’具有至少一個自動化設(shè)備AG以及一個冗余自動化設(shè)備或后備自動化設(shè)備AG’。
自動化設(shè)備AG和后備自動化設(shè)備AG’均能夠?qū)嵤┧黾夹g(shù)過程。自動化設(shè)備AG和后備自動化設(shè)備AG’的不同僅僅是對設(shè)備AG和AG’各自的功能在語言描述上的不同。因此第一更新過程中的后備自動化設(shè)備AG’可能是一個在時間上稍后的另一更新過程中的自動化設(shè)備AG。
為了向技術(shù)過程TP發(fā)送命令和控制指示,也為了從技術(shù)過程接收信號和過程值,在自動化設(shè)備AG、AG’和技術(shù)過程TP之間設(shè)置了通信連接B。該通信連接B在圖1中作為總線B示例性地示出。該與技術(shù)過程TP的通信連接B也可以全部地或部分地采用常規(guī)的連線形式。
同樣,為了簡單起見,該連接過程的通信連接B也表示自動化設(shè)備AG和后備自動化設(shè)備AG’之間的通信連接B。通常,目前常用的總線連接B具有足夠的帶寬,以實現(xiàn)高效的內(nèi)部通信(自動化設(shè)備AG,后備自動化設(shè)備AG’)和外部((后備)自動化設(shè)備AG、AG’,技術(shù)過程TP)通信。但是,同樣也可以對內(nèi)部通信使用一條分開的總線,例如所謂的底板總線,以便用這種方式獲得很高的數(shù)據(jù)傳輸率,使總的更新速度加快。
此外,自動化設(shè)備AG、AG’分別具有存儲器M、M’,用于存儲至少一個具有至少一個任務(wù)T1、T2的應(yīng)用程序以及與過程相關(guān)和應(yīng)用程序相關(guān)的數(shù)據(jù)。
下面將由應(yīng)用程序的任務(wù)T1、T2是所謂的以固定的時間間隔(如每300ms)被執(zhí)行的周期性任務(wù)T1、T2出發(fā)進(jìn)行說明。只有當(dāng)任務(wù)T1、T2的運行時間本身不超過300ms且在周期性任務(wù)T1、T2須重新起動的時刻沒有其它任務(wù)T1、T2在執(zhí)行時,周期性任務(wù)T1、T2才能每300ms一次地周期性地被執(zhí)行。
第一個條件的滿足是通過應(yīng)用程序的程序設(shè)計來實現(xiàn)的,其中,對以例如300ms固定時間間隔運行的任務(wù)T1、T2,不設(shè)置其處理所需的運行時間超過300ms的任務(wù)。
第二個條件的滿足是在程序設(shè)計過程中間接實現(xiàn)的,尤其是如以上所述的,由任務(wù)管理的調(diào)度程序來實施。但是程序設(shè)計或程序須周密考慮調(diào)度程序用以確定具體的任務(wù)T1、T2執(zhí)行順序的優(yōu)先級的分配,以此作為使各個任務(wù)T1、T2在指定的時間間隔內(nèi)的執(zhí)行在事實上也是可行的基礎(chǔ)。
在此舉例對這樣的情況加以描述即對需要較多運行時間的輸入任務(wù)給以比重要的周期性報警任務(wù)高的優(yōu)先級,并因此而使對報警任務(wù)的調(diào)用在其時間間隔內(nèi)是不可能的。盡管總能按時到達(dá)調(diào)用報警任務(wù)的時刻,但由于報警任務(wù)的優(yōu)先級較低,只要有優(yōu)先級較高的輸入任務(wù)在執(zhí)行,就無法執(zhí)行報警任務(wù)。
圖2示出了一個具有兩個任務(wù)T1、T2的周期性(應(yīng)用)程序Ti的工作時序圖。所述任務(wù)T1、T2以固定的時間間隔運行,其中,任務(wù)T1每隔100ms、任務(wù)T2每隔225ms被執(zhí)行一次。該周期性程序Ti本身也可作為任務(wù),例如作為無固定時間間隔的任務(wù)。程序Ti的周期性在圖2中通過時刻t+275ms所圖示的程序Ti的“重新開始”示出。
為了確保被設(shè)置以固定時間間隔的任務(wù)T1、T2能在事實上分別按照預(yù)定的時間間隔的起始時刻起動,可以為任務(wù)T1、T2分配優(yōu)先級,其中,要優(yōu)先通過處理器處理的任務(wù)具有較高的優(yōu)先級。任務(wù)間的協(xié)調(diào)通過操作系統(tǒng)的調(diào)度程序?qū)崿F(xiàn)。
如果不分配優(yōu)先級,則如圖2所示,任務(wù)Ti一次起動之后就能永久執(zhí)行,至少是執(zhí)行至其終點。而其它任務(wù)T1、T2當(dāng)其不是直接由永久執(zhí)行任務(wù)Ti調(diào)用時,就不可能被執(zhí)行。但是對這種從另一個永久執(zhí)行任務(wù)Ti直接調(diào)用的任務(wù)T1、T2,不能或很難實現(xiàn)以固定的時間間隔執(zhí)行該任務(wù)T1、T2,除非任務(wù)Ti本身具有調(diào)度程序的全部功能。
操作系統(tǒng)中的調(diào)度程序簡化了對任務(wù)T1、T2和Ti的運行協(xié)調(diào)。調(diào)度程序了解每個任務(wù)T1、T2和Ti,并對每個任務(wù)T1、T2和Ti定義參數(shù),以及確定其運行的類型、持續(xù)時間和順序。
對于圖2所示的情況確定,任務(wù)T1、T2是周期性的任務(wù)T1、T2,其中,任務(wù)T1每隔100ms、任務(wù)T2每隔225ms被執(zhí)行一次。此外,為任務(wù)T1分配了比任務(wù)T2更高的優(yōu)先級。這一點在圖2中用圖形坐標(biāo)所在的位置表示。任務(wù)Ti是一個沒有固定時間間隔的周期性任務(wù)。每當(dāng)其到達(dá)終點時,就重新開始。任務(wù)Ti具有最低的優(yōu)先級。
在到達(dá)了應(yīng)執(zhí)行任務(wù)T1、T2的時刻時,例如t+100ms,t+200ms,t+225ms,t+300ms,t+400ms,t+450ms,t+500ms,…,調(diào)度程序?qū)⒅袛嗳蝿?wù)Ti的執(zhí)行,使當(dāng)時的任務(wù)T1、T2投入運行。
在時刻t+900ms,按照所選的例子須使任務(wù)T1(100ms時間間隔)和任務(wù)T2(225ms時間間隔)同時投入運行。但這是不可能的,因為處理器不能同時執(zhí)行第一任務(wù)T1和第二任務(wù)T2的指令。由于任務(wù)T1具有比任務(wù)T2高的優(yōu)先級,因此在此時刻以及相似的時刻將首先執(zhí)行優(yōu)先級較高的任務(wù)T1,然后接著執(zhí)行任務(wù)T2。只有當(dāng)任務(wù)T2也結(jié)束之后,才返回任務(wù)Ti。
從這種情況可以清楚地看到,即便是將任務(wù)T1、T2設(shè)置成以固定的時間間隔運行,但其在該固定時間間隔內(nèi)的實際運行由于系統(tǒng)固有的原因并不總是能得到保證的。為此允許任務(wù)T1、T2的起始時刻在一定范圍的內(nèi)延遲。
圖3示出了與任務(wù)T1、T2相對應(yīng)的更新任務(wù)T1A、T2A是以哪種方式,即在什么時刻投入運行的。其中,對任務(wù)T1、T2按照圖2重新進(jìn)行了顯示。另外,還示出了與任務(wù)T1相對應(yīng)的更新任務(wù)T1A,和與任務(wù)T2相對應(yīng)的更新任務(wù)T2A。為簡單起見,對每個所顯示的調(diào)用時刻,任務(wù)T1、T2、T1A、T2A應(yīng)具有各自的相同的運行時間。但任務(wù)T1、T2、T1A、T2A的運行時間在不同的調(diào)用時刻可以是不同的。
與任務(wù)T1相對應(yīng)的更新任務(wù)T1A具有比任務(wù)T1本身更高的優(yōu)先級。由此可以保證,更新任務(wù)T1A能夠緊接著任務(wù)T1的執(zhí)行而盡快投入運行。對于與任務(wù)T2相對應(yīng)的更新任務(wù)T2A情況也類似。
如圖3所示,所選擇的時間段正好給出這樣一種情況,即在這段時間中,任務(wù)T1、T2、T1A、T2A的運行時間沒有影響周期性任務(wù)T1、T2在其各起始時刻的執(zhí)行(即每隔100ms及每隔225ms)。執(zhí)行任務(wù)T1A、T2A所需的時間全部由任務(wù)Ti“負(fù)擔(dān)”。由圖可見,相對于圖2中任務(wù)Ti的重新開始時刻t+275ms,這里移到了時刻t+525ms。應(yīng)用程序的這種單個周期的延長不被認(rèn)為是關(guān)鍵的,因為應(yīng)用程序的周期時間本來就只在極少的情況下是常數(shù),且根據(jù)各個任務(wù)T1、T2所要求的執(zhí)行時間而有所不同。
“關(guān)鍵”情況出現(xiàn)在,當(dāng)更新任務(wù)T1A的執(zhí)行使按固定的時間間隔周期性運行的任務(wù)T2在預(yù)定起動時刻的起動成問題時。圖4示出了這種情況。
在圖4中,更新任務(wù)T1A的運行時間在時刻t+200ms相對于圖3有很小的延長。由此,更新任務(wù)T1A在時刻t+225ms,即實際必須起動任務(wù)T2的時刻仍在執(zhí)行。由于更新任務(wù)T1A的優(yōu)先級比任務(wù)T2的高,因此盡管已經(jīng)到達(dá)任務(wù)T2的起動時刻更新任務(wù)T1A也不會被中斷。只有當(dāng)更新任務(wù)T1A執(zhí)行結(jié)束時,任務(wù)T2才能投入運行。這樣就出現(xiàn)了這種情況,任務(wù)T2由于更新任務(wù)T1A的執(zhí)行而不能在實際為其設(shè)置的固定時間間隔內(nèi)被執(zhí)行。
如前所述,這種實際上不能準(zhǔn)確地保持固定的時間間隔的情況即便在沒有更新任務(wù)T1A、T2A的情況下也會出現(xiàn)。因此周期性任務(wù)T1、T2調(diào)用時刻的較小偏移總是允許的且常常不被注意。對各個周期性任務(wù)T1、T2在個別情況下調(diào)用時刻的哪些偏移是允許的并不是預(yù)先確定的。而是在開發(fā)用于控制和/或監(jiān)測各技術(shù)過程TP的程序時,根據(jù)調(diào)用各個任務(wù)T1、T2所要求的時間順序,尤其是考慮待控制和/或監(jiān)測的技術(shù)過程TP的需要來確定最大允許偏移的量。
對于一個由具有較少任務(wù)且對時間要求不嚴(yán)格的任務(wù)的程序控制的較慢的過程來說,周期性任務(wù)調(diào)用時刻的約為若干個100ms的偏移是完全可以允許的;但這對于較快的、對時間要求嚴(yán)格的過程來說,就會造成負(fù)面影響。因此要確定最大運行時間t11、t21,即任務(wù)T1、T2及配屬于其的更新任務(wù)T1A、T2A的運行時間和的上限。
這是程序設(shè)計技術(shù),原則上沒有其它用于確定調(diào)用時刻(即時間間隔)、周期性任務(wù)T1、T2、或其優(yōu)先級的工作步驟,其中優(yōu)先級主要是根據(jù)各技術(shù)過程TP的情況來設(shè)置,并且同樣是不能預(yù)先確定的。為此可將最大運行時間t11設(shè)置為50ms。在圖4所示的情況中未達(dá)到該最大運行時間t11。因此更新任務(wù)T1A不會被中斷。只要在更新過程中沒有更新任務(wù)T1A、T2A被中斷,總的更新過程將會繼續(xù)。
圖5所示為運行時間和t1、即任務(wù)T1及與之相對應(yīng)的更新任務(wù)T1A的運行時間的和,超過了確定的最大運行時間(例如50ms)的情況。在這種情況下,更新任務(wù)T1A的執(zhí)行被中斷,在這里更新任務(wù)T1A被終止。
對最大運行時間t11、t21的監(jiān)測例如是通過具有較高優(yōu)先級的、為此而設(shè)置的監(jiān)測任務(wù)來實現(xiàn)的。該監(jiān)測任務(wù)以較短的時間間隔運行,能夠監(jiān)測運行時間和t1、t2,以及對超過最大運行時間t11、t21進(jìn)行識別。
通過終止更新任務(wù)T1A可以保證周期性任務(wù)T2的執(zhí)行不被錯誤地延遲。隨著更新任務(wù)T1A的終止,“等待的”任務(wù)T2成為此時具有最高優(yōu)先級的可以運行的任務(wù)。因此這是由調(diào)度程序間接地執(zhí)行的。即使是在更新過程中,也可以保持或保證一定的反應(yīng)時間,即對技術(shù)過程TP中的某一確定的變化(例如在調(diào)整過程中測量值的變化)作出反應(yīng)的時間。
如果在第二運行過程中,即通過更新任務(wù)T1A、T2A傳輸存儲器內(nèi)容的更新階段中,一個更新任務(wù)T1A、T2A由于超過運行時間上限t11、t21而被中止,則該第二運行過程將總地被中斷并被刷新,在必要時,會在一個預(yù)先給定的或可預(yù)先給定的“弛豫時間”(如一分鐘)之后開始。
只有當(dāng)在該第二運行過程中所有更新任務(wù)T1A、T2A的執(zhí)行都未超過運行時間上限t11、t21時,即更新任務(wù)通過執(zhí)行到其程序結(jié)束、并在隨后的步驟中傳輸了應(yīng)用程序在更新期間所訪問的一個特定存儲區(qū)域的內(nèi)容后而自然終止時,更新才總體上被認(rèn)為是成功地結(jié)束。
后備自動化設(shè)備AG’的更新是這樣實現(xiàn)的,其中,首先連續(xù)讀出自動化設(shè)備AG的存儲器M的內(nèi)容,然后將其寫入后備自動化設(shè)備AG’的存儲器M’,以實現(xiàn)傳輸?shù)哪康?。該更新過程的第一運行過程如圖6所示。
根據(jù)圖6,自動化設(shè)備AG存儲器M的內(nèi)容被連續(xù)讀出,并被傳輸至后備自動化設(shè)備AG’的存儲器M’。這在圖中是用虛線或?qū)嵕€框出的存儲器M的部分表示的。數(shù)據(jù)傳輸是通過設(shè)置在自動化設(shè)備AG和后備自動化設(shè)備AG’之間的、在圖6中用箭頭表示的通信連接B(例如一條總線)實現(xiàn)的。
在這一步驟中將“基本數(shù)據(jù)”傳輸給后備自動化設(shè)備AG’。這些基本數(shù)據(jù)包括例如在自動化設(shè)備AG上運行的應(yīng)用程序、以及技術(shù)過程TP的所謂外設(shè)或過程結(jié)構(gòu),進(jìn)一步還可能包括某種應(yīng)用程序的不規(guī)律變化的數(shù)據(jù)(例如運行參數(shù)、接收數(shù)據(jù)等)。
在更新期間,即在傳輸“基本數(shù)據(jù)”期間,自動化設(shè)備AG對技術(shù)過程TP的控制保持不變,而存儲器M的內(nèi)容連續(xù)地改變。存儲器M中的這種變化在圖6中用存儲器M中帶有交叉線的區(qū)域表示。
在傳輸“基本數(shù)據(jù)”時,將考慮所有在該剛剛被讀出并被傳輸?shù)亩巍爸啊卑l(fā)生的變化,因為在其中發(fā)生變化的段也與所有前面的段一樣被讀出并被完整地傳輸。在圖6中這是位于剛被傳輸過的段之前的段。而圖6中所示的另外三個改變了的區(qū)域在傳輸基本數(shù)據(jù)時不被考慮,因為相應(yīng)的變化只有在所涉及的段的內(nèi)容被傳輸之后才會發(fā)生作用。以所描述的方式多次重復(fù)傳輸基本數(shù)據(jù)不會帶來更好的結(jié)果,因為存儲器M中的變化是連續(xù)的,卻不是確定的。
作為能夠?qū)Ω缕陂g發(fā)生的待傳輸?shù)拇鎯ζ鱉的內(nèi)容變化也能加以考慮的補(bǔ)充更新過程,現(xiàn)在將由應(yīng)用程序的各個任務(wù)T1、T2所屬的更新任務(wù)T1A、T2A起動這一過程。
如圖7所示,任務(wù)T1、T2不是訪問總存儲器M,而只是訪問自動化設(shè)備AG存儲器M的一部分M1、M2。任務(wù)T1、T2分別訪問的存儲器部分M1、M2將由其所屬的更新任務(wù)T1A、T2A以與在第一更新過程中傳輸基本數(shù)據(jù)類似的方式連續(xù)讀出(圖中通過存儲器部分M1、M2中不同的被框出的區(qū)域來表示),并傳送到后備自動化設(shè)備AG’中的存儲器M’中(圖中未示出)。其中引入了附加位置信息,該信息給出存儲器M中存儲器部分M1、M2中剛被讀出的區(qū)域的位置,并以此保證剛被讀出的區(qū)域的內(nèi)容也被寫入存儲器M’中相應(yīng)的地址。
即便借助于更新任務(wù)T1A、T2A,由任務(wù)T1、T2所訪問的存儲器部分M1、M2的內(nèi)容的傳輸基本上是連續(xù)進(jìn)行的,這種連續(xù)的傳輸也是在更新任務(wù)T1A、T2A的調(diào)用期間完成的。在更新任務(wù)T1A、T2A的程序代碼中也可以進(jìn)行設(shè)置,使存儲器部分M1、M2內(nèi)容的傳輸完整地用一個讀寫過程來完成。
為了使更新任務(wù)T1A、T2A只傳輸由任務(wù)T1、T2所訪問的存儲器部分M1、M2的內(nèi)容,在更新任務(wù)T1A、T2A內(nèi)設(shè)置了用于標(biāo)識各存儲器部分M1、M2的參數(shù),通常這些參數(shù)是偏移量和大小或者是首、尾地址。這些參數(shù)可以在程序設(shè)計過程中被分別賦值。
作為另一種選擇還可考慮一種方法,其中,對每個任務(wù)T1、T2對存儲器M的訪問在記錄存儲器T1M、T2M中加以記錄,并且更新任務(wù)T1A、T2A傳送存儲器M1、M2中根據(jù)記錄存儲器T1M、T2M的內(nèi)容可被識別出為待傳輸?shù)牟糠?。這避免了在程序設(shè)計過程中固定設(shè)置存儲器部分M1、M2的參數(shù)而可能產(chǎn)生的錯誤,并具有這樣的優(yōu)點,即更新任務(wù)T1A、T2A無需傳送存儲器部分M1、M2的全部內(nèi)容,而只是傳送實際上改變了的部分。
由圖6中所示的記錄存儲器T1M、T2M可以看出,記錄存儲器T1M、T2M位于其內(nèi)容被傳送給冗余自動化設(shè)備AG’的存儲器M之外,此外,不需要傳輸記錄存儲器T1M、T2M的內(nèi)容。記錄存儲器T1M、T2M被作為存儲器M的一部分來實現(xiàn),因此圖6中所示的存儲器M和記錄存儲器T1M、T2M的分離僅僅是為了清楚起見而標(biāo)出的。存儲器M的待傳輸區(qū)域由首、尾地址或起始地址加由此地址開始的待傳輸?shù)臄?shù)據(jù)量給出。不需傳送的存儲器內(nèi)容,如所述記錄存儲器T1M、T2M的內(nèi)容因此可以存放在以這種方式設(shè)置的區(qū)域之外。
當(dāng)在第二更新過程中沒有更新任務(wù)T1A、T2A由于超過運行時間上限t11、t21而終止時,則在還有待傳輸?shù)摹⒂蓱?yīng)用程序在更新期間訪問的特定存儲器部分的內(nèi)容的前提下,該次更新成功結(jié)束。后備自動化設(shè)備AG’的存儲器M’的內(nèi)容與自動化設(shè)備AG的存儲器M的內(nèi)容相對應(yīng)。
通過一個從自動化設(shè)備AG到后備自動化設(shè)備AG’的信號可以指示該更新成功結(jié)束。于是,當(dāng)在后備自動化設(shè)備AG’中啟動應(yīng)用程序的副本時,并且該后備自動化設(shè)備AG’依據(jù)該應(yīng)用程序的副本而實施與自動化設(shè)備AG相同的動作時,可進(jìn)而使數(shù)據(jù)的一致性得到保證。因此,后備自動化設(shè)備AG’例如在必須更換自動化設(shè)備AG的情況下,可以立即接替對技術(shù)過程TP的控制。
利用更新任務(wù)分別傳輸存儲器部分M1、M2的內(nèi)容是具有優(yōu)點的,因為各存儲器部分內(nèi)容的改變只發(fā)生在當(dāng)前任務(wù)T1、T2的運行期間,而不可能發(fā)生在更新任務(wù)T1A、T2A運行期間。因此更新任務(wù)T1A、T2A可以總是完整地傳輸存儲器部分M1、M2的內(nèi)容,并保證在更新任務(wù)T1A、T2A的末尾各存儲器部分M1、M2的內(nèi)容已經(jīng)被完整地傳輸,而無需為這些存儲器部分的內(nèi)容在此期間的改變重新進(jìn)行傳輸。
下面將對一種在至此所述的實施方式中特別是與圖3所示的情況相關(guān)的實施方式的特殊情況進(jìn)行說明。根據(jù)圖3,從時刻t+0ms出發(fā),更新任務(wù)T1A在更新任務(wù)T2A第一次被調(diào)用之前兩次被調(diào)用并完整地被執(zhí)行。在全部更新任務(wù)T1A、T2A都能被完整地執(zhí)行而認(rèn)為更新成功結(jié)束之后,須將當(dāng)前更新任務(wù)T1A、T2A被完整地執(zhí)行的事實存儲起來。在圖3所示的情況中,將約在時刻t+125ms為更新任務(wù)T1A設(shè)置一個標(biāo)識更新任務(wù)T1A完整地被執(zhí)行的“標(biāo)記”。在時刻t+250ms將為更新任務(wù)T2A設(shè)置一個相應(yīng)的標(biāo)記。由于沒有其它的更新任務(wù)T1A、T2A,因此以此表示更新過程的成功結(jié)束。第二更新過程約在時刻t+250ms結(jié)束。盡管在圖3、4、5中相應(yīng)地示出了更新任務(wù)T1A、T2A被再次啟動的情況,但這不是必須的。
然而在第二更新過程結(jié)束之前有一個已成功完成運行的更新任務(wù)T1A、T2A被重新起動時,則出現(xiàn)了需特殊處理的情況。在圖5中示出了這種情況。在時刻t+125ms更新任務(wù)T1A被執(zhí)行并相應(yīng)地設(shè)置了標(biāo)記。在時刻t+250ms由于第二更新過程尚未結(jié)束,故重新被調(diào)用的更新任務(wù)T1 A由于超過預(yù)先給定的運行時間上限t11而終止。在時刻t+275ms將為被執(zhí)行的更新任務(wù)T2A設(shè)置相應(yīng)的標(biāo)記。
這里設(shè)置了兩個標(biāo)記,即對更新任務(wù)T1A的第一次執(zhí)行的標(biāo)記和對更新任務(wù)T2A的唯一一次執(zhí)行的標(biāo)記,由此更新過程應(yīng)是成功結(jié)束了。但實際上在相關(guān)任務(wù)T1所訪問的存儲器M的存儲器部分M1的全部內(nèi)容被傳輸之前,更新任務(wù)T1A就已經(jīng)終止了。因此被傳輸?shù)目赡懿皇窃摯鎯ζ鞑糠諱1的全部變化,從而在這種情況下不能認(rèn)為該更新已經(jīng)結(jié)束。
然而所要求的特殊處理是很容易做到的,即在與各更新任務(wù)T1A、T2A相對應(yīng)的任務(wù)T1、T2被重新調(diào)用時,將為各更新任務(wù)T1A、T2A所配置的標(biāo)記復(fù)位。這對于上述情況意味著,更新任務(wù)T1A的標(biāo)記在時刻t+125ms被置位,而在時刻t+200ms被復(fù)位。即便是當(dāng)在時刻t+275ms更新任務(wù)T2A的標(biāo)記被置位,更新也因為缺少更新任務(wù)T1A的標(biāo)記而仍未結(jié)束。實際上該更新過程直到時刻t+375ms才結(jié)束,即更新任務(wù)T1 A的標(biāo)記被置位且更新任務(wù)T2A的標(biāo)記尚未被復(fù)位的最早時刻。
對于按照上述本發(fā)明的優(yōu)選實施方式使用記錄存儲器T1M、T2M的情況,在更新任務(wù)T1A、T2A每次完整地執(zhí)行之后,分別將記錄存儲器T1M、T2M中的內(nèi)容復(fù)位,或標(biāo)記為無效。
另一方面,本發(fā)明還涉及對這種情況的處理其中,有一個特殊的為故障處理或故障響應(yīng)所設(shè)置的任務(wù),即F任務(wù),該任務(wù)具有較低的優(yōu)先級,由于更新任務(wù)T1A、T2A的運行時間之和使其實際上在預(yù)定的固定時間間隔內(nèi)無法被執(zhí)行,因為其優(yōu)先級較低,而具有較高優(yōu)先級的可運行的任務(wù)T1、T2以及與其相對應(yīng)的更新任務(wù)T1A、T2A將被“優(yōu)先”執(zhí)行。
對于這種情況所采取的措施是,具有較高優(yōu)先級的任務(wù)T1、T2的更新任務(wù)T1A、T2A,優(yōu)選的是任務(wù)T1的更新任務(wù)T1A具有最高優(yōu)先級,在其本身被執(zhí)行之前,短時間地、相應(yīng)地抑制更新任務(wù)T1A,將F任務(wù)的優(yōu)先級置為使其立即被執(zhí)行的值。以這種方式可以保證,在更新中該低優(yōu)先級的特殊F任務(wù)的響應(yīng)特性也是可預(yù)見的,因為該任務(wù)的調(diào)用要通過更新任務(wù)T1A、T2A的附加執(zhí)行,其延遲不會超過所允許的時間。
由此提供了一種帶有面向任務(wù)的應(yīng)用程序的自動化設(shè)備,其存儲器內(nèi)容可以在不中斷操作的情況下傳輸給冗余的自動化設(shè)備。在常規(guī)的基本數(shù)據(jù)傳輸之后,借助于為各任務(wù)所配置的更新任務(wù)來傳輸運行期間改變的數(shù)據(jù),其中,更新任務(wù)僅傳輸存儲器內(nèi)容中由各任務(wù)所訪問的部分。
權(quán)利要求
1.一種用于控制和/或監(jiān)測技術(shù)過程(TP)的自動化設(shè)備(AG),-其具有一個用于存儲至少一個帶有至少一個任務(wù)(T1,T2)的應(yīng)用程序(Ti)以及與過程相關(guān)和應(yīng)用程序相關(guān)的數(shù)據(jù)的存儲器(M),-其中,通過耦接一個冗余的自動化設(shè)備(AG’)將該存儲器(M)的內(nèi)容傳送到該冗余自動化設(shè)備(AG’)的存儲器(M’)中,其特征在于-為了傳送任務(wù)(T1,T2)所訪問的存儲器(M)的部分(M1,M2)的內(nèi)容,為每個任務(wù)(T1,T2)配置了更新任務(wù)(T1A,T2A),以及-當(dāng)任務(wù)(T1,T2)和更新任務(wù)(T1A,T2A)的運行時間超過預(yù)先給定的或可預(yù)先給定的運行時間上限(t11,t21)時,終止該更新任務(wù)(T1A,T2A)。
2.根據(jù)權(quán)利要求1所述的自動化設(shè)備,其中,將各任務(wù)(T1,T2)的每次對存儲器(M)的訪問記錄在記錄存儲器(T1M,T2M)中,其中,借助于所述更新任務(wù)(T1A,T2A)對存儲器(M)中根據(jù)各記錄存儲器(T1M,T2M)的內(nèi)容可識別為待傳輸?shù)牟糠?M1,M2)進(jìn)行傳輸。
3.根據(jù)權(quán)利要求1或2所述的自動化設(shè)備,其中,所述更新任務(wù)(T1A,T2A)的優(yōu)先級高于該更新任務(wù)(T1A,T2A)所屬的任務(wù)(T1,T2)的優(yōu)先級。
4.一種用于對與自動化設(shè)備(AG)通信相連的冗余自動化設(shè)備(AG’)在對技術(shù)過程(TP)進(jìn)行控制和/或監(jiān)測期間進(jìn)行更新的方法,其中,每個自動化設(shè)備(AG,AG’)各具有一個存儲器(M,M’),其中,在自動化設(shè)備(AG)的存儲器(M)中存儲有至少一個帶有至少一個任務(wù)(T1,T2)的應(yīng)用程序(Ti)以及與過程相關(guān)和應(yīng)用程序相關(guān)的數(shù)據(jù),以及其中在第一更新過程中將自動化設(shè)備(AG)的存儲器(M)的內(nèi)容連續(xù)地傳輸?shù)饺哂嘧詣踊O(shè)備(AG’)的存儲器(M’)中,其特征在于在第二更新過程中,借助于配屬于任務(wù)(T1,T2)的更新任務(wù)(T1A,T2A)將所述存儲器(M)中被該任務(wù)(T1,T2)所訪問的部分(M1,M2)的內(nèi)容傳輸?shù)饺哂嘧詣踊O(shè)備(AG’)的存儲器(M’)中,當(dāng)任務(wù)(T1,T2)和更新任務(wù)(T1A,T2A)的運行時間超過預(yù)先給定的或可預(yù)先給定的運行時間上限(t11,t21)時,終止該更新任務(wù)(T1A,T2A)。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,對任務(wù)(T1,T2)每次對存儲器(M)的訪問進(jìn)行記錄,并且所述更新任務(wù)(T1A,T2A)對存儲器(M)中根據(jù)所述記錄可識別出為待傳輸?shù)牟糠?M1,M2)進(jìn)行傳輸。
6.根據(jù)權(quán)利要求4或5所述的方法,其特征在于所述更新任務(wù)(T1A,T2A)的優(yōu)先級高于該更新任務(wù)(T1A,T2A)所屬的任務(wù)(T1,T2)的優(yōu)先級。
7.根據(jù)權(quán)利要求4至6中任一項所述的方法,其特征在于當(dāng)一個更新任務(wù)(T1A,T2A)由于超過運行時間上限(t11,t21)而被終止時,所述第二更新過程將重新被起動。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于所述第二更新過程在預(yù)先給定的或可預(yù)先給定的馳豫時間之后被重新起動。
全文摘要
提供了一種包含面向任務(wù)的應(yīng)用程序的自動化設(shè)備(AG),其存儲器內(nèi)容(M)在不中斷操作的情況下被傳送至一個冗余的自動化設(shè)備(AG’)。在一次常規(guī)的基本數(shù)據(jù)傳輸之后,借助于配屬于各任務(wù)(T1,T2)的更新任務(wù)(T1A,T2A)傳輸在運行期間改變了的數(shù)據(jù),其中,只傳輸存儲器(M)的內(nèi)容中被各任務(wù)(T1,T2)所訪問的部分(M1,M2)。
文檔編號G06F9/46GK1420999SQ00818219
公開日2003年5月28日 申請日期2000年11月14日 優(yōu)先權(quán)日1999年11月15日
發(fā)明者赫伯特·巴塞爾, 于爾根·拉福希, 拉爾夫·盧伯, 約瑟夫·里澤爾 申請人:西門子公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
庐江县| 竹山县| 奉化市| 湖口县| 行唐县| 吉木乃县| 台安县| 施秉县| 吴川市| 卓尼县| 上栗县| 柯坪县| 南川市| 临潭县| 徐州市| 卢龙县| 宁都县| 桂东县| 盘锦市| 阳东县| 通道| 柳林县| 得荣县| 黄浦区| 衡东县| 大理市| 朝阳县| 凌海市| 石渠县| 抚顺市| 盐边县| 金寨县| 城固县| 威海市| 定边县| 炉霍县| 英德市| 沅陵县| 仙居县| 清远市| 涞水县|