S7200PLC編程及應(yīng)用課件_第1頁
S7200PLC編程及應(yīng)用課件_第2頁
S7200PLC編程及應(yīng)用課件_第3頁
S7200PLC編程及應(yīng)用課件_第4頁
S7200PLC編程及應(yīng)用課件_第5頁
已閱讀5頁,還剩129頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第三章

PLC程序設(shè)計基礎(chǔ)程序設(shè)計的基礎(chǔ),必熟練掌握?。∨W(xué)習(xí),不斷求新

沒有終生的專業(yè),只有終生的學(xué)習(xí)第三章

PLC程序設(shè)計基礎(chǔ)程序設(shè)計的基礎(chǔ),必熟練掌握!13.1.1PLC編程語言的國際標(biāo)準(zhǔn)PLC的編程語言(IEC61131-3中的5種PLC基本語言)●順序功能圖(SFC):不僅僅是一種語言,更是一種組織控制程序的圖形方法。三要素:步、轉(zhuǎn)換和動作●梯形圖(LD):以圖形方式表達觸點和線圈以及功能塊的組成。

直觀易懂

使用最多功能塊表示定時/計數(shù)器或數(shù)學(xué)運算等指令●指令表(IL):又稱語句表,類似匯編程序中的助記符表達式,與其相對應(yīng)的是LD。應(yīng)用于熟悉PLC和程序設(shè)計的經(jīng)驗豐富的程序員使用●結(jié)構(gòu)文本(ST):類似Pascal的基于文本的高級語言與LD相比,能實現(xiàn)復(fù)雜的數(shù)學(xué)運算,編程簡潔●功能塊圖(FBD):一種類似于數(shù)字邏輯電路的編程語言。與門、或門和非(小圓圈)來表示邏輯運算。FBD廣泛地用于過程工業(yè)。3.1PLC的編程語言與程序結(jié)構(gòu)3.1.1PLC編程語言的國際標(biāo)準(zhǔn)PLC的編程語言(IEC2NETWORK23//網(wǎng)絡(luò)題目1(單行)LDI0.0OQ0.0ANI0.0=Q0.0NETWORK24//網(wǎng)絡(luò)題目2(單行)LDI0.3TONT37,+100//10秒延時LAD中程序被劃分為的獨立的段,該段稱為網(wǎng)絡(luò)(Network),一個網(wǎng)絡(luò)中只能有一塊獨立電路。若網(wǎng)絡(luò)中有兩塊獨立電路在編譯時會顯示“無效網(wǎng)絡(luò)或網(wǎng)絡(luò)太復(fù)雜無法編譯”梯形圖編輯器會自動給出網(wǎng)絡(luò)的編號,允許以網(wǎng)絡(luò)為單位給梯形圖程序加注釋。STL程序可以不使用網(wǎng)絡(luò)但只有將STL程序正確地劃分成網(wǎng)絡(luò)才能將STL程序轉(zhuǎn)化為LAD程序。編程軟件默認:25個網(wǎng)絡(luò)不夠可“編輯-插入-網(wǎng)絡(luò)”或在程序塊窗口中點擊右鍵在快捷菜單中“插入-網(wǎng)絡(luò)”梯形圖(LD或LAD):語句表(IL):左母線右母線可省略左側(cè)一條垂直的線稱作左母線;右邊一條虛線稱為右母線(可省略);母線之間是觸點的邏輯連接和線圈輸出NETWORK23//網(wǎng)絡(luò)題目1(單行)L33.1.2PLC的程序結(jié)構(gòu)S7-200CPU的控制程序由主程序、子程序和中斷程序組成。1、主程序是程序的主體,每一個項目只能有一個主程序。主程序可以調(diào)用子程序和在中斷發(fā)生時執(zhí)行中斷程序。2、子程序同一子程序可以在PLC的一個掃描周期內(nèi)被多次調(diào)用。使用子程序可以簡化程序設(shè)計,節(jié)約程序存儲器空間。3、中斷程序中斷程序用來及時處理與用戶程序的執(zhí)行時序無關(guān)的操作或不能事先預(yù)測何時發(fā)生的中斷事件。中斷程序不能改寫其他程序使用的存儲器(因不能預(yù)知中斷何時發(fā)生)。在中斷事件發(fā)生時,打斷主或子程序的運行,中斷程序執(zhí)行完后,自動返回到原程序。它不是由用戶程序調(diào)用而是在中斷事件發(fā)生時有操作系統(tǒng)調(diào)用。中斷程序由用戶編寫。3.1.2PLC的程序結(jié)構(gòu)S7-200CPU的控制程序由主43.2.1數(shù)據(jù)在存儲器中存取的方式3.2存儲器的數(shù)據(jù)類型與尋址方式b表示3.2.1數(shù)據(jù)在存儲器中存取的方式3.2存儲器的數(shù)據(jù)類型與5數(shù)據(jù)的存取方式:雙字:存儲器是由許多存儲單元組成的,每個存儲單元都有唯一的地址,可以依據(jù)存儲器地址來存儲數(shù)據(jù)。存儲器地址的表示有位、字節(jié)、字、雙字等格式。由字節(jié)地址和位地址組成。位存儲單元的地址中需指出存儲器位于哪一個區(qū),并指出字節(jié)的編號及位號。如:I4.5Q0.0這種存取方式稱為“字節(jié).位”尋址方式位:以存儲區(qū)標(biāo)識符、字節(jié)標(biāo)識符及字節(jié)地址組合而成如IB3QB1MB10VB201字節(jié):由相鄰兩個字節(jié)組成字。如:VW100表示由VB100和VB101組成一個字,VB100為高字節(jié)。字:由相鄰兩個字組成雙字,占四個字節(jié)。如:VD100表示VB100、VB101、VB102、VB103四個字節(jié)組成。數(shù)據(jù)的存取方式:雙字:存儲器是由許多存儲單元組成的,每個存儲63.2.2

區(qū)類似中間繼電器,存儲中間操作狀態(tài)類似:時間繼電器當(dāng)前值寄存器(16位)定時器位存放中間結(jié)果累計計數(shù)輸入脈沖的個數(shù)當(dāng)前值寄存器(16位)累計比CPU掃描速度更快的事件32位可讀寫可按字節(jié)、字、雙字來存取如:CPU與用戶之間交換信息SM0.0一直為1SM0.1僅第一個T內(nèi)為1其它為0I、Q、V、L、M、S、SM均可按Bit、B、WDW來存取作暫時存儲器或給子程序傳遞參數(shù)3.2.2類似中間繼電器,存儲中間操作狀態(tài)類似:時間繼電器存73.3位邏輯指令

3.3.1觸點類型OFF1I0.0ON0I0.0OFFON常開觸點外部電路有動作時電路是閉合,無動作斷開常閉觸點外部電路有動作時電路就斷開,無動作閉合線圈:代表CPU對存儲器的寫操作,用戶程序中同一線圈只能使用一次。ONQ0.010OFF0Q0.013.3位邏輯指令

3.3.1觸點類型OFF1I0.0ON8位裝載(加載)指令(LD/LDN):表示一個梯形圖網(wǎng)絡(luò)的開始即電路的開始★L(fēng)D(LOAD):位裝載指令,對應(yīng)梯形圖從左側(cè)母線開始,連接常開觸點,即常開觸點與左母線相連接★L(fēng)DN(LOADNOT):位裝載指令,對應(yīng)梯形圖從左側(cè)母線開始,連接常閉觸點,即常閉觸點與左母線相連接1、標(biāo)準(zhǔn)觸點指令★A(AND,與):常開觸點與其他程序段相串聯(lián)★AN(與非):

常閉觸點與其它程序段相串聯(lián)(取反后與)★O(OR,或):

常開觸點與其他程序段相并聯(lián)★ON(或非):

常閉觸點與其它程序段相并聯(lián)(取反后或)例1:LDI0.0AM0.0ANI0.1=Q0.0LDNI0.2OQ0.1ONM0.1AI0.3=Q0.1由LAD轉(zhuǎn)化成STL:位裝載(加載)指令(LD/LDN):表示一個梯形圖網(wǎng)絡(luò)的開始9LDI0.0ANI0.1OI0.2AI0.3ONC5=Q0.3=Q1.4ANI3.4=Q2.6例2:由梯形圖寫出語句表例3:復(fù)位脈沖的產(chǎn)生(上升沿檢測)I0.1M3.1M0.0I0.1M3.1I0.1M0.0TTM0.0LDI0.0=Q0.3例2:由梯形圖寫出語句表例310問題提出:在實際系統(tǒng)中不但要求能夠進行程序設(shè)計,有時還需能夠讀懂他人編寫的程序,在編制程序時,還會出現(xiàn)多個分支電路同時受一個或一組觸點控制的情況,如圖:2、堆棧的基本概念5-8班???利用前面講的觸點串并聯(lián)指令能不能將這樣的梯形圖轉(zhuǎn)換成語句表于是出現(xiàn)堆棧指令堆棧的基本概念:S7-200有一個9位的堆棧,棧頂用來存儲邏輯運算結(jié)果,下面8位用來存儲中間運算結(jié)果。堆棧按“先進后出”的原則存取。LD(LDN)將指定地址中的位數(shù)據(jù)(取反后)裝入堆棧的棧頂(每執(zhí)行一次LD(LDN)壓棧一次);舉例:執(zhí)行A/O(AN/ON)指令時均與棧頂中2#數(shù)據(jù)(取反后)相與/或操作并將結(jié)果存入棧頂。與堆棧相關(guān)的指令有:ALD、OLD、LPS、LRD、LPP、LDSn問題提出:在實際系統(tǒng)中不但要求能夠進行程序設(shè)計,有時還需2、114、棧裝載與(ALD)(塊串聯(lián))3、棧裝載或(OLD)(塊并聯(lián))OLD-ORLOAD:指電路塊并聯(lián)連接ALD-ANDLOAD:指電路塊串聯(lián)連接12345串聯(lián)電路塊:兩個或以上觸點的串聯(lián)電路1、2并聯(lián)電路塊:兩個或以上觸點的并聯(lián)電路4由LAD轉(zhuǎn)化成STL:首先完成電路塊內(nèi)部的觸點串并聯(lián)操作(每個電路塊的開始觸點使用LD/LDN,深度加1);然后再塊與/或操作此時堆棧深度減1電路塊:兩個或以上觸點經(jīng)過串聯(lián)或并聯(lián)后組成的結(jié)構(gòu)。分為:4、棧裝載與(ALD)(塊串聯(lián))3、棧裝載或(OLD)(塊并1212345LDI0.0ANI0.1LDNI2.1AI3.4LDNT37AI2.5OLDALDOQ1.7=Q3.015432iv7iv6iv5iv4iv3iv2iv1iv01iv8iv7iv6iv5iv4iv3iv2iv1iv0堆棧:執(zhí)行OLD前后:xiv6iv5iv4iv3iv2iv1iv03執(zhí)行后:iv6iv5iv4iv3iv2iv1iv012執(zhí)行前:執(zhí)行ALD前后:xiv6iv5iv4iv3iv2iv1iv05執(zhí)行后:iv6iv5iv4iv3iv2iv1iv034執(zhí)行前:OLD/ALD指令:無操作數(shù)每執(zhí)行一次電路塊的串或并聯(lián)操作堆棧深度減1X:不確定值…iv6iv5iv4iv3iv2iv1iv01I2.112345LDI0.0LDNI2.13LDI0.0OQ2.5ANI2.3LDNM4.5OQ0.3AT1LDNM5.6ANC5OLDALDOM3.2=Q0.31324總結(jié):每執(zhí)行一條LD/LDN指令或增加一條LD/LDN指令開始的電路塊內(nèi)部的運算結(jié)果,堆棧中就增加一個數(shù)據(jù),堆棧深度加1;每執(zhí)行一條ALD/OLD指令堆棧深度減1;簡記:執(zhí)行LD/LDN指令堆棧深度加1;執(zhí)行ALD/OLD指令堆棧深度減1思考:一個LAD中電路塊個數(shù)是否有限制?塊數(shù)≤9∵堆棧只有9層>9會丟失數(shù)據(jù)LDI0.01324總結(jié):思考:塊數(shù)≤9∵堆棧只14邏輯入棧LPS:LogicPush分支電路開始指令。用于生成一條新的母線,其左側(cè)為原來的主邏輯塊,右側(cè)為新的從邏輯塊

從堆棧使用上講,LPS指令復(fù)制棧頂?shù)闹挡⑵鋲喝攵褩5南乱粚?,棧中原來的?shù)據(jù)依次向下一層推移,棧底值被推出丟失注意:本指令為分支的開始,以后必須有分支結(jié)束指令LPP即LPS與LPP指令必須成對出現(xiàn)。iv8iv7iv6iv5iv4iv3iv2iv1iv0入棧前:iv7iv6iv5iv4iv3iv2iv1iv0iv0入棧后:棧底值丟失5、其他堆棧操作指令1-4班LPS、LPP、LRD、LDSn適用場合:多分支電路同時受控于一個觸點或一組觸點的情況,如圖LPS邏輯入棧LPS:LogicPush分支電路開始指令。15邏輯出棧LPP:LogicPop在梯形圖分支結(jié)構(gòu)中,LPP用于LPS產(chǎn)生的新母線右側(cè)的組后一個從邏輯塊編程,它在讀取完離它最近的LPS壓入堆棧內(nèi)容的同時復(fù)位該條新母線。從堆棧使用上講,使棧中各層的數(shù)據(jù)依次上移一層,第二層的數(shù)據(jù)成為新的棧頂值,原棧頂值消失。iv8iv7iv6iv5iv4iv3iv2iv1iv0出棧前:xiv8iv7iv6iv5iv4iv3iv2iv1出棧后:棧頂值丟失注意:最后一條分支用LPP必須出現(xiàn)在LPS的后面,與LPS成對出現(xiàn)。LPP邏輯出棧LPP:LogicPop在梯形圖分支結(jié)構(gòu)16邏輯讀棧LRD:LogicReadiv8iv7iv6iv5iv4iv3iv2iv1iv0讀棧前:iv8iv7iv6iv5iv4iv3iv2iv1iv1讀棧后:在梯形圖分支結(jié)構(gòu)中,當(dāng)新母線左側(cè)為主邏輯塊時,LPP開始右側(cè)的第一個從邏輯塊編程,LRD開始右側(cè)的第二個及其以后(最后一個除外)的從邏輯塊編程。從堆棧使用上講,LRD指令將堆棧中第2層的數(shù)據(jù)復(fù)制到棧頂(即LRD讀取最近的LPS壓入堆棧的內(nèi)容)。第2~9層的數(shù)據(jù)不變,原棧頂值消失LRD裝載堆棧LDSn:LoadStack(n=1~8)LDS指令:復(fù)制堆棧內(nèi)第n層的值到棧頂。棧中原來的數(shù)據(jù)依次向下一層推移,棧底值被推出丟失例:LDS4iv8iv7iv6iv5iv4iv3iv2iv1iv0執(zhí)行前:iv7iv6iv5iv4iv3iv2iv1iv0iv4執(zhí)行后:不變邏輯讀棧LRD:LogicReadiv8iv7i17LPS、LPP、LRD適用場合:多分支電路同時受控于一個觸點或一組觸點的情況LPS/LPP必成對出現(xiàn)ABCLDI0.2AI0.0LPSANI0.1=Q2.1LRDAI0.5=M3.7LPP

