STEP7状态字中的首次检测位.docxVIP

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
很多人可能都有下面的疑问:??? 1)状态字中的首次检测位到底有什么作用?它与编程有关吗???? 2)程序段的第一条逻辑运算指令实际上作了什么操作???? S7-300/400的状态字(Status word)的最低位为首次检测位FC,该位的为0状态表示一个梯形图逻辑程序段的开始,或指令为逻辑串(即串并联电路块)的第一条指令。在逻辑串指令执行过程中该位为1,输出指令(=、R、S)或与RLO(逻辑运算结果)有关的跳转指令将该位清零,表示一个逻辑串的结束。??? 请看下面的程序段,它将两条串联电路(逻辑串)并联后,控制Q4.2的线圈,逻辑表达式为I0.4*I0.7+I0.6*/I0.5=Q4.2(/I0.5对应于I0.5的常闭触点)。执行第一条指令“A? I0.4”时首次检测位为0,表示程序段开始。执行指令“A? I0.6”时首次检测位为0,表示第二条串联电路开始。执行“=”指令之后,首次检测位被清零。查阅手册,对A指令的描述如下:检查寻址位的状态是否为1,并将测试结果与RLO进行“与”运算。执行第一条A指令时,它到底做了什么操作?1)显然它不会将I0.4的二进制值与前一个程序段执行完后的RLO进行“与”运算,本程序段与前一程序段之间“井水不犯河水”。2)“与”运算需要两个变量参与,第一条A指令执行完后只有一个位变量I0.4的值,不可能作“与”运算,就像只有一个人不能结婚一样。将上面的第一条A指令改为“O? I0.4”或“X? I0.4”指令(“或”运算或“异或”运算指令),前两条指令的“与”运算执行的结果相同。这说明前两条指令实际执行的是什么逻辑运算取决于第二条指令,而与第一条指令(A、O或X)无关。实际上,程序段的第一条指令或逻辑串的第一条指令并不执行什么逻辑运算,第一条A、O、X指令只是将指令中的位变量的值传送到RLO,第一条AN、ON、XN指令将指令中的位变量的值作“非”运算后传送到RLO。操作系统在执行程序的时候,判断首次检测位的值,其值为0时,就知道该指令是程序段的第一条指令或逻辑串的第一条指令,然后完成上述的操作。首次检测位与用户程序没有直接的关系。别的PLC(包括S7-200)几乎都用LD和LDN(或LD NOT、LDI)指令来表示一个程序段或逻辑串的开始。S7-300/400因为没有类似的指令,所以用首次检测位来检测一个程序段或逻辑串的开始。首次检测位(FC)????????状态字的位0?称为首次检测位。若FC位的状态为?0,则表明一个梯形逻辑网络的开始,或指令为逻辑串第一条指令。CPU对逻辑串第一条指令的检测?(称为首次检测)?产生的结果直接保存在状态字的RLO位中,经过首次检测存放在RLO中的?0?或?1?被称为首次检测结果。FC位在逻辑串的开始时总是0,在逻辑串指令执行过程中FC位为1,输出指令或与逻辑运算有关的转移指令(表示一个逻辑串结束的指令)将FC清0。?逻辑操作结果位?(RLO)?状态字的位1?称为逻辑操作结果?RLO(Result?of?Logic?Operation)。该位存储位逻辑指令或算术比较指令的结果。在逻辑串中,RLO位的状态能够表示有关信号流的信息。RLO的状态为1,表示有信号流(通);为0,表示无信号流(断)。可用RLO触发跳转指令。?状态位?(STA)?状态字的位2称为状态位。状态位不能用指令检测,它只是在程序测试中被CPU解释并使用。如果一条指令是对存储区操作的位逻辑指令,则无论是对该位的读与写操作,STA总是与该位的值取得一致;对不访问存储区的位逻辑指令来说,STA没有意义,此时它总被置为1。二进制结果位?(BR)?在LAD的方块指令中,BR与ENO一致,?在字操作中表示结果是否正确状态字的位8?称为二进制结果位。它将字处理程序与位理联系起来,在一段既有位操作又有字操作的程序中,用于表示字操作结果是否正确(异常)。将BR位加入程序后,无论字操作结果如何,都不会造成二进制逻辑链中断。在LAD的方块指令中,BR位与ENO有对应关系,用于表明方块指令是否被正确执行:如果执行出现了错误,BR位为0,ENO也为0;如果功能被正确执行,BR位为1,ENO也为1。?在用户编写的FB和FC程序中,必须对BR位进行管理,当功能块正确运行后使BR位为1,否则使其为0。使用STL指令SAVE?或?LAD指令——(SAVE),可将RLO存入BR中,从而达到管理BR位的目的。当FB或FC执行无错误时,使RLO为1并存入BR,否则,在BR中存入0。

文档评论(0)

185****7617 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档