电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> 梯形图实例 >> 正文

西门子plc移位寄存器指令 梯形图程序编程

作者:佚名    文章来源:本站原创    点击数:    更新时间:2022-10-30

  移位寄存器指令SHRB是将DATA数值移入移位寄存器。S_BIT指定移位寄存器的最低位。N指定移位寄存器的长度和移位方向(移位加 = N,移位减 = -N)。移位寄存器的最大长度是64位的,可以正也可以负。我们要注意的是SHRB指令移出的每个位是被放置在溢出内存位(SM1.1)中的。

  下面便以以下的程序来讲解指令的使用,用I0.2的上升沿来执行移位寄存器指令,那么就是一个扫描周期移一位的,指令中V100.0是移位寄存器的最低位,I0.3里面存的是0或1的数值,指令指定是移位加的,移位寄存器的长度是4。我们结合下面的时序图和移位的图来看,若V100为0000 0101,因为移位寄存器的长度是4,那么只有0101,当I0.3为1时,执行第一次移位,把1移到移位寄存器的最低位,把移出的位的值0放置到SM1.1中,那么SM1.1为0,当I0.3为0时,执行第二次移位,把0移到移位寄存器的最低位,把移出的位的值1放置到SM1.1中,那么SM1.1为1。

  西门子plc s7-200移位寄存器SHRB指令

  在顺序控制或步进控制中,应用移位寄存器编程是很方便的,移位寄存器指令如图所示。

 SHRB移位寄存器指令

  1)移位寄存器有3个数据输入端:

  DATA:移位寄存器的数据输入端,数据类型为BOOL(位)。

  S_BIT:组成移位寄存器的最低位,数据类型为BOOL(位)。

  N:移位寄存器的长度和移位方向,-64≤N≤64,当N 》0时为正向移位(从移位寄存器的最低位移入,由最高位移出),当N 《0时为反向移位(从移位寄存器的最高位移入,由最低位移出)。

  2)移位寄存器的特点:

  ·移位寄存器的数据类型无字节型、字型、双字型之分,移位寄存器的长度N由程序指定。

  ·移位寄存器的组成:

  最低位为:S_BIT;

  最高位的计算方法为:MSB=S_BIT+(|N|-1)/8。S7-200的编址均为8进制,相加时要字节和字节相加,位和位相加,并且逢8进1;例如:

  S_BIT= V23.4,N=15,则MSB= V23.4+(15-1)/8=寄存器

  移位寄存器的组成:V23.4~V23.7、V24.0~V24.7、V25.0、V25.1、V25.2,共15位。

  ·移位寄存器指令的功能是:当允许输入端EN有效时,如果N》0,则将移位数据DATA填入移位寄存器的最低位(S_BIT);如果N《0,则填入到移位寄存器的最高位,移位寄存器的其他位按照N指定的方向(正向或反向),依次串行移位。

  ·移位寄存器的移出端与SM1.1(溢出)连接。

  移位寄存器指令影响的特殊继电器:SM1.0(零),SM1.1(溢出)。当移位操作结果为0时,SM1.0自动置位;SM1.1的状态由每次移出位的状态决定。

  影响允许输出ENO正常工作的出错条件为:SM4.3(运行时间)、0006(间接寻址),0091(操作数超界),0092(计数区错误)。

  【例】 移位寄存器指令的应用如图所示。

 

  下面再看一个程序案例,更深入地来学习一下这个移位寄存器指令。

  1、产品检测分拣机,输送带上的产品经过一台检测装置时,检测装置输出检测结果到I0.0,有产品时为1。I0.1检测产品的好坏,若I0.1为0则产品是好的,若I0.1为1则产品是坏的。在第4个产品位置有一个推产品的气缸Q0.0。若检测的产品为坏时,到达第4个产品位置时,Q0.0输出,气缸动作,产品被推出,1s后气缸退回,传送带继续工作,进行产品的检测。

  

  下面就分析一下程序,检测装置检测到有产品时I0.0为1,I0.1检测产品的好坏,产品坏为1,指定移位寄存器的最低位为M0.0,移位寄存器的长度为4。因为在第4个产品位置有一个气缸Q0.0,若I0.1为1时,到达第4个产品位置时,那么就用M0.3驱动气缸动作,推出产品,同时做了一个定时器定时1s,1s后复位M0.3,气缸退回。

  移位寄存器位指令的形式

  

  指令的功能:

 

  移位寄存器位( SHRB)指令将DATA数值移入移位寄存器。S_BIT指定移位寄存器的最低位。N指定移位寄存器的长度和移位方向(当N是正的,从低位移到高位,当N是负数,就从高位移到低位)。SHRB指令移出的每个位被放置在溢出内存位(SM1.1)中。该指令由最低位(S_BIT)和长度(N)指定的位数定义。

  注:已知最低位,计算最高位的方法:MSB.b=[(S_BIT字节)+([N]-1+(S_BIT位))/8]·[被8除的余数]

  例如:如果S_BIT的字节和位分别是V33和4,N是14,以下计算显示MSB.b是V35.1。

  MSB.b= V33+([14]-1+4)/8

  = V33+17/8

  = V33+2,余数为1

  = V35.1

