可編程序控制器指令系統(tǒng)_第1頁
可編程序控制器指令系統(tǒng)_第2頁
可編程序控制器指令系統(tǒng)_第3頁
可編程序控制器指令系統(tǒng)_第4頁
可編程序控制器指令系統(tǒng)_第5頁
已閱讀5頁,還剩47頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

電氣控制及PLC技術制作:電氣學院楊霞2014年6月修訂24可編程序控制器的指令系統(tǒng)知識點:基本位邏輯關系語句指令(9個)特殊輸出類語句指令數(shù)據(jù)處理、運算指令特殊功能指令學習重點:本講是學習PLC的指令系統(tǒng)。重點掌握:

PLC的基本位邏輯關系語句指令(9個:符號、梯形圖程序繪法、工作原理,時序圖

)特殊輸出類語句指令3

程序控制類指令指令(作用、用法、圖形符號、時序圖)1

定時器、計數(shù)器、比較、程序控制類程序控制類指令用于程序運行狀態(tài)的控制,主要包括系統(tǒng)控制、跳轉(zhuǎn)、循環(huán)、子程序調(diào)用和順序控制等指令。一、END、STOP、WDR指令(系統(tǒng)控制指令)(一)結束指令LDM0.0END注意:必須指出MicroWin32STEP-7編程軟件,在主程序的結尾自動生成無條件結束指令(MEND)用戶不得輸入,否則編譯出錯。MEND4

(一)結束指令結束指令有兩條:END和MEND。兩條指令在梯形圖中以線圈形式編程。END,條件結束指令。使能輸入有效時,終止用戶主程序。MEND無條件結束指令。無條件終止用戶程序的執(zhí)行,返回主程序的第一條指令。指令格式:END(無操作數(shù))5(二)停止指令STOP,暫停指令。使能輸入有效時,該指令使主機CPU的工作方式由RUN切換到STOP方式,從而立即終止用戶程序的執(zhí)行。STOP指令在梯形圖中以線圈形式編程。指令不含操作數(shù)。指令格式:STOP (無操作數(shù))LDSM5.0//SM5.0為檢測到I/O錯誤時置1STOP//強制轉(zhuǎn)換至STOP(停止)模式6注意:END和STOP的區(qū)別。圖中,當I0.0接通時,Q0.0有輸出,若I0.1接通,執(zhí)行END指令,終止用戶程序,并返回主程序的起點,這樣,Q0.0仍保持接通,但下面的程序不會執(zhí)行。若I0.1斷開,接通I0.2,則Q0.1有輸出,若將I0.3接通,則執(zhí)行STOP指令,立即終止程序執(zhí)行,Q0.0與Q0.1均復位,CPU轉(zhuǎn)為STOP方式。圖END/STOP指令的區(qū)別7(三)看門狗復位指令

WDR:看門狗復位指令。當使能輸入有效時,執(zhí)行WDR指令,每執(zhí)行一次,看門狗定時器就被復位一次。用本指令可用以延長掃描周期,從而可以有效避免看門狗超時錯誤。指令格式:WDR(無操作數(shù))LDM0.4//M0.4接通時WDR//重新觸發(fā)WDR,允許擴展掃描時間

警戒時鐘的定時時間為300毫秒,每次掃描它都被自動復位一次,正常工作時,如果掃描周期小于300毫秒,警戒時鐘不起作用。注意:如果預計掃描時間將超過300毫秒,或者預計會發(fā)生大量中斷活動,可能阻止返回主程序,掃描超過300毫秒,應使用WDR指令,重新觸發(fā)看門狗計時器。8END、STOP、WDR舉例9

二、循環(huán)、跳轉(zhuǎn)指令

(一)循環(huán)指令

FOR和NEXT指令構成程序的循環(huán)體。FOR指令標記循環(huán)的開始,NEXT指令為循環(huán)體的結束指令。

工作原理:使能輸入EN有效,循環(huán)體開始執(zhí)行,執(zhí)行到NEXT指令時返回,每執(zhí)行一次循環(huán)體,當前值計數(shù)器INDX增1,達到終止值FINAL時,循環(huán)結束。使能輸入無效時,循環(huán)體程序不執(zhí)行。每次使能輸入有效,指令自動將各參數(shù)復位。FOR/NEXT指令必須成對使用,循環(huán)可以嵌套,最多為8層。

FORINDX,INIT,F(xiàn)INALNEXTFOR

循環(huán)程序的開始。NEXT

循環(huán)程序的結束,無操作數(shù)。INDX指定當前循環(huán)計數(shù)器,用于記錄循環(huán)次數(shù),INIT指定循環(huán)次數(shù)的初值,F(xiàn)INAL指定循環(huán)次數(shù)的終值。10