ANI0.4=Q0.3分支開始(即指令第一條)用LPS壓棧;分支結(jié)束(即最后一條指令)用LPP出棧;中間的所有分支用LRD指令即:分支數(shù)=2只需LPS、LPP;分支數(shù)≥3需LPS、LPP、LRD指令LPS、LPP、LRD適用場合:LPS/LPP必成對出現(xiàn)AB18LDI0.0LPSAI0.1LPSAI0.2=Q0.0LRDAI0.3=Q0.1LPPANI0.4=Q0.2LPPAI0.5=M3.1AB說明:用編程軟件將梯形圖轉(zhuǎn)化成語句表程序時,系統(tǒng)會自動加入LPS、LPP和LRD指令。但寫語句表程序時用戶必須自己寫入LPS、LPP和LRD指令。12312ABLDI0.0AB說明:用編程軟件將梯形圖轉(zhuǎn)化成語句1219課堂作業(yè):LDI0.0LPSLDI0.5OI0.6ALD=Q0.1LRD

LDI2.1OI1.3ALD=Q0.2LPPAI1.0=Q0.3LDI0.0OI2.2LDNI0.1

LDI2.1AI2.0OLDALD=Q0.0課堂作業(yè):LDI0.0206、立即觸點指令只用于輸入量I常開立即觸點指令:LDI、AI、OI符號:I常閉立即觸點指令:LDNI、ANI、ONI符號:/I立即觸點并不依賴于S7--200的掃描周期刷新,它會立即刷新。在指令執(zhí)行時:立即讀入物理輸入點的值,依據(jù)該值決定觸點的接通或斷開狀態(tài),但并不更新該物理輸入點對應(yīng)的輸入過程映像寄存器。當(dāng)物理輸入點狀態(tài)為1時,常開立即觸點閉合;當(dāng)物理輸入點狀態(tài)為0時,常閉立即觸點閉合。常開立即指令LD、AND或OR將物理輸入值存入棧頂,而常閉立即指令LD、AND或OR將物理輸入的值取反,再存入棧頂。LDII0.0OII0.2ANII0.1=Q0.06、立即觸點指令只用于輸入量I常開立即觸點指令:LD213.3.2輸出指令與其他指令1、輸出(=)與線圈相對應(yīng)輸出指令將棧頂值復(fù)制到對應(yīng)的映像寄存器輸出指令應(yīng)放在梯形圖右邊。如:若驅(qū)動線圈的觸點電路接通時,線圈流過“能流”,指定位對應(yīng)的映像寄存器為1,反之為0當(dāng)立即輸出指令執(zhí)行時,物理輸出點立即被置為能流值。在STL中,立即指令將棧頂?shù)闹盗⒓磸?fù)制到物理輸出點的指定位上?!癐”表示立即,當(dāng)指令執(zhí)行時,新值會同時被寫到物理輸出和相應(yīng)的輸出過程映象寄存器。這一點不同于非立即指令,只把新值寫入過程映象寄存器。2.立即輸出(=I)

