浔之漫智控技术(上海)有限公司总部
主营西门子模块 , PLC模块 , 变频器模块 , 触摸屏模块
6AV6648-0DE11-3AX0触摸屏全国代理

6AV6648-0DE11-3AX0触摸屏全国代理6AV6648-0DE11-3AX0触摸屏全国代理

S7-1200 PLC循环移位指令做流水灯控制

在S7-1200 PLC中的移位和循环移位指令指令包括了移位指令SHL和SHR,循环移位指令ROL和ROR。这几个指令跟S7-200/200 SMART PLC是一样的,如果学习过这几个指令的同学也可以重新温习一下,或者直接拉到后面看流水灯控制的程序案例编写~

微信截图_20230227102821.png

SIEMENS交换机6GK5216-0BA00-2AC2
SIEMENS交换机6GK5208-0BA00-2AC2
Siemens模块6ES7288-1CR60-0AA0
Siemens水晶接头6GK1901-1BB10-2AB0
Siemens模块6ES7134-6GD01-0BA1
合信模块CTH2214-1AX33-0X24
SIEMENS存储卡6ES7954-8LC03-0AA0
Siemens模块6ES7231-5PF32-0XB0
SIEMENS变频器6SE6440-2UD34-5FB1
SIEMENS模块6ES7174-0AA10-0AA0
Siemens模块6ES7131-4BB01-0AA0
SIEMENS模块6ES7132-6BF01-0BA0
Siemens交换机6GK5116-0BA00-2AC2
Siemens软件6ES7810-4CC10-0KA5
SiemensDP接头6GK1500-0FC10
Siemens软件6ES7811-1CC05-0YA5
Siemens软件6ES7810-4CC08-0YA5
Siemens存储卡6ES7954-8LF03-0AA0
Siemens模块6ES7431-7KF00-0AB0
西门子模块6ES7231-4HA30-0XB0

微信截图_20221013091414.png下面我们就分别来看一下这几个指令吧。

1、移位指令

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

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


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



2、循环移位指令

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

微信截图_20230218170033.png

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



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


下面就先看看控制要求吧!

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

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








我们分析一下以上的程序,当按下启动按钮时,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都复位掉。

6ES7516-3AN02-0AB0CPU 1516-3 PN/DP,1 MB 程序,5 MB 数据;10 ns ;集成 X1: 2x PN接口 ,X2: 1x PN接口,X3:1x DP 接口
6ES7515-2AM02-0AB0CPU 1515-2 PN,500 KB 程序,3 MB 数据;30 ns;集成 X1: 2x PN接口 ,X2: 1x PN接口
6ES7513-1AL02-0AB0CPU 1513-1 PN,300 KB 程序,1.5 MB 数据;40 ns;集成 2x PN 接口
6ES7511-1AK02-0AB0CPU 1511-1 PN,150 KB 程序,1 MB 数据;60 ns;集成 2x PN 接口
6ES7512-1CK01-0AB0CPU 1512C-1 PN,  250 KB程序,1 MB数据;48 ns;集成2x PN接口;集成 32 DI/32 DO, 5 AI/2 AO, 6 HSC@100kHz
6ES7511-1CK01-0AB0CPU 1511C-1 PN,  175 KB程序,1 MB数据;60 ns;集成2x PN接口;集成 16 DI/16 DO, 5 AI/2 AO, 6 HSC@100kHz
6ES7516-2PN00-0AB0CPU 1516PRO-2 PN,1MB 程序,5 MB 数据;10 ns;集成 X1: 3x PN接口 ,X2: 1x PN接口
6ES7512-1DK01-0AB0CPU 1512SP-1 PN,200KB 程序,1 MB 数据;48 ns;集成 1x PN 接口 (可用ET 200SP总线适配器再拓展2个PN 接口)
6ES7510-1DJ01-0AB0CPU 1510SP-1 PN,100KB 程序,750 KB 数据;72 ns;集成 1x PN 接口(可用ET 200SP总线适配器再拓展2个PN 接口)


发布时间:2023-11-04
展开全文