三菱應(yīng)用指令_第1頁(yè)
三菱應(yīng)用指令_第2頁(yè)
三菱應(yīng)用指令_第3頁(yè)
三菱應(yīng)用指令_第4頁(yè)
三菱應(yīng)用指令_第5頁(yè)
已閱讀5頁(yè),還剩74頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第一節(jié)第一節(jié) 應(yīng)用指令應(yīng)用指令的基本規(guī)則的基本規(guī)則u應(yīng)用指令的表示與執(zhí)行形式應(yīng)用指令的表示與執(zhí)行形式 指令與操作數(shù)指令與操作數(shù) FX2N系列系列PLC的應(yīng)用指令由的應(yīng)用指令由功能編號(hào)功能編號(hào)FNC00FNC246指定指定,各指令有,各指令有表示其內(nèi)容的助記符符號(hào)。應(yīng)用指令多數(shù)情況下將表示其內(nèi)容的助記符符號(hào)。應(yīng)用指令多數(shù)情況下將功能編號(hào)與操作數(shù)組功能編號(hào)與操作數(shù)組合合在一起使用。在一起使用。應(yīng)用指令的應(yīng)用指令的操作數(shù)操作數(shù)包括源操作數(shù)、目的操作數(shù)以及輔助操作數(shù)包括源操作數(shù)、目的操作數(shù)以及輔助操作數(shù) 操作數(shù)可用軟元件操作數(shù)可用軟元件 位軟元件位軟元件:X、Y、M、S等。等。 字軟元件:字軟元件:T

2、、C、D等。等。處理處理ON/OFF信息信息處理數(shù)值處理數(shù)值FX2N系列系列PLC的數(shù)據(jù)寄存器的數(shù)據(jù)寄存器D為為16位,在處理位,在處理32位數(shù)據(jù)時(shí)使用一對(duì)數(shù)據(jù)寄位數(shù)據(jù)時(shí)使用一對(duì)數(shù)據(jù)寄存器的組合。定時(shí)器存器的組合。定時(shí)器T和計(jì)數(shù)器和計(jì)數(shù)器C的當(dāng)前值寄存器可作為一般寄存器處理,的當(dāng)前值寄存器可作為一般寄存器處理,但是,但是,C200C255的的1點(diǎn)是點(diǎn)是32位計(jì)數(shù)器,可直接處理位計(jì)數(shù)器,可直接處理32位數(shù),不能作為位數(shù),不能作為16位指令的操作數(shù)使用。位指令的操作數(shù)使用。又稱(chēng)功能指令,用于數(shù)據(jù)的傳又稱(chēng)功能指令,用于數(shù)據(jù)的傳送、運(yùn)算、變換及程序控制等送、運(yùn)算、變換及程序控制等功能。具有功能。具有1

3、28種種298條條指令的形態(tài)與執(zhí)行形式指令的形態(tài)與執(zhí)行形式 分類(lèi):分類(lèi):根據(jù)根據(jù)處理數(shù)值的位數(shù),處理數(shù)值的位數(shù),應(yīng)用指令可分為應(yīng)用指令可分為16位指令和位指令和32位位指令。指令。 根據(jù)根據(jù)指令的執(zhí)行形式指令的執(zhí)行形式,應(yīng)用指令可分為連續(xù)執(zhí)行型與脈沖執(zhí)行型。應(yīng)用指令可分為連續(xù)執(zhí)行型與脈沖執(zhí)行型。標(biāo)志的標(biāo)志的處理處理 標(biāo)志動(dòng)作:標(biāo)志動(dòng)作:零標(biāo)志(零標(biāo)志(M8020);借位標(biāo)志();借位標(biāo)志(M8021);進(jìn)位標(biāo)志();進(jìn)位標(biāo)志(M8022);); 執(zhí)行結(jié)束(執(zhí)行結(jié)束(M8029)等。)等。 如果在應(yīng)用指令的結(jié)構(gòu)、可用軟元件及其編號(hào)范圍等方面有錯(cuò)誤時(shí),在運(yùn)算執(zhí)行過(guò)如果在應(yīng)用指令的結(jié)構(gòu)、可用軟元件及

4、其編號(hào)范圍等方面有錯(cuò)誤時(shí),在運(yùn)算執(zhí)行過(guò) 程中會(huì)出現(xiàn),下列標(biāo)志位會(huì)動(dòng)作同時(shí)會(huì)記錄程中會(huì)出現(xiàn),下列標(biāo)志位會(huì)動(dòng)作同時(shí)會(huì)記錄出錯(cuò)信息:出錯(cuò)信息: (1) M8067、D8067、D8069 若出現(xiàn)運(yùn)算錯(cuò)誤,若出現(xiàn)運(yùn)算錯(cuò)誤,M8067保持動(dòng)作,運(yùn)算錯(cuò)誤代碼編號(hào)保持動(dòng)作,運(yùn)算錯(cuò)誤代碼編號(hào) 存儲(chǔ)在存儲(chǔ)在D8067中,錯(cuò)誤發(fā)生的步號(hào)存儲(chǔ)在中,錯(cuò)誤發(fā)生的步號(hào)存儲(chǔ)在D8069中。若在其他步發(fā)生新錯(cuò)誤時(shí),中。若在其他步發(fā)生新錯(cuò)誤時(shí), 其指令的出錯(cuò)代碼和步號(hào)將被依次更新。其指令的出錯(cuò)代碼和步號(hào)將被依次更新。 (2) M8068、D8068 若出現(xiàn)運(yùn)算錯(cuò)誤,若出現(xiàn)運(yùn)算錯(cuò)誤,M8068保持動(dòng)作,錯(cuò)誤發(fā)生的步號(hào)存儲(chǔ)在保持動(dòng)

5、作,錯(cuò)誤發(fā)生的步號(hào)存儲(chǔ)在 D8068中。即使其他指令中發(fā)生新錯(cuò)誤也不更新內(nèi)容,在強(qiáng)制復(fù)位或電源斷開(kāi)前中。即使其他指令中發(fā)生新錯(cuò)誤也不更新內(nèi)容,在強(qiáng)制復(fù)位或電源斷開(kāi)前 動(dòng)作一直保持。動(dòng)作一直保持。 對(duì)于對(duì)于32位應(yīng)用指令,其助記符在位應(yīng)用指令,其助記符在16位指令助記符上添加符號(hào)位指令助記符上添加符號(hào)D。 脈沖執(zhí)行型指令的助記符用添加符號(hào)脈沖執(zhí)行型指令的助記符用添加符號(hào)P來(lái)表示。其指令只在驅(qū)動(dòng)條件從來(lái)表示。其指令只在驅(qū)動(dòng)條件從 OFFON變化時(shí)執(zhí)行一次,其他時(shí)刻不執(zhí)行。變化時(shí)執(zhí)行一次,其他時(shí)刻不執(zhí)行。 連續(xù)執(zhí)行型應(yīng)用指令在各掃描周期都執(zhí)行的指令,操作數(shù)的內(nèi)容每個(gè)掃連續(xù)執(zhí)行型應(yīng)用指令在各掃描周期都

6、執(zhí)行的指令,操作數(shù)的內(nèi)容每個(gè)掃 描周期都變化。描周期都變化。 指令使用次數(shù)與同時(shí)驅(qū)動(dòng)的限制指令使用次數(shù)與同時(shí)驅(qū)動(dòng)的限制 有些應(yīng)用指令只能在指定次數(shù)內(nèi)進(jìn)行編程,禁止多次重復(fù)使用。但是可有些應(yīng)用指令只能在指定次數(shù)內(nèi)進(jìn)行編程,禁止多次重復(fù)使用。但是可 以采用變址寄存器來(lái)改變指令內(nèi)的軟元件編號(hào)與數(shù)值,與采用多次控以采用變址寄存器來(lái)改變指令內(nèi)的軟元件編號(hào)與數(shù)值,與采用多次控 制同樣的效果。制同樣的效果。 有些應(yīng)用指令即使能多次編程,也有同時(shí)動(dòng)作點(diǎn)數(shù)的限制。例如:有些應(yīng)用指令即使能多次編程,也有同時(shí)動(dòng)作點(diǎn)數(shù)的限制。例如: FNC53(D HSCH)、)、FNC54(D HSCR)與)與FNC55(D HS

7、Z)指令同)指令同 時(shí)動(dòng)作點(diǎn)數(shù)時(shí)動(dòng)作點(diǎn)數(shù)在在6點(diǎn)以下點(diǎn)以下;FNC80(RS)指令動(dòng)作點(diǎn)數(shù))指令動(dòng)作點(diǎn)數(shù)只能有只能有1點(diǎn)點(diǎn)。浮點(diǎn)運(yùn)算的數(shù)值處理浮點(diǎn)運(yùn)算的數(shù)值處理 功能:功能:更精確地進(jìn)行乘、除和開(kāi)方等運(yùn)算。更精確地進(jìn)行乘、除和開(kāi)方等運(yùn)算。 浮點(diǎn)數(shù)運(yùn)算都是采用浮點(diǎn)數(shù)運(yùn)算都是采用二進(jìn)制浮點(diǎn)數(shù)。二進(jìn)制浮點(diǎn)數(shù)。二進(jìn)制浮點(diǎn)數(shù)采用連續(xù)編號(hào)的一對(duì)數(shù)二進(jìn)制浮點(diǎn)數(shù)采用連續(xù)編號(hào)的一對(duì)數(shù)據(jù)寄存器,按一定規(guī)則表示。據(jù)寄存器,按一定規(guī)則表示。 如圖所示:如圖所示: 以以(D11,D10)為例為例 正負(fù)號(hào)由正負(fù)號(hào)由b31決定決定 不按補(bǔ)碼處理不按補(bǔ)碼處理 二進(jìn)制浮點(diǎn)數(shù)表示方法二進(jìn)制浮點(diǎn)數(shù)表示方法 將二進(jìn)制浮點(diǎn)數(shù)變?yōu)槭M(jìn)制

8、浮點(diǎn)數(shù)。將二進(jìn)制浮點(diǎn)數(shù)變?yōu)槭M(jìn)制浮點(diǎn)數(shù)。D1D010指數(shù)十進(jìn)制浮點(diǎn)數(shù) 尾數(shù)D0100099990尾數(shù) ()或D14135指數(shù)如圖如圖8-28-2所示:所示: D0、D1的最高位為符號(hào)位,的最高位為符號(hào)位, 按按2的補(bǔ)碼處理,的補(bǔ)碼處理,十進(jìn)制浮點(diǎn)數(shù)的最小絕對(duì)值十進(jìn)制浮點(diǎn)數(shù)的最小絕對(duì)值117510-41, 最大絕對(duì)值為最大絕對(duì)值為34021035。 十進(jìn)制浮點(diǎn)數(shù)表示方法十進(jìn)制浮點(diǎn)數(shù)表示方法應(yīng)用指令說(shuō)明應(yīng)用指令說(shuō)明 使用應(yīng)用指令需注意指令的要素。加法指令的形式及要素使用應(yīng)用指令需注意指令的要素。加法指令的形式及要素。 加法指令的使用要素加法指令的使用要素指指令令名名稱(chēng)稱(chēng)指令指令編號(hào)編號(hào)助記符助記符

9、操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S1(可變址可變址)S2(可變址可變址)D加加法法FNC20(16/32)ADD(P)K,HKnX,KnY,KnM,KnST,C,D,V,ZKnY,KnM,KnST,C,D,V,ZADD,ADDP:7步步DADD,DADDP:13步步應(yīng)用指令的使用要素說(shuō)明如下:應(yīng)用指令的使用要素說(shuō)明如下:(1)指令編號(hào)指令編號(hào) 每條應(yīng)用指令都有一個(gè)的編號(hào),上表中每條應(yīng)用指令都有一個(gè)的編號(hào),上表中FNC20就是加法指令的編號(hào)。就是加法指令的編號(hào)。 (2)指令名稱(chēng)指令名稱(chēng) 說(shuō)明應(yīng)用指令的功能。說(shuō)明應(yīng)用指令的功能。(3)助記符助記符 應(yīng)用指令的助記符一般都是該指令的英文縮寫(xiě)詞。如加法指令

10、應(yīng)用指令的助記符一般都是該指令的英文縮寫(xiě)詞。如加法指令 ADDITION簡(jiǎn)寫(xiě)為簡(jiǎn)寫(xiě)為ADD。采用這種形式容易了解指令的應(yīng)用。采用這種形式容易了解指令的應(yīng)用。(4)數(shù)據(jù)長(zhǎng)度數(shù)據(jù)長(zhǎng)度 應(yīng)用指令依處理數(shù)據(jù)的長(zhǎng)度分為應(yīng)用指令依處理數(shù)據(jù)的長(zhǎng)度分為16位指令和位指令和32位指令,在表位指令,在表 中用中用(16/32)說(shuō)明。說(shuō)明。32位指令采用助記符前加位指令采用助記符前加D表示,助記符前無(wú)表示,助記符前無(wú)D的指令的指令 為為16位指令。位指令。(5)執(zhí)行形式執(zhí)行形式 應(yīng)用指令有脈沖執(zhí)行型和連續(xù)執(zhí)行型。脈沖執(zhí)行型應(yīng)用指令應(yīng)用指令有脈沖執(zhí)行型和連續(xù)執(zhí)行型。脈沖執(zhí)行型應(yīng)用指令 采用助記符后加采用助記符后加P表

11、示,助記符后無(wú)表示,助記符后無(wú)P的指令為連續(xù)執(zhí)行型。的指令為連續(xù)執(zhí)行型。(6)操作數(shù)操作數(shù) 應(yīng)用指令的操作數(shù)分為源操作數(shù)應(yīng)用指令的操作數(shù)分為源操作數(shù)S、目的操作數(shù)、目的操作數(shù)D和輔助操作數(shù)和輔助操作數(shù) m、n。源操作數(shù)、目的操作數(shù)和輔助操作數(shù)多于。源操作數(shù)、目的操作數(shù)和輔助操作數(shù)多于1個(gè)時(shí)分別用個(gè)時(shí)分別用S1、S2, D1、D2以及以及m1、m2,n1、n2表示。表示。(7)指令步數(shù)指令步數(shù) 指令步數(shù)為執(zhí)行該指令所需的程序步數(shù)。應(yīng)用指令的指令編指令步數(shù)為執(zhí)行該指令所需的程序步數(shù)。應(yīng)用指令的指令編 號(hào)和指令助記符占一個(gè)程序步,每個(gè)操作數(shù)占號(hào)和指令助記符占一個(gè)程序步,每個(gè)操作數(shù)占2個(gè)或個(gè)或4個(gè)程序

12、步(個(gè)程序步(16位操作位操作 數(shù)和數(shù)和32位操作數(shù)分別占位操作數(shù)分別占2個(gè)和個(gè)和4個(gè)程序步)。因此,一般個(gè)程序步)。因此,一般16位指令為位指令為7個(gè)程個(gè)程 序步,序步,32位指令為位指令為13個(gè)程序步。個(gè)程序步。 第二節(jié)第二節(jié) 三菱三菱FX2N系列系列PLC程序程序流程控制應(yīng)用指令流程控制應(yīng)用指令 三菱三菱FX2N系列系列PLC程序流程控制應(yīng)用指令程序流程控制應(yīng)用指令共有十條,共有十條,指令編號(hào)為指令編號(hào)為FNC00FNC09。它們?cè)诔绦蛑械臈l件執(zhí)行與優(yōu)先處理,與順控程序的它們?cè)诔绦蛑械臈l件執(zhí)行與優(yōu)先處理,與順控程序的控制流程有關(guān)??刂屏鞒逃嘘P(guān)。 u 條件跳轉(zhuǎn)指令條件跳轉(zhuǎn)指令 條件跳轉(zhuǎn)指令

13、條件跳轉(zhuǎn)指令CJ(Conditional Jump,F(xiàn)NC00):用于跳過(guò)順序程序中):用于跳過(guò)順序程序中的某一部分,以控制程序的流程。的某一部分,以控制程序的流程。指針指針P(Point)用于指示分支和跳步程用于指示分支和跳步程序,在梯形圖中,指針?lè)旁谧髠?cè)母線的左邊。使用要素說(shuō)明見(jiàn)表。序,在梯形圖中,指針?lè)旁谧髠?cè)母線的左邊。使用要素說(shuō)明見(jiàn)表。 條件跳轉(zhuǎn)指令的使用要素條件跳轉(zhuǎn)指令的使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記助記符符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)D條件條件跳轉(zhuǎn)跳轉(zhuǎn)FNC00(16)CJ(P)P0P127P63即是即是END所在步,不需標(biāo)記所在步,不需標(biāo)記CJ,CJP:3步步標(biāo)號(hào)標(biāo)

14、號(hào)P:1步步 使用跳轉(zhuǎn)指令可以縮短掃描周期。使用跳轉(zhuǎn)指令可以縮短掃描周期。 一個(gè)指針只能出現(xiàn)一次。一個(gè)指針只能出現(xiàn)一次。如圖,如圖, X000為為ON時(shí),時(shí),程序跳到指針程序跳到指針P8處。處。 X000為為OFF時(shí),時(shí),不執(zhí)行跳轉(zhuǎn),程序按原順序執(zhí)行。不執(zhí)行跳轉(zhuǎn),程序按原順序執(zhí)行。 如果用如果用M8000的常開(kāi)觸點(diǎn)驅(qū)動(dòng)的常開(kāi)觸點(diǎn)驅(qū)動(dòng)CJ指令,相當(dāng)于無(wú)條指令,相當(dāng)于無(wú)條 件跳轉(zhuǎn)指令,因?yàn)檫\(yùn)行時(shí)件跳轉(zhuǎn)指令,因?yàn)檫\(yùn)行時(shí)特殊輔助寄存器特殊輔助寄存器M8000總總 是是ON。 若輸出繼電器若輸出繼電器Y、輔助繼電器、輔助繼電器M、狀態(tài)、狀態(tài)S被被OUT、 SET、RST指令驅(qū)動(dòng),跳轉(zhuǎn)期間即使驅(qū)動(dòng)指令驅(qū)動(dòng)

15、,跳轉(zhuǎn)期間即使驅(qū)動(dòng)Y、M、S的電路狀態(tài)改變了,它們?nèi)员3痔D(zhuǎn)前的狀態(tài)的電路狀態(tài)改變了,它們?nèi)员3痔D(zhuǎn)前的狀態(tài)。 條件跳轉(zhuǎn)指令及說(shuō)明條件跳轉(zhuǎn)指令及說(shuō)明 定時(shí)器定時(shí)器T和計(jì)數(shù)器和計(jì)數(shù)器C如果被如果被CJ指令跳過(guò),跳轉(zhuǎn)期間它們的當(dāng)前值將被保指令跳過(guò),跳轉(zhuǎn)期間它們的當(dāng)前值將被保 存。如果在跳轉(zhuǎn)開(kāi)始時(shí)定時(shí)器和計(jì)數(shù)器正在工作,在跳轉(zhuǎn)期間它們將停存。如果在跳轉(zhuǎn)開(kāi)始時(shí)定時(shí)器和計(jì)數(shù)器正在工作,在跳轉(zhuǎn)期間它們將停 止定時(shí)和計(jì)數(shù)。止定時(shí)和計(jì)數(shù)。 T192T199和高速計(jì)數(shù)器和高速計(jì)數(shù)器C235C255如果在驅(qū)動(dòng)后跳轉(zhuǎn),則繼續(xù)工作,如果在驅(qū)動(dòng)后跳轉(zhuǎn),則繼續(xù)工作, 輸出觸點(diǎn)也會(huì)動(dòng)作。輸出觸點(diǎn)也會(huì)動(dòng)作。 如果從如果從主令

16、控制區(qū)主令控制區(qū)的外部跳入其內(nèi)部,不管它的主控觸點(diǎn)是否接通,都的外部跳入其內(nèi)部,不管它的主控觸點(diǎn)是否接通,都 把它當(dāng)成接通來(lái)執(zhí)行主令控制區(qū)內(nèi)的程序。如果跳轉(zhuǎn)指令和標(biāo)號(hào)都在同把它當(dāng)成接通來(lái)執(zhí)行主令控制區(qū)內(nèi)的程序。如果跳轉(zhuǎn)指令和標(biāo)號(hào)都在同 一主控區(qū)內(nèi),主控觸點(diǎn)沒(méi)有接通時(shí)不執(zhí)行跳轉(zhuǎn)。一主控區(qū)內(nèi),主控觸點(diǎn)沒(méi)有接通時(shí)不執(zhí)行跳轉(zhuǎn)。 u子程序調(diào)用與返回指令子程序調(diào)用與返回指令 子程序調(diào)用指令子程序調(diào)用指令CALL(Sub-Routine Call,F(xiàn)NC01)。)。 子程序返回指令子程序返回指令SRET(Sub-Routine Return,F(xiàn)NC02)。)。 子程序調(diào)用與返回指令的使用要素子程序調(diào)用與返回

17、指令的使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)D子程序子程序調(diào)用調(diào)用FNC01(16)CALL(P)指針指針P0P62,P64P127嵌套嵌套5級(jí)級(jí)CALL,CALLP:3步步標(biāo)號(hào)標(biāo)號(hào)P:1步步子程序子程序返回返回FNC02SRET無(wú)無(wú)1步步在指令在指令CALL中:中: 各子程序用指針各子程序用指針P0P62及及P64P127表示。表示。 同一指針只能出現(xiàn)一次。同一指針只能出現(xiàn)一次。 CJ指令中用過(guò)的指針不能再用。指令中用過(guò)的指針不能再用。 不同位置的不同位置的CALL指令可以調(diào)用同一指針的子程序。指令可以調(diào)用同一指針的子程序。在指令在指令SRET中無(wú)操

18、作數(shù)。中無(wú)操作數(shù)。 圖中,圖中, X001是子程序執(zhí)行的條件,當(dāng)是子程序執(zhí)行的條件,當(dāng)X001置置1時(shí),調(diào)用指時(shí),調(diào)用指 針標(biāo)號(hào)為針標(biāo)號(hào)為P10的子程序一次,即程序?qū)⑻街羔樀淖映绦蛞淮?,即程序?qū)⑻街羔?P10處執(zhí)行。處執(zhí)行。 在子程序中調(diào)用子程序稱(chēng)為嵌套調(diào)用,最多可以嵌在子程序中調(diào)用子程序稱(chēng)為嵌套調(diào)用,最多可以嵌 套套5級(jí)。級(jí)。 在執(zhí)行子程序在執(zhí)行子程序1時(shí),如果時(shí),如果X030為為ON,CALL P11指指 令被執(zhí)行,程序跳到令被執(zhí)行,程序跳到P11處,嵌套執(zhí)行子程序處,嵌套執(zhí)行子程序2。 執(zhí)行第二條執(zhí)行第二條SRET指令后,返回子程序指令后,返回子程序1中中CALL P11 指令的下一

19、條指令,執(zhí)行第一條指令的下一條指令,執(zhí)行第一條SRET指令后指令后 返回主程序中返回主程序中CALLP P10指令的下一條指令。指令的下一條指令。 因?yàn)樽映绦蚴情g歇使用的,在子程序中使用的定時(shí)因?yàn)樽映绦蚴情g歇使用的,在子程序中使用的定時(shí) 器應(yīng)在器應(yīng)在T192T199和和T246T249之間選擇。之間選擇。 子程序的調(diào)用與返回子程序的調(diào)用與返回u中斷指令中斷指令 中斷事件:中斷事件:輸入中斷、定時(shí)中斷和高速計(jì)數(shù)器中斷。輸入中斷、定時(shí)中斷和高速計(jì)數(shù)器中斷。 中斷指令:中斷指令:中斷返回中斷返回IRET(Interruption Return)。)。 允許中斷允許中斷EI(Interruption

20、Enable)。)。 禁止中斷禁止中斷DI(Interruption Disable)。)。中斷指令的使用要素中斷指令的使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)D中斷返回中斷返回FNC03IRET無(wú)無(wú)1步步中斷允許中斷允許FNC04EI無(wú)無(wú)1步步中斷禁止中斷禁止FNC05DI無(wú)無(wú)1步步 用于中斷的用于中斷的指針指針用來(lái)指明某一中斷源的中斷程序的入口,用來(lái)指明某一中斷源的中斷程序的入口, 執(zhí)行到執(zhí)行到IRET(中斷返回)指令(中斷返回)指令時(shí)返回中斷事件出現(xiàn)時(shí)正在執(zhí)行的程序。時(shí)返回中斷事件出現(xiàn)時(shí)正在執(zhí)行的程序。 中斷指針應(yīng)在中斷指針應(yīng)在FEND指令指令之后