只用于輸出量(Q)當(dāng)指令執(zhí)行時,立即輸出指令(=I)將新值同時寫到物理輸出點和相應(yīng)的過程映象寄存器中3.3.2輸出指令與其他指令1、輸出(=)與線圈相對22(1)S,置位指令(2)R,復(fù)位指令置位即置1,復(fù)位即置0R/S比成對出現(xiàn)可互換次序置位和復(fù)位指令可以將位存儲區(qū)的某一位開始的一個或多個(最多可達255個)同類存儲器位置1或置0這兩條指令在使用時需指明三點:操作性質(zhì)、開始位和位的數(shù)量。應(yīng)用場合:多用于輸出位Q、定時器/計數(shù)器位各操作數(shù)類型及范圍如表4.6所示。3.置位和復(fù)位指令(1)S,置位指令3.置位和復(fù)位指令23將位存儲區(qū)的指定位(位bit)開始的N個同類存儲器位置1并保持。用法:Sbit,N例:SQ0.0,1網(wǎng)絡(luò)1LDI0.0SQ0.0,1

網(wǎng)絡(luò)2LDI0.1RQ0.0,1……R/S指令特點:記憶保持功能記憶功能除非有復(fù)位脈沖否則一直為1除非有置位脈沖否則一直為0(1)S,置位指令(2)R,復(fù)位指令將位存儲區(qū)的指定位(位bit)開始的N個同類存儲器位置0并保持。當(dāng)用復(fù)位指令時,若對Txxx位或Cxxx位進行復(fù)位,則Txxx位或Cxxx位被復(fù)位,同時,定時器或計數(shù)器的當(dāng)前值被清零。用法:Rbit,N例:RQ0.2,3應(yīng)用舉例:1、2將位存儲區(qū)的指定位(位bit)開始的網(wǎng)絡(luò)1……R/S指令特點24用立即置位/復(fù)位指令訪問輸出點時,從指令所指出的位(bit)開始的N個(最多為128個)物理輸出點被立即置位/復(fù)位,同時相應(yīng)的輸出映像寄存器的內(nèi)容也被刷新。(3)SI/RI,立即置位/復(fù)位指令只用于輸出量Q用法:SIbit,NRIbit,N例:SIQ0.0,2RIQ0.0,1LDI0.0=Q0.0=IQ0.1SIQ0.2,1LDII0.0=Q0.3用立即置位/復(fù)位指令訪問輸出點時,從指令所指出的位(bit)25置位優(yōu)先觸發(fā)器(SR)是一個置位優(yōu)先的鎖存器。當(dāng)置位信號(S1)和復(fù)位信號(R)都為1時,輸出為1。復(fù)位優(yōu)先觸發(fā)器(RS)是一個復(fù)位優(yōu)先的鎖存器。當(dāng)置位信號(S)和復(fù)位信號(R1)都為1時,輸出為0。Bit參數(shù)用于指定被置位或者復(fù)位的布爾參數(shù)。4、RS觸發(fā)器指令0000111110置位優(yōu)先觸發(fā)器(SR)是一個置位優(yōu)先的鎖存器。4、RS觸發(fā)器262)邊沿觸發(fā)指令EU/ED無操作數(shù)上升沿觸發(fā)指令:EU

下降沿觸發(fā)指令:ED正跳變指令,一旦發(fā)現(xiàn)有正跳變發(fā)生(由0到1),該棧頂值被置為1,否則置0負跳變指令,一旦發(fā)現(xiàn)有負跳變發(fā)生(由1到0),該棧頂值被置為1,否則置0例:6、其他指令1)取反(NOT):無操作數(shù)對棧頂取反將改變能流輸入的狀態(tài)(也就是說,它將棧頂值由0變?yōu)?,由1變?yōu)?)在EU指令前有一個上升沿時(由0→1),就產(chǎn)生寬度為一個掃描周期的脈沖,驅(qū)動后面的輸出線圈。即在上升沿使觸點閉合一個掃描周期在ED指令前有一個下降沿時(由1→0),就產(chǎn)生寬度為一個掃描周期的脈沖,驅(qū)動其后線圈。即在上升沿使觸點閉合一個掃描周期3)空操作指令NOP作用:延時(稍微延長掃描周期的長度)

NOPN不影響程序的執(zhí)行,操作數(shù)N=0~255N指執(zhí)行空操作的次數(shù)2)邊沿觸發(fā)指令EU/ED無操作數(shù)上升沿觸發(fā)指令:E27例:畫出該電路的時序圖LDI0.0EU

=M0.0LDM0.0SQ0.0,1LDI0.1ED

=M0.1LDM0.1RQ0.0,1例:畫出該電路的時序圖LDI0.0283.4定時器與計數(shù)器指令S7-200PLC提供三種分辨率(也稱時基、時間增量、精度):1ms、10ms及100ms的定時器實質(zhì)上,不是累計時間而是累計時間增量進行計時的比如:10ms定時器每隔10ms就發(fā)出一個信號,該信號對當(dāng)前值加1,故也說定時器是對分辨率進行計數(shù)。3.4.1定時器指令

用來實現(xiàn)時間控制

類似:時間繼電器定時器在編程時提前輸入時間預(yù)設(shè)值,在運行時當(dāng)定時器的輸入條件滿足是開始計時,當(dāng)前值從0開始按一定的時間單位增加,當(dāng)定時器的當(dāng)前值達到預(yù)設(shè)值時定時器發(fā)生動作,PLC響應(yīng)而做出相應(yīng)的動作。此時它對應(yīng)的常開觸點閉合,常閉觸點斷開。利用定時器的輸入輸出觸點就可得到控制所需的延時時間。定時器是對內(nèi)部時鐘累計時間增量計時的。每個定時器均有:

定時時間=分辨率×預(yù)設(shè)值一個16位的當(dāng)前值寄存器用以存放當(dāng)前值;(16位符號整數(shù),最大值32767)一個16位的預(yù)置值寄存器用以存放時間的設(shè)定值;一位狀態(tài)位,反應(yīng)其觸點的狀態(tài)。3.4定時器與計數(shù)器指令S7-200PLC提供三種分辨率29定時器類型時基標(biāo)準(zhǔn)/ms最大定時值/s定時器編號有記憶的通電延時型TONR132.767T0、T6410327.67T1~T4、T65~T681003276.7T5~T31、T69~T95通電延時/斷電延時TON/TOF132.767T32、T9610327.67T33~T36、T97~T1001003276.7T37~T63、T101~T255TON:單一時間間隔的定時如:十字路口交通燈控制TOF用于設(shè)備停機、故障時間后的延時如:電機停止后再過5s冷卻風(fēng)機停止、電磁爐風(fēng)扇TONR用于累計許多的時間間隔(多段不連續(xù)時間進行累計)如:象棋比賽對某個定時器而言采用哪種分辨率是有定時器編號決定的,如表所示:

定時時間>3276.7s怎么辦?多個定時器組合或用計數(shù)器擴展定時器的定時時間范圍S7-200系統(tǒng)提供三種定制器指令:定時器類型時基標(biāo)準(zhǔn)/ms最大定時值/s定時器編號132.76301、接通延時定時器TON◆使能端(IN)接通時,T37開始計時,當(dāng)前值從0開始遞增,當(dāng)前值≥設(shè)定值時,

Txxx位為ON,但當(dāng)前值仍繼續(xù)增加直到最大值32767為止?!羰鼓芏藷o效,T37自動復(fù)位,當(dāng)前值清0,狀態(tài)位OFF。等價于:R

