S7-200SMART 功能指令應用
嗨!!!各位小伙伴們,今天我們向大家介紹一個不常用但卻很實用的一個功能指令---移位寄存器指令(SHRB)
移位寄存器位指令將位值移入移位寄存器。該指令提供了排序和控制產品流或數據的簡便方法。使用該指令在每次掃描時將整個寄存器移動一位。可用于順序啟停或逆序啟停;指令格式如下所示:
但N若為正數,位移動表示從低位開始;若為負數,表示從高位開始移動
移位寄存器位指令將 DATA 的位值移入移位寄存器。S_BIT 移位寄存器低有效位的位置。N 移位寄存器的長度和移位方向(正向移位 = N,反向移位 = -N)。
將 SHRB 指令移出的每個位值復制到溢出存儲器位 SM1.1 中。
移位寄存器位由低有效位 S_BIT 位置和長度 N 的位數定義。
下面通過一個小案例來說明移位寄存器指令的應用。
如下圖所示為多級傳送帶的控制示意圖,控制要求如下:
(1)落料閥打開后,傳送電機M1馬上打開,延時6S后電機M2啟動
(2)電機2 啟動后延時5S啟動電機M3 ;電機M3啟動后延時4S啟動電機M4
(3)若按下停止按鈕,落料閥需關閉,但為了防止物料累積,需根據各級傳送帶傳送的時間差別分別將4臺電機停止。
(4)落料閥關閉6S后停止電機M1,5S后停電機M2, 4S后停電機M3,3S后停電機M4
(5)按下緊急按鈕,所有輸出都要停止
參考程序編寫如下: