功能指令及應用_第1頁
功能指令及應用_第2頁
功能指令及應用_第3頁
功能指令及應用_第4頁
功能指令及應用_第5頁
已閱讀5頁,還剩59頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

功能指令及應用功能指令的基本知識程序流控制(FNC00~FNC09)傳送和比較指令(FNC10~FNC19)算術(shù)和邏輯運算指令(FNC20~FNC29)循環(huán)移位指令(FNC30~FNC39)數(shù)據(jù)處理指令(FNC40~FNC49)高速處理指令(FNC50~FNC59)功能指令的基本知識一、基本格式梯形圖格式X0MEAND0D10K3[D][S][n]指令表格式步序操作碼操作數(shù)

0LDX01MOV

D0D10K3

8。。。。一、基本格式操作碼與操作數(shù)操作碼(指令助記符):表示指令的功能操作數(shù):指明參與操作的對象源操作數(shù)S:執(zhí)行指令后收據(jù)不變的操作數(shù),兩個或兩個以上時為S1、S2。目標操作數(shù)D:執(zhí)行指令后收據(jù)被刷新的操作數(shù),兩個或兩個以上時為D1、D2。其它操作數(shù)m、n:補充注釋的常數(shù),用K(十進制)和H(十六進制)表示,兩個或兩個以上時為m1、m2、n1、n2。軟元件位軟元件:只處理開關(guān)(ON/OFF)信息的元件,如X、Y、M、D、S字軟元件:處理數(shù)據(jù)的元件,如D。位軟元件的組合位軟元件組合表示數(shù)據(jù):4個位元件一組,代表4位BCD碼,也表示1位十進制數(shù);用KnMm表示,K為十進制,n為十進制位數(shù),也是位元件的組數(shù),M為位元件,m為位元件的首地址,一般用0結(jié)尾的元件。二、軟元件數(shù)據(jù)長度16位:參與運算的數(shù)據(jù)默認為16位二進制數(shù)據(jù)32位:32位數(shù)據(jù)時在操作碼前面加D(Double三、數(shù)據(jù)長度及執(zhí)行方式X0MOVD0D1X1DMOVD2D4(D0)→(D1)(D3D2)→(D5D4)執(zhí)行方式連續(xù)執(zhí)行方式:每個掃描周期都重復執(zhí)行一次脈沖執(zhí)行方式:只在信號OFF→ON時執(zhí)行一次,在指令后加P(Pulse)。X0MOVD0D1X1MOVPD2D4三、數(shù)據(jù)長度及執(zhí)行方式變址:改變操作數(shù)的地址變址寄存器的作用:存放改變地址的數(shù)據(jù)實際地址=當前地址+變址數(shù)據(jù)32位運算時V和Z組合使用,V為高16位,Z為低16位。X0MOVK8VX1MOVK4ZMOVD0VD10ZX2V=(8)Z=(4)(D8)→(D14)四、變址寄存器V、Z五、常用特殊輔助繼電器功能指令執(zhí)行結(jié)果的標志M8020:零標志M8021:借位標志M8022:進位標志M8029:執(zhí)行完畢標志M8064:參數(shù)出錯標志M8065:語法出錯標志M8066:電路出錯標志M8067:運算出錯標志程序流控制一、條件跳轉(zhuǎn)指令FNC00CJ二、子程序指令FNC01CALLFNC02SRET三、中斷指令FNC03IRETFNC04EIFNC05DI四、主程序結(jié)束指令FNC06FEND

五、警戒時鐘定時器指令FNC07WDT六、循環(huán)指令FNC08FOX

FNC09NEXT一、條件跳轉(zhuǎn)指令FNC00CJ操作數(shù):指針P0~P63梯形圖X10X11…Y1X12P0…CJP0CJP0指令表步序操作碼操作數(shù)

0LDX101CJ

P0

。。。

10LDX1111CJP0

。。。。

20P021LDX1222OUTY1說明CJ指令跳過部分程序,可以縮短程序的運算周期。如果積算型定時器和計數(shù)器的RST指令在跳轉(zhuǎn)程序之內(nèi),即使跳轉(zhuǎn)程序生效,RST指令仍然有效。該指令可以連續(xù)和脈沖執(zhí)行方式。被跳過去的程序中各元件的狀態(tài)為Y、M、S保持跳轉(zhuǎn)前狀態(tài)不變。普通計數(shù)器停止計數(shù)并保持當前值,高速計數(shù)器繼續(xù)計數(shù)。未工作的定時器不動作,已動作的定時器保持當前值。T192~T199跳轉(zhuǎn)時仍然計時。具有多種工作方式的系統(tǒng)的編程方式CJX1X1P0CJP1P1共用程序自動程序手動程序FENDP0二、子程序指令子程序調(diào)用FNC01CALL

操作數(shù):指針P0~P62子程序返回FND02SRET無操作數(shù)說明子程序應該在主程序結(jié)束之后編程。CJ指令的指針與CALL的指針不能重復。主程序允許嵌套,嵌套級別最多為5級。子程序只能用T192~T199和T246~T249作定時器。梯形圖

X1FENDSRETP8CALLP8Y1X12Y21X11Y30………主程序子程序二、子程序指令三、中斷指令中斷返回

FNC03IRET

開中斷FNC04EI

關(guān)中斷FNC05DI均無操作數(shù)梯形圖開中斷范圍X0I100X10FENDIRETEIDIIRETI101中斷子程序2中斷子程序1說明在執(zhí)行某個中斷子程序時,禁止其它中斷請求。中斷程序允許嵌套,嵌套級別為2級。中斷指針共有15個:輸入中斷6個,定時器中斷3個,計數(shù)器中斷6個。中斷程序用T192~T199和T246~T249作定時器。中斷的優(yōu)先級別多個中斷信號不同時產(chǎn)生時,按先后順序中斷。多個中斷信號同時產(chǎn)生時,按指針大小中斷。三、中斷指令無操作數(shù)梯形圖X1FENDSRETP8CALLP8Y1X12Y21X11Y30………主程序子程序四、主程序結(jié)束指令FNC06FEND說明與END指令的功能一樣,執(zhí)行到該指令時程序返回到0步。中斷服務子程序和子程序應該寫在FEND之后,并且用IRET和SRET返回。如果多次使用FEND指令,在最后的FEND和END之間編寫子程序或中斷子程序四、主程序結(jié)束指令FNC06FEND無操作數(shù)警戒定時器是一個專用定時器,其設定值存放在特殊的數(shù)據(jù)寄存器D8000中,并以ms為計時單位。當PLC一上電,則對警戒定時器進行初始化,將K100(設定值為100ms)裝入D8000中,每個掃描周期結(jié)束時,馬上刷新警戒定時器的當前值,使PLC能正常運行。當掃描周期大于100ms時,即超過了警戒定時器的設定值,警戒定時器的邏輯線圈被接通,CPU立即停止執(zhí)行用戶程序,同時切斷全部輸出,并且報警顯示。五、警戒定時器指令FNC07WDT如果正常的掃描周期超過警戒時鐘的設定值,可以在適當程序步中加入WDT指令,適時刷新警戒時鐘,使程序能順利執(zhí)行。也可以通過MOV指令修改警戒定時器的設定值(D8000的值)。可以計算出程序掃描周期的最大值作為警戒時鐘的設定值。WDT指令可用在FOR-NEXT之間。五、警戒定時器指令FNC07WDT循環(huán)開始FNC08FOR

操作數(shù)[S]:K,H、KnX、KnY、KnM、KnS、T、C、D、V,Z循環(huán)結(jié)束FNC09NEXT

無操作數(shù)說明n為循環(huán)次數(shù),其范圍為1~32767有效。如果指定為-32768~0,則作n=1處理。循環(huán)指令最多可以嵌套5級。程序中FOR-NEXT是成對出現(xiàn)的,F(xiàn)OR在前,NEXT在后不可倒置,否則出錯。編程時NEXT應該在FEND或END之前,否則出錯。六、循環(huán)指令傳送和比較指令一、比較指令FNC10CMP二、區(qū)間比較指令FNC11ZCP三、傳送指令

FNC12MOV四、移位傳送指令FNC13SMOV五、取反傳送指令FNC14CML六、塊傳送指令FNC15BMOV七、多點傳送指令FNC16FMOV

八、數(shù)據(jù)交換指令FNC17XCH九、變換指令FNC18BCD

FNC19BIN操作數(shù)[S1]、[S1]:K,H、KnX、KnY、KnM、KnS、T、C、D、

V,Z[D]:Y、M、S梯形圖[S1]K100>C10的當前值時,M0=ONK100=C10的當前值時,M1=ONK100<C10的當前值時,M2=ONM0M1M2X0[S2][D]CMPK100C10M0一、比較指令FNC10CMP說明該指令是將源操作數(shù)[S1]和[S2]的中數(shù)據(jù)進行比較,結(jié)果送目標操作數(shù)[D]中去。[D]由3個元件組成,指令中[D]給出首地址,其它兩個為后面的相鄰元件。當X0由ON→OFF時,不執(zhí)行CMP指令,M0~M2保持斷開前的狀態(tài),用復位指令RST才能清除比較結(jié)果。CMP是進行二進制代數(shù)比較??梢?2位二進制數(shù)比較和脈沖執(zhí)行方式。如果指令中指定的操作數(shù)不全、元件超出范圍、軟元件地址不對時,程序出錯。一、比較指令FNC10CMP操作數(shù)[S1]、[S1]:K,H、KnX、KnY、KnM、KnS、T、C、D、

V,Z[D]:Y、M、S梯形圖K100≤C10的當前值<120時,M1=ON[S1]K100>C10的當前值時,M0=ONK120<C10的當前值時,M2=ONM0M1M2X0[S2][D]ZCPK100K120C10M0[S]二、區(qū)間比較指令FNC11ZCP說明ZCP指令是將源操作數(shù)[S]的數(shù)據(jù)和兩個源操作數(shù)[S1]和[S2]的數(shù)據(jù)進行比較,結(jié)果送到[D]中,[D]為三個相鄰元件的首地址。ZCP指令為二進制代數(shù)比較,并且[S1]<[S2],如果[S1]>[S2],則把[S1]視為[S2]處理。當X0由ON→OFF時,不執(zhí)行ZCP指令,比較結(jié)果保持不變,需要用復位指令才能清除。該指令可以進行16/32位數(shù)據(jù)處理和連續(xù)/脈沖執(zhí)行方式。二、區(qū)間比較指令FNC11ZCP操作數(shù)[S1]、[S1]:K,H、KnX、KnY、KnM、KnS、T、C、D、

V,Z[D]:KnY、KnM、KnS、T、C、D、V,Z梯形圖X0MOVK100D10K100→(D10)三、傳送指令FNC12MOV說明該指令將源操作數(shù)[S]中的數(shù)據(jù)傳送到目標操作數(shù)[D]中去。MOV指令可以進行(D)和(P)操作。如果[S]為十進制常數(shù),執(zhí)行該指令時自動轉(zhuǎn)換成二進制數(shù)后進行數(shù)據(jù)傳送。當X0斷開時,不執(zhí)行MOV指令,數(shù)據(jù)保持不變。三、傳送指令FNC12MOV操作數(shù)[S1]、[S1]:K,H、KnX、KnY、KnM、KnS、T、C、D、

V,Z[D]:KnY、KnM、KnS、T、C、D、V,Zm1、m2、n:K、H說明該指令將源操作數(shù)[S]的16位二進制數(shù)自動轉(zhuǎn)換成4位BCD碼,然后從右向左第m1位開始向右數(shù)m2位,傳送到目標操作數(shù)(4位BCD碼)的從右向左第n位開始向右數(shù)m2位的位置上,最后這4位BCD碼自動轉(zhuǎn)換成二進制數(shù)后送入目標操作數(shù)[D]中去。傳送中BCD碼數(shù)值超過9999時程序出錯。四、移位傳送指令FNC13SMOV梯形圖[S]X0m1[D]m2SMOVD1K4K2D2K3n310010110210310010110210D1D2b15b15b0b0自動轉(zhuǎn)換自動轉(zhuǎn)換4位BCD碼4位BCD碼保持保持D1D2二進制二進制從D1右起第四位(m1=K4)開始的2位(m2=K2)數(shù),移到D2的右起第3位(n=K3)和第2位,D2中的第1位和第4位保持不變,最后D2中的數(shù)自動變成二進制數(shù)

.四、移位傳送指令FNC13SMOV操作數(shù)[S]:K,H、KnX、KnY、KnM、KnS、T、C、D、V,Z[D]:KnY、KnM、KnS、T、C、D、V,Z說明該指令把源操作數(shù)[S]中的數(shù)據(jù)各位取反(1→0,0→1)后傳送到目標操作數(shù)[D]中去。該指令可以16/32位數(shù)據(jù)處理和連續(xù)/脈沖執(zhí)行方式五、取反傳送指令FNC14CML梯形圖CMLD0K1Y0X0[D][S]1010101010101010

1010符號位取反傳送保持不變Y0Y3(D0)(K1Y0)若源操作數(shù)中的數(shù)為十進制常數(shù)時,將自動轉(zhuǎn)換成二進制.五、取反傳送指令FNC14CML操作數(shù)

[S]:K,H、KnX、KnY、KnM、KnS、T、C、D、V,Z[D]:KnY、KnM、KnS、T、C、D、V,Zn:K、H梯形圖[S]X0DnBMOVD5D10K3D7D6D5D12D11D10六、塊傳送指令FNC15BMOV說明[S]為存放被傳送的數(shù)據(jù)塊的首地址;[D]為存放傳送來的數(shù)據(jù)塊的首地址;n為數(shù)據(jù)塊的長度。位元件進行傳送時,源和目標操作數(shù)要有相同的位數(shù)。當傳送地址號重疊時,為防止在傳送過程中數(shù)據(jù)丟失(被覆蓋),要先把重疊地址號中的內(nèi)容送出,然后再送入數(shù)據(jù)。如圖所示,采用①~③的順序自動傳送。該指令可以連續(xù)/脈沖執(zhí)行方式。六、塊傳送指令FNC15BMOVX0BMOVK1M0K1Y0K2n=K2M2M1M0M3Y2Y1Y0Y3M6M5M4M7Y6Y5Y4Y7D12D11D10D11D10D9D12D11D10D13D12D11X1BMOVD10D9K3X2BMOVD10D11K3①③六、塊傳送指令FNC15BMOV②③②①操作數(shù)

[S]:K,H、KnX、KnY、KnM、KnS、T、C、D、V,Z[D]:KnY、KnM、KnS、T、C、Dn:

K、H梯形圖[S]X0DnBMOVK10D0K10把K10傳送到D0~D9中去七、多點傳送指令FNC16FMOV操作數(shù)

[D1]、[D2]:KnY、KnM、KnS、T、C、D、V,Z梯形圖[D1]X0XCH(P)D0D1[D2](D0)(D1)八、數(shù)據(jù)交換指令FNC17XCH注意交換指令一般要在脈沖方式執(zhí)行,否則不能正常工作。操作數(shù)

[S]:KnX、KnY、KnM、KnS、T、C、D、V,Z[D]:KnY、KnM、KnS、T、C、D、V,Z梯形圖[S]X0BCDD10K2Y0

[D][S]X1BINK2Y0D14[D]九、變換指令FNC18BCDFNC19BIN第四節(jié)算術(shù)與邏輯運算指令一、二進制加減運算指令

加法FNC20ADD

減法FNC21SUB操作數(shù)[S1]、[S2]:K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z[D]:KnY、KnM、KnS、T、C、D、V,Z梯形圖[S1]X0ADDD0D2D4[D][S1]X1DSUBD10D12D14[D][S2][S2](D0)+(D2)(D4)(D11D10)–(D13D12)(1D5D14)說明指令是代數(shù)加減運算,數(shù)據(jù)的最高位為符號位。進行16位加減運算時,數(shù)據(jù)范圍為-32768~+32767;32位運算時,數(shù)據(jù)范圍為-2147483648~+2147483647。運算結(jié)果為0時,零標志置位(M8020=1);運算結(jié)果大于+32767(或+2147483647)時,進位標志置位(M8022=1);運算結(jié)果小于-32768(或-2147483648)時,借位標志置位(M8021=1)。該指令可以進行連續(xù)/脈沖執(zhí)行方式。一、二進制加減運算指令乘法FNC22MUL

減法FNC23DIV操作數(shù)[S1]、[S2]:K、H、KnX、KnY、KnM、KnS、T、C、D、V,Z[D]:KnY、KnM、KnS、T、C、D、V,Z梯形圖[S1]X0MULD0D2D4[D][S1]X1DDIVD10D12D14[D][S2][S2](D0)×(D2)(D5D4)被乘數(shù)乘數(shù)積(D11D10)÷(D13D12)(1D5D14)···(D17D16)被除數(shù)除數(shù)商余數(shù)二、二進制乘除運算指令操作數(shù)指令進行二進制運算,數(shù)據(jù)最高位為符號位??梢赃M行16/32位乘除運算,16位運算時,積為32位數(shù)據(jù),商和余數(shù)為16位數(shù)據(jù);32位運算時,積為64位數(shù)據(jù),商和余數(shù)為32位數(shù)據(jù)。0作除數(shù)時程序出錯。被除數(shù)和除數(shù)中有一個為負數(shù)時,商為負數(shù);被除數(shù)為負數(shù)時,余數(shù)也為負數(shù)。位元件作為32位乘法運算的目標元件時,只能得到積的低32位數(shù)據(jù)??梢赃M行連續(xù)/脈沖執(zhí)行方式。二、二進制乘除運算指令加1FNC24INC

減1FNC25DEC操作數(shù)[D]:KnY、KnM、KnS、T、C、D、V,Z梯形圖X0INC(P)D10[D]X1DEC(P)D12[D](D10)+1(D10)(D12)–1(D12)三、二進制加1減1指令說明上述指令可以連續(xù)/脈沖執(zhí)行方式,應用中要特別注意。可以進行16/32位運算,并且為二進制運算。如果從+32767(或+2147483647)再加1,則變成-32768(或-2147483648);如果從-32768(或-2147483648)再減1,則變成+32767(或+2147483647),為循環(huán)計數(shù)。以上變化時標志位不動作,也就是說這兩條指令和零標志、借位標志、進位標志無關(guān)。三、二進制加1減1指令

邏輯與FNC26

WAND

邏輯或FNC27

WOR

邏輯異或FNC28WXOR操作數(shù)[[S1]、[S2]:K、H、KnX、KnY、KnM、KnS、T、C、D、

V,Z[D]:KnY、KnM、KnS、T、C、D、V,Z四、邏輯運算指令(D0)∧(D2)→(D4)(D10)∨(D12)→(D14)

(D20)(D22)→(D24)∨[S1]X0WANDD0D2D4[D]WORD10D12D14[S2]WXORD20D22D24異或非運算的梯形圖X0

溫馨提示

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

最新文檔

評論

0/150

提交評論