Txxx,1(Txxx位和當(dāng)前值均清零)◆若I0.0接通時間未到設(shè)定值就斷開,當(dāng)前值則立即復(fù)位,Q0.0不會有輸出。用于通電后單一時間間隔的定時如:走廊燈每隔5s斷開一次、十字路口交通燈I0.0()Q0.0T37T37INTONPT100ms+100LDI0.0TONT37,100LDT37=Q0.010s1、接通延時定時器TON◆使能端(IN)接通時,T3312、斷開延時定時器TOF

◆使能端(IN)有效時,Txxx位立即置1,而當(dāng)前值被清0;◆使能端(IN)斷開時,開始計時,當(dāng)前值從0遞增,當(dāng)前值=預(yù)置值時,Txxx位復(fù)位為0,停止計時,當(dāng)前值保持不變當(dāng)輸入端再次由斷開到接通時,定時器位ON,當(dāng)前值0◆如果輸入斷開的時間<預(yù)定時間,定時器仍保持接通。使能端IN再接通時,定時器當(dāng)前值仍設(shè)為0。(可以R指令復(fù)位Txx,使Txx位和當(dāng)前值清零)用于斷電后單一時間間隔的定時。即在輸入斷開后延時一段時間,才斷開輸出。多用于設(shè)備停機、故障時間后的延時如:電機關(guān)閉后再過5s才使冷卻風(fēng)機停止、電磁爐風(fēng)扇I0.0()Q0.0T37T37INTOFPT100ms+30LDI0.0TOFT37,30LDT37=Q0.03s2、斷開延時定時器TOF◆使能端(IN)有效時,323、保持型接通延時定時器TONR多個時間間隔的累計定時(對多段不連續(xù)時間進行累計)

如:象棋比賽從參賽者思考就開始計時◆使能端(IN)輸入有效(接通)時,定時器開始計時,當(dāng)前值遞增,當(dāng)前值≥預(yù)置值(PT)時,輸出狀態(tài)位置1,當(dāng)前值繼續(xù)增直到最大值32767◆使能端輸入無效(斷開)時,Txx和當(dāng)前值均保持(記憶);使能端(IN)再次接通有效時,在原記憶值的基礎(chǔ)上遞增計時。I0.0()Q0.0T3T3INTONRPT100ms+100LDI0.0TONRT3,100LDT3=Q0.0t1t2t1+t2=10s3、保持型接通延時定時器TONR多個時間間隔的累計定33說明:上電或首次掃描周期所有定時器位清零TON、TOF當(dāng)前值也清0,TONR當(dāng)前值保持掉電前的值區(qū)別:TONR只能用R指令才能使定時器當(dāng)前值和定時器位均清零,否則一直保持;TON使能端無效或R指令均可使當(dāng)前值和定時器位清零I0.0()Q0.0T3T3INTONRPT100ms+100()T3I0.1R1LDI0.0TONRT3,100LDI0.1RT3,1LDT3=Q0.0TONR型定時器具有記憶保持功能,如何給定時器位和當(dāng)前值清零操作??說明:上電或首次掃描周期所有定時器位清零區(qū)別:I0.0(34定時器指令的工作規(guī)律:等價于R指令只能用R指令Txx=0當(dāng)前值清零TON與TOF:在同一程序中不能共享相同的定時器如:不能同時對T37使用TON和TOF定時器指令的工作規(guī)律:等價于R指令只能用R指令TON與TOF35應(yīng)用實例1:延時接通/延時斷開電路用I0.0控制Q0.1,I0.0的常開觸點接通后,T37開始定時,9s后T37的常開觸點接通,使Q0.1變?yōu)镺N,I0.0為ON時其常閉觸點斷開,使T38復(fù)位。I0.0變?yōu)镺FF后T38開始定時,7S后T38的常閉觸點斷開,使Q0.1變?yōu)镺FF,T38亦被復(fù)位。接通斷開對比電路圖P58延時接通延時斷開電路返回I0.0()Q0.1T37T37INTONPT100ms+90Q0.1T38INTONPT100ms+70Q0.1I0.0T38起保停電路P55幻燈片55時序圖如下:應(yīng)用實例1:延時接通/延時斷開電路用I0.0控制Q0.1,I36應(yīng)用實例2:閃爍電路(也稱振蕩電路)T37常開觸點Q0.03sT38常開觸點I0.02s滅滅亮CPU221I0.01M2ML+DC24V1LQ0.0SB1AC220VL×用I0.0控制燈L,使之滅2s亮3s,設(shè)計所需電路畫出時序圖,分析該系統(tǒng)如何實現(xiàn)閃爍控制的LDI0.0ANT38TONT37,20LDT37TONT38,30=Q0.0振蕩電路實際上就是一個時鐘電路,它可以是等間隔的通斷,也可以是不等間隔的通斷。I0.0()Q0.0T37T37INTONPT100ms+20T38INTONPT100ms+30T38應(yīng)用實例2:閃爍電路(也稱振蕩電路)T37常開觸點Q0.37編寫循環(huán)燈程序,按下啟動按鈕I0.0時,三只燈每隔1秒輪流閃亮,并循環(huán)。按下停止I0.1時,三只燈都滅。三只燈分別用:Q0.0、Q0.1、Q0.2控制啟動按鈕:I0.0停止按鈕:I0.1應(yīng)用實例3:循環(huán)燈控制電路編寫循環(huán)燈程序,按下啟動按鈕I0.0時,三只燈每隔1秒輪流閃383.4.2計數(shù)器指令S7-200PLC提供:CTU加計數(shù)器,CTUD加/減計數(shù)器CTD減計數(shù)計數(shù)器利用輸入脈沖上升沿累計輸入脈沖的個數(shù)。組成:一個16位的預(yù)置值寄存器;一個16位的當(dāng)前值寄存器;一位狀態(tài)位組成。當(dāng)前值寄存器用以累計脈沖個數(shù),計數(shù)器當(dāng)前值≥預(yù)置值時,狀態(tài)位置1。即在堆棧中的位置是固定的,故在梯形圖中它們的位置不能顛倒3.4.2計數(shù)器指令S7-200PLC提供:計數(shù)器利用391、加計數(shù)器首次掃描時Cxxx位為OFF,當(dāng)前值=0棧頂??RI0.0()Q0.0C3C3CUCTUPV4I0.1當(dāng)R=0,且加計數(shù)脈沖CU端有上升沿輸入即時,計數(shù)器當(dāng)前值加1,每來一個脈沖當(dāng)前值就加1。當(dāng)計數(shù)器當(dāng)前值≥設(shè)定值(PV)時,該計數(shù)器的狀態(tài)位C-bit置1,則其常開觸點閉合。此時,計數(shù)器仍計數(shù),但不影響計數(shù)器的狀態(tài)位,直至計數(shù)達到最大值(32767)。當(dāng)R=1(或用復(fù)位指令R)時,計數(shù)器復(fù)位,即當(dāng)前值清零,狀態(tài)位C-bit也清零。加計數(shù)器計數(shù)范圍:0~32767。LDI0.0LDI0.1CTUC3,4LDC3=Q0.01、加計數(shù)器首次掃描時Cxxx位為OFF,當(dāng)前值=0棧頂??40采用光電開關(guān)檢測藥片,每檢測到100粒藥片后自動發(fā)出換瓶指令。設(shè)光電開關(guān)輸入信號連接I0.1,換瓶信號由Q0.1發(fā)出,則對應(yīng)的PLC程序如下圖所示:CTU應(yīng)用實例:藥片自動數(shù)粒裝瓶控制LDI0.1LDI0.2CTUC40,100LDC40=Q0.1I0.1I0.2100CUCTURPVC40()Q0.1C40在系統(tǒng)正式工作前,首先將加計數(shù)器清零,然后I0.1每檢測到一片藥片,加計數(shù)器自動加1,當(dāng)計數(shù)器的當(dāng)前值等于預(yù)設(shè)值100時,加計數(shù)器位得電使Q0.1得電發(fā)出換瓶信號。換瓶結(jié)束通過I0.2使加計數(shù)器復(fù)位,即可進入下一瓶的計數(shù)裝瓶工作采用光電開關(guān)檢測藥片,每檢測到100粒藥片后自動發(fā)出換瓶指令412、減計數(shù)器(CTD)首次掃描時Cxxx位為OFF,當(dāng)前值=預(yù)設(shè)值

