麻烦大神给看看,FB里的JCN怎么没有跳转?

如附件监控程序,仿真的时候JCN正常跳转了,但是实际下载到PLC里就没有跳转,换了一个PLC还是一样的结果。。RLO=0,满足跳转条件了,怎么就不跳呢?

      L     #i_Unit_ID
      L     0
      >I    
      JCN   GO99

      OPN   "DB_GeneralStatus"
      L     #i_Unit_ID
      L     1
      -I    
      L     4
      *I    
      SLW   3
      LAR1  

      L     "MD_Report"
      T     DBD [AR1,P#0.0]
GO99: NOP   0

问题补充:
这个程序块是嵌套重复调用的,我把其它调用的地方都屏蔽了,只留了一处调用。。问题还是一直存在。。。
如果  #i_Unit_ID=0不跳转,AR1会变成一个很大的数,在T     DBD [AR1,P#0.0]的时候PLC会报错stop。。。很奇怪的问题。。

这是监控的时候看到的结果,另一个匪夷所思的地方是如果不去监控这段程序,PLC就不会报错stop。。

图片说明:

麻烦大神给看看,FB里的JCN怎么没有跳转?    麻烦大神给看看,FB里的JCN怎么没有跳转?   

最佳答案

JCN    当RLO = 0时跳转。
我也仿真了一个你看看JCN的工作原理,图示:
补充问题回复:
可能还在嵌套层及FB的调用上。
当调用离去或JCN指令离开时,原被调用的跳转指令内的程序段结果仍然有效。
建议你在调用离去时,复位JCN内部程序段。

图片说明:

麻烦大神给看看,FB里的JCN怎么没有跳转?  

提问者对于答案的评价:
我会再测试一下,把嵌套一层一层的往外提,看看到哪一层会变正常,谢谢大神们的解答,有了结果我会反馈给大家的

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc363351.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 下午12:47
下一篇 2021年7月5日

相关推荐

发表回复

登录后才能评论