循環(huán)指令示例圖中,當I0.0為ON時,1所示的外循環(huán)執(zhí)行3次,由VW200累計循環(huán)次數(shù)。當I0.1為ON時,外循環(huán)每執(zhí)行一次,2所示的內(nèi)循環(huán)執(zhí)行3次,且由VW210累計循環(huán)次數(shù)。圖6-50循環(huán)指令示例11

(二)跳轉(zhuǎn)指令(1)跳轉(zhuǎn)指令

JMP,跳轉(zhuǎn)指令。使能輸入有效時,使程序流程跳到同一程序中的指定標號n處執(zhí)行。(2)標號指令

LBL,標號指令。標記程序段,作為跳轉(zhuǎn)指令執(zhí)行時跳轉(zhuǎn)到的目的位置。操作數(shù)n為0~255的字型數(shù)據(jù)。

LDI0.0JMP1LBL1

圖JMP/LBL指令格式必須強調(diào)的是:跳轉(zhuǎn)指令及標號必須同在主程序內(nèi)或在同一子程序內(nèi),同一中斷服務程序內(nèi),不可由主程序跳轉(zhuǎn)到中斷服務程序或子程序,也不可由中斷服務程序或子程序跳轉(zhuǎn)到主程序。12跳轉(zhuǎn)指令示例圖中當JMP條件滿足(即I0.0為ON時)程序跳轉(zhuǎn)執(zhí)行LBL標號以后的指令,而在JMP和LBL之間的指令一概不執(zhí)行,在這個過程中,即使I0.1接通也不會有Q0.1輸出。當JMP條件不滿足時,則當I0.1接通時Q0.1有輸出。

LDI0.0JMP3LDI0.1=Q0.1LBL3LDI0.2=Q0.2

13圖6-53a)外部接線圖

圖6-53b)程序結構應用舉例:3臺電機的順序起動和停止14圖6-53(c)梯形圖I0.0=1自動程序I0.0=0手動程序自動程序手動程序3臺電機的起動和停止15MP、LBL指令在工業(yè)現(xiàn)場控制中,常用于工作方式的選擇。如有3臺電動機M1~M3,具有兩種起停工作方式:1)手動操作方式:分別用每個電動機各自的起停按鈕控制M1~M3的起停狀態(tài)。2)自動操作方式:按下起動按鈕,M1~M3每隔5s依次起動;按下停止按鈕,M1~M3同時停止。

PLC控制的外部接線圖,程序結構圖,梯形圖分別如圖6-53a、b、c所示。從控制要求中,可以看出,需要在程序中體現(xiàn)兩種可以任意選擇的控制方式。所以運用跳轉(zhuǎn)指令的程序結構可以滿足控制要求。如圖6-53b所示,當操作方式選擇開關閉合時,I0.0的常開觸點閉合,跳過手動程序段不執(zhí)行;I0.0常閉觸點斷開,選擇自動方式的程序段執(zhí)行。而操作方式選擇開關斷開時的情況與此相反,跳過自動方式程序段不執(zhí)行,選擇手動方式程序段執(zhí)行。分析:16三、子程序調(diào)用指令:1.建立子程序;2.子程序調(diào)用;3.帶參數(shù)的子程序調(diào)用

1.建立子程序

(1)從“編輯”菜單,選擇插入→子程序;(2)從“指令樹”,用鼠標右鍵單擊“程序塊”圖標,并從彈出菜單選擇插入→子程序;(3)從“程序編輯器”窗口,用鼠標右鍵單擊,并從彈出菜單選擇插入→

子程序。默認的子程序名為SBR_N,編號N的范圍為0~63,從0開始按順序遞增,2.子程序調(diào)用子程序調(diào)用和返回指令子程序調(diào)用

SBR子程序條件返回CRET3.帶參數(shù)的子程序調(diào)用(1)子程序參數(shù);(2)局部變量的類型;(3)數(shù)據(jù)類型;(4)建立帶參數(shù)子程序的局部變量表;(5)帶參數(shù)子程序調(diào)用指令

CALLSBR_0CRETRET17

子程序調(diào)用指令應用舉例18局部變量表分配帶參數(shù)的子程序調(diào)用19(1)順序步開始指令(LSCR)

(2)順序步結束指令(SCRE)

(3)順序步轉(zhuǎn)移指令(SCRT)通常用順序控制繼電器的位S0.0~S31.7代表程序的狀態(tài)步。四、順序控制指令20應用舉例:

使用順序控制結構,編寫出實現(xiàn)紅、綠燈循環(huán)顯示的程序(要求循環(huán)間隔時間為1s)。

功能流程圖分析:當I0.0輸入有效時,起動S0.0,執(zhí)行程序的第一步,輸出Q0.0置1(點亮紅燈),Q0.1置0(熄滅綠燈),同時起動定時器T37,經(jīng)過1s,步進轉(zhuǎn)移指令使得S0.1置1,S0.0置0,程序進入第二步,輸出點Q0.1置1(點亮綠燈),輸出點Q0.0置0(熄滅紅燈),同時起動定時器T38,經(jīng)過1s,步進轉(zhuǎn)移指令使得S0.0置1,S0.1置0,程序進入第一步執(zhí)行。如此周而復始,循環(huán)工作。SM0.0RUN狀態(tài)監(jiān)控,PLC在運行RUN狀態(tài),該位始終為121本例是用順序繼電器實現(xiàn)的順序控制中的一個步S0.5的程序段,這一步實現(xiàn)的功能是:使兩個電機M1和M2起動運行20秒后停止,切換到下一步。22

在使用順序控制指令時應注意:(1)步進控制指令SCR只對狀態(tài)元件S有效。為了保證程序的可靠運行,驅(qū)動狀態(tài)元件S的信號應采用短脈沖。(2)當輸出需要保持時,可使用S/R指令。(3)不能把同一編號的狀態(tài)元件用在不同的程序中,例如,如果在主程序中使用S0.1,則不能在子程序中再使用。(4)在SCR段中不能使用JMP和LBL指令。即不允許跳入或跳出SCR段,也不允許在SCR段內(nèi)跳轉(zhuǎn)??梢允褂锰D(zhuǎn)和標號指令在SCR段周圍跳轉(zhuǎn)。(5)不能在SCR段中使用FOR、NEXT和END指令。23空操作指令(NOP)

空操作指令,起增加程序容量的作用。操作數(shù)N為執(zhí)行空操作指令的次數(shù),N=0~255。

LADSTL功能NOPN空操作指令空操作指令格式NOPN24邏輯取反指令(NOT)邏輯取反指令,邏輯狀態(tài)取反指令,改變能流狀態(tài)。無操作數(shù)。

LADSTL功能NOT取反指令邏輯取反指令格式NOT25邏輯取反指令(NOT)舉例262S7-200系列PLC功能指令(自學)表功能指令數(shù)據(jù)轉(zhuǎn)換指令中斷指令高速計數(shù)器指令高速脈沖輸出指令PID回路指令時鐘指令傳送指令數(shù)學運算指令邏輯運算指令移位和循環(huán)移位指令272S7-200系列PLC功能指令一、表功能指令指令描述ATTDATA,TABLE填表FND=TBL,PATRN,INDX查表FND<>TBL,PATRN,INDX查表FND<TBL,PATRN,INDX查表FND>TBL,PATRN,INDX查表FIFODATA,TABLE先入先出LIFODATA,TABLE后入先出FILLIN,OUT,N填充281.填表指令(ATT)

填表指令(AddToTable)向表(TBL)中增加一個字(DATA)表內(nèi)的第一個數(shù)是表的最大長度(TL),第二個數(shù)是表內(nèi)實際的項數(shù)(EC)。新數(shù)據(jù)被放入表內(nèi)上一次填入的數(shù)的后面。每向表內(nèi)填入一個新的數(shù)據(jù),EC自動加1。除了TL和EC外,表最多可以裝入100個數(shù)據(jù)。TBL為WORD型,DATA為INT型。29填表指令的舉例圖填表指令的舉例執(zhí)行ATT指令之前執(zhí)行ATT指令之后302.查表指令

查表指令(TableFind)從指針I(yè)NDX所指的地址開始查表TBL,搜索與數(shù)據(jù)PTN的關系滿足CMD定義的條件的數(shù)據(jù)。

命令參數(shù)CMD=1~4,分別代表“=”、“<>”、“<”、和“>”。如果發(fā)現(xiàn)了一個符合條件的數(shù)據(jù),則INDX指向該數(shù)據(jù)。要查找下一個符合條件的數(shù)據(jù),再次啟動查表之前,應先將INDX加1。如果沒有找到,INDX的數(shù)值等于EC。一個表最多有100個填表數(shù)據(jù),數(shù)據(jù)的編號為0~99。

TBL和INDX為WORD型,PTN為INT型,CMD為字節(jié)型。31查表指令操作舉例圖查表指令操作舉例LDI2.1FND-VW202,16#3130,AC1323.先入先出(FIFO)指令

先入先出(FirstInFirstOut)指令從表(TBL)中移走最先放進的第一個數(shù)據(jù)(數(shù)據(jù)0),并將它送入DATA指定的地址,表中剩下的各項依次向上移動一個位置。每次執(zhí)行此指令,表中的項數(shù)EC減1。TABLE為INT型,DATA為WORD型。33先入先出指令的應用

LIFO執(zhí)行后圖先入先出指令舉例執(zhí)行前344.后入先出(LIFO)指令

后入先出(LastInFirstOut)指令從表(TBL)中移走最后放進的數(shù)據(jù),并將它送入DATA指定的位置,剩下的各項依次向上移動一個位置。每次執(zhí)行此指令,表中的項數(shù)EC減1。TABLE為INT型,DATA為WORD型。35后入先出指令的應用圖后入先出指令的應用舉例LIFO執(zhí)行前LIFO執(zhí)行后365.存儲器填充指令

存儲器填充指令FILL(MemoryFill)用輸入值(IN)填充從輸出OUT開始的N個字,字節(jié)型整數(shù)N=1~255。圖7-26中的FILL指令將0填入VW200~VW219,IN和OUT為WORD型。圖填充指令376.讀寫實時時鐘指令

讀寫實時時鐘指令TODR(TimeofDayRead)從時鐘讀取當前時間和日期,并把它們裝入以T為起始地址的8個字節(jié)緩沖區(qū),依次存放年、月、日、時、分、秒、0和星期、時間和日期的數(shù)據(jù)類型為字節(jié)型。圖時鐘指令38二、轉(zhuǎn)換指令

轉(zhuǎn)換指令是對操作數(shù)的類型進行轉(zhuǎn)換,并輸出到指定的目標地址中去。轉(zhuǎn)換指令包括數(shù)據(jù)的類型轉(zhuǎn)換、數(shù)據(jù)的編碼和譯碼指令以及字符串類型轉(zhuǎn)換指令。6.字節(jié)與整數(shù)的轉(zhuǎn)換指令2.雙字整數(shù)轉(zhuǎn)換為實數(shù)3.四舍五入取整指令4.截位取整指令5.整數(shù)與雙整數(shù)的轉(zhuǎn)換1、BCD碼與整數(shù)之間的轉(zhuǎn)換39轉(zhuǎn)換指令如圖:圖轉(zhuǎn)換指令圖轉(zhuǎn)換指令407.譯碼指令8.段譯碼指令SEGENINENOOUTD0D1D2D5D4D3D6

圖段譯碼指令41三、中斷指令(一)中斷源1.中斷源(1)通信中斷(2)I/O中斷I/O中斷包括外部輸入中斷、高速計數(shù)器中斷和脈沖串輸出中斷。(3)時間中斷時間中斷包括定時中斷和定時器中斷。PLC的自由通信模式下,通信口的狀態(tài)可由程序來控制S7-200系列可編程控制器最多有34個中斷源,422.中斷優(yōu)先級

中斷優(yōu)先級由高到低依次是:通信中斷、輸入輸出中斷、時基中斷。

在PLC應用系統(tǒng)中通常有多個中斷源。當多個中斷源同時向CPU申請中斷時,要求CPU能將全部中斷源按中斷性質(zhì)和處理的輕重緩急進行排隊,并給予優(yōu)先權。3.CPU響應中斷的順序PLC中,CPU響應中斷的順序可以分以下三種情況:(1)當不同的優(yōu)先級的中斷源同時申請中斷時,CPU響應中斷請求的順序為從優(yōu)先級高的中斷源到優(yōu)先級低的中斷源。(2)當相同優(yōu)先級的中斷源申請中斷時,CPU按先來先服務的原則響應中斷請求。43(3)當CPU正在處理某中斷,又有中斷源提出中斷請求時,新出現(xiàn)的中斷請求按優(yōu)先級排隊等候處理,當前中斷服務程序不會被其他甚至更優(yōu)先級的中斷程序打斷。任何時刻CPU只執(zhí)行一個中斷程序。(二)中斷控制

經(jīng)過中斷判優(yōu)后,將優(yōu)先級最高的中斷請求送給CPU,CPU響應中斷后自動保存邏輯堆棧、累加器和某些特殊標志寄存器位,即保護現(xiàn)場。中斷處理完成后,又自動恢復這些單元保存起來的數(shù)據(jù),即恢復現(xiàn)場。44中斷指令如圖圖中斷指令45三、中斷程序(中斷服務程序)中段程序是為處理中斷事件而事先編好的程序。中斷程序不是由程序調(diào)用,而是在中斷事件發(fā)生時由操作系統(tǒng)調(diào)用。

注意:(1)在中斷程序中禁止使用DISI、ENI、HDEF、LSCR、END

溫馨提示

  • 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

提交評論