等價于LD=1或R指令作復(fù)位操作當(dāng)復(fù)位LD有效時,LD=1,計數(shù)器把設(shè)定值(PV)裝入當(dāng)前值寄存器,計數(shù)器狀態(tài)位復(fù)位(即Cxxx=0)。當(dāng)LD=0,且減計數(shù)脈沖CD有效時,開始計數(shù),CD端每來一個輸入脈沖上升沿,減計數(shù)的當(dāng)前值從設(shè)定值開始減1計數(shù),當(dāng)前值減到0時停止計數(shù)并保持為0,此時Cxxx=置1棧頂??2、減計數(shù)器(CTD)首次掃描時Cxxx位為OFF,當(dāng)前值=42上例藥片自動數(shù)粒裝瓶控制,也可采用減計數(shù)器指令來控制,其對應(yīng)的PLC程序如下圖所示:CTD應(yīng)用實例:LDI0.1LDI0.2CTUC20,100LDC20=Q0.1I0.1I0.2100CDCTDLDPVC20()Q0.1C20在裝瓶計數(shù)之前,首先通過I0.2使減計數(shù)器的預(yù)置值裝載至當(dāng)前值,當(dāng)I0.1檢測到藥片到來后,減計數(shù)器減1,直到減計數(shù)器的當(dāng)前值減到0時減計數(shù)器位置1,換瓶信號Q0.1得電。上例藥片自動數(shù)粒裝瓶控制,也可采用減計數(shù)器指令來控制,其對應(yīng)433、加減計數(shù)器(CTUD)I0.1I1.1C30當(dāng)前值0140323I1.24554首次掃描時Cxxx位為OFF,當(dāng)前值=0當(dāng)R=0時,且計數(shù)脈沖有效即:當(dāng)CU端(CD端)有上升沿輸入時,計數(shù)器當(dāng)前值加1(減1)。當(dāng)計數(shù)器當(dāng)前值≥設(shè)定值PV時,C-bit置1,即其常開觸點閉合。當(dāng)R=1有效(或用復(fù)位指令R)時,計數(shù)器復(fù)位,即當(dāng)前值清零,Cxxx=0加減計數(shù)器計數(shù)范圍:–32767~32767當(dāng)CTUD達到最大值32767后下一個CU上升沿將使計數(shù)值變?yōu)樽钚≈?32767.同樣,達到最小值-32767后下一個CD上升沿將使計數(shù)值變?yōu)樽畲笾?2767.3、加減計數(shù)器(CTUD)I0.1I1.1C30當(dāng)前值01444定時器和計數(shù)器的應(yīng)用和擴展:1、PLC的定時范圍:(2)定時器與計數(shù)器的串聯(lián)組合:PLC的定時范圍是一定的,S7-200PLC中,單個定時器的最大定時范圍是32767×分辨率(ms),實際系統(tǒng)中需要設(shè)定的定時時間會超過這個最大值怎么辦??(1)定時器的串聯(lián)組合:T35延時T1=10s、T36延時T2=20s總延時時間T=T1+T2=30s推廣:n個定時器串聯(lián)的總延時T=T1+…Tn定時器和計數(shù)器的應(yīng)用和擴展:1、PLC的定時范圍:(2)定時45(2)定時器與計數(shù)器的串聯(lián)組合:設(shè)計長延時電路產(chǎn)生一個時鐘脈沖10s10s稱:脈沖信號發(fā)生器10s(2)定時器與計數(shù)器的串聯(lián)組合:設(shè)計長延時電路產(chǎn)生一個時鐘脈46T34定時時間10s,M0.0每10s接通一次,作為C10的計數(shù)脈沖當(dāng)“當(dāng)前值”達到設(shè)定值PV=2000時,就已實現(xiàn):2000×10s=20000s的延時

∴改變PT和PV就可擴展任意長的定時時間Cxxx每計數(shù)一次就意味著過去了10s10sC10當(dāng)前值Q0.0I0.1I0.0M0.0………………2000分析該電路:T34定時時間10s,M0.0每10s接通一次,作為C10的472、計數(shù)器的計數(shù)范圍:S7-200PLC中,單個計數(shù)器的計數(shù)次數(shù)是一定的,其最大計數(shù)范圍是32767,實際系統(tǒng)中可能需要設(shè)定的計數(shù)值超過這個最大值。怎么辦??計數(shù)器串聯(lián)組合的方式來擴大計數(shù)范圍當(dāng)C10達到設(shè)定值2000時,對C12的輸入脈沖I0.0的計數(shù)次數(shù)已達到1000×2000次了C10每計數(shù)一次,C12對輸入脈沖就已計數(shù)1000次M0.0I0.01000M0.0I0.1I0.1()C12C12CUPVCTURM0.02000C10CUPVCTURQ0.0()C102、計數(shù)器的計數(shù)范圍:S7-200PLC中,單個計數(shù)器的計數(shù)48計數(shù)器應(yīng)用舉例:產(chǎn)品數(shù)量檢測產(chǎn)品通過檢測器PH機械手KM1KM2傳送帶電機如圖所示,傳輸帶傳輸工作,用傳檢器檢測通過的產(chǎn)品數(shù)量,每24個產(chǎn)品機械手動作1次。機械手動作后延時2秒,將機械手電磁鐵切斷復(fù)位。PLC的I/O分配:I0.0—傳送帶起動按鈕I0.1—傳送帶停機按鈕I0.2—產(chǎn)品通過檢測器PHQ0.0—傳送帶電機KM1Q0.1—機械手KM2T37—定時器,定時2秒C10—計數(shù)器,初始值24計數(shù)器應(yīng)用舉例:產(chǎn)品數(shù)量檢測產(chǎn)品通過檢測器PH機械手KM1K49//電機起動后,在計數(shù)器的復(fù)位端產(chǎn)生寬度為一個掃描周期的正脈沖,使C20和T37復(fù)位//起、停傳送帶電機程序如下://每檢測到一個產(chǎn)品,I0.2產(chǎn)生一個正脈沖,使C20計一個數(shù)//C20每計24個數(shù),機械手動作一次//機械手動作后,延時2秒,將機械手電磁鐵切斷,同時將C20復(fù)位。C20復(fù)位后,Q0.1和T37也復(fù)位Q0.0Q0.0I0.224C20T3720C20Q0.1()I0.0I0.1C20CUPVCTUR()INPTTONT37T37PQ0.0//電機起動后,在計數(shù)器的復(fù)位端產(chǎn)生寬度為一個掃描周期的正脈50第四章數(shù)字量控制系統(tǒng)梯形圖程序設(shè)計方法◆梯形圖的經(jīng)驗設(shè)計◆根據(jù)繼電器電路圖設(shè)計梯形圖◆順序控制設(shè)計法第四章數(shù)字量控制系統(tǒng)梯形圖程序設(shè)計方法◆梯形圖的經(jīng)驗設(shè)計514.1梯形圖的經(jīng)驗設(shè)計LDI0.0OQ0.0ANI0.1=Q0.0I0.0I0.1Q0.0

4.1.1起動保持停止電路(起保停電路)特點:具有記憶功能經(jīng)驗設(shè)計法:在一些經(jīng)典電路的基礎(chǔ)上,根據(jù)被控對象對控制系統(tǒng)的具體要求,不斷地修改和完善梯形圖,有時需多次反復(fù)地調(diào)試和修改、增加一些中間編程元件和觸點,最后才能得到一個較為滿意的結(jié)果。先介紹一些常用的基本電路4.1.1~4節(jié)起/停按鈕SB1、SB1屬點動按鈕持續(xù)為ON的時間一般都很短連續(xù)控制實際工廠中:利用點動按鈕完成對外部器件的連續(xù)控制如:電機起??刂朴米陨淼妮o助觸點構(gòu)成的電路來保證輸出線圈處于導(dǎo)通狀態(tài)即“自鎖”或“自保持”功能類似S/R指令返回CPU221I0.0I0.11M2ML+DC24V1LQ0.0SB1SB2AC220VKM4.1梯形圖的經(jīng)驗設(shè)計LDI0.0I0.0I0.1Q052能否設(shè)計一個既能實現(xiàn)連續(xù)又能實現(xiàn)點動控制的電路?將起保停和點動電路并聯(lián)來控制Q0.0,如圖:連續(xù)控制()I0.2Q0.1點動控制點動控制:分析:假定該電路處于連續(xù)控制狀態(tài),對I0.2的操作對Q0.0有影響??能否實現(xiàn)從連續(xù)到點動狀態(tài)的自動切換?不能實際使用時,必告之用戶操作過程(即若實現(xiàn)點動控制必須先按下I0.1停止連續(xù)控制再按下I0.2就可實現(xiàn)點動控制)對用戶來說麻煩從設(shè)計者角度考慮:

