在FX1S型PLC中用于進(jìn)行數(shù)據(jù)比較的編程指令有兩種,即觸點比較指令和比較指令(CMP 指令),下面分別通過幾個實例說明它們的應(yīng)用。
一、觸點比較指令
觸點比較指令是帶有邏輯運算功能的比較指令,編程時相當(dāng)于一個觸點,執(zhí)行時比較源操作數(shù) [S1]和 [S2],滿足比較條件則觸點閉合,源操作數(shù)可以取所有的數(shù)據(jù)類型。觸點比較指令既有基本指令的邏輯功能,也有高級指令的運算功能,在編寫程序時,它們和普通觸點一樣放在梯形圖的橫線上,非常實用。
例1:試設(shè)計電動機(jī)的單鍵啟停程序,即按一下按鈕電動機(jī)啟動,再按一下按鈕,電動機(jī)停轉(zhuǎn)。
編程思路分析:當(dāng)我們希望在同一個計數(shù)器或定時器不同的當(dāng)前值時有不同的輸出時,用觸點比較指令較方便。本例中用計數(shù)器C0對按鈕的按動次數(shù)進(jìn)行計數(shù)。為了更準(zhǔn)確地進(jìn)行計數(shù),采用FX1S型PLC特有的按鈕觸點作為計數(shù)信號,由于按下按鈕兩次,電動機(jī)有兩種狀態(tài),以后重復(fù)前面的過程,因此計數(shù)器的常數(shù)設(shè)定值取2。本例中觸點比較指令是將計數(shù)器的當(dāng)前值與十進(jìn)制常數(shù)進(jìn)行比較,當(dāng)計數(shù)器的當(dāng)前值等于1時,使Y1置位,即電動機(jī)轉(zhuǎn)動;當(dāng)計數(shù)器的當(dāng)前值等于2時,使Y1復(fù)位,即電動機(jī)停轉(zhuǎn)。同時使計數(shù)器清零,為下一次計數(shù)做準(zhǔn)備。程序如圖1所示。
例2:某生產(chǎn)自動線小車用電動機(jī)拖動,電機(jī)正轉(zhuǎn)小車前進(jìn),電動機(jī)反轉(zhuǎn)小車后退。如圖2所示??刂埔笕缦拢?/p>
按下啟動按鈕SB1后小車前進(jìn),碰到限位開關(guān)SQ1后退至原位0停止。
在原位0停止3S后小車?yán)^續(xù)前進(jìn),碰到限位開關(guān)SQ2后退至原位0停止。
自動循環(huán)次數(shù)由按鈕SB2設(shè)定,運行滿設(shè)定次數(shù)自動停止。
設(shè)置預(yù)停按鈕SB3,按下預(yù)停按鈕小車完成本次循環(huán)后停于原位。試設(shè)計程序。
編程思路分析:根據(jù)要求自動循環(huán)次數(shù)由按鈕SB2(X2)設(shè)定,運行滿設(shè)定次數(shù)自動停止,可以用計數(shù)器C0對X2的輸入次數(shù)進(jìn)行計數(shù),用X7作為計數(shù)器C1的計數(shù)信號,完成對小車循環(huán)次數(shù)的計數(shù)。本例中觸點比較指令是將兩個計數(shù)器的當(dāng)前值進(jìn)行比較,當(dāng)C0和C1的當(dāng)前值相等時,即小車運行滿設(shè)定次數(shù)時自動停止。C0和C1的常數(shù)設(shè)定值理論上可以在1~32767之間設(shè)定,本例中設(shè)定為20。編程時需注意C0和C1不能同時復(fù)位,否則一開始M4即得電,小車不能運行。調(diào)試時,先按SB2數(shù)次,設(shè)定自動循環(huán)次數(shù),然后再按下啟動按鈕SB1(X1),小車自動運行滿設(shè)定次數(shù)時停止。程序如圖3所示。
二、比較指令
比較指令CMP(Compare)的功能:將源操作元件[S1]和源操作元件[S2]的數(shù)據(jù)進(jìn)行比較,并將比較結(jié)果送到目標(biāo)操作元件[D]中。目標(biāo)操作元件[D]由三個元件組成,指令中[D]給出首地址,其余兩個為后面的相鄰元件。
例3:圖4為某生產(chǎn)流水線的送料車定點呼叫控制示意圖。送料車根據(jù)要求對1#~4#的工位進(jìn)行送料。每個工位上都設(shè)置有位置檢測傳感器SQ,用于檢測送料車的到位情況。每個工位都設(shè)置有呼叫按鈕SB,用于呼叫送料車。送料車在生產(chǎn)線1#~4#工位范圍內(nèi)左、右運動,當(dāng)某個工位的呼叫按鈕閉合時,送料車將自動運行至呼叫工位。試設(shè)計程序。
編程思路分析:本例中需要將呼叫按鈕號和送料車的工位號大小進(jìn)行比較,從而判斷送料車的運行方向,比較結(jié)果有三種,需要輸出三種結(jié)果,即當(dāng)呼叫按鈕號大于送料車所在的工位號時,送料車右行;當(dāng)呼叫按鈕號等于送料車所在的工位號時,送料車不動;當(dāng)呼叫按鈕號小于送料車所在的工位號時,送料車左行。因此采用FX1S型PLC中的比較指令CMP很容易實現(xiàn)。在任何一個呼叫按鈕閉合的瞬間,采用脈沖微分指令PLS得到一個掃描周期寬度的控制信號M0,用M0信號控制MOV指令的執(zhí)行,將當(dāng)前的呼叫信號傳送到數(shù)據(jù)寄存器D1中。同理,將送料車當(dāng)前所在的位置號傳送到數(shù)據(jù)寄存器D2中。在M0為ON時,執(zhí)行比較指令,確定送料車的運動方向。當(dāng)D1>D2時,M1觸點閉合,送料車右行;當(dāng)D1=D2時,M2觸點閉合,清除比較結(jié)果,送料車不動;當(dāng)D1 (作者單位:江蘇省常州技師學(xué)院) 注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文