左移右移位运算_案例详解 | S71200 PLC循环移位指令做流水灯控制

戳上方 蓝字  "技成电工课堂”  关注我们哦!

89c53d8b3c876d114b67b99082be60e2.gif

在上一篇文章中介绍了逻辑运算指令,这篇文章就开始介绍一下移位和循环移位指令吧。

这几个指令跟S7-200/200 SMART PLC是一样的,如果学习过这几个指令的同学也可以重新温习一下,或者直接拉到后面看流水灯控制的程序案例编写~

在S7-1200 PLC中的移位和循环移位指令,包括了移位指令SHL和SHR,循环移位指令ROL和ROR。

下面我们就分别来看一下这几个指令吧!

1、移位指令

移位指令分为左移指令SHL和右移指令SHR这两个,它们执行的过程是一致的,只是移动的方向不同而已,左移指令是由低位往高位移动,右移指令是由高位往低位移动。

我们以左移指令来看一下,指令中的N是移位的位数,是将输入操作数IN中的二进制位按N位向左进行移位,从而输出到输出端OUT中,注意移位指令移出的位是自动丢去的,而低位中空出的位是自动补零的。

关于移位指令使用时支持的数据类型,除了支持位字符串的数据类型之外,还可以支持整数的数据类型。

f84e84c725d0934ebed76782f91b539c.png
2、循环移位指令

循环移位指令分为循环左移ROL和循环右移ROR这两个指令,同样的它们的移动方向是不同的,循环左移指令是由低位往高位移动,循环右移指令是由高位往低位移动。

关于循环移位指令支持的数据类型只要位字符串的数据类型哦。

下面我们以循环左移指令来看一下指令的执行过程,指令中的N同样的是用于指定移动的位数,指令是将输入操作数IN中的二进制位按N位进行循环左移,这个指令和移位指令的区别是,循环移位指令移出的位并不会丢失,而是会放回到地位中空出的位置中的。

aba321e06449dba0a7ec2a8ce168580f.png
我们下面讲一个流水灯控制,是以循环移位指令实现的,主要是为了让大家能够熟悉指令的使用哦。 下面就先看看控制要求吧!

控制要求:有八盏指示灯分别对应于PLC输出Q0.0~Q0.7,按下启动按钮,从第一盏灯开始每隔1s点亮,点亮下一盏的同时熄灭上一盏。

当第八盏灯点亮后延时5秒,然后以反反向点亮,回到第一盏时又延时5秒进行下一轮循环,按下停止按钮所有指示灯都熄灭。

cc7c9b4a95c68d02301ffef7825a4a4c.png
012ebcc1a397322044030b69a58cfde7.png
0d51d061191a75343d0bcfd0ec2dc186.png
我们分析一下以上的程序!

当按下启动按钮时,M20.0接通,M20.0接通同时随1s时钟脉冲每隔一秒进行向左移位,依次点亮一盏灯并熄灭上一盏灯。

当第八盏灯点亮了则Q0.7接通,置位切换方向信号M20.1,M20.1触点接通并开始延时5秒,5秒时间到后M20.2线圈接通,M20.2触点接通同时随1s时间脉冲每隔1秒进行向右移位,直到点亮第一盏灯时,不再执行ROR右移指令,而去执行程序段5,Q0.0触点接通,定时器开始延时5秒时间,延时时间到后复位M20.1,也就是复位切换方向的信号,同时置位启停标志M20.0,接着又开始下一次的轮回。

当按下停止按钮时,MOVE指令将0移动到QB0,进行清零,使所有输出都复位,指示灯全部熄灭,同时也将启停标志M20.0和切换方向信号M20.1都复位掉。

以上就是移位和循环移位指令的相关介绍,到此为止就已经将数据处理指令介绍完了,在下一篇文章再继续介绍一下程序控制指令,欢迎大家继续关注~

(技成培训网原创,作者:蔡慧荥,未经授权不得转载,违者必究)

6b951e9c405d2f01bfcb57d63ee7543e.gif

西门子S7-1200基础入门专辑,学会如此简单! 6525e3f7ad9a7874ca72b984e6de3650.png三菱PLC基础入门,看了记得点赞收藏喔~ 6525e3f7ad9a7874ca72b984e6de3650.pngS7-1200 PLC常用的移动操作指令有哪些? 6525e3f7ad9a7874ca72b984e6de3650.png2020年电工必备考试卷题(加密) 6525e3f7ad9a7874ca72b984e6de3650.png 3255b16b490fc56f7597cac9181d6fbd.gif你的分享、点赞、在看我都喜欢 3255b16b490fc56f7597cac9181d6fbd.gif
  • 6
    点赞
  • 52
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值