一、比較指令
1)比較指令(CMP)
比較源操作數(shù)[S1·]和[S2·]的值,并將比較的結(jié)果送到目標(biāo)操作數(shù)[D·]。
下圖中當(dāng)X0為ON時將[S1·]K100和[S2·]C20進(jìn)行比較,并將結(jié)果分別保存到M0、M1、M2中。
當(dāng)[S1·]100>[S2·]C20當(dāng)前值時,M0為ON;當(dāng)[S1·]100=[S2·]C20當(dāng)前值時,M1為ON;當(dāng)[S1·]100<[S2·]C20當(dāng)前值時,M2為ON。
2)觸點(diǎn)比較指令
對兩個數(shù)值進(jìn)行比較,條件成立時輸出為ON。比較方式為:/=/>=/<=/<>(不等于)。
下圖表示當(dāng)C1當(dāng)前值>20且C2當(dāng)前值<=30時,Y0為ON。
二、四則運(yùn)算指令
1)加運(yùn)算(ADD )
將源操作數(shù)[S1·]和[S2·]相加,并將結(jié)果保存到目標(biāo)操作數(shù)[D·]。在進(jìn)行32位運(yùn)算時指定的操作數(shù)為低位,如圖中程序則表示(D101,D100)+(D11,D110)→(D121,D120)。
2)減運(yùn)算(SUB)
用源操作數(shù)[S1·]減去[S2·],并將結(jié)果保存到目標(biāo)操作數(shù)[D·]。32位運(yùn)算的方式與加運(yùn)算相同。
3)乘運(yùn)算(MUL)
將源操作數(shù)[S1·]和[S2·]相乘,并將結(jié)果保存到目標(biāo)操作數(shù)[D·]。
在進(jìn)行16位運(yùn)算時目標(biāo)操作數(shù)為32位,即(D0)×(D1)→(D5,D4)。
在進(jìn)行32位運(yùn)算時目標(biāo)操作數(shù)為64位,即(D1,D0)×(D3,D2)→(D7,D6;D5,D4)。
4)除運(yùn)算(DIV)
被除數(shù)[S1·]除以除數(shù)[S2·],并將結(jié)果保存到目標(biāo)操作數(shù)[D·],余數(shù)保存到[D·]的下一個元件。
在進(jìn)行16位運(yùn)算時被除數(shù)為(D0),除數(shù)為(D2),商為(D4),余數(shù)為(D5)。
在進(jìn)行32位運(yùn)算時被除數(shù)為(D1,D0),除數(shù)為(D3,D2)商為(D5,D4)余數(shù)為(D7,D6)。
5)加1和減1指令
使用脈沖執(zhí)行時,每檢測到執(zhí)行條件的上升沿[D·]會自動加1/減1。
使用連續(xù)執(zhí)行時,則每個掃描周期加1/減1。
三、區(qū)間復(fù)位指令(ZRST)
將[D1·]和[D2·]指定范圍內(nèi)的元件成批復(fù)位。
[D1·]和[D2·]應(yīng)為同類型元件,[D1·]指定的元件號應(yīng)小于等于[D2·]指定的元件號。
下圖程序表示將M500~M599成批復(fù)位。
四、指令運(yùn)用
以《部件分配》項(xiàng)目為例對上述指令進(jìn)行演示。
1)確定變量表
進(jìn)入項(xiàng)目后,根據(jù)項(xiàng)目要求和仿真動畫確定各個元件所對應(yīng)的I/O地址。
|項(xiàng)目要求
仿真動畫
2)編輯程序
程序段1:物件供給按下按鈕PB1且機(jī)器人在原點(diǎn),機(jī)器人供給物件。
程序段2:1號傳送帶正轉(zhuǎn)旋轉(zhuǎn)旋鈕SW1,1號傳送帶動作。
|程序段3:物件型號檢測當(dāng)X3為ON且X2、X1為OFF時,表示物件是小型號,讓輔助繼電器M1為ON并自鎖。當(dāng)X4檢測到物件放置到位后復(fù)位M1。中型號與大型號物件的檢測原理與其類似。
程序段4:推出機(jī)構(gòu)動作控制物件到位檢測傳感器X10~X12檢測到物件到達(dá)指定位置后,對應(yīng)的推出機(jī)構(gòu)動作。當(dāng)物件到達(dá)指定數(shù)量后,推出機(jī)構(gòu)不再動作。
程序段5:2~4號輸送帶動作控制當(dāng)對應(yīng)型號的物件沒有達(dá)到指定數(shù)量,且物件到位檢測傳感器X10~X12沒有檢測到物件,對應(yīng)的輸送帶動作。當(dāng)對應(yīng)型號的物件達(dá)到指定數(shù)量后,無論物件到位檢測傳感器X10~X12是否檢測到物件,所有輸送帶都要動作,將物料推到地下。旋鈕SW1為OFF后所有輸送帶停止動作。
程序段6:物件計數(shù)每檢測到物件放置檢測傳感器X4~X6的上升沿,對應(yīng)寄存器就進(jìn)行加1。加1指令輸入方式:INC(空格)D1。
程序段7:比較物件數(shù)量當(dāng)物件未達(dá)到指定數(shù)量時,物件正常輸送與放置;當(dāng)物件到達(dá)指定數(shù)量后,推出機(jī)構(gòu)不動作,直接將該物件輸送到地上。比較指令輸入方法:=(空格)D1(空格)K2。
程序段8:復(fù)位寄存器所有動作完成后將旋鈕SW1旋轉(zhuǎn)到OFF,并利用區(qū)間復(fù)位指令對寄存器進(jìn)行復(fù)位,等待開始下一次循環(huán)。
程序整體瀏覽