PLC課件第5章1分析_第1頁
PLC課件第5章1分析_第2頁
PLC課件第5章1分析_第3頁
PLC課件第5章1分析_第4頁
PLC課件第5章1分析_第5頁
已閱讀5頁,還剩490頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第5章PLC功能指令系統(tǒng)5.1功能指令的表示形式及含義5.2功能指令的分類及操作數(shù)5.3程序流控制功能指令

5.4傳送和比較指令5.5四則運(yùn)算和邏輯運(yùn)算指令5.6循環(huán)移位和移位指令5.7數(shù)據(jù)處理指令5.8高速處理指令5.9方便指令5.10外部I/O指令5.11FX2N系列外部設(shè)備指令5.12浮點(diǎn)數(shù)運(yùn)算指令5.13位控制指令5.14實(shí)時(shí)時(shí)鐘處理指令5.15外部設(shè)備用指令5.16觸點(diǎn)比較指令

習(xí)題

5.1功能指令的表示形式及含義

5.1.1功能指令的表示形式功能指令的表示形式與基本指令和順控指令有所不同,它由助記符(功能號)和操作數(shù)兩部分構(gòu)成。助記符表示功能指令的功能,操作數(shù)為操作對象,即操作數(shù)據(jù)、地址等。圖5.1為傳送指令在編程中的格式示例。當(dāng)X0為ON時(shí)執(zhí)行該指令,將源(Source)操作數(shù)[S·]指定的字元件D10中的數(shù)據(jù)傳送到目標(biāo)(Destination)操作數(shù)[D·]指定的字元件D12中。

圖5.1功能指令的梯形圖表達(dá)形式5.1.2功能指令的含義功能指令有多種類型,采用功能號和助記符來表示。在使用功能指令時(shí),必須掌握功能指令中各參數(shù)所表示的含義。下面以圖5.2所示的數(shù)據(jù)傳送指令為例加以說明。

圖5.2數(shù)據(jù)傳送指令功能說明

圖5.2中①~⑥的說明如下:①為功能指令的功能號。FX2N系列PLC的功能指令的功能號從FNC?00到FNC?246。由于功能指令的功能號不便記憶、理解和掌握,所以使用時(shí)功能指令用功能號+助記符的形式來表示,助記符代表功能指令的含義。②為操作數(shù)據(jù)類型。功能指令中操作數(shù)的類型有16位和32位。(D)表示操作數(shù)為32位數(shù)據(jù)類型,無(D)表示操作數(shù)為16位數(shù)據(jù)類型。③為助記符。助記符是該指令功能的英文縮寫。如加法指令的英文寫法為“addtioninstruction”,助記符即為ADD;比較指令“compareinstruction”,助記符即為CMP等。MOV為數(shù)據(jù)傳送指令,用以實(shí)現(xiàn)數(shù)據(jù)的傳送。

④為脈沖/連續(xù)執(zhí)行指令標(biāo)志(P)。功能指令中若帶有(P),為脈沖執(zhí)行指令,僅在條件滿足時(shí)執(zhí)行一次該功能指令;若指令中沒有(P),則為連續(xù)執(zhí)行指令,即在條件滿足時(shí),每個(gè)掃描周期都執(zhí)行一次該功能指令。圖5.2中的數(shù)據(jù)傳送指令為脈沖執(zhí)行指令,當(dāng)X0為ON時(shí)僅傳送一次數(shù)據(jù)。

⑤、⑥為操作數(shù)。操作數(shù)為功能指令中涉及的參數(shù)或數(shù)據(jù),分為源操作數(shù)、目標(biāo)操作數(shù)和其他操作數(shù)。源操作數(shù)在指令執(zhí)行后不改變其內(nèi)容;目標(biāo)操作數(shù)在指令執(zhí)行后,其內(nèi)容根據(jù)指令功能做出相應(yīng)的改變;其他操作數(shù)多為常數(shù),或者是對源操作數(shù)、目標(biāo)操作數(shù)做出補(bǔ)充說明的參數(shù)。常數(shù)K表示十進(jìn)制數(shù),H表示十六進(jìn)制數(shù)。圖5.2中標(biāo)注⑤為源操作數(shù),⑥為目標(biāo)操作數(shù)。

5.2功能指令的分類及操作數(shù)

5.2.1功能指令的分類FX2N系列PLC的功能指令極其豐富,根據(jù)其功能可概括為14大類,分別為程序流程控制指令、傳送和比較指令、四則邏輯運(yùn)算指令、循環(huán)移位指令、數(shù)據(jù)處理指令、高速處理指令、方便指令、外部設(shè)備I/O指令、外部設(shè)備SER指令、浮點(diǎn)運(yùn)算指令、定位指令、時(shí)鐘運(yùn)算指令、外圍設(shè)備指令和觸點(diǎn)比較指令。

5.2.2功能指令的操作數(shù)

1.位元件1)位元件和字元件位元件是只處理ON/OFF狀態(tài)的元件,例如X、Y、M和S等;其他處理數(shù)字?jǐn)?shù)據(jù)的元件,例如T、C和D,稱為字元件。

2)位組合元件4個(gè)位元件組合成一個(gè)位組合元件單元。位組合元件用KnMm表示,其中n表示組數(shù),m表示首元件編號(m可以是內(nèi)部資源允許的任意值),例如:K1X0表示由X3~X0共4個(gè)輸入繼電器的4位組合的數(shù)據(jù)。K2X0表示由X7~X0共8個(gè)輸入繼電器的8位組合的數(shù)據(jù)。K3Y0表示由Y13~Y0共12個(gè)輸出繼電器的12位組合的數(shù)據(jù)。

在16位數(shù)(或者32位數(shù))運(yùn)算時(shí),參與操作的位組合單元數(shù)由K1~K4(或K1~K8)來指定,長度不足時(shí)的高位均為零,并且只能處理正數(shù)。圖5.3表示當(dāng)輸入繼電器X0為ON時(shí),將由X4~X13組合的2位BCD碼轉(zhuǎn)換成二進(jìn)制數(shù)存儲到數(shù)據(jù)寄存器D10中。

圖5.3位組合元件的應(yīng)用

2.?dāng)?shù)據(jù)寄存器(D)數(shù)據(jù)寄存器用于存儲數(shù)值數(shù)據(jù),寄存器都是16位(最高位為符號位),可處理的數(shù)值范圍為-32768~+32767。相鄰兩個(gè)的數(shù)據(jù)寄存器可組成32位數(shù)據(jù)寄存器(最高位為符號位),可處理的數(shù)值范圍為-2147483648~+2147483647。

數(shù)據(jù)寄存器種類、編號及使用見表3.11。

3.變址寄存器(V、Z)變址寄存器V0~V7和Z0~Z7除了可作為普通的16位數(shù)據(jù)寄存器外,也可以兩個(gè)組合(Z為低位,V為高位)作為32位寄存器,如圖5.4所示。在功能指令中,還可以同其他的元件編號或數(shù)值組合使用,用來改變內(nèi)部元件的編號或數(shù)值。

圖5.4變址寄存器及其組合

可以利用變址寄存器改變編號或數(shù)據(jù)的元件有X、Y、M、S、T、P、C、K、H、KnX、KnY、KnM及KnS等。修改實(shí)例如圖5.5所示。

圖5.5變址寄存器修改參數(shù)實(shí)例

4.文件寄存器(D)PLC內(nèi)部的斷電保持?jǐn)?shù)據(jù)寄存器可用來存儲PLC運(yùn)行過程中所生成的大量數(shù)據(jù),為了便于數(shù)據(jù)管理和長期保存,常將這些數(shù)據(jù)以文件形式進(jìn)行存儲。FX2N系列的數(shù)據(jù)寄存器D1000以后的數(shù)據(jù)寄存器是斷電保持型寄存器,通過參數(shù)設(shè)定后,可作為最大7000點(diǎn)的文件寄存器,也可通過參數(shù)設(shè)定,將7000點(diǎn)文件寄存器分成14塊,每個(gè)塊500個(gè)文件寄存器。D1000以后的一部分設(shè)定為文件寄存器,剩余部分可作為通用的掉電保持寄存器使用。

5.指針(P/I)在跳轉(zhuǎn)指令中,當(dāng)跳轉(zhuǎn)條件成立時(shí),需用某一標(biāo)識符表示該跳轉(zhuǎn)程序的入口地址。此標(biāo)識符就是指針,與跳轉(zhuǎn)、子程序、中斷等指令一起使用。地址號采用十進(jìn)制進(jìn)行編號。按用途指針可分為分支用指針(P)和中斷用指針。各類指針編號如表5.1所示。

表5.1各類指針編號表

1)指針P分支指針用于條件跳轉(zhuǎn)指令和子程序調(diào)用指令,其地址號可以是P0~P62和P64~P127。P63為結(jié)束指令專用指針,相當(dāng)于程序結(jié)束指令(END),不能用于分支指針。分支指針P的應(yīng)用實(shí)例如圖5.6所示。在圖5.6(a)中,當(dāng)X0=ON時(shí),執(zhí)行條件跳轉(zhuǎn)指令,程序跳轉(zhuǎn)到該跳轉(zhuǎn)指令指定的標(biāo)號P0位置,隨后程序繼續(xù)執(zhí)行。在圖5.6(b)中,當(dāng)X0=ON時(shí),執(zhí)行調(diào)用子程序指令所指定標(biāo)號的子程序,當(dāng)執(zhí)行到子程序返回指令FNC?02SRET時(shí),返回到主程序原來位置繼續(xù)執(zhí)行。