如何實現(xiàn)從連續(xù)到點動狀態(tài)的自動切換(點動控制應(yīng)能切斷連續(xù)控制,故I0.2常閉串在連續(xù)控制電路中即可切斷)該電路實現(xiàn)從連續(xù)到點動狀態(tài)的自動切換能否實現(xiàn)從連續(xù)到點動狀態(tài)的自動切換?電路不唯一I0.2()I0.0I0.1Q0.0Q0.0能否設(shè)計一個既能實現(xiàn)連續(xù)連續(xù)控制()I0.2Q0.1點動控制53延時接通/延時斷開電路:同樣功能采用可不同設(shè)計思想如:電路圖P36延時接通延時斷開電路再如:下頁電路圖試分析其功能I0.0()Q0.0T37T37INTONPT100ms+70T38INTOFPT100ms+40T38T37位T38位7sQ0.0I0.04s接通斷開延時接通/延時斷開電路:同樣功能采用可不同設(shè)計思想I0.0(54該電路實現(xiàn)功能:延時接通延時斷開課堂作業(yè):分析并畫出時序圖:I0.0()Q0.0I0.0T37INTONPT100ms+50T38INTOFPT100ms+30T37T38Q0.0T37位Q0.0I0.0T38位5s3s接通斷開閃爍電路、脈沖信號發(fā)生器、定時器組合或定時器與計數(shù)器組合延長定時時間等這些常見電路要記住該電路實現(xiàn)功能:延時接通延時斷開課堂作業(yè):分析并畫出時序55功能:可自動清零的計數(shù)器C2實現(xiàn)循環(huán)計數(shù),每計數(shù)4次就重頭開始計數(shù)例:生產(chǎn)現(xiàn)場包裝產(chǎn)品每n個產(chǎn)品將打包裝箱,這樣就需對生產(chǎn)線上產(chǎn)品進行計數(shù)I0.0用來統(tǒng)計產(chǎn)品個數(shù),每計數(shù)n個則Q0.0就有一個脈沖信號,該信號引發(fā)打包動作RI0.0()M0.0C2C2CUCTUPV4M0.0014321432I0.0C2當(dāng)前值0M0.0即C2位分析該電路實現(xiàn)的功能:功能:可自動清零的計數(shù)器C2實現(xiàn)循環(huán)計數(shù),每計數(shù)4次就重頭開564.3順序控制設(shè)計法與順序功能圖用經(jīng)驗法設(shè)計存在的問題: 設(shè)計方法很難掌握,設(shè)計周期長。裝置交付使用后維修困難。4.3.1順序控制設(shè)計法:順序控制是按照生產(chǎn)工藝預(yù)先規(guī)定的順序,在各個輸入信號的作用下,根據(jù)內(nèi)部狀態(tài)和時間順序,在生產(chǎn)過程中各個執(zhí)行機構(gòu)自動地有秩序地進行操作。順序控制設(shè)計法又稱步進控制設(shè)計法。比如:機械手搬運物件、運料小車、信號燈閃爍控制等AB4.3順序控制設(shè)計法與順序功能圖用經(jīng)驗法設(shè)計存在的問題: 57順序控制設(shè)計法最基本的設(shè)計思路:★將系統(tǒng)的一個工作周期T劃分為若干個順序相連的階段(稱為步:Step)★用編程元件代表各個階段(即各步);★利用轉(zhuǎn)換條件控制代表各步的編程元件;★利用代表各步的編程元件控制PLC的各輸出位。說明:步是根據(jù)輸出量的狀態(tài)變化來劃分的,在任何一步內(nèi),各輸出量的ON/OFF狀態(tài)不變,但相鄰兩步輸出量總的狀態(tài)是不同的。順序控制設(shè)計法的本質(zhì):★經(jīng)驗設(shè)計法是試圖用輸入信號I直接控制輸出信號Q即:Ix.yQx.y★順序控制設(shè)計法則是用輸入量I控制代表各步的編程元件(如Mx.y)

再用它們控制輸出量Q;而步是根據(jù)輸出量Q的狀態(tài)劃分的;簡記:

Ix.yMx.yQx.ySx.y控制控制控制順序控制設(shè)計法:首先根據(jù)系統(tǒng)的工藝流程畫出SFC,然后根據(jù)SFC設(shè)計出LAD.順序控制設(shè)計法最基本的設(shè)計思路:★將系統(tǒng)的一個工作周期T劃分58順序功能圖(SFC):組成:步、有向連線、轉(zhuǎn)換、轉(zhuǎn)換條件和動作(或命令)M0.0M0.1M0.2M0.3Q0.0Q0.1Q0.1SM0.1I0.0I0.1I0.2I0.3步動作轉(zhuǎn)換條件轉(zhuǎn)換有向連線★將系統(tǒng)的一個工作周期T劃分為4個順序相連的步(Step)★用編程元件Mx.y代表各步;★利用轉(zhuǎn)換條件控制代表各步的編程元件;★利用代表各步的編程元件控制PLC的各輸出位。簡記:Ix.yMx.yQx.y控制控制順序功能圖(SFC):組成:步、有向連線、轉(zhuǎn)換、轉(zhuǎn)換條件和動594.3.2步與動作步1步3步2初始步例1:鍋爐控制中對鼓風(fēng)機和引風(fēng)機的要求如圖所示按下啟動按鈕I0.0先開引風(fēng)機延時12s后開鼓風(fēng)機;按下停止按鈕I0.1后先停鼓風(fēng)機10s后再停引風(fēng)機根據(jù)步的劃分驗證之:?。?!該系統(tǒng)將一個工作周期分成四步步的劃分:依據(jù)輸出量Q的狀態(tài)變化來劃分的,其原則是:◆任何一步之內(nèi)各輸出量的狀態(tài)是保持不變的◆相鄰兩步輸出量總的狀態(tài)是不同的步:是控制系統(tǒng)中的一個相對不變的性質(zhì),對應(yīng)于一個穩(wěn)定的狀態(tài)初始步:對應(yīng)控制系統(tǒng)的初始狀態(tài),是系統(tǒng)運行的起點。一個控制系統(tǒng)應(yīng)至少有一個初始步。用雙線框表示。M0.0M0.1M0.2M0.3引入:編程元件Mx.y代表各步,并作為步的編號,亦可用數(shù)字表示12s10sI0.0起動Q0.1I0.1停機Q0.0引風(fēng)機鼓風(fēng)機1111顯然:在每一步之內(nèi),各中間變量Mx.y的狀態(tài)是保持不變的.如:M0.0僅在初始步為1M0.1僅在步1為1其它均0系統(tǒng)的執(zhí)行順序:初始步步1步2步3一個T內(nèi)僅有一步為活動步其它均為不活動步4.3.2步與動作步1步3步2初始步例1:根據(jù)步的劃分驗證605動作A動作B5動作A動作B或:

當(dāng)系統(tǒng)處于某一步所在的階段時,該步處于活動狀態(tài),稱為“活動步”。特點:處于活動狀態(tài)的步,相應(yīng)的動作被執(zhí)行;如:步5為活動步時,動作A和動作B均被執(zhí)行處于不活動狀態(tài)的步,相應(yīng)的非存儲型動作被停止,P55表4-1存儲型動作繼續(xù)(S),直到動作被復(fù)位。步表示:用矩形框表示框中數(shù)據(jù)是該步的編號,編號可以是該步對應(yīng)的工步序號(用數(shù)字表示),也可以是與該步相對應(yīng)的編程元件(如:M0.2)動作:活動步:每一步所驅(qū)動的負載稱步動作,簡稱動作一個步表示控制過程中的穩(wěn)定狀態(tài),可以對應(yīng)一個或多個動作,這些動作可以在步的右邊加上一個矩形框來表示,框中用簡要的文字說明該步對應(yīng)的動作。如:5動作A動作B5動作A動作B或:步表示:用矩形框表614.3.3有向連線與轉(zhuǎn)換條件說明:在SFC中,只有當(dāng)某一步的前級步為活動步時,該步才有可能變成活動步。一個掃描周期內(nèi),有且僅有一步是處于活動狀態(tài)同時其它步均為不活動狀態(tài)。如果SFC中沒有活動步系統(tǒng)將無法工作,所以必須在開機時用一個適當(dāng)?shù)男盘枌⒊跏疾街脼榛顒硬?,這里用特殊寄存器位SMO.1作為初始步的轉(zhuǎn)換條件PLC一上電在第一個掃描周期SM0.1=1,系統(tǒng)就自動地進入初始狀態(tài)即初始步1、有向連線:表明了各步成為活動步的先后次序和轉(zhuǎn)移的方向默認方向:從上到下和從左到右,這兩個方向的箭頭可以省略若設(shè)計時SFC太長,則必須中斷有向連線,應(yīng)在中斷處表明下一步的標(biāo)號和所在頁數(shù)。2、轉(zhuǎn)換:在兩步之間的有向連線上用一段短橫線來表示轉(zhuǎn)換轉(zhuǎn)換將相鄰的兩步分隔開,任何兩步之間必有轉(zhuǎn)換3、轉(zhuǎn)換條件:也稱步進條件,指能夠?qū)崿F(xiàn)相鄰兩步狀態(tài)轉(zhuǎn)換的信號即:使系統(tǒng)由當(dāng)前步進入下一步的信號。可以是外部的輸入信號,如:按鈕、開關(guān)等的接通或斷開;也可以是程序運行中產(chǎn)生的信號,如:T/C的常開或常閉觸點;還可以是若干個信號的邏輯運算的組合。轉(zhuǎn)換條件應(yīng)標(biāo)注在:表示轉(zhuǎn)換的短橫線旁邊相鄰兩步之間的轉(zhuǎn)換條件滿足時,兩步之間自動地切換得以實現(xiàn)。4.3.3有向連線與轉(zhuǎn)換條件說明:在SFC中,只有當(dāng)某624.3.4順序功能圖(SFC)的基本結(jié)構(gòu)有向連線可畫可不畫特點:每一步的后面僅有一個轉(zhuǎn)換每一個轉(zhuǎn)換的后面只有一步SFC的基本結(jié)構(gòu)有:單序列、并聯(lián)序列和選擇序列