21、使用。之后使用。輸入中斷輸入中斷用來(lái)接收特定的輸入地址號(hào)的輸入信號(hào),用來(lái)接收特定的輸入地址號(hào)的輸入信號(hào),輸入中斷指針輸入中斷指針I(yè)0。 最高位最高位與與X000X005的元件號(hào)相對(duì)應(yīng),單元的輸入號(hào)為的元件號(hào)相對(duì)應(yīng),單元的輸入號(hào)為05(從(從X000 X005輸入)。最低位輸入)。最低位為為0時(shí)表示下降沿中斷,反之為上升沿中斷。時(shí)表示下降沿中斷,反之為上升沿中斷。 定時(shí)器中斷指針定時(shí)器中斷指針為為I6I8,低兩位是以,低兩位是以ms為單位定時(shí)時(shí)間(為單位定時(shí)時(shí)間(1 99ms)。)。計(jì)數(shù)器中斷指針計(jì)數(shù)器中斷指針為為I00(16)。計(jì)數(shù)器中斷與)。計(jì)數(shù)器中斷與HSCS(高速計(jì)數(shù)器比(高速計(jì)數(shù)器比

22、較置位)指令配合使用,根據(jù)高速計(jì)數(shù)器的計(jì)數(shù)當(dāng)前值與計(jì)數(shù)設(shè)定值的關(guān)較置位)指令配合使用,根據(jù)高速計(jì)數(shù)器的計(jì)數(shù)當(dāng)前值與計(jì)數(shù)設(shè)定值的關(guān) 系來(lái)確定是否執(zhí)行相應(yīng)的中斷服務(wù)程序。系來(lái)確定是否執(zhí)行相應(yīng)的中斷服務(wù)程序。 中斷指令在梯形圖中的表示如圖所示。中斷指令在梯形圖中的表示如圖所示。 PLC通常處于禁止中斷的狀態(tài),指令通常處于禁止中斷的狀態(tài),指令EI和和DI之間的之間的 程序段為允許中斷的區(qū)間,若程序執(zhí)行到中斷子程序段為允許中斷的區(qū)間,若程序執(zhí)行到中斷子 程序中程序中IRET指令指令時(shí),返回原斷點(diǎn),繼續(xù)執(zhí)行原來(lái)時(shí),返回原斷點(diǎn),繼續(xù)執(zhí)行原來(lái) 的程序。的程序。 中斷程序從它惟一的中斷指針中斷程序從它惟一的中斷

23、指針開(kāi)始開(kāi)始,到第一條,到第一條IRET 指令指令結(jié)束。結(jié)束。 中斷程序中斷程序應(yīng)放在應(yīng)放在FEND指令之后,指令之后,IRET指令只能在中指令只能在中 斷程序中使用。斷程序中使用。 特殊輔助繼電器特殊輔助繼電器M805為為ON時(shí)時(shí)(=08),禁止執(zhí)行,禁止執(zhí)行 相應(yīng)的中斷相應(yīng)的中斷I(是與中斷有關(guān)的數(shù)字)。是與中斷有關(guān)的數(shù)字)。 M8059ON時(shí),時(shí),關(guān)閉所有的計(jì)數(shù)器中斷。關(guān)閉所有的計(jì)數(shù)器中斷。 如果有多個(gè)中斷信號(hào)依次發(fā)出,則如果有多個(gè)中斷信號(hào)依次發(fā)出,則優(yōu)先級(jí)優(yōu)先級(jí)按發(fā)生的按發(fā)生的 先后為序,發(fā)生越早的優(yōu)先級(jí)越高。先后為序,發(fā)生越早的優(yōu)先級(jí)越高。中斷指令在梯形圖中的表示中斷指令在梯形圖中的

24、表示 若同時(shí)發(fā)生多個(gè)中斷信號(hào),若同時(shí)發(fā)生多個(gè)中斷信號(hào),則中斷指針號(hào)小的優(yōu)先。則中斷指針號(hào)小的優(yōu)先。 執(zhí)行一個(gè)中斷子程序時(shí),執(zhí)行一個(gè)中斷子程序時(shí),其他中斷被禁止,在中斷子程序中編入其他中斷被禁止,在中斷子程序中編入EI和和DI, 可以實(shí)現(xiàn)雙重中斷,只允許兩級(jí)中斷嵌套??梢詫?shí)現(xiàn)雙重中斷,只允許兩級(jí)中斷嵌套。 如果中斷信號(hào)在禁止中斷區(qū)間出現(xiàn)如果中斷信號(hào)在禁止中斷區(qū)間出現(xiàn),該中斷信號(hào)被儲(chǔ)存,并在,該中斷信號(hào)被儲(chǔ)存,并在EI指令之后指令之后 響應(yīng)該中斷。響應(yīng)該中斷。不需要關(guān)中斷時(shí),不需要關(guān)中斷時(shí),只使用只使用EI指令,可以不使用指令,可以不使用DI指令。指令。 u主程序結(jié)束指令主程序結(jié)束指令 主程序結(jié)束

25、指令主程序結(jié)束指令FENDFEND(First EndFirst End,F(xiàn)NC06FNC06):表示主程序的結(jié)束和子程):表示主程序的結(jié)束和子程 序的開(kāi)始,使用要素說(shuō)明見(jiàn)表。序的開(kāi)始,使用要素說(shuō)明見(jiàn)表。 主程序結(jié)束指令的使用要素主程序結(jié)束指令的使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)D主程序結(jié)束主程序結(jié)束FNC06FEND無(wú)無(wú)1步步主程序結(jié)束指令的應(yīng)用舉例。主程序結(jié)束指令的應(yīng)用舉例。 當(dāng)當(dāng)X010為為OFF時(shí),時(shí),不執(zhí)行跳轉(zhuǎn)指令,僅執(zhí)行主程序;不執(zhí)行跳轉(zhuǎn)指令,僅執(zhí)行主程序; 當(dāng)當(dāng)X010為為ON時(shí),時(shí),執(zhí)行跳轉(zhuǎn)指令,跳到指針標(biāo)號(hào)執(zhí)行跳轉(zhuǎn)指令,跳到指針標(biāo)

26、號(hào)P20 處,執(zhí)行第二個(gè)主程序。處,執(zhí)行第二個(gè)主程序。 在第二個(gè)主程序中,在第二個(gè)主程序中,若若X011為為OFF,僅執(zhí)行第二個(gè)主僅執(zhí)行第二個(gè)主 程序,程序,若若X011為為ON,調(diào)用指針標(biāo)號(hào)為調(diào)用指針標(biāo)號(hào)為P21的程序。的程序。 結(jié)束后,通過(guò)結(jié)束后,通過(guò)SRET指令返回原斷點(diǎn),繼續(xù)執(zhí)行第二指令返回原斷點(diǎn),繼續(xù)執(zhí)行第二 個(gè)主程序。個(gè)主程序。 主程序結(jié)束指令的應(yīng)用主程序結(jié)束指令的應(yīng)用注意事項(xiàng):注意事項(xiàng): 執(zhí)行到執(zhí)行到FEND指令時(shí)指令時(shí)PLC進(jìn)行輸入輸出處理、監(jiān)控定時(shí)器刷新,完成后返回進(jìn)行輸入輸出處理、監(jiān)控定時(shí)器刷新,完成后返回 第第0步。步。 子程序(包括中斷子程序)應(yīng)放在子程序(包括中斷子程

27、序)應(yīng)放在FEND指令之后。指令之后。 CALL指令調(diào)用的子程序必須用指令調(diào)用的子程序必須用SRET指令結(jié)束。指令結(jié)束。 中斷子程序必須以中斷子程序必須以IRET指令結(jié)束。指令結(jié)束。 若若FEND指令在指令在CALL指令執(zhí)行之后和指令執(zhí)行之后和SRET指令執(zhí)行之前出現(xiàn),則程序出錯(cuò)。指令執(zhí)行之前出現(xiàn),則程序出錯(cuò)。 另一個(gè)類(lèi)似的錯(cuò)誤是另一個(gè)類(lèi)似的錯(cuò)誤是FEND指令出現(xiàn)在指令出現(xiàn)在FORNEXT循環(huán)中。循環(huán)中。 使用多條使用多條FEND指令時(shí),中斷程序應(yīng)放在最后的指令時(shí),中斷程序應(yīng)放在最后的FEND指令和指令和END指令之間。指令之間。 u監(jiān)控定時(shí)器指令監(jiān)控定時(shí)器指令 監(jiān)控定時(shí)器指令的使用要素監(jiān)控定

