![用戶程序結(jié)構(gòu)和故障診斷_第1頁](http://file4.renrendoc.com/view/ce44859c20a6056b0a76d2966e824bb4/ce44859c20a6056b0a76d2966e824bb41.gif)
![用戶程序結(jié)構(gòu)和故障診斷_第2頁](http://file4.renrendoc.com/view/ce44859c20a6056b0a76d2966e824bb4/ce44859c20a6056b0a76d2966e824bb42.gif)
![用戶程序結(jié)構(gòu)和故障診斷_第3頁](http://file4.renrendoc.com/view/ce44859c20a6056b0a76d2966e824bb4/ce44859c20a6056b0a76d2966e824bb43.gif)
![用戶程序結(jié)構(gòu)和故障診斷_第4頁](http://file4.renrendoc.com/view/ce44859c20a6056b0a76d2966e824bb4/ce44859c20a6056b0a76d2966e824bb44.gif)
![用戶程序結(jié)構(gòu)和故障診斷_第5頁](http://file4.renrendoc.com/view/ce44859c20a6056b0a76d2966e824bb4/ce44859c20a6056b0a76d2966e824bb45.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、用戶程序結(jié)構(gòu)和故障診斷第一頁,共68頁。26.0 用戶程序結(jié)構(gòu)簡介模塊化編程 1/3 模塊化編程將復(fù)雜的自動(dòng)化任務(wù)劃分為對應(yīng)于生產(chǎn)過程的技術(shù)功能的較小的子任務(wù),每個(gè)子任務(wù)對應(yīng)于一個(gè)稱為“塊”的子程序,可以通過塊與塊之間的相互調(diào)用來組織程序。這樣的程序易于修改、查錯(cuò)和調(diào)試。塊簡要描述組織塊(OB)操作系統(tǒng)與用戶程序的接口,決定用戶程序的結(jié)構(gòu)功能塊(FB)用戶編寫的包含經(jīng)常使用的功能的子程序,有專用的背景數(shù)據(jù)塊功能(FC)用戶編寫的包含經(jīng)常使用的功能的子程序,沒有專用的背景數(shù)據(jù)塊背景數(shù)據(jù)塊(DB)用于保存FB的輸入變量、輸出變量和靜態(tài)變量,其數(shù)據(jù)在編譯時(shí)自動(dòng)生成全局?jǐn)?shù)據(jù)塊(DB)存儲(chǔ)用戶數(shù)據(jù)的數(shù)據(jù)
2、區(qū)域,供所有的代碼塊共享第二頁,共68頁。36.0 用戶程序結(jié)構(gòu)簡介模塊化編程 2/3 塊結(jié)構(gòu)顯著增加了PLC程序的組織透明性、可理解性和易維護(hù)性。OB、FB、FC都包含代碼,統(tǒng)稱為代碼塊(Code)塊。被調(diào)用的代碼塊又可以調(diào)用別的代碼塊,這種調(diào)用稱為嵌套調(diào)用。在塊調(diào)用中,調(diào)用者可以是各種代碼塊,被調(diào)用的塊是OB之外的代碼塊。調(diào)用功能塊時(shí)需要為它指定一個(gè)背景數(shù)據(jù)塊。第三頁,共68頁。46.0 用戶程序結(jié)構(gòu)簡介模塊化編程 3/3 編程時(shí)被調(diào)用的塊應(yīng)該是已經(jīng)存在的塊,即應(yīng)先創(chuàng)建被調(diào)用的塊及其背景數(shù)據(jù)塊。第四頁,共68頁。56.0 用戶程序結(jié)構(gòu)簡介組織塊 1/6 組織塊(Organization B
3、lock,OB)是操作系統(tǒng)與用戶程序的接口,由操作系統(tǒng)調(diào)用,用于控制循環(huán)掃描和中斷程序的執(zhí)行、PLC的啟動(dòng)和錯(cuò)誤處理等。組織塊的程序是用戶編寫的。每個(gè)組織塊必須有唯一的OB編號,200之前的某些編號是保留的,其他OB的編號應(yīng)大于等于200.沒有可以調(diào)用OB的指令,S7-1200 CPU具有基于事件的特性,只有發(fā)生了某些特定事件,相應(yīng)的OB才會(huì)被執(zhí)行。不要試圖在OB/FC/FB中調(diào)用某個(gè)OB,除非用戶觸發(fā)與此OB相關(guān)的OB。例如用戶可以在OB1中通過SRT_DINT指令設(shè)置延遲時(shí)間,當(dāng)延遲時(shí)間到達(dá)時(shí),延遲中斷OB被觸發(fā)。當(dāng)特定事件發(fā)生時(shí),相應(yīng)OB被調(diào)用,無論其是否包含程序代碼。第五頁,共68頁。
4、66.0 用戶程序結(jié)構(gòu)簡介組織塊 2/6 程序循環(huán)組織塊(Program cycle OB):OB1是用戶程序中的主程序,CPU循環(huán)執(zhí)行操作系統(tǒng)程序,在每一次循環(huán)中,操作系統(tǒng)調(diào)用一次OB1。因此OB1中的程序也是循環(huán)執(zhí)行的。允許有多個(gè)程序循環(huán)OB,默認(rèn)的是OB1,其他程序循環(huán)OB的編號應(yīng)大于等于200。第六頁,共68頁。76.0 用戶程序結(jié)構(gòu)簡介組織塊 3/6 啟動(dòng)組織塊(Startup OB):當(dāng)CPU的工作模式從STOP切換到RUN時(shí),執(zhí)行一次啟動(dòng)(Startup)組織塊,來初始化程序循環(huán)OB中的某些變量。執(zhí)行完啟動(dòng)OB后,開始執(zhí)行程序循環(huán)OB。可以有多個(gè)啟動(dòng)OB,默認(rèn)的為OB100,其他
5、啟動(dòng)OB的編號應(yīng)大于等于200。第七頁,共68頁。86.0 用戶程序結(jié)構(gòu)簡介組織塊 4/6 中斷組織塊(Interrupt OB):中斷組織塊用來實(shí)現(xiàn)對特殊內(nèi)部事件或外部事件的快速響應(yīng)。如果沒有中斷事件出現(xiàn),CPU循環(huán)執(zhí)行組織塊OB1。如果出現(xiàn)中斷事件,例如診斷中斷和時(shí)間延遲中斷等,因?yàn)镺B1的中斷優(yōu)先級最低,操作系統(tǒng)在執(zhí)行完當(dāng)前程序的當(dāng)前指令后,立即響應(yīng)中斷。CPU暫停正在執(zhí)行的程序塊,自動(dòng)調(diào)用一個(gè)分配給該事件的組織塊(即中斷程序)來處理中斷事件。執(zhí)行完中斷組織塊后,返回被中斷的程序的斷點(diǎn)處繼續(xù)執(zhí)行原來的程序。這意味著部分用戶程序不必在每次循環(huán)中處理,而是在需要時(shí)才被及時(shí)處理。處理中斷事件的
6、程序放在該事件驅(qū)動(dòng)的OB中。第八頁,共68頁。96.0 用戶程序結(jié)構(gòu)簡介組織塊 5/6 時(shí)間延遲中斷組織塊(Time-delay OB):此OB可以通過SRT_DINT指令設(shè)置其延遲時(shí)間,當(dāng)延遲時(shí)間到達(dá)時(shí),延遲中斷OB被觸發(fā)。 周期中斷組織塊(Cyclic interrupt OB):將在指定間隔之間被執(zhí)行。 硬件中斷組織塊(Hardware interrupt OB):將在指定的硬件事件發(fā)生時(shí)被執(zhí)行,例如數(shù)字量輸入信號的上升沿或下降沿。第九頁,共68頁。106.0 用戶程序結(jié)構(gòu)簡介組織塊 6/6 時(shí)間錯(cuò)誤中斷組織塊(Time-error interrupt OB):此OB將在檢測到時(shí)間錯(cuò)誤(
7、程序循環(huán)掃描OB執(zhí)行時(shí)間超出了CPU屬性中定義的最大掃描時(shí)間)時(shí)被執(zhí)行,此OB的編號只能是OB80。當(dāng)CPU中沒有此OB時(shí),用戶可以指定當(dāng)時(shí)間錯(cuò)誤發(fā)生時(shí)CPU是忽略此錯(cuò)誤還是轉(zhuǎn)換到STOP模式。 診斷錯(cuò)誤中斷組織塊(Diagnostic error interrupt OB):此OB將在檢測到診斷錯(cuò)誤時(shí)被執(zhí)行,此OB的編號只能是OB82。當(dāng)CPU中沒有此OB時(shí),用戶可以指定當(dāng)診斷錯(cuò)誤發(fā)生時(shí)CPU是忽略此錯(cuò)誤還是轉(zhuǎn)換到STOP模式。第十頁,共68頁。116.0 用戶程序結(jié)構(gòu)簡介功能 功能(Function,F(xiàn)C)是用戶程序編寫的子程序,它包含完成特定任務(wù)的代碼和參數(shù)。FC和FB有與調(diào)用它的塊共享
8、的輸入?yún)?shù)和輸出參數(shù)。執(zhí)行完FC和FB后,返回調(diào)用它的代碼塊。功能是快速執(zhí)行的代碼塊,用于執(zhí)行下列任務(wù):完成標(biāo)準(zhǔn)的和可重復(fù)使用的操作,例如算術(shù)運(yùn)算;完成技術(shù)功能,例如使用位邏輯運(yùn)算的控制。可以在程序的不同位置多次調(diào)用同一個(gè)FC,這可以簡化重復(fù)執(zhí)行的任務(wù)的變成。功能沒有固定的存儲(chǔ)區(qū),執(zhí)行結(jié)束后,其臨時(shí)變量中的數(shù)據(jù)就丟失了??梢杂萌?jǐn)?shù)據(jù)塊或M存儲(chǔ)區(qū)來存儲(chǔ)那些在功能執(zhí)行結(jié)束后需要保持的數(shù)據(jù)。第十一頁,共68頁。126.0 用戶程序結(jié)構(gòu)簡介功能塊 功能塊(Function Block,F(xiàn)B)是用戶程序編寫的子程序。調(diào)用功能塊時(shí),需要制定背景數(shù)據(jù)塊,是功能塊專用的存儲(chǔ)區(qū)。CPU執(zhí)行FB中的程序代碼,將
9、塊的輸入、輸出參數(shù)和局部靜態(tài)變量保存在背景數(shù)據(jù)塊中,以便可以從一個(gè)掃描周期到下一個(gè)掃描周期快速訪問它們。FB的典型應(yīng)用是執(zhí)行不能在一個(gè)掃描周期結(jié)束的操作。在調(diào)用FB時(shí),打開了對應(yīng)的背景數(shù)據(jù)塊,后者的變量可以供其他代碼塊使用。調(diào)用同一個(gè)功能塊時(shí)使用不同的背景數(shù)據(jù)塊,可以控制不同的設(shè)備。例如用來控制水泵和閥門的功能使用包含特定的操作參數(shù)的不同的背景數(shù)據(jù)塊,可以控制不同的水泵和閥門。S7-1200的部分指令(例如IEC標(biāo)準(zhǔn)的定時(shí)器和計(jì)數(shù)器指令)實(shí)際上是功能塊,在調(diào)用它們時(shí)需要指定配套的背景數(shù)據(jù)塊。第十二頁,共68頁。136.0 用戶程序結(jié)構(gòu)簡介數(shù)據(jù)塊 數(shù)據(jù)塊(Data block,DB)是用于存放執(zhí)
10、行代碼塊時(shí)所需的數(shù)據(jù)的數(shù)據(jù)區(qū),有兩種類型的數(shù)據(jù)塊:全局(Global)數(shù)據(jù)塊:存儲(chǔ)供所有的代碼塊使用的數(shù)據(jù),所有的OB、FB和FC都可以 訪問。背景數(shù)據(jù)塊:存儲(chǔ)供特定的FB使用的數(shù)據(jù)。第十三頁,共68頁。146.1 功能與功能塊功能的特點(diǎn)功能(Function, FC)和功能塊(Function Block, FB)是用戶編寫的子程序,他們包含完成特定任務(wù)的程序。FC和FB有與調(diào)用它的塊共享的輸入、輸出參數(shù),執(zhí)行完FC和FB后,將執(zhí)行結(jié)果返回給調(diào)用它的代碼塊。功能沒有固定的存儲(chǔ)區(qū),功能執(zhí)行結(jié)束后,其局部變量中的臨時(shí)數(shù)據(jù)就丟失了??梢杂萌肿兞縼泶鎯?chǔ)那些在功能執(zhí)行結(jié)束后需要保存的數(shù)據(jù)。第十四頁,
11、共68頁。156.1 功能與功能塊生成功能設(shè)壓力變送器量程的下限為0MPa,上限為High MPa,經(jīng)A/D轉(zhuǎn)換后得到027648的整數(shù)。數(shù)字N和壓力P之間的計(jì)算公式:雙擊第十五頁,共68頁。166.1 功能與功能塊功能的局部數(shù)據(jù) 1/3在界面區(qū)中生成局部變量,只能在它所在的塊中使用。局部變量的名字由字符(包括漢字)和數(shù)字組成。1)Input(輸入?yún)?shù)):由調(diào)用它的塊提供的輸入數(shù)據(jù)。2)Output(輸出參數(shù)):返回給調(diào)用它的塊的程序執(zhí)行結(jié)果。3)InOut(輸入_輸出參數(shù)):初值由調(diào)用它的塊提供,塊執(zhí)行后將它的返回值返回給調(diào)用它的塊。4)Temp(臨時(shí)數(shù)據(jù)):暫時(shí)保存在局部數(shù)據(jù)堆棧中的數(shù)據(jù)。
12、只是在執(zhí)行塊時(shí)使用臨時(shí)數(shù)據(jù),執(zhí)行完后,不在保存臨時(shí)數(shù)據(jù)的數(shù)值,它可能被別的塊的臨時(shí)數(shù)據(jù)覆蓋。5)Return中的Ret_Val(返回值),屬于輸出參數(shù)。第十六頁,共68頁。176.1 功能與功能塊功能的局部數(shù)據(jù) 2/3第十七頁,共68頁。186.1 功能與功能塊功能的局部數(shù)據(jù) 3/3生成局部變量時(shí),不需要指定存儲(chǔ)器地址,根據(jù)各變量的類型,程序編輯器自動(dòng)地為所有變量指定存儲(chǔ)器地址。返回值Ret_Val屬于輸出參數(shù),默認(rèn)的數(shù)據(jù)類型為Void,該數(shù)據(jù)類型不保存數(shù)據(jù),用于功能不需要返回值的情況,在調(diào)用FC1時(shí),看不到Ret_Val。如果將它設(shè)置為Void之外的數(shù)據(jù)類型,在FC1內(nèi)部編程時(shí)可以使用該變量
13、,調(diào)用FC1時(shí)可以在方框的右邊看到作為輸出參數(shù)的Ret_Val。第十八頁,共68頁。196.1 功能與功能塊FC1的程序設(shè)計(jì)STEP 7 Basic自動(dòng)地在局部變量的前面添加#號。第十九頁,共68頁。206.1 功能與功能塊在OB1中調(diào)用FC1在FC的界面區(qū)中定義的參數(shù)稱為FC的形式參數(shù),簡稱為形參,形參在FC內(nèi)部的程序中使用,在別的邏輯塊調(diào)用FC時(shí),需要為每個(gè)形參指定實(shí)際的參數(shù),簡稱為實(shí)參。實(shí)參與它對應(yīng)的形參應(yīng)具有相同的數(shù)據(jù)類型。第二十頁,共68頁。216.1 功能與功能塊調(diào)用功能的實(shí)驗(yàn)第二十一頁,共68頁。226.1 功能與功能塊為塊提供密碼保護(hù)選中生產(chǎn)的FC1,執(zhí)行菜單命令:“編輯”“專
14、有技術(shù)保護(hù)” “啟用專有技術(shù)保護(hù)”,在打開的對話框中輸入密碼并確認(rèn),項(xiàng)目樹中的FC1圖標(biāo)上出現(xiàn)鎖的符號,表示FC1受保護(hù)。雙擊打開FC1,可以看到界面區(qū)的變量,但是看不到程序區(qū)的程序。也可修改或禁用專有技術(shù)保護(hù)。第二十二頁,共68頁。236.1 功能與功能塊功能塊的特點(diǎn)功能塊(FB)是用戶編寫的有自己的存儲(chǔ)區(qū)(背景數(shù)據(jù)塊)的塊。FB的典型應(yīng)用是執(zhí)行不能在一個(gè)掃描周期結(jié)束的操作。每次調(diào)用功能塊是,都需要指定一個(gè)背景數(shù)據(jù)塊,背景數(shù)據(jù)塊隨功能塊的調(diào)用而打開,在調(diào)用結(jié)束時(shí)自動(dòng)關(guān)閉。功能塊的輸入、輸出和靜態(tài)變量(Static)用指定的背景數(shù)據(jù)塊保存,但是不會(huì)保存臨時(shí)局部變量(Temp)中的數(shù)據(jù)。功能塊執(zhí)
15、行后,背景數(shù)據(jù)塊中的數(shù)據(jù)不會(huì)丟失。第二十三頁,共68頁。246.1 功能與功能塊功能塊的局部變量 1/2FB1的界面區(qū)FB1的背景數(shù)據(jù)塊第二十四頁,共68頁。256.1 功能與功能塊功能塊的局部變量 2/2功能塊的數(shù)據(jù)永久性地保存在它的背景數(shù)據(jù)塊中,在功能塊執(zhí)行完后也不會(huì)丟失,以供下次執(zhí)行時(shí)使用。其他代碼塊可以訪問背景數(shù)據(jù)塊中的變量。不能直接刪除和修改背景數(shù)據(jù)塊中的變量,只能在它的功能塊的界面區(qū)中刪除和修改這些變量。生成功能塊的輸入、輸出參數(shù)和靜態(tài)變量時(shí),它們被自動(dòng)指定一個(gè)默認(rèn)值,可以修改這些默認(rèn)值。變量的默認(rèn)值被傳送給FB的背景數(shù)據(jù)塊,作為同一個(gè)變量的初始值??梢栽诒尘皵?shù)據(jù)塊中修改變量的初始
16、值。調(diào)用FB時(shí)沒有指定實(shí)參的形參使用背景數(shù)據(jù)塊中的初始值。第二十五頁,共68頁。266.1 功能與功能塊編寫FB1的程序第二十六頁,共68頁。276.1 功能與功能塊在OB1中調(diào)用FB1 1/2第二十七頁,共68頁。286.1 功能與功能塊在OB1中調(diào)用FB1 2/2如果沒有給功能塊 (FB) 的輸入、輸出或輸入/輸出參數(shù)賦值,將使用背景數(shù)據(jù)塊 (DB) 中存儲(chǔ)的值。 可以給FB接口中的參數(shù)賦初值。這些值將傳送到相關(guān)的背景 DB 中。如果未分配參數(shù),將使用當(dāng)前存儲(chǔ)在背景 DB 中的值。 第二十八頁,共68頁。296.1 功能與功能塊處理調(diào)用錯(cuò)誤FB1最初沒有輸入?yún)?shù)“定時(shí)時(shí)間”。在OB1中調(diào)用
17、符號名為“Motor”的FB1后,在FB1的界面區(qū)增加了輸入?yún)?shù)“定時(shí)時(shí)間”,OB1中被調(diào)用的FB1的方框和字符變?yōu)榧t色。點(diǎn)擊工件欄上的 (更新不一致的塊調(diào)用) ,出現(xiàn)“界面更新”對話框,顯示出原有的塊界面和新的界面。點(diǎn)擊確定,OB1中被調(diào)用的FB1被修改為新的界面,F(xiàn)B1中的紅色錯(cuò)誤標(biāo)記消失。第二十九頁,共68頁。306.1 功能與功能塊FC與FB的區(qū)別1)功能塊有背景數(shù)據(jù)塊,功能沒有背景數(shù)據(jù)塊。2)只能在功能內(nèi)部訪問它的局部變量,其他代碼塊或HMI可以訪問功能塊的背景數(shù)據(jù)塊中的變量。3)功能沒有靜態(tài)變量,功能塊有保存在背景數(shù)據(jù)塊中的靜態(tài)變量。功能如果有執(zhí)行完后需要保存的數(shù)據(jù),只能存放在全局
18、變量中(如全局?jǐn)?shù)據(jù)塊和M去),但這樣會(huì)影響功能的可移植性。4)功能塊的局部變量(不包含Temp)有默認(rèn)值(初始值),功能的局部變量沒有初始值。在調(diào)用功能塊時(shí)如果沒有設(shè)置某些輸入、輸出參數(shù)的實(shí)參,將使用背景數(shù)據(jù)塊中的初始值。調(diào)用功能時(shí)應(yīng)給所有的形參指定實(shí)參。第三十頁,共68頁。316.1 功能與功能塊OB與FC和FB的區(qū)別1)對應(yīng)的事情發(fā)生時(shí),由操作系統(tǒng)調(diào)用組織塊,F(xiàn)B和FC是用戶程序在代碼塊中調(diào)用。2)組織塊沒有輸入?yún)?shù)、輸出參數(shù)和靜態(tài)變量,只有臨時(shí)局部數(shù)據(jù)。有的組織塊自動(dòng)生成的臨時(shí)局部數(shù)據(jù)包含了與啟動(dòng)組織塊的時(shí)間有關(guān)的信息,它們由操作系統(tǒng)提供。第三十一頁,共68頁。6.3 中斷和中斷指令6
19、用戶程序結(jié)構(gòu)和故障診斷第三十二頁,共68頁。336.3 中斷事件與中斷指令啟動(dòng)組織塊的事件事件類型OB編號OB個(gè)數(shù)啟動(dòng)事件隊(duì)列深度OB優(yōu)先級優(yōu)先級組程序循環(huán)1或2001啟動(dòng)或結(jié)束前一循環(huán)OB111啟動(dòng)100或2000從STOP切換到RUN11時(shí)間延遲2004延遲時(shí)間到832循環(huán)中斷2004固定的循環(huán)時(shí)間到84硬件中斷20050上升沿(16個(gè)) 、下降沿(16個(gè)) 325HSC計(jì)數(shù)值=設(shè)定值,計(jì)數(shù)方向編號,外部復(fù)位,最大分別6個(gè)166診斷錯(cuò)誤820或1模塊檢測到錯(cuò)誤89時(shí)間錯(cuò)誤800或1超過最大循環(huán)時(shí)間,調(diào)用的OB正在執(zhí)行,隊(duì)列溢出,因?yàn)橹袛嘭?fù)荷過高丟失中斷8263第三十三頁,共68頁。346.
20、3 中斷事件與中斷指令不會(huì)啟動(dòng)OB的事件事件級別事 件事件優(yōu)先級系統(tǒng)反應(yīng)插入/拔出插入/拔出模塊21STOP訪問錯(cuò)誤刷新過程映像的I/O訪問錯(cuò)誤22忽略編程錯(cuò)誤塊內(nèi)的編程錯(cuò)誤23STOPI/O訪問錯(cuò)誤塊內(nèi)的I/O訪問錯(cuò)誤24STOP超過最大循環(huán)時(shí)間的兩倍超過最大循環(huán)時(shí)間的兩倍27STOP第三十四頁,共68頁。356.3 中斷事件與中斷指令事件執(zhí)行的優(yōu)先級與中斷隊(duì)列優(yōu)先級、優(yōu)先級組合隊(duì)列用來決定時(shí)間服務(wù)程序的處理順序。每個(gè)CPU事件都有它的優(yōu)先級,不同優(yōu)先級的事件分為3個(gè)優(yōu)先級組。優(yōu)先級的編號越大,優(yōu)先級越高。事件一般按優(yōu)先級的高低來處理,先處理高優(yōu)先級的事件。優(yōu)先級相同的事件按“先來先服務(wù)”的
21、原則來處理。高優(yōu)先級組的事件可以中斷低優(yōu)先級組的事件的OB的執(zhí)行。一個(gè)OB正在執(zhí)行時(shí),如果出現(xiàn)了另一個(gè)具有相同或較低優(yōu)先級組的事件,后者不會(huì)中斷正在處理的OB,將根據(jù)它的優(yōu)先級添加到對應(yīng)的中斷隊(duì)列排隊(duì)等待。當(dāng)前的OB處理完后,再處理排隊(duì)的事件。不同的事件均有它自己的中斷隊(duì)列和不同的隊(duì)列深度。對于特定的事件類型,如果隊(duì)列中的事件個(gè)數(shù)達(dá)到上限,下一個(gè)事件將使隊(duì)列溢出,新的中斷事件被丟棄,同時(shí)產(chǎn)生時(shí)間錯(cuò)誤中斷事件。第三十五頁,共68頁。366.3 中斷事件與中斷指令程序循環(huán)組織塊需要連續(xù)執(zhí)行的程序應(yīng)放在主程序OB1中,CPU在RUN模式時(shí)循環(huán)執(zhí)行OB1,可以在OB1中調(diào)用FC和FB。如果用戶程序生成
22、了其他程序循環(huán)OB,CPU按OB編號的順序執(zhí)行它們,首先執(zhí)行主程序OB1,然后執(zhí)行編號大于等于200的程序循環(huán)OB。一般只需要一個(gè)程序循環(huán)組織塊。第三十六頁,共68頁。376.3 中斷事件與中斷指令啟動(dòng)組織塊啟動(dòng)組織塊用于初始化,CPU從STOP切換到RUN時(shí),執(zhí)行一次啟動(dòng)OB。執(zhí)行完后,開始執(zhí)行程序循環(huán)OB1。允許生成多個(gè)啟動(dòng)OB,默認(rèn)的是OB100,其他的啟動(dòng)OB的編號應(yīng)大于等于200。一般只需要一個(gè)啟動(dòng)組織塊。OB100的程序:OB201的程序:將CPU切換到RUN后,QB0的數(shù)值為7,MB14和MB16的值為1,說明只執(zhí)行了一次OB100和OB201。第三十七頁,共68頁。386.3
23、中斷事件與中斷指令循環(huán)中斷組織塊在設(shè)定的時(shí)間間隔,循環(huán)中斷(cyclic interrupt)組織塊被周期地執(zhí)行。最多可以組態(tài)4個(gè)循環(huán)中斷事件,循環(huán)中斷OB的編號大于等于200。第三十八頁,共68頁。396.3 中斷事件與中斷指令硬件中斷組織塊 1/4硬件中斷組織塊用于處理需要快速響應(yīng)的過程事件。出現(xiàn)CPU內(nèi)置的數(shù)字量輸入的上升沿、下降沿和高速計(jì)數(shù)器事件時(shí),立即中止當(dāng)前正在執(zhí)行的程序,改為執(zhí)行對應(yīng)的硬件中斷OB(編號大于等于200)。硬件中斷組織塊沒有啟動(dòng)信息。最多可以生成50個(gè)硬件中斷OB:1)上升沿事件:CPU內(nèi)置的數(shù)字量輸入和2點(diǎn)信號板的數(shù)字量輸入有OFF變?yōu)镺N時(shí),產(chǎn)生上升沿事件。2)
24、下降沿事件:上述數(shù)字量輸入由ON變OFF時(shí),產(chǎn)生下降沿事件。3)高速計(jì)數(shù)器HSC16的實(shí)際計(jì)數(shù)值等于設(shè)定值(CV=RV)。4) HSC16的方向改變,計(jì)數(shù)值由增大變減小,或由減小變增大。5) HSC16的外部復(fù)位,某些HSC的數(shù)字量外部復(fù)位輸入從OFF變ON時(shí),將計(jì)數(shù)值復(fù)位為0。第三十九頁,共68頁。406.3 中斷事件與中斷指令硬件中斷組織塊 2/4硬件中斷組織塊的處理方法:1)給一個(gè)事件指定一個(gè)硬件中斷OB,這種方法最為簡單方便,應(yīng)優(yōu)先采用;2)多個(gè)硬件中斷OB分時(shí)處理一個(gè)硬件中斷事件,需要用DETACH指令取消原有的OB與事件的連接,用ATTACH指令將一個(gè)新的硬件中斷OB分配給硬件中斷
25、事件。第四十頁,共68頁。416.3 中斷事件與中斷指令硬件中斷組織塊 3/4生成硬件中斷組織塊:第四十一頁,共68頁。426.3 中斷事件與中斷指令硬件中斷組織塊 4/4 建立一個(gè)新的OB用于該硬件中斷事件將已有的OB203分配給該硬件中斷事件沒有OB連接到該硬件中斷事件組態(tài)硬件中斷事件:第四十二頁,共68頁。436.3 中斷事件與中斷指令中斷連接與中斷分離指令 1/5 例:首先將硬件中斷組織塊OB200分配給I0.0的上升沿中斷事件,該中斷事件出現(xiàn)時(shí),調(diào)用OB200。在OB200中,用DETACH指令斷開I0.0上升沿事件與OB200的連接,用ATTACH指令建立I0.0上升沿事件與OB2
26、01的連接。下一次出現(xiàn)I0.0上升沿事件時(shí),調(diào)用OB201。在OB201中,用DETACH指令斷開I0.0上升沿事件與OB201的連接,用ATTACH指令建立I0.0上升沿事件與OB200的連接。用這樣的方法,可以用OB200和OB201輪流處理I0.0的上升沿中斷事件。第四十三頁,共68頁。446.3 中斷事件與中斷指令中斷連接與中斷分離指令 2/5 生成硬件中斷組織塊OB200與OB201:第四十四頁,共68頁。456.3 中斷事件與中斷指令中斷連接與中斷分離指令 3/5 組態(tài)硬件中斷事件:第四十五頁,共68頁。466.3 中斷事件與中斷指令中斷連接與中斷分離指令 4/5 OB200的程序
27、:OB201的程序:第四十六頁,共68頁。476.3 中斷事件與中斷指令中斷連接與中斷分離指令 5/5 中斷分離指令DETACH用來斷開硬件中斷事件與中斷OB的連接,禁止在出現(xiàn)指令的硬件中斷事件時(shí)執(zhí)行指定的中斷OB。輸入?yún)?shù)OB_NR是OB的編號,EVENT是指定的事件的編號,返回值是執(zhí)行的條件代碼。如果沒有指定參數(shù)EVENT,當(dāng)前連接到OB_NR的所有事件將被斷開連接。中斷連接指令A(yù)TTACH將OB_NR指定的組織塊連接到EVENT指定的事件。在指定的事件發(fā)生時(shí),將調(diào)用指定的OB。如果執(zhí)行指令時(shí)沒有OB連接到指定的事件,該指令的功能被忽略。參數(shù)ADD為默認(rèn)值0時(shí),指定的事件取代連接到原來指定
28、給這個(gè)OB的所有事件。第四十七頁,共68頁。6.4 在線和故障診斷6 用戶程序結(jié)構(gòu)和故障診斷第四十八頁,共68頁。496.4 在線功能建立起編程計(jì)算機(jī)與PLC的在線連接后,可以進(jìn)行下列操作: 下載程序和項(xiàng)目組態(tài)數(shù)據(jù)給CPU; 測試用戶程序; 顯示和改變CPU的操作模式; 顯示和設(shè)置CPU的實(shí)時(shí)時(shí)鐘的日期和時(shí)間; 顯示模塊信息和診斷硬件; 比較在線和離線的塊。第四十九頁,共68頁。506.4 在線功能進(jìn)入和退出在線模式打開項(xiàng)目樹中某個(gè)PLC的文件夾,點(diǎn)擊 ,進(jìn)入在線模式。被激活的項(xiàng)目樹或工作區(qū)的標(biāo)題欄的背景色為表示在線的橙色,沒有激活的窗口的標(biāo)題欄下沿有橙色的線條。選擇項(xiàng)目樹中的PLC_1,點(diǎn)擊
29、 ,進(jìn)入離線模式。 第五十頁,共68頁。516.4 在線功能可訪問設(shè)備對話框執(zhí)行“在線”“可訪問的設(shè)備”,或點(diǎn)擊 ,打開可訪問設(shè)備對話框,可以看到目標(biāo)子網(wǎng)中所有可訪問設(shè)備的列表。第五十一頁,共68頁。526.4 在線功能在線與診斷視圖 1/7在線與診斷視圖由文件夾和文件夾中的組組成,選中左邊窗口中的某個(gè)組,右邊窗口是有關(guān)的詳細(xì)信息。第五十二頁,共68頁。536.4 在線功能在線與診斷視圖 2/7“在線訪問”組,顯示是否建立了在線連接,以及通信接口(網(wǎng)卡)的信息:第五十三頁,共68頁。546.4 在線功能在線與診斷視圖 3/7切換CPU的操作模式清除工作區(qū)中所有的保持性和非保持性的存儲(chǔ)器,斷開現(xiàn)
30、有的通信連接。用戶程序、IP地址、系統(tǒng)時(shí)間、診斷緩沖區(qū)和存儲(chǔ)卡的內(nèi)容不受影響。顯示CPU最短的、最長的和當(dāng)前的循環(huán)掃描周期。顯示使用的裝載存儲(chǔ)器、工作存儲(chǔ)器(內(nèi)存)和保持存儲(chǔ)器所占的百分比。第五十四頁,共68頁。556.4 在線功能在線與診斷視圖 4/7“診斷狀態(tài)”組,顯示模塊的診斷的信息:第五十五頁,共68頁。566.4 在線功能在線與診斷視圖 5/7“設(shè)置日時(shí)間”,可以設(shè)置PLC的實(shí)時(shí)時(shí)鐘:PLC的實(shí)時(shí)時(shí)鐘將會(huì)與計(jì)算機(jī)的實(shí)時(shí)時(shí)鐘同步。第五十六頁,共68頁。576.4 在線功能在線與診斷視圖 6/7比較離線和在線的塊:離線(編程設(shè)備中),在線(PLC中)在離線狀態(tài)右鍵點(diǎn)擊程序塊文件夾或其中的
31、某個(gè)塊,執(zhí)行快捷菜單“比較離線/在線”,工作區(qū)出現(xiàn)比較編輯器:藍(lán)色和橙色的兩個(gè)半圓表示在線與離線的塊不一致:第五十七頁,共68頁。586.4 在線功能在線與診斷視圖 7/7雙擊比較編輯器中的某個(gè)塊,打開離線和在線兩個(gè)窗口:第五十八頁,共68頁。596.4 故障診斷使用狀態(tài)LED 1/7CPU LED的組合意義描述STOP/RUN(橙/綠)ERR(紅)MAINT (橙)斷電熄滅熄滅熄滅啟動(dòng)、自檢測、固件更新橙色/綠色交替閃動(dòng)熄滅STOP模式橙色常亮RUN模式綠色常亮拔出存儲(chǔ)卡橙色常亮閃爍出錯(cuò)橙色或綠色常亮閃爍維護(hù)請求橙色或綠色常亮常亮硬件故障橙色常亮常亮熄滅LED檢測或有問題的CPU固件橙色/綠色交替閃動(dòng)閃爍閃爍第五十九頁,共68頁。606.4 故障診斷使用狀態(tài)LED 2/7CPU和每塊數(shù)字量信號模塊(SM)提供每點(diǎn)數(shù)字量的I/O狀態(tài)LED,點(diǎn)亮和熄滅分別表示1狀態(tài)和0狀態(tài)。模擬量信號模塊為每個(gè)模擬量I/O通道提供一個(gè)I/O通道LED,綠色表示通道被組態(tài)和激活,紅色表示通道處于錯(cuò)誤狀態(tài)。此外,每個(gè)數(shù)字量信號模塊和模擬量信號模塊還有一個(gè)DIAG(診斷)LED,用于顯示模塊的狀態(tài),綠色表示模塊運(yùn)行正常,紅色表示模塊有故障或不可用。信號模塊還有檢測現(xiàn)場側(cè)的電源是否存在。第六十頁,共68頁。616.4 故障診斷使用狀態(tài)LED
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年芳香族聚氨酯水分散液項(xiàng)目可行性研究報(bào)告
- 2025至2031年中國胸腺五肽行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2031年中國直滑式導(dǎo)電塑料電位器行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2031年中國烘烤紙盒行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2031年中國智能數(shù)字兆歐表行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年家用米糊豆?jié){機(jī)項(xiàng)目可行性研究報(bào)告
- 2025至2031年中國冷凍芹菜水餃行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年全自動(dòng)腳輪旋鉚機(jī)項(xiàng)目可行性研究報(bào)告
- 2025年三頭插銷項(xiàng)目可行性研究報(bào)告
- 2025至2030年預(yù)處理飼料硫酸亞鐵項(xiàng)目投資價(jià)值分析報(bào)告
- 法律職業(yè)倫理(第二版)完整版教學(xué)課件全書電子講義(最新)
- ESD測試作業(yè)指導(dǎo)書-防靜電手環(huán)
- 船模制作教程(課堂PPT)課件(PPT 85頁)
- 高一(4)班分科后第一次班會(huì)課件ppt課件(PPT 29頁)
- 春季開學(xué)安全第一課PPT、中小學(xué)開學(xué)第一課教育培訓(xùn)主題班會(huì)PPT模板
- JJG30-2012通用卡尺檢定規(guī)程
- 部編版人教版二年級上冊語文教材分析
- APR版制作流程
- 《C++程序設(shè)計(jì)》完整教案
- 美國LM2500艦用燃?xì)廨啓C(jī)
- 《公共政策分析》課件.ppt
評論
0/150
提交評論