LD、LDI、AND、ANI、OR、ORI、ANB、ORB、MRD、MPS、MPP、OUT、SET、RST、TMR、CNT、DCNT、MC、MCR、LDP、LDF、ANDP、ANDF、ORP、ORF、PLS、PLF、END、INV、P、I、STL、RET等介绍;主要内容基本顺序指令列表(一)基本顺序指令列表(二)一般基本指令說明LD/LDI指令用於左母線開始的A接點/B接點或一個接點回路塊開始的接點,它的作用是把當前內容保存,同時把取來的接點狀態存入累計寄存器內。AND/ANI指令用於A接點/B接點的串聯連接,它的作用是先讀取目前所BlockABlockB指定串聯接點的狀態再與接點之前邏輯運算結果作“及”(AND)的運算,BlockA並將結果存入累計寄存器內。OR/ORI指令用於A接點/B接點的並聯連接,它的作用是先讀取目前所指定串聯接點的狀態再與接點之前邏輯運算結果作“或”(OR)的運算,並將結果存入累計寄存器內。ANB和ORB是將前一保存的邏輯結果與目前累計寄存器旳內容作“及”和“或”的運算。將目前累計寄存器的內容存入堆棧。(堆棧指針加一)MPSMRD讀取堆棧內容存入累計寄存器。(堆棧指針不動)MPP自堆棧取回前一保存的邏輯運算結果,存入累計寄存器。(堆棧指針減一)將OUT指令之前的邏輯運算結果輸出至指定的裝置。當SET指令被驅動,其指定的裝置(BIT)被設定為On,且被設定的裝置會維持.不管SET指令是否仍被驅動。可利用RST指令將該裝置設為Off。这个指令基本上与自保电路的功能相当.注意SET指令和OUT指令的区别.當RST指令被驅動,其指定的裝置的動作如下:若RST指令沒有被執行,其指定裝置的狀態保持不變。當TMR指令執行時,其所指定的定時器線圈受電,定時器開始定時,當到達所指定的定時值(定時值=設定值),其接點動作如下:當CNT指令由OffOn執行,表示所指定的計數器線圈由失電受電,則該計數器計數值加1,當計數到達所指定的定數值(計數值=設定值),其接點動作如下:當計數到達之後,若再有計數脈沖輸入,其接點及計數值均保持不變,若要重新計數或作清除的動作,請利用RST指令。DCNT為計數器C235至C254為32位元高速計數器啟動指令,使用方法與16位元計數器C0~C127指令使用不同,當DCNT指令執行時,表示所指定的32位元計數器被啟動,而該計數器的指定高速計數脈衝輸入由OffOn,則執行計數動作,若計數觸發輸入端保持On或Off,則計數值保持不變。有關高速計數脈衝輸入端為(X0~X3)及計數動作(上數,計數值加一及下數,計數值減一)當DCNT指令Off時,該計數器停止計數,但原有計數值不會被清除可使用指令RSTC2XX清除計數值及其接點。MC為主控起始指令,當MC指令執行時,位於MC與MCR指令之間的指令照常執行。當MC指令Off時,位於MC與MCR指令之間的指令動作如下所示:MCR為主控結束指令,置於主控程序最後,在MCR指令之前不可有接點指令。MC-MCR主控程序指令支援巢狀程序結構,最多可8層,使用時依N0~N7的順序,請參考如下程序所示:接點上升沿/下降沿檢出指令LDP/LDF指令用法上與LD/LDI相同,但動作不同,它的作用是指當前內容保存,同時把取來的接點上升沿/下降沿檢出狀態存入累計寄存器內。ANDP/ANDF指令用於接點上升沿/下降沿檢出的串聯連接。ORP/ORF指令用於接點上升沿/下降沿檢出的並聯連接。上下沿輸出指令PLS指令:上升沿檢出指令。當X0=Off→On(上升沿觸發)時PLS指令被執行,M0送出一次脈沖,脈沖長度為一次掃描時間。PLF指令:下降沿檢出指令。當X0=On→Off(下降沿觸發)時PLF指令被執行,M0送出一次脈沖,脈沖長度為一次掃描時間。在梯形圖程序或指令程序最後必須加入END指令。PLC由位址0掃描到END指令,執行之後,返回到位址0重新作掃描執行。結束指令其它指令指令NOP在程序不做任何運算,因此執行後仍會保持原邏輯運算結果,使用時機如下:1.預先保留部份程序記憶空間,作為PLC程序除錯時,可寫入偵錯M0程序。2.想要刪除某一指令,而又不想改變程序長度,則可以NOP指令取代。3.想暫時性的刪除某一指令,先以NOP指令替代。指針(P)指針P用於跳躍指令CJ及子程序呼叫指令CALL,使用不須從編號0開始,但是編號不能重覆使用,否則會發生不可預期的錯誤。使用時機如下所示:1.使用於指令CJ,指示程序執行跳躍的目的位址,並在目的程序的開頭輸入同編號的指針P。如下所示:2.使用於指令CALL,指示子程序的目的位址,並在子程序的開頭輸入同編號的指針P。如下所示:中斷指針(I)1.外部中斷:I001,I101,I201,I301,4點。2.定時中斷:I6□□,1點(□□=10~99,時基=1ms)。3.通訊中斷:I150,1點(特定通訊接收字符中斷)。中斷服務程序必須起始位置必須以中斷指針(IXXX)指示,結束以指令IRET作中斷結束返回,如下圖所示:.將INV指令之前的邏輯運算結果反相存入累計寄存器內。