第4章PLC的基本指令2013_第1頁
第4章PLC的基本指令2013_第2頁
第4章PLC的基本指令2013_第3頁
第4章PLC的基本指令2013_第4頁
第4章PLC的基本指令2013_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PLC程序設計基礎及基本指令第4章4.1PLC的編程語言及程序結構24.1.1PLC的編程語言S7-200的指令集:

SIMATIC和IEC61131-3。幾種編程語言梯形圖(LadderDiagram,LAD)、語句表(StatementList,STL)功能塊圖(FunctionBlockDiagram,F(xiàn)BD)順序功能圖(SequentialFunctionChart,SFC)在S7-200PLC中,梯形圖、語句表和功能塊圖可以轉換。IEC1131-3指令集:

是國際電工委員會(IEC)制定的PLC國際標準1131-3ProgrammingLanguage(編程語言)中推薦的標準語言。

特點:

1.支持系統(tǒng)完全數(shù)據(jù)類型檢查。

2.只能用梯形圖(LAD)和功能塊圖(FBD)編程語言編程。

3.指令執(zhí)行時間較長。34.1PLC的編程語言及程序結構SIMATIC指令集:

由西門子公司設計。特點:1.大多數(shù)指令符合IEC1131-3標準;2.不支持系統(tǒng)完全數(shù)據(jù)類型檢查;3.可以用梯形圖(LAD)、功能塊圖(FBD)和語句表

(STL)編程語言編程;4.指令執(zhí)行時間較短。44.1PLC的編程語言及程序結構1.梯形圖(LAD)梯形圖(LAD)與電氣控制電路圖相呼應。沿用了繼電器、觸點、串并聯(lián)等術語簡化了圖形符號增加了特殊功能的指令信號流向清楚、簡單、直觀、易懂4.1PLC的編程語言及程序結構2.功能塊圖(FBD)

沿用了半導體邏輯電路的邏輯框圖的表達方式4.1PLC的編程語言及程序結構3.語句表(STL)語句表(STL)是用助記符來編程。它類似于計算機的匯編語言。編程簡單直觀、易懂4.1PLC的編程語言及程序結構有條件地相互轉換4.1PLC的編程語言及程序結構4.1.2S7-200PLC的程序結構S7-200PLC的程序由三部分構成:

用戶程序、數(shù)據(jù)塊和參數(shù)塊。用戶程序包括:

主程序、子程序和中斷程序。數(shù)據(jù)塊數(shù)據(jù)塊為可選部分,它主要用于存放控制程序運行所需的數(shù)據(jù)。參數(shù)塊參數(shù)塊也為可選部分,用于存放CPU組態(tài)數(shù)據(jù)。94.1PLC的編程語言及程序結構程序結構圖

主程序(程序的主體)子程序(可選)中斷程序(可選)在CPU的每個掃描周期,主程序的指令按順序執(zhí)行一次。合理優(yōu)化程序結構,可減少掃描時間。構成

4.1PLC的編程語言及程序結構程序的結構或組織塊(OB)11S7-200PLC基本指令4.2位邏輯指令

1.邏輯取及輸出指令指令LD(Load):取指令,邏輯運算開始的常開觸點與左母線的連接。LDN(LoadNot):取反指令,邏輯運算開始的常閉觸點與左母線的連接。=(Out):線圈驅(qū)動指令即輸出指令。使用說明:P98

12使用說明LD、LDN指令用于與左母線相連的觸點,也可以與OLD、ALD指令配合完成塊電路的編程。=指令用于輸出映像寄存器Q、位存儲器M和順序控制繼電器S等,但不能用于輸入映像寄存器I。并聯(lián)的=指令可以連續(xù)使用任意次。什么是并聯(lián)輸出?在同一程序中不要使用雙線圈輸出,即同一個元器件在同一程序中只使用一次“=”指令。什么是雙線圈輸出?LD、LDN的操作數(shù)為:I、Q、M、SM、T、C、V、S和L;=的操作數(shù)為:Q、M、SM、V、S和L。

S7-200PLC基本指令132.觸點串聯(lián)指令指令A(And):“與”指令。用于單個常開觸點的串聯(lián)連接。AN(AndNot):“與反”指令。用于單個常閉觸點的串聯(lián)連接。用法

S7-200PLC基本指令連續(xù)輸出14使用說明

A、AN是單個觸點串聯(lián)連接指令,可連續(xù)使用。但在用梯形圖編程時會受到打印寬度和屏幕顯示的限制,S7-200PLC的編程軟件中規(guī)定的串聯(lián)觸點使用上限為11個。對連續(xù)輸出電路,可以反復使用“=”指令,但次序必須正確,不然就不能連續(xù)使用“=”指令編程了。什么是連續(xù)輸出電路?下圖所示的電路就不屬于連續(xù)輸出電路A、AN指令的操作數(shù)為:I、Q、M、SM、T、C、V、S和L。S7-200PLC基本指令153.觸點并聯(lián)指令指令O(Or):“或”指令。用于單個常開觸點的并聯(lián)連接。ON(OrNot):“或反”指令。用于單個常閉觸點的并聯(lián)連接。用法使用說明單個觸點的O、ON指令可連續(xù)使用。O、ON指令的操作數(shù)為:I、Q、M、SM、T、C、V、S和L。S7-200PLC基本指令16174.置位/復位指令指令用法S7-200PLC基本指令18使用說明(1)對于位元件來說,一旦被置位就保持接通狀態(tài),直到對它復位。而一旦被復位就保持斷開狀態(tài),直到對它置位。(2)由于PLC是掃描工作方式,故寫在后面的指令有優(yōu)先權。在圖4-7中,當I0.0和I0.1同時為1時,R指令寫在后,因而有優(yōu)先權,則Q0.0為0。(3)S、R指令必須成對使用,而且使用的器件號應相同,它可將位存儲區(qū)從某一位開始的N個同類存儲器位置1或清0。N=1~255,N可以是常數(shù),在圖4-7中,N=1,也可以是VB、IB、QB、MB、SMB、SB、LB、AC、*VD、*AC或*LD中的數(shù)據(jù),一般情況下使用常數(shù)。(4)S、R指令的操作數(shù)為:Q、M、SM、V、S和L。S7-200PLC基本指令195.正跳變和負跳變檢測指令指令EU(EdgeUp):觸點的輸入信號由0變?yōu)?時,能流通過一個掃描周期的時間。。ED(EdgeDown):觸點的輸入信號由1變?yōu)?時,能流通過一個掃描周期的時間。用法沒有操作數(shù)S7-200PLC基本指令正跳變觸點一個掃描周期的寬度正跳變:PositiveTransition負跳變:NegativeTransition20舉例S7-200PLC基本指令一個掃描周期的寬度216.立即指令什么是立即指令?有何用途?對輸入對輸出指令S7-200PLC基本指令22S7-200PLC基本指令23■立即觸點指令:CPU不等待輸入采樣的時刻,繞過輸入映象寄存器,直接讀入物理輸入點的狀態(tài)作為程序執(zhí)行期間的數(shù)據(jù)依據(jù)。不對輸入映象寄存器作刷新處理。■立即輸出指令:直接把結果傳送到物理輸出點,以驅(qū)動實際輸出。不等待程序執(zhí)行階段結束后,轉入輸出刷新階段時才把結果傳送到物理輸出點。同時將結果也寫入輸出映象寄存器?!鰹榱思涌燧斎胼敵鲰憫俣萐7-200PLC基本指令24舉例S7-200PLC基本指令257.取非指令取非指令為NOT。它將復雜邏輯結果取反,為用戶使用反邏輯提供方便,其實質(zhì)是改變最新的堆棧頂?shù)倪壿嬛怠T撝噶顭o操作數(shù)。

STL形式:NOTLAD形式:—|NOT|—8.空操作指令空操作指令不影響用戶程序的執(zhí)行,起增加程序容量的作用。該指令操作數(shù)為標號N,N=0~255。STL形式:NOPNLAD形式:舉例:S7-200PLC基本指令264.3邏輯堆棧指令什么是堆棧?其特點是什么?S7-200PLC的邏輯堆棧結構S7-200PLC基本指令27

1.OLD(OrLoad):棧裝載“或”指令

串聯(lián)電路塊的并聯(lián)連接指令,用于串聯(lián)電路塊與上面電路的并聯(lián)連接。什么是串聯(lián)電路塊?兩個及兩個以上觸點串聯(lián)形成的支路稱串聯(lián)電路塊。用法使用說明

(1)除了在網(wǎng)絡塊邏輯運算開始使用LD和LDN指令外,在串聯(lián)電路塊的

開始也要使用LD和LDN指令。

(2)每完成一次串聯(lián)電路塊的并聯(lián)連接都要使用OLD指令

(3)OLD指令無操作數(shù),相當于電路中的連接導線。S7-200PLC基本指令282.ALD(AndLoad):棧裝載“與”指令并聯(lián)電路塊的串聯(lián)連接指令。用于并聯(lián)電路塊與它前面電路的串聯(lián)連接。什么是并聯(lián)電路塊?兩個及兩個以上支路并聯(lián)形成的電路稱并聯(lián)電路塊。用法使用說明

(1)在并聯(lián)電路塊的開始要使用LD和LDN指令。

(2)每完成一次并聯(lián)電路塊的串聯(lián)連接都要使用ALD指令

(3)ALD指令無操作數(shù),相當于電路中的連接導線。S7-200PLC基本指令29S7-200PLC基本指令LDNI1.4AI0.3LDI3.2ANT16OLDLDNC24ONI1.2ALDOQ3.4=Q5.330試寫出下面梯形圖的語句表程序S7-200PLC基本指令LDI0.0ANQ0.1OI0.2AI0.1LDNI0.3AM0.1OLD=Q0.3AC2SQ0.2,1LDI0.5OM0.2ALD=M0.4313.邏輯入棧、讀棧和出棧指令指令(1)LPS(LogicPush):邏輯入棧指令(分支電路開始指令)。(2)LRD(LogicRead):邏輯讀棧指令。(3)LPP(LogicPop):邏輯出棧指令(分支電路結束指令)。S7-200PLC基本指令323.邏輯入棧、讀棧和出棧指令使用說明

(1)由于S7-200PLC只有一個9位的堆棧空間,因此,LPS和LPP指令對

連續(xù)使用時應少于9次。

(2)LPS和LLP指令必須成對使用,它們之間可以使用LRD指令。

(3)LPS、LRD和LLP指令無操作數(shù)。S7-200PLC基本指令33LPS/LRD/LPP舉例例1S7-200PLC基本指令34LPS/LRD/LPP舉例例2S7-200PLC基本指令35LPS/LRD/LPP舉例例3S7-200PLC基本指令364.4定時器與計數(shù)器指令1.定時器指令幾個基本概念種類:通電延時TON,有記憶通電延時TONR,斷電延時TOF。分辯率與定時時間的計算單位時間的時間增量稱為定時器的分辨率,即精度。S7-200PLC定時器有3個精度等級:1ms、10ms和100ms。定時器定時時間T的計算:T=PT×S。式中:T為實際定時時間,PT為設定值,S為分辨率。例如:TON指令使用T33(為10ms的定時器),設定值為100,則實際定時時間為:T=100×10=1000ms定時器指令的操作數(shù)有3個:

定時器編號、設定值(PT)和使能輸入(IN)。S7-200PLC基本指令37(1)定時器的編號定時器的編號用定時器的名稱和它的常數(shù)編號(0-255)來表示,即T***。如:T40。定時器的編號包含兩方面的變量信息:定時器位和定時器當前值。定時器位:與其他繼電器的輸出相似。當定時器的當前值達到設定值PT時,定時器的觸點動作。定時器當前值:存儲定時器當前所累計的時間,它用16位符號整數(shù)來表示,計數(shù)值范圍為1~32767。(2)定時器的設定值PT數(shù)據(jù)類型為INT型。操作數(shù)可為:VW、IW、QW、MW、SW、SMW、LW、AIW、T、C、AC、*VD、*AC、*LD和常數(shù),其中常數(shù)最為常用。S7-200PLC基本指令38(3)使能輸入(IN):它的數(shù)據(jù)類型為布爾型BOOL,尋址范圍是I、Q、M、SM、T、C、V、S和L。TON和TOF使用相同范圍的定時器編號,所以在同一個PLC程序中決不能把同一個定時器號同時用作TON和TOF。例如在程序中,不能既有接通延時(TON)定時器T32,又有斷開延時(TOF)定時器T32。S7-200PLC基本指令39三種定時器指令的LAD和STL格式如下表所示。S7-200PLC基本指令401)

接通延時定時器TON(On-DelayTimer)接通延時定時器用于單一時間間隔的定時。上電周期或首次掃描時,定時器位為OFF,當前值為0。輸入端接通時,定時器位為OFF,當前值從0開始計時,當前值達到設定值時,定時器位為ON,當前值仍連續(xù)計數(shù)到32767。輸入端斷開,定時器自動復位,即定時器位為OFF,當前值為0。通電延時定時器指令應用示例。S7-200PLC基本指令41

2)

有記憶通電延時定時器TONR(RetentiveOn-DelayTimer)記憶接通延時定時器具有記憶功能,它用于對許多間隔的累計定時。上電周期或首次掃描時,定時器位為掉電前的狀態(tài),當前值保持在掉電前的值。當輸入端接通時,當前值從上次的保持值繼續(xù)計時,當累計當前值達到設定值時,定時器位ON,當前值可繼續(xù)計數(shù)到32767?。TONR定時器只能用復位指令R對其進行復位操作。TONR復位后,定時器位為OFF,當前值為0。掌握好對TONR的復位及啟動是使用好TONR指令的關鍵。有記憶通電延時定時器指令應用示例。S7-200PLC基本指令423)

斷電延時定時器TOF(Off-DelayTimer)斷電延時定時器用于斷電后的單一間隔時間計時。上電周期或首次掃描,定時器位為OFF,當前值為0。輸入端接通時,定時器位為ON,當前值為0。當輸入端由接通到斷開時,定時器開始計時。當達到設定值時定時器位為OFF,當前值等于設定值,停止計時。輸入端再次由OFF→ON時,TOF復位,這時TOF的位為ON,當前值為0。如果輸入端再從ON→OFF,則TOF可實現(xiàn)再次啟動。斷電延時定時器指令應用示例。S7-200PLC基本指令43

定時器及其使用舉例S7-200PLC基本指令定時器小結:44定時器類型接通IN當前值=設定值斷開INTON計時定時器位=1復位TONR計時定時器位=1不變TOF不計時,定時器位=1當前值=0定時器位=0計時S7-200PLC基本指令454)

分辨率對定時器的影響定時器的刷新方式和正確使用1ms、10ms、100ms定時器的刷新方式是不同的,從而在使用方法上也有很大的不同。這和其他PLC是有很大區(qū)別的。1ms定時器1ms定時器由系統(tǒng)每隔1ms刷新一次,與掃描周期及程序處理無關。它采用的是中斷刷新方式。因此,當掃描周期大于1ms時,在一個周期中可能被多次刷新。其當前值在一個掃描周期內(nèi)不一定保持一致。10ms定時器10ms定時器由系統(tǒng)在每個掃描周期開始時自動刷新,由于是每個掃描周期只刷新一次,故在一個掃描周期內(nèi)定時器位和定時器的當前值保持不變。100ms定時器100ms定時器在定時器指令執(zhí)行時被刷新,因此,如果100ms定時器被激活后,如果不是每個掃描周期都執(zhí)行定時器指令或在一個掃描周期內(nèi)多次執(zhí)行定時器指令,都會造成計時失準,所以在后面講到的跳轉指令和循環(huán)指令段中使用定時器時,要格外小心。100ms定時器僅用在定時器指令在每個掃描周期執(zhí)行一次的程序中。S7-200PLC基本指令46定時器的刷新方式和正確使用舉例S7-200PLC基本指令472.計數(shù)器指令幾個基本概念種類:CTD,CTUD,CTD編號計數(shù)器的編號用計數(shù)器名稱和數(shù)字(0-255)組成,如C6。計數(shù)器的編號包含兩方面的信息:計數(shù)器的位和計數(shù)器當前值。計數(shù)器位:計數(shù)器位和繼電器一樣是一個開關量,表示計數(shù)器是否發(fā)生動作的狀態(tài)。當計數(shù)器當前值達到設定值時,該位被置位為ON。計數(shù)器當前值:其值是一個存儲單元,它用來存儲計數(shù)器當前所累計的脈沖個數(shù),用16位有符號整數(shù)來表示,最大數(shù)值為32767。計數(shù)器輸入端和操作數(shù)設定值輸入:PV為設定值,數(shù)據(jù)類型為INT型。尋址范圍:VW、IW、QW、MW、SW、SMW、LW、AIW、T、C、AC、*VD、*AC、*LD和常數(shù)。一般情況下使用常數(shù)作為計數(shù)器的設定值。S7-200PLC基本指令48指令及其使用指令S7-200PLC基本指令491)CTU(CountUp):加計數(shù)器首次掃描時,計數(shù)器位為OFF,當前值為0。在計數(shù)脈沖輸入端CU的每個上升沿,計數(shù)器計數(shù)1次,當前值增加一個單位。

溫馨提示

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

評論

0/150

提交評論