西門子濾波器6SL3000-0BE21-6DA0現(xiàn)貨供應 當后2種故障發(fā)生時,發(fā)生故障的ET200M從站的備IMl53將檢測到主IMl53故障,自動將自己切換為主IMl53。主CPU將因為與故障IMl53失去連接而引發(fā)OB86(故障診斷)中斷,并在中斷中調(diào)用診斷模塊FCl02完成所有從站的切換,并將自己置為備用。然后,主CPU將故障信息發(fā)送到備CPU。備CPU收到故障信息后將自己切換成主CPU。這時的切換時間為 (3) 式中tR為OB86中斷響應時間,CPU315—2DP為1 ms;tE為OB86執(zhí)行時問;ts為故障狀態(tài)發(fā)送時間;tD為數(shù)據(jù)接收完畢到備站切換成主站的時間間隔。 因為OB86中只調(diào)用FCl02診斷模塊,所以tE由FCl02的執(zhí)行時間決定。為分析OB86中調(diào)用FCl02時FCl02的執(zhí)行順序,對FCl02進行了適當?shù)男薷囊员悴杉瘮?shù)據(jù)。這些修改主要包括:在FCl02的開始加入采集狀態(tài)程序段;在跳轉指令處采集跳轉條件。在手動觸發(fā)一些故障之后,對得到的數(shù)據(jù)進行分析便得到了FCl02的執(zhí)行順序。在各個代碼段兩端插入讀系統(tǒng)時間功能塊,對FCl02的程序執(zhí)行時間進行分段測量。結果如表1所示(表中, 為SFC58執(zhí)行時間;t(2ss)8為2次SFC58執(zhí)行時間;t’為其余時間;t(PC102)為FCl02總執(zhí)行時間)。 測量結果中FCl02執(zhí)行時間并不等于各個時間段之和,這是因為讀系統(tǒng)時間功能塊的測量精度只能達到l ms。但從表中仍不難看出FCl02執(zhí)行時間主要集中在調(diào)用系統(tǒng)功能SFC58向ET200M寫數(shù)據(jù)(控制從站切換)的操作上,SFC58的調(diào)用次數(shù)等于ET200M從站個數(shù),因此可以近似得出tE=3 ms×ET200M從站個數(shù)。 式(3)中ts與主CPU的OB86中斷產(chǎn)生的時刻有很大關系。 如果主CPU在調(diào)用FB101執(zhí)行發(fā)送功能之前產(chǎn)生OB86中斷,則在發(fā)送數(shù)據(jù)時主CPU直接把故障狀態(tài)發(fā)送給備站,在這種情況下ts最短,為發(fā)送一次數(shù)據(jù)所用時間tt,即 (4) 若主CPU調(diào)用FBl01執(zhí)行完發(fā)送功能時產(chǎn)生OB86中斷,則主CPU要把先前數(shù)據(jù)發(fā)送完畢才能發(fā)送故障狀態(tài)到備站。在這種情況下,由于先前數(shù)據(jù)發(fā)送完畢的時刻不同,ts也會得到不同的值。 a.若先前數(shù)據(jù)發(fā)送完畢在主CPU調(diào)州FB 101執(zhí)行發(fā)送功能之前,將立即發(fā)送主站的狀態(tài),則 (5) b.若先前數(shù)據(jù)發(fā)送完畢在主CPU執(zhí)行完發(fā)送功能之后,則要等到下個周期調(diào)用發(fā)送功能時才能發(fā)送主站的故障狀態(tài)。此時,ts是最長的。 (6) 式(3)中tD與備站接收完故障狀態(tài)的時刻有密切關系。 若數(shù)據(jù)接收完成是在備CPU調(diào)用FBl01執(zhí)行接收功能之前,則備CPU將馬上得到主CPU狀態(tài),并在調(diào)用發(fā)送功能時備CPU切換成主CPU。此時tD最小,僅為一個FBl01的執(zhí)行時間,即 (7) 若數(shù)據(jù)接收完成是在備CPU調(diào)用FBl01執(zhí)行接收功能之后,則備CPU要等到下個周期調(diào)用接收功能時才能獲得主站的狀態(tài),并在調(diào)用發(fā)送功能時切換成主CPU。此時tD是最大的。 (8) 由以上分析可知,在以下2種情況將得到這2類故障主備CPU切換時間的極限值。 a.如果故障發(fā)生后主CPU馬上發(fā)送故障狀態(tài),并且備CPU接收完數(shù)據(jù)是在備CPU調(diào)用接收功能之前,主備切換時間是最短的。 (9) b.如果故障發(fā)生時主CPU已經(jīng)開始發(fā)送數(shù)據(jù)。并且此數(shù)據(jù)發(fā)送完畢是在主CPU調(diào)用完發(fā)送數(shù)據(jù)功能之后,而備CPU接收完數(shù)據(jù)是在備CPU調(diào)用完接收功能時,主備切換時問是最長的。
|