28、時(shí)器指令的使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)D監(jiān)控定時(shí)器監(jiān)控定時(shí)器FNC07WDT(P)無(wú)無(wú)1步步監(jiān)控定時(shí)器指令監(jiān)控定時(shí)器指令WDT(WATCHDOG TIMER) 圖示是通過(guò)順序程序改變其值。監(jiān)控定時(shí)器時(shí)間更新應(yīng)在圖示是通過(guò)順序程序改變其值。監(jiān)控定時(shí)器時(shí)間更新應(yīng)在WDT指令不編入指令不編入程序的情況下,程序的情況下,END處理時(shí),處理時(shí),D8000值才有效。值才有效。 監(jiān)控定時(shí)器指令的應(yīng)用監(jiān)控定時(shí)器指令的應(yīng)用 u程序循環(huán)指令程序循環(huán)指令 程序循環(huán)指令程序循環(huán)指令由由FOR 及及NEXT兩條指令構(gòu)成。使用要素說(shuō)明見(jiàn)表。兩條指令構(gòu)成。使用要素說(shuō)明見(jiàn)表

29、。 程序循環(huán)指令的使用要素程序循環(huán)指令的使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記助記符符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S循環(huán)開(kāi)始循環(huán)開(kāi)始FNC08(16)FORK,HKnX,KnY,KnM,KnST,C,D,V,Z3步步循環(huán)結(jié)束循環(huán)結(jié)束FNC09NEXT無(wú)無(wú)1步步圖中圖中,外層循環(huán)程序,外層循環(huán)程序A嵌套了內(nèi)層循環(huán)嵌套了內(nèi)層循環(huán)B,循環(huán),循環(huán)A執(zhí)行執(zhí)行5次,每執(zhí)行一次循環(huán)次,每執(zhí)行一次循環(huán)A,就要執(zhí)行,就要執(zhí)行10次循環(huán)次循環(huán)B,因此循,因此循環(huán)環(huán)B一共要執(zhí)行一共要執(zhí)行50次。利用循環(huán)中的次。利用循環(huán)中的CJ指令可以跳出指令可以跳出FORNEXT之間的循環(huán)區(qū)。之間的循環(huán)區(qū)。 FOR 指令表示

30、循環(huán)區(qū)的起點(diǎn),指令表示循環(huán)區(qū)的起點(diǎn),NEXT表示循環(huán)區(qū)終表示循環(huán)區(qū)終 點(diǎn),點(diǎn),F(xiàn)OR與與NEXT之間的程序被之間的程序被反復(fù)執(zhí)行,反復(fù)執(zhí)行,執(zhí)行完執(zhí)行完 后,執(zhí)行后,執(zhí)行NEXT后面的指令。執(zhí)行次數(shù)后面的指令。執(zhí)行次數(shù)N(N1 32767)由由FOR指令的源操作數(shù)設(shè)定。指令的源操作數(shù)設(shè)定。如果如果N為負(fù)數(shù),為負(fù)數(shù), 當(dāng)作當(dāng)作N1處理。處理。FOR與與NEXT循環(huán)可以循環(huán)可以嵌套嵌套5層。層。FOR與與NEXT指令總是成對(duì)指令總是成對(duì)使用使用循環(huán)指令使用說(shuō)明循環(huán)指令使用說(shuō)明第三節(jié)第三節(jié) 三菱三菱FX2N系列系列PLC傳送與比較應(yīng)用指令傳送與比較應(yīng)用指令 FX2N系列系列PLC 的數(shù)據(jù)傳送、比較類(lèi)

31、指令的數(shù)據(jù)傳送、比較類(lèi)指令共共10條條,指令功能編號(hào)為,指令功能編號(hào)為FNC10FNC19。 比較指令:比較指令:比較比較CMP(Compare) 區(qū)間比較區(qū)間比較ZCP(Zone Compare)使用要素說(shuō)明見(jiàn)表。使用要素說(shuō)明見(jiàn)表。 u程序循環(huán)指令程序循環(huán)指令 比較指令的使用要素比較指令的使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S1(可變址可變址)S2(可變址可變址)D比較比較FNC10(16/32)CMP(P)K,HKnX,KnY,KnM,KnST,C,D,V,ZY, M, SCMP, CMPP:7步步DCMP,DCMPP:13步步指令指令名稱(chēng)名稱(chēng)指

32、令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S1(可變址可變址)S2(可變址可變址)S(可變址可變址)D區(qū)間區(qū)間比較比較FNC11(16/32)ZCP(P)K,HKnX,KnY,KnM,KnST,C,D,V,ZY, M, SZCP, ZCPP:9步步DZCP,DZCPP:17步步圖圖a中的比較指令將十進(jìn)制常數(shù)中的比較指令將十進(jìn)制常數(shù)100與計(jì)數(shù)器與計(jì)數(shù)器C10的當(dāng)前值比較,比較結(jié)的當(dāng)前值比較,比較結(jié)果送到果送到M0M2。 X000為為OFF時(shí)時(shí)不進(jìn)行比較,不進(jìn)行比較,M0M2的狀態(tài)保持不變。的狀態(tài)保持不變。 X000為為ON時(shí)時(shí)進(jìn)行比較,比較的結(jié)果對(duì)進(jìn)行比較,比較的結(jié)果對(duì)M0M2的影

33、響如圖的影響如圖8-9a所示。所示。 S1S2 時(shí),僅時(shí),僅M0為為ON;若;若S1S2,僅,僅M1為為ON;若;若S1S2,僅,僅M2為為ON。 所有的源數(shù)據(jù)都被視為所有的源數(shù)據(jù)都被視為二進(jìn)制數(shù)二進(jìn)制數(shù)進(jìn)行處理。進(jìn)行處理。 圖圖b b中:中: X002為為ON時(shí),時(shí),執(zhí)行執(zhí)行ZCP指令,將指令,將T3的當(dāng)前值與常數(shù)的當(dāng)前值與常數(shù)100和和150相比較,比較相比較,比較 結(jié)果送到結(jié)果送到M3M5,源數(shù)據(jù),源數(shù)據(jù)S1不能大于源數(shù)據(jù)不能大于源數(shù)據(jù)S2。 X002斷開(kāi)時(shí),斷開(kāi)時(shí),ZCP指令不執(zhí)行,指令不執(zhí)行,M3M5保持保持X002斷開(kāi)前的狀態(tài)。斷開(kāi)前的狀態(tài)。 比較指令使用說(shuō)明比較指令使用說(shuō)明u傳送

34、指令傳送指令 傳送傳送MOV(Move) BCD碼移位送碼移位送SMOV(Shift Move) 取反傳送取反傳送CML(Complement Move) 傳送、移位傳送、取反傳送指令傳送、移位傳送、取反傳送指令指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S(可變址可變址)D(可變址可變址)傳送傳送FNC12(16/32)MOV(P)K,HKnX,KnY,KnM,KnST,C,D,V,ZKnY,KnM,KnST,C,D,V,ZMOV, MOVP:5步步DMOV,DMOVP:9步步取反取反傳送傳送FNC14(16/32)CML(P)K,HKnX,KnY,KnM,KnS

35、T,C,D,V,ZKnY,KnM,KnST,C,D,V,ZCML、CMLP:5步步DCML、DCMLP:9步步指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S(可變址可變址)m1m2D(可變址可變址)n移位移位傳送傳送FNC13(16)SMOV(P)KnX,KnY,KnM,KnST,C,D,V,ZK,H=14K,H=14KnY,KnM,KnST,C,D,V,ZK,H=14SMOV, SMOVP:11步步 數(shù)據(jù)塊傳送數(shù)據(jù)塊傳送BMOV(Block Move) 多點(diǎn)傳送多點(diǎn)傳送FMOV(Fill Move) 數(shù)據(jù)交換數(shù)據(jù)交換XCH(Exchange)傳送指令:傳送指令:傳

