6ES7315-7TJ10-0AB0安裝調(diào)試
生產(chǎn)設(shè)備常常要求具有上下、左右、前后等正反方向的運(yùn)動(dòng),這就要求電動(dòng)機(jī)能正反向工作,對(duì)于交流感應(yīng)電動(dòng)機(jī),一般借助接觸器改變定子繞組相序來(lái)實(shí)現(xiàn)。在該控制線路中,KM1 為正轉(zhuǎn)交流接觸器,KM2 為反轉(zhuǎn)交流接觸器,SB1 為停止按鈕、SB2 為正轉(zhuǎn)控制按鈕,SB3 為反轉(zhuǎn)控制按鈕。KM1、KM2 常閉觸點(diǎn)相互閉鎖,當(dāng)按下SB2 正轉(zhuǎn)按鈕時(shí),KM1 得電,電機(jī)正轉(zhuǎn);KM1 的常閉觸點(diǎn)斷開反轉(zhuǎn)控制回路,此時(shí)當(dāng)按下反轉(zhuǎn)按鈕,電機(jī)運(yùn)行方式不變;若要電機(jī)反轉(zhuǎn),必須按下SB1停止按鈕,正轉(zhuǎn)交流接觸器失電,電機(jī)停止,然后再按下反轉(zhuǎn)按鈕,電機(jī)反轉(zhuǎn)。若要電機(jī)正轉(zhuǎn),也必須先停下來(lái),再來(lái)改變運(yùn)行方式。這樣的控制線路的好處在于避免誤操作等引起的電源短路故障。
PLC 控制電機(jī)正反轉(zhuǎn)I/O 分配及硬件接線
1、接線:按照控制線路的要求,將正轉(zhuǎn)按紐、反轉(zhuǎn)按紐和停止按紐接入PLC 的輸入端,將正轉(zhuǎn)繼電器和反轉(zhuǎn)繼電器接入PLC 的輸出端。注意正轉(zhuǎn)、反轉(zhuǎn)控制繼電器必須有互鎖。
2、編程和下載:在個(gè)人計(jì)算機(jī)運(yùn)行編程軟件STEP 7 Micro-WIN4.0,首先對(duì)電機(jī)正反轉(zhuǎn)控制程序的I/O 及存儲(chǔ)器進(jìn)行分配和符號(hào)表的編輯,然后實(shí)現(xiàn)電機(jī)正反轉(zhuǎn)控制程序的編制,并通過(guò)編程電纜傳送到PLC 中。在STEP 7 Micro-WIN4.0 中,單擊“查看"視圖中的“符號(hào)表",彈出圖所示窗口,在符號(hào)欄中輸入符號(hào)名稱,中英文都可以,在地址欄中輸入寄存器地址
在工業(yè)自動(dòng)化系統(tǒng)中,為了使系統(tǒng)長(zhǎng)期穩(wěn)定可靠地運(yùn)行,大量選用可編程邏輯控制器(PLC)作為控制器,甚至在此基礎(chǔ)上組建冗余系統(tǒng)進(jìn)一步提高系統(tǒng)的可靠性。冗余的分類方式很多。目前,采用的PLC冗余方式分為2種,即軟冗余和硬冗余。西門子公司在這2方面均給出了解決方案。基于S7-400H的硬冗余的可靠性高,但構(gòu)建系統(tǒng)成本也較高。而基于S7-300或S7-400的軟冗余是一種綜合考慮提高可靠性和降低成本的折中方案。目前,軟冗余系統(tǒng)已經(jīng)在污水處理、冶金、化工等控制工程中得到了普遍應(yīng)用。但目前對(duì)于軟冗余的性能,仍缺乏系統(tǒng)的研究。文中首先敘述西門子PLC軟冗余系統(tǒng)的實(shí)現(xiàn)原理,然后重點(diǎn)分析主備切換時(shí)間和數(shù)據(jù)同步時(shí)間,以便為類似控制系統(tǒng)設(shè)計(jì)提供參考依據(jù)。
6ES7315-7TJ10-0AB0安裝調(diào)試 1、 軟冗余實(shí)現(xiàn)原理
典型的PLC軟冗余系統(tǒng)組成案例如圖1所示。
圖1 典型的PLC軟冗余系統(tǒng)組成
在系統(tǒng)運(yùn)行時(shí)2個(gè)CPU均啟動(dòng),但只有主CPU執(zhí)行控制命令,備用CPU檢測(cè)主CPU狀態(tài),時(shí)刻準(zhǔn)備接替主CPU繼續(xù)工作。與主CPU通信的IMl 53—2模塊處于激活狀態(tài)使主CPU能訪問(wèn)I/0模塊。當(dāng)系統(tǒng)發(fā)生特定故障時(shí),系統(tǒng)可以實(shí)現(xiàn)主備切換,備站接替主站繼續(xù)運(yùn)行。這些故障包括:主機(jī)架電源、背板總線等故障;CPU故障;Profibus現(xiàn)場(chǎng)總線網(wǎng)絡(luò)故障;ET200M站的通信接口模塊IMl53故障。
PLC軟冗余系統(tǒng)要實(shí)現(xiàn)軟冗余功能,需要存程序中調(diào)用冗余軟件包的功能模塊,其主要包括:初始化冗余系統(tǒng)運(yùn)行參數(shù)的FCl00模塊;故障診斷、主備切換的FCl02模塊;發(fā)送/接收數(shù)據(jù)的FBl03模塊;調(diào)用FBl03進(jìn)行數(shù)據(jù)同步、分析系統(tǒng)狀態(tài)的FBl01模塊。帶有冗余功能的程序結(jié)構(gòu)見(jiàn)圖2。
圖2 帶有冗余功能的程序結(jié)構(gòu)
在PLC每個(gè)循環(huán)執(zhí)行周期中,主系統(tǒng)先凋用FBl01接收并分析備系統(tǒng)狀態(tài),然后執(zhí)行冗余程序,最后再調(diào)用FBl01將需要同步的數(shù)據(jù)發(fā)送到備系統(tǒng)。備系統(tǒng)先調(diào)用FBl01接收并分析主系統(tǒng)狀態(tài),跳過(guò)冗余程序,然后將備系統(tǒng)狀態(tài)發(fā)送到主系統(tǒng)。需注意的是,實(shí)現(xiàn)冗余功能的最重要模塊FBl01執(zhí)行時(shí)先分析主備系統(tǒng)狀態(tài),然后再發(fā)送數(shù)據(jù)(或接收數(shù)據(jù))。由于軟件是順序執(zhí)行,將導(dǎo)致接收到對(duì)方故障信息后,對(duì)故障處理的滯后。軟件順序執(zhí)行機(jī)制是導(dǎo)致軟冗余切換時(shí)間較長(zhǎng)的一個(gè)重要原因。
2、主備切換時(shí)間分析
主備切換時(shí)間是指系統(tǒng)發(fā)生故障到備站接替主站正常丁作所需要的時(shí)間。
2.1 主CPU或電源模塊故障分析
當(dāng)前2種故障發(fā)生時(shí),ET200M站的主通信接口模塊IMl53與主CPU失去連接。自動(dòng)在主備通信接口模塊IM]53之間實(shí)現(xiàn)切換。同時(shí)備CPU在向主CPU發(fā)送備站狀態(tài)時(shí)將檢測(cè)到同步線數(shù)據(jù)傳輸錯(cuò)誤,繼而主動(dòng)切換成主CPU。
如果主CPU故障出現(xiàn)在備CPU調(diào)用FBl01執(zhí)行發(fā)送功能之前,那么接下來(lái)備CPU在調(diào)用發(fā)送功能時(shí)就能檢測(cè)到與主CPU通信連接故障,并在下一個(gè)周期調(diào)用接收功能時(shí)備CPU切換成主CPU。此時(shí)主備切換時(shí)間t最短。
(1)
式中t為主備切換時(shí)間;Tcyc為PLC循環(huán)掃描周期;t(FB101)為冗余功能塊FBl01執(zhí)行時(shí)間。
如果主CPU故障發(fā)生時(shí)備CPU剛調(diào)用FB101執(zhí)行完發(fā)送功能,那么備CPU要在下一個(gè)周期調(diào)用發(fā)送功能時(shí)才能檢測(cè)到與主CPU通信連接故障,并且還要等待調(diào)用接收功能時(shí)備CPU切換成主CPU。此時(shí)主備切換時(shí)間t最長(zhǎng)。
(2)
2.2 Profibus或ET200M主站故障分析
當(dāng)后2種故障發(fā)生時(shí),發(fā)生故障的ET200M從站的備IMl53將檢測(cè)到主IMl53故障,自動(dòng)將自己切換為主IMl53。主CPU將因?yàn)榕c故障IMl53失去連接而引發(fā)OB86(故障診斷)中斷,并在中斷中調(diào)用診斷模塊FCl02完成所有從站的切換,并將自己置為備用。然后,主CPU將故障信息發(fā)送到備CPU。備CPU收到故障信息后將自己切換成主CPU。這時(shí)的切換時(shí)間為
(3)
式中tR為OB86中斷響應(yīng)時(shí)間,CPU315—2DP為1 ms;tE為OB86執(zhí)行時(shí)問(wèn);ts為故障狀態(tài)發(fā)送時(shí)間;tD為數(shù)據(jù)接收完畢到備站切換成主站的時(shí)間間隔。
因?yàn)镺B86中只調(diào)用FCl02診斷模塊,所以tE由FCl02的執(zhí)行時(shí)間決定。為分析OB86中調(diào)用FCl02時(shí)FCl02的執(zhí)行順序,對(duì)FCl02進(jìn)行了適當(dāng)?shù)男薷囊员悴杉瘮?shù)據(jù)。這些修改主要包括:在FCl02的開始加入采集狀態(tài)程序段;在跳轉(zhuǎn)指令處采集跳轉(zhuǎn)條件。在手動(dòng)觸發(fā)一些故障之后,對(duì)得到的數(shù)據(jù)進(jìn)行分析便得到了FCl02的執(zhí)行順序。在各個(gè)代碼段兩端插入讀系統(tǒng)時(shí)間功能塊,對(duì)FCl02的程序執(zhí)行時(shí)間進(jìn)行分段測(cè)量。結(jié)果如表1所示(表中,為SFC58執(zhí)行時(shí)間;t(2ss)8為2次SFC58執(zhí)行時(shí)間;t’為其余時(shí)間;t(PC102)為FCl02總執(zhí)行時(shí)間)。
測(cè)量結(jié)果中FCl02執(zhí)行時(shí)間并不等于各個(gè)時(shí)間段之和,這是因?yàn)樽x系統(tǒng)時(shí)間功能塊的測(cè)量精度只能達(dá)到l ms。但從表中仍不難看出FCl02執(zhí)行時(shí)間主要集中在調(diào)用系統(tǒng)功能SFC58向ET200M寫數(shù)據(jù)(控制從站切換)的操作上,SFC58的調(diào)用次數(shù)等于ET200M從站個(gè)數(shù),因此可以近似得出tE=3 ms×ET200M從站個(gè)數(shù)。
式(3)中ts與主CPU的OB86中斷產(chǎn)生的時(shí)刻有很大關(guān)系。
如果主CPU在調(diào)用FB101執(zhí)行發(fā)送功能之前產(chǎn)生OB86中斷,則在發(fā)送數(shù)據(jù)時(shí)主CPU直接把故障狀態(tài)發(fā)送給備站,在這種情況下ts最短,為發(fā)送一次數(shù)據(jù)所用時(shí)間tt,即
(4)
若主CPU調(diào)用FBl01執(zhí)行完發(fā)送功能時(shí)產(chǎn)生OB86中斷,則主CPU要把先前數(shù)據(jù)發(fā)送完畢才能發(fā)送故障狀態(tài)到備站。在這種情況下,由于先前數(shù)據(jù)發(fā)送完畢的時(shí)刻不同,ts也會(huì)得到不同的值。
a.若先前數(shù)據(jù)發(fā)送完畢在主CPU調(diào)州FB 101執(zhí)行發(fā)送功能之前,將立即發(fā)送主站的狀態(tài),則
(5)
b.若先前數(shù)據(jù)發(fā)送完畢在主CPU執(zhí)行完發(fā)送功能之后,則要等到下個(gè)周期調(diào)用發(fā)送功能時(shí)才能發(fā)送主站的故障狀態(tài)。此時(shí),ts是最長(zhǎng)的。
(6)
式(3)中tD與備站接收完故障狀態(tài)的時(shí)刻有密切關(guān)系。
若數(shù)據(jù)接收完成是在備CPU調(diào)用FBl01執(zhí)行接收功能之前,則備CPU將馬上得到主CPU狀態(tài),并在調(diào)用發(fā)送功能時(shí)備CPU切換成主CPU。此時(shí)tD最小,僅為一個(gè)FBl01的執(zhí)行時(shí)間,即
(7)
若數(shù)據(jù)接收完成是在備CPU調(diào)用FBl01執(zhí)行接收功能之后,則備CPU要等到下個(gè)周期調(diào)用接收功能時(shí)才能獲得主站的狀態(tài),并在調(diào)用發(fā)送功能時(shí)切換成主CPU。此時(shí)tD是最大的。
(8)
由以上分析可知,在以下2種情況將得到這2類故障主備CPU切換時(shí)間的極限值。
a.如果故障發(fā)生后主CPU馬上發(fā)送故障狀態(tài),并且備CPU接收完數(shù)據(jù)是在備CPU調(diào)用接收功能之前,主備切換時(shí)間是最短的。
(9)
b.如果故障發(fā)生時(shí)主CPU已經(jīng)開始發(fā)送數(shù)據(jù)。并且此數(shù)據(jù)發(fā)送完畢是在主CPU調(diào)用完發(fā)送數(shù)據(jù)功能之后,而備CPU接收完數(shù)據(jù)是在備CPU調(diào)用完接收功能時(shí),主備切換時(shí)問(wèn)是最長(zhǎng)的。
(10)
以上所涉及的時(shí)間中,tE、t.和k所占比重最大,其余時(shí)問(wèn)經(jīng)測(cè)量均約為1 ms。如果要減小主備切換時(shí)間,必須減小tE、t,和k。要減小tE就要減少ET200M從站數(shù)量,即在滿足要求的情況下減少I/0數(shù)量。減少t。方法是選擇主站與備站之間較快的數(shù)據(jù)同步通信方式。如Profibus總線方式比西門子PLC自帶的MPI方式能在較短的時(shí)間內(nèi)發(fā)送更多個(gè)字節(jié)數(shù)據(jù)。但前一種方式需要另外配置通信模塊。k為PLC循環(huán)掃描周期,與用戶程序長(zhǎng)度有關(guān)。典型的中等規(guī)模的PLC控制系統(tǒng),經(jīng)計(jì)算主備切換時(shí)間的極限值范圍約為150---500 ms。
3、數(shù)據(jù)同步時(shí)間分析
在PLC軟冗余系統(tǒng)中,要使主系統(tǒng)發(fā)生故障時(shí),備系統(tǒng)接替主系統(tǒng)繼續(xù)工作,則系統(tǒng)在正常運(yùn)行時(shí),主控制器必須把需要同步的數(shù)據(jù)發(fā)送給備控制器,從而當(dāng)故障發(fā)生時(shí)能夠?qū)崿F(xiàn)無(wú)擾切換。
數(shù)據(jù)同步時(shí)間是指系統(tǒng)正常運(yùn)行時(shí),主站將同步數(shù)據(jù)發(fā)送至備站所需時(shí)間。西門子軟冗余系統(tǒng)的數(shù)據(jù)同步是根據(jù)數(shù)據(jù)量的大小通過(guò)定時(shí)中斷方式分多次進(jìn)行,單次同步的數(shù)據(jù)量相同。主CPU在同步開始時(shí)將所有需要同步的數(shù)據(jù)保存起來(lái),然后每次發(fā)送相同長(zhǎng)度的數(shù)據(jù)塊到備CPU。備CPU每接收到一個(gè)數(shù)據(jù)塊就將其分配到對(duì)應(yīng)的地址空間中去。這種方式將時(shí)間平均分配到了各個(gè)執(zhí)行周期,避免了單次發(fā)送所有數(shù)據(jù)消耗過(guò)多時(shí)間。但是這也導(dǎo)致了備站得到的數(shù)據(jù)將滯后手主站。
通過(guò)分析可知,數(shù)據(jù)同步時(shí)間為
(11)
其中,LD為同步數(shù)據(jù)量。它為PLC輸出過(guò)程映像區(qū)、位地址區(qū)所有冗余數(shù)據(jù)塊、定時(shí)器和計(jì)數(shù)器的背景數(shù)據(jù)塊和非冗余數(shù)據(jù)塊長(zhǎng)度之和。N為1次數(shù)據(jù)傳送量,與數(shù)據(jù)同步方式有關(guān)。如Profibus總線方式可在1.5 Mbit/s傳輸速率下。每60 ms傳送240個(gè)字節(jié)數(shù)據(jù)。而西門子PLC自帶的MPI方式只能在187.5 Kbit/s傳輸速率下,每152 ms傳送76個(gè)字節(jié)數(shù)據(jù)。行為傳送1次數(shù)據(jù)程序執(zhí)行周期數(shù),即
(12)
式中td為傳送1次數(shù)據(jù)的時(shí)間,與數(shù)據(jù)同步方式有關(guān);Tob35為定時(shí)中斷間隔時(shí)間。
為減小數(shù)據(jù)同步時(shí)間,應(yīng)盡量減少同步數(shù)據(jù)量LD,選擇較快的數(shù)據(jù)同步方式以增加1次數(shù)據(jù)傳送量N和減少傳送1次數(shù)據(jù)時(shí)間td。典型的中等規(guī)模PLC控制系統(tǒng),數(shù)據(jù)同步時(shí)間可能超過(guò)l s。
4、結(jié)論
綜上所述,PLC軟冗余系統(tǒng)出現(xiàn)特定故障時(shí),系統(tǒng)通過(guò)軟件冗余主備切換機(jī)制,使備站在經(jīng)過(guò)主備切換時(shí)間后接替主站保持系統(tǒng)繼續(xù)T作,避免系統(tǒng)停止運(yùn)行。主備切換完成后,備用系統(tǒng)以最后一次完整的同步數(shù)據(jù)作為基礎(chǔ)執(zhí)行控制任務(wù)。PLC軟冗余系統(tǒng)主備切換的功能,達(dá)到了提高可靠性、降低成本的目的。
但是,由于主備切換時(shí)間較長(zhǎng),在主備切換過(guò)程中系統(tǒng)暫時(shí)失去了控制功能,故不適合實(shí)時(shí)性要求較高的控制場(chǎng)合。PLC軟冗余系統(tǒng)比較適合應(yīng)用于實(shí)時(shí)性要求較低的過(guò)程控制應(yīng)用場(chǎng)合