圖5.6分支指針P的應(yīng)用實(shí)例(a)條件跳轉(zhuǎn);(b)子程序調(diào)用

2)指針I(yè)●輸入中斷指針輸入中斷的中斷信號源來自于外界輸入信號(X0~X5),外界輸入信號條件成立時(shí),開始執(zhí)行相應(yīng)的中斷程序,并且不受PLC的掃描周期的影響,因此輸入中斷可以處理比掃描周期更短或需要優(yōu)先處理的輸入信號。例如對于輸入中斷指針I(yè)410,當(dāng)輸入繼電器X4由ON變?yōu)镺FF時(shí),停止執(zhí)行主程序,開始執(zhí)行中斷指針為I410后面的中斷程序,在執(zhí)行到中斷返回指令(IRET)時(shí)返回主程序并繼續(xù)執(zhí)行。

●定時(shí)器中斷指針定時(shí)器中斷的中斷源信號來自其內(nèi)部的定時(shí)器。例如I650為每隔50?ms停止執(zhí)行主程序,開始執(zhí)行一次中斷指針為I650后面的中斷程序,執(zhí)行到中斷返回指令(IRET)時(shí)返回主程序并繼續(xù)執(zhí)行?!窀咚儆?jì)數(shù)器中斷指針高速計(jì)數(shù)器中斷是指當(dāng)高速計(jì)數(shù)器和該計(jì)數(shù)器設(shè)定值相等時(shí),就執(zhí)行相應(yīng)的中斷子程序,主要用于高速計(jì)數(shù)器需優(yōu)先處理計(jì)數(shù)結(jié)果的控制系統(tǒng)中。

6.標(biāo)志位1)一般標(biāo)志位功能指令在操作過程中,其運(yùn)行結(jié)果將對下列標(biāo)志位產(chǎn)生影響:M8020:零標(biāo)志,若運(yùn)算結(jié)果為0時(shí),M8020=ON;M8021:借位標(biāo)志,在作減法運(yùn)算時(shí),若被減數(shù)不夠減,則M8021=ON;M8022:進(jìn)位標(biāo)志,在作加法運(yùn)算時(shí),若運(yùn)算結(jié)果產(chǎn)生進(jìn)位,則M8022=ON;M8029:指令執(zhí)行結(jié)束標(biāo)志,當(dāng)一條功能指令執(zhí)行完成時(shí),M8029=ON。

2)運(yùn)算出錯標(biāo)志位M8067:運(yùn)算出錯標(biāo)志,當(dāng)運(yùn)算出現(xiàn)錯誤時(shí),M8067=ON;D8068:運(yùn)算錯誤代號編號存儲;D8069:錯誤發(fā)生的步序號記錄存儲。當(dāng)PLC由STOP轉(zhuǎn)入RUN時(shí),M8067=OFF,D8068和D8069被清零,若出現(xiàn)運(yùn)算錯誤,則M8067=ON,運(yùn)算錯誤代號編號、錯誤發(fā)生的步序號分別存儲在D8068、D8069中。

3)功能擴(kuò)展用標(biāo)志位部分功能指令在使用時(shí)需要某些固有的特殊輔助繼電器(或稱為功能擴(kuò)展用標(biāo)志位)的配合,這樣才能完成該指令所要完成的功能。如M8160為功能指令A(yù)SC、RS、ASCI、HEX和CCD的功能擴(kuò)展標(biāo)志位。功能擴(kuò)展標(biāo)志位的具體含義和應(yīng)用將在后續(xù)相應(yīng)的功能指令說明中加以介紹。

5.3程序流控制功能指令

表5.2程序流控制指令

5.3.1FNC00(CJ)跳轉(zhuǎn)功能指令

1.指令功能當(dāng)跳轉(zhuǎn)條件成立時(shí),程序跳轉(zhuǎn)到跳轉(zhuǎn)指令指針指定的地方。

2.編程格式條件跳轉(zhuǎn)指令的編程應(yīng)用如圖5.7和圖5.8所示。

圖5.7條件跳轉(zhuǎn)指令編程應(yīng)用一

圖5.8條件跳轉(zhuǎn)指令編程應(yīng)用二

3.指令使用說明(1)一個(gè)標(biāo)號在程序中只能出現(xiàn)一次,多條跳轉(zhuǎn)指令可以使用同一標(biāo)號。(2)定時(shí)器T192~T199、高速計(jì)數(shù)器C235~C255一經(jīng)驅(qū)動,即使其處理指令被跳過,也會繼續(xù)工作,其輸出觸點(diǎn)仍能工作。(3)對于積算型定時(shí)器及計(jì)數(shù)器的復(fù)位指令在跳轉(zhuǎn)程序中時(shí),即使程序執(zhí)行時(shí)跳過復(fù)位指令,復(fù)位指令仍然被執(zhí)行。

(4)主控指令與跳轉(zhuǎn)指令在使用時(shí)的關(guān)系如圖5.9所示。圖中標(biāo)注A.~E.說明如下:A.對于跳過主控區(qū)1的跳轉(zhuǎn)指令不受任何限制;B.當(dāng)跳轉(zhuǎn)指令CJP1執(zhí)行時(shí),則從主控區(qū)1外跳轉(zhuǎn)到主控區(qū)1內(nèi),跳轉(zhuǎn)指針P1以下程序中的M0視作ON;C.當(dāng)M0=ON時(shí),主控區(qū)1內(nèi)的跳轉(zhuǎn)指令CJP2才可能執(zhí)行;D.當(dāng)M0=ON時(shí),從主控區(qū)1內(nèi)跳轉(zhuǎn)到主控區(qū)1外的跳轉(zhuǎn)指令CJP3才能執(zhí)行,但主控區(qū)1內(nèi)的MCRN0忽略;E.當(dāng)M1=ON時(shí),從主控區(qū)2內(nèi)跳轉(zhuǎn)到主控區(qū)3內(nèi)的跳轉(zhuǎn)指令CJP4才能執(zhí)行,主控區(qū)3中P4以下程序中的M2視作ON,但主控區(qū)2內(nèi)的MCRN0忽略。

圖?5.9主控指令與跳轉(zhuǎn)指令之間的關(guān)系

5.3.2FNC01(CALL)、FNC02(SRET)子程序調(diào)用、返回指令

1.指令功能CALL指令功能:調(diào)用子程序。SRET指令功能:從子程序返回到主程序。

2.編程格式在程序中應(yīng)用子程序調(diào)用指令,一方面提高了程序的利用效率,節(jié)省了存儲空間,另一方面優(yōu)化了程序的結(jié)構(gòu)。具體應(yīng)用如圖5.10(a)所示,當(dāng)X0=ON時(shí),調(diào)用標(biāo)號為P1的子程序,直到遇到SRET指令,返回到調(diào)用處,繼續(xù)執(zhí)行主程序。

3.指令使用說明(1)子程序必須在主程序之后編寫。(2)?FX2N系列PLC子程序的指針編號為P0~P62,P64~P127(共127個(gè))。(3)子程序必須以子程序結(jié)束指令(FNC02SRET)結(jié)束程序,并且只能用一次,否則程序不能正常執(zhí)行。

(4)子程序調(diào)用指令有連續(xù)式執(zhí)行和脈沖式執(zhí)行兩種方式,圖5.10(b)主程序中的子程序調(diào)用為脈沖式執(zhí)行方式,即當(dāng)輸入信號X1由OFF→ON時(shí)執(zhí)行一次CALL(P)P4。CALLP5為連續(xù)式執(zhí)行子程序調(diào)用指令,在子程序1中,當(dāng)輸入信號X2為ON時(shí),調(diào)用子程序2即程序跳轉(zhuǎn)到P5,直到子程序結(jié)束執(zhí)行到SRET時(shí),返回到子程序1,然后繼續(xù)執(zhí)行子程序1,子程序1執(zhí)行結(jié)束后再返回主程序繼續(xù)執(zhí)行。(5)在子程序中調(diào)用子程序,稱為子程序的嵌套,圖5.10(a)所示為1級嵌套,圖5.10(b)所示為2級嵌套。FX2N系列PLC中最多允許5級嵌套。(6)在子程序中使用定時(shí)器時(shí),其規(guī)定范圍為T192~199和T146~249。

圖5.10子程序調(diào)用的應(yīng)用實(shí)例(a)調(diào)用的子程序;(b)子程序的嵌套

5.3.3FNC03(IRET)、FNC04(EI)和FNC05(DI)中斷指令

1.指令功能IRET指令功能:中斷返回。EI指令功能:允許中斷,允許執(zhí)行中斷程序時(shí),必須打開中斷。DI指令功能:禁止中斷,不允許執(zhí)行行中斷程序時(shí),必須關(guān)閉中斷。

