图1是I0.0第一次闭合,正常的;图2是I0.0断开的,可是边沿脉冲M0.0还在连接;图3是I0.0非第一次闭合,由于M0.0一直连接,没有脉冲,所以往后就无法工作。问题是出现在边沿脉冲P吗?由于是新手,网上说的P和POS的区别没有看懂哦~~~
问题补充:
他是FC1,在OB1中,当I0.0闭合时FC1工作;M0.0的P只是要他的瞬时接通,并不涉及周期和占空比;M0.0只在这里用过一次,并不涉及重复使用。
图片说明:
82CEc28942d1d45aa7beae593103dc1e 2fe1fb6be10b3f9f867d6bb21c69df144b2630e1b778fb043BF31e4c1be4e5fe
最佳答案
你的问题主要出在你调用FC1上。建议楼主采用无条件调用FC1。即在每个扫描周期都执行FC1块中程序。要记住一点,如果采用条件调用FC1块,当条件不满足时候,不执行FC1块中程序,但是FC1块中状态会保存上次的状态,不会自动清零。如果采用有条件调用FC1,请在OB1块中对FC1块不调用的时候进行复位处理。即确保FC1块中每个输出点、标志位、定时器、计数器等状态在每个条件下都有具体的值。举个例子,OB1中有条件调用FC2块。当I0.0=1时,调用FC2块。在FC2块中输入以下程序:
AI0.0
=Q3.0
如果I0.0导通会执行FC2程序,Q3.0=1,当I0.0=0,不执行FC2程序,此时Q3.0还是导通,会保持上次状态。因为我们没有对当I0.0=0时候Q3,.0状态做出处理。可以在OB1中对Q3.0做出处理。即I.0=0,复位Q3.0。
提问者对于答案的评价:
谢谢您!也谢谢各位!终于明白了~