順序控制指令是plc生產(chǎn)廠家為用戶提供的可使功能圖編程簡單化和規(guī)范化的指令。
表1 順序控制指令的形式及功能
stl lad
功能
操作對(duì)象
lscr bit
順序狀態(tài)開始
s(位)
scrt bit
順序狀態(tài)轉(zhuǎn)移
s(位)
scre
順序狀態(tài)結(jié)束
無
cscre
條件順序狀態(tài)結(jié)束
無
從上表中可以看出,順序控制指令的操作對(duì)象為順控繼電器s,也把s稱為狀態(tài)器,每一個(gè)s的位都表示功能圖中的一種狀態(tài)。s的范圍為:即s0.0~s31.7。
從lscr指令開始到scre指令結(jié)束的所有指令組成一個(gè)順序控制繼電器(scr)段。lscr指令標(biāo)記一個(gè)scr段的開始,當(dāng)該段的狀態(tài)器置位時(shí),允許該scr段工作。scr段必須用scre指令結(jié)束。當(dāng)scrt指令的輸入端有效時(shí),一方面置位下一個(gè)scr段的狀態(tài)器s,以便使下一個(gè)scr段工作;另一方面又同時(shí)使該段的狀態(tài)器復(fù)位,使該段停止工作。由此可以總結(jié)出每一個(gè)scr程序段一般有三種功能:
(1)驅(qū)動(dòng)處理:即在該段狀態(tài)器有效時(shí),處理相應(yīng)的工作;有時(shí)也可能不做任何工作;
(2)指定轉(zhuǎn)移條件和目標(biāo):即滿足什么條件后狀態(tài)轉(zhuǎn)移到何處;
(3)轉(zhuǎn)移源自動(dòng)復(fù)位功能:狀態(tài)發(fā)生轉(zhuǎn)移后,置位下一個(gè)狀態(tài)的同時(shí),自動(dòng)復(fù)位原狀態(tài)。
1、順序控制指令的應(yīng)用
液壓動(dòng)力滑臺(tái)在自動(dòng)機(jī)床中被廣泛采用,這里以液壓動(dòng)力滑臺(tái)控制為例來說明順序功能圖設(shè)計(jì)方法以及順序控制指令的使用方法。
液壓動(dòng)力滑臺(tái)在實(shí)際工作時(shí)的運(yùn)動(dòng)過程一般是:快進(jìn)——工進(jìn)——快退。其運(yùn)動(dòng)過程由快進(jìn)、工進(jìn)、快退三個(gè)電磁閥控制,控制系統(tǒng)plc各 i/o功能及地址分配如表2所示。機(jī)床液壓滑臺(tái)控制系統(tǒng)如圖1所示。
表2 液壓動(dòng)力滑臺(tái)控制系統(tǒng)plc i/o地址分配
功能名稱 動(dòng)作器件
i/o地址
說明
啟動(dòng)按鈕
sb1
i0.0
啟動(dòng)滑臺(tái)
原點(diǎn)位置
sq1
i0.1
滑臺(tái)在原點(diǎn)位置
工進(jìn)起點(diǎn)
sq2
i0.2
滑臺(tái)運(yùn)動(dòng)到工進(jìn)起點(diǎn)位置
工進(jìn)終點(diǎn)
sq3
i0.3
滑臺(tái)運(yùn)動(dòng)到工進(jìn)終點(diǎn)位置
快進(jìn)
yv1
q0.0
滑臺(tái)快進(jìn)
工進(jìn)
yv1、yv2
q0.0、q0.1
滑臺(tái)工進(jìn)
快退
yv3
q0.2
滑臺(tái)快退
初始化脈沖sm0.1將初始狀態(tài)s0.1置位。當(dāng)按下起動(dòng)按鈕時(shí)i0.0接通,s0.2置位,s0.2接通q0.0實(shí)現(xiàn)快進(jìn)。當(dāng)快進(jìn)到位時(shí),sq2動(dòng)作,使i0.2接通, s0.3置位,而s0.2復(fù)位, q0.0繼續(xù)接通,并且q0.1也同時(shí)接通,轉(zhuǎn)為工進(jìn)。工進(jìn)到位時(shí)sq3動(dòng)作使i0.3接通,s0.4置位使q0.2接通,滑臺(tái)快退回原點(diǎn)使sq1動(dòng)作而i0.1接通,s0.1重新置位,這時(shí)滑臺(tái)停止于原點(diǎn)等待下一次起動(dòng)。
使用說明:
(1)順控指令僅對(duì)元件s有效,順控繼電器s也具有一般繼電器的功能,所以對(duì)它能夠使用其他指令。
(2)scr段程序能否執(zhí)行取決于該狀態(tài)器(s)是否被置位,scre與下一個(gè)lscr之間的指令邏輯不影響下一個(gè)scr段程序的執(zhí)行。
(3)不能把同一個(gè)s位用于不同程序中,例如:如果在主程序中用了s0.1,則在子程序中就不能再使用它。
(4)在scr段中不能使用jmp和lbl指令,就是說不允許跳人、跳出或在內(nèi)部跳轉(zhuǎn),但可以在scr段附近使用跳轉(zhuǎn)和標(biāo)號(hào)指令。
(5)在scr段中不能使用for、next和end指令。
(6)在狀態(tài)發(fā)生轉(zhuǎn)移后,所有的scr段的元器件一般也要復(fù)位,如果希望繼續(xù)輸出,可使用置位/復(fù)位指令。
(7)在使用功能圖時(shí),狀態(tài)器的編號(hào)可以不按順序安排。
圖1 機(jī)床液壓滑臺(tái)控制系統(tǒng)