版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第七章故障診斷PLC是運(yùn)行在工業(yè)環(huán)境中的控制器,一般而言可靠性比較高,出現(xiàn)故障的概率較低,但是,出現(xiàn)故障也是難以避免的。一般引發(fā)故障的原因有很多,故障的后果也有很多種。引發(fā)故障的原因雖然我們不能完全控制,但是我們可以通過日常的檢查和定期的維護(hù)來消除多種隱患,把故障率降到最低。故障的后果輕的可能造成設(shè)備的停機(jī),影響生產(chǎn)的數(shù)量;重的可能造成財(cái)產(chǎn)損失和人員傷亡,如果是一些特殊的控制對象,一旦出現(xiàn)故障可能會(huì)引發(fā)更嚴(yán)重的后果。故障發(fā)生后,對于維護(hù)人員來說最重要的是找到故障的原因,迅速排除故障,盡快恢復(fù)系統(tǒng)的運(yùn)行。對于系統(tǒng)設(shè)計(jì)人員在設(shè)計(jì)時(shí)要考慮到系統(tǒng)出現(xiàn)故障后的系統(tǒng)的自我保護(hù)措施力爭使故障的停機(jī)時(shí)間最短,故障的產(chǎn)生的損失最小。第七章故障診斷PLC是運(yùn)行在工業(yè)環(huán)境中的控制器,一般而言可7.1了解S7-300PLC的基本故障種類一般PLC的故障主要有外部故障或是內(nèi)部錯(cuò)誤造成。外部故障時(shí)由外部傳感器或執(zhí)行機(jī)構(gòu)的故障等引發(fā)PLC產(chǎn)生故障,可能會(huì)使整個(gè)系統(tǒng)停機(jī),甚至燒壞PLC。而內(nèi)部錯(cuò)誤是PLC內(nèi)部的功能性錯(cuò)誤或編成錯(cuò)誤造成的,可以使系統(tǒng)停機(jī)。S7-300具有很強(qiáng)的錯(cuò)誤(或稱故障)檢測和處理能力,CPU檢測到某種錯(cuò)誤后,操作系統(tǒng)調(diào)用對應(yīng)得組織塊,用戶可以在組織塊中編程,對發(fā)生的錯(cuò)誤采取相應(yīng)的措施。對于大多數(shù)錯(cuò)誤,如果沒有給組織塊編程,出現(xiàn)錯(cuò)誤時(shí)CPU將進(jìn)入STOP模式。被S7CPU檢測到并且用戶可以通過組織塊對其進(jìn)行處理的錯(cuò)誤分為兩類:1、異步錯(cuò)誤異步錯(cuò)誤是與PLC的硬件或操作系統(tǒng)密切相關(guān)的錯(cuò)誤,與程序執(zhí)行無關(guān),但異步錯(cuò)誤的后果一般比較嚴(yán)重。2、同步錯(cuò)誤同步錯(cuò)誤是與執(zhí)行用戶程序有關(guān)的錯(cuò)誤,程序中如果有不正確的地址區(qū),錯(cuò)誤的編號或錯(cuò)誤的地址,都會(huì)出現(xiàn)同步錯(cuò)誤,操作系統(tǒng)將調(diào)用同步錯(cuò)誤OB。7.1了解S7-300PLC的基本故障種類一般PLC的故7.2掌握PLC的常規(guī)維護(hù)及故障排除的方法為了保障系統(tǒng)的正常運(yùn)行,定期對PLC系統(tǒng)進(jìn)行維護(hù)和檢查是必不可少的,而且還必須熟悉一些故障診斷和排除方法。7.2.1檢查與維護(hù)7.2.2外部故障的排除方法7.2.3內(nèi)部錯(cuò)誤的故障診斷7.2掌握PLC的常規(guī)維護(hù)及故障排除的方法為了保障系統(tǒng)的正7.2.1檢查與維護(hù)一、定期檢查PLC是一種工業(yè)控制設(shè)備,盡管在可靠性方面采取了許多措施,但工作環(huán)境對PLC影響還是很大的。所以,通常每隔半年時(shí)間應(yīng)對PLC作定期檢查。如果PLC的工作條件不符合表7-1規(guī)定的標(biāo)準(zhǔn),就要做一些應(yīng)急處理,以便使PLC工作在規(guī)定的標(biāo)準(zhǔn)環(huán)境。7.2.1檢查與維護(hù)一、定期檢查表7-1周期性檢查一覽表表7-1周期性檢查一覽表二、日常維護(hù)PLC除了鋰電池和繼電器輸出觸點(diǎn)外,基本上沒有其它易損元器件。由于存放用戶程序的隨機(jī)內(nèi)存(RAM),計(jì)數(shù)器和具有保持功能的輔助繼電器等均用鋰電池保護(hù),鋰電池的壽命大約5年,當(dāng)鋰電池的電壓逐漸降低達(dá)一定程度時(shí),PLC基本單元上的電池電壓跌落指示燈會(huì)亮。提示用戶注意,有鋰電池所支持的程序還可以保持一周左右,必須更換電池,這是日常維護(hù)的主要內(nèi)容。二、日常維護(hù)PLC除了鋰電池和繼電器輸出觸點(diǎn)外,基本上沒有其調(diào)換鋰電池的步驟:
1、在拆裝之前,應(yīng)先讓PLC通電15S以上,這樣可使作為內(nèi)存?zhèn)溆秒娫吹碾娙萜鞒潆?,在鋰電池?cái)嚅_后,該電容可對PLC作短暫供電,以保護(hù)RAM中的信息不丟失。2、斷開PLC的交流電源。3、打開基本單元的電池蓋板。4、取下舊電池,裝上新電池。5、蓋上電池蓋板。更換電池的時(shí)間要盡量短,一般不允許超過3min。如果時(shí)間過長,RAM中的程序?qū)G失。調(diào)換鋰電池的步驟:1、在拆裝之前,應(yīng)先讓PLC通電15S以7.2.2外部故障的排除方法PLC有很強(qiáng)的自診斷能力,當(dāng)PLC自身故障或外圍設(shè)備發(fā)生故障,都可用PLC上具有診斷指示功能的發(fā)光二極管的亮滅來診斷。7.2.2外部故障的排除方法一、故障查找1、總體檢查根據(jù)總體檢查流程圖找出故障點(diǎn)的大方向,逐漸細(xì)化,以找出具體故障,如圖7-1所示。一、故障查找1、總體檢查2、電源故障檢查電源等不亮部需要對供電系統(tǒng)進(jìn)行檢查,檢查流程圖如圖7-2所示。
2、電源故障檢查電源等不亮部需要對供電系統(tǒng)進(jìn)行檢查,檢查流程3、運(yùn)行故障檢查電源正常,運(yùn)行指示燈不亮,說明系統(tǒng)已因某種異常而終止了正常運(yùn)行,檢查流程圖如圖7-3所示。3、運(yùn)行故障檢查電源正常,運(yùn)行指示燈不亮,說明系統(tǒng)已因某種異4、輸入輸出故障檢查輸入輸出是PLC與外部設(shè)備進(jìn)行信息交流的信道,其是否正常工作,除了和輸入輸出單元有關(guān)外,還與聯(lián)接配線、接線端子、保險(xiǎn)管等組件狀態(tài)有關(guān)。圖7-4和圖7-5分別所示的是輸入檢查流程和輸出檢查流程。圖7-4輸入檢查流程圖4、輸入輸出故障檢查輸入輸出是PLC與外部設(shè)備進(jìn)行信息交流的圖7-5輸出檢查流程圖課件-西門子S7300PLC應(yīng)用技術(shù)第六章故障診斷5、外圍環(huán)境的檢查影響PLC工作的環(huán)境因素主要有溫度、濕度、噪音與粉塵,以及腐蝕性酸堿等。5、外圍環(huán)境的檢查二、故障的處理不同故障產(chǎn)生的原因不同,它們也有不同的處理方法,具體請見下表所列。表7-2CPU裝置、I/O擴(kuò)展裝置故障處理二、故障的處理不同故障產(chǎn)生的原因不同,它們也有不同的處理方法表7-3輸入單元故障處理表7-3輸入單元故障處理課件-西門子S7300PLC應(yīng)用技術(shù)第六章故障診斷表7-4輸出單元故障處理表7-4輸出單元故障處理7.2.3內(nèi)部錯(cuò)誤的故障診斷S7-300具有非常強(qiáng)大的故障診斷功能,通過STEP7編程軟件可以獲得大量的硬件故障與編程錯(cuò)誤的信息,使用戶能迅速地查找到故障。這里的診斷是指S7-300內(nèi)部集成的錯(cuò)誤識別和記錄功能,錯(cuò)誤信息在CPU的診斷緩沖區(qū)內(nèi)。有錯(cuò)誤或事件發(fā)生時(shí),標(biāo)有日期和時(shí)間的信息被保存到診斷緩沖區(qū),時(shí)間保存到系統(tǒng)的狀態(tài)表中,如果用戶已對有關(guān)的錯(cuò)誤處理組織塊編程,CPU將調(diào)用該組織塊。7.2.3內(nèi)部錯(cuò)誤的故障診斷S7-300具有非常強(qiáng)大的故障一、故障診斷的基本方法在SIMATIC管理器中用菜單命令“View”→“Online”打開再現(xiàn)窗口。打開所有的站,查看是否有CPU顯示了指示錯(cuò)誤或故障的診斷符號。診斷符號用來形象直觀地表示模塊的運(yùn)行模式和模塊的故障狀態(tài),如圖7-6所示。如果模塊有診斷信息,在模塊符號上將會(huì)增加一個(gè)診斷符號,或者模塊符號的對比度降低。圖7-6診斷符號一、故障診斷的基本方法在SIMATIC管理器中用菜單命令“V診斷符號“當(dāng)前組態(tài)與實(shí)際組態(tài)不匹配”表示被組態(tài)的模塊不存在,或者插入了與組態(tài)的模塊的型號不同的模塊。診斷符號“無法診斷”表示無線上連接,或該模塊不支持模塊診斷信息,例如電源模塊或子模塊。“強(qiáng)制”符號表示在該模塊上有變量被強(qiáng)制,即在模塊的用戶程序中有變量被賦予一個(gè)固定植,該數(shù)據(jù)值不能被程序改變?!皬?qiáng)制”符號可以與其它符號組合在一起顯示,如圖7-6中“強(qiáng)制與運(yùn)行”符號。從在線的SIMATIC管理器的窗口、在線的硬件診斷功能打開的快速窗口和在線的硬件組態(tài)窗口(診斷窗口),都可以觀察到診斷符號。通過觀察診斷符號,可以判斷CPU模塊的運(yùn)行模式,是否有強(qiáng)制變量,CPU模塊和功能模塊(FM)受否有故障。打開在線窗口,在SIMATIC管理器中執(zhí)行菜單命令“PLC”→“Diagnostic/Setting”→“HardwareDiagnostics”,將打開硬件診斷快速瀏覽窗口。在該窗口中顯示PLC的狀態(tài),看到診斷功能的模塊的硬件故障,雙擊故障模塊可以獲得詳細(xì)的故障信息。診斷符號“當(dāng)前組態(tài)與實(shí)際組態(tài)不匹配”表示被組態(tài)的模塊不存在,二、利用CPU診斷緩沖區(qū)進(jìn)行詳細(xì)故障診斷建立與PLC的在線連接后,在SIMATIC管理器中選擇要檢查的站,執(zhí)行菜單命令“PLC”→“Diagnostics/Setting”→“ModuleInformation”,如圖7-7所示,將打開模塊信息窗口,顯示該站中CPU的信息。在快速窗口中使用“ModuleInformation”。圖7-7打開CPU診斷緩沖區(qū)二、利用CPU診斷緩沖區(qū)進(jìn)行詳細(xì)故障診斷建立與PLC的在線連在模塊信息窗口中的診斷緩沖區(qū)(DiagnosticBuffer)選項(xiàng)中,給出了CPU中發(fā)生的事件一覽表,選中“Events”窗口中某一行的某一事件,下面灰色的“Detailson”窗口將顯示所選事件的詳細(xì)信息,見圖7-8所示。使用診斷緩沖區(qū)可以對系統(tǒng)得錯(cuò)誤進(jìn)行分析,查找停機(jī)的原因,并對出現(xiàn)的診斷時(shí)間分類。圖7-8CPU模塊的在線模塊信息窗在模塊信息窗口中的診斷緩沖區(qū)(DiagnosticBuff診斷事件包括模塊故障、過程寫錯(cuò)誤、CPU中的系統(tǒng)錯(cuò)誤、CPU運(yùn)行模式的切換、用戶程序的錯(cuò)誤和用戶用系統(tǒng)功能SFC52定義的診斷事件。在模塊信息窗口中,編號為1,位于最上面的事件是最近發(fā)生的事件。如果顯示因編程錯(cuò)誤造成CPU進(jìn)入STOP模式,選擇該事件,并點(diǎn)擊“OpenBlock”按鈕,將在程序編輯器中打開于錯(cuò)誤有關(guān)的塊,顯示出錯(cuò)的程序段。診斷中斷和DP從站診斷信息用于查找模塊和DP從站中的故障原因。“Memory”(內(nèi)存)選項(xiàng)給出了所選的CPU或M7功能模塊的工作內(nèi)存和裝載內(nèi)存當(dāng)前的使用情況,可以檢查CPU或功能模塊的裝載內(nèi)存中是否有足夠的空間用來存儲(chǔ)新的塊,如圖7-9所示。圖7-9“Memory”選項(xiàng)診斷事件包括模塊故障、過程寫錯(cuò)誤、CPU中的系統(tǒng)錯(cuò)誤、CPU“ScanCycleTime”(掃描循環(huán)時(shí)間)選項(xiàng)卡用于顯示所選CPU或M7功能模塊的最小循環(huán)時(shí)間、最大循環(huán)時(shí)間和當(dāng)前循環(huán)時(shí)間,如圖7-10所示。如果最長循環(huán)時(shí)間接近組態(tài)的最大掃描循環(huán)時(shí)間,由于循環(huán)時(shí)間的波動(dòng)可能產(chǎn)生時(shí)間錯(cuò)誤,此時(shí)應(yīng)增大設(shè)置的用戶程序最大循環(huán)時(shí)間(監(jiān)控時(shí)間)。如果循環(huán)時(shí)間小于設(shè)置的最小循環(huán)時(shí)間,CPU自動(dòng)延長循環(huán)至設(shè)置的最小循環(huán)時(shí)間。在這個(gè)延長時(shí)間內(nèi)可以處理背景組織塊(OB90)。組態(tài)硬件時(shí)可以設(shè)置最大和最小循環(huán)時(shí)間。圖7-10“ScanCycleTime”選項(xiàng)“ScanCycleTime”(掃描循環(huán)時(shí)間)選項(xiàng)卡用于“TimeSystem”(時(shí)間系統(tǒng))選項(xiàng)卡顯示當(dāng)前日期、時(shí)間、運(yùn)行的小時(shí)數(shù)以及時(shí)鐘同步的信息,見圖7-11所示。圖7-11“TimeSystem”選項(xiàng)“TimeSystem”(時(shí)間系統(tǒng))選項(xiàng)卡顯示當(dāng)前日期、時(shí)“PerformanceData”(性能數(shù)據(jù))選項(xiàng)卡給出了所選模塊(CPU/FM)可以使用的地址區(qū)和可以使用的OB、SFB、和SFC,見圖7-12所示。圖7-12“PerformanceData”選項(xiàng)“PerformanceData”(性能數(shù)據(jù))選項(xiàng)卡給出了“Communication”(通信)選項(xiàng)卡給出了所選模塊的傳輸速率、可以建立的連接個(gè)數(shù)和通信處理占掃描周期的百分比,如圖7-13所示。圖7-13“Communication”選項(xiàng)“Communication”(通信)選項(xiàng)卡給出了所選模塊的“Stacks”(堆棧)選項(xiàng)卡只能在STOP模式或HOLD(保持)模式下調(diào)用,顯示所選模塊的B(塊)堆棧。還可以顯示I(中斷)堆棧、L(局域)堆棧以及嵌套深度堆棧??梢蕴D(zhuǎn)到使塊中斷的故障點(diǎn),判明引起停機(jī)的原因。在模塊信息窗口各選項(xiàng)卡的上面顯示了附加的信息,例如所選模塊的在線路徑、CPU的操作模式和狀態(tài)(例如出錯(cuò)或OK)、所選模塊的操作模式,如果它有自己的操作模式的話(例如CP342-5)。從(“AccessibleNodes”窗口)打開的非CPU模塊的模塊信息中,不能顯示CPU本身的操作模式和所選模塊的狀態(tài)?!癝tacks”(堆棧)選項(xiàng)卡只能在STOP模式或HOLD(三、錯(cuò)誤處理組織塊組織塊是操作系統(tǒng)與用戶程序之間的接口。S7提供了各種不同的組織塊(OB),用組織塊可以創(chuàng)建在特定時(shí)間執(zhí)行的程序和響應(yīng)特定事件的程序。當(dāng)系統(tǒng)程序可以檢測下列錯(cuò)誤:不正確的CPU功能、系統(tǒng)程序執(zhí)行中的錯(cuò)誤、用戶程序中的錯(cuò)誤和I/O中的錯(cuò)誤。根據(jù)錯(cuò)誤類型的不同,CPU設(shè)置為進(jìn)入STOP模式或調(diào)用一個(gè)錯(cuò)誤處理OB。當(dāng)CPU檢測到錯(cuò)誤時(shí),會(huì)調(diào)用適當(dāng)?shù)慕M織塊,見表7-5。如果沒有相應(yīng)的錯(cuò)誤處理OB,CPU將進(jìn)入STOP模式。用戶可以在錯(cuò)誤處理OB中編寫如何處理這種錯(cuò)誤的程序,以減小或消除錯(cuò)誤的影響。三、錯(cuò)誤處理組織塊組織塊是操作系統(tǒng)與用戶程序之間的接口。S7表7-5錯(cuò)誤處理組織塊表7-5錯(cuò)誤處理組織塊為避免發(fā)生某種錯(cuò)誤時(shí)CPU進(jìn)入停機(jī),可以在CPU中建立一個(gè)對應(yīng)的空的組織塊。用戶可以利用OB中的變量聲明表提供的信息來判別錯(cuò)誤的類型。根據(jù)S7CPU檢測到并且用戶可以通過組織塊對其進(jìn)行處理的錯(cuò)誤分為異步錯(cuò)誤和同步錯(cuò)誤。為避免發(fā)生某種錯(cuò)誤時(shí)CPU進(jìn)入停機(jī),可以在CPU中建立一個(gè)對1、異步錯(cuò)誤組織塊異步錯(cuò)誤是與PLC的硬件或操作系統(tǒng)密切相關(guān)的錯(cuò)誤,與程序執(zhí)行無關(guān)。異步錯(cuò)誤的后果一般都比較嚴(yán)重。異步錯(cuò)誤對應(yīng)的組織塊為OB70~OB73和OB80~OB87,有最高的優(yōu)先級。操作系統(tǒng)檢測到一個(gè)異步錯(cuò)誤時(shí),將啟動(dòng)相應(yīng)的OB。1、異步錯(cuò)誤組織塊異步錯(cuò)誤是與PLC的硬件或操作系統(tǒng)密切相關(guān)(1)時(shí)間錯(cuò)誤處理組織塊(OB80)OB執(zhí)行時(shí)出現(xiàn)故障S7-300CPU的操作系統(tǒng)調(diào)用OB80。這樣的故障包括循環(huán)時(shí)間超出、執(zhí)行OB時(shí)應(yīng)答故障、向前移動(dòng)時(shí)間以致于躍過了OB的啟動(dòng)的時(shí)間、CLR后恢復(fù)RUN方式。如果當(dāng)循環(huán)中斷OB仍在執(zhí)行前一次調(diào)用時(shí),該OB塊的啟動(dòng)事件發(fā)生,操作系統(tǒng)調(diào)用OB80。如果OB80未編程,CPU變?yōu)镾TOP方式,可以使用SFC39至42封鎖或延時(shí)和在使用時(shí)間故障OB。如果在同一個(gè)稍描周期中由于掃描時(shí)間超出OB80被調(diào)用兩次,CPU就變?yōu)镾TOP方式,可以通過在程序中適當(dāng)?shù)奈恢谜{(diào)用SFC43“RE_TRIGR”來避免這種情況。(1)時(shí)間錯(cuò)誤處理組織塊(OB80)OB執(zhí)行時(shí)出現(xiàn)故障S7-打開OB80可以從OB80的臨時(shí)變量中得到故障信息,見圖7-14所示。圖7-14OB80的臨時(shí)變量打開OB80可以從OB80的臨時(shí)變量中得到故障信息,見圖7-表7-6OB80的變量申明表表7-6OB80的變量申明表(2)電源故障處理組織塊(OB81)與電源(僅對S7-400)或后備電池有關(guān)的故障事件發(fā)生時(shí),S7-300CPU的操作系統(tǒng)調(diào)用OB81,表7-7為OB81的變量申明表。如果OB81未編程,CPU并不轉(zhuǎn)換為STOP方式。可以使用SFC39至42來禁用、延時(shí)或再使用電源故障(OB81)。(2)電源故障處理組織塊(OB81)與電源(僅對S7-400表7-7OB81的變量申明表表7-7OB81的變量申明表(3)診斷中斷處理組織塊(OB82)如果模塊具有診斷能力又使能了診斷中斷,當(dāng)它檢測到錯(cuò)誤時(shí),它輸出一個(gè)診斷中斷請求給CPU,以及錯(cuò)誤消失時(shí),操作系統(tǒng)都會(huì)調(diào)用OB82。當(dāng)一個(gè)診斷中斷被觸發(fā)時(shí),有問題的模塊自動(dòng)地在診斷中斷OB的起動(dòng)信息和診斷緩沖區(qū)中存入4個(gè)字節(jié)的診斷數(shù)據(jù)和模塊的起始地址??梢杂肧FC39至42來禁用、延時(shí)或再使用診斷中斷(OB82),表7-8描述了診斷中斷OB82的臨時(shí)變量。(3)診斷中斷處理組織塊(OB82)如果模塊具有診斷能力又使課件-西門子S7300PLC應(yīng)用技術(shù)第六章故障診斷表7-8OB82的變量申明表表7-8OB82的變量申明表在編寫OB82的程序時(shí),要從OB82的起動(dòng)信息中獲得與出現(xiàn)的錯(cuò)誤有關(guān)的更確切的診斷信息,例如是哪一個(gè)通道出錯(cuò),出現(xiàn)的是哪種錯(cuò)誤。使用SFC51“RDSYSST”也可以讀出模塊的診斷數(shù)據(jù),用SFC52“WR_USMSG”可以將這些信息存入診斷緩沖區(qū)?,F(xiàn)在通過結(jié)合模板的短線診測應(yīng)用和SFC51來說明診斷中斷組織塊OB82的使用方法。在編寫OB82的程序時(shí),要從OB82的起動(dòng)信息中獲得與出現(xiàn)的首先,在SIMATIC管理器中新建一個(gè)項(xiàng)目,插入一個(gè)300站。硬件組態(tài),在機(jī)架上插入CPU315-2DP和一塊具有中斷功能模擬量輸入模塊SM331,配置SM331模塊的“Inputs”選項(xiàng),選擇0-1通道組為2線制電流(2DMU),其它通道組為電壓,并注意模塊的量程卡要與設(shè)置的相同。選中“Enable”框中的“DiagnosticInterrupt”選項(xiàng),選中“Diagnostics”選項(xiàng)中的0-1通道組中的“GroupDiagnostics”和“withCheckforWireBreak”選項(xiàng),如圖7-15所示。圖7-15硬件組態(tài)首先,在SIMATIC管理器中新建一個(gè)項(xiàng)目,插入一個(gè)300站點(diǎn)擊OK,然后雙擊CPU315-2DP,選擇“Interrupts”選項(xiàng),可以看到CPU支持OB82,見圖7-16所示。硬件組態(tài)完成后,保存編譯,下載到CPU中。圖7-16CPU中的“Interrupts”選項(xiàng)點(diǎn)擊OK,然后雙擊CPU315-2DP,選擇“Interr然后完成診斷程序。OB82程序當(dāng)在硬件組態(tài)中設(shè)定的診斷中斷發(fā)生后執(zhí)行,但OB82執(zhí)行時(shí)可以通過它的臨時(shí)變量OB82_MDL_ADDR讀出產(chǎn)生診斷中斷的模塊的邏輯地址。STEP7不能時(shí)時(shí)監(jiān)控程序的運(yùn)行。在SIMATIC管理器中S7Program(1)下插入一個(gè)STLSource文件STLSource(1),如圖7-17所示。圖7-17插入STLSource文件然后完成診斷程序。OB82程序當(dāng)在硬件組態(tài)中設(shè)定的診斷中斷發(fā)打開OB1,在“Libraries”→“StandardLibraries”→“SystemFunctionBlocks”下找到SFC51“RDSYSSTDIAGNSTC”,按F1鍵,出現(xiàn)SFC51在線幫助信息,在幫助信息的最低部點(diǎn)擊“ExampleformodulediagnosticswiththeSFC51”,然后點(diǎn)擊“STLSourceFile”,選中全部STLSource源程序拷貝到STLSource(1)中,編譯保存。這是在Blocks中生成OB1、OB82、DB13和SFC51。打開OB82,對其中的程序做簡單的修改,將19和20行的程序拷貝到go:后面,如圖7-18所示。再進(jìn)行保存,下載到CPU中。圖7-18OB82的程序修改打開OB1,在“Libraries”→“StandardL下載完成后,將CPU上的模式選擇開關(guān)切換到“RUN”狀態(tài),此時(shí),CPU上的“RUN”燈和“SF”燈會(huì)亮,SM331模塊上的“SF”燈也會(huì)亮。同時(shí),查看CPU的診斷緩沖區(qū)可以獲得相應(yīng)的故障信息。打開DB13數(shù)據(jù)塊,在線監(jiān)控,見圖7-19所示。因?yàn)橥ǖ罃嗑€是一到來事件,所以診斷信息存儲(chǔ)到COME數(shù)組中。圖7-19DB13中的數(shù)據(jù)變換下載完成后,將CPU上的模式選擇開關(guān)切換到“RUN”狀態(tài),此本例中COME數(shù)組字節(jié)的含義接受如下:COME[1]=B#16#D:表示通道錯(cuò)誤,外部故障和模塊問題;COME[2]=B#16#15:表示此段信息為模擬量模塊的通道信息;COME[3]=B#16#0:表示CPU處于運(yùn)行狀態(tài),無字節(jié)2中標(biāo)示的故障信息;COME[4]=B#16#0:表示無字節(jié)3中標(biāo)示的故障信息;COME[5]=B#16#71:表示模擬量輸入;COME[6]=B#16#8:表示模塊的每個(gè)通道有8個(gè)診斷位;COME[7]=B#16#8:表示模塊的通道數(shù);COME[8]=B#16#3:表示0通道錯(cuò)誤和1通道錯(cuò)誤,其他通道正常;COME[9]=B#16#10:表示0通道斷線;COME[10]=B#16#10:表示1通道斷線;COME[11]=B#16#0:表示2通道正常,其他通道與2通道相同。本例中COME數(shù)組字節(jié)的含義接受如下:(4)插入/拔出模塊中斷組織塊(OB83)當(dāng)組態(tài)的模塊插入/拔出后或在SETP7下修改了模塊的參數(shù)并在“RUN”狀態(tài)把所做修改下載到CPU后,CPU操作系統(tǒng)調(diào)用OB83。在“RUN”、“STOP”和“STARTUP”狀態(tài)時(shí)每次組態(tài)的模塊插入或拔出,就產(chǎn)生一個(gè)插入/拔出中斷(電源模塊、CPU、適配模塊和IM模塊不能在這種狀態(tài)下移出)。該中斷引起有關(guān)CPU的診斷緩沖區(qū)和系統(tǒng)狀態(tài)表的記錄如果在“RUN”狀態(tài)下拔出組態(tài)的模塊,OB83期啟動(dòng)。由于僅以一秒的間隔監(jiān)視模塊的存在,如果模塊被直接訪問或當(dāng)過程映像被刷新時(shí)可能首先檢測出訪問故障。如果在“RUN”狀態(tài)下插入一塊模塊,操作系統(tǒng)檢查插入模塊的類型是否與組態(tài)的記錄一致,如果模塊類型匹配,于是OB83被啟動(dòng)并且參數(shù)被賦值??梢越柚鶶FC39至42來禁用、延時(shí)或再使用插入/拔出模塊中斷(OB83),表7-9描述了插入/拔出模塊中斷OB83的臨時(shí)變量。(4)插入/拔出模塊中斷組織塊(OB83)當(dāng)組態(tài)的模塊插入/表7-9OB83的變量申明表表7-9OB83的變量申明表(5)CPU硬件故障處理組織塊(OB84)當(dāng)CPU檢測到MPI網(wǎng)絡(luò)的接口故障、通信總線的接口故障或分布式I/O網(wǎng)卡的接口故障時(shí),操作系統(tǒng)調(diào)用OB84。故障消除時(shí)也會(huì)調(diào)用該OB塊,即事件到來和離去時(shí)都調(diào)用該OB。表7-10描述了CPU硬件故障OB84的臨時(shí)變量。(5)CPU硬件故障處理組織塊(OB84)當(dāng)CPU檢測到MP表7-10OB84的變量申明表表7-10OB84的變量申明表(6)優(yōu)先級錯(cuò)誤處理組織塊(OB85)在以下情況下將會(huì)觸發(fā)優(yōu)先級錯(cuò)誤中斷:產(chǎn)生了一個(gè)中斷事件,但是對應(yīng)的OB塊沒有下載到CPU;訪問一個(gè)系統(tǒng)功能塊的背景數(shù)據(jù)塊時(shí)出錯(cuò);刷新過程映像表時(shí)I/O訪問出錯(cuò),模塊不存在或有故障。在編寫OB85的程序時(shí),應(yīng)根據(jù)OB85的起動(dòng)信息,判定是哪個(gè)模塊損壞或沒有插入??梢允褂肧FC39至42封鎖或延時(shí)并使能優(yōu)先級故障OB,表7-11描述了優(yōu)先級故障OB85的臨時(shí)變量。(6)優(yōu)先級錯(cuò)誤處理組織塊(OB85)在以下情況下將會(huì)觸發(fā)優(yōu)表7-11O85的變量申明表表7-11O85的變量申明表(7)機(jī)架故障組織塊(OB86)出現(xiàn)下列故障或故障消失時(shí),都會(huì)觸發(fā)機(jī)架故障中斷,操作系統(tǒng)將調(diào)用OB86:擴(kuò)展機(jī)架故障(不包括CPU318),DP主站系統(tǒng)故障或分布式I/O故障。故障產(chǎn)生和故障消失時(shí)都會(huì)產(chǎn)生中斷。在編寫OB86的程序時(shí),應(yīng)根據(jù)OB86的起動(dòng)信息,判斷是哪個(gè)機(jī)架損壞或找不到??梢允褂肧FC39至42封鎖或延時(shí)并使能OB86,表7-12描述了機(jī)架故障OB86的臨時(shí)變量。(7)機(jī)架故障組織塊(OB86)出現(xiàn)下列故障或故障消失時(shí),都表7-12O86的變量申明表表7-12O86的變量申明表這里也通過一個(gè)例子來說明OB86的使用。新建一個(gè)項(xiàng)目,插入一個(gè)300站,進(jìn)行硬件組態(tài)。在機(jī)架中插入CPU315-2DP,選擇DP作為主站,在DP主站下添加一個(gè)ET200M從站,并在從站中插入一個(gè)模擬量輸入模塊SM331,如圖7-20所示。圖7-20硬件組態(tài)這里也通過一個(gè)例子來說明OB86的使用。新建一個(gè)項(xiàng)目,插入一然后雙擊CPU,選擇“Interrupts”選項(xiàng),可以看到CPU支持OB86,見圖7-21所示。硬件組態(tài)完成后,保存編譯,下載到CPU中。圖7-21CPU中的“Interrupts”選項(xiàng)然后雙擊CPU,選擇“Interrupts”選項(xiàng),可以看到COB86程序當(dāng)在通訊發(fā)生問題后或者訪問不到配置的機(jī)架或站時(shí)執(zhí)行,此時(shí)程序可能還可能需要調(diào)用OB82和OB122等組織塊,當(dāng)OB86執(zhí)行時(shí)可以通過它的臨時(shí)變量讀出產(chǎn)生的故障代碼和事件類型,通過它們的組合可以得到具體錯(cuò)誤信息,同時(shí)也可以讀出產(chǎn)生錯(cuò)誤的模塊地址和機(jī)架信息。STEP7不能時(shí)時(shí)監(jiān)控程序的運(yùn)行,可以用“VariableTable”監(jiān)控實(shí)時(shí)數(shù)據(jù)的變化。OB86程序當(dāng)在通訊發(fā)生問題后或者訪問不到配置的機(jī)架或站時(shí)執(zhí)打開組織塊OB86編寫程序,程序如圖7-22所示。圖7-22OB86中所編寫的程序打開組織塊OB86編寫程序,程序如圖7-22所示。圖7-22該程序也可以轉(zhuǎn)化成梯形圖,但程序中要將OB86的臨時(shí)變量OB86_RACKS_FLTDARRAY[0..31]改成OB86_z23DWORD。把程序下載到CPU后,在“Blocks”插入“VariableTable”,如圖7-23所示。然后打開,填入MB0、MB1、MW2、MD4并點(diǎn)擊鍵就可以得到相關(guān)信息了。圖7-23插入“VariableTable”該程序也可以轉(zhuǎn)化成梯形圖,但程序中要將OB86的臨時(shí)變量OB(8)通信錯(cuò)誤組織塊(OB87)在使用通信功能塊或全局?jǐn)?shù)據(jù)(GD)通信進(jìn)行數(shù)據(jù)交換時(shí),如果出現(xiàn)下列通信錯(cuò)誤,操作系統(tǒng)將調(diào)用OB87:接受全局?jǐn)?shù)據(jù)時(shí),檢測到不正確的幀標(biāo)識符(ID);全局?jǐn)?shù)據(jù)通信的狀態(tài)信息數(shù)據(jù)塊不存在或太短;接受到非法的全局?jǐn)?shù)據(jù)包編號。如果用于全局?jǐn)?shù)據(jù)通信狀態(tài)信息的數(shù)據(jù)塊丟失,需要用OB87生成該數(shù)據(jù)塊將它下載到CPU??梢允褂肧FC39至42封鎖或延時(shí)并使能通信錯(cuò)誤OB,表7-13描述了通信錯(cuò)誤OB86的臨時(shí)變量。(8)通信錯(cuò)誤組織塊(OB87)在使用通信功能塊或全局?jǐn)?shù)據(jù)(表7-13OB87的變量申明表表7-13OB87的變量申明表2、同步錯(cuò)誤組織塊同步錯(cuò)誤是與執(zhí)行用戶程序有關(guān)的錯(cuò)誤,程序中如果有不正確的地址區(qū)、錯(cuò)誤的編號和錯(cuò)誤的地址,都會(huì)出現(xiàn)同步錯(cuò)誤,操作系統(tǒng)將調(diào)用同步錯(cuò)誤OB。同步錯(cuò)誤組織塊包括OB121用于對程序錯(cuò)誤的處理和OB122用于處理模塊訪問錯(cuò)誤。同步錯(cuò)誤OB的優(yōu)先級與檢測到出錯(cuò)的塊的優(yōu)先級一致。因此OB121和OB122可以訪問中斷發(fā)生時(shí)累加器和其他寄存器中的內(nèi)容,用戶程序可以用它們來處理錯(cuò)誤。2、同步錯(cuò)誤組織塊同步錯(cuò)誤是與執(zhí)行用戶程序有關(guān)的錯(cuò)誤,程序中同步錯(cuò)誤可以用SFC36“MASK_FLT”來屏蔽,使某些同步錯(cuò)誤不觸發(fā)同步錯(cuò)誤OB的調(diào)用,但是CPU在錯(cuò)誤寄存器中記錄發(fā)生的被屏蔽的錯(cuò)誤。用錯(cuò)誤過濾器中的一位來表示某種同步錯(cuò)誤是否被屏蔽。錯(cuò)誤過濾器分為程序錯(cuò)誤過濾器和訪問錯(cuò)誤過濾器,分別占一個(gè)雙字。調(diào)用SFC37“DMSK_FLT”并且在當(dāng)前優(yōu)先級被執(zhí)行完后,將解除被屏蔽的錯(cuò)誤,并且清楚當(dāng)前優(yōu)先級的事件狀態(tài)寄存器中相應(yīng)的位??梢杂肧FC38“READ_ERR”讀出已經(jīng)發(fā)生的被屏蔽的錯(cuò)誤。對于S7-300(CPU318除外),不管錯(cuò)誤是否被屏蔽,錯(cuò)誤都會(huì)被送入診斷緩沖區(qū),并且CPU的“組錯(cuò)誤”LED會(huì)被點(diǎn)亮??梢栽诓煌膬?yōu)先級屏蔽某些同步錯(cuò)誤。在這種情況下,在特定的優(yōu)先級中發(fā)生這類錯(cuò)誤時(shí)不會(huì)停機(jī),CPU把該錯(cuò)誤存放到錯(cuò)誤寄存器中。但是無法知道是什么時(shí)候發(fā)生的錯(cuò)誤,也無法知道錯(cuò)誤發(fā)生的頻率。同步錯(cuò)誤可以用SFC36“MASK_FLT”來屏蔽,使某些同(1)編程錯(cuò)誤組織塊(OB121)
當(dāng)有關(guān)程序處理的故障事件發(fā)生時(shí)CPU操作系統(tǒng)調(diào)用OB121,OB121與被中斷的塊在同一優(yōu)先級中執(zhí)行,表7-14描述了編程錯(cuò)誤OB121的臨時(shí)變量。(1)編程錯(cuò)誤組織塊(OB121)當(dāng)有關(guān)程序處理的故障事件表7-14OB121的臨時(shí)變量表表7-14OB121的臨時(shí)變量表OB121程序在CPU執(zhí)行錯(cuò)誤時(shí)執(zhí)行,此錯(cuò)誤不包括用戶程序的邏輯錯(cuò)誤和功能錯(cuò)誤等,例如當(dāng)CPU調(diào)用一個(gè)未下載到CPU中的程序塊,CPU會(huì)調(diào)用OB121,通過臨時(shí)變量“OB121_BLK_TYPE”可以得出出現(xiàn)的錯(cuò)誤的程序塊。使用STEP7不能時(shí)時(shí)監(jiān)控程序的運(yùn)行,可以用“VariableTable”監(jiān)控實(shí)時(shí)數(shù)據(jù)的變化。打開事先已經(jīng)插入的OB121編寫程序,如圖7-24所示。圖7-24OB121中編寫的程序OB121程序在CPU執(zhí)行錯(cuò)誤時(shí)執(zhí)行,此錯(cuò)誤不包括用戶程序的接著在項(xiàng)目“Blocks”下插入FC1,打開FC1編寫程序,如圖7-25所示。圖7-25FC1中編寫的程序接著在項(xiàng)目“Blocks”下插入FC1,打開FC1編寫程序,然后打開OB1編寫程序,如圖7-26所示。圖7-26OB1中編寫的程序然后打開OB1編寫程序,如圖7-26所示。圖7-26OB1先將硬件和OB1下載到CPU中,此時(shí)CPU能正常運(yùn)行。在“Blocks”下插入“VariableTable”,然后打開,填入MW0和M10.0,并點(diǎn)擊鍵,程序運(yùn)行正常。將M10.0置為“true”后,CPU就報(bào)錯(cuò)停機(jī),查看CPU的診斷緩沖區(qū)信息,發(fā)現(xiàn)為編程錯(cuò)誤,這是將OB121也下載到CPU中,再將M10.0置為“true”,CPU會(huì)報(bào)錯(cuò)但不停機(jī),MW0立刻為“W#16#88”,“W#16#88”表示為OB程序錯(cuò)誤,檢查發(fā)現(xiàn)FC1未下載。下載FC1后,在將M10.0置為“true”,這是CPU不會(huì)再報(bào)錯(cuò),程序也不會(huì)在調(diào)用OB121。先將硬件和OB1下載到CPU中,此時(shí)CPU能正常運(yùn)行。在“B(2)I/O訪問錯(cuò)誤組織塊(OB122)當(dāng)對于模塊的數(shù)據(jù)訪問出現(xiàn)故障時(shí)CPU的操作系統(tǒng)調(diào)用OB122,OB122與被中斷的塊的同一優(yōu)先級中執(zhí)行,表7-15描述了I/O訪問錯(cuò)誤OB121的臨時(shí)變量。(2)I/O訪問錯(cuò)誤組織塊(OB122)當(dāng)對于模塊的數(shù)據(jù)訪問表7-15OB122的臨時(shí)變量表表7-15OB122的臨時(shí)變量表同樣,在這里運(yùn)用一個(gè)例子來說明OB122的用法。首先,新建一個(gè)項(xiàng)目,插入一個(gè)300的站,進(jìn)行硬件組態(tài)。插入一個(gè)CPU315-2DP和一個(gè)模擬量輸入模塊SM331。同時(shí)配置SMM331的“Inputs”選項(xiàng),把所有通道設(shè)置為電壓類型,注意模塊的量程卡要與設(shè)置的相同,并把模塊的邏輯輸入地址設(shè)置為256…257,如圖7-27所示。圖7-27硬件組態(tài)同樣,在這里運(yùn)用一個(gè)例子來說明OB122的用法。首先,新建一組態(tài)完成后,編譯保存并下載到CPU中。OB122程序在出現(xiàn)I/O訪問錯(cuò)誤是被調(diào)用,通過臨時(shí)變量“OB122_SW_FLT”可以讀出錯(cuò)去代碼,通過“OB122_BLK_TYPE”得出出錯(cuò)的程序塊,通過“OB122_MEM_ADDR”可以讀出發(fā)生錯(cuò)誤的存儲(chǔ)器地址使用STEP7不能時(shí)時(shí)監(jiān)控程序的運(yùn)行,可以用“VariableTable”監(jiān)控實(shí)時(shí)數(shù)據(jù)的變化。打開在“Blocks”下插入的OB122編寫程序,如圖7-28所示。圖7-28OB122中編寫的程序組態(tài)完成后,編譯保存并下載到CPU中。圖7-28OB122該程序也可以轉(zhuǎn)換為梯形圖。接著打開OB1編寫程序,如圖7-29所示。圖7-29OB1中編寫的程序該程序也可以轉(zhuǎn)換為梯形圖。圖7-29OB1中編寫的程序先將硬件組態(tài)和OB1下載到CPU中,這是CPU運(yùn)行正常。在“Blocks”下插入“VariableTable”,然后打開,填入MW0、MW2、MW4、MW6和M10.0,點(diǎn)擊鍵,程序運(yùn)行正常。將M10.0置為“true”,CPU會(huì)報(bào)錯(cuò)并停機(jī),查看CPU的診斷緩沖區(qū)信息,發(fā)現(xiàn)為I/O訪問錯(cuò)誤。將OB122下載到CPU中,再將M10.0置為“true”,CPU會(huì)報(bào)錯(cuò)但不停機(jī),檢查并修改OB1程序,如圖7-30所示。圖7-30OB1修改后的程序先將硬件組態(tài)和OB1下載到CPU中,這是CPU運(yùn)行正常。在“重新下載OB1,CPU不再報(bào)錯(cuò),程序運(yùn)行正常。對于某些同步錯(cuò)誤,可以調(diào)用系統(tǒng)功能SFC44,為輸入模塊提供一個(gè)替代錯(cuò)誤值,以便使程序能繼續(xù)執(zhí)行。如果錯(cuò)誤發(fā)生在輸入模塊,可以在用戶程序中直接替代。如果是輸出模塊錯(cuò)誤,輸出模塊將自動(dòng)地用組態(tài)時(shí)定義的值替代。替代值雖然不一定能反映真實(shí)的過程信號,但是可以避免終止用戶程序和進(jìn)入STOP模式。重新下載OB1,CPU不再報(bào)錯(cuò),程序運(yùn)行正常。第七章故障診斷PLC是運(yùn)行在工業(yè)環(huán)境中的控制器,一般而言可靠性比較高,出現(xiàn)故障的概率較低,但是,出現(xiàn)故障也是難以避免的。一般引發(fā)故障的原因有很多,故障的后果也有很多種。引發(fā)故障的原因雖然我們不能完全控制,但是我們可以通過日常的檢查和定期的維護(hù)來消除多種隱患,把故障率降到最低。故障的后果輕的可能造成設(shè)備的停機(jī),影響生產(chǎn)的數(shù)量;重的可能造成財(cái)產(chǎn)損失和人員傷亡,如果是一些特殊的控制對象,一旦出現(xiàn)故障可能會(huì)引發(fā)更嚴(yán)重的后果。故障發(fā)生后,對于維護(hù)人員來說最重要的是找到故障的原因,迅速排除故障,盡快恢復(fù)系統(tǒng)的運(yùn)行。對于系統(tǒng)設(shè)計(jì)人員在設(shè)計(jì)時(shí)要考慮到系統(tǒng)出現(xiàn)故障后的系統(tǒng)的自我保護(hù)措施力爭使故障的停機(jī)時(shí)間最短,故障的產(chǎn)生的損失最小。第七章故障診斷PLC是運(yùn)行在工業(yè)環(huán)境中的控制器,一般而言可7.1了解S7-300PLC的基本故障種類一般PLC的故障主要有外部故障或是內(nèi)部錯(cuò)誤造成。外部故障時(shí)由外部傳感器或執(zhí)行機(jī)構(gòu)的故障等引發(fā)PLC產(chǎn)生故障,可能會(huì)使整個(gè)系統(tǒng)停機(jī),甚至燒壞PLC。而內(nèi)部錯(cuò)誤是PLC內(nèi)部的功能性錯(cuò)誤或編成錯(cuò)誤造成的,可以使系統(tǒng)停機(jī)。S7-300具有很強(qiáng)的錯(cuò)誤(或稱故障)檢測和處理能力,CPU檢測到某種錯(cuò)誤后,操作系統(tǒng)調(diào)用對應(yīng)得組織塊,用戶可以在組織塊中編程,對發(fā)生的錯(cuò)誤采取相應(yīng)的措施。對于大多數(shù)錯(cuò)誤,如果沒有給組織塊編程,出現(xiàn)錯(cuò)誤時(shí)CPU將進(jìn)入STOP模式。被S7CPU檢測到并且用戶可以通過組織塊對其進(jìn)行處理的錯(cuò)誤分為兩類:1、異步錯(cuò)誤異步錯(cuò)誤是與PLC的硬件或操作系統(tǒng)密切相關(guān)的錯(cuò)誤,與程序執(zhí)行無關(guān),但異步錯(cuò)誤的后果一般比較嚴(yán)重。2、同步錯(cuò)誤同步錯(cuò)誤是與執(zhí)行用戶程序有關(guān)的錯(cuò)誤,程序中如果有不正確的地址區(qū),錯(cuò)誤的編號或錯(cuò)誤的地址,都會(huì)出現(xiàn)同步錯(cuò)誤,操作系統(tǒng)將調(diào)用同步錯(cuò)誤OB。7.1了解S7-300PLC的基本故障種類一般PLC的故7.2掌握PLC的常規(guī)維護(hù)及故障排除的方法為了保障系統(tǒng)的正常運(yùn)行,定期對PLC系統(tǒng)進(jìn)行維護(hù)和檢查是必不可少的,而且還必須熟悉一些故障診斷和排除方法。7.2.1檢查與維護(hù)7.2.2外部故障的排除方法7.2.3內(nèi)部錯(cuò)誤的故障診斷7.2掌握PLC的常規(guī)維護(hù)及故障排除的方法為了保障系統(tǒng)的正7.2.1檢查與維護(hù)一、定期檢查PLC是一種工業(yè)控制設(shè)備,盡管在可靠性方面采取了許多措施,但工作環(huán)境對PLC影響還是很大的。所以,通常每隔半年時(shí)間應(yīng)對PLC作定期檢查。如果PLC的工作條件不符合表7-1規(guī)定的標(biāo)準(zhǔn),就要做一些應(yīng)急處理,以便使PLC工作在規(guī)定的標(biāo)準(zhǔn)環(huán)境。7.2.1檢查與維護(hù)一、定期檢查表7-1周期性檢查一覽表表7-1周期性檢查一覽表二、日常維護(hù)PLC除了鋰電池和繼電器輸出觸點(diǎn)外,基本上沒有其它易損元器件。由于存放用戶程序的隨機(jī)內(nèi)存(RAM),計(jì)數(shù)器和具有保持功能的輔助繼電器等均用鋰電池保護(hù),鋰電池的壽命大約5年,當(dāng)鋰電池的電壓逐漸降低達(dá)一定程度時(shí),PLC基本單元上的電池電壓跌落指示燈會(huì)亮。提示用戶注意,有鋰電池所支持的程序還可以保持一周左右,必須更換電池,這是日常維護(hù)的主要內(nèi)容。二、日常維護(hù)PLC除了鋰電池和繼電器輸出觸點(diǎn)外,基本上沒有其調(diào)換鋰電池的步驟:
1、在拆裝之前,應(yīng)先讓PLC通電15S以上,這樣可使作為內(nèi)存?zhèn)溆秒娫吹碾娙萜鞒潆?,在鋰電池?cái)嚅_后,該電容可對PLC作短暫供電,以保護(hù)RAM中的信息不丟失。2、斷開PLC的交流電源。3、打開基本單元的電池蓋板。4、取下舊電池,裝上新電池。5、蓋上電池蓋板。更換電池的時(shí)間要盡量短,一般不允許超過3min。如果時(shí)間過長,RAM中的程序?qū)G失。調(diào)換鋰電池的步驟:1、在拆裝之前,應(yīng)先讓PLC通電15S以7.2.2外部故障的排除方法PLC有很強(qiáng)的自診斷能力,當(dāng)PLC自身故障或外圍設(shè)備發(fā)生故障,都可用PLC上具有診斷指示功能的發(fā)光二極管的亮滅來診斷。7.2.2外部故障的排除方法一、故障查找1、總體檢查根據(jù)總體檢查流程圖找出故障點(diǎn)的大方向,逐漸細(xì)化,以找出具體故障,如圖7-1所示。一、故障查找1、總體檢查2、電源故障檢查電源等不亮部需要對供電系統(tǒng)進(jìn)行檢查,檢查流程圖如圖7-2所示。
2、電源故障檢查電源等不亮部需要對供電系統(tǒng)進(jìn)行檢查,檢查流程3、運(yùn)行故障檢查電源正常,運(yùn)行指示燈不亮,說明系統(tǒng)已因某種異常而終止了正常運(yùn)行,檢查流程圖如圖7-3所示。3、運(yùn)行故障檢查電源正常,運(yùn)行指示燈不亮,說明系統(tǒng)已因某種異4、輸入輸出故障檢查輸入輸出是PLC與外部設(shè)備進(jìn)行信息交流的信道,其是否正常工作,除了和輸入輸出單元有關(guān)外,還與聯(lián)接配線、接線端子、保險(xiǎn)管等組件狀態(tài)有關(guān)。圖7-4和圖7-5分別所示的是輸入檢查流程和輸出檢查流程。圖7-4輸入檢查流程圖4、輸入輸出故障檢查輸入輸出是PLC與外部設(shè)備進(jìn)行信息交流的圖7-5輸出檢查流程圖課件-西門子S7300PLC應(yīng)用技術(shù)第六章故障診斷5、外圍環(huán)境的檢查影響PLC工作的環(huán)境因素主要有溫度、濕度、噪音與粉塵,以及腐蝕性酸堿等。5、外圍環(huán)境的檢查二、故障的處理不同故障產(chǎn)生的原因不同,它們也有不同的處理方法,具體請見下表所列。表7-2CPU裝置、I/O擴(kuò)展裝置故障處理二、故障的處理不同故障產(chǎn)生的原因不同,它們也有不同的處理方法表7-3輸入單元故障處理表7-3輸入單元故障處理課件-西門子S7300PLC應(yīng)用技術(shù)第六章故障診斷表7-4輸出單元故障處理表7-4輸出單元故障處理7.2.3內(nèi)部錯(cuò)誤的故障診斷S7-300具有非常強(qiáng)大的故障診斷功能,通過STEP7編程軟件可以獲得大量的硬件故障與編程錯(cuò)誤的信息,使用戶能迅速地查找到故障。這里的診斷是指S7-300內(nèi)部集成的錯(cuò)誤識別和記錄功能,錯(cuò)誤信息在CPU的診斷緩沖區(qū)內(nèi)。有錯(cuò)誤或事件發(fā)生時(shí),標(biāo)有日期和時(shí)間的信息被保存到診斷緩沖區(qū),時(shí)間保存到系統(tǒng)的狀態(tài)表中,如果用戶已對有關(guān)的錯(cuò)誤處理組織塊編程,CPU將調(diào)用該組織塊。7.2.3內(nèi)部錯(cuò)誤的故障診斷S7-300具有非常強(qiáng)大的故障一、故障診斷的基本方法在SIMATIC管理器中用菜單命令“View”→“Online”打開再現(xiàn)窗口。打開所有的站,查看是否有CPU顯示了指示錯(cuò)誤或故障的診斷符號。診斷符號用來形象直觀地表示模塊的運(yùn)行模式和模塊的故障狀態(tài),如圖7-6所示。如果模塊有診斷信息,在模塊符號上將會(huì)增加一個(gè)診斷符號,或者模塊符號的對比度降低。圖7-6診斷符號一、故障診斷的基本方法在SIMATIC管理器中用菜單命令“V診斷符號“當(dāng)前組態(tài)與實(shí)際組態(tài)不匹配”表示被組態(tài)的模塊不存在,或者插入了與組態(tài)的模塊的型號不同的模塊。診斷符號“無法診斷”表示無線上連接,或該模塊不支持模塊診斷信息,例如電源模塊或子模塊。“強(qiáng)制”符號表示在該模塊上有變量被強(qiáng)制,即在模塊的用戶程序中有變量被賦予一個(gè)固定植,該數(shù)據(jù)值不能被程序改變?!皬?qiáng)制”符號可以與其它符號組合在一起顯示,如圖7-6中“強(qiáng)制與運(yùn)行”符號。從在線的SIMATIC管理器的窗口、在線的硬件診斷功能打開的快速窗口和在線的硬件組態(tài)窗口(診斷窗口),都可以觀察到診斷符號。通過觀察診斷符號,可以判斷CPU模塊的運(yùn)行模式,是否有強(qiáng)制變量,CPU模塊和功能模塊(FM)受否有故障。打開在線窗口,在SIMATIC管理器中執(zhí)行菜單命令“PLC”→“Diagnostic/Setting”→“HardwareDiagnostics”,將打開硬件診斷快速瀏覽窗口。在該窗口中顯示PLC的狀態(tài),看到診斷功能的模塊的硬件故障,雙擊故障模塊可以獲得詳細(xì)的故障信息。診斷符號“當(dāng)前組態(tài)與實(shí)際組態(tài)不匹配”表示被組態(tài)的模塊不存在,二、利用CPU診斷緩沖區(qū)進(jìn)行詳細(xì)故障診斷建立與PLC的在線連接后,在SIMATIC管理器中選擇要檢查的站,執(zhí)行菜單命令“PLC”→“Diagnostics/Setting”→“ModuleInformation”,如圖7-7所示,將打開模塊信息窗口,顯示該站中CPU的信息。在快速窗口中使用“ModuleInformation”。圖7-7打開CPU診斷緩沖區(qū)二、利用CPU診斷緩沖區(qū)進(jìn)行詳細(xì)故障診斷建立與PLC的在線連在模塊信息窗口中的診斷緩沖區(qū)(DiagnosticBuffer)選項(xiàng)中,給出了CPU中發(fā)生的事件一覽表,選中“Events”窗口中某一行的某一事件,下面灰色的“Detailson”窗口將顯示所選事件的詳細(xì)信息,見圖7-8所示。使用診斷緩沖區(qū)可以對系統(tǒng)得錯(cuò)誤進(jìn)行分析,查找停機(jī)的原因,并對出現(xiàn)的診斷時(shí)間分類。圖7-8CPU模塊的在線模塊信息窗在模塊信息窗口中的診斷緩沖區(qū)(DiagnosticBuff診斷事件包括模塊故障、過程寫錯(cuò)誤、CPU中的系統(tǒng)錯(cuò)誤、CPU運(yùn)行模式的切換、用戶程序的錯(cuò)誤和用戶用系統(tǒng)功能SFC52定義的診斷事件。在模塊信息窗口中,編號為1,位于最上面的事件是最近發(fā)生的事件。如果顯示因編程錯(cuò)誤造成CPU進(jìn)入STOP模式,選擇該事件,并點(diǎn)擊“OpenBlock”按鈕,將在程序編輯器中打開于錯(cuò)誤有關(guān)的塊,顯示出錯(cuò)的程序段。診斷中斷和DP從站診斷信息用于查找模塊和DP從站中的故障原因?!癕emory”(內(nèi)存)選項(xiàng)給出了所選的CPU或M7功能模塊的工作內(nèi)存和裝載內(nèi)存當(dāng)前的使用情況,可以檢查CPU或功能模塊的裝載內(nèi)存中是否有足夠的空間用來存儲(chǔ)新的塊,如圖7-9所示。圖7-9“Memory”選項(xiàng)診斷事件包括模塊故障、過程寫錯(cuò)誤、CPU中的系統(tǒng)錯(cuò)誤、CPU“ScanCycleTime”(掃描循環(huán)時(shí)間)選項(xiàng)卡用于顯示所選CPU或M7功能模塊的最小循環(huán)時(shí)間、最大循環(huán)時(shí)間和當(dāng)前循環(huán)時(shí)間,如圖7-10所示。如果最長循環(huán)時(shí)間接近組態(tài)的最大掃描循環(huán)時(shí)間,由于循環(huán)時(shí)間的波動(dòng)可能產(chǎn)生時(shí)間錯(cuò)誤,此時(shí)應(yīng)增大設(shè)置的用戶程序最大循環(huán)時(shí)間(監(jiān)控時(shí)間)。如果循環(huán)時(shí)間小于設(shè)置的最小循環(huán)時(shí)間,CPU自動(dòng)延長循環(huán)至設(shè)置的最小循環(huán)時(shí)間。在這個(gè)延長時(shí)間內(nèi)可以處理背景組織塊(OB90)。組態(tài)硬件時(shí)可以設(shè)置最大和最小循環(huán)時(shí)間。圖7-10“ScanCycleTime”選項(xiàng)“ScanCycleTime”(掃描循環(huán)時(shí)間)選項(xiàng)卡用于“TimeSystem”(時(shí)間系統(tǒng))選項(xiàng)卡顯示當(dāng)前日期、時(shí)間、運(yùn)行的小時(shí)數(shù)以及時(shí)鐘同步的信息,見圖7-11所示。圖7-11“TimeSystem”選項(xiàng)“TimeSystem”(時(shí)間系統(tǒng))選項(xiàng)卡顯示當(dāng)前日期、時(shí)“PerformanceData”(性能數(shù)據(jù))選項(xiàng)卡給出了所選模塊(CPU/FM)可以使用的地址區(qū)和可以使用的OB、SFB、和SFC,見圖7-12所示。圖7-12“PerformanceData”選項(xiàng)“PerformanceData”(性能數(shù)據(jù))選項(xiàng)卡給出了“Communication”(通信)選項(xiàng)卡給出了所選模塊的傳輸速率、可以建立的連接個(gè)數(shù)和通信處理占掃描周期的百分比,如圖7-13所示。圖7-13“Communication”選項(xiàng)“Communication”(通信)選項(xiàng)卡給出了所選模塊的“Stacks”(堆棧)選項(xiàng)卡只能在STOP模式或HOLD(保持)模式下調(diào)用,顯示所選模塊的B(塊)堆棧。還可以顯示I(中斷)堆棧、L(局域)堆棧以及嵌套深度堆棧??梢蕴D(zhuǎn)到使塊中斷的故障點(diǎn),判明引起停機(jī)的原因。在模塊信息窗口各選項(xiàng)卡的上面顯示了附加的信息,例如所選模塊的在線路徑、CPU的操作模式和狀態(tài)(例如出錯(cuò)或OK)、所選模塊的操作模式,如果它有自己的操作模式的話(例如CP342-5)。從(“AccessibleNodes”窗口)打開的非CPU模塊的模塊信息中,不能顯示CPU本身的操作模式和所選模塊的狀態(tài)?!癝tacks”(堆棧)選項(xiàng)卡只能在STOP模式或HOLD(三、錯(cuò)誤處理組織塊組織塊是操作系統(tǒng)與用戶程序之間的接口。S7提供了各種不同的組織塊(OB),用組織塊可以創(chuàng)建在特定時(shí)間執(zhí)行的程序和響應(yīng)特定事件的程序。當(dāng)系統(tǒng)程序可以檢測下列錯(cuò)誤:不正確的CPU功能、系統(tǒng)程序執(zhí)行中的錯(cuò)誤、用戶程序中的錯(cuò)誤和I/O中的錯(cuò)誤。根據(jù)錯(cuò)誤類型的不同,CPU設(shè)置為進(jìn)入STOP模式或調(diào)用一個(gè)錯(cuò)誤處理OB。當(dāng)CPU檢測到錯(cuò)誤時(shí),會(huì)調(diào)用適當(dāng)?shù)慕M織塊,見表7-5。如果沒有相應(yīng)的錯(cuò)誤處理OB,CPU將進(jìn)入STOP模式。用戶可以在錯(cuò)誤處理OB中編寫如何處理這種錯(cuò)誤的程序,以減小或消除錯(cuò)誤的影響。三、錯(cuò)誤處理組織塊組織塊是操作系統(tǒng)與用戶程序之間的接口。S7表7-5錯(cuò)誤處理組織塊表7-5錯(cuò)誤處理組織塊為避免發(fā)生某種錯(cuò)誤時(shí)CPU進(jìn)入停機(jī),可以在CPU中建立一個(gè)對應(yīng)的空的組織塊。用戶可以利用OB中的變量聲明表提供的信息來判別錯(cuò)誤的類型。根據(jù)S7CPU檢測到并且用戶可以通過組織塊對其進(jìn)行處理的錯(cuò)誤分為異步錯(cuò)誤和同步錯(cuò)誤。為避免發(fā)生某種錯(cuò)誤時(shí)CPU進(jìn)入停機(jī),可以在CPU中建立一個(gè)對1、異步錯(cuò)誤組織塊異步錯(cuò)誤是與PLC的硬件或操作系統(tǒng)密切相關(guān)的錯(cuò)誤,與程序執(zhí)行無關(guān)。異步錯(cuò)誤的后果一般都比較嚴(yán)重。異步錯(cuò)誤對應(yīng)的組織塊為OB70~OB73和OB80~OB87,有最高的優(yōu)先級。操作系統(tǒng)檢測到一個(gè)異步錯(cuò)誤時(shí),將啟動(dòng)相應(yīng)的OB。1、異步錯(cuò)誤組織塊異步錯(cuò)誤是與PLC的硬件或操作系統(tǒng)密切相關(guān)(1)時(shí)間錯(cuò)誤處理組織塊(OB80)OB執(zhí)行時(shí)出現(xiàn)故障S7-300CPU的操作系統(tǒng)調(diào)用OB80。這樣的故障包括循環(huán)時(shí)間超出、執(zhí)行OB時(shí)應(yīng)答故障、向前移動(dòng)時(shí)間以致于躍過了OB的啟動(dòng)的時(shí)間、CLR后恢復(fù)RUN方式。如果當(dāng)循環(huán)中斷OB仍在執(zhí)行前一次調(diào)用時(shí),該OB塊的啟動(dòng)事件發(fā)生,操作系統(tǒng)調(diào)用OB80。如果OB80未編程,CPU變?yōu)镾TOP方式,可以使用SFC39至42封鎖或延時(shí)和在使用時(shí)間故障OB。如果在同一個(gè)稍描周期中由于掃描時(shí)間超出OB80被調(diào)用兩次,CPU就變?yōu)镾TOP方式,可以通過在程序中適當(dāng)?shù)奈恢谜{(diào)用SFC43“RE_TRIGR”來避免這種情況。(1)時(shí)間錯(cuò)誤處理組織塊(OB80)OB執(zhí)行時(shí)出現(xiàn)故障S7-打開OB80可以從OB80的臨時(shí)變量中得到故障信息,見圖7-14所示。圖7-14OB80的臨時(shí)變量打開OB80可以從OB80的臨時(shí)變量中得到故障信息,見圖7-表7-6OB80的變量申明表表7-6OB80的變量申明表(2)電源故障處理組織塊(OB81)與電源(僅對S7-400)或后備電池有關(guān)的故障事件發(fā)生時(shí),S7-300CPU的操作系統(tǒng)調(diào)用OB81,表7-7為OB81的變量申明表。如果OB81未編程,CPU并不轉(zhuǎn)換為STOP方式??梢允褂肧FC39至42來禁用、延時(shí)或再使用電源故障(OB81)。(2)電源故障處理組織塊(OB81)與電源(僅對S7-400表7-7OB81的變量申明表表7-7OB81的變量申明表(3)診斷中斷處理組織塊(OB82)如果模塊具有診斷能力又使能了診斷中斷,當(dāng)它檢測到錯(cuò)誤時(shí),它輸出一個(gè)診斷中斷請求給CPU,以及錯(cuò)誤消失時(shí),操作系統(tǒng)都會(huì)調(diào)用OB82。當(dāng)一個(gè)診斷中斷被觸發(fā)時(shí),有問題的模塊自動(dòng)地在診斷中斷OB的起動(dòng)信息和診斷緩沖區(qū)中存入4個(gè)字節(jié)的診斷數(shù)據(jù)和模塊的起始地址??梢杂肧FC39至42來禁用、延時(shí)或再使用診斷中斷(OB82),表7-8描述了診斷中斷OB82的臨時(shí)變量。(3)診斷中斷處理組織塊(OB82)如果模塊具有診斷能力又使課件-西門子S7300PLC應(yīng)用技術(shù)第六章故障診斷表7-8OB82的變量申明表表7-8OB82的變量申明表在編寫OB82的程序時(shí),要從OB82的起動(dòng)信息中獲得與出現(xiàn)的錯(cuò)誤有關(guān)的更確切的診斷信息,例如是哪一個(gè)通道出錯(cuò),出現(xiàn)的是哪種錯(cuò)誤。使用SFC51“RDSYSST”也可以讀出模塊的診斷數(shù)據(jù),用SFC52“WR_USMSG”可以將這些信息存入診斷緩沖區(qū)?,F(xiàn)在通過結(jié)合模板的短線診測應(yīng)用和SFC51來說明診斷中斷組織塊OB82的使用方法。在編寫OB82的程序時(shí),要從OB82的起動(dòng)信息中獲得與出現(xiàn)的首先,在SIMATIC管理器中新建一個(gè)項(xiàng)目,插入一個(gè)300站。硬件組態(tài),在機(jī)架上插入CPU315-2DP和一塊具有中斷功能模擬量輸入模塊SM331,配置SM331模塊的“Inputs”選項(xiàng),選擇0-1通道組為2線制電流(2DMU),其它通道組為電壓,并注意模塊的量程卡要與設(shè)置的相同。選中“Enable”框中的“DiagnosticInterrupt”選項(xiàng),選中“Diagnostics”選項(xiàng)中的0-1通道組中的“GroupDiagnostics”和“withCheckforWireBreak”選項(xiàng),如圖7-15所示。圖7-15硬件組態(tài)首先,在SIMATIC管理器中新建一個(gè)項(xiàng)目,插入一個(gè)300站點(diǎn)擊OK,然后雙擊CPU315-2DP,選擇“Interrupts”選項(xiàng),可以看到CPU支持OB82,見圖7-16所示。硬件組態(tài)完成后,保存編譯,下載到CPU中。圖7-16CPU中的“Interrupts”選項(xiàng)點(diǎn)擊OK,然后雙擊CPU315-2DP,選擇“Interr然后完成診斷程序。OB82程序當(dāng)在硬件組態(tài)中設(shè)定的診斷中斷發(fā)生后執(zhí)行,但OB82執(zhí)行時(shí)可以通過它的臨時(shí)變量OB82_MDL_ADDR讀出產(chǎn)生診斷中斷的模塊的邏輯地址。STEP7不能時(shí)時(shí)監(jiān)控程序的運(yùn)行。在SIMATIC管理器中S7Program(1)下插入一個(gè)STLSource文件STLSource(1),如圖7-17所示。圖7-17插入STLSource文件然后完成診斷程序。OB82程序當(dāng)在硬件組態(tài)中設(shè)定的診斷中斷發(fā)打開OB1,在“Libraries”→“StandardLibraries”→“SystemFunctionBlocks”下找到SFC51“RDSYSSTDIAGNSTC”,按F1鍵,出現(xiàn)SFC51在線幫助信息,在幫助信息的最低部點(diǎn)擊“ExampleformodulediagnosticswiththeSFC51”,然后點(diǎn)擊“STLSourceFile”,選中全部STLSource源程序拷貝到STLSource(1)中,編譯保存。這是在Blocks中生成OB1、OB82、DB13和SFC51。打開OB82,對其中的程序做簡單的修改,將19和20行的程序拷貝到go:后面,如圖7-18所示。再進(jìn)行保存,下載到CPU中。圖7-18OB82的程序修改打開OB1,在“Libraries”→“StandardL下載完成后,將CPU上的模式選擇開關(guān)切換到“RUN”狀態(tài),此時(shí),CPU上的“RUN”燈和“SF”燈會(huì)亮,SM331模塊上的“SF”燈也會(huì)亮。同時(shí),查看CPU的診斷緩沖區(qū)可以獲得相應(yīng)的故障信息。打開DB13數(shù)據(jù)塊,在線監(jiān)控,見圖7-19所示。因?yàn)橥ǖ罃嗑€是一到來事件,所以診斷信息存儲(chǔ)到COME數(shù)組中。圖7-19DB13中的數(shù)據(jù)變換下載完成后,將CPU上的模式選擇開關(guān)切換到“RUN”狀態(tài),此本例中COME數(shù)組字節(jié)的含義接受如下:COME[1]=B#16#D:表示通道錯(cuò)誤,外部故障和模塊問題;COME[2]=B#16#15:表示此段信息為模擬量模塊的通道信息;COME[3]=B#16#0:表示CPU處于運(yùn)行狀態(tài),無字節(jié)2中標(biāo)示的故障信息;COME[4]=B#16#0:表示無字節(jié)3中標(biāo)示的故障信息;COME[5]=B#16#71:表示模擬量輸入;COME[6]=B#16#8:表示模塊的每個(gè)通道有8個(gè)診斷位;COME[7]=B#16#8:表示模塊的通道數(shù);COME[8]=B#16#3:表示0通道錯(cuò)誤和1通道錯(cuò)誤,其他通道正常;COME[9]=B#16#10:表示0通道斷線;COME[10]=B#16#10:表示1通道斷線;COME[11]=B#16#0:表示2通道正常,其他通道與2通道相同。本例中COME數(shù)組字節(jié)的含義接受如下:(4)插入/拔出模塊中斷組織塊(OB83)當(dāng)組態(tài)的模塊插入/拔出后或在SETP7下修改了模塊的參數(shù)并在“RUN”狀態(tài)把所做修改下載到CPU后,CPU操作系統(tǒng)調(diào)用OB83。在“RUN”、“STOP”和“STARTUP”狀態(tài)時(shí)每次組態(tài)的模塊插入或拔出,就產(chǎn)生一個(gè)插入/拔出中斷(電源模塊、CPU、適配模塊和IM模塊不能在這種狀態(tài)下移出)。該中斷引起有關(guān)CPU的診斷緩沖區(qū)和系統(tǒng)狀態(tài)表的記錄如果在“RUN”狀態(tài)下拔出組態(tài)的模塊,OB83期啟動(dòng)。由于僅以一秒的間隔監(jiān)視模塊的存在,如果模塊被直接訪問或當(dāng)過程映像被刷新時(shí)可能首先檢測出訪問故障。如果在“RUN”狀態(tài)下插入一塊模塊,操作系統(tǒng)檢查插入模塊的類型是否與組態(tài)的記錄一致,如果模塊類型匹配,于是OB83被啟動(dòng)并且參數(shù)被賦值。可以借助SFC39至42來禁用、延時(shí)或再使用插入/拔出模塊中斷(OB83),表7-9描述了插入/拔出模塊中斷OB83的臨時(shí)變量。(4)插入/拔出模塊中斷組織塊(OB83)當(dāng)組態(tài)的模塊插入/表7-9OB83的變量申明表表7-9OB83的變量申明表(5)CPU硬件故障處理組織塊(OB84)當(dāng)CPU檢測到MPI網(wǎng)絡(luò)的接口故障、通信總線的接口故障或分布式I/O網(wǎng)卡的接口故障時(shí),操作系統(tǒng)調(diào)用OB84。故障消除時(shí)也會(huì)調(diào)用該OB塊,即事件到來和離去時(shí)都調(diào)用該OB。表7-10描述了CPU硬件故障OB84的臨時(shí)變量。(5)CPU硬件故障處理組織塊(OB84)當(dāng)CPU檢測到MP表7-10OB84的變量申明表表7-10OB84的變量申明表(6)優(yōu)先級錯(cuò)誤處理組織塊(OB85)在以下情況下將會(huì)觸發(fā)優(yōu)先級錯(cuò)誤中斷:產(chǎn)生了一個(gè)中斷事件,但是對應(yīng)的OB塊沒有下載到CPU;訪問一個(gè)系統(tǒng)功能塊的背景數(shù)據(jù)塊時(shí)出錯(cuò);刷新過程映像表時(shí)I/O訪問出錯(cuò),模塊不存在或有故障。在編寫OB85的程序時(shí),應(yīng)根據(jù)OB85的起動(dòng)信息,判定是哪個(gè)模塊損壞或沒有插入??梢允褂肧FC39至42封鎖或延時(shí)并使能優(yōu)先級故障OB,表7-11描述了優(yōu)先級故障OB85的臨時(shí)變量。(6)優(yōu)先級錯(cuò)誤處理組織塊(OB85)在以下情況下將會(huì)觸發(fā)優(yōu)表7-11O85的變量申明表表7-11O85的變量申明表(7)機(jī)架故障組織塊(OB86)出現(xiàn)下列故障或故障消失時(shí),都會(huì)觸發(fā)機(jī)架故障中斷,操作系統(tǒng)將調(diào)用OB86:擴(kuò)展機(jī)架故障(不包括CPU318),DP主站系統(tǒng)故障或分布式I/O故障。故障產(chǎn)生和故障消失時(shí)都會(huì)產(chǎn)生中斷。在編寫OB86的程序時(shí),應(yīng)根據(jù)OB86的起動(dòng)信息,判斷是哪個(gè)機(jī)架損壞或找不到??梢允褂肧FC39至42封鎖或延時(shí)并使能OB86,表7-12描述了機(jī)架故障OB86的臨時(shí)變量。(7)機(jī)架故障組織塊(OB86)出現(xiàn)下列故障或故障消失時(shí),都表7-12O86的變量申明表表7-12O86的變量申明表這里也通過一個(gè)例子來說明OB86的使用。新建一個(gè)項(xiàng)目,插入一個(gè)300站,進(jìn)行硬件組態(tài)。在機(jī)架中插入CPU315-2DP,選擇DP作為主站,在DP主站下添加一個(gè)ET200M從站,并在從站中插入一個(gè)模擬量輸入模塊SM331,如圖7-20所示。圖7-20硬件組態(tài)這里也通過一個(gè)例子來說明OB86的使用。新建一個(gè)項(xiàng)目,插入一然后雙擊CPU,選擇“Interrupts”選項(xiàng),可以看到CPU支持OB86,見圖7-21所示。硬件組態(tài)完成后,保存編譯,下載到CPU中。圖7-21CPU中的“Interrupts”選項(xiàng)然后雙擊CPU,選擇“Interrupts”選項(xiàng),可以看到COB86程序當(dāng)在通訊發(fā)生問題后或者訪問不到配置的機(jī)架或站時(shí)執(zhí)行,此時(shí)程序可能還可能需要調(diào)用OB82和OB122等組織塊,當(dāng)OB86執(zhí)行時(shí)可以通過它的臨時(shí)變量讀出產(chǎn)生的故障代碼和事件類型,通過它們的組合可以得到具體錯(cuò)誤信息,同時(shí)也可以讀出產(chǎn)生錯(cuò)誤的模塊地址和機(jī)架信息。STEP7不能時(shí)時(shí)監(jiān)控程序的運(yùn)行,可以用“VariableTable”監(jiān)控實(shí)時(shí)數(shù)據(jù)的變化。OB86程序當(dāng)在通訊發(fā)生問題后或者訪問不到配置的機(jī)架或站時(shí)執(zhí)打開組織塊OB86編寫程序,程序如圖7-22所示。圖7-22OB86中所編寫的程序打開組織塊OB86編寫程序,程序如圖7-22所示。圖7-22該程序也可以轉(zhuǎn)化成梯形圖,但程序中要將OB86的臨時(shí)變量OB86_RACKS_FLTDARRAY[0..31]改成OB86_z23DWORD。把程序下載到CPU后,在“Blocks”插入“VariableTable”,如圖7-23所示。然后打開,填入MB0、MB1、MW2、MD4并點(diǎn)擊鍵就可以得到相關(guān)信息了。圖7-23插入“VariableTable”該程序也可以轉(zhuǎn)化成梯形圖,但程序中要將OB86的臨時(shí)變量OB(8)通信錯(cuò)誤組織塊(OB87)在使用通信功能塊或全局?jǐn)?shù)據(jù)(GD)通信進(jìn)行數(shù)據(jù)交換時(shí),如果出現(xiàn)下列通信錯(cuò)誤,操作系統(tǒng)將調(diào)用OB87:接受全局?jǐn)?shù)據(jù)時(shí),檢測到不正確的幀標(biāo)識符(ID);全局?jǐn)?shù)據(jù)通信的狀態(tài)信息數(shù)據(jù)塊不存在或太短;接受到非法的全局?jǐn)?shù)據(jù)包編號。如果用于全局?jǐn)?shù)據(jù)通信狀態(tài)信息的數(shù)據(jù)塊丟失,需要用OB87生成該數(shù)據(jù)塊將它下載到CPU??梢允褂肧FC39至42封鎖或延時(shí)并使能通信錯(cuò)誤OB,表7-13描述了通信錯(cuò)誤OB86的臨時(shí)變量。(8)通信錯(cuò)誤組織塊(OB87)在使用通信功能塊或全局?jǐn)?shù)據(jù)(表7-13OB87的變量申明表表7-13OB87的變量申明表2、同步錯(cuò)誤組織塊同步錯(cuò)誤是與執(zhí)行用戶程序有關(guān)的錯(cuò)誤,程序中如果有不正確的地址區(qū)、錯(cuò)誤的編號和錯(cuò)誤的地址,都會(huì)出現(xiàn)同
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年浮雕藝術(shù)門項(xiàng)目可行性研究報(bào)告
- 2024年干膚機(jī)項(xiàng)目可行性研究報(bào)告
- 2024年中國不銹鋼脫水機(jī)市場調(diào)查研究報(bào)告
- 電力物資買賣合同統(tǒng)一文本
- 北京信息職業(yè)技術(shù)學(xué)院《網(wǎng)球理論與實(shí)踐》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025至2030年中國氣動(dòng)對夾式硬密封蝶閥行業(yè)投資前景及策略咨詢研究報(bào)告
- 竹片涼席銑槽機(jī)課程設(shè)計(jì)
- -銷售經(jīng)理年度工作總結(jié)
- 網(wǎng)游工作室加盟合同
- 自卸車轉(zhuǎn)讓合同
- 湖南2025年湖南機(jī)電職業(yè)技術(shù)學(xué)院合同制教師招聘31人歷年參考題庫(頻考版)含答案解析
- 黑龍江省哈爾濱市第六中學(xué)2025屆高考數(shù)學(xué)三模試卷含解析
- 【MOOC】數(shù)字邏輯設(shè)計(jì)及應(yīng)用-電子科技大學(xué) 中國大學(xué)慕課MOOC答案
- 傷口治療師進(jìn)修匯報(bào)
- 研學(xué)活動(dòng)協(xié)議書合同范本
- ISBAR輔助工具在交班中應(yīng)用
- AIGC行業(yè)報(bào)告:國內(nèi)外大模型和AI應(yīng)用梳理
- 湖北省十堰市2023-2024學(xué)年高二上學(xué)期期末調(diào)研考試 地理 含答案
- 寒假假前安全教育課件
- 專題03 一次函數(shù)圖像和性質(zhì)(十大類型)(題型專練)(原卷版)-A4
- 焊工(高級)職業(yè)技能鑒定考試題及答案(新版)
評論
0/150
提交評論