循環(huán)條件

1

2

3

起動信號

步進條件1

步進條件2

步3動作

步1動作

步2動作

單序列組成:一系列相繼激活的步組成一個掃描周期內(nèi),有且僅有一步是處于活動狀態(tài)同時其它步均為不活動狀態(tài)必畫出4.3.4順序功能圖(SFC)的基本結(jié)構(gòu)有向連線可畫可不畫63S0.0SM0.1S0.1Q0.0S0.3Q0.1Q0.2S0.2Q0.3I0.1I0.2并行序列:特點:轉(zhuǎn)換的實現(xiàn)導(dǎo)致幾個序列同時激活水平線用雙線表示注意:◆多步同時被激活后,每個序列中的活動步的進展是獨立的;◆在表示同步的水平線之上(下),只允許一個轉(zhuǎn)換條件,如:I0.1、I0.2分支:并行序列的開始稱分支如:當(dāng)步S0.0為活動步且轉(zhuǎn)換條件滿足時,步S0.1和步S0.2同時變?yōu)榛顒硬剑瑫r步S0.0不活動步合并:并行序列的結(jié)束稱合并如:當(dāng)直接連在雙線上的所有前級步(S0.1和S0.2)都處于活動步且轉(zhuǎn)換條件滿足時才會發(fā)生步S0.1和S0.2到步S0.3的進展,即步S0.1和步S0.2同時變?yōu)椴换顒佣絊0.3則變?yōu)榛顒硬健?/p>

是指系統(tǒng)的幾個同時工作的獨立部分一個掃描周期內(nèi),有且僅有一步是處于活動狀態(tài)同時其它步均為不活動狀態(tài)S0.0SM0.1S0.1Q0.0S0.3Q0.1Q0.2S64SM0.1S0.0S0.1Q0.0S0.3Q0.1Q0.2S0.2Q0.3I0.1I0.2I0.0I0.3選擇序列:分支處:當(dāng)步S0.0為活動步時,若I0.1=1則發(fā)生步S0.0到步S0.1的進展;若I0.1=1則發(fā)生步S0.0到步S0.2的進展合并處:若步S0.1為活動步時,且I0.2=1則發(fā)生步S0.1到步S0.3的進展;若步S0.2為活動步時,且I0.3=1則發(fā)生步S0.2到步S0.3的進展;一個掃描周期內(nèi),有且僅有一步是處于活動狀態(tài)同時其它步均為不活動狀態(tài)分支:選擇序列的開始轉(zhuǎn)換符號只能標(biāo)在水平線之下,如:I0.0、I0.1合并:選擇序列的結(jié)束轉(zhuǎn)換符號只能標(biāo)在水平線之上,如:I0.2、I0.3注意:SM0.1S0.0S0.1Q0.0S0.3Q0.1Q0.2S65例:畫SFC圖I1.0起動按鈕I0.4壓力繼電器(壓緊后為1)剪完10塊后停止工作并停在初始位置M0.5等待步目的:保證并行序列中各支路同步工作流程:按下I1.0起動按鈕,板料右行(Q0.0=1)至I0.3;壓鉗下行(Q0.1=1)壓緊板料后I0.4=1壓鉗保持壓緊,剪刀下行(Q0.2=1),剪斷后I0.2=1,壓鉗和剪刀同時上行(Q0.3與Q0.4=1)碰到I0.0和I0.1停止上行,又開始新下一個周期的工作。剪完10塊后停止工作并停在初始位置。畫出系統(tǒng)的SFC圖例:畫SFC圖I1.0起動按鈕M0.5等待步工作流程:按下I66繪制SFC時的注意事項:◆兩個步絕對不能直接相連,必須用一個轉(zhuǎn)換將其分隔開;◆兩個轉(zhuǎn)換也不能直接相連,必須用一個步將它們分隔開;◆初始步必不可少,它一般對應(yīng)于系統(tǒng)等待起動的初始狀態(tài);◆SFC中不能有“到此為止”的死胡同,即系統(tǒng)應(yīng)能多次重復(fù)執(zhí)行同一工藝過程,故在SFC中一般應(yīng)有步和有向連線組成閉環(huán),也即是在完成一次工藝過程的全部操作之后,應(yīng)從最后一步返回下一個工作周期開始運行第一步。4.3.5順序功能圖中轉(zhuǎn)換實現(xiàn)的基本規(guī)則◆該轉(zhuǎn)換所有的前級步都是活動步◆相應(yīng)的轉(zhuǎn)換條件得到滿足

二者缺一不可◆使所有“由有向連線與相應(yīng)轉(zhuǎn)換符號相連的后繼步”都變?yōu)榛顒硬健羰顾小坝捎邢蜻B線與相應(yīng)轉(zhuǎn)換符號相連的前級步”都變?yōu)椴换顒硬礁腻e題轉(zhuǎn)換實現(xiàn)的條件:轉(zhuǎn)換完成的操作:繪制SFC時的注意事項:4.3.5順序功能圖中轉(zhuǎn)換實現(xiàn)的基本67第三章

PLC程序設(shè)計基礎(chǔ)程序設(shè)計的基礎(chǔ),必熟練掌握!!努力學(xué)習(xí),不斷求新

沒有終生的專業(yè),只有終生的學(xué)習(xí)第三章

PLC程序設(shè)計基礎(chǔ)程序設(shè)計的基礎(chǔ),必熟練掌握!683.1.1PLC編程語言的國際標(biāo)準(zhǔn)PLC的編程語言(IEC61131-3中的5種PLC基本語言)●順序功能圖(SFC):不僅僅是一種語言,更是一種組織控制程序的圖形方法。三要素:步、轉(zhuǎn)換和動作●梯形圖(LD):以圖形方式表達觸點和線圈以及功能塊的組成。

直觀易懂