36、送、移位傳送、取反傳送指令的使用要素傳送、移位傳送、取反傳送指令的使用要素 傳送指令傳送指令MOV將源數(shù)據(jù)傳送到指定目的。將源數(shù)據(jù)傳送到指定目的。 取反傳送指令取反傳送指令CML將源元件中的數(shù)據(jù)逐位取反(將源元件中的數(shù)據(jù)逐位取反(10,01),并傳送到),并傳送到 指定目的。指定目的。 移位傳送指令移位傳送指令SMOV是進(jìn)行數(shù)據(jù)分配與合成的指令,將是進(jìn)行數(shù)據(jù)分配與合成的指令,將4位位BCD十進(jìn)制源數(shù)據(jù)十進(jìn)制源數(shù)據(jù) S中指定位數(shù)的數(shù)據(jù)傳送到中指定位數(shù)的數(shù)據(jù)傳送到4位十進(jìn)制目的操作數(shù)位十進(jìn)制目的操作數(shù)D中指定的位置。中指定的位置。圖中:圖中: MOV指令:指令:X001為為ON時(shí),時(shí),源操作數(shù)中的

37、常數(shù)源操作數(shù)中的常數(shù)100被傳送到目的操作數(shù)軟元被傳送到目的操作數(shù)軟元 件件D10中,并自動(dòng)轉(zhuǎn)換為二進(jìn)制數(shù);中,并自動(dòng)轉(zhuǎn)換為二進(jìn)制數(shù);當(dāng)當(dāng)X000斷開(kāi),斷開(kāi),指令不執(zhí)行時(shí),指令不執(zhí)行時(shí),D10中中 的數(shù)據(jù)保持不變。的數(shù)據(jù)保持不變。 CML指令:指令:將將D0的低的低4位取反后傳送到位取反后傳送到Y(jié)003Y000中。中。 SMOV指令:指令:X000為為ON時(shí),時(shí),將將D1中轉(zhuǎn)換后的中轉(zhuǎn)換后的BCD碼右起第碼右起第4位(位(m1=4)開(kāi)始)開(kāi)始的的2位(位(m2=2)移到)移到目的操作數(shù)目的操作數(shù)D2的右起的右起第第3位(位(n=3)和第)和第2位,然后位,然后D2中的中的BCD碼自動(dòng)轉(zhuǎn)換為二進(jìn)

38、制碼自動(dòng)轉(zhuǎn)換為二進(jìn)制碼,碼,D2中的中的BCD碼的碼的第第1位和第位和第4位不受移位不受移位傳送指令的影響。位傳送指令的影響。 傳送、移位傳送與取反指令傳送、移位傳送與取反指令數(shù)據(jù)塊傳送、多點(diǎn)傳送、數(shù)據(jù)交換指令數(shù)據(jù)塊傳送、多點(diǎn)傳送、數(shù)據(jù)交換指令 數(shù)據(jù)塊傳送、多點(diǎn)傳送、數(shù)據(jù)交換指令的使用要素?cái)?shù)據(jù)塊傳送、多點(diǎn)傳送、數(shù)據(jù)交換指令的使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S(可變址可變址)D(可變址可變址)n塊塊傳送傳送FNC15(16)BMOV(P)KnX,KnY,KnM,KnST,C,DKnY,KnM,KnST,C,DK,H512BMOV, BMOVP:7步

39、步多點(diǎn)多點(diǎn)傳送傳送FNC16(16/32)FMOV(P)K,HKnX,KnY,KnM,KnST,C,D,V,ZKnY,KnM,KnST,C,DK,H512FMOV, FMOVP:7步步DFMOV, DFMOVP:13步步指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S(可變址可變址)D(可變址可變址)數(shù)據(jù)數(shù)據(jù)交換交換FNC17(16/32)XCH(P)KnY,KnM,KnST,C,D,V,ZKnY,KnM,KnST,C,D,V,ZXCH, XCHP:5步步DXCH、DXCHP:9步步如圖所示:如圖所示: BMOV指令:指令:源文件與目標(biāo)文件的類(lèi)型相同時(shí)的傳送順序。源文

40、件與目標(biāo)文件的類(lèi)型相同時(shí)的傳送順序。 FMOV指令:指令:X002為為ON時(shí)將常數(shù)時(shí)將常數(shù)0送到送到D5D14這這10個(gè)(個(gè)(n=10)數(shù)據(jù)寄存器中。)數(shù)據(jù)寄存器中。 XCH指令:指令:數(shù)據(jù)在指定的目的元件數(shù)據(jù)在指定的目的元件D1和和D2之間交換,交換指令一般采用脈沖之間交換,交換指令一般采用脈沖 執(zhí)行方式。執(zhí)行方式。 數(shù)據(jù)塊傳送、多點(diǎn)傳送、數(shù)據(jù)交換指令數(shù)據(jù)塊傳送、多點(diǎn)傳送、數(shù)據(jù)交換指令u數(shù)據(jù)變換指令數(shù)據(jù)變換指令 數(shù)據(jù)變換指令:數(shù)據(jù)變換指令: 二進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)轉(zhuǎn)換成BCD碼并傳送碼并傳送BCD(Binary Code to Decimal) BCD碼轉(zhuǎn)換為二進(jìn)制數(shù)并傳送碼轉(zhuǎn)換為二進(jìn)制數(shù)并

41、傳送BIN(Binary)指令。)指令。 數(shù)據(jù)變換指令的使用要素?cái)?shù)據(jù)變換指令的使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S(可變址可變址)D(可變址可變址)BCD轉(zhuǎn)換轉(zhuǎn)換FNC18(16/32)BCD(P)KnX,KnY,KnM,KnST,C,D,V,ZKnY,KnM,KnST,C,D,V,ZBCD, BCDP:5步步DBCD、DBCDP:9步步BIN轉(zhuǎn)換轉(zhuǎn)換FNC19(16/32)BIN(P)KnX,KnY,KnM,KnST,C,D,V,ZKnY,KnM,KnST,C,D,V,ZBIN, BINP:5步步DBIN、DBINP:9步步如圖所示,如圖所示,當(dāng)

42、當(dāng)X000為為ON時(shí)時(shí),源元件,源元件D10中的二進(jìn)制數(shù)轉(zhuǎn)換中的二進(jìn)制數(shù)轉(zhuǎn)換成成BCD碼送到目標(biāo)元件碼送到目標(biāo)元件D11中。中。 第四節(jié)第四節(jié) 三菱三菱FX2NFX2N系列系列PLCPLC算術(shù)及邏輯運(yùn)算算術(shù)及邏輯運(yùn)算應(yīng)用指令應(yīng)用指令u算術(shù)運(yùn)算指令算術(shù)運(yùn)算指令 算術(shù)運(yùn)算:算術(shù)運(yùn)算:二進(jìn)制加二進(jìn)制加ADD(Addition)、減)、減SUB(Subtraction)、)、 乘乘MUL(Multiplication)、除)、除DIV(Division)。)。 算術(shù)運(yùn)算指令的使用要素算術(shù)運(yùn)算指令的使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S1(可變址可變址)S2(

43、可變址可變址)D(可變址可變址)加法加法FNC20(16/32)ADD(P)K,HKnX,KnY,KnM,KnST,C,D,V,ZKnY,KnM,KnST,C,D,V,ZADD, ADDP:7步步DADD,DADDP:13步步減法減法FNC21(16/32)SUB(P)K,HKnX,KnY,KnM,KnST,C,D,V,ZKnY,KnM,KnST,C,D,V,ZSUB, SUBP:7步步DSUB,DSUBP:13步步乘法乘法FNC22(16/32)MUL(P)K,HKnX,KnY,KnM,KnST,C,D,V,ZKnY,KnM,KnST,C,DV,Z(限限16位位)MUL, MULP:7步步D

