6ES7512-1CK01-0AB0西门子DI/D0模块西门子通讯模块代理商
在S7-1200 PLC中的移位和循环移位指令指令包括了移位指令SHL和SHR,循环移位指令ROL和ROR。这几个指令跟S7-200/200 SMART PLC是一样的
6ES7214-1BG40-0XB0 | CPU 1214C AC/DC/Rly,14输入/10输出,集成2AI |
6ES7214-1AG40-0XB0 | CPU 1214C DC/DC/DC,14输入/10输出,集成2AI |
6ES7214-1HG40-0XB0 | CPU 1214C DC/DC/Rly,14输入/10输出,集成2AI |
6ES7215-1BG40-0XB0 | CPU 1215C AC/DC/Rly,14输入/10输出,集成2AI/2AO |
西门子代理商,西门子授权代理商,西门子授权一级代理商,西门子总代理商,西门子触摸屏代理商,西门子触摸屏授权代理商,西门子触摸屏一级代理商,西门子触摸屏总代理商,西门子变频器代理商,西门子变频器一级代理商,西门子变频器总代理商,西门子变频器授权代理商,西门子PLC代理商,西门子PLC总代理商,
1、移位指令
移位指令分为左移指令SHL和右移指令SHR这两个,它们执行的过程是一致的,只是移动的方向不同而已,左移指令是由低位往高位移动,右移指令是由高位往低位移动。
我们以左移指令来看一下,指令中的N是移位的位数,是将输入操作数IN中的二进制位按N位向左进行移位,从而输出到输出端OUT中,注意移位指令移出的位是自动丢去的,而低位中空出的位是自动补零的。
关于移位指令使用时支持的数据类型,除了支持位字符串的数据类型之外,还可以支持整数的数据类型。
2、循环移位指令
循环移位指令分为循环左移ROL和循环右移ROR这两个指令,同样的它们的移动方向是不同的,循环左移指令是由低位往高位移动,循环右移指令是由高位往低位移动。
关于循环移位指令支持的数据类型只要位字符串的数据类型哦。下面我们以循环左移指令来看一下指令的执行过程,指令中的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都复位掉。
6ES7512-1CK01-0AB0西门子DI/D0模块西门子通讯模块代理商6ES7512-1CK01-0AB0西门子DI/D0模块西门子通讯模块代理商西门子电缆代理商西门子触摸屏代理商西门子PLC模块代理商西门子CPU模块代理商西门子电机代理商西门子变频器代理商