S7-300的RLO上升沿检测指令的作用是不是会受程序扫描时间影响?

  • A+
所属分类:PLC 西门子PLC

S7-300的RLO上升沿检测指令 -(P)- 的作用是不是会受程序扫描时间影响?
(1)我在FC块里面用到-(P)- ,发现程序比较长的时候就出现下图中情况,根本不能用来检测上升沿;
(2)当我把OB1其他的程序都删掉时,只调用这个FC块时,就可以检测上升沿,不会有问题。
(3)另一个是我尝试-(P)-指令要是不在FC块,直接在OB1中,也是不会有问题。


下面是廖常初老师的回帖: P线圈(上升沿检测指令)上面的地址用来保存上一扫描周期的RLO的值,不能使用FB、FC的临时局部变量。改为全局变量或FB的静态变量就可以了。 因为调用程序时同一级FB、FC的临时变量公用同一片地址区,前面调用的块的临时变量被后面调用的块的临时变量覆盖,所以上升沿检测指令不能正常运行。在OB1中只调用一个FC,公用的地址区变成该FC独用,所以没有问题。 OB1的临时变量的地址区是OB1单独使用的,所以程序放在OB1里也没有问题。

  • 营销微信
  • 报单询价扫一扫
  • weinxin
  • 技术微信
  • 技术问题扫一扫
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: