线下实训
HOME
线下实训
正文内容
plc编程循环右移 PLC编程基础循环位移指令的使用方法
发布时间 : 2025-05-07
作者 : 小编
访问数量 : 23
扫码分享至微信

PLC编程基础循环位移指令的使用方法

在使用PLC编程的过程中,做一些循环的工作或者移位的工作,PLC的循环移位指令可以使这类工作变得简单容易。如下表是PLC的循环移位类指令:

1、循环右移指令

循环右移指令使不包括进位标志 在内的指定位数部分的位信息右移、循环的指令。

循环右移指令

D:保存循环右移数据的字软元件编号

n:循环移动的位数[n≦16(16位指令),n≦32(32位指令)]

循环右移指令的执行过程如下图所示:

2、循环左移指令

循环左移使不包括进位标志位在内的指定位数部分的位信息左移、循环的指令。

D:保存循环左移数据的字软元件编号

n:循环移动的位数[n≦16(16位指令),n≦32(32位指令)]

循环左移指令的执行过程如下图所示:

3、带进位循环右移

使包括进位标志位在内的指定位数部分的位信息右移、循环的指令。

D:保存循环右移数据的字软元件编号

n:循环移动的位数[n≦16(16位指令),n≦32(32位指令)]

带进位循环右移的执行过程如下:

4、带进位循环左移

使包括进位标志位在内的指定位数部分的位信息左移、循环的指令。

D:保存循环左移数据的字软元件编号

n:循环移动的位数[n≦16(16位指令),n≦32(32位指令)]

带进位循环左移的执行过程如下:

5、位右移指令

使指定位长度的位软元件每次右移指定的位长度的指令。

S:右移后在移位数据中保存的起始位软元件编号

D:右移的起始位软元件编号

n1:移位数据的位数据长度n2≦n1≦1024

n2:右移的位点数n2≦n1≦1024

位右移指令执行过程如下图所示:

6、位左移

使指定位长度的位软元件每次左移指定的位长度的指令。

S:左移后在移位数据中保存的起始位软元件编号

D:左移的起始位软元件编号

n1:移位数据的位数据长度n2≦n1≦1024

n2:左移的位点数n2≦n1≦1024

位左移指令执行过程如下图所示:

7、字右移指令

将n1个字长的字软元件右移n2个字的指令。

S:右移后在移位数据中保存的起始位软元件编号

D:保存右移数据的起始字软元件编号

n1:移位数据的字数据长度n2≦n1≦1024

n2:右移的字点数n2≦n1≦1024

字右移指令的执行过程如下图所示:

8、字左移指令

将字数据信息左移指定字个数的指令。

S:左移后在移位数据中保存的起始字软元件编号

D:保存左移数据的起始字软元件编号

n1:移位数据的字数据长度n2≦n1≦1024

n2:左移的字点数n2≦n1≦1024

字左移指令执行过程如下图所示:

(转载请注明来源函控自动化工程师头条号)

三菱PLC基础知识:移位指令的应用

关注“PLC发烧友 ”,一起涨知识!

我们都知道移位指令的功能是对数据进行左、右移动。有循环移位指令ROR,ROL,RCR和RCL,位移字移指令SFTR,SFTL,WSFR和WSFL,还有移位读写指令SFWR和SFEL。在编写程序中,较为常用的就是POR,ROL,SFTR和SFTL这几个了,对于这几个指令我们就要掌握一下了。在这里,我们需要注意的一点是,在使用这些指令时最好是使用脉冲执行型指令。因为如果使用连续执行型指令的话,这样每个扫描周期都要执行一次了。

下面我们便举几个简单的例子来学习一下这几个常用指令。

1、 要求Y0-Y2三盏灯轮流亮1s,然后一起亮1s,如此反复循环。

下面就分析一下以上的程序。对于Y2Y1Y0,依控制要求,每次其输出应为001,010,100,111,其对应的十六进制数为1247,先将此循环数据送到数据寄存器,再执行循环移位,以1s的速度移位,每次移动4位,最后将数据寄存器中的低四位送到K1Y0,这样在Y3-Y0的输出就会得到其控制要求的输出。

该要求既可以用循环右移指令,也可以用循环左移指令,其实都是差不多的,只需要改动一点点。只要了解了控制要求,理解了它是如何控制的,就万变不离其宗了。下面便是用循环左移指令编写的程序。

2、控制一组8个灯,当启动时,要求Y7-Y0这8个灯从右到左逐个点亮,全部灯点亮时,再从左到右逐个熄灭,全部灯熄灭后,再从左到右逐个点亮,全部灯点亮时,再从右到左逐个熄灭,如此反复循环。

下面也分析一下以上的程序。定时器T0用于左移和右移的移位信号,定时器T1用于对K1M0的加1计数控制,INCP K1M0则为加1计数器,计数值用K1M0表示,其中M1、M0的计数值用于左右移位的控制。当M1=0,M0=1时为左移逐渐点亮;当M1=1,M0=0时为右移逐渐熄灭;当M0 =1,M1 =1时为右移逐渐点亮;当M0 =0,M1= 0时为左移逐渐熄灭。

当按下启动按钮时,T1常闭触点闭合,执行一次INCP K1M0指令,K1M0=0001,则M1=0,M0=1,M1常闭触点闭合,执行左移指令SFTL,T0每隔1s发一个脉冲,将M0的1依次左移到Y0-Y7中,依次点亮。T1每隔8s发一个脉冲,执行一次INCP K1M0指令,K1M0=0010,则M1=1,M0=0,M1常开触点闭合,执行右移指令SFTR,T0每隔1s发一个脉冲,将M0的0依次右移到Y7-70中,依次熄灭。以此类推,在此就不赘述了。这样,从而可以达到控制要求。

来源:PLC发烧友,作者:技成培训网-蔡慧荥,未经授权,请勿转载!

相关问答

三菱plc的循环右移指令用不了?

很抱歉听到您无法使用三菱PLC的循环右移指令。可能有几个原因导致这种情况。首先,请确保您的PLC型号支持循环右移指令。其次,请检查您的程序是否正确编写,确...

三菱plc位右移指令实例讲解?

三菱PLC中的位右移指令用于将一个位或位组向右移动指定的位数。例如,使用MOV命令将一个位组的值移动到另一个位组,然后使用ROR命令将位组向右移动3位。这将导...

PLC,数据处理指令里面的移位是什么意思?

位移动就是数据移动,数据有8位,16位,,,等可以是本字节或双字节内的数据位移动,又分循环位移、线性位移如0000000100000010←数据向左移动一位1、移位...

三菱PLC移位指令的应用?

三菱PLC移位指令可以用于实现数据的移位,包括左移和右移。移位指令可以帮助我们对数据进行重新排列,从而简化程序的编写。在实际应用中,移位指令常常被用于对...

怎样通俗易懂的理解西门子plc寄存器移位指令?

PLC中的寄存器移位指令是一种用于在寄存器中移动二进制位的命令。这种指令可以用于向左或向右移动寄存器中的位,并在每个移位过程中修改寄存器的值。一个寄...

三菱PLC的SMOV、SFTL等移位指令的用法,他们主要起什么作用?

SFTR,SFTL:连续执行型指令。SFTRP,SFTLP:脉冲执行型指令。位右移SFTR与位左移SFTL指令编程方式如下:SFTRPM0M20K16K4。SFTLPM0M20K...

简单搬运机械手PLC程序?

用步进指令地址分配是:下降电磁阀YV1Y1SBX0夹紧电磁阀YV2Y2SQ1X1上升电磁阀YV3Y3...用步进指令地址分配是:下降电磁阀YV1Y1...

PLC的主控指令怎么用?

plc的主控指令一般用于母线嵌套,以三菱为例,主控指令为MC与MCR.MC指令实现母线右移,MCR指令实现母线左移,每次移动一层最多只能嵌套8层,可以节省大量的AND、...

PLC能产生随机数吗?怎么产生?

3系列的有个伪随机数指令,2N的你可以用定时器触发,字左移或位左移溢出来实现3系列的有个伪随机数指令,2N的你可以用定时器触发,字左移或位左移溢出来实现

三菱plc指令drorpk8m100k1什么意思?

右循环意思是M100开始的32位右循环一次右移一位右循环意思是M100开始的32位右循环一次右移一位

 铁克禁卫军  360搜狗大战 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2025  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部