摘要 介紹了PIC在使用過(guò)程中可能出現(xiàn)的各類故障及其判斷方法,并提出解決辦法。
PLC(可編程控制器)在石油管道系統(tǒng)如鐵嶺一大連輸油管道及大慶一鐵嶺輸油管道得到了廣泛的應(yīng)用,下面以AB公司的ControlLogix5000 PLC應(yīng)用為例,對(duì)PLC在使用過(guò)程出現(xiàn)的故障現(xiàn)象加以歸類,并提出處理各種故障的辦法。
一、故障查找
一般來(lái)講,PLC由控制器模塊、I/O模塊、通信模塊、網(wǎng)絡(luò)模塊、接口模塊五大模塊組成。而控制器模塊是整個(gè)PLC系統(tǒng)的核心,故障現(xiàn)象一般會(huì)通過(guò)控制器反映出來(lái)。
1.根據(jù)控制器面板指示查看故障(參見圖1)

RUN指示燈:熄滅,沒(méi)有任務(wù)在運(yùn)行,控制器處于編程方式或測(cè)試方式;綠色,有一個(gè)或多個(gè)任務(wù)在運(yùn)行,控制器處于RUN方式。
I/O指示燈:熄滅,沒(méi)有組態(tài)I/O通信;綠色,與所有組態(tài)設(shè)備通信正常;綠色閃爍,有一個(gè)或多個(gè)設(shè)備未響應(yīng);紅色閃爍,沒(méi)有與任何設(shè)備通信;控制器故障。
OK指示燈:熄滅,要連接電源;綠色閃爍,可恢復(fù)故障;紅色閃爍,控制器故障、清除故障、清除內(nèi)存;更換控制器;綠色,控制器正常工作。
RS232指示燈:熄滅,未激活;綠色,正在接收數(shù)據(jù)或傳送數(shù)據(jù)。
BAT指示燈:熄滅,電池可以支持內(nèi)存;紅色,電池不能支持內(nèi)存,沒(méi)有電池,需要更換電池。
2.利用編程軟件Rslogix5000查看故障
(1)將光標(biāo)置于Controller quick start之上;
(2)點(diǎn)擊鼠標(biāo)右鍵并選擇Properties(屬性);
(3)選擇Major Faults(主要故障)選項(xiàng)或Minor Faults(次要故障)選項(xiàng)即可查看當(dāng)前故障信息。
二、故障處理
一般來(lái)講,控制器主要檢測(cè)三種故障類型:硬件故障、主要故障和次要故障。
硬件故障:控制器硬件產(chǎn)生故障。控制器將被關(guān)閉,用戶必須修理或更換控制器。
主要故障:一種硬件或指令故障。產(chǎn)生故障時(shí)將置位主要故障位并處理邏輯故障程序以試圖清除故障條件。如果故障邏輯程序不能清除故障,將停止執(zhí)行邏輯程序,控制器停車,輸出進(jìn)入組態(tài)狀態(tài)。
次要故障:一種硬件或指令故障。產(chǎn)生故障時(shí)將置位次要故障位。但允許繼續(xù)進(jìn)行邏輯掃描。
1.硬件故障一般處理
(1)先關(guān)閉控制器電源,重新上電;
(2)重新加裝程序;
(3)再次運(yùn)行程序。
如果連續(xù)遇到硬件故障,則需更換控制器。
2.主要故障處理
主要故障影響程序的運(yùn)行,如果故障不能清除,控制器將進(jìn)入故障模式并關(guān)閉。
(1)主要故障包括:①指令執(zhí)行,當(dāng)執(zhí)行邏輯程序時(shí)出現(xiàn)問(wèn)題。②其它情況,如電源掉電、I/O模塊故障、任務(wù)看門狗、模式轉(zhuǎn)換等。
主要故障中,I/O模塊檢測(cè)不到或連接I/O模塊失敗是比較常見的。用戶可以將模塊組態(tài)成一旦模塊與控制器喪失連接,即在控制器產(chǎn)生一個(gè)主要故障。每一個(gè) I/O模塊都有一個(gè)指示出現(xiàn)故障的狀態(tài)位。用戶的控制應(yīng)用程序應(yīng)監(jiān)控這些狀態(tài)位。如果產(chǎn)生了任何故障,用戶應(yīng)用程序應(yīng)該采取適當(dāng)措施,例如在控制方式下關(guān)閉系統(tǒng)。
(2)控制器有兩種級(jí)別的主要故障處理程序:①程序故障例程。每個(gè)程序都有自己的故障例程。當(dāng)產(chǎn)生指令故障時(shí)控制器將執(zhí)行程序故障例程,如果程序故障例程未清除故障,或程序故障例程不存在,則控制器將繼續(xù)執(zhí)行控制器故障處理程序。如果控制器故障程序不存在或不能清除主要故障,則控制器將進(jìn)入故障模式并關(guān)閉。②控制器故障處理程序。所有的非指令故障(I/O、任務(wù)看門狗)都將執(zhí)行控制器故障處理程序(不調(diào)用程序故障例程)。
(3)檢查清除主要故障必須遵循以下步驟:①根據(jù)主要故障的類型,執(zhí)行相應(yīng)的操作。先創(chuàng)建一個(gè)程序故障例程,每個(gè)程序都可以有自己的故障例程,當(dāng)用戶組態(tài)程序時(shí)可以指定故障例程。用戶只有在利用編程軟件改變程序組態(tài)時(shí),才能改變故障例程。再創(chuàng)建控制器故障例程??刂破鞴收咸幚沓绦蚴且环N可選任務(wù),當(dāng)主要故障不是指令執(zhí)行故障或程序故障例程時(shí)則執(zhí)行控制器故障處理程序。②創(chuàng)建一個(gè)用戶定義結(jié)構(gòu)體來(lái)存儲(chǔ)故障信息。該結(jié)構(gòu)體可以和用戶用來(lái)存儲(chǔ)主要故障信息的結(jié)構(gòu)體相同,但是必須遵循一定格式(在此略去)。③檢查故障類型及代碼以確定產(chǎn)生了哪一種故障,并采取適當(dāng)?shù)拇胧?。主要故障類型及代碼見表1。④用戶還可以利用控制器上的鑰匙開關(guān)來(lái)清除主要故障。先把鑰匙開關(guān)切換到PROG方式,然后切換到RUN方式,之后再切換回PROG方式。

3.次要故障處理
次要故障不影響控制器的運(yùn)行,控制器可以繼續(xù)執(zhí)行,不過(guò)為了優(yōu)化程序執(zhí)行時(shí)間和確保程序精度,用戶應(yīng)該識(shí)別和修理次要故障。
(1)次要故障包括:①指令執(zhí)行,在執(zhí)行邏輯時(shí)出現(xiàn)問(wèn)題。②其他,如任務(wù)看門狗、串行口、電池等。
(2)指令執(zhí)行次要故障處理:①創(chuàng)建一個(gè)用戶定義結(jié)構(gòu)體來(lái)存儲(chǔ)故障信息,該結(jié)構(gòu)體可以和用戶用來(lái)存儲(chǔ)主要故障信息的結(jié)構(gòu)體相同。但是必須遵循一定格式,同處理主要故障中第2條定義相同,不再贅述。②監(jiān)控S:MINOR以確定次要故障何時(shí)產(chǎn)生。③使用一條GSV指令即可獲得當(dāng)前程序(THIS)的MI一 NORFAULTRECORD。指令中的目標(biāo)(destination)應(yīng)該是用戶在上面指定的用戶定義結(jié)構(gòu)體類型的標(biāo)簽。④采取適當(dāng)?shù)拇胧﹣?lái)相應(yīng)次要故障(典型的,如修改邏輯錯(cuò)誤)。
(3)其它次要故障處理:①創(chuàng)建一個(gè)DINT型標(biāo)簽用以保存FAULTLOG對(duì)象中的MinorFaultRits(次要故障位)記錄。次要故障類型及代碼見表2。②利用一條GSV指令即可獲得 FAULT一LOG對(duì)象中的MinorFaultRits (次要故障位)記錄。目標(biāo)(destina-tion)應(yīng)該是用戶創(chuàng)建的DINT型標(biāo)簽(方法同上)。③查故障位以確定故障類型并采取適當(dāng)?shù)拇胧?。一般?lái)講,次要故障不需要清除。

在PLC的編程和實(shí)際應(yīng)用中,根據(jù)以上方法處理各種故障非常方便??傮w來(lái)講,PLC在工業(yè)生產(chǎn)中產(chǎn)生的故障主要有兩類:一為I/O模塊故障,如I/O模塊連接失敗或I/O端子繼電器出現(xiàn)故障;其次為電源掉電,必須重新加載程序。