最新-西門子S7300學(xué)習(xí)教程6-PPT精品課件_第1頁(yè)
最新-西門子S7300學(xué)習(xí)教程6-PPT精品課件_第2頁(yè)
最新-西門子S7300學(xué)習(xí)教程6-PPT精品課件_第3頁(yè)
最新-西門子S7300學(xué)習(xí)教程6-PPT精品課件_第4頁(yè)
最新-西門子S7300學(xué)習(xí)教程6-PPT精品課件_第5頁(yè)
已閱讀5頁(yè),還剩73頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第七章 故障診斷PLC是運(yùn)行在工業(yè)環(huán)境中的控制器,一般而言可靠性比較高,出現(xiàn)故障的概率較低,但是,出現(xiàn)故障也是難以避免的。一般引發(fā)故障的原因有很多,故障的后果也有很多種。引發(fā)故障的原因雖然我們不能完全控制,但是我們可以通過(guò)日常的檢查和定期的維護(hù)來(lái)消除多種隱患,把故障率降到最低。故障的后果輕的可能造成設(shè)備的停機(jī),影響生產(chǎn)的數(shù)量;重的可能造成財(cái)產(chǎn)損失和人員傷亡,如果是一些特殊的控制對(duì)象,一旦出現(xiàn)故障可能會(huì)引發(fā)更嚴(yán)重的后果。故障發(fā)生后,對(duì)于維護(hù)人員來(lái)說(shuō)最重要的是找到故障的原因,迅速排除故障,盡快恢復(fù)系統(tǒng)的運(yùn)行。對(duì)于系統(tǒng)設(shè)計(jì)人員在設(shè)計(jì)時(shí)要考慮到系統(tǒng)出現(xiàn)故障后的系統(tǒng)的自我保護(hù)措施力爭(zhēng)使故障的停機(jī)時(shí)間最短

2、,故障的產(chǎn)生的損失最小。 7.1 了解S7-300 PLC的基本故障種類一般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ò)誤(或稱故障)檢測(cè)和處理能力,CPU檢測(cè)到某種錯(cuò)誤后,操作系統(tǒng)調(diào)用對(duì)應(yīng)得組織塊,用戶可以在組織塊中編程,對(duì)發(fā)生的錯(cuò)誤采取相應(yīng)的措施。對(duì)于大多數(shù)錯(cuò)誤,如果沒(méi)有給組織塊編程,出現(xiàn)錯(cuò)誤時(shí)CPU將進(jìn)入STOP模式。被S7 CPU檢測(cè)到并且用戶可以通過(guò)組織塊對(duì)其進(jìn)行處理的錯(cuò)誤分為兩類:1、異步錯(cuò)誤異

3、步錯(cuò)誤是與PLC的硬件或操作系統(tǒng)密切相關(guān)的錯(cuò)誤,與程序執(zhí)行無(wú)關(guān),但異步錯(cuò)誤的后果一般比較嚴(yán)重。2、同步錯(cuò)誤同步錯(cuò)誤是與執(zhí)行用戶程序有關(guān)的錯(cuò)誤,程序中如果有不正確的地址區(qū),錯(cuò)誤的編號(hào)或錯(cuò)誤的地址,都會(huì)出現(xiàn)同步錯(cuò)誤,操作系統(tǒng)將調(diào)用同步錯(cuò)誤OB 。7.2 掌握PLC的常規(guī)維護(hù)及故障排除的方法為了保障系統(tǒng)的正常運(yùn)行,定期對(duì)PLC系統(tǒng)進(jìn)行維護(hù)和檢查是必不可少的,而且還必須熟悉一些故障診斷和排除方法。7.2.1 檢查與維護(hù)7.2.2 外部故障的排除方法7.2.3 內(nèi)部錯(cuò)誤的故障診斷7.2.1 檢查與維護(hù)一、定期檢查PLC是一種工業(yè)控制設(shè)備,盡管在可靠性方面采取了許多措施,但工作環(huán)境對(duì)PLC影響還是很大的。

4、所以,通常每隔半年時(shí)間應(yīng)對(duì)PLC作定期檢查。如果PLC的工作條件不符合表7-1規(guī)定的標(biāo)準(zhǔn),就要做一些應(yīng)急處理,以便使PLC工作在規(guī)定的標(biāo)準(zhǔn)環(huán)境。表7-1 周期性檢查一覽表檢查項(xiàng)目 檢查內(nèi)容 標(biāo)準(zhǔn) 交流電源電壓穩(wěn)定度 測(cè)量加在PLC上的電壓是否為額定值?電源電壓是否出現(xiàn)頻繁急劇的變化? 電源電壓必須在工作電壓范圍內(nèi)電源電壓波動(dòng)必須在允許范圍內(nèi) 工作環(huán)境溫度、濕度震動(dòng)、灰塵 溫度和濕度是否在相應(yīng)的變化范圍內(nèi)?(當(dāng)PLC安裝在儀表板上時(shí),儀表上的溫度可以認(rèn)為是PLC的環(huán)境溫度。) 溫度055相對(duì)濕度85%以下振幅小于0.5mm(1055Hz)無(wú)大量灰塵、鹽分和鐵屑安裝條件 基本單元和擴(kuò)展單元是否安裝

5、牢固?基本單元和擴(kuò)展單元的聯(lián)接電纜是否完全插好?接線螺釘是否松動(dòng)?外部接線是否損壞? 安裝螺釘必須上緊聯(lián)接電纜不能松動(dòng)聯(lián)接螺釘不能松動(dòng)外部接線不能有任何外觀異常 使用壽命 鋰電池電壓是否降低?繼電器輸出觸點(diǎn)鋰電池工作5年左右繼電器輸出觸點(diǎn)壽命300萬(wàn)次(35V以上) 二、日常維護(hù)PLC除了鋰電池和繼電器輸出觸點(diǎn)外,基本上沒(méi)有其它易損元器件。由于存放用戶程序的隨機(jī)內(nèi)存(RAM),計(jì)數(shù)器和具有保持功能的輔助繼電器等均用鋰電池保護(hù),鋰電池的壽命大約5年,當(dāng)鋰電池的電壓逐漸降低達(dá)一定程度時(shí),PLC基本單元上的電池電壓跌落指示燈會(huì)亮。提示用戶注意,有鋰電池所支持的程序還可以保持一周左右,必須更換電池,這

6、是日常維護(hù)的主要內(nèi)容。 調(diào)換鋰電池的步驟: 1、在拆裝之前,應(yīng)先讓PLC通電15S以上,這樣可使作為內(nèi)存?zhèn)溆秒娫吹碾娙萜鞒潆?,在鋰電池?cái)嚅_(kāi)后,該電容可對(duì)PLC作短暫供電,以保護(hù)RAM中的信息不丟失。2、斷開(kāi)PLC的交流電源。3、打開(kāi)基本單元的電池蓋板。4、取下舊電池,裝上新電池。5、蓋上電池蓋板。更換電池的時(shí)間要盡量短,一般不允許超過(guò)3min。如果時(shí)間過(guò)長(zhǎng),RAM中的程序?qū)G失。7.2.2 外部故障的排除方法PLC有很強(qiáng)的自診斷能力,當(dāng)PLC自身故障或外圍設(shè)備發(fā)生故障,都可用PLC上具有診斷指示功能的發(fā)光二極管的亮滅來(lái)診斷。一、故障查找1、總體檢查根據(jù)總體檢查流程圖找出故障點(diǎn)的大方向,逐漸細(xì)化

7、,以找出具體故障,如圖7-1所示。2、電源故障檢查電源等不亮部需要對(duì)供電系統(tǒng)進(jìn)行檢查,檢查流程圖如圖7-2所示。3、運(yùn)行故障檢查電源正常,運(yùn)行指示燈不亮,說(shuō)明系統(tǒng)已因某種異常而終止了正常運(yùn)行,檢查流程圖如圖7-3所示。4、輸入輸出故障檢查輸入輸出是PLC與外部設(shè)備進(jìn)行信息交流的信道,其是否正常工作,除了和輸入輸出單元有關(guān)外,還與聯(lián)接配線、接線端子、保險(xiǎn)管等組件狀態(tài)有關(guān)。圖7-4和圖7-5分別所示的是輸入檢查流程和輸出檢查流程。圖7-4 輸入檢查流程圖圖7-5 輸出檢查流程圖5、外圍環(huán)境的檢查影響PLC工作的環(huán)境因素主要有溫度、濕度、噪音與粉塵,以及腐蝕性酸堿等。 二、故障的處理不同故障產(chǎn)生的原

8、因不同,它們也有不同的處理方法,具體請(qǐng)見(jiàn)下表所列。表7-2 CPU裝置、I/O擴(kuò)展裝置故障處理序號(hào) 異?,F(xiàn)象 可能原因 處理 1POWERLED燈不亮1、電壓切換端子設(shè)定不良2、保險(xiǎn)絲熔斷正確設(shè)定切換端子更換保險(xiǎn)絲2保險(xiǎn)絲多次熔斷 1、電壓切換端子設(shè)定不良2、線路短路或燒壞正確設(shè)定切換端子更換電源單元3RUNLED燈不亮 1、程序錯(cuò)誤2、電源線路不良3、I/O單元號(hào)重復(fù)4、遠(yuǎn)程I/O電源關(guān),無(wú)終端修改程序 更換CPU單元修改I/O單元號(hào)接通電源4運(yùn)行中輸出端沒(méi)閉合(POWER燈亮)電源回路不良更換CPU單元 5編號(hào)以后的繼電器不動(dòng)作 I/O總線不良 更換基板單元6特定的繼電器編號(hào)的輸出(入)接

9、通 I/O總線不良 更換基板單元7特定單元的所有繼電器不接通 I/O總線不良 更換基板單元序號(hào)異?,F(xiàn)象可能原因處理1輸入全部不接通(動(dòng)作指示燈也滅)1、未加外部輸入電壓供電2、外部輸入電壓低加額定電源電壓3、端子螺釘松動(dòng)擰緊4、端子板聯(lián)接器接觸不良把端子板補(bǔ)充插入、鎖緊。更換端子板聯(lián)接器2輸入全部斷開(kāi)(輸入指示燈也滅)輸入回路不良更換單元3輸入全部不關(guān)斷輸入回路不良更換單元416特定繼電器編號(hào)的輸入不接通1、輸入器件不良更換輸入器件2、輸入配線斷線檢查輸入配線3、端子螺釘松馳擰緊4、端子板聯(lián)接器接觸不良把端子板補(bǔ)充插入、鎖緊。更換端子板聯(lián)接器5、外部輸入接觸時(shí)間短調(diào)整輸入組件6、輸入回路不良更

10、換單元7、程序的OUT指令中用了輸入繼電器編號(hào)修改程序5特定繼電器編號(hào)的輸入不關(guān)斷1、輸入回路不良更換組件2、程序的OUT指令中用了輸入繼電器編號(hào)修改程序6輸入不規(guī)則ON/OFF動(dòng)作1、外部輸入電壓低使外部輸入電壓在額定值范圍2、噪音引起的誤動(dòng)作抗干擾措施:安裝絕緣變壓器、安裝尖峰抑制器、用屏蔽線配線等3、端子螺釘松動(dòng)擰緊4、端子板聯(lián)接器接觸不良把端子板補(bǔ)充插入、鎖緊。更換端子板聯(lián)接器7異常動(dòng)作的繼電器編號(hào)為8點(diǎn)單位1、COM端螺釘松動(dòng)擰緊2、端子板聯(lián)接器接觸不良把端子板補(bǔ)充插入、鎖緊。更換端子板聯(lián)接器3、CPU不良更換CPU單元8輸入動(dòng)作指示燈不亮(動(dòng)作正常)LED燈壞更換單元表7-3 輸入

11、單元故障處理序號(hào)異?,F(xiàn)象可能原因處理1輸出全部不接通1、未加負(fù)載電源加電源2、負(fù)載電源電壓低使電源電壓為額定值3、端子螺釘松動(dòng)擰緊4、端子板聯(lián)接器接觸不良把端子板補(bǔ)充插入、鎖緊。更換端子板聯(lián)接器5、保險(xiǎn)絲熔斷更換保險(xiǎn)絲6、I/O總線接觸不良更換單元7、輸出回路不良更換單元2輸出全部不關(guān)斷輸出回路不良更換單元3特定繼電器編號(hào)的輸出不接通(動(dòng)作指示燈滅)1、輸出接通時(shí)間短更換單元2、程序中指令的繼電器編號(hào)重復(fù)修改程序3、輸出回路不良更換單元4特定繼電器編號(hào)的輸出不接通(動(dòng)作指示燈亮)1、輸出器件不良更換輸出器件2、輸出配線斷線檢查輸出線3、端子螺釘松動(dòng)擰緊4、端子聯(lián)接接觸不良端子充分插入、擰緊5、

