LC基礎(chǔ)及應(yīng)用教程三菱FX2N系列-功能指令.ppt
《LC基礎(chǔ)及應(yīng)用教程三菱FX2N系列-功能指令.ppt》由會員分享,可在線閱讀,更多相關(guān)《LC基礎(chǔ)及應(yīng)用教程三菱FX2N系列-功能指令.ppt(181頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、三菱PLC基礎(chǔ)與應(yīng)用,第5章 FX2N系列PLC的應(yīng)用指令,,,,5.8 方便指令,5.5 循環(huán)與移位指令,5.4 四則運算與邏輯運算指令,5.3 比較與傳送指令,5.2 程序流程指令,5.1 應(yīng)用指令概述,5.6 數(shù)據(jù)處理指令,5.7 高速處理指令,5.9 實訓項目,5.10 習題,三菱PLC基礎(chǔ)與應(yīng)用,5.1 應(yīng)用指令概述,5.1.1 應(yīng)用指令的表達形式 1. 位元件與字元件 只處理ON/OFF狀態(tài)的軟元件稱為位元件,如X、Y、M、S等;而處理數(shù)值的軟元件則稱為字元件,如T、C、D等,一個字元件由16位二進制數(shù)組成。 位元件組合使用也可處理數(shù)值,位元件每4位一組組合成一個單元,通常的表示方
2、法是Kn加上首元件號組成,n為單元數(shù)。例如,K2X0表示由X0X7組成的位元件組,這是一個8位數(shù)據(jù),X0為最低位。16位數(shù)據(jù)時n=14,32位數(shù)據(jù)n=18。,三菱PLC基礎(chǔ)與應(yīng)用,,當一個16位的數(shù)據(jù)傳送到K1M0、K2M0、K3M0時,只能傳送低位數(shù)據(jù),較高位數(shù)據(jù)不傳送,32位數(shù)據(jù)傳送時也一樣。在作16位數(shù)操作時,參與操作的位元件不足16位時,高位(不足部分)均作0處理,這就意味著只能處理正數(shù)(符號位為0),32位數(shù)據(jù)操作也一樣。 被組合的位元件的首元件號可以是任意的,但為避免混亂,建議采用編號以0為結(jié)尾的元件,如X0、Y10、M20等。,三菱PLC基礎(chǔ)與應(yīng)用,,2. 指令與操作數(shù) 應(yīng)用指令
3、用助記符表示,有些應(yīng)用指令僅有指令段(助記符),但更多的有操作數(shù)。下面是指令中操作數(shù)符號表示方法及解釋: S:表示數(shù)據(jù)源。內(nèi)容不隨指令執(zhí)行而變化的操作數(shù)稱為源。在可變址修改軟元件編號的情況下,加上“.”符號的S.表示。源的數(shù)量多時,以S1.、S2.等表示。 D.:表示目標操作數(shù)。內(nèi)容隨指令執(zhí)行而改變的操作數(shù)被稱作目標。可作變址修飾時,加上“.”符號的D.表示。目標數(shù)量多時,以D1.、D2.等表示。 n.、m.:以m.或n.表示既不作源,也不作目標的操作數(shù)。這樣的操作數(shù)數(shù)量很多時,以m1.、m2.、n1.、n2.等表示。,三菱PLC基礎(chǔ)與應(yīng)用,,3. 數(shù)據(jù)格式 在FX系列PLC內(nèi)部,數(shù)據(jù)以二進制
4、(BIN)補碼的形式存儲,所有的四則運算和加1/減1運算都使用二進制數(shù)。16位數(shù)據(jù)的二進制補碼最高位(第15位)為符號位,正數(shù)的符號位為0,負數(shù)的符號位為1,最低為第0位。 4. 應(yīng)用指令的表達形式 與基本指令不同,F(xiàn)X2N系列PLC的應(yīng)用指令用編號FNC00FNC246表示,采用計算機通用的助記符(英文名稱或縮寫)表示。例如,F(xiàn)NC45的助記符是MEAN(平均)。應(yīng)用指令的表示格式如圖5-1所示。,三菱PLC基礎(chǔ)與應(yīng)用,,應(yīng)用指令的指令段通常占1個程序步,16位操作數(shù)占2步,32位操作數(shù)占4步。,,圖5-1 應(yīng)用指令的表示格式,三菱PLC基礎(chǔ)與應(yīng)用,,5.1.2 數(shù)據(jù)長度 FX2N型PLC中
5、的數(shù)據(jù)寄存器D為16位,用于存放16位二進制數(shù)。在應(yīng)用指令的助記符前加“D”就變成32位指令。數(shù)據(jù)長度的表示格式如圖5-2所示。,,圖5-2 數(shù)據(jù)長度的表示,三菱PLC基礎(chǔ)與應(yīng)用,,5.1.3 執(zhí)行形式 應(yīng)用指令有連續(xù)執(zhí)行和脈沖執(zhí)行型兩種執(zhí)行形式。 脈沖執(zhí)行形式的使用如圖5-3所示。,,圖5-3 脈沖執(zhí)行型的表示,三菱PLC基礎(chǔ)與應(yīng)用,,在應(yīng)用指令助記符中標有“P”的表示該指令為脈沖執(zhí)行型,在執(zhí)行條件滿足時僅執(zhí)行一個掃描周期。如果指令格式?jīng)]有“P”的表示該指令只能是連續(xù)執(zhí)行型,在執(zhí)行條件滿足的每個掃描周期都要被執(zhí)行。“P”和“D”可以同時使用。,三菱PLC基礎(chǔ)與應(yīng)用,,5.1.4 變址寄存器
6、FX2N有16個16位的變址寄存器,分別是V0V7和Z0Z7。在傳送、比較指令中,變址寄存器V和Z用來修改操作對象的元件號,在循環(huán)程序中常使用變址寄存器。 進行32位運算時,常用V和Z自動組對使用,分別組成(V0、Z0)、(V1、Z1)、(V7、Z7)。V為高16位,Z為低16位,這時變址指令只需指定Z,Z就能代表V和Z的組合。,,三菱PLC基礎(chǔ)與應(yīng)用,5.2 程序流程指令,程序流程指令共有10條,應(yīng)用指令的編號為FNC00FNC09。 5.2.1 條件跳轉(zhuǎn)指令 條件跳轉(zhuǎn)指令CJ(Conditional Jump)的功能編號為FNC00,操作數(shù)的指針標號P0P127,其中P63即END所在步序
7、,無需再標號。CJ和CJP都占3個程序步,指針標號占1個程序步。 指針P(Point)用于分支和跳轉(zhuǎn)步序,在梯形圖中,指針放在左側(cè)母線的左邊,當CJ指令條件滿足時,跳轉(zhuǎn)到相應(yīng)的標號處。,三菱PLC基礎(chǔ)與應(yīng)用,,,,圖5-4 跳轉(zhuǎn)指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,使用跳轉(zhuǎn)指令時應(yīng)當注意事項如下: 1)CJP指令表示脈沖執(zhí)行方式。 2)在一個程序中,一個指針標號只能出現(xiàn)一次,否則程序會出錯。但是在同一個程序中兩條跳轉(zhuǎn)指令可以使用相同的指針標號。 3)跳轉(zhuǎn)指令一般在CJ指令之后,但也可出現(xiàn)在跳轉(zhuǎn)指令之前。 4)跳轉(zhuǎn)執(zhí)行期間,即使被跳過程序的驅(qū)動條件改變,但其線圈(或結(jié)果)仍保持跳轉(zhuǎn)前的狀態(tài),因為跳
8、轉(zhuǎn)期間沒有執(zhí)行這段程序。 5)如果跳轉(zhuǎn)開始時定時器和計數(shù)器已在工作,則跳轉(zhuǎn)執(zhí)行期間它們將停止工作,即T和C的當前值保持不變,直到跳轉(zhuǎn)條件不滿足后又繼續(xù)工作(T和C接著以前的數(shù)值繼續(xù)計時和計數(shù))。但定時器T192T199和高速計數(shù)器C235C255在跳轉(zhuǎn)后將繼續(xù)動作,接點也動作。,三菱PLC基礎(chǔ)與應(yīng)用,,5.2.2 子程序調(diào)用和子程序返回 子程序調(diào)用指令CALL(Sub Routine Call)的功能編號為FNC01,操作數(shù)為P0P127,CALL和CALLP指令都占3個程序步。 子程序返回指令SRET(Sub Routine Return)的功能編號為FNC02,無操作數(shù),占用1個程序步。
9、子程序是為一些特定的控制目的而編制的相對獨立的程序。為了區(qū)別于主程序,規(guī)定在程序編排時,將主程序排在前面,子程序排在后面,以主程序結(jié)束指令FEND(FNC06)將它們隔開。,三菱PLC基礎(chǔ)與應(yīng)用,,子程序調(diào)用指令CALL的功能是當執(zhí)行條件滿足時,該指令使程序跳到標號處,執(zhí)行該標號對應(yīng)的子程序。 子程序返回指令SRET的功能是返回到調(diào)用該子程序的CALL指令處的下一邏輯行。 子程序調(diào)用和子程序返回指令的簡單使用示例如圖5-5所示。,三菱PLC基礎(chǔ)與應(yīng)用,,,,圖5-5 子程序調(diào)用和返回指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,使用子程序調(diào)用和返回指令的注意事項: 1)同一標號在左母線前只能出現(xiàn)一次,但
10、不同的CALL指令可調(diào)用同標號的子程序。 2)子程序中可再調(diào)用子程序,形成子程序嵌套,最多可有5級嵌套。 3)在調(diào)用子程序和中斷子程序時,可采用T192T199和T246249作為定時器。,三菱PLC基礎(chǔ)與應(yīng)用,,【例5-1】用兩個開關(guān)X1、X0控制一個信號燈Y0,當X1X0=00時燈滅;當X1X0=01時,燈以1s脈沖閃爍;當X1X0=10時,燈以2s脈沖閃爍;當X1X0=11時,燈常亮。用子程序調(diào)用來實現(xiàn),則如圖5-6所示。,三菱PLC基礎(chǔ)與應(yīng)用,,,,圖5-6 子程序調(diào)用實例,三菱PLC基礎(chǔ)與應(yīng)用,,5.2.3 中斷指令 中斷返回指令I(lǐng)RET(Interrupt Return)的功能編號
11、FNC03,無操作數(shù),占1個程序步。 中斷允許指令EI(Enable Interrupt)的功能編號FNC04,無操作數(shù),占1個程序步。 中斷禁止指令DI(Disable Interrupt)的功能編號FNC05,無操作數(shù),占1個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,1中斷指針 中斷指針(II8)是用來指示某一中斷程序的入口位置的。執(zhí)行中斷后遇到IRET指令,則返回主程序。中斷指針有以下三種類型: 1)輸入中斷指針(I00I50):共6點,用來指示由特定輸入端的輸入信號而產(chǎn)生中斷的中斷服務(wù)程序的入口位置。這類中斷不受PLC掃描周期的影響,可以及時處理外界信息。輸入中斷指針編號格式如下: 例如:I
12、201是當輸入X2從OFFON變化時,執(zhí)行以I201為標號的中斷程序,并根據(jù)IRET指令返回。,,,三菱PLC基礎(chǔ)與應(yīng)用,,2)定時器中斷指針(I6I8):共3點,用來指示周期定時中斷的中斷服務(wù)程序的入口位置。這類中斷的作用是PLC以指定的周期定時執(zhí)行中斷服務(wù)程序,定時循環(huán)處理某些任務(wù),處理的時間也不受PLC掃描周期的影響。定時器中斷指針格式如下: 3)計數(shù)器中斷指針(I010I060):共6點,用于在PLC內(nèi)置的高速計數(shù)器中。當高速計數(shù)器的當前值達到規(guī)定值,執(zhí)行中斷子程序。常用于利用高速計數(shù)器優(yōu)先處理計數(shù)結(jié)果的場合。,,三菱PLC基礎(chǔ)與應(yīng)用,,2中斷指令 中斷是指在執(zhí)行主程序的過程中,
13、中斷主程序轉(zhuǎn)而去執(zhí)行中斷服務(wù)子程序。PLC通常處于禁止中斷狀態(tài),由EI和DI指令組成允許中斷范圍。在執(zhí)行到該區(qū)間時,如果有中斷源產(chǎn)生中斷,CPU將暫停主程序而轉(zhuǎn)去執(zhí)行中斷服務(wù)程序。當遇到IRET時返回斷點繼續(xù)執(zhí)行主程序。 中斷指令的簡單使用示例如圖5-7所示。在圖5-7中,如在允許中斷范圍內(nèi),如果外部中斷源X1有一個下降沿,則轉(zhuǎn)入I100為標號的中斷服務(wù)程序。但X0能否引起中斷還受M8050的控制,當X10為ON時,M8050=1,禁止I100中斷。,三菱PLC基礎(chǔ)與應(yīng)用,,,,圖5-7 中斷指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,表5-1 中斷類型及中斷禁止特殊輔助繼電器,三菱PLC基礎(chǔ)與應(yīng)
14、用,,使用中斷指令的注意事項: 1)如果有多個中斷信號依次發(fā)出,則優(yōu)先級按發(fā)生的先后順序,即發(fā)生越早的優(yōu)先級越高。若同時發(fā)生多個中斷信號,則中斷指針號小的優(yōu)先級越高。 2)無需中斷禁止時,可只用EI指令,不必用DI指令。 3)通過特殊輔助繼電器M8050M8058可實現(xiàn)中斷的選擇,它們分別與外部中斷和定時器中斷一一對應(yīng)。當M8050M8058為ON時,禁止執(zhí)行相應(yīng)I0I8的中斷,M8059為ON時,則禁止所有計數(shù)器中斷。 4)FX2N系列PLC可實現(xiàn)不多于兩級的中斷嵌套,即在中斷子程序中再使用一對EI和DI指令。,三菱PLC基礎(chǔ)與應(yīng)用,,【例5-2】三人智力搶答,,,(a)輸入中斷(搶答)梯形
15、圖,(b)搶答器接線圖,圖5-8 輸入中斷(搶答電路)實例,三菱PLC基礎(chǔ)與應(yīng)用,,5.2.4 主程序結(jié)束指令 主程序結(jié)束指令FEND(First End)的功能編號為FNC06,無操作數(shù),占用1個程序步。 FEND表示主程序結(jié)束,當執(zhí)行到FEND時,PLC執(zhí)行輸入/輸出處理、監(jiān)視定時器的刷新、返回0步程序。 使用FEND指令的注意事項: 1)子程序和中斷服務(wù)程序應(yīng)放在FEND之后。 2)子程序和中斷服務(wù)程序必須寫在FEND和END之間,否則會出錯。,三菱PLC基礎(chǔ)與應(yīng)用,,5.2.5 監(jiān)視定時器指令 監(jiān)視定時器指令WDT(Watch Dog Timer)的功能編號為FNC07,沒有操作數(shù),占
16、用1個程序步。 監(jiān)視定時器WDT(Watch Dog Timer)又稱看門狗,該指令的功能是對PLC的監(jiān)視定時器進行復位。PLC正常工作時掃描周期小于它的定時時間。監(jiān)控定時器定時時間在FX2N中默認值為200ms,如果PLC運行一個掃描周期的時間超過監(jiān)控定時器規(guī)定的200ms時,PLC將停止工作,這時CPU-E(CPU錯誤)指示燈亮。,三菱PLC基礎(chǔ)與應(yīng)用,,可以通過修改PLC的特殊數(shù)據(jù)寄存器D8000(存放一個掃描周期時間)值來設(shè)定WDT的定時時間,如圖5-9所示。,,圖5-9 WDT的定時時間設(shè)定,三菱PLC基礎(chǔ)與應(yīng)用,,此外,如果一個程序大于默認的200ms,也可以通過在程序中插入WDT
17、指令,將程序一分為二,使它們都小于200ms,則不會出現(xiàn)停機報警現(xiàn)象,如圖5-10所示。,,圖5-10 WDT指令的應(yīng)用,三菱PLC基礎(chǔ)與應(yīng)用,,WDT指令的使用注意事項如下: 1)如果FOR-NEXT循環(huán)程序的執(zhí)行時間過長,可能超過監(jiān)控定時器的定時時間,可將WDT指令插入循環(huán)程序中。 2)如果條件跳轉(zhuǎn)指令CJ出現(xiàn)在它所對應(yīng)的指針標號之后,可能因連續(xù)反復跳步使它們之間的程序被反復執(zhí)行,使WDT動作。為避免這種情況,可以在CJ指令和其指針標號之間插入WDT指令。,三菱PLC基礎(chǔ)與應(yīng)用,,5.2.6 循環(huán)指令 循環(huán)開始指令FOR的功能編號為FNC08,源操作數(shù)表示循環(huán)次數(shù),占3個程序步。 循環(huán)結(jié)束
18、指令NEXT的功能編號為FNC09,無操作數(shù),占1個程序步。 FOR與NEXT構(gòu)成循環(huán)指令,F(xiàn)ORNEXT之間的程序被反復執(zhí)行,執(zhí)行次數(shù)由FOR指令的源操作數(shù)n設(shè)定,n的取值范圍132767。執(zhí)行完后,再執(zhí)行NEXT后面的指令。,三菱PLC基礎(chǔ)與應(yīng)用,,循環(huán)指令簡單使用示例如圖5-11所示。在圖5-11中,外層循環(huán)程序A嵌套內(nèi)層循環(huán)B,外層A執(zhí)行2次,每執(zhí)行一次外層程序A,就要執(zhí)行5次內(nèi)層B,因此循環(huán)B一共要執(zhí)行10次。,,圖5-11 循環(huán)指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,循環(huán)指令的使用注意事項: 1)FOR與NEXT指令總是成對使用。 2)FORNEXT循環(huán)可以嵌套五層。 3)利用循環(huán)中的
19、CJ指令可以跳出FORNEXT之間的循環(huán)區(qū)。 4)如果NEXT指令應(yīng)放在FOR指令的前面;FOR指令沒有對應(yīng)的NEXT指令;FOR指令與NEXT指令的個數(shù)不成對;NEXT指令放在FEND和END指令的后面,以上情況均會出錯。 5)如果執(zhí)行FORNEXT指令的時間太長,PLC的掃描周期有可能會超過WDT的設(shè)定時間。,,三菱PLC基礎(chǔ)與應(yīng)用,5.3 比較與傳送指令,比較與傳送指令共有10條,應(yīng)用指令的編號為FNC10FNC19。比較與傳送指令包括數(shù)據(jù)傳送、比較處理、交換及轉(zhuǎn)換等功能。 5.3.1 比較指令 比較指令CMP(Compare)的功能編號FNC10,是將源操作數(shù)S1.和S2.的數(shù)據(jù)進行比
20、較,將比較的結(jié)果送到目標操作數(shù)D.中,并且占用3個連續(xù)單元。比較指令的簡單使用示例如圖5-12所示。,三菱PLC基礎(chǔ)與應(yīng)用,,,,圖5-12 比較指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,比較指令的使用注意事項: 1)按代數(shù)形式進行大小比較。例:(-52)。 2)指定的元件種類或元件號超出允許范圍時將會出錯。 3)源操作數(shù)可以取任意的數(shù)據(jù)格式,目標操作數(shù)可以取Y、M和S。 4)CMP(P)占7個程序步,DCMP(P)占13個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,【例5-3】密碼鎖設(shè)計。 密碼鎖的設(shè)計如圖5-13所示(其中左圖為梯形圖,右圖為接線圖),設(shè)置4位密碼8251。將數(shù)字開關(guān)撥到8時按一下確認鍵,
21、再分別在撥到2、5、1時按一下確認鍵,電磁鎖Y0得電開鎖。,三菱PLC基礎(chǔ)與應(yīng)用,,,,圖5-13 密碼鎖,三菱PLC基礎(chǔ)與應(yīng)用,,5.3.2 區(qū)間比較指令 區(qū)間比較指令ZCP(Zone Compare)的功能編號為FNC11,它是將一個源操作數(shù)S.與兩個源操作數(shù)S1.和S2.中的數(shù)值進行比較,然后將比較結(jié)果傳送到目標操作數(shù)D.為首地址的3個連續(xù)的軟件元件中。區(qū)間比較指令的簡單使用示例如圖5-14所示。,三菱PLC基礎(chǔ)與應(yīng)用,,,,圖5-14 區(qū)間比較指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,區(qū)間比較指令的使用注意事項: 1)按代數(shù)形式進行大小比較。 2)S1.中的數(shù)據(jù)不能大于S2.中的數(shù)據(jù),如果S
22、1.大于S2.,則S2.被看作與S1.一樣大。 3)源操作數(shù)可以取所有數(shù)據(jù)格式,而目標操作數(shù)可取Y、M、S。 4)ZCP(P)占7個程序步,DZCP(P)占13個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.3.3 傳送指令 傳送指令MOV(Move)的功能編號為FNC12,該指令的功能是將源操作數(shù)S.的內(nèi)容傳送到目標操作數(shù)D.中。傳送指令的使用示例如圖5-15所示。,,圖5-15 傳送指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,傳送指令的使用注意事項: 1)源操作數(shù)可以取所有數(shù)據(jù)格式,而目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V、Z。 2)MOV(P)占5個程序步,DMOV(P)占9個程序步。,三
23、菱PLC基礎(chǔ)與應(yīng)用,,【例5-4】用傳送指令實現(xiàn)八人搶答電路。 要求8個指示燈Y0Y7對應(yīng)8個搶答按鈕X0X7,在主持人按下開始按鈕X10后,才可以搶答,先按按鈕者的燈亮,同時蜂鳴器Y10響,后按按鈕者燈不亮。則按要求其設(shè)計的梯形圖如圖5-16所示。,,圖5-16 傳送指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,5.3.4 移位傳送指令 移位傳送指令SMOV(Shift Move)的功能編號為FNC13,該指令的功能是將S.中的16位二進制數(shù)據(jù)以BCD的形式按位傳送到D.中指定的位置。該指令的使用如圖5-17所示。,三菱PLC基礎(chǔ)與應(yīng)用,,,,圖5-17 移位傳送指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,移
24、位傳送指令的使用注意事項: 1)數(shù)據(jù)寄存器D只能存放二進制數(shù),所以SMOV指令只是在傳送的過程中以BCD碼的方式傳送,而到達指定目標D后仍以二進制數(shù)存放。 2)BCD碼值超過9999時會出錯。 3)源操作數(shù)可以取所有數(shù)據(jù)格式,而目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V、Z。 4)SMOV(P)指令只有16位運算,占11個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.3.5 取反傳送指令 取反傳送指令CML(Complement)的功能編號為FNC14,該指令的功能是將源操作數(shù)S.中的各位二進制數(shù)取反(01,10),按位傳送到目標操作數(shù)D.中。取反傳送指令的使用示例如圖5-18所示。,,圖5
25、-18 取反傳送指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,取反傳送指令的使用注意事項: 1)源操作數(shù)可以取所有數(shù)據(jù)格式,而目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V、Z。 2)如果源數(shù)據(jù)為常數(shù)K,該數(shù)據(jù)會自動轉(zhuǎn)換為二進制數(shù)。 3)CML(P)占5個程序步,DCML(P)占9個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.3.6 塊傳送指令 塊傳送指令BMOV(Block Move)的功能編號為FNC15,該指令是將源操作數(shù)指定的元件開始的n個數(shù)據(jù)組成的數(shù)據(jù)塊傳送到指定的目標,n可以取K、H和D。塊傳送指令的使用示例如圖5-19所示。,,圖5-19 塊傳送指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,塊傳送指
26、令的使用注意事項: 1)如果元件號超過允許的范圍,數(shù)據(jù)僅傳送到允許的范圍。 2)源操作數(shù)可以取KnX、KnY、KnM、KnS、T、C、D和文件寄存器,目標操作數(shù)可以取KnY、KnM、KnS、T、C、D和文件寄存器。 3)M8024為BMOV指令的方向特殊功能繼電器,如果M8024為ON,傳送的方向相反,即將目標數(shù)據(jù)塊中的數(shù)據(jù)傳送到源數(shù)據(jù)塊中。 4)BMOV(P)只有16位操作,占7個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.3.7 多點傳送指令 多點傳送指令FMOV(Fill Move)的功能編號為FNC17,該指令是將源操作數(shù)中的數(shù)據(jù)傳送到指定目標開始的n個文件中,傳送后n個文件中的數(shù)據(jù)完全相同
27、。多點傳送指令的使用示例如圖5-20所示。,,圖5-20 多點傳送指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,多點傳送指令的使用注意事項: 1)如果元件號超過允許的范圍,數(shù)據(jù)僅傳送到允許的范圍。 2)源操作數(shù)可以取所有數(shù)據(jù)類型,目標操作數(shù)可以取KnY、KnM、KnS、T、C、D、V和Z,其中n512。 3)FMOV(P)占7個程序步,DFMOV(P)占13個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.3.8 數(shù)據(jù)交換指令 數(shù)據(jù)交換指令XCH(Exchange)的功能編號為FNC17,該指令是將數(shù)據(jù)在指定的目標元件之間進行交換。交換指令一般采用脈沖執(zhí)行方式,否則每一個掃描周期都要交換一次。數(shù)據(jù)交換指令的使用示
28、例如圖5-21所示。,,圖5-21 數(shù)據(jù)交換指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,數(shù)據(jù)交換指令的使用注意事項: 1)兩個目標操作數(shù)可以取KnY、KnM、KnS、T、C、D、V和Z。 2)XCH(P)占5個程序步,DXCH(P)占9個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.3.9 BCD變換指令 BCD(Binary Code to Decimal)變換指令的功能編號為FNC18,該指令是將源元件中的二進制數(shù)轉(zhuǎn)換為BCD碼并送目標元件中。如果執(zhí)行的結(jié)果超過09999的范圍,或者32位操作時超過099999999的范圍時,PLC會認定為錯誤。BCD變換指令常用于將PLC中的二進制數(shù)變換成BCD碼輸出以
29、驅(qū)動LED顯示器。BCD變換指令的使用如圖5-22所示。,,圖5-22 BCD變換指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,BCD變換指令的使用注意事項: 1)源操作數(shù)可取所有數(shù)據(jù)格式,目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。 2)BCD(P)占5個程序步,DBCD(P)占9個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.3.10 BIN變換指令 BIN(Binary)變換指令的功能編號為FNC19,該指令是將源元件中的BCD數(shù)據(jù)轉(zhuǎn)換成二進制數(shù)據(jù)送到目標元件中??梢杂肂IN指令將BCD數(shù)字撥碼開關(guān)提供的設(shè)定值輸入到PLC,如果源元件中數(shù)據(jù)不是BCD碼,將會出錯。BIN變換指令的使用示例如圖
30、5-23所示。,,圖5-23 BIN變換指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,【例5-5】試設(shè)計1個簡易定時報時器,具體控制要求如下: 1)早晨6:30,電鈴(Y0)每秒響1次,6次后自動停止。 2)9:0017:00,啟動住宅報警系統(tǒng)(Y1)。 3)晚上6:00開啟園內(nèi)照明(Y2)。 4)晚上10:00關(guān)閉園內(nèi)照明(Y2)。 則按定時控制器要求的設(shè)計的梯形圖如5-24所示。,三菱PLC基礎(chǔ)與應(yīng)用,,圖5-24 定時報時器梯形圖,三菱PLC基礎(chǔ)與應(yīng)用,,完成本例的控制要求要解決如下幾個問題: 1)產(chǎn)生1個實時時鐘,即1個周期為24小時循環(huán)的時鐘信號。利用內(nèi)部時鐘脈沖信號和計數(shù)器結(jié)合使用即可構(gòu)成,
31、每15min為一設(shè)定單位,共96個時間單元。 2)能按設(shè)定時間進行控制。應(yīng)用計數(shù)器產(chǎn)生實時時間與設(shè)定值進行比較,利用比較結(jié)果進行相關(guān)控制。 3)能進行校時。為了能夠進行校時,設(shè)置X1為15min快速調(diào)整開關(guān),X2為格數(shù)設(shè)定的快速調(diào)整開關(guān)。時間設(shè)定值為鐘點數(shù)乘以4。 設(shè)置X0為啟動開關(guān),使用時,在0:00時啟動定時器。,,三菱PLC基礎(chǔ)與應(yīng)用,5.4 四則運算與邏輯運算指令,5.4.1 加法指令 加法指令A(yù)DD(Addition)的功能編號為FNC20,該指令將指定的源元件中的二進制數(shù)相加,結(jié)果送到指定的目標元件。加法指令的使用示例如圖5-25所示。,,圖5-25 加法指令的使用,三菱PLC基礎(chǔ)
32、與應(yīng)用,,加法指令的使用注意事項: 1)加法指令在執(zhí)行時影響三個常用的標志位:M8020零標志、M8021借位標志和M8022進位標志。當運算結(jié)果為0時,M8020置“1”;當運算結(jié)果超過32767(16位)或2147483647(32位)時,M8022置“1”;當運算結(jié)果小于-32768(16位)或-2147483648時,M8021置“1”。 2)數(shù)據(jù)為有符號的二進制數(shù),最高位為符號位(0為正,1為負)。 3)源操作數(shù)可取所有數(shù)據(jù)格式,目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。 4)ADD(P)占7個程序步,DADD(P)占13個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,【例5-6
33、】一臺投幣洗車機,用于司機清洗車輛,司機每投入1元可以使用10分鐘時間,其中噴水時間為5分鐘。則按要求設(shè)計的投幣洗車機梯形圖如圖5-26所示。,三菱PLC基礎(chǔ)與應(yīng)用,,,,圖5-26 投幣洗車機梯形圖,三菱PLC基礎(chǔ)與應(yīng)用,,5.4.2 減法指令 減法指令SUB(Subtration)的功能編號為FNC21,該指令將指定的源元件中的二進制數(shù)相減,結(jié)果送到指定的目標元件。減法指令的使用示例如圖5-27所示。,,圖5-27 減法指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,減法指令的使用注意事項: 1)M8020、M8021和M8022對減法指令的影響和加法指令相同。 2)數(shù)據(jù)為有符號的二進制數(shù),最高位為符
34、號位(0為正,1為負)。 3)源操作數(shù)可取所有數(shù)據(jù)格式,目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。 4)SUB(P)占7個程序步,DSUB(P)占13個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,【例5-7】30s倒計時顯示控制的設(shè)計。 設(shè)計的30s倒計時顯示控制梯形圖如圖5-28所示。,,圖5-28 30s倒計時顯示控制的梯形圖,三菱PLC基礎(chǔ)與應(yīng)用,,5.4.3 乘法指令 乘法指令MUL(Multiplication)的功能編號為FNC22,該指令將指定源元件中的二進制數(shù)相乘,結(jié)果送到指令的目標元件中。乘法指令的使用如圖5-29所示。,,圖5-29 乘法指令的使用,三菱PLC基礎(chǔ)與應(yīng)
35、用,,乘法指令的使用注意事項: 1)目標位元件的位數(shù)如果小于運算結(jié)果的倍數(shù),只能保存結(jié)果的低位。 2)數(shù)據(jù)為有符號的二進制數(shù),最高位為符號位(0為正,1為負)。 3)源操作數(shù)可取所有數(shù)據(jù)格式,目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z,Z只有在16位乘法時可用,32位乘法不可用。 4)MUL(P)占7個程序步,DMUL(P)占13個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.4.4 除法指令 除法指令DIV(Division)的功能編號為FNC23,該指令將源操作數(shù)S1.除以S2.,商送到目標元件D.中,余數(shù)送到D.的下一元件。其中S1.為被除數(shù),S2.為除數(shù)。除法指令的使用示例如圖5
36、-30所示。,,圖5-30 除法指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,除法指令的使用注意事項: 1)除法運算中若將位元件指定D.,則無法得到余數(shù),除數(shù)為0時則會出錯。 2)數(shù)據(jù)為有符號的二進制數(shù),最高位為符號位(0為正,1為負)。 3)源操作數(shù)可取所有數(shù)據(jù)格式,目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。 4)DIV(P)占7個程序步,DDIV(P)占13個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.4.5 加1指令 加1指令I(lǐng)NC(Increment)的功能編號為FNC24,該指令是將指定元件中的數(shù)值加1。加1指令的使用示例如圖5-31所示。,,圖5-31 加1指令的使用,三菱PLC基
37、礎(chǔ)與應(yīng)用,,加1指令的使用注意事項: 1)加1指令的結(jié)果不影響零標志位、借位標志和進位標志。 2)如果是連續(xù)指令,則每個周期均作一次加1運算,16位運算中,+32767再加1就變成-32768,+2147483647再加1,就會變成-2147483648。 3)操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。 4)INC(P)占3個程序步,DINC(P)占5個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,【例5-8】控制一臺電動機,要求正轉(zhuǎn)5s、停止5s、反轉(zhuǎn)5s、停止5s,并自動循環(huán)運行,直到停止運行。其梯形圖及程序設(shè)計如圖5-32所示。,,圖5-32 電動機定時正轉(zhuǎn)-停止-反轉(zhuǎn)-停止的自動循環(huán)運
38、行,三菱PLC基礎(chǔ)與應(yīng)用,,5.4.6 減1指令 減1指令DEC(Decrement)的功能編號為FNC25,該指令是將指定元件中的數(shù)值減1。減1指令的使用如圖5-33所示。,,圖5-33 減1指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,減1指令的使用注意事項: 1)減1指令的結(jié)果不影響零標志位、借位標志和進位標志。 2)如果是連續(xù)指令,則每個周期均作一次減1運算。 3)操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。 4)DEC(P)占3個程序步,DDEC(P)占5個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.4.7 字邏輯與指令 字邏輯與指令WAND指令的編號為FNC26。該指令是將兩個源操作數(shù)按
39、位進行與操作,結(jié)果存入在指定元件。邏輯與指令的使用如圖5-34所示。 5.4.8 字邏輯或指令 字邏輯或指令WOR指令的編號為FNC27。該指令是將兩個源操作數(shù)按位進行或操作,結(jié)果存入在指定元件。邏輯或指令的使用如圖5-34所示。 5.4.9 字邏輯異或指令 字邏輯異或指令WXOR(Exclusive OR)指令的編號為FNC28。該指令是將兩個源操作數(shù)按位進行異或操作,結(jié)果存入在指定元件。邏輯異或指令的使用如圖5-34所示。,三菱PLC基礎(chǔ)與應(yīng)用,,,,圖5-34 邏輯與、或和異或指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,邏輯與、或和異或指令的使用注意事項: 1)邏輯與指令常用于某些位清0,邏輯或
40、指令常用于某些位置1,而邏輯異或指令常用于判斷兩數(shù)是否相等。 2)邏輯與、或和異或指令的源操作數(shù)可取所有數(shù)據(jù)類型,目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。 3)WAND(P)、WOR(P)和WXOR(P)各占7個程序步,DWAND(P)、DWOR(P)和DWXOR(P)占13個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.4.10 求補指令 求補指令NEG(Negation)的功能編號為FNC29,該指令是將指定元件中的各位按位取反(01,10)后再加1,將其結(jié)果仍存放在原來的元件中。求補指令的使用如圖5-35所示。 FX系列PLC的負數(shù)用二進制的補碼形式來表示,最高位為符號位,正數(shù)
41、時該位為0,負數(shù)時該位為1,將負數(shù)求補后得到它的絕對值。,,圖5-35 求補指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,求補指令的使用注意事項: 1)NEG指令只有目標操作數(shù),可取KnY、KnM、KnS、T、C、D、V和Z。 2)NEG(P)占3個程序步,DNEG(P)占5個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,【例5-9】求兩個數(shù)之差的絕對值。 求兩個數(shù)之差的絕對值的梯形圖如圖5-36所示。,,圖5-36 求兩個數(shù)之差的絕對值,,三菱PLC基礎(chǔ)與應(yīng)用,5.5 循環(huán)與移位指令,循環(huán)與移位指令共有10條,編號為FNC30FNC39,主要用于數(shù)據(jù)的移位等操作。 5.5.1 循環(huán)右移指令 循環(huán)右移指令ROR(R
42、otation Right)的功能編號為FNC30,執(zhí)行該指令時,各位數(shù)據(jù)向右移動(從高位向低位)n位,最后一次移出來的那一位同時存入進位標志M8022中。如圖5-37所示。,三菱PLC基礎(chǔ)與應(yīng)用,,循環(huán)右移指令的使用注意事項: 1)16位指令和32位指令中n應(yīng)分別小于16和32。 2)ROR指令的目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。 3)ROR(P)占5個程序步,DROR(P)占9個程序步。,,圖5-37 循環(huán)右移指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,5.5.2 循環(huán)左移指令 循環(huán)右移指令ROL(Rotation Left)的功能編號為FNC31,執(zhí)行該指令時,各位數(shù)據(jù)向
43、左移動(從低位向高位)n位,最后一次移出來的那一位同時存入進位標志M8022中。如圖5-38所示。,,圖5-38 循環(huán)左移位指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,循環(huán)左移指令的使用注意事項: 1)16位指令和32位指令中n應(yīng)分別小于16和32。 2)ROL指令的目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。 3)ROL(P)占5個程序步,DROL(P)占9個程序步。 【例5-10】按1-2相激磁方式控制一個四相步進電動機??烧崔D(zhuǎn)控制,每步為1s。電動機運行時,指示燈亮。四相步進電動機的1-2相激磁方式波形和程序如圖5-39所示。,三菱PLC基礎(chǔ)與應(yīng)用,,,,圖5-39 四相步進電動
44、機的1-2相激磁方式波形圖和梯形圖,三菱PLC基礎(chǔ)與應(yīng)用,,5.5.3 帶進位的循環(huán)右移指令 帶進位的循環(huán)右移指令RCR(Rotation Right with Carry)的功能編號為FNC32,執(zhí)行該指令時,將各位數(shù)據(jù)連同進位標志M8022一起右移。如圖5-40所示。,,圖5-40 帶進位的循環(huán)右移指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,帶進位的循環(huán)右移指令的使用注意事項: 1)在循環(huán)右移過程中,移出的位將送入進位標志,原進位標志又被送回目標操作數(shù)的另一端。 2)RCR指令的目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。 3)RCR(P)占5個程序步,DRCR(P)占9個程序步。,
45、三菱PLC基礎(chǔ)與應(yīng)用,,5.5.4 帶進位的循環(huán)左移指令 帶進位的循環(huán)左移指令RCL(Rotation Left with Carry)的功能編號為FNC33,執(zhí)行該指令時,將各位數(shù)據(jù)連同進位標志M8022一起左移。如圖5-41所示。,,圖5-41 帶進位的循環(huán)左移指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,帶進位的循環(huán)左移指令的使用注意事項: 1)在循環(huán)左移過程中,移出的位將送入進位標志,原進位標志又被送回目標操作數(shù)的另一端。 2)RCL指令的目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。 3)RCL(P)占5個程序步,DRCL(P)占9個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.5.5 位
46、右移指令 位右移指令SFTR(Shift Right)的功能編號為FNC34,該指令使位元件中的狀態(tài)成組地向右移動,由n1指定位元件的長度,n2指定移動的位數(shù),一般n2n11024。位右移指令的使用如圖5-42所示。,,圖5-42 位右移指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,位右移指令的使用注意事項: 1)如果采用連續(xù)型指令,每個掃描周期都移動n2位。 2)SFTR指令源操作數(shù)可取X、Y、M和S,目標操作數(shù)可取Y、M、S。 3)SFTR(P)只有16位操作數(shù),占9個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.5.6 位左移指令 位左移指令SFTL(Shift Left)的功能編號為FNC35,該指令使
47、位元件中的狀態(tài)成組地向左移動,由n1指定位元件的長度,n2指定移動的位數(shù),一般n2n11024。位左移指令的使用如圖5-43所示。,,圖5-43 位左移指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,位左移指令的使用注意事項: 1)如果采用連續(xù)型指令,每個掃描周期都移動n2位。 2)SFTL指令源操作數(shù)可取X、Y、M和S,目標操作數(shù)可取Y、M、S。 3)SFTL(P)只有16位操作數(shù),占9個程序步。 【例5-11】四臺水泵輪流運行,由四臺三相異步電動機M1M4驅(qū)動。正常要求是兩臺運行兩臺備用。為了防止備用水泵長時間不用造成銹蝕等問題,要求四臺水泵中兩臺運行,并每隔8h切換一臺,使四臺水泵輪流運行。,三菱P
48、LC基礎(chǔ)與應(yīng)用,,,,圖5-44 四臺水泵輪流工作實例,三菱PLC基礎(chǔ)與應(yīng)用,,5.5.7 字右移指令 字右移指令WSFR(Word Shift Right)的功能編號為FNC36,該指令以字為單位,對n1位D.所指的字元件進行n2位S.字的向右移位,其工作過程與位右移指令類似。字右移指令的使用如圖5-45所示。,,圖5-45 字右移指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,字右移指令的使用注意事項: 1)一般情況下n2n1512。 2)WSFR指令源操作數(shù)可取KnX、KnY、KnM、KnS、T、C和D,目標操作數(shù)可取KnY、KnM、KnS、T、C和D。 3)WSFR(P)只有16位操作數(shù),占9個程
49、序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.5.8 字左移指令 字左移指令WSFL(Word Shift Left)的功能編號為FNC37,該指令以字為單位,對n1位D.所指的字元件進行n2位S.字的向左移位,其工作過程與位左移指令類似。字左移指令的使用示例如圖5-46所示。,,圖5-46 字左移指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,字左移指令的使用注意事項: 1)一般情況下n2n1512。 2)WSFL指令源操作數(shù)可取KnX、KnY、KnM、KnS、T、C和D,目標操作數(shù)可取KnY、KnM、KnS、T、C和D。 3)WSFL(P)只有16位操作數(shù),占9個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.5.9 移
50、位寫入指令 移位寄存器寫入指令SFWR(Shift Register Write)的功能編號為FNC38,該指令將S.中的數(shù)據(jù)依次傳送到D.中。移位寫入指令的使用示例如圖5-47所示。,,圖5-47 移位寫入指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,移位寫入指令的使用注意事項: 1)一般情況下2n512。 2)源操作數(shù)可取所有數(shù)據(jù)類型,目標操作數(shù)可取KnY、KnM、KnS、T、C和D。 3)SFWR(P)只有16位操作數(shù),占7個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.5.10 移位讀出指令 移位寄存器寫入指令SFRD(Shift Register Read)的功能編號為FNC39,該指令將S.中的數(shù)據(jù)
51、依次讀出到D.中。移位寫入指令的使用如圖5-48所示。,,圖5-48 移位寫入指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,移位寄存器又稱為FIFO(First In First Out,先入先出)堆棧,堆棧的長度范圍為2512字。移位寄存器寫入指令SFWR和移位寄存器讀出指令SFRD用于FIFO堆棧的讀寫,先寫入的數(shù)據(jù)先讀出。 移位讀出指令的使用注意事項: 1)一般情況下2n512。 2)源操作數(shù)可取所有數(shù)據(jù)類型,目標操作數(shù)可取KnY、KnM、KnS、T、C和D。 3)SFRD(P)只有16位操作數(shù),占7個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,【例5-12】入庫物品FIFO。寫入99個物品的產(chǎn)品編號(4位
52、十進制數(shù)),依次存放在D2D100中,按照先入庫的物品先出庫的原則,讀取出庫物品的產(chǎn)品編號,并用4位數(shù)碼管顯示產(chǎn)品編號。則其程序如圖5-49所示。,,圖5-49 移位寫入和讀出物品編號實例,,三菱PLC基礎(chǔ)與應(yīng)用,5.6 數(shù)據(jù)處理指令,數(shù)據(jù)處理指令共有10條,應(yīng)用指令的編號為FNC40FNC49。用來處理更復雜的運算或控制。 5.6.1 區(qū)間復位指令 區(qū)間復位指令ZRST(Zone Reset)的功能編號為FNC40,該指令是將D1.D2.之間的指定元件號范圍內(nèi)的同類元件成批復位。區(qū)間復位指令的使用如圖5-50所示。,,圖5-50 區(qū)間復位指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,區(qū)間復位指令的使用
53、注意事項: 1)D1.與D2.必須指定相同的組件區(qū)域。 2)D1.的元件號應(yīng)小于D2.的元件號。 3)目標操作數(shù)可取Y、M、S、T、C和D。 4)ZRST(P)只有16位操作數(shù),占5個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.6.2 解碼指令 解碼(譯碼)指令DECO(Decode)的功能編號為FNC41,該指令將S.的n位二進制數(shù)進行譯碼,結(jié)果用D.的第2n個元件置1來表示。解碼指令的使用如圖5-51所示。,,圖5-51 解碼指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,利用解碼指令,可以通過數(shù)據(jù)寄存器D中的數(shù)值來控制指定位元件的ON/OFF。解碼指令既可用于位元件,也可用于字元件。其具體用法如圖5-52
54、所示。,,圖5-52 解碼指令的使用二,三菱PLC基礎(chǔ)與應(yīng)用,,解碼指令的使用注意事項: 1)若D.指定的目標元件是字元件T、C、D,應(yīng)使n4,目標元件每一位都受控;若D.指定的目標元件是位元件Y、M、S,應(yīng)使n8,n=0時,不作處理。 2)位源操作數(shù)可取X、T、M和S;位目標操作數(shù)可取Y、M、S;字源操作數(shù)可取K、H、T、C、D、V和Z;字目標操作數(shù)可取T、C和D。 3)DECO(P)只有16位操作數(shù),占7個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.6.3 編碼指令 編碼指令ENCO(Encode)的功能編號為FCN42,編碼指令和解碼指令剛好相反,該指令是將S.的2n位中最高位的1進行編碼,編
55、碼存放D.的低n位中。編碼指令的使用示例如圖5-53所示。,,圖5-53 編碼指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,編碼指令的使用注意事項: 1)若S.指定的源操作數(shù)是字元件T、C、D、V和Z時,應(yīng)使n4;若S.指定的源操作數(shù)是位元件X、Y、M、S時,應(yīng)使n的取值范圍為18。 2)源操作數(shù)是字元件時,可以是T、C、D、V和Z;源操作數(shù)是位元件時,可以是X、Y、M和S。位目標操作數(shù)可取Y、M、S;字目標操作數(shù)可取T、C和D。 3)如果指定源操作數(shù)中有多個1,則只有最高位的1有效。 4)ENCO(P)只有16位操作數(shù),占7個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.6.4 ON位數(shù)統(tǒng)計指令 ON位數(shù)統(tǒng)計
56、指令SUM的功能編號為FNC43,該指令用來統(tǒng)計指定元件中1的個數(shù),用于將S.中1的個數(shù)存放在D.中,無1時零標志M8020=1。ON位數(shù)統(tǒng)計指令的使用示例如圖5-54所示。,,圖5-54 ON位數(shù)統(tǒng)計指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,ON位數(shù)統(tǒng)計指令的使用注意事項: 1)源操作數(shù)可取所有數(shù)據(jù)類型,目標操作數(shù)可取KnY、KnM、KnS、T、C、D、V和Z。 2)SUM(P)占5個程序步,DSUM(P)占9個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.6.5 ON位判別指令 ON位判別指令BON(Bit ON Check)功能編號為FNC44,該指令是判斷S.的指定位n是否為1,為1時,D.=1,為
57、0時,D.=0。ON位判別指令的使用示例如圖5-55所示。,,圖5-55 ON位判別指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,ON位判別指令的使用注意事項: 1)源操作數(shù)可取所有數(shù)據(jù)類型,目標操作數(shù)可取Y、M、S。 2)BON(P)占7個程序步,n=015;DBON(P)占13個程序步,n=031。,三菱PLC基礎(chǔ)與應(yīng)用,,5.6.6 平均值指令 平均值指令MEAN的功能編號為FNC45,該指令是求S.開始的n個字元件的平均值,結(jié)果送到D.中,余數(shù)舍去。平均值指令的使用示例如圖5-56所示。 平均值指令的使用注意事項: 1)源操作數(shù)可取KnX、KnY、KnM、KnS、T、C和D,目標操作數(shù)可取Kn
58、Y、KnM、KnS、T、C、D、V和Z,n=164。 2)MEAN(P)只有16位操作數(shù),占7個程序步。,,圖5-56 平均值指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,5.6.7 報警器置位指令 報警器置位指令A(yù)NS(Annunciator Set)的功能編號為FNC46,該指令用于驅(qū)動信號的報警。報警器置位指令的使用示例如圖5-57所示。 報警器置位指令的使用注意事項: 1)報警器的源操作數(shù)為T0T199,目標操作數(shù)為S900S999,n=132767(n是100ms定時器的設(shè)定值)。 2)ANS(P)只有16位操作數(shù),占7個程序步。,,圖5-57 報警器置位指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,
59、5.6.8 報警器復位指令 報警器復位指令A(yù)NR(Annunciator Reset)的功能編號為FNC47,該指令用于對報警器S900S999復位。報警器復位指令的使用示例如圖5-58所示。 報警器復位指令的使用注意事項: 1)ANR無操作數(shù)。 2)ANR(P)為16位運算指令,占1個程序步。,,圖5-58 報警器復位指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,【例5-13】用報警器監(jiān)控送料小車的運行情況。,,圖5-59 送料車運行監(jiān)控報警,三菱PLC基礎(chǔ)與應(yīng)用,,5.6.9 二進制平方根指令 二進制平方根指令SQR(Square Root)的功能編號為FNC48,該指令對S.中的數(shù)值開平方運算,
60、結(jié)果存放在D.中。該指令的使用如圖5-60所示。 二進制平方根指令的使用注意事項: 1)源操作數(shù)應(yīng)大于零,可以取K、H、D,目標操作數(shù)為D。 2)SQR(P)占5個程序步,DSQR(P)占9個程序步。,,圖5-60 二進制平方根指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,5.6.10 浮點數(shù)轉(zhuǎn)換指令 二進制整數(shù)轉(zhuǎn)換為二進制浮點數(shù)指令FLT(Floating Point)的功能編號為FNC49,該指令將S.中的二進制整數(shù)轉(zhuǎn)換為二進制浮點數(shù),結(jié)果存放在D.中。FLT指令的使用如圖5-61所示。 浮點數(shù)轉(zhuǎn)換指令的使用注意事項: 1)源操作數(shù)和目標操作數(shù)均為D。 2)FLT(P)占5個程序步,DFLT(P
61、)占9個程序步。,,圖5-61 浮點數(shù)轉(zhuǎn)換指令的使用,,三菱PLC基礎(chǔ)與應(yīng)用,5.7 高速處理指令,高速處理指令共有10條,應(yīng)用指令的編號為FNC50FNC59,高速處理指令主要用于對PLC中的輸入輸出數(shù)據(jù)進行立即高速處理,以避免受掃描周期的影響。 5.7.1 輸入輸出刷新指令 輸入輸出刷新指令REF(Refresh)的功能編號為FNC50,該指令是將X或Y的n位繼電器的值進行刷新。輸入輸出刷新指令的使用示例如圖5-62所示。,,圖5-62 輸入輸出刷新指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,PLC在處理輸入輸出信號時采用全部一次再生的方式,也就是在掃描Step 0之前會將輸入端(X)信號全部讀出
62、,然后掃描到END時才將最新的數(shù)據(jù)讀取或送到輸出端(Y)來驅(qū)動外部負載。如果在PLC程序執(zhí)行中不必等到END指令,希望能將最新的數(shù)據(jù)讀取或送到輸出端(Y),則可使用REF指令。 輸入輸出指令的使用注意事項: 1)目標操作數(shù)為元件編號個位為0的X或Y,如X0、X10、Y0、Y20等,n必須是8的倍數(shù),n=8,16256。 2)REF(P)只能進行16位運算,占5個程序步。,三菱PLC基礎(chǔ)與應(yīng)用,,5.7.2 濾波調(diào)整指令 濾波調(diào)整指令REFF(Refresh And Filter Adjust)的功能編號為FNC51,該指令用于改變X0X17的輸入濾波時間常數(shù)(對于FX2N-16M型PLC為X0
63、X7)。輸入濾波時間常數(shù)n=060ms。當濾波時間常數(shù)設(shè)為0時,但實際上該輸入達不到0,X0X1為20s,其它為50s。 X0X17的輸入濾波值(10ms)被傳送到特殊數(shù)據(jù)寄存器D8020,因此,也可以通過改變D8020中的初始值來設(shè)定輸入濾波時間常數(shù)。 濾波調(diào)整指令的使用示例如圖5-63所示。,三菱PLC基礎(chǔ)與應(yīng)用,,濾波調(diào)整指令的使用注意事項: 1)如果X0X7用作高速計數(shù)器輸入或使用FNC56速度檢測指令以及中斷輸入時,相對應(yīng)輸入端的反應(yīng)時間則被自動調(diào)整為最小值(50s),沒有關(guān)系的輸入端還是維持為10ms。 2)REFF(P)為16位運算指令,占7個程序步。,,圖5-63 濾波調(diào)整指令
64、的使用,三菱PLC基礎(chǔ)與應(yīng)用,,5.7.3 矩陣輸入指令 矩陣輸入指令MTR(Matrix)的功能編號為FNC52,該指令是使用8點的輸入與n點的輸出,按順序讀入8點n列的輸入信號。矩陣輸入指令的使用示例如圖5-64所示。,,圖5-64 矩陣輸入指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,矩陣輸入指令的使用注意事項: 1)S.指定連接輸入端的起始號碼,從該號碼開始算起連續(xù)8點為矩陣輸入端;D1.則是指定矩陣掃描的起始號碼,配合n來決定點數(shù),如D1.=Y20,n=3表示由Y20、Y21、Y22作矩陣掃描;D2.指定讀入結(jié)果的起始號碼,如指定M30,則表示M30M37、M40M47、M50M57。 2)使
65、用本指令每一列讀取時間約20ms,如果8列,則讀取時間20ms8=160ms,因此ON/OFF速度快于160ms的輸入信號就不適用于矩陣輸入。 3)MTR指令一般使用M8000觸點,該接點在PLC運行時始終是接通的,如果用其他的觸點,則當觸點斷開時,指定輸出Y開始的16點(例如Y40Y57)將失電,這樣需要在MTR指令前后增加保護Y數(shù)據(jù)的程序。 4)源操作數(shù)S.是元件編號個位為0的X,通常用X20以后的編號(FX2N-16M為X10以后的編號);目標操作數(shù)D1.是元件編號個位為0的Y;目標操作數(shù)D2.是元件編號個位為0的Y、M和S;n的取值范圍是28。 5)MTR為16位運算指令,占9個程序步
66、。,三菱PLC基礎(chǔ)與應(yīng)用,,5.7.4 高速計數(shù)器置位指令 調(diào)整計數(shù)器置位指令HSCS(Set By High Speed Counter)的功能編號為FNC53,該指令用于高速計數(shù)器的置位,當計數(shù)器的當前值達到預(yù)置值時,計數(shù)器的輸出觸點立即動作。它采用了中斷方式使置位和輸出立即執(zhí)行而與掃描周期無關(guān)。由于該指令用于32位高速計數(shù)器C235C255,所以應(yīng)該用32位DHSCS指令。調(diào)整計數(shù)器置位指令的使用如圖5-65所示。,三菱PLC基礎(chǔ)與應(yīng)用,,高速計數(shù)器置位指令的使用注意事項: 1)源操作數(shù)S1.可取所有數(shù)據(jù)類型,S2.為C235C255;目標操作數(shù)可取Y、M和S。 2)該指令只有32位運算,必須輸入DHSCS,若輸入HSCS則無效,占13個程序步。,,(a)高速計數(shù)器一,,(b)高速計數(shù)器二,圖5-65 高速計數(shù)器置位指令的使用,三菱PLC基礎(chǔ)與應(yīng)用,,5.7.5 高速計數(shù)器復位指令 高速計數(shù)器復位指令HSCR(Reset By High Speed Counter)的功能編號為FNC54,該指令用于高速計數(shù)器的復位,同DHSCS一樣,該指令為32位指令,應(yīng)用DHSCR,而不能用H
- 溫馨提示:
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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。