广东湘恒智能科技有限公司
主营产品: 西门子变频器,西门子PLC\西门子模块、西门子触摸屏、西门子伺服电机、西门子工控机、西门子集成系统、西门子低压、西门子控制单元、西门子CPU,广东省西门子授权代理商,等
安徽省西门子中国(授权)一级代理商-西门子选型-西门子技术支持-西门子维修服务

在实际生产中经常要用到次品检测,需要将次品剔除。如果检测出是次品就马上剔除,相对来说所花的时间长效率低,如果我要等待移动到几个工位后再剔除,那么我们应该怎么做呢?这时候就要用到PLC的移位寄存器指令。指令如下图:

图片

EN:每个扫描周期扫描到条件满足指令就执行一次,一般用边沿执行。

DATA:状态移入位(次品检测传感器)。

S_BIT:指定移位寄存器的最低位。

N:指定移位寄存器的长度和方向(N为正数左移,N位负数右移)最大为64位。

左移指由低位向高位移,右移为由高位向低位移。

每次固定移动一位,不可更改。

位排列顺序遵循编号越大越在高位,与其他移位指令排列方式不一致。Q0.7的高位为Q1.0。

执行指令前Q0.0到Q1.1的状态如下图所示:

图片

指令执行一次后,Q0.0到Q1.1左移一位,最高位溢出,最低位以I0.1的状态补入。执行一次指令后状态如下图所示:

图片

左移指令

根据数据类型不同有字节左移指令,字左移指令,双字左移指令。

以字左移为例,说明移位指令的执行过程。VW12包含VB12,VB13两个字节,VB12为高字节,VB13为低字节,左移一位时将V13.7的状态移给V12.0,移出位V13.0直接补零,溢出位V12.7舍去。

右移指令

图片

根据数据类型不同有字节右移指令,字右移指令,双字右移指令。

注意:1)IN和OUT必须同一地址。

2)每个扫描周期检测到EN条件满足都会发生移位,所以需要加边沿指令配合使用。

3)左移和右移指令里移出位直接补零,溢出位直接丢掉。

循环左移指令

图片

循环右移指令

图片

循环左移和循环右移指令将输入数值(IN)向左或向右移动N位,并将结果载入输出数值(OUT)中,将溢出位循环补给移除位。对于字节循环指令,如果移位N大于8,则实际移动位数为N/8取余。


展开全文
相关产品
拨打电话 微信咨询 发送询价