12、繼電器輸出不良更換繼電器6、輸出回路不良更換單元5特定繼電器編號(hào)的輸出不關(guān)斷(動(dòng)作指示燈滅)1、輸出繼電器不良更換繼電器2、由于漏電流或殘余電壓而不能關(guān)斷更換負(fù)載或加假負(fù)載電阻6特定繼電器編號(hào)的輸出不關(guān)斷(動(dòng)作指示燈亮)1、程序OUT指令的繼電器編號(hào)重復(fù)修改程序2、輸出回路不良更換單元7輸出出現(xiàn)不規(guī)則的ON/OFF現(xiàn)象1、電源電壓低調(diào)整電壓2、程序OUT指令的繼電器編號(hào)重復(fù)修改程序3、噪音引起的誤動(dòng)作抗噪音措施:裝抑制器、裝絕緣變壓器、用屏蔽線配線等4、端子螺釘松動(dòng)擰緊5、端子聯(lián)接接觸不良端子充分插入、擰緊8異常動(dòng)作的繼電器編號(hào)為8點(diǎn)單位1、COM端子螺釘松動(dòng)擰緊2、端子聯(lián)接接觸不良端子充分插

13、入、擰緊3、保險(xiǎn)絲熔斷更換保險(xiǎn)絲4、CPU不良更換CPU單元9輸出指示燈不亮(動(dòng)作正常)LED燈壞更換單元表7-4輸出單元故障處理7.2.3 內(nèi)部錯(cuò)誤的故障診斷S7-300具有非常強(qiáng)大的故障診斷功能,通過(guò)STEP 7編程軟件可以獲得大量的硬件故障與編程錯(cuò)誤的信息,使用戶能迅速地查找到故障。這里的診斷是指S7-300內(nèi)部集成的錯(cuò)誤識(shí)別和記錄功能,錯(cuò)誤信息在CPU的診斷緩沖區(qū)內(nèi)。有錯(cuò)誤或事件發(fā)生時(shí),標(biāo)有日期和時(shí)間的信息被保存到診斷緩沖區(qū),時(shí)間保存到系統(tǒng)的狀態(tài)表中,如果用戶已對(duì)有關(guān)的錯(cuò)誤處理組織塊編程,CPU將調(diào)用該組織塊。一、故障診斷的基本方法在SIMATIC管理器中用菜單命令“View”“Onl

14、ine”打開(kāi)再現(xiàn)窗口。打開(kāi)所有的站,查看是否有CPU顯示了指示錯(cuò)誤或故障的診斷符號(hào)。診斷符號(hào)用來(lái)形象直觀地表示模塊的運(yùn)行模式和模塊的故障狀態(tài),如圖7-6所示。如果模塊有診斷信息,在模塊符號(hào)上將會(huì)增加一個(gè)診斷符號(hào),或者模塊符號(hào)的對(duì)比度降低。圖7-6 診斷符號(hào)診斷符號(hào)“當(dāng)前組態(tài)與實(shí)際組態(tài)不匹配”表示被組態(tài)的模塊不存在,或者插入了與組態(tài)的模塊的型號(hào)不同的模塊。診斷符號(hào)“無(wú)法診斷”表示無(wú)線上連接,或該模塊不支持模塊診斷信息,例如電源模塊或子模塊?!皬?qiáng)制”符號(hào)表示在該模塊上有變量被強(qiáng)制,即在模塊的用戶程序中有變量被賦予一個(gè)固定植,該數(shù)據(jù)值不能被程序改變。“強(qiáng)制”符號(hào)可以與其它符號(hào)組合在一起顯示,如圖7-

15、6中“強(qiáng)制與運(yùn)行”符號(hào)。從在線的SIMATIC管理器的窗口、在線的硬件診斷功能打開(kāi)的快速窗口和在線的硬件組態(tài)窗口(診斷窗口),都可以觀察到診斷符號(hào)。通過(guò)觀察診斷符號(hào),可以判斷CPU模塊的運(yùn)行模式,是否有強(qiáng)制變量,CPU模塊和功能模塊(FM)受否有故障。打開(kāi)在線窗口,在SIMATIC管理器中執(zhí)行菜單命令“PLC”“Diagnostic/Setting”“Hardware Diagnostics”,將打開(kāi)硬件診斷快速瀏覽窗口。在該窗口中顯示PLC的狀態(tài),看到診斷功能的模塊的硬件故障,雙擊故障模塊可以獲得詳細(xì)的故障信息。二、利用CPU診斷緩沖區(qū)進(jìn)行詳細(xì)故障診斷建立與PLC的在線連接后,在SIMATI

16、C管理器中選擇要檢查的站,執(zhí)行菜單命令“PLC”“Diagnostics/Setting”“Module Information”,如圖7-7所示,將打開(kāi)模塊信息窗口,顯示該站中CPU的信息。在快速窗口中使用“Module Information”。圖7-7 打開(kāi)CPU診斷緩沖區(qū)在模塊信息窗口中的診斷緩沖區(qū)(Diagnostic Buffer)選項(xiàng)中,給出了CPU中發(fā)生的事件一覽表,選中“Events”窗口中某一行的某一事件,下面灰色的“Details on”窗口將顯示所選事件的詳細(xì)信息,見(jiàn)圖7-8所示。使用診斷緩沖區(qū)可以對(duì)系統(tǒng)得錯(cuò)誤進(jìn)行分析,查找停機(jī)的原因,并對(duì)出現(xiàn)的診斷時(shí)間分類。圖7-8

17、CPU模塊的在線模塊信息窗診斷事件包括模塊故障、過(guò)程寫錯(cuò)誤、CPU中的系統(tǒng)錯(cuò)誤、CPU運(yùn)行模式的切換、用戶程序的錯(cuò)誤和用戶用系統(tǒng)功能SFC52定義的診斷事件。在模塊信息窗口中,編號(hào)為1,位于最上面的事件是最近發(fā)生的事件。如果顯示因編程錯(cuò)誤造成CPU進(jìn)入STOP模式,選擇該事件,并點(diǎn)擊“Open Block”按鈕,將在程序編輯器中打開(kāi)于錯(cuò)誤有關(guān)的塊,顯示出錯(cuò)的程序段。診斷中斷和DP從站診斷信息用于查找模塊和DP從站中的故障原因?!癕emory”(內(nèi)存)選項(xiàng)給出了所選的CPU或M7功能模塊的工作內(nèi)存和裝載內(nèi)存當(dāng)前的使用情況,可以檢查CPU或功能模塊的裝載內(nèi)存中是否有足夠的空間用來(lái)存儲(chǔ)新的塊,如圖7

18、-9所示。 圖7-9 “Memory” 選項(xiàng)“Scan Cycle Time”(掃描循環(huán)時(shí)間)選項(xiàng)卡用于顯示所選CPU或M7功能模塊的最小循環(huán)時(shí)間、最大循環(huán)時(shí)間和當(dāng)前循環(huán)時(shí)間,如圖7-10所示。如果最長(zhǎng)循環(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)延長(zhǎng)循環(huán)至設(shè)置的最小循環(huán)時(shí)間。在這個(gè)延長(zhǎng)時(shí)間內(nèi)可以處理背景組織塊(OB90)。組態(tài)硬件時(shí)可以設(shè)置最大和最小循環(huán)時(shí)間。圖7-10 “Scan Cycle Time” 選項(xiàng)“Time System”(時(shí)間系統(tǒng))選項(xiàng)卡顯示當(dāng)前日期、時(shí)間

19、、運(yùn)行的小時(shí)數(shù)以及時(shí)鐘同步的信息,見(jiàn)圖7-11所示。圖7-11 “Time System” 選項(xiàng)“Performance Data”(性能數(shù)據(jù))選項(xiàng)卡給出了所選模塊(CPU/FM)可以使用的地址區(qū)和可以使用的OB、SFB、和SFC,見(jiàn)圖7-12所示。 圖7-12 “Performance Data” 選項(xiàng)“Communication”(通信)選項(xiàng)卡給出了所選模塊的傳輸速率、可以建立的連接個(gè)數(shù)和通信處理占掃描周期的百分比,如圖7-13所示。圖7-13“Communication” 選項(xiàng)“Stacks”(堆棧)選項(xiàng)卡只能在STOP模式或HOLD(保持)模式下調(diào)用,顯示所選模塊的B(塊)堆棧。還可以

20、顯示I(中斷)堆棧、L(局域)堆棧以及嵌套深度堆棧。可以跳轉(zhuǎn)到使塊中斷的故障點(diǎn),判明引起停機(jī)的原因。在模塊信息窗口各選項(xiàng)卡的上面顯示了附加的信息,例如所選模塊的在線路徑、CPU的操作模式和狀態(tài)(例如出錯(cuò)或OK)、所選模塊的操作模式,如果它有自己的操作模式的話(例如CP342-5)。從 (“Accessible Nodes”窗口)打開(kāi)的非CPU模塊的模塊信息中,不能顯示CPU本身的操作模式和所選模塊的狀態(tài)。 三、錯(cuò)誤處理組織塊組織塊是操作系統(tǒng)與用戶程序之間的接口。S7提供了各種不同的組織塊(OB),用組織塊可以創(chuàng)建在特定時(shí)間執(zhí)行的程序和響應(yīng)特定事件的程序。當(dāng)系統(tǒng)程序可以檢測(cè)下列錯(cuò)誤:不正確的CP

21、U功能、系統(tǒng)程序執(zhí)行中的錯(cuò)誤、用戶程序中的錯(cuò)誤和I/O中的錯(cuò)誤。根據(jù)錯(cuò)誤類型的不同,CPU設(shè)置為進(jìn)入STOP模式或調(diào)用一個(gè)錯(cuò)誤處理OB。當(dāng)CPU檢測(cè)到錯(cuò)誤時(shí),會(huì)調(diào)用適當(dāng)?shù)慕M織塊,見(jiàn)表7-5。如果沒(méi)有相應(yīng)的錯(cuò)誤處理OB,CPU將進(jìn)入STOP模式。用戶可以在錯(cuò)誤處理OB中編寫如何處理這種錯(cuò)誤的程序,以減小或消除錯(cuò)誤的影響。OB號(hào)錯(cuò)誤類型優(yōu)先級(jí)OB70I/O冗余錯(cuò)誤(僅H系列CPU)25OB72CPU冗余錯(cuò)誤(僅H系列CPU)28OB73通信冗余錯(cuò)誤(僅H系列CPU)35OB80時(shí)間錯(cuò)誤26OB81電源錯(cuò)誤26/28OB82診斷中斷OB83插入/取出模塊中斷OB84CPU硬件故障OB85優(yōu)先級(jí)錯(cuò)誤O

22、B86機(jī)架故障或分布式I/O的站故障OB87通信錯(cuò)誤OB121編程錯(cuò)誤引起錯(cuò)誤的OB的優(yōu)先級(jí)OB122I/O訪問(wèn)錯(cuò)誤表7-5 錯(cuò)誤處理組織塊為避免發(fā)生某種錯(cuò)誤時(shí)CPU進(jìn)入停機(jī),可以在CPU中建立一個(gè)對(duì)應(yīng)的空的組織塊。用戶可以利用OB中的變量聲明表提供的信息來(lái)判別錯(cuò)誤的類型。根據(jù)S7 CPU檢測(cè)到并且用戶可以通過(guò)組織塊對(duì)其進(jìn)行處理的錯(cuò)誤分為異步錯(cuò)誤和同步錯(cuò)誤。 1、異步錯(cuò)誤組織塊異步錯(cuò)誤是與PLC的硬件或操作系統(tǒng)密切相關(guān)的錯(cuò)誤,與程序執(zhí)行無(wú)關(guān)。異步錯(cuò)誤的后果一般都比較嚴(yán)重。異步錯(cuò)誤對(duì)應(yīng)的組織塊為OB70OB73和OB80OB87,有最高的優(yōu)先級(jí)。操作系統(tǒng)檢測(cè)到一個(gè)異步錯(cuò)誤時(shí),將啟動(dòng)相應(yīng)的OB。(

23、1)時(shí)間錯(cuò)誤處理組織塊(OB80)OB執(zhí)行時(shí)出現(xiàn)故障S7-300 CPU的操作系統(tǒng)調(diào)用OB80。這樣的故障包括循環(huán)時(shí)間超出、執(zhí)行OB時(shí)應(yīng)答故障、向前移動(dòng)時(shí)間以致于躍過(guò)了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方式,可以通過(guò)在程序中適當(dāng)?shù)奈恢谜{(diào)用SFC43“RE_TRIGR”來(lái)避免這種情況。 打開(kāi)OB80可以從OB80的臨時(shí)變量中得到

24、故障信息,見(jiàn)圖7-14所示。 圖7-14 OB80的臨時(shí)變量變量類型描述OB80_EV_CLASSBYTE事件級(jí)別和標(biāo)識(shí):B#16#35OB80_FLT_IDBYTE故障代碼OB80_PRIORITYBYTE優(yōu)先級(jí):在RUN方式時(shí)OB80以優(yōu)先級(jí)26運(yùn)行,OB請(qǐng)求緩沖區(qū)溢出時(shí)以優(yōu)先級(jí)28運(yùn)行OB80_OB_NUMBRBYTEOB號(hào)OB80_RESERVED_1BYTE保留OB80_RESERVED_2BYTE保留OB80_ERROR_INFOWORD故障信息:根據(jù)故障代碼OB80_ERR_EV_CLASSBYTE引起故障的啟動(dòng)事件的事件級(jí)別OB80_ERR_EV_NUMBYTE引起故障的啟動(dòng)事

25、件的事件號(hào)OB80_OB_PRIORITYBYTE故障信息:根據(jù)故障代碼OB80_OB_NUMBYTE故障信息:根據(jù)故障代碼OB80_DATE_TIMEDATE_AND_TIMEOB被調(diào)用時(shí)的日期和時(shí)間4表7-6 OB80的變量申明表(2)電源故障處理組織塊(OB81)與電源(僅對(duì)S7-400)或后備電池有關(guān)的故障事件發(fā)生時(shí),S7-300 CPU的操作系統(tǒng)調(diào)用OB81,表7-7為OB81的變量申明表。如果OB81未編程,CPU并不轉(zhuǎn)換為STOP方式??梢允褂肧FC39至42來(lái)禁用、延時(shí)或再使用電源故障(OB81)。變量類型描述OB81_EV_CLASSBYTE事件級(jí)別和標(biāo)識(shí):B#16#38,離

26、去事件;B#16#39,到來(lái)事件OB81_FLT_IDBYTE故障代碼OB81_PRIORITYBYTE優(yōu)先級(jí):可通過(guò)STEP 7選擇(硬件組態(tài))OB81_OB_NUMBRBYTEOB號(hào)OB81_RESERVED_1BYTE保留OB81_RESERVED_2BYTE保留OB81_MDL_ADDRINT位0至2:機(jī)架號(hào);位3:0=備用CPU,1=主站CPU;位4至7:1111OB81_RESERVED_3BYTE僅與部分故障代碼有關(guān)OB81_RESERVED_4BYTEOB81_RESERVED_5BYTEOB81_RESERVED_6BYTEOB81_DATE_TIMEDATE_AND_TIM

27、EOB被調(diào)用時(shí)的日期和時(shí)間表7-7 OB81的變量申明表(3)診斷中斷處理組織塊(OB82)如果模塊具有診斷能力又使能了診斷中斷,當(dāng)它檢測(cè)到錯(cuò)誤時(shí),它輸出一個(gè)診斷中斷請(qǐng)求給CPU,以及錯(cuò)誤消失時(shí),操作系統(tǒng)都會(huì)調(diào)用OB82。當(dāng)一個(gè)診斷中斷被觸發(fā)時(shí),有問(wèn)題的模塊自動(dòng)地在診斷中斷OB的起動(dòng)信息和診斷緩沖區(qū)中存入4個(gè)字節(jié)的診斷數(shù)據(jù)和模塊的起始地址??梢杂肧FC39至42來(lái)禁用、延時(shí)或再使用診斷中斷(OB82),表7-8描述了診斷中斷OB82的臨時(shí)變量。變量類型描述OB82_EV_CLASSBYTE事件級(jí)別和標(biāo)識(shí):B#16#38,離去事件;B#16#39,到來(lái)事件OB82_FLT_IDBYTE故障代碼O

28、B82_PRIORITYBYTE優(yōu)先級(jí):可通過(guò)SETP 7選擇(硬件組態(tài))OB82_OB_NUMBRBYTEOB號(hào)OB82_RESERVED_1BYTE備用OB82_IO_FLAGBYTE輸入模板:B#16#54;輸出模板:B#16#55OB82_MDL_ADDRWORD故障發(fā)生處模板的邏輯起始地址OB82_MDL_DEFECTBOOL模板故障OB82_INT_FAULTBOOL內(nèi)部故障OB82_EXT_FAULTBOOL外部故障OB82_PNT_INFOBOOL通道故障OB82_EXT_VOLTAGEBOOL外部電壓故障OB82_FLD_CONNCTRBOOL前連接器未插入OB82_NO_C

29、ONFIGBOOL模板未組態(tài)OB82_CONFIG_ERRBOOL模板參數(shù)不正確OB82_MDL_TYPEBYTE位0至3:模板級(jí)別;位4:通道信息存在;位5:用戶信息存在;位6:來(lái)自替代的診斷中斷;位7:備用OB82_SUB_MDL_ERRBOOL子模板丟失或有故障OB82_COMM_FAULTBOOL通訊問(wèn)題OB82_MDL_STOPBOOL操作方式(0:RUN,1:STOP)OB82_WTCH_DOG_FLTBOOL看門狗定時(shí)器響應(yīng)OB82_INT_PS_FLTBOOL內(nèi)部電源故障OB82_PRIM_BATT_FLTBOOL電池故障OB82_BCKUP_BATT_FLTBOOL全部后備電

30、池故障OB82_RESERVED_2BOOL備用OB82_RACK_FLTBOOL擴(kuò)展機(jī)架故障OB82_PROC_FLTBOOL處理器故障OB82_EPROM_FLTBOOLEPROM故障OB82_RAM_FLTBOOLRAM故障OB82_ADU_FLTBOOLADC/DAC故障OB82_FUSE_FLTBOOL熔斷器熔斷OB82_HW_INTR_FLTBOOL硬件中斷丟失OB82_RESERVED_3BOOL備用OB82_DATE_TIMEDATE_AND_TIMEOB被調(diào)用時(shí)的日期和時(shí)間表7-8 OB82的變量申明表在編寫OB82的程序時(shí),要從OB82的起動(dòng)信息中獲得與出現(xiàn)的錯(cuò)誤有關(guān)的更確

31、切的診斷信息,例如是哪一個(gè)通道出錯(cuò),出現(xiàn)的是哪種錯(cuò)誤。使用SFC51“RDSYSST”也可以讀出模塊的診斷數(shù)據(jù),用SFC52“WR_USMSG”可以將這些信息存入診斷緩沖區(qū)?,F(xiàn)在通過(guò)結(jié)合模板的短線診測(cè)應(yīng)用和SFC51來(lái)說(shuō)明診斷中斷組織塊OB82的使用方法。首先,在SIMATIC管理器中新建一個(gè)項(xiàng)目,插入一個(gè)300站。硬件組態(tài),在機(jī)架上插入CPU 315-2DP和一塊具有中斷功能模擬量輸入模塊SM331,配置SM331模塊的“Inputs”選項(xiàng),選擇0-1通道組為2線制電流(2DMU),其它通道組為電壓,并注意模塊的量程卡要與設(shè)置的相同。選中“Enable”框中的“Diagnostic Inte

32、rrupt”選項(xiàng),選中“Diagnostics”選項(xiàng)中的0-1通道組中的“Group Diagnostics”和“with Check for Wire Break”選項(xiàng),如圖7-15所示。圖7-15 硬件組態(tài)點(diǎn)擊OK,然后雙擊CPU 315-2DP,選擇“Interrupts”選項(xiàng),可以看到CPU支持OB82,見(jiàn)圖7-16所示。硬件組態(tài)完成后,保存編譯,下載到CPU中。圖7-16 CPU中的“Interrupts”選項(xiàng)然后完成診斷程序。OB82程序當(dāng)在硬件組態(tài)中設(shè)定的診斷中斷發(fā)生后執(zhí)行,但OB82執(zhí)行時(shí)可以通過(guò)它的臨時(shí)變量OB82_MDL_ADDR讀出產(chǎn)生診斷中斷的模塊的邏輯地址。STEP

33、7不能時(shí)時(shí)監(jiān)控程序的運(yùn)行。在SIMATIC管理器中S7 Program(1)下插入一個(gè)STL Source文件STL Source(1),如圖7-17所示。圖7-17 插入STL Source文件打開(kāi)OB1,在“Libraries”“Standard Libraries”“System Function Blocks”下找到SFC51“RDSYSST DIAGNSTC”,按F1鍵,出現(xiàn)SFC51在線幫助信息,在幫助信息的最低部點(diǎn)擊“Example for module diagnostics with the SFC51”,然后點(diǎn)擊“STL Source File”,選中全部STL Sourc

34、e源程序拷貝到STL Source(1)中,編譯保存。這是在Blocks中生成OB1、OB82、DB13和SFC51。打開(kāi)OB82,對(duì)其中的程序做簡(jiǎn)單的修改,將19和20行的程序拷貝到go:后面,如圖7-18所示。再進(jìn)行保存,下載到CPU中。圖7-18 OB82的程序修改下載完成后,將CPU上的模式選擇開(kāi)關(guān)切換到“RUN”狀態(tài),此時(shí),CPU上的“RUN”燈和“SF”燈會(huì)亮,SM331模塊上的“SF”燈也會(huì)亮。同時(shí),查看CPU的診斷緩沖區(qū)可以獲得相應(yīng)的故障信息。打開(kāi)DB13數(shù)據(jù)塊,在線監(jiān)控,見(jiàn)圖7-19所示。因?yàn)橥ǖ罃嗑€是一到來(lái)事件,所以診斷信息存儲(chǔ)到COME數(shù)組中。圖7-19 DB13中的數(shù)據(jù)

35、變換本例中COME數(shù)組字節(jié)的含義接受如下:COME1=B#16#D:表示通道錯(cuò)誤,外部故障和模塊問(wèn)題;COME2=B#16#15:表示此段信息為模擬量模塊的通道信息;COME3=B#16#0:表示CPU處于運(yùn)行狀態(tài),無(wú)字節(jié)2中標(biāo)示的故障信息;COME4=B#16#0:表示無(wú)字節(jié)3中標(biāo)示的故障信息;COME5=B#16#71:表示模擬量輸入;COME6=B#16#8:表示模塊的每個(gè)通道有8個(gè)診斷位;COME7=B#16#8:表示模塊的通道數(shù);COME8=B#16#3:表示0通道錯(cuò)誤和1通道錯(cuò)誤,其他通道正常;COME9=B#16#10:表示0通道斷線;COME10=B#16#10:表示1通道斷線

36、;COME11=B#16#0:表示2通道正常,其他通道與2通道相同。 (4)插入/拔出模塊中斷組織塊(OB83)當(dāng)組態(tài)的模塊插入/拔出后或在SETP 7下修改了模塊的參數(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)視模塊的存在,如果模塊被直接訪問(wèn)或當(dāng)過(guò)程映像被刷新時(shí)可能首先檢測(cè)出訪問(wèn)

37、故障。如果在“RUN”狀態(tài)下插入一塊模塊,操作系統(tǒng)檢查插入模塊的類型是否與組態(tài)的記錄一致,如果模塊類型匹配,于是OB83被啟動(dòng)并且參數(shù)被賦值??梢越柚鶶FC39至42來(lái)禁用、延時(shí)或再使用插入/拔出模塊中斷(OB83),表7-9描述了插入/拔出模塊中斷OB83的臨時(shí)變量。變量類型描述OB83_EV_CLASSBYTE事件級(jí)別和標(biāo)識(shí):B#16#32,模塊參數(shù)賦值結(jié)束;B#16#33,模塊參數(shù)賦值啟動(dòng);B#16#38,模塊插入;B#16#39,模塊拔出或無(wú)反應(yīng),或參數(shù)賦值結(jié)束OB83_FLT_IDBYTE故障代碼OB83_PRIORITYBYTE優(yōu)先級(jí),可通過(guò)STEP 7選擇(硬件組態(tài))OB83_O

38、B_NUMBRBYTEOB號(hào)OB83_RESERVED_1BYTE塊模塊或接口模塊標(biāo)識(shí)OB83_MDL_IDBYTE范圍:B#16#54,外設(shè)輸入(PI);B#16#55,外設(shè)輸出(PQ)OB83_MDL_ADDRWORD有關(guān)模塊的邏輯起始地址OB83_RACK_NUMWORDB#16#A0,接口模塊號(hào);B#16#C4,機(jī)架號(hào)或DP站號(hào)(低字節(jié))或DP主站系統(tǒng)ID(高字節(jié))OB83_MDL_TYPEWORD有關(guān)模塊的模塊類型OB83_DATE_TIMEDATE_AND_TIMEOB被調(diào)用時(shí)的日期和時(shí)間表7-9 OB83的變量申明表(5)CPU硬件故障處理組織塊(OB84)當(dāng)CPU檢測(cè)到MPI網(wǎng)