44、MUL,DMULP:13步步除法除法FNC23(16/32)DIV(P)K,HKnX,KnY,KnM,KnST,C,D,V,ZKnY,KnM,KnST,C,DV,Z(限限16位位)DIV, DIVP:7步步DDIV,DDIVP:13步步實(shí)現(xiàn)數(shù)據(jù)的傳送、變位及其他控制功能實(shí)現(xiàn)數(shù)據(jù)的傳送、變位及其他控制功能 如圖所示:如圖所示: X000為為ON時(shí),時(shí),執(zhí)行(執(zhí)行(D10)()(D12)(D14)。)。 X001由由OFF變?yōu)樽優(yōu)镺N時(shí),時(shí),執(zhí)行(執(zhí)行(D0)22 (D0) X002為為ON時(shí),時(shí),執(zhí)行(執(zhí)行(D0)(D2)(D5、D4),乘積,乘積 的低位字送到的低位字送到D4,高位字送到,高位

45、字送到D5。 X003為為ON時(shí),時(shí),執(zhí)行執(zhí)行32位除法運(yùn)算,(位除法運(yùn)算,(D7、D6)/(D9、D8),商送到(),商送到(D3、D2),余數(shù)送到(),余數(shù)送到(D5、 D4)。如果除數(shù)只有一個(gè)字(假設(shè)放在)。如果除數(shù)只有一個(gè)字(假設(shè)放在D8中),中), 32位除法運(yùn)算之前應(yīng)先將除數(shù)的高位字位除法運(yùn)算之前應(yīng)先將除數(shù)的高位字D9清零。清零。 算術(shù)運(yùn)算指令說(shuō)明算術(shù)運(yùn)算指令說(shuō)明u二進(jìn)制數(shù)加二進(jìn)制數(shù)加1 1、減、減1 1指令指令 二進(jìn)制數(shù)加二進(jìn)制數(shù)加1 1指令指令I(lǐng)NCINC(IncrementIncrement)和減)和減1 1指令指令DECDEC(DecrementDecrement) 二進(jìn)制

46、數(shù)加二進(jìn)制數(shù)加1、減、減1指令指令的使用要素指令指令的使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)D(可變址可變址)加加1FNC24(16/32)INC(P)KnY,KnM,KnST,C,D,V,ZINC、INCP:3步步DINC、DINCP:5步步減減1FNC25(16/32)DEC(P)KnY,KnM,KnST,C,D,V,ZDEC、DECPP:3步步DDEC、DDECP:5步步圖中圖中 X004每次由每次由OFF變?yōu)樽優(yōu)镺N時(shí),時(shí),由由D指定的元件中的數(shù)加指定的元件中的數(shù)加1。 X001每次由每次由OFF變?yōu)樽優(yōu)镺N時(shí),時(shí),由由D指定的元件中的數(shù)減指定

47、的元件中的數(shù)減1。 這兩條指令都不影響零標(biāo)志、借位標(biāo)志和進(jìn)位標(biāo)志。這兩條指令都不影響零標(biāo)志、借位標(biāo)志和進(jìn)位標(biāo)志。 二進(jìn)制數(shù)加二進(jìn)制數(shù)加1、減、減1指令說(shuō)明指令說(shuō)明u字邏輯運(yùn)算指令字邏輯運(yùn)算指令 字邏輯運(yùn)算指令:字邏輯運(yùn)算指令:字邏輯與字邏輯與WAND(Word AND) 字邏輯或字邏輯或WOR(Word OR) 字邏輯異或字邏輯異或WXOR(Word Exclusive OR) 求補(bǔ)求補(bǔ)NEG(Negation) 如圖所示,如圖所示, 當(dāng)當(dāng)X000為為ON時(shí),時(shí),D10與與D12中的數(shù)據(jù)按各位對(duì)中的數(shù)據(jù)按各位對(duì) 應(yīng)進(jìn)行邏輯字與運(yùn)算,結(jié)果存放在元件應(yīng)進(jìn)行邏輯字與運(yùn)算,結(jié)果存放在元件D14中。中。

48、 當(dāng)當(dāng)X001為為ON時(shí),時(shí),D20與與D24中的數(shù)據(jù)按各位對(duì)應(yīng)中的數(shù)據(jù)按各位對(duì)應(yīng) 進(jìn)行邏輯字或運(yùn)算,結(jié)果存放在元件進(jìn)行邏輯字或運(yùn)算,結(jié)果存放在元件D24中。中。 當(dāng)當(dāng)X002為為ON時(shí),時(shí),D30與與D32中的數(shù)據(jù)按各位對(duì)應(yīng)中的數(shù)據(jù)按各位對(duì)應(yīng) 進(jìn)行邏輯字異或運(yùn)算,結(jié)果存放在元件進(jìn)行邏輯字異或運(yùn)算,結(jié)果存放在元件D34中。中。 當(dāng)當(dāng)X004為為ON時(shí),時(shí),D50中的二進(jìn)制負(fù)數(shù)按位取反中的二進(jìn)制負(fù)數(shù)按位取反 后加后加1,求得的補(bǔ)碼存入原來(lái)的,求得的補(bǔ)碼存入原來(lái)的D50中。中。 字邏輯運(yùn)算指令說(shuō)明字邏輯運(yùn)算指令說(shuō)明第五節(jié)第五節(jié) 三菱三菱FX2N系列系列PLC循環(huán)與移位循環(huán)與移位應(yīng)用指令應(yīng)用指令使位

49、數(shù)據(jù)或字?jǐn)?shù)據(jù)向指定使位數(shù)據(jù)或字?jǐn)?shù)據(jù)向指定方向循環(huán)、位移的指令方向循環(huán)、位移的指令 u循環(huán)移位指令循環(huán)移位指令 左、右循環(huán)移位指令左、右循環(huán)移位指令 循環(huán)右移循環(huán)右移ROR(Rotation Right) 循環(huán)左移循環(huán)左移ROL(Rotation Left) 左、右循環(huán)移位指令的使用要素左、右循環(huán)移位指令的使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)D(可變址可變址)n循環(huán)循環(huán)右移右移FNC30(16/32)ROR(P)KnY,KnM,KnST,C,D,V,ZK,Hn16(32)ROR, RORP:5步步DROR、DRORP:9步步循環(huán)循環(huán)左移左移FNC31(

50、16/32)ROL(P)KnY,KnM,KnST,C,D,V,ZK,Hn16(32)ROL, ROLP:5步步DROL、DROLP:9步步執(zhí)行這兩條指令時(shí),各位的數(shù)據(jù)向右(或向左)循環(huán)移動(dòng)執(zhí)行這兩條指令時(shí),各位的數(shù)據(jù)向右(或向左)循環(huán)移動(dòng)n位(位(n為常數(shù)),為常數(shù)),16位指令和位指令和32位指令中位指令中n應(yīng)分別小于應(yīng)分別小于16和和32,每次移出來(lái)的那一位同時(shí)存入,每次移出來(lái)的那一位同時(shí)存入進(jìn)位標(biāo)志進(jìn)位標(biāo)志M8022中。中。帶進(jìn)位左、右循環(huán)移位指令帶進(jìn)位左、右循環(huán)移位指令 帶進(jìn)位循環(huán)右移帶進(jìn)位循環(huán)右移RCR(Rotation Right with Carry) 帶進(jìn)位循環(huán)左移帶進(jìn)位循環(huán)左

51、移RCL(Rotation Left with Carry)功能編號(hào)分別為功能編號(hào)分別為FNC32和和FNC33 執(zhí)行這兩條指令時(shí),各位的數(shù)據(jù)與進(jìn)位位執(zhí)行這兩條指令時(shí),各位的數(shù)據(jù)與進(jìn)位位M8022一起(一起(16位指令時(shí)一共位指令時(shí)一共17位)向右(或向左)循環(huán)移動(dòng)位)向右(或向左)循環(huán)移動(dòng)n位(見(jiàn)圖)。位(見(jiàn)圖)。 循環(huán)位移指令使用說(shuō)明循環(huán)位移指令使用說(shuō)明u移位指令移位指令 位右移和位左移指令位右移和位左移指令 實(shí)現(xiàn)位元件中的狀態(tài)成實(shí)現(xiàn)位元件中的狀態(tài)成組地向右或向左移動(dòng)組地向右或向左移動(dòng) 位右移和位左移指令使用要素位右移和位左移指令使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操

52、作數(shù)指令步數(shù)指令步數(shù)S(可變址可變址)D(可變址可變址)n1n2位右移位右移FNC34(16)SFTR(P)X,Y,M,SY,M,SK,Hn2n11024SFTR, SFTRP:9步步位左移位左移FNC35(16)SFTL(P)SFTL, SFTLP:9步步圖中圖中X010由由OFF變?yōu)樽優(yōu)镺N時(shí),位右移指令(時(shí),位右移指令(3位位1組)按以下順序移位:組)按以下順序移位:M2M0中中的數(shù)溢出,的數(shù)溢出,M5M3M2M0,M8M6M5M3,X002X0000M8M6。圖圖8-17b中的中的X010由由OFF變?yōu)樽優(yōu)镺N時(shí),位左移指令按圖中所示的順序移位時(shí),位左移指令按圖中所示的順序移位。 位右

53、移位右移SFTR(Shift Right) 位左移位左移SFTL(Shift Left) 指令使用說(shuō)明指令使用說(shuō)明位移位位移位字右移和字左移指令字右移和字左移指令 字右移字右移WSFR(Word Shift Right)、字左移)、字左移WSFL(Word Shift Left) 字右移和字左移指令使用要素字右移和字左移指令使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記助記符符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S(可變址可變址)D(可變址可變址)n1n2字右移字右移FNC36(16)WSFR(P)KnX,KnY,KnM,KnST,C,DKnY,KnM,KnST,C,DK,Hn2n1512WSFR,WS

54、FRP:9步步字左移字左移FNC37(16)WSFL(P)WSFL, WSFLP:9步步圖圖a中的中的X000由由OFF變?yōu)樽優(yōu)镺N時(shí),字右移指令按圖中所示的順序移位。時(shí),字右移指令按圖中所示的順序移位。圖圖b中的中的X010由由OFF變?yōu)樽優(yōu)镺N時(shí),字左移指令按圖中所示的順序移位。時(shí),字左移指令按圖中所示的順序移位。字移位指令使用說(shuō)明字移位指令使用說(shuō)明移位寄存器寫(xiě)入與讀出指令移位寄存器寫(xiě)入與讀出指令 移位寄存器又稱(chēng)為先入先出移位寄存器又稱(chēng)為先入先出FIFO(First in First out)堆棧,堆棧的長(zhǎng))堆棧,堆棧的長(zhǎng)度范圍為度范圍為2512個(gè)字。個(gè)字。 寫(xiě)入指令寫(xiě)入指令SFWR(Sh

55、ift Register Write) 移位寄存器讀出指令移位寄存器讀出指令SFRD(Shift Register Read)用于用于FIFO堆棧的讀寫(xiě),先寫(xiě)入的數(shù)據(jù)先讀出。堆棧的讀寫(xiě),先寫(xiě)入的數(shù)據(jù)先讀出。 FIFO指令使用要素指令使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S(可變址可變址)D(可變址可變址)n1n2FIFO寫(xiě)入寫(xiě)入FNC38(16)SFWR(P)K,H,KnX,KnY,KnM,KnST,C,D,V,ZKnY,KnM,KnST,C,DK,Hn2n1512SFWR,SFWRP:7步步FIFO讀出讀出FNC39(16)SFRD(P)KnX,Kn

56、Y,KnM,KnS,T,C,DKnY,KnM,KnST,C,DSFRD, SFRDP:7步步 如果如果X000再次由再次由OFF變?yōu)樽優(yōu)镺N,D1中的數(shù)變?yōu)橹械臄?shù)變?yōu)?,D0中的數(shù)據(jù)寫(xiě)入中的數(shù)據(jù)寫(xiě)入D3。依此。依此 類(lèi)推,源操作數(shù)類(lèi)推,源操作數(shù)D0中的數(shù)據(jù)依次寫(xiě)入堆棧。中的數(shù)據(jù)依次寫(xiě)入堆棧。 當(dāng)當(dāng)D1中的數(shù)據(jù)等于中的數(shù)據(jù)等于n-1(n為堆棧的長(zhǎng)度為堆棧的長(zhǎng)度)時(shí),不再執(zhí)行上述處理,時(shí),不再執(zhí)行上述處理,進(jìn)位標(biāo)進(jìn)位標(biāo) 志志M8022置置1。FIFO指令使用說(shuō)明指令使用說(shuō)明圖圖a中:中: 目標(biāo)元件目標(biāo)元件D1是是FIFO堆棧的首地址,也是堆棧的指針,移位寄存器未裝入堆棧的首地址,也是堆棧的指針,移

57、位寄存器未裝入 數(shù)據(jù)時(shí)應(yīng)將數(shù)據(jù)時(shí)應(yīng)將D1清清0。 在在X000由由OFF變?yōu)樽優(yōu)镺N時(shí),時(shí),指針的值加指針的值加1后寫(xiě)入數(shù)據(jù)。第一次寫(xiě)入時(shí),源操后寫(xiě)入數(shù)據(jù)。第一次寫(xiě)入時(shí),源操 作數(shù)作數(shù)D0中的數(shù)據(jù)寫(xiě)入中的數(shù)據(jù)寫(xiě)入D2。圖圖b中中 X000由由OFF變?yōu)樽優(yōu)镺N時(shí),時(shí),D2中的數(shù)據(jù)送到中的數(shù)據(jù)送到D20,同時(shí)指針,同時(shí)指針D1的值減的值減1,D3到到 D9的數(shù)據(jù)向右移一個(gè)字。的數(shù)據(jù)向右移一個(gè)字。 數(shù)據(jù)總是從數(shù)據(jù)總是從D2讀出,指針讀出,指針D1為為0時(shí),時(shí),F(xiàn)IFO堆棧被讀空,不再執(zhí)行上述處堆棧被讀空,不再執(zhí)行上述處 理,零標(biāo)志理,零標(biāo)志M8020為為ON。 執(zhí)行本指令的過(guò)程中,執(zhí)行本指令的過(guò)程

58、中,D9的數(shù)據(jù)保持不變。的數(shù)據(jù)保持不變。第六節(jié)第六節(jié) 三菱三菱FX2N系列系列PLC數(shù)據(jù)處理應(yīng)用指令數(shù)據(jù)處理應(yīng)用指令u區(qū)間復(fù)位指令區(qū)間復(fù)位指令 區(qū)間復(fù)位指令區(qū)間復(fù)位指令ZRST(Zone Reset)將將D1D2指定的元件號(hào)范圍內(nèi)的指定的元件號(hào)范圍內(nèi)的 同類(lèi)元件成批復(fù)位。同類(lèi)元件成批復(fù)位。 如果如果D1的元件號(hào)大于的元件號(hào)大于D2的元件號(hào),的元件號(hào),則只有則只有D1指定的元件被復(fù)位。指定的元件被復(fù)位。 單個(gè)位元件和字元件可以用單個(gè)位元件和字元件可以用RST指令復(fù)位指令復(fù)位。 區(qū)間復(fù)位指令使用要素區(qū)間復(fù)位指令使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)D1(可

59、變址可變址)D2(可變址可變址)區(qū)間區(qū)間復(fù)位復(fù)位FNC40(16)ZRST(P)Y,M,S,T,C,DD1元件號(hào)元件號(hào)D2元件號(hào)元件號(hào)ZRST, ZRSTP:5步步如圖中:如圖中: 當(dāng)當(dāng)M8002由由OFFON 時(shí),時(shí),執(zhí)行區(qū)間復(fù)位指令。執(zhí)行區(qū)間復(fù)位指令。 位元件位元件M500M599成批復(fù)位,字元件成批復(fù)位,字元件C235 C255成批復(fù)位,狀態(tài)元件成批復(fù)位,狀態(tài)元件S0S127成批復(fù)位。成批復(fù)位。 雖然雖然ZRST指令是指令是16位指令,位指令,D1和和D2也可以指定也可以指定 32位計(jì)數(shù)器。位計(jì)數(shù)器。區(qū)間復(fù)位指令區(qū)間復(fù)位指令 u解碼與編碼指令解碼與編碼指令 解碼(譯碼)指令解碼(譯碼)指

60、令DECO(Decode) 編碼指令編碼指令ENCO(Encode)解碼與編碼指令使用要素解碼與編碼指令使用要素指令指令名稱(chēng)名稱(chēng)指令指令編號(hào)編號(hào)助記符助記符操作數(shù)操作數(shù)指令步數(shù)指令步數(shù)S(可變址可變址)D(可變址可變址)n解碼解碼FNC41(16)DECO(P)K,H,X,Y,M,ST,C,D,V,ZY,M,S,T,C,DK,H1n8DECO,DECOP:7步步編碼編碼FNC42(16)ENCO(P)X,Y,M,ST,C,D,V,ZT,C,D,V,ZENCO, ENCOP:7步步 圖圖a中:中:X002X000組成的組成的3位(位(n3)二進(jìn)制數(shù)為)二進(jìn)制數(shù)為011,相當(dāng)于十進(jìn)制,相當(dāng)于十進(jìn)制

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論