使用最多功能塊表示定時/計數(shù)器或數(shù)學(xué)運算等指令●指令表(IL):又稱語句表,類似匯編程序中的助記符表達式,與其相對應(yīng)的是LD。應(yīng)用于熟悉PLC和程序設(shè)計的經(jīng)驗豐富的程序員使用●結(jié)構(gòu)文本(ST):類似Pascal的基于文本的高級語言與LD相比,能實現(xiàn)復(fù)雜的數(shù)學(xué)運算,編程簡潔●功能塊圖(FBD):一種類似于數(shù)字邏輯電路的編程語言。與門、或門和非(小圓圈)來表示邏輯運算。FBD廣泛地用于過程工業(yè)。3.1PLC的編程語言與程序結(jié)構(gòu)3.1.1PLC編程語言的國際標(biāo)準(zhǔn)PLC的編程語言(IEC69NETWORK23//網(wǎng)絡(luò)題目1(單行)LDI0.0OQ0.0ANI0.0=Q0.0NETWORK24//網(wǎng)絡(luò)題目2(單行)LDI0.3TONT37,+100//10秒延時LAD中程序被劃分為的獨立的段,該段稱為網(wǎng)絡(luò)(Network),一個網(wǎng)絡(luò)中只能有一塊獨立電路。若網(wǎng)絡(luò)中有兩塊獨立電路在編譯時會顯示“無效網(wǎng)絡(luò)或網(wǎng)絡(luò)太復(fù)雜無法編譯”梯形圖編輯器會自動給出網(wǎng)絡(luò)的編號,允許以網(wǎng)絡(luò)為單位給梯形圖程序加注釋。STL程序可以不使用網(wǎng)絡(luò)但只有將STL程序正確地劃分成網(wǎng)絡(luò)才能將STL程序轉(zhuǎn)化為LAD程序。編程軟件默認:25個網(wǎng)絡(luò)不夠可“編輯-插入-網(wǎng)絡(luò)”或在程序塊窗口中點擊右鍵在快捷菜單中“插入-網(wǎng)絡(luò)”梯形圖(LD或LAD):語句表(IL):左母線右母線可省略左側(cè)一條垂直的線稱作左母線;右邊一條虛線稱為右母線(可省略);母線之間是觸點的邏輯連接和線圈輸出NETWORK23//網(wǎng)絡(luò)題目1(單行)L703.1.2PLC的程序結(jié)構(gòu)S7-200CPU的控制程序由主程序、子程序和中斷程序組成。1、主程序是程序的主體,每一個項目只能有一個主程序。主程序可以調(diào)用子程序和在中斷發(fā)生時執(zhí)行中斷程序。2、子程序同一子程序可以在PLC的一個掃描周期內(nèi)被多次調(diào)用。使用子程序可以簡化程序設(shè)計,節(jié)約程序存儲器空間。3、中斷程序中斷程序用來及時處理與用戶程序的執(zhí)行時序無關(guān)的操作或不能事先預(yù)測何時發(fā)生的中斷事件。中斷程序不能改寫其他程序使用的存儲器(因不能預(yù)知中斷何時發(fā)生)。在中斷事件發(fā)生時,打斷主或子程序的運行,中斷程序執(zhí)行完后,自動返回到原程序。它不是由用戶程序調(diào)用而是在中斷事件發(fā)生時有操作系統(tǒng)調(diào)用。中斷程序由用戶編寫。3.1.2PLC的程序結(jié)構(gòu)S7-200CPU的控制程序由主713.2.1數(shù)據(jù)在存儲器中存取的方式3.2存儲器的數(shù)據(jù)類型與尋址方式b表示3.2.1數(shù)據(jù)在存儲器中存取的方式3.2存儲器的數(shù)據(jù)類型與72數(shù)據(jù)的存取方式:雙字:存儲器是由許多存儲單元組成的,每個存儲單元都有唯一的地址,可以依據(jù)存儲器地址來存儲數(shù)據(jù)。存儲器地址的表示有位、字節(jié)、字、雙字等格式。由字節(jié)地址和位地址組成。位存儲單元的地址中需指出存儲器位于哪一個區(qū),并指出字節(jié)的編號及位號。如:I4.5Q0.0這種存取方式稱為“字節(jié).位”尋址方式位:以存儲區(qū)標(biāo)識符、字節(jié)標(biāo)識符及字節(jié)地址組合而成如IB3QB1MB10VB201字節(jié):由相鄰兩個字節(jié)組成字。如:VW100表示由VB100和VB101組成一個字,VB100為高字節(jié)。字:由相鄰兩個字組成雙字,占四個字節(jié)。如:VD100表示VB100、VB101、VB102、VB103四個字節(jié)組成。數(shù)據(jù)的存取方式:雙字:存儲器是由許多存儲單元組成的,每個存儲733.2.2

區(qū)類似中間繼電器,存儲中間操作狀態(tài)類似:時間繼電器當(dāng)前值寄存器(16位)定時器位存放中間結(jié)果累計計數(shù)輸入脈沖的個數(shù)當(dāng)前值寄存器(16位)累計比CPU掃描速度更快的事件32位可讀寫可按字節(jié)、字、雙字來存取如:CPU與用戶之間交換信息SM0.0一直為1SM0.1僅第一個T內(nèi)為1其它為0I、Q、V、L、M、S、SM均可按Bit、B、WDW來存取作暫時存儲器或給子程序傳遞參數(shù)3.2.2類似中間繼電器,存儲中間操作狀態(tài)類似:時間繼電器存743.3位邏輯指令

3.3.1觸點類型OFF1I0.0ON0I0.0OFFON常開觸點外部電路有動作時電路是閉合,無動作斷開常閉觸點外部電路有動作時電路就斷開,無動作閉合線圈:代表CPU對存儲器的寫操作,用戶程序中同一線圈只能使用一次。ONQ0.010OFF0Q0.013.3位邏輯指令

3.3.1觸點類型OFF1I0.0ON75位裝載(加載)指令(LD/LDN):表示一個梯形圖網(wǎng)絡(luò)的開始即電路的開始★L(fēng)D(LOAD):位裝載指令,對應(yīng)梯形圖從左側(cè)母線開始,連接常開觸點,即常開觸點與左母線相連接★L(fēng)DN(LOADNOT):位裝載指令,對應(yīng)梯形圖從左側(cè)母線開始,連接常閉觸點,即常閉觸點與左母線相連接1、標(biāo)準(zhǔn)觸點指令★A(AND,與):常開觸點與其他程序段相串聯(lián)★AN(與非):

常閉觸點與其它程序段相串聯(lián)(取反后與)★O(OR,或):

常開觸點與其他程序段相并聯(lián)★ON(或非):

常閉觸點與其它程序段相并聯(lián)(取反后或)例1:LDI0.0AM0.0ANI0.1=Q0.0LDNI0.2OQ0.1ONM0.1AI0.3=Q0.1由LAD轉(zhuǎn)化成STL:位裝載(加載)指令(LD/LDN):表示一個梯形圖網(wǎng)絡(luò)的開始76LDI0.0ANI0.1OI0.2AI0.3ONC5=Q0.3=Q1.4ANI3.4=Q2.6例2:由梯形圖寫出語句表例3:復(fù)位脈沖的產(chǎn)生(上升沿檢測)I0.1M3.1M0.0I0.1M3.1I0.1M0.0TTM0.0LDI0.0=Q0.3例2:由梯形圖寫出語句表例377問題提出:在實際系統(tǒng)中不但要求能夠進行程序設(shè)計,有時還需能夠讀懂他人編寫的程序,在編制程序時,還會出現(xiàn)多個分支電路同時受一個或一組觸點控制的情況,如圖:2、堆棧的基本概念5-8班???利用前面講的觸點串并聯(lián)指令能不能將這樣的梯形圖轉(zhuǎn)換成語句表于是出現(xiàn)堆棧指令堆棧的基本概念:S7-200有一個9位的堆棧,棧頂用來存儲邏輯運算結(jié)果,下面8位用來存儲中間運算結(jié)果。堆棧按“先進后出”的原則存取。LD(LDN)將指定地址中的位數(shù)據(jù)(取反后)裝入堆棧的棧頂(每執(zhí)行一次LD(LDN)壓棧一次);舉例:執(zhí)行A/O(AN/ON)指令時均與棧頂中2#數(shù)據(jù)(取反后)相與/或操作并將結(jié)果存入棧頂。與堆棧相關(guān)的指令有:ALD、OLD、LPS、LRD、LPP、LDSn問題提出:在實際系統(tǒng)中不但要求能夠進行程序設(shè)計,有時還需2、784、棧裝載與(ALD)(塊串聯(lián))3、棧裝載或(OLD)(塊并聯(lián))OLD-ORLOAD:指電路塊并聯(lián)連接ALD-ANDLOAD:指電路塊串聯(lián)連接12345串聯(lián)電路塊:兩個或以上觸點的串聯(lián)電路1、2并聯(lián)電路塊:兩個或以上觸點的并聯(lián)電路4由LAD轉(zhuǎn)化成STL:首先完成電路塊內(nèi)部的觸點串并聯(lián)操作(每個電路塊的開始觸點使用LD/LDN,深度加1);然后再塊與/或操作此時堆棧深度減1電路塊:兩個或以上觸點經(jīng)過串聯(lián)或并聯(lián)后組成的結(jié)構(gòu)。分為:4、棧裝載與(ALD)(塊串聯(lián))3、棧裝載或(OLD)(塊并7912345LDI0.0ANI0.1LDNI2.1AI3.4LDNT37AI2.5OLDALDOQ1.7=Q3.015432iv7iv6iv5iv4iv3iv2iv1iv01iv8iv7iv6iv5iv4iv3iv2iv1iv0堆棧:執(zhí)行OLD前后:xiv6iv5iv4iv3iv2iv1iv03執(zhí)行后:iv6iv5iv4iv3iv2iv1iv012執(zhí)行前:執(zhí)行ALD前后:xiv6iv5iv4iv3iv2iv1iv05執(zhí)行后:iv6iv5iv4iv3iv2iv1iv034執(zhí)行前:OLD/ALD指令:無操作數(shù)每執(zhí)行一次電路塊的串或并聯(lián)操作堆棧深度減1X:不確定值…iv6iv5iv4iv3iv2iv1iv01I2.112345LDI0.0LDNI2.80LD

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論