39、絡(luò)的接口故障、通信總線的接口故障或分布式I/O網(wǎng)卡的接口故障時(shí),操作系統(tǒng)調(diào)用OB84。故障消除時(shí)也會(huì)調(diào)用該OB塊,即事件到來(lái)和離去時(shí)都調(diào)用該OB。表7-10描述了CPU硬件故障OB84的臨時(shí)變量。變量類型描述OB84_EV_CLASSBYTE事件級(jí)別和標(biāo)識(shí):B#16#38,離去事件;B#16#39,到來(lái)事件OB84_FLT_IDBYTE故障代碼OB84_PRIORITYBYTE優(yōu)先級(jí),可通過(guò)STEP 7選擇(硬件組態(tài))OB84_OB_NUMBRBYTEOB號(hào)OB84_RESERVED_1BYTE備用OB84_RESERVED_2BYTE備用OB84_RESERVED_3WORD備用OB84_R

40、ESERVED_4DWORD備用OB84_DATE_TIMEDATE_AND_TIMEOB被調(diào)用時(shí)的日期和時(shí)間表7-10 OB84的變量申明表(6)優(yōu)先級(jí)錯(cuò)誤處理組織塊(OB85)在以下情況下將會(huì)觸發(fā)優(yōu)先級(jí)錯(cuò)誤中斷:產(chǎn)生了一個(gè)中斷事件,但是對(duì)應(yīng)的OB塊沒(méi)有下載到CPU;訪問(wèn)一個(gè)系統(tǒng)功能塊的背景數(shù)據(jù)塊時(shí)出錯(cuò);刷新過(guò)程映像表時(shí)I/O訪問(wèn)出錯(cuò),模塊不存在或有故障。在編寫OB85的程序時(shí),應(yīng)根據(jù)OB85的起動(dòng)信息,判定是哪個(gè)模塊損壞或沒(méi)有插入??梢允褂肧FC39至42封鎖或延時(shí)并使能優(yōu)先級(jí)故障OB,表7-11描述了優(yōu)先級(jí)故障OB85的臨時(shí)變量。 變量類型描述OB85_EV_CLASSBYTE事件級(jí)別和

41、標(biāo)識(shí)OB85_FLT_IDBYTE故障代碼OB85_PRIORITYBYTE優(yōu)先級(jí),可通過(guò)STEP 7選擇(硬件組態(tài))OB85_OB_NUMBRBYTEOB號(hào)OB85_RESERVED_1BYTE備用OB85_RESERVED_2BYTE備用OB85_RESERVED_3INT備用OB85_ERR_EV_CLASSBYTE引起故障的事件級(jí)別OB85_ERR_EV_NUMBYTE引起故障的事件號(hào)碼OB85_OB_PRIORBYTE當(dāng)故障發(fā)生時(shí)被激活OB的優(yōu)先級(jí)OB85_OB_NUMBYTE當(dāng)故障發(fā)生時(shí)被激活OB的號(hào)碼OB85_DATE_TIMEDATE_AND_TIMEOB被調(diào)用時(shí)的日期和時(shí)間表

42、7-11 O85的變量申明表(7)機(jī)架故障組織塊(OB86)出現(xiàn)下列故障或故障消失時(shí),都會(huì)觸發(fā)機(jī)架故障中斷,操作系統(tǒng)將調(diào)用OB86:擴(kuò)展機(jī)架故障(不包括CPU 318),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í)變量。變量類型描述OB86_EV_CLASSBYTE事件級(jí)別和標(biāo)識(shí):B#16#38,離去事件;B#16#39,到來(lái)事件OB86_FLT_IDBYTE故障代碼OB86_PRIORITYBYTE優(yōu)先

43、級(jí),可通過(guò)STEP 7選擇(硬件組態(tài))OB86_OB_NUMBRBYTEOB號(hào)OB86_RESERVED_1BYTE備用OB86_RESERVED_2BYTE備用OB86_MDL_ADDRWORD根據(jù)故障代碼OB86_RACKS_FLTDARRAY0.31根據(jù)故障代碼OB86_DATE_TIMEDATE_AND_TIMEOB被調(diào)用時(shí)的日期和時(shí)間表7-12 O86的變量申明表這里也通過(guò)一個(gè)例子來(lái)說(shuō)明OB86的使用。新建一個(gè)項(xiàng)目,插入一個(gè)300站,進(jìn)行硬件組態(tài)。在機(jī)架中插入CPU 315-2DP,選擇DP作為主站,在DP主站下添加一個(gè)ET200M從站,并在從站中插入一個(gè)模擬量輸入模塊SM331,如

44、圖7-20所示。圖7-20 硬件組態(tài)然后雙擊CPU,選擇“Interrupts”選項(xiàng),可以看到CPU支持OB86,見(jiàn)圖7-21所示。硬件組態(tài)完成后,保存編譯,下載到CPU中。圖7-21 CPU中的“Interrupts”選項(xiàng)OB86程序當(dāng)在通訊發(fā)生問(wèn)題后或者訪問(wèn)不到配置的機(jī)架或站時(shí)執(zhí)行,此時(shí)程序可能還可能需要調(diào)用OB82和OB122等組織塊,當(dāng)OB86執(zhí)行時(shí)可以通過(guò)它的臨時(shí)變量讀出產(chǎn)生的故障代碼和事件類型,通過(guò)它們的組合可以得到具體錯(cuò)誤信息,同時(shí)也可以讀出產(chǎn)生錯(cuò)誤的模塊地址和機(jī)架信息。STEP 7不能時(shí)時(shí)監(jiān)控程序的運(yùn)行,可以用“Variable Table”監(jiān)控實(shí)時(shí)數(shù)據(jù)的變化。打開(kāi)組織塊OB8

45、6編寫程序,程序如圖7-22所示。圖7-22 OB86中所編寫的程序該程序也可以轉(zhuǎn)化成梯形圖,但程序中要將OB86的臨時(shí)變量OB86_RACKS_FLTD ARRAY0.31改成OB86_z23 DWORD。把程序下載到CPU后,在“Blocks”插入“Variable Table”,如圖7-23所示。然后打開(kāi),填入MB0、MB1、MW2、MD4并點(diǎn)擊 鍵就可以得到相關(guān)信息了。圖7-23 插入“Variable Table”(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í),檢測(cè)到不正確的幀標(biāo)識(shí)符(

46、ID);全局?jǐn)?shù)據(jù)通信的狀態(tài)信息數(shù)據(jù)塊不存在或太短;接受到非法的全局?jǐn)?shù)據(jù)包編號(hào)。如果用于全局?jǐn)?shù)據(jù)通信狀態(tài)信息的數(shù)據(jù)塊丟失,需要用OB87生成該數(shù)據(jù)塊將它下載到CPU。可以使用SFC39至42封鎖或延時(shí)并使能通信錯(cuò)誤OB,表7-13描述了通信錯(cuò)誤OB86的臨時(shí)變量。變量類型描述OB87_EV_CLASSBYTE事件級(jí)別和標(biāo)識(shí)OB87_FLT_IDBYTE故障代碼OB87_PRIORITYBYTE優(yōu)先級(jí),可通過(guò)SETP 7選擇(硬件組態(tài))OB87_OB_NUMBRBYTEOB號(hào)OB87_RESERVED_1BYTE備用OB87_RESERVED_2BYTE備用OB87_RESERVED_3WORD根

47、據(jù)故障代碼OB87_RESERVED_4DWORD根據(jù)故障代碼OB87_DATE_TIMEDATE_AND_TIMEOB被調(diào)用時(shí)的日期和時(shí)間表7-13 OB87的變量申明表2、同步錯(cuò)誤組織塊同步錯(cuò)誤是與執(zhí)行用戶程序有關(guān)的錯(cuò)誤,程序中如果有不正確的地址區(qū)、錯(cuò)誤的編號(hào)和錯(cuò)誤的地址,都會(huì)出現(xiàn)同步錯(cuò)誤,操作系統(tǒng)將調(diào)用同步錯(cuò)誤OB。同步錯(cuò)誤組織塊包括OB121用于對(duì)程序錯(cuò)誤的處理和OB122用于處理模塊訪問(wèn)錯(cuò)誤。同步錯(cuò)誤OB的優(yōu)先級(jí)與檢測(cè)到出錯(cuò)的塊的優(yōu)先級(jí)一致。因此OB121和OB122可以訪問(wèn)中斷發(fā)生時(shí)累加器和其他寄存器中的內(nèi)容,用戶程序可以用它們來(lái)處理錯(cuò)誤。同步錯(cuò)誤可以用SFC36“MASK_FLT

48、”來(lái)屏蔽,使某些同步錯(cuò)誤不觸發(fā)同步錯(cuò)誤OB的調(diào)用,但是CPU在錯(cuò)誤寄存器中記錄發(fā)生的被屏蔽的錯(cuò)誤。用錯(cuò)誤過(guò)濾器中的一位來(lái)表示某種同步錯(cuò)誤是否被屏蔽。錯(cuò)誤過(guò)濾器分為程序錯(cuò)誤過(guò)濾器和訪問(wèn)錯(cuò)誤過(guò)濾器,分別占一個(gè)雙字。調(diào)用SFC37“DMSK_FLT”并且在當(dāng)前優(yōu)先級(jí)被執(zhí)行完后,將解除被屏蔽的錯(cuò)誤,并且清楚當(dāng)前優(yōu)先級(jí)的事件狀態(tài)寄存器中相應(yīng)的位。可以用SFC38“READ_ERR”讀出已經(jīng)發(fā)生的被屏蔽的錯(cuò)誤。對(duì)于S7-300(CPU318除外),不管錯(cuò)誤是否被屏蔽,錯(cuò)誤都會(huì)被送入診斷緩沖區(qū),并且CPU的“組錯(cuò)誤”LED會(huì)被點(diǎn)亮??梢栽诓煌膬?yōu)先級(jí)屏蔽某些同步錯(cuò)誤。在這種情況下,在特定的優(yōu)先級(jí)中發(fā)生這類錯(cuò)

49、誤時(shí)不會(huì)停機(jī),CPU把該錯(cuò)誤存放到錯(cuò)誤寄存器中。但是無(wú)法知道是什么時(shí)候發(fā)生的錯(cuò)誤,也無(wú)法知道錯(cuò)誤發(fā)生的頻率。(1)編程錯(cuò)誤組織塊(OB121) 當(dāng)有關(guān)程序處理的故障事件發(fā)生時(shí)CPU操作系統(tǒng)調(diào)用OB121,OB121與被中斷的塊在同一優(yōu)先級(jí)中執(zhí)行,表7-14描述了編程錯(cuò)誤OB121的臨時(shí)變量。 變量類型描述OB121_EV_CLASSBYTE事件級(jí)別和標(biāo)識(shí)OB121_SW_FLTBYTE故障代碼OB121_PRIORITYBYTE優(yōu)先級(jí)=出現(xiàn)故障的OB優(yōu)先級(jí)OB121_OB_NUMBRBYTEOB號(hào)OB121_BLK_TYPEBYTE出現(xiàn)故障塊的類型(在S7-300時(shí)無(wú)有效值在這里記錄)OB12

50、1_RESERVED_1BYTE備用OB121_FLT_REGWORD故障源(根據(jù)代碼)。如:轉(zhuǎn)換故障發(fā)生的寄存器;不正確的地址(讀/寫故障);不正確的定時(shí)器/計(jì)數(shù)器/塊號(hào)碼;不正確的存儲(chǔ)器區(qū)OB121_BLK_NUMWORD引起故障的MC7命令的塊號(hào)碼(S7-300無(wú)效)OB121_PRG_ADDRWORD引起故障的MC7命令的塊號(hào)碼(S7-300無(wú)效)OB121_DATE_TIMEDATE_AND_TIMEOB被調(diào)用時(shí)的日期和時(shí)間表7-14 OB121的臨時(shí)變量表OB121程序在CPU執(zhí)行錯(cuò)誤時(shí)執(zhí)行,此錯(cuò)誤不包括用戶程序的邏輯錯(cuò)誤和功能錯(cuò)誤等,例如當(dāng)CPU調(diào)用一個(gè)未下載到CPU中的程序塊,CPU會(huì)調(diào)用OB121,通過(guò)臨時(shí)變量“OB121_BLK_TYPE”可以得出出現(xiàn)的錯(cuò)誤的程序塊。使用STEP 7不能時(shí)時(shí)監(jiān)控程序的運(yùn)行,可以用“Variable Table”監(jiān)控實(shí)時(shí)數(shù)據(jù)的變化。打開(kāi)事先已經(jīng)插入的OB121編寫程序,如圖7-24所示。 圖7-24 OB121中編寫的程序接著在項(xiàng)目“Blocks”下插入FC1,打開(kāi)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論