1、1PLC 中移位及移位寄存器指令应用摘要:PLC 作为新一代工业控制装置,广泛应用于各种逻辑控制、顺序控制等工业现场,其丰富的指令系统使得其在各种控制系统中大显身手,本文以彩灯控制系统为例,介绍移位及移位寄存器指令应用,并通过对比不同的控制效果,总结三者的用法及区别。 关键词:逻辑移位指令 循环移位指令 移位寄存器指令 彩灯控制系统 可编程序控制器(PLC)是以自动控制技术、微计算机技术和通信技术为基础发展起来的新一代工业控制装置1。PLC 广泛应用于逻辑控制、顺序控制等方面。PLC 具有丰富的指令系统,包括基本指令、功能指令和高级指令等。本文以彩灯控制系统为例,介绍逻辑移位、循环移位及移位寄
2、存器指令的应用。 1 逻辑移位指令应用 逻辑移位指令包括左移和右移 2 种,移位数据类型包括字节、字和双字 3 种,本文以字节逻辑左移指令(SLB)为例介绍其应用。SLB 的梯形图和语句表如图 1 所示,其功能是当 EN 有效时,把从 IN 端输入的数据左移 N 位后,结果输出到 OUT 存储单元中。移出位自动补 0,最后一个移出位保存在 SM1.1 中,当存储单元中的结果为 0 时 SM1.0 为 1。应用SLB 指令设计的彩灯控制系统梯形图如图 2 所示。 2图 1 逻辑左移指令 图 2 彩灯控制系统梯形图(逻辑左移指令) 程序分析:开关闭合后首先将数据 1 传送至 QB0,此时点亮第一组
3、彩灯,然后每隔 1s 轮流点亮下一组彩灯,当第八组彩灯点亮后,彩灯系统停止工作。由此可见,对于 SLB 指令其最高位溢出、最低位补 0,因此最多移位次数为 8,且不能循环工作。 2 循环移位指令应用 循环移位指令也包括左移和右移 2 种,移位数据类型包括字节、字和双字 3 种,本文以字节循环左移指令(RLB)为例介绍其应用。RLB 指令的梯形图和语句表如图 3 所示,其功能是当 EN 有效时,把从 IN 端输入的字节数据循环左移 N 位后,结果输出到 OUT 存储单元中。最后一个移出位保存在 SM1.1 中,当存储单元中的结果为 0 时 SM1.0 为 1。应用RLB 指令设计的彩灯控制系统梯
4、形图如图 4 所示。 程序分析:开关闭合后首先将数据 1 传送至 QB0,此时点亮第一组彩灯,然后每隔 1s 依次点亮下一组彩灯,当第八组彩灯点亮后,彩灯系统循环工作。由此可见,对于 RLB 指令由于其高位移至低位、低位移至高位,因此实际移位次数为对 8 取余的结果,并能循环工作。 3 移位寄存器指令应用 移位寄存器指令(SHRB)可实现左移和右移功能,移位数据类型为位,本文以左移情况为例介绍其应用。SHRB 指令的梯形图和语句表如图5 所示,其功能是当 EN 有效时,把输入端 DATA 采样的数值移入移位寄存器中,整个移位寄存器移动 1 位。S_BIT 指定移位寄存器的最低位,N 指定移位寄
5、存器的长度和移位方向,N0 时左移,N0 时右移,N 的最大值3为 64。移出位保存在 SM1.1 中,当移位寄存器中的结果为 0 时 SM1.0 为1。应用 SHRB 指令设计的彩灯控制系统梯形图如图 6 所示。 图 5 移位寄存器指令 图 6 彩灯控制系统梯形图(移位寄存器指令)程序分析:开关闭合后 Q0.0 为高电平,此时点亮第一组彩灯,然后每隔 1s 依次点亮下一组彩灯,当第八组彩灯点亮后,彩灯系统循环工作。由此可见,对于移位寄存器指令由于其最低位 S_BIT 位补充数据由 DATA决定、其他位依次向左移位,因此要实现循环工作,需要对其进行复位操作。 4 结论 通过逻辑移位、循环移位和
6、移位寄存器指令实现的彩灯控制的不同效果可知三者区别如下: 相同点:均可实现左移和右移功能;移位后均影响标志位;使能端均为上升沿有效。 不同点:逻辑移位指令和循环移位指令均为 2 个数据端,而移位寄存器指令为 3 个数据端;逻辑移位指令和循环移位指令的移位数据类型可为字节、字或双字,移位寄存器指令移位数据类型为位;逻辑移位指令的 N 值大于 0,且受 IN 端初值影响,循环移位指令的 N 大于0,且实际移位次数为对数据类型取余的结果,移位寄存器指令的 N 可大于 0,也可小于 0,其最大值为 64;逻辑移位指令不能实现循环功能,循环移位指令和移位寄存器指令可实现循环功能。 4参考文献: 1郝敏钗,李英辉,马宝秋,曲昀卿.PLC 控制系统设计与实践项目教程M.北京:国防工业出版社,2013. 2姚燕,姬裕江.PLC 移位指令在顺序控制中的应用J.机床电器,2009(02). 3杜莉艳.PLC 移位寄存器在机床上的应用J.机电国际市场,2002(05). 作者简介: 李英辉(1979-) ,男,河北石家庄人,硕士,石家庄职业技术学院讲师,研究方向:电气控制。