请问为什么plc程序和触摸屏按钮会发生冲突啊?

我想用I0.3的上升沿给M0.0(启动信号),I0.3的下降沿给M0.1(停止信号),同时触摸屏上按下“启动”按钮时M0.0置1,松开按钮时M0.0清0。触摸屏上按下“停止”按钮时M0.1置1,松开按钮时M0.1清0。程序如下:
      A(    
      O     M0.0
      O     Q0.0
      )     
      AN    M0.1
      =     Q0.0

      A     I0.3
      =     L     20.0
      A     L     20.0
      FP    M0.2
      =     M0.0
      A     L     20.0
      FN    M0.3
      =     M0.1

但是实际上在程序运行时无论在触摸屏上怎么按“启动”按钮,Q0.0都一直是0,直到把第2段程序删掉触摸屏上的按钮才正常。请问这是为什么?为什么plc程序和触摸屏按钮会发生冲突啊?

最佳答案

地址重复使用了
A(    
      O     M0.0
      O     Q0.0
      )     
      AN    M0.1
      =     Q0.0
      A     I0.3
      =     L     20.0
      A     L     20.0
      FP    M0.2
      =     M0.0  //这里,PLC扫描的时候,每次执行到这里都等于0,除非你按I0.3的第一个周期,所以你在触摸屏上按M0.0不起作用,下面的M0.1也是一个道理,把这里的点换了,然后启动并在上面的M0.0上,停止和M0.1串起来吧
      A     L     20.0
      FN    M0.3
      =     M0.1
也就是你触摸屏每次按的时候,都被PLC给刷新了
改成如下图

图片说明:

请问为什么plc程序和触摸屏按钮会发生冲突啊?  

提问者对于答案的评价:
谢谢你,是不是说对一个变量点操作的话,程序置位变量比触摸屏复位要优先啊

最佳答案作者回复:
不是说优先~
应该与PLC的工作机制有关吧,有时间验证一下试试
PLC扫描之后,根据程序的逻辑判断把触摸屏的给覆盖了,应该是这样的.....

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2017年6月18日 下午11:15
下一篇 2017年6月18日 下午11:15

相关推荐