2.編程格式1)外部輸入中斷外部輸入中斷在程序應(yīng)用中的格式如圖5.11所示。在主程序執(zhí)行時(shí),當(dāng)X0=OFF時(shí),特殊輔助繼電器M8051=OFF,標(biāo)號為I101的中斷子程序允許執(zhí)行;當(dāng)X0=ON時(shí),M8051=ON,標(biāo)號為I101的中斷子程序禁止執(zhí)行。若PLC的外部中斷源輸入端X1由OFF→ON,并且M8051=OFF,標(biāo)號為I101的中斷子程序就執(zhí)行一次,執(zhí)行完畢后,返回主程序。本程序?qū)崿F(xiàn)將窄脈沖保持的功能,脈沖的寬度由定時(shí)器T1確定。

2)定時(shí)器中斷利用定時(shí)器中斷,每隔50?ms將數(shù)據(jù)寄存器D1中的數(shù)據(jù)加1,并與設(shè)定值K20進(jìn)行比較,如圖5.12所示。當(dāng)X1=OFF時(shí),特殊輔助繼電器M8057=OFF,標(biāo)號為I750的中斷子程序允許執(zhí)行;當(dāng)X1=ON時(shí),M8057=ON,標(biāo)號為I750的中斷子程序禁止執(zhí)行。當(dāng)X2=ON時(shí),將M2置ON。在M2為ON期間,每隔50?ms執(zhí)行一次標(biāo)號為I750的定時(shí)器中斷,子程序?qū)1+1→D1,并將D1的當(dāng)前值與常數(shù)K20比較,達(dá)到20時(shí),將M2復(fù)位,D0停止加1,若此時(shí)X2=OFF,則驅(qū)動輸出繼電器Y0輸出。

圖5.11外部輸入中斷子程序的格式

圖5.12定時(shí)器中斷子程序的應(yīng)用實(shí)例

3)計(jì)數(shù)器中斷圖5.13所示是利用高速計(jì)數(shù)器C255實(shí)現(xiàn)的中斷子程序。當(dāng)X3=OFF時(shí),特殊輔助繼電器M8059=OFF,標(biāo)號為I020的中斷子程序允許執(zhí)行;當(dāng)X3=ON時(shí),M8059=ON,標(biāo)號為I020的中斷子程序禁止執(zhí)行。當(dāng)M8059=OFF時(shí)允許計(jì)數(shù)器中斷,若高速計(jì)數(shù)器C255的當(dāng)前值與設(shè)定值K100相等時(shí),執(zhí)行中斷程序。輸入信號X3決定是否允許計(jì)數(shù)器中斷。

圖5.13計(jì)數(shù)器中斷子程序的應(yīng)用實(shí)例

圖5.14中斷允許區(qū)間

3.指令使用說明(1)在主程序中有時(shí)需禁止中斷,有時(shí)需開啟中斷。允許中斷的主程序必須在功能指令EI和DI之間,DI之后主程序禁止執(zhí)行中斷子程序,如圖5.14所示。(2)當(dāng)多個(gè)中斷信號同時(shí)有效時(shí),中斷指針編號小的具有較高的優(yōu)先權(quán),首先執(zhí)行;每個(gè)中斷子程序必須以IRET結(jié)束。中斷程序必須在FEND指令之后。(3)中斷子程序可以進(jìn)行嵌套,最多為2級嵌套。(4)中斷指針如表5.3、5.4、5.5所示。

表5.3外部輸入中斷指針表

表5.4定時(shí)器中斷指針表

表5.5計(jì)數(shù)器中斷指針表

5.3.4FNC07(WDT)監(jiān)視定時(shí)器指令

1.指令功能看門狗定時(shí)器刷新指令。

2.編程格式WDT指令刷新程序的監(jiān)視定時(shí)器。若掃描周期執(zhí)行時(shí)間超過監(jiān)視定時(shí)器規(guī)定的某一值時(shí)(如FX2N為200?ms),可編程控制器CPU出錯指示燈亮同時(shí)停止工作。在這種情況下應(yīng)將WDT指令插到合適的步序中刷新監(jiān)視定時(shí)器,以使程序能正常運(yùn)行。例如將一個(gè)掃描周期為360?ms的程序分為兩個(gè)180?ms的程序,在兩個(gè)程序之間插入WDT指令,如圖5.15所示。

圖5.15監(jiān)視定時(shí)器的應(yīng)用實(shí)例

3.指令使用說明(1)?WDT為連續(xù)執(zhí)行型指令,WDT(P)為脈沖執(zhí)行型指令,其梯形圖和波形圖如圖5.15所示。(2)通過改寫數(shù)據(jù)寄存器D8000的內(nèi)容,可改變監(jiān)視器的監(jiān)視時(shí)間,如圖5.16所示。執(zhí)行該指令后監(jiān)視器將按新設(shè)定的監(jiān)視時(shí)間(400?ms)監(jiān)視程序。

圖5.16監(jiān)視器監(jiān)視時(shí)間的修改

(3)對于復(fù)雜的控制系統(tǒng),系統(tǒng)會由多種特殊擴(kuò)展模塊所構(gòu)成。PLC由STOP→RUN時(shí),進(jìn)行的緩沖存儲器初始化時(shí)間會增加,掃描時(shí)間會延長。而在執(zhí)行多條FROM/TO指令或向多個(gè)緩沖存儲區(qū)傳送數(shù)據(jù)時(shí),掃描時(shí)間也會延長。這時(shí)將會導(dǎo)致監(jiān)視器可能出錯。因此應(yīng)在起始步的附近添加上述程序,得以延長監(jiān)視器的監(jiān)視時(shí)間。(4)當(dāng)CJ指令指針的步序號比CJ指令小時(shí),可在指針后編寫WDT指令延長監(jiān)視時(shí)間,或在FOR-NEXT指令之間編程時(shí)使用該指令。

5.3.5FNC08(FOR)、FNC09(NEXT)循環(huán)指令1.指令功能FOR指令功能:重復(fù)循環(huán)開始。NEXT指令功能:重復(fù)循環(huán)結(jié)束。

2.編程格式循環(huán)指令在程序應(yīng)用中的格式如圖5.17所示。

圖5.17循環(huán)指令的格式

3.指令使用說明(1)?FOR指令和NEXT指令必須成對出現(xiàn)。(2)在FOR-NEXT之間的程序重復(fù)執(zhí)行次數(shù)為N(N=1~32767,當(dāng)N<1時(shí)被看作1),其中N由FOR指令后的操作數(shù)指定。(3)循環(huán)程序[C]執(zhí)行5次后,向NEXT指令(1)之后的程序轉(zhuǎn)移。若D1Z=7,則相應(yīng)的循環(huán)程序[B]執(zhí)行7次,[B]程序合計(jì)執(zhí)行了5×7=35次。若K2X1=8,X0=OFF,則循環(huán)程序[A]執(zhí)行8次,[A]循環(huán)程序合計(jì)執(zhí)行了5×7×8=280次。

(4)?FOR-NEXT循環(huán)程序可以嵌套5層,圖5.17中采用了3層嵌套。(5)當(dāng)循環(huán)程序循環(huán)次數(shù)多時(shí),PLC的掃描時(shí)間會延長,將會造成監(jiān)視定時(shí)器出錯,此時(shí)應(yīng)采用WDT指令將程序分開,或者改變監(jiān)視器的監(jiān)視時(shí)間。(6)當(dāng)X0=ON時(shí),將跳過循環(huán)程序[A]。

5.3.6FNC06(FEND)主程序結(jié)束指令

1.指令功能主程序結(jié)束。

2.編程格式主程序結(jié)束指令在程序應(yīng)用中的格式如圖5.18所示。

圖5.18主程序結(jié)束指令的格式(a)在跳轉(zhuǎn)中的應(yīng)用;(b)在子程序調(diào)用中的應(yīng)用

3.指令使用說明(1)子程序和中斷程序應(yīng)在FEND指令后編程,有多個(gè)FEND指令時(shí),應(yīng)在最后一個(gè)FEND指令之后,END指令之前編程。(2)若子程序或者中斷程序中出現(xiàn)FEND指令,或FOR和NEXT之間的循環(huán)程序出現(xiàn)FEND指令,則程序?qū)鲥e。

5.4傳送和比較指令

表5.6傳送和比較指令

5.4.1FNC10(CMP)比較指令和FNC11(ZCP)區(qū)間比較指令

1.指令功能比較指令功能:將源操作數(shù)[S1·]和[S2·]的數(shù)據(jù)進(jìn)行比較,比較結(jié)果送入目標(biāo)操作數(shù)[D·]中,然后做出相應(yīng)的驅(qū)動。區(qū)間比較指令功能:將源操作數(shù)[S1·]、[S2·]和[S3·]進(jìn)行比較,比較結(jié)果送入目標(biāo)操作數(shù)[D·]中,然后做出相應(yīng)的驅(qū)動。操作數(shù):[S1·]、[S2·]和[S3·]的操作數(shù)是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是Y、M、S。

