版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第五章
S7-300的組織塊及中斷處理在正常情況下,PLC按照循環(huán)掃描的方式執(zhí)行用戶程序。如果要對某些特殊的外部事件或內(nèi)部事件進(jìn)行快速響應(yīng),PLC采用中斷的方式進(jìn)行處理。在SIMATICS7中,對這些特殊事件的處理,安排了大量的組織塊,可在這些組織塊中編寫相應(yīng)的中斷處理程序。當(dāng)CPU檢測到中斷源發(fā)出的中斷請求時,在執(zhí)行完當(dāng)前程序的當(dāng)前指令(斷點(diǎn))后,根據(jù)優(yōu)先權(quán)的高低,立即響應(yīng)優(yōu)先權(quán)高的中斷。執(zhí)行完中斷程序后,返回到被中斷程序的斷點(diǎn)處,繼續(xù)執(zhí)行原來的用戶程序。
中斷發(fā)生時,中斷程序是由操作系統(tǒng)自動調(diào)用的,而不是由程序塊調(diào)用的。編寫中斷程序時,首先要遵循“短而精”的原則,盡量減少執(zhí)行時間;其次要注意不要輕易使用其它程序中可能使用的編程元件,應(yīng)盡量使用相應(yīng)組織塊的臨時局域變量。
本章的主要內(nèi)容:
組織塊的組成及分類。循環(huán)執(zhí)行的組織塊OB1。
定期執(zhí)行的組織塊及中斷處理。事件驅(qū)動的組織塊和中斷處理。
啟動組織塊和中斷處理。
背景組織塊。
5.1組織塊概述
組織塊是CPU操作系統(tǒng)與用戶程序間的接口。SIMATICS7CPU提供大量的OB(組織塊),用組織塊可以創(chuàng)建在特定的時間執(zhí)行的特定的程序,或者響應(yīng)特定事件的程序。例如,當(dāng)S7DP從站觸發(fā)了一個硬件中斷,或當(dāng)一個DP從站發(fā)生故障時,則S7CPU的操作系統(tǒng)就可能中斷正在處理的OB,發(fā)出的一個相應(yīng)OB的驅(qū)動事件。因此要定義OB的優(yōu)先權(quán),高優(yōu)先權(quán)的OB可以中斷低優(yōu)先權(quán)的OB。
一、組織塊的組成
組織塊只能由操作系統(tǒng)啟動,它由變量聲明表和用戶程序組成。當(dāng)操作系統(tǒng)調(diào)用時,每個OB提供20個字節(jié)的變量聲明表,其含義取決于OB。變量名稱是標(biāo)準(zhǔn)STEP7規(guī)定的。
OB的變量聲明表:地址(字節(jié))內(nèi)容0事件級別與標(biāo)識符,例如OB40的標(biāo)識符為B#16#11,表示硬件中斷被激活1用代碼表示與啟動OB事件有關(guān)的信息2優(yōu)先級。例如OB40的優(yōu)先級為16,3OB塊的編號,例如OB40的塊號為404~11附加信息,例如OB40的第5個字節(jié)為產(chǎn)生中斷的模板類型,16#54為輸入模板,16#55為輸出模板。第6、7字節(jié)組成的字為產(chǎn)生中斷的模板的起始地址。第8~11字節(jié)組成的雙字為產(chǎn)生中斷的通道號12~19啟動OB的日期和時間(年、月、日、時、分、秒、毫秒和星期)二、組織塊的分類1.循環(huán)執(zhí)行的組織塊:需要連續(xù)執(zhí)行的程序安排在OB1中,執(zhí)行完后又開始新的循環(huán)。2.啟動組織塊:啟動組織塊用于系統(tǒng)的初始化,CPU上電或操作模式改為RUN時,根據(jù)不同的啟動方式來執(zhí)行OB100~OB102中的一個。3.定期執(zhí)行的組織塊:定期執(zhí)行的組織塊包括日期時間中斷組織塊(OB10~OB17)和循環(huán)中斷組織塊(OB30~OB38)??梢愿鶕?jù)設(shè)定的日期時間或時間間隔執(zhí)行中斷。4.事件驅(qū)動的組織塊:事件驅(qū)動的組織塊包括延時中斷(OB20~OB23)、硬件中斷(OB40~OB47)、異步錯誤中斷(OB80~OB87)和同步故障中斷(OB121和OB122)。5:背景組織塊:避免循環(huán)等待時間。5.2循環(huán)執(zhí)行的組織塊
循環(huán)執(zhí)行的組織塊就是主程序OB1。
OB1調(diào)用功能塊(FB)、系統(tǒng)功能塊(SFB),或使用功能調(diào)用(FC)和系統(tǒng)功能調(diào)用(SFC)的功能。OB1被循環(huán)地處理。在啟動OB被處理后(OB100用于暖啟動或OB101用于熱啟動或OB102用于冷啟動),首先執(zhí)行OB1。在OB1循環(huán)結(jié)束時,操作系統(tǒng)傳送過程映像輸出表到輸出模板。在OB1再開始前,操作系統(tǒng)通過讀取當(dāng)前的輸入I/O的信號狀態(tài)來更新過程映像輸入表。這個過程連續(xù)不斷地重復(fù),即“循環(huán)執(zhí)行”。所有被監(jiān)視運(yùn)行的OB中,OB1的優(yōu)先權(quán)最低,因此它可以被較高優(yōu)先權(quán)的OB中斷。
5.3定期執(zhí)行的組織塊和中斷處理
一、日期時間中斷組織塊(OB10~OB17)和中斷處理
在SIMATICS7中,允許用戶通過STEP7編程,可在特定日期、時間(例如每分鐘、每小時、每天、每周、每月、每年)執(zhí)行一次中斷操作,也可以從設(shè)定的日期時間開始,周期性地重復(fù)執(zhí)行中斷操作。8個日期時間中斷具有相同的優(yōu)先級,CPU按啟動事件發(fā)生順序進(jìn)行處理。1.設(shè)置和啟動日期時間中斷2.查詢?nèi)掌跁r間中斷3.禁止日期時間中斷
二、循環(huán)中斷組織塊(OB30~OB38)循環(huán)中斷是CPU進(jìn)入RUN后,按一定的間隔時間循環(huán)觸發(fā)的中斷,因此用戶定義的間隔時間要大于中斷服務(wù)程序的執(zhí)行時間。啟動循環(huán)中斷,需要在STEP7參數(shù)設(shè)置時選中循環(huán)中斷組織塊,并按1ms的整數(shù)倍設(shè)置間隔時間。如果未做間隔時間設(shè)置,CPU則按默認(rèn)值100ms觸發(fā)循環(huán)中斷。
可以用SFC40和SFC39來激活或禁止循環(huán)中斷組織塊。
例:在I0.0的上升沿啟動OB35對應(yīng)的循環(huán)中斷,在I0.1的上升沿禁止OB35對應(yīng)的循環(huán)中斷。在OB35中使MW4加1。先將OB35的循環(huán)周期由默認(rèn)的100ms改為1000ms,下裝到CPU中。OB1:Network1://在I0.0的上升沿激活循環(huán)中斷AI0.0FPM1.1//在I0.0的上升沿,M1.1為1JNBm001//否則跳轉(zhuǎn)CALLSFC40//激活OB35對應(yīng)的循環(huán)中斷
MODE:=B#16#2//用OB號指定中斷OB_NR:=35//組織塊編號
RET_VAL:=MW100//保存錯誤代碼
m001:NOP0Network2://在I0.1的上升沿禁止循環(huán)中斷AI0.1FPM1.2//在I0.1的上升沿,M1.2為1JNBm002//否則跳轉(zhuǎn)CALLSFC39//禁止OB35對應(yīng)的循環(huán)中斷
MODE:=B#16#2//用OB號指定中斷OB_NR:=35//組織塊編號
RET_VAL:=MW104//保存錯誤代碼
m002:NOP0OB35:Network1:LMW4+1TMW4
5.4事件驅(qū)動的組織塊和中斷處理
事件驅(qū)動的組織塊包括延時中斷(OB20~OB23)、硬件中斷(OB40~OB47)、異步故障中斷(OB80~OB87)和同步故障中斷(OB121和OB122)。
一、延時中斷組織塊(OB20~OB23)和中斷處理在PLC中的普通定時器的定時精度要受到不斷變化的掃描周期的影響,使用延時中斷可以達(dá)到以ms為單位的高精度的延時。SIMATICS7通過調(diào)用系統(tǒng)功能SFC32“SRT_DINT”,可調(diào)用1~4個延時中斷組織塊(OB20~OB23),可調(diào)用的OB個數(shù)與CPU型號有關(guān)。如果延時中斷已經(jīng)啟動,而延時時間尚未達(dá)到時,可通過調(diào)用系統(tǒng)功能SFC33“CAN_DINT”取消延時中斷的執(zhí)行。還可以通過調(diào)用系統(tǒng)功能SFC34“QRY_DINT”查詢延時中斷的狀態(tài)。二、異步故障中斷組織塊(OB80~OB87)
SIMATICS7300/400系列PLC對于編程元件和內(nèi)部寄存器,具有很強(qiáng)的故障檢測和處理能力。當(dāng)CPU檢測到某個故障后,操作系統(tǒng)將調(diào)用相應(yīng)的組織塊,通過編寫故障中斷組織塊的程序,對檢測到的故障進(jìn)行處理,否則將進(jìn)入STOP模式。為了避免發(fā)生某種故障時CPU進(jìn)入STOP模式,可以在CPU中建立一個對應(yīng)的空組織塊。
1.
時間錯誤中斷處理組織塊(OB80)
CPU默認(rèn)的循環(huán)掃描的監(jiān)控時間為150ms,如果發(fā)生下列情況時產(chǎn)生時間錯誤中斷:
實(shí)際的循環(huán)掃描時間超過設(shè)置的循環(huán)掃描時間。
由于向前修改時間而跳過日期時間中斷。在處理優(yōu)先級時延時太多。
2.電源故障處理組織塊(OB81)
電源故障包括未安裝后備電池或者電池失效和機(jī)架上的直流24V電源故障。當(dāng)電源故障出現(xiàn)和消失時,操作系統(tǒng)都要調(diào)用OB81。例:在CPU機(jī)架直流24V電壓故障發(fā)生時,將Q4.0置位,當(dāng)故障消失時,將Q4.0復(fù)位。OB1:Network1://24V電壓故障發(fā)生
LB#16#23L#OB81_FLT_ID==I=M0.1LOB81_EV_CLASSLB#16#39==I=M0.2AM0.1AM0.2SQ4.0Network2://24V電壓故障消失
LOB81_EV_CLASSLB#16#38==I=M0.3AM0.1AM0.3RQ4.03.診斷中斷處理組織塊(OB82)如果對于有診斷功能的模板,已經(jīng)用HWConfig定義了診斷報警,當(dāng)模板出現(xiàn)斷線故障時,或者當(dāng)模擬量輸入模板發(fā)生電源故障時,以及輸入信號值超過模擬量模板的測量范圍時,當(dāng)故障發(fā)生及消失時,都調(diào)用OB82,啟動診斷中斷處理程序。
當(dāng)診斷中斷被觸發(fā)時,有問題的模板自動地在OB82的啟動信息和診斷緩沖區(qū)存入4個字節(jié)的診斷數(shù)據(jù)和模板的起始地址,在編寫OB82的程序時,從OB82的啟動信息中得到更確切的診斷信息。利用系統(tǒng)功能SFC51,可讀出模板的診斷數(shù)據(jù),利用SFC52,可將這些信息寫入診斷緩沖區(qū)。4.模板熱插拔中斷處理組織塊(OB83)
對于S7-400系列的PLC,除了CPU模板、電源模板和帶適配器的S5模板外,允許帶電熱插拔已經(jīng)組態(tài)的其它模板,此時要產(chǎn)生模板熱插拔中斷。此外用STEP7修改模板的參數(shù)后,在RUN模式下下裝到CPU中時,也要產(chǎn)生模板熱插拔中斷,調(diào)用OB83。可以用SFC39~SFC42來禁止、延時和激活OB83。
如果CPU正在運(yùn)行時插入已組態(tài)的模板,則CPU檢查所插入的模板類型是否與組態(tài)記錄一致。如果一致,則調(diào)用OB83,通過HWConfig程序,用已組態(tài)在CPU上的參數(shù)集裝入該模板。在編寫OB83的程序時,要根據(jù)OB83的啟動信息,調(diào)用SFC55~SFC59,對新插入的模板的參數(shù)賦值。5.CPU硬件故障處理組織塊(OB84)
當(dāng)CPU檢測到MPI網(wǎng)絡(luò)的接口故障、通信總線的接口故障或者分布式I/O的接口故障時,以及故障消失時,操作系統(tǒng)都調(diào)用OB84。
在編寫OB84的程序時,要根據(jù)OB84的啟動信息,用系統(tǒng)功能SFC52,將故障信息寫入到診斷緩沖區(qū)。6.優(yōu)先級錯誤處理組織塊(OB85)
當(dāng)用戶程序調(diào)用了一個未被裝入的程序塊或操作系統(tǒng)調(diào)用了一個沒有編程的OB時,S7CPU的操作系統(tǒng)將調(diào)用OB85。當(dāng)過程映像正被更新時出現(xiàn)了I/O存取錯誤,也調(diào)用OB85。當(dāng)被組態(tài)的用于DP從站輸入和輸出的地址被放在S7CPU的過程映像表時,而此DP從站已損壞,也調(diào)用OB85。
在編寫OB85的程序時,應(yīng)根據(jù)OB85的啟動信息,判斷已損壞或未插入的模板位置。可用SFC49查找有關(guān)模板所在槽。7.機(jī)架故障組織塊(OB86)
如果S7CPU的操作系統(tǒng)檢測到擴(kuò)展機(jī)架故障、DP主站系統(tǒng)和DP從站的故障,產(chǎn)生機(jī)架故障中斷,無論是故障的產(chǎn)生和消失,都將調(diào)用組織塊OB86。
在編寫OB86的程序時,應(yīng)根據(jù)OB86的啟動信息,判斷出故障的機(jī)架??梢杂肧FC52將故障信息寫入到診斷緩沖區(qū)。8.通信故障處理組織塊(OB87)
在使用通信功能塊或全局?jǐn)?shù)據(jù)(GD)通信時,如果出現(xiàn)下列通信錯誤,操作系統(tǒng)將調(diào)用OB87:接收全局?jǐn)?shù)據(jù)時,檢測到不正確的幀標(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中。三、同步故障中斷(OB121和OB122)同步故障是指與執(zhí)行用戶程序有關(guān)的故障,例如程序中有錯誤的地址,有錯誤的編號,操作系統(tǒng)將調(diào)用同步故障組織塊。
同步故障中斷組織塊OB121、OB122的優(yōu)先級與檢測到出錯的塊的優(yōu)先級一致。因此在中斷發(fā)生時,可以訪問累加器和其它寄存器,這樣用戶程序就可以用這些編程元件來處理故障。1.編程錯誤中斷組織塊OB121
當(dāng)出現(xiàn)編程錯誤時,操作系統(tǒng)將調(diào)用OB121。
2.
I/O存取故障中斷組織塊(OB122)
當(dāng)STEP7指令存取I/O模板或DP從站的輸入/輸出數(shù)據(jù)時出現(xiàn)錯誤,或者當(dāng)用戶程序存取不存在的或有故障的DP從站的輸入/輸出數(shù)據(jù)時,則S7CPU操作系統(tǒng)調(diào)用OB122。
5.5
啟動組織塊和中斷處理當(dāng)PLC接通電源以后,CPU有3種啟動方式,可以在STEP7中設(shè)置CPU的屬性時選擇其一:熱啟動(Hotrestart)、暖啟動(Warmrestart)、冷啟動(Coldrestart)。
不同的CPU具有不同的啟動方式,例如S7-300系列,除了CPU318可以選擇暖啟動或者冷啟動外,其它的CPU只有暖啟動的方式,對于S7-400系列,根據(jù)不同的CPU型號,都可以選擇熱啟動,或者選擇暖啟動、冷啟動。只能選擇1種啟動方式。
1.暖啟動
手動暖啟動:將CPU的模式選擇開關(guān)扳到STOP位置,“STOP”LED指示燈亮,然后再扳到RUN或者RUN-P位置。自動暖啟動:啟動時將復(fù)位過程映像寄存器及非保持的存儲器位,復(fù)位定時器和計數(shù)器。在STEP7中設(shè)置CPU的屬性時設(shè)置的具有保持功能的器件將保留原數(shù)據(jù)。重新開始運(yùn)行程序,執(zhí)行OB100或OB1。2.熱啟動如果PLC在運(yùn)行期間突然停電,又重新上電,CPU將執(zhí)行一個初始化程序OB101,自動完成熱啟動,從上次RUN模式下中斷處繼續(xù)執(zhí)行,不對計數(shù)器等復(fù)位。3.冷啟動
手動冷啟動:將CPU的模式選擇開關(guān)扳到STOP位置,“
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 我國商業(yè)銀行信用風(fēng)險宏觀壓力測試:理論、實(shí)證與展望
- 我國商業(yè)銀行中間業(yè)務(wù)范圍經(jīng)濟(jì)效應(yīng)的深度剖析與策略研究
- 區(qū)域協(xié)調(diào)發(fā)展素養(yǎng)大局觀念試卷
- 手術(shù)患者安全核查考試題及答案2025新版
- 土方工程施工方案
- 煤礦從業(yè)人員考試題庫(帶答案)
- 檢驗(yàn)檢測機(jī)構(gòu)資質(zhì)認(rèn)定生態(tài)環(huán)境監(jiān)測機(jī)構(gòu)評審補(bǔ)充要求
- 嶺南版八年級下冊美術(shù)測試題目
- 2026福建海峽環(huán)保集團(tuán)股份有限公司市場化選聘所屬企業(yè)職業(yè)經(jīng)理人1人備考題庫及一套答案詳解
- 品質(zhì)管理獎懲制度
- DB21-T 4279-2025 黑果腺肋花楸農(nóng)業(yè)氣象服務(wù)技術(shù)規(guī)程
- 2026廣東廣州市海珠區(qū)住房和建設(shè)局招聘雇員7人考試參考試題及答案解析
- 2026新疆伊犁州新源縣總工會面向社會招聘工會社會工作者3人考試備考題庫及答案解析
- 廣東省汕頭市2025-2026學(xué)年高三上學(xué)期期末語文試題(含答案)(含解析)
- 110接處警課件培訓(xùn)
- DB15∕T 385-2025 行業(yè)用水定額
- 火箭軍教學(xué)課件
- 新媒體運(yùn)營專員筆試考試題集含答案
- 護(hù)理不良事件之血標(biāo)本采集錯誤分析與防控
- 心臟電生理檢查操作標(biāo)準(zhǔn)流程
- 盾構(gòu)構(gòu)造與操作維護(hù)課件 2 盾構(gòu)構(gòu)造與操作維護(hù)課件-盾構(gòu)刀盤刀具及回轉(zhuǎn)中心
評論
0/150
提交評論