Tags:西门子plc,S7-200,移位寄存器  
责任编辑:admin
相关文章列表
西门子plc S7-200SMART通过MODBUS通信控制变频器启停如何看电流频
西门子S7-200 Plc之比较指令入门教程 西门子plc梯形图程序编程
西门子S7-200系列PLC实例:时钟指令入门用法 梯形图编程实例
西门子PLC模拟实现自动售卖机案例,售货机梯形图实例
深度剖析西门子PLC的开放式TCP通信梯形图 TCP通讯
理解西门子PLC间接寻址和指针梯形图实例,S7-200SMART
西门子S7-200通讯控制台达变频器,实例讲解Modbus RTU通讯
modbus协议详解_西门子S7-200与变频器MODBUS通讯实例详解
西门子plc梯形图编程实例 西门子200smart与电流表Modbus RTU通讯
使用西门子plc的Modbus通讯 串口调试助手与S7-200SMART PLC从站通
西门子plc梯形图实例S7-200Smart与ABB ACS550变频器通讯Modbus通
西门子plc s7-200通讯设置(西门子plc200与电脑通讯怎么设置)STEP
西门子S7-200PLC中,如何将大于32767的整数转换成正实数?VD、VW
西门子plc S7-200系列中断指令第二部分 ENI和DISI指令
西门子plc置位与复位指令的功能说明
西门子plc与modbus设备进485通信详解(modbus多机轮询)读取仪表
寄存器PLC地址与寄存器modbus协议地址 三菱FX系列西门子s7系列pl
西门子PLC S7-200smart与汇川变频器通过通讯控制 梯形图实例
西门子PLC梯形图编程 控制汽车自动清洗装置
西门子PLC S7-200 实数运算指令的应用的指令表及梯形图 除法
西门子plc S7-200系列PLC整数乘除法指令的格式及使用
西门子plc梯形图实例 S7-200系列PLC转换指令练习实例 整数实数转
西门子plc梯形图实例 MOV指令数据传送
西门子plc S7-200系列梯形图实例:电机多段定时启动功能 READ_RT
西门子plc梯形图实例S7-200系列PLC增减计数指令入门 CTUD增减计数
西门子PLC试题5:小车往复运动控制系统梯形图实例
西门子plc比较指令的实例代码梯形图实例,计数器CTUD和比较指令
西门子plc实现8个彩灯移位控制的代码梯形图实例MOV_B,ROL_B,ROR_
西门子plc s7-200系列梯形图实例:设置时钟指令 SET_RTC和MOV_B
西门子plc S7-200系列梯形图实例:传送带生产计数 加法运算 比较
请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
1分 2分 3分 4分 5分

还可以输入 200 个字
[ 查看全部 ] 网友评论
推荐文章
最新推荐
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
返回顶部
刷新页面
下到页底
晶体管查询