2.編程格式比較指令和區(qū)間比較指令在程序應(yīng)用中的格式分別如圖5.19和圖5.20所示。

圖5.19比較指令的格式

圖5.20區(qū)間比較指令的格式

圖5.21比較結(jié)果復(fù)位的格式

3.指令使用說明(1)?CMP和ZCP比較的數(shù)據(jù)是有符號的二進(jìn)制數(shù),如-8<1。(2)ZCP指令的源操作數(shù)[S1]不能大于[S2],例如[S1]=K100,[S2]=K90,則將[S2]當(dāng)作K100來計(jì)算。(3)若M0被指定為目標(biāo)操作數(shù),則M0、M1和M2自動被占用,若M3被指定為目的操作數(shù),則M3、M4和M5自動被占用。(4)這兩種指令均有連續(xù)執(zhí)行型和脈沖執(zhí)行型,操作數(shù)均可為16位或32位操作數(shù)。

5.4.2FNC12(MOV)數(shù)據(jù)傳送指令

1.指令功能指令功能:將源操作數(shù)[S·]傳送到目標(biāo)操作數(shù)[D·]中,源操作數(shù)內(nèi)容保持不變。操作數(shù):源操作數(shù)[S·]是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式16位數(shù)據(jù)傳送指令在程序應(yīng)用中的格式如圖5.22(a)所示,當(dāng)X1=ON時(shí),將K4X10的內(nèi)容傳送到D0中,K100傳送到D1中。32位數(shù)據(jù)傳指令在程序應(yīng)用中的格式如圖5.22(b)所示,當(dāng)X0=ON時(shí),將計(jì)數(shù)器C1的當(dāng)前值傳送到(D11,D10)中。

圖5.22傳送指令的格式(a)?16位傳送指令的格式;(b)?32位傳送指令的格式

3.指令使用說明(1)該指令執(zhí)行時(shí),常數(shù)自動轉(zhuǎn)換成二進(jìn)制數(shù)。(2)?MOV為連續(xù)/脈沖執(zhí)行型指令。操作數(shù)均可為16位或32位操作數(shù)。(3)源操作數(shù)為計(jì)數(shù)器時(shí)為32位操作數(shù)。

5.4.3FNC13(SMOV)移位傳送指令

1.指令功能指令功能:將數(shù)據(jù)進(jìn)行分配或者合成。操作數(shù):源操作數(shù)[S·]是K、H、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式移位傳送指令在程序應(yīng)用中的格式及操作過程如圖5.23所示。當(dāng)輸入信號X0為ON時(shí),首先將源操作數(shù)D0中的二進(jìn)制數(shù)轉(zhuǎn)換成4位BCD碼,然后將BCD碼移位傳送。源操作數(shù)D0中BCD碼的右起第4位(由m1確定,m1=4)開始的2位(由m2確定,m2=2)移位并傳送到目標(biāo)操作數(shù)D1的第3位(由n確定,n=3)和第2位。D1的其余位保持不變,然后將D1自動換成二進(jìn)制碼。

圖5.23位移傳送指令的格式及操作過程

3.指令使用說明(1)?m1、m2和n是K、H,范圍是1~4。(2)該指令為連續(xù)/脈沖執(zhí)行型指令。(3)若SMOV指令的操作數(shù)的范圍為0~9999,否則會出現(xiàn)錯誤。(4)特殊輔助繼電器M8168驅(qū)動后執(zhí)行SMOV指令時(shí),源操作數(shù)和目標(biāo)操作數(shù)不進(jìn)行二進(jìn)制和BCD碼的轉(zhuǎn)換,照原樣以4位為單位進(jìn)行移位傳送操作。

5.4.4FNC14(CML)取反傳送指令

1.指令功能指令功能:將源操作數(shù)[S·]逐位取反(0→1,1→0)后,向目標(biāo)操作數(shù)[D·]傳送。操作數(shù):源操作數(shù)[S·]是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z、X、Y、M、S;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式取反傳送指令在程序應(yīng)用中的格式如圖5.24所示。

圖5.24取反傳送指令的格式

3.指令使用說明該指令可為連續(xù)/脈沖執(zhí)行型指令。操作數(shù)均為16位或32位操作數(shù)。

5.4.5FNC15(BMOV)塊傳送指令

1.指令功能指令功能:將源操作數(shù)[S·]指定的成批數(shù)據(jù)傳送到目標(biāo)操作數(shù)[D·]中,傳送數(shù)據(jù)的長度由源操作數(shù)[S·]的數(shù)據(jù)類型和n確定。操作數(shù):源操作數(shù)[S·]是K、H、KnX、KnY、KnM、KnS、T、C、D;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D;n是K、H,取值范圍應(yīng)是1≤n≤512。

2.編程格式塊傳送指令在程序應(yīng)用中的格式如圖5.25所示。

當(dāng)X0=ON時(shí)執(zhí)行塊傳送指令,將D4、D5、D6、D7的內(nèi)容傳送到D10、D11、D12、D13中,其中傳送數(shù)據(jù)寄存器的個(gè)數(shù)由n確定。

圖5.25塊傳送指令的格式

3.指令使用說明(1)?BMOV為連續(xù)/脈沖執(zhí)行型指令。(2)如用到需要指定位數(shù)的位元件時(shí),源和目標(biāo)的指定位數(shù)必須相等,如圖5.26所示。

圖5.26塊傳送指令的應(yīng)用實(shí)例(一)

(3)源操作數(shù)和目標(biāo)操作數(shù)的地址發(fā)生重疊時(shí),為了防止源操作數(shù)沒有傳送前被改寫,PLC將自動確定傳送順序,如圖5.27所示。

(4)當(dāng)特殊輔助繼電器M8024=ON時(shí),數(shù)據(jù)傳送方向反轉(zhuǎn),即由目標(biāo)向源傳送。

圖5.27塊傳送指令的應(yīng)用實(shí)例(二)

5.4.6FNC16(FMOV)多點(diǎn)傳送指令

1.指令功能指令功能:將源操作數(shù)[S·]向指定目標(biāo)操作數(shù)[D·]開始的n個(gè)目標(biāo)傳送數(shù)據(jù),且目標(biāo)操作數(shù)的內(nèi)容完全相同。操作數(shù):源操作數(shù)[S·]是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D;n是K、H,其取值范圍是1≤n≤512。

2.編程格式多點(diǎn)傳送指令在程序應(yīng)用中的格式如圖5.28所示??梢岳肍MOV指令對D0~D3的4個(gè)數(shù)據(jù)寄存器進(jìn)行清零。圖中,當(dāng)M8002=ON時(shí),D0~D3的內(nèi)容被清零。

圖5.28多點(diǎn)傳送指令的格式

3.指令使用說明(1)指令可為連續(xù)/脈沖執(zhí)行型指令。(2)若元件編號超出允許范圍,數(shù)據(jù)僅傳送到允許范圍的元件內(nèi)。

5.4.7FNC17(XCH)交換指令

1.指令功能指令功能:將目標(biāo)操作數(shù)[D1·]和[D2·]指定的兩個(gè)目標(biāo)元件存儲的數(shù)據(jù)進(jìn)行相互交換。操作數(shù):目標(biāo)操作數(shù)[D1·]和[D2·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式數(shù)據(jù)交換指令在程序應(yīng)用中的格式如圖5.29所示。當(dāng)X0=ON時(shí),執(zhí)行XCH指令,D1和D0中存儲的16位數(shù)據(jù)相互交換。

圖5.29XCH指令的格式

3.指令使用說明(1)?XCH為連續(xù)/脈沖執(zhí)行型指令;操作數(shù)為16位或32位。(2)若特殊輔助繼電器M8160=ON,且兩個(gè)操作數(shù)為同一目標(biāo)地址時(shí),該指令執(zhí)行會使目標(biāo)元件的高8位和低8位相互交換,與SWAP指令的功能相同,如圖5.30所示。若M8160=ON時(shí)兩個(gè)操作數(shù)的元件不同時(shí),出錯標(biāo)志M8067置1,不執(zhí)行該指令。

圖5.30XCH與SWAP等效的應(yīng)用實(shí)例

5.4.8FNC18(BCD)變換指令和FNC19(BIN)變換指令

1.指令功能BCD指令功能:將源操作數(shù)[S·]指定的二進(jìn)制數(shù)轉(zhuǎn)換成BCD碼,存入目標(biāo)操作數(shù)[D·]。BIN指令功能:將源操作數(shù)[S·]指定的BCD碼轉(zhuǎn)換成二進(jìn)制數(shù),存入目標(biāo)操作數(shù)[D·]。操作數(shù):源操作數(shù)[S·]是KnX、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式BCD指令和BIN指令在程序應(yīng)用中的格式如圖5.31所示。

當(dāng)M8002=ON時(shí),執(zhí)行FMOV指令,對D1清零;當(dāng)X0=ON,則執(zhí)行BIN指令,將輸入繼電器X27~X10組成的4位BCD碼轉(zhuǎn)換成二進(jìn)制數(shù)傳送入D1中;若X1=ON,則執(zhí)行BCD指令,將D1的二進(jìn)制數(shù)轉(zhuǎn)換成BCD碼由Y17~Y0輸出。

圖5.31BIN和BCD指令的格式

3.指令使用說明(1)?BIN、BCD為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位或32位。(2)?BCD碼的數(shù)值范圍:16位操作時(shí)為0~9999,32位操作時(shí)為0~99999999。

5.5四則運(yùn)算和邏輯運(yùn)算指令

表5.7四則運(yùn)算和邏輯運(yùn)算指令

5.5.1FNC20(ADD)二進(jìn)制加法指令

1.指令功能指令功能:將源操作數(shù)[S1·]和[S2·]進(jìn)行二進(jìn)制加法運(yùn)算,將結(jié)果存入目標(biāo)操作數(shù)[D·]。操作數(shù):源操作數(shù)[S1·]和[S2·]是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式二進(jìn)制加法指令在程序應(yīng)用中的格式如圖5.32所示。在X10由OFF到ON上升沿,執(zhí)行ADD指令,即K200+K4X0(X17~X0)→K4Y0。

圖5.32ADD指令的格式

3.指令使用說明(1)?ADD為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位或32位。(2)?ADD指令操作數(shù)的數(shù)據(jù)類型是有符號的數(shù)值。各數(shù)據(jù)的最高位是符號位(0為正,1為負(fù))。各數(shù)據(jù)的運(yùn)算是以代數(shù)形式進(jìn)行運(yùn)算,如-17+10=-7。(3)ADD指令執(zhí)行后,若運(yùn)算結(jié)果為0,則M8020(零標(biāo)志位)為ON,若運(yùn)算結(jié)果大于32767(16位數(shù)據(jù))或2147483647(32位數(shù)據(jù)),則M8022(進(jìn)位標(biāo)志)為ON;若運(yùn)算結(jié)果小于-32768(16位數(shù)據(jù))或-2147483648(32位數(shù)據(jù)),則M8021(借位標(biāo)志)為ON。

(4)源操作數(shù)和目標(biāo)操作數(shù)可以指定相同的編號,如圖5.33所示。初始時(shí)D0=0,第1次掃描時(shí)D0(0)+2→D0(2);第2次掃描時(shí)D0(2)+2→D0(4);第n次掃描時(shí)D0(2n-2)+2→D0(2×n)。

圖5.33ADD連續(xù)型指令的格式

5.5.2FNC21(SUB)二進(jìn)制減法指令

1.指令功能指令功能:將源操作數(shù)[S1·]和[S2·]進(jìn)行二進(jìn)制減法運(yùn)算,將結(jié)果存入目標(biāo)操作數(shù)[D·]。操作數(shù):源操作數(shù)[S1·]、[S2·]是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式二進(jìn)制減法指令在程序應(yīng)用中的格式如圖5.34所示。當(dāng)X10=ON,執(zhí)行二進(jìn)制減法(SUB)指令,即(D1)-(D2)→K4Y0(Y17~Y0)。

圖5.34二進(jìn)制減法指令的格式

3.指令使用說明使用要求與ADD指令相同

5.5.3FNC22(MUL)二進(jìn)制乘法指令

1.指令功能指令功能:將源操作數(shù)[S1·]和[S2·]進(jìn)行二進(jìn)制乘法運(yùn)算,將結(jié)果存入目標(biāo)操作數(shù)[D·]。操作數(shù):源操作數(shù)[S1·]、[S2·]是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式二進(jìn)制16位運(yùn)算的乘法指令在程序應(yīng)用中的格式如圖5.35(a)所示,當(dāng)X10由OFF變?yōu)镺N時(shí),執(zhí)行一次二進(jìn)制乘法運(yùn)算,即(D0)×K4Y0→(D2,D1);二進(jìn)制32位運(yùn)算的乘法指令在程序應(yīng)用中的格式如圖5.35(b)所示,當(dāng)X10由OFF變?yōu)镺N時(shí),執(zhí)行一次二進(jìn)制乘法運(yùn)算,即(D1,D0)×K8Y0→(D7,D6,D5,D4)。

圖5.35二進(jìn)制乘法指令的格式(a)二進(jìn)制16位乘法運(yùn)算指令;(b)二進(jìn)制32位乘法運(yùn)算指令

3.指令使用說明(1)二進(jìn)制乘法指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位或32位。(2)對于16位MUL指令,若目標(biāo)操作數(shù)是KnY、KnM、KnS時(shí),可以進(jìn)行K1~K8的指定。當(dāng)指定為K4時(shí),只能得到16位運(yùn)算結(jié)果的低16位。(3)對于32位MUL指令,若目標(biāo)操作數(shù)是KnY、KnM、KnS,則只能得到32位的運(yùn)算結(jié)果,因此最好采用浮點(diǎn)數(shù)運(yùn)算。(4)執(zhí)行32位數(shù)據(jù)操作指令時(shí),目標(biāo)操作數(shù)不能指定為V和Z。

5.5.4FNC23(DIV)二進(jìn)制除法指令

1.指令功能指令功能:將源操作數(shù)[S1·]和[S2·]進(jìn)行二進(jìn)制除法運(yùn)算,將結(jié)果存入目標(biāo)操作數(shù)[D·]。操作數(shù):源操作數(shù)[S1·]、[S2?]是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式二進(jìn)制16位除法運(yùn)算指令在程序應(yīng)用中的格式如圖5.36(a)所示,當(dāng)X0=ON時(shí),執(zhí)行二進(jìn)制除法指令,即(D0)÷200的商存入(D1),余數(shù)存入下一個(gè)元件(D2)中;二進(jìn)制32位除法運(yùn)算指令的格式說明如圖5.36(b)所示,當(dāng)X0=ON時(shí),執(zhí)行二進(jìn)制除法指令,即(D1,D0)÷(D3,D2)的商存入(D9,D8),余數(shù)存入下一個(gè)元件(D11,D10)。

圖5.36二進(jìn)制除法指令的格式(a)二進(jìn)制16位除法運(yùn)算指令;(b)二進(jìn)制32位除法運(yùn)算指令

3.指令使用說明(1)二進(jìn)制除法指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位或32位。(2)目標(biāo)操作數(shù)是KnY、KnM、KnS時(shí),同二進(jìn)制乘法指令。(3)執(zhí)行32位數(shù)據(jù)操作指令時(shí),目標(biāo)操作數(shù)不能指定為Z。(4)若除數(shù)為“0”則出錯,該指令不執(zhí)行。

5.5.5FNC24(INC)加1指令和FNC25(DEC)減1指令

1.指令功能INC指令功能:將目標(biāo)操作數(shù)[D·]指定的數(shù)據(jù)加1。DEC指令功能:將目的操作數(shù)[D·]指定的數(shù)據(jù)減1。操作數(shù):INC和DEC目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式二進(jìn)制加1指令和二進(jìn)制減1指令在程序應(yīng)用中的格式分別如圖5.37和圖5.38所示。

圖5.37二進(jìn)制加1指令的格式

圖5.38二進(jìn)制減1指令的格式

上面兩圖中,當(dāng)X10由OFF→ON時(shí)(D0)+1→(D0);當(dāng)X1由OFF→ON時(shí)(D1)?1→(D1)。

3.指令使用說明(1)?INC指令和DEC指令均為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位或32位。(2)?INC指令和DEC指令對于借位標(biāo)志位和進(jìn)位標(biāo)志位沒有影響。

5.5.6FNC26(WAND)、FNC27(WOR)和FNC28(WXOR)字邏輯指令

1.指令功能WAND(字邏輯與)指令功能:將源操作數(shù)[S1·]和[S2·]的各位數(shù)據(jù)依次求邏輯與運(yùn)算,結(jié)果存入目標(biāo)操作數(shù)[D·]。WOR(字邏輯或)指令功能:將源操作數(shù)[S1·]和[S2·]的各位數(shù)據(jù)依次求邏輯或運(yùn)算,結(jié)果存入目標(biāo)操作數(shù)[D·]。WXOR(字邏輯異或)指令功能:將源操作數(shù)[S1·]和[S2·]的各位數(shù)據(jù)依次求邏輯異或運(yùn)算,結(jié)果存入目標(biāo)操作數(shù)[D·]。操作數(shù):字邏輯與、或、異或運(yùn)算指令的源操作數(shù)[S1·]、[S2·]是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式字邏輯與運(yùn)算指令在程序應(yīng)用中的格式如圖5.39所示,當(dāng)X0=ON時(shí),執(zhí)行16位邏輯與運(yùn)算指令,即(D2)∧(D1)→(D0);當(dāng)X1=ON時(shí),執(zhí)行32位邏輯與運(yùn)算指令,即(D1,D0)∧(D3,D2)→(D9,D8)。

圖5.39邏輯與運(yùn)算指令的格式(a)?16位邏輯與運(yùn)算指令;(b)?32位邏輯與運(yùn)算指令

3.指令使用說明(1)字邏輯與、或及異或運(yùn)算指令均為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位或32位。(2)字邏輯或、邏輯異或運(yùn)算指令同邏輯與運(yùn)算指令相似

5.5.7FNC29(NEG)求補(bǔ)運(yùn)算指令

1.指令功能指令功能:將目標(biāo)操作數(shù)[D·]的各位數(shù)據(jù)求反,將結(jié)果加1后存入目標(biāo)操作數(shù)[D·]。操作數(shù):目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式求補(bǔ)運(yùn)算在程序應(yīng)用中的格式如圖5.40所示。

由數(shù)值的補(bǔ)碼表示方法知,對于正數(shù)進(jìn)行求補(bǔ)運(yùn)算可得正數(shù)的相反數(shù);對于負(fù)數(shù)求補(bǔ)運(yùn)算可得到負(fù)數(shù)的絕對值。圖5.40中BON指令為指定位判別指令,當(dāng)(D3、D2)的最高位為1時(shí),M1=ON,否則M1=OFF。當(dāng)M1由OFF→ON時(shí),則執(zhí)行求補(bǔ)運(yùn)算指令,即求(D3,D2)的絕對值。

圖5.40求補(bǔ)運(yùn)算指令在負(fù)數(shù)求絕對值中的格式

3.指令說明(1)?NEG指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位或32位。(2)?NEG指令對于借位標(biāo)志位和進(jìn)位標(biāo)志位沒有影響。

5.6循環(huán)移位和移位指令

表5.8循環(huán)移位和移位指令

5.6.1FNC30(ROR)循環(huán)右移指令和FNC31(ROL)循環(huán)左移指令

1.指令功能ROR指令功能:將目標(biāo)操作數(shù)[D·]的數(shù)據(jù)循環(huán)右移n位,將結(jié)果存入目標(biāo)操作數(shù)[D·]。ROL指令功能:將目標(biāo)操作數(shù)[D·]的數(shù)據(jù)循環(huán)左移n位,將結(jié)果存入目標(biāo)操作數(shù)[D·]。操作數(shù):ROR指令和ROL指令的目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z;n的取值范圍是0≤n≤16(16位指令)或0≤n≤32(32位指令)。

2.編程格式循環(huán)右移指令在程序應(yīng)用中的格式如圖5.41所示,當(dāng)X0由OFF→ON時(shí)執(zhí)行循環(huán)右移指令,即(D0)循環(huán)右移4位,最終位存入進(jìn)位標(biāo)志位中。

圖5.41循環(huán)右移指令的格式

循環(huán)左移指令在程序應(yīng)用中的格式如圖5.42所示,當(dāng)X1由OFF→ON時(shí)執(zhí)行循環(huán)左移指令,即(D1)循環(huán)左移4位,最終位存入進(jìn)位標(biāo)志位中。32位循環(huán)移位指令與此類似。

圖5.42循環(huán)左移指令的格式

3.指令使用說明(1)?ROR指令和ROL指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位或32位;(2)若目標(biāo)是KnY、KnM、KnS時(shí),只有K4(16位指令)和K8(32位指令)有效;(3)循環(huán)移位指令影響進(jìn)位標(biāo)志位,最終位被移入進(jìn)位標(biāo)志位中。

5.6.2FNC32(RCR)帶進(jìn)位循環(huán)右移位指令和FNC33(RCL)帶進(jìn)位循環(huán)左移位指令

1.指令功能RCR指令功能:將目標(biāo)操作數(shù)[D·]的數(shù)據(jù)和進(jìn)位標(biāo)志位共同組成的數(shù)據(jù)循環(huán)右移n位。RCL指令功能:將目標(biāo)操作數(shù)[D·]的數(shù)據(jù)和進(jìn)位標(biāo)志位共同組成的數(shù)據(jù)循環(huán)左移n位。操作數(shù):RCR指令和RCL指令的目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z;n的取值范圍是0≤n≤16(16位指令)或0≤n≤32(32位指令)。

2.編程格式帶進(jìn)位循環(huán)右移指令在程序應(yīng)用中的格式如圖5.43所示,當(dāng)X0由OFF→ON時(shí),執(zhí)行帶進(jìn)位循環(huán)右移指令,即(M8022,D0)循環(huán)右移4位。

圖5.43帶進(jìn)位循環(huán)右移指令的格式

圖5.44帶進(jìn)位循環(huán)左移指令的格式

3.指令說明(1)?RCR指令和RCL指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位或32位。(2)若目標(biāo)是KnY、KnM、KnS時(shí),只有K4(16位指令)和K8(32位指令)有效。

5.6.3FNC34(SFTR)位右移指令和FNC35(SFTL)位左移指令

1.指令功能SFTR指令功能:將目標(biāo)操作數(shù)[D·]指定的移位寄存器(移位寄存器的長度為n1位)右移位n2位,移位后的數(shù)據(jù)由源操作數(shù)[S·]指定的數(shù)據(jù)填補(bǔ)。SFTL指令功能:將目標(biāo)操作數(shù)[D·]指定的移位寄存器(移位寄存器的長度為n1位)左移位n2位,移位后的數(shù)據(jù)由源操作數(shù)[S·]指定的數(shù)據(jù)填補(bǔ)。操作數(shù):SFTR指令和SFTL指令的源操作數(shù)[S·]是X、Y、M、S;目標(biāo)操作數(shù)[D·]是Y、M、S;n1、n2的取值范圍是0<n2<n1<1024。

2.編程格式位右移指令和位左移指令在程序應(yīng)用中的格式如圖5.45和圖5.46所示。當(dāng)X0從OFF→ON時(shí),執(zhí)行右移位指令。當(dāng)X1從OFF→ON時(shí),執(zhí)行左移位指令。

圖5.45右移位指令的格式

圖5.46左移位指令的格式

3.指令使用說明SFTR指令和SFTL指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位。

5.6.4FNC36(WSFR)字右移指令和FNC37(WSFL)字左移指令

1.指令功能WSFR指令功能:將目標(biāo)操作數(shù)[D·]指定的移位寄存器(移位寄存器的長度為n1個(gè)字)右移位n2個(gè)字,移位后的數(shù)據(jù)由源操作數(shù)[S·]指定的數(shù)據(jù)填充。WSFL指令功能:將目標(biāo)操作數(shù)[D·]指定的移位寄存器(移位寄存器的長度為n1個(gè)字)左移位n2個(gè)字,移位后的數(shù)據(jù)由源操作數(shù)[S·]指定的數(shù)據(jù)填充。操作數(shù):WSFR指令和WSFL指令的源操作數(shù)[S·]是KnX、KnY、KnM、KnS、T、C、D;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D;n1、n2的取值范圍是0<n2<n1<512。

2.編程格式字右移指令在程序應(yīng)用中的格式如圖5.47所示,當(dāng)X0從OFF→ON時(shí),執(zhí)行該指令。

圖5.47字右移指令的格式

字左移指令在程序應(yīng)用中的格式如圖5.48所示,當(dāng)X1從OFF→ON時(shí),執(zhí)行該指令。

圖5.48字左移指令的格式

3.指令使用說明(1)?WSFR指令和WSFL指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位。(2)源操作數(shù)和目標(biāo)操作數(shù)是KnX、KnY、KnM、KnS時(shí),則n1和n2是位元件的組數(shù)(4位為1個(gè)單元組),如圖5.49所示。

圖5.49字左移指令位元件的格式

5.6.5FNC38(SFWR)移位寫入指令和FNC39(SFRD)移位讀取指令

1.指令功能SFWR指令功能:將源操作數(shù)[S·]指定的數(shù)據(jù)寫入到目標(biāo)操作數(shù)[D·]指示器指示的元件中。該指令每執(zhí)行一次,指示器加1,直到指示的內(nèi)容達(dá)到n-1時(shí)不再執(zhí)行;SFRD指令功能:將源操作數(shù)[S·]指定的n-1個(gè)數(shù)據(jù)序列依次移入到目標(biāo)操作數(shù)[D·]指定的元件中。該指令每執(zhí)行一次,源操作數(shù)指定的數(shù)據(jù)序列向右移一字,直到指示器為零。

操作數(shù):SFWR指令的源操作數(shù)[S·]是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D;n的取值范圍是2≤n≤512。SFRD指令的源操作數(shù)[S·]是KnY、KnM、KnS、T、C、D;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z;n的取值范圍是2≤n≤512。

2.編程格式移位寫入指令在程序應(yīng)用中的格式如圖5.50所示。當(dāng)X0由OFF→ON時(shí),源D0的數(shù)據(jù)寫入D11,而D10變?yōu)?(指針);當(dāng)X0再次變ON時(shí),則D0的數(shù)據(jù)寫入D12,D10中數(shù)據(jù)變?yōu)?。依次類推,當(dāng)D10的內(nèi)容為9時(shí),則不再執(zhí)行且進(jìn)位標(biāo)志位M8022置1。

圖5.50移位寫入指令的編程格式

移位讀取指令在程序應(yīng)用中的格式如圖5.51所示,當(dāng)X1由OFF→ON時(shí),將D11的數(shù)據(jù)傳送到字元件D0,同時(shí)指針D10減1,單元序列中的數(shù)據(jù)向右移動1個(gè)字;當(dāng)X0由OFF→ON時(shí),將D12的數(shù)據(jù)傳送到字元件D0,指針D10再減1,單元序列中的數(shù)據(jù)向右再移動1個(gè)字;依次類推,當(dāng)D10為0時(shí),則不再執(zhí)行且零標(biāo)志位M8020置1。

圖5.51移位讀取指令的格式

3.指令使用說明SFWR指令和SFRD指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位。

5.7數(shù)據(jù)處理指令

表5.9數(shù)據(jù)處理指令表

5.7.1FNC40(ZRST)區(qū)間復(fù)位指令

1.指令功能指令功能:將目標(biāo)操作數(shù)[D1·]和[D2·]區(qū)間范圍內(nèi)的元件復(fù)位。操作數(shù):目標(biāo)操作數(shù)[D1·]、[D2·]是Y、M、S、T、C、D。

2.編程格式區(qū)間復(fù)位指令在程序應(yīng)用中的格式如圖5.52所示,當(dāng)M8002為ON時(shí),執(zhí)行區(qū)間復(fù)位指令。

圖5.52區(qū)間復(fù)位指令的格式

3.指令使用說明(1)ZRST指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位。(2)目標(biāo)操作數(shù)[D1·]、[D2·]必須使用同一種類的軟元件,且[D1·]編號≤[D2·]編號。(3)?ZRST指令以16位指令執(zhí)行,但是[D1·]、[D2·]也可同時(shí)指定為32位計(jì)數(shù)器。(4)對于位元件(Y、M、S)和字元件(T、C、D)單獨(dú)復(fù)位可以使用RST指令。(5)對于位組合元件KnY、KnM、KnS的復(fù)位,可以使用多點(diǎn)傳送指令(FMOV),將0寫入其中,如圖5.28所示。

5.7.2FNC41(DECO)譯碼指令

1.指令功能指令功能:根據(jù)源操作數(shù)[S·]指定的元件為首的n位數(shù)據(jù)的數(shù)值(m),將目標(biāo)操作數(shù)[D·]指定的元件為首的第m位元件置1。操作數(shù):源操作數(shù)[S·]是K、H、T、C、D、X、Y、M、S、V、Z;目標(biāo)操作數(shù)[D·]是Y、M、S、T、C、D。

2.編程格式譯碼指令在程序應(yīng)用中的格式如圖5.53所示,當(dāng)X0=ON時(shí),執(zhí)行該指令。

圖5.53譯碼指令的格式(a)位元件的譯碼指令;(b)字元件的譯碼指令

3.指令使用說明(1)?DECO指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位。(2)目標(biāo)操作數(shù)是位元件,n的取值范圍是1≤n≤8;目標(biāo)操作數(shù)是字元件,n的取值范圍是1≤n≤4,n=0時(shí)不處理,n在取值范圍以外時(shí)運(yùn)算錯誤標(biāo)志動作。(3)驅(qū)動輸入由ON→OFF時(shí),指令停止執(zhí)行,正在動作的譯碼輸出保持動作。

5.7.3FNC42(ENCO)編碼指令

1.指令功能指令功能:將源操作數(shù)[S·]指定的元件為首的2n-1位中,從最高位開始第一個(gè)為1的位編號寫入目標(biāo)操作數(shù)[D·]。操作數(shù):源操作數(shù)[S·]是X、Y、M、S、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是T、C、D、V、Z。

2.編程格式編碼指令在程序應(yīng)用中的格式如圖5.54所示。當(dāng)X0=ON時(shí),執(zhí)行該指令。

圖5.54編碼指令的格式(a)位元件的編碼指令;(b)字元件的編碼指令

3.指令使用說明與譯碼指令基本相同。

5.7.4FNC43(SUM)ON位數(shù)指令

1.指令功能指令功能:將源操作數(shù)[S·]的數(shù)據(jù)中“1”的個(gè)數(shù)存入目標(biāo)操作數(shù)[D·]。操作數(shù):源操作數(shù)[S·]是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式ON位數(shù)指令在程序應(yīng)用中的格式如圖5.55所示。當(dāng)X0=ON時(shí),執(zhí)行ON位數(shù)指令,即統(tǒng)計(jì)D1中“1”的總數(shù)(4個(gè)),然后將其存入數(shù)據(jù)寄存器D0。

圖5.55ON位數(shù)指令的格式

3.指令使用說明(1)?SUM指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位。(2)若SUM指令源操作數(shù)指定的元件中數(shù)據(jù)為0,則零標(biāo)志位M8020=ON。

5.7.5FNC44(BON)ON位判斷指令

1.指令功能指令功能:源操作數(shù)[S·]指定的位數(shù)中第n位為1,則將目標(biāo)操作數(shù)[D·]指定的元件置1;源操作數(shù)[S·]指定的位數(shù)中第n位為0,則將目標(biāo)操作數(shù)[D?]指定的元件置0。操作數(shù):源操作數(shù)[S·]是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z;目標(biāo)操作數(shù)[D·]是Y、M、S。

2.編程格式ON位判斷指令在程序應(yīng)用中的格式如圖5.56所示。

圖5.56ON位判斷指令的格式

3.指令使用說明(1)?ON位判斷指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位和32位兩種。(2)對于16位ON位判斷指令,n=0~15;對于32位ON位判斷指令,n=0~31。

5.7.6FNC45(MEAN)求平均值指令

1.指令功能指令功能:將源操作數(shù)[S·]指定的n個(gè)數(shù)據(jù)序列求平均,將結(jié)果存入目標(biāo)操作數(shù)[D·]。操作數(shù):源操作數(shù)[S·]是KnX、KnY、KnM、KnS、T、C、D;目標(biāo)操作數(shù)[D·]是KnY、KnM、KnS、T、C、D、V、Z。

2.編程格式求平均值指令在程序應(yīng)用中的格式如圖5.57所示,當(dāng)X0=ON時(shí),執(zhí)行求平均值指令。

圖5.57求平均值指令的格式

3.指令使用說明(1)求平均值指令為連續(xù)/脈沖執(zhí)行型指令,操作數(shù)為16位和32位兩種。(2)?n的取值范圍是1≤n≤64,n在取值范圍以外時(shí)運(yùn)算錯誤標(biāo)志動作。

5.7.7FNC46(ANS)報(bào)警信號設(shè)置指令和FNC47(ANR)報(bào)警信號復(fù)位指令

1.指令功能ANS指令功能:當(dāng)源操作數(shù)[S·]的定時(shí)器當(dāng)前值與n相等時(shí),將目標(biāo)操作數(shù)[D·]置1。ANR指令功能:復(fù)位正在報(bào)警的信號。

2.編程格式報(bào)警信號指令在程序應(yīng)用中的格式如圖5.58所示。

當(dāng)X0接通10?s時(shí),則S900置為1并保持,同時(shí)定時(shí)器T0復(fù)位。當(dāng)X1由OFF→ON時(shí),報(bào)警器S900~S999中正在報(bào)警的信號復(fù)位。

圖5.58報(bào)警信號指令的格式(a)報(bào)警信號設(shè)置指令;(b)報(bào)警信號復(fù)位指令

3.指令使用說明(1)報(bào)警信號指令只有16位指令。(2)報(bào)警信號設(shè)置指令為連續(xù)型執(zhí)行指令,報(bào)警信號復(fù)位指令有連續(xù)/脈沖型兩種。(3)對報(bào)警信號復(fù)位時(shí),若超過1個(gè)報(bào)警器信號被置1,則元件號最低的一個(gè)被復(fù)位。

5.7.8FNC48(SQR)二進(jìn)制開平方指令

1.指令功能指令功能:將源操作數(shù)[S·]的數(shù)值開平方,將結(jié)果存入目標(biāo)操作數(shù)[D·]。操作數(shù):源操作數(shù)[S·]是K、H、D;目標(biāo)操作數(shù)[D·]是D。

2.編程格式二進(jìn)制開平方指令在程序應(yīng)用中的格式如圖5.59所示,當(dāng)X0=ON時(shí),→D0。

圖5.59二進(jìn)制開平方指令的格式

3.指令使用說明(1)二進(jìn)制開平方指令為脈沖/連續(xù)型兩種,操作數(shù)為16位和32位。(2)源操作數(shù)[S·]的數(shù)值是正數(shù)時(shí)有效,如是負(fù)數(shù),則運(yùn)算錯誤標(biāo)志M8067被置為1。(3)當(dāng)運(yùn)算結(jié)果是0時(shí),零標(biāo)志位M8020被置1。

5.7.9FNC49(FLT)整數(shù)—二進(jìn)制浮點(diǎn)數(shù)轉(zhuǎn)換指令

1.指令功能指令功能:將源操作數(shù)[S·]的整數(shù)轉(zhuǎn)換成二進(jìn)制浮點(diǎn)數(shù)存入目標(biāo)操作數(shù)[D·]。操作數(shù):源操作數(shù)[S·]和目標(biāo)操作數(shù)[D·]均是D。

2.編程格式整數(shù)—二進(jìn)制浮點(diǎn)數(shù)轉(zhuǎn)換指令在程序應(yīng)用中的格式如圖5.60所示。

圖5.60整數(shù)—二進(jìn)制浮點(diǎn)數(shù)轉(zhuǎn)換指令的格式(a)?16位轉(zhuǎn)換指令;(b)?32位轉(zhuǎn)換指令

當(dāng)X0=ON,且M8023為OFF時(shí),將(D0)的數(shù)據(jù)轉(zhuǎn)換成二進(jìn)制浮點(diǎn)數(shù)存入(D11,D10);當(dāng)X1=ON,且M8023為OFF時(shí),將(D1,D0)的數(shù)據(jù)轉(zhuǎn)換成二進(jìn)制浮點(diǎn)數(shù)存入(D11,D10)。M8023為ON時(shí),將把浮點(diǎn)數(shù)轉(zhuǎn)換為整數(shù)。用于存放浮點(diǎn)數(shù)的目標(biāo)操作數(shù)應(yīng)為雙整數(shù)。源操作數(shù)可以是整數(shù)或雙整數(shù)。

3.指令使用說明(1)整數(shù)—二進(jìn)制浮點(diǎn)數(shù)轉(zhuǎn)換指令為脈沖/連續(xù)型兩種,操作數(shù)為16位和32位。(2)整數(shù)—二進(jìn)制浮點(diǎn)數(shù)轉(zhuǎn)換指令的逆變換指令是FNC129(INT)。

5.8高速處理指令

表5.10高速處理指令表

5.8.1FNC50(REF)輸入/輸出刷新指令

1.指令功能指令功能:立即刷新輸入/輸出信息,獲取最新輸入信息和立即輸出信息。操作數(shù):目標(biāo)操作數(shù)[D·]分別是X和Y。

2.編程格式輸入/輸出刷新指令在程序應(yīng)用中的格式如圖5.61所示。

圖5.61輸入/輸出刷新指令的格式(a)輸入刷新指令;(b)輸出刷新指令

當(dāng)X0=ON時(shí),執(zhí)行輸入刷新指令。若在該指令執(zhí)行X10~X17已經(jīng)變?yōu)镺N約10?ms(輸入濾波滯后應(yīng)答時(shí)間),則該指令執(zhí)行后輸入映像寄存器X10~X17為ON;當(dāng)X1=ON時(shí)執(zhí)行輸出刷新指令,即若Y0~Y7任一為ON,則該指令執(zhí)行后鎖存存儲區(qū)的相應(yīng)輸出也為ON。

3.指令使用說明(1)輸入/輸出刷新指令為脈沖/連續(xù)型兩種,操作數(shù)為16位。(2)輸入/輸出刷新指令的目標(biāo)操作數(shù)元件編號低位只能是0,如X0、Y10等。(3)輸入/輸出刷新點(diǎn)數(shù)n應(yīng)是8的倍數(shù),如8、16、32……256,否則將出錯。(4)通常在FOR-NEXT以及標(biāo)號(新步號)~CJ(老步號)之間使用該指令。(5)在有輸入/輸出動作的中斷程序中,使用該指令可以獲取最新的輸入/輸出信息。(6)輸出刷新的輸出觸點(diǎn),仍有滯后時(shí)間,繼電器輸出約10?ms,晶體管輸出約0.2?ms。

5.8.2FNC51(REFF)刷新及濾波時(shí)間調(diào)整指令

1.指令功能圖5.62刷新及濾波時(shí)間調(diào)整指令的格式指令功能:依據(jù)給定值調(diào)整輸入濾波時(shí)間。

2.編程格式刷新及濾波時(shí)間調(diào)整指令在程序應(yīng)用中的格式如圖5.62所示。當(dāng)X0=ON時(shí),主程序2中所使用的輸入繼電器的濾波時(shí)間是1?ms,該指令前的輸入濾波時(shí)間是10?ms;當(dāng)X1=ON時(shí),主程序3中的輸入繼電器的濾波時(shí)間是20?ms。

圖5.62刷新及濾波時(shí)間調(diào)整指令的格式

3.指令使用說明(1)刷新及濾波時(shí)間調(diào)整指令為連續(xù)/脈沖型兩種,操作數(shù)為16位。(2)為防止輸入噪音影響,PLC的輸入RC濾波時(shí)間常數(shù)為10?ms;對電子固態(tài)(無觸點(diǎn))開關(guān),可以高速輸入。(3)該指令可改變輸入濾波時(shí)間的范圍是0~60?ms,即K的取值是0~60,實(shí)際濾波時(shí)間最小為50?μs(X0、X1為20?μs)。

(4)當(dāng)中斷指針、高速計(jì)數(shù)器或者FNC56(SPD)指令采用X0~X7輸入時(shí),輸入濾波時(shí)間自動調(diào)整為50?μs(X0、X1為20?μs)。(5)可以通過MOV指令改寫D8020數(shù)據(jù)寄存器的內(nèi)容,改變輸入濾波時(shí)間。

5.8.3FNC52(MTR)矩陣輸入指令

1.指令功能指令功能:將源操作數(shù)[S·]和目標(biāo)操作數(shù)[D1·]組成的矩陣開關(guān)輸入狀態(tài)信號存入目標(biāo)操作數(shù)[D2·]。操作數(shù):源操作數(shù)[S·]只能是X;[D1·]只能是Y;[D2·]是Y、M、S。

2.編程格式矩陣輸入指令在程序應(yīng)用中的格式、硬件接線和波形圖如圖5.63所示。

圖5.63矩陣輸入指令的格式(a)指令格式;(b)硬件接線;(c)時(shí)序圖

當(dāng)M0=ON時(shí),將8×3的矩陣輸入開關(guān)信號分別送入到目標(biāo)操作數(shù)[D2·?],即存入M30~M37、M40~M47和M50~M57中。在圖5.63中,[S·]指定開關(guān)矩陣輸入元件的起始地址,以X10開始占用8個(gè)輸入點(diǎn);[D1·]指定開關(guān)矩陣輸出元件的起始地址,占用n點(diǎn),以Y10開始占用3個(gè)輸出點(diǎn);[D2·]指定存放輸入開關(guān)矩陣狀態(tài)的起始地址。Y10~Y12依次輸出一定寬度的脈沖,當(dāng)Y10=ON時(shí),讀入第一行開關(guān)狀態(tài)并存入M30~M37中;當(dāng)Y11=ON時(shí),讀入第二行開關(guān)狀態(tài)并存入M40~M47中;當(dāng)Y12=ON時(shí),讀入第三行開關(guān)狀態(tài)并存入M50~M57中;依此類推,反復(fù)執(zhí)行。

5.8.4FNC53(HSCS)高速計(jì)數(shù)器置位指令和FNC54(HSCR)高速計(jì)數(shù)器復(fù)位指令

1.指令功能HSCS指令功能:當(dāng)源操作數(shù)[S2·]指定的高速計(jì)數(shù)器當(dāng)前值和源操作數(shù)[S1·]指定的數(shù)值相等時(shí),將目標(biāo)操作數(shù)[D·]立即置1。HSCR指令功能:當(dāng)源操作數(shù)[S2·]指定的高速計(jì)數(shù)器當(dāng)前值和源操作數(shù)[S1·]指定的數(shù)值相等時(shí),將目標(biāo)操作數(shù)[D·]立即復(fù)位。操作數(shù):源操作數(shù)[S1·]是K、H、KnX、KnY、KnM、KnS、T、C、D、V、Z;源操作數(shù)[S2·]是C235~C255;目標(biāo)操作數(shù)[D?]是Y、M、S。

2.編程格式高速計(jì)數(shù)器置位和復(fù)位指令在程序應(yīng)用中的格式如圖5.64所示,當(dāng)X0=ON時(shí),執(zhí)行高速計(jì)數(shù)器置位指令,即高速計(jì)數(shù)器C235的當(dāng)前值由99變?yōu)?00,或由101變?yōu)?00,Y1立即置位為1;當(dāng)X1=ON時(shí),執(zhí)行高速計(jì)數(shù)器復(fù)位指令,即高速計(jì)數(shù)器C235的當(dāng)前計(jì)數(shù)值由99變?yōu)?00,或由101變?yōu)?00,Y1立即復(fù)位。

圖5.64高速計(jì)數(shù)器置位和復(fù)位指令的格式(a)高速計(jì)數(shù)器置位指令(HSCS);(b)計(jì)數(shù)器復(fù)位指令(HSCR)

3.指令使用說明高速計(jì)數(shù)器置位指令和復(fù)位指令為連續(xù)型執(zhí)行指令,操作數(shù)為32位。

5.8.5FNC55(HSZ)高速計(jì)數(shù)器區(qū)間比較指令

1.指令功能指令功能:將源操作數(shù)[S3·]和源操作數(shù)[S1·]、[S2·]進(jìn)行比較,比較的結(jié)果決定以[D·]為首址的連續(xù)三個(gè)繼電器的狀態(tài)(ON/OFF)。

2.編程格式高速計(jì)數(shù)器區(qū)間比較指令在程序應(yīng)用中的格式如圖5.65所示。當(dāng)PLC運(yùn)行,執(zhí)行該指令。計(jì)數(shù)器C25

溫馨提示

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

評論

0/150

提交評論