当前位置: 主页 > PLC控制

FC块内信号边沿不能用块临时变量存储吗

一个定时计数的程序块。
图中M4.7用块内变量#m时不能使定时器复位,计数器不计数,而全局M4.7可以。这是为啥?

图片说明:

FC块内信号边沿不能用块临时变量存储吗e150ae00539f80084776af01d70CEa75

最佳答案

1、注意,由于一个块的临时变量只在块运行期间有效,即只在本周期有效,而在每一个程序扫描周期过程中,RLO位的信号状态都将与前一周期中获得的结果进行比较,看信号状态是否有变化。前一RLO的信号状态必须保存在边沿标志地址(<位>)中,以进行比较。所以,不能应用临时变量来存储保存边沿标志的状态。
鉴于上述情况你的上升沿或下降沿指令无效。
2、参考:
、见同类问题答案:
htTP://www.ad.siemens.com.cn/Service/answer/solution.ASpx?Q_ID=80803&cid=1029
S7-300/400的上升沿、下降沿检测指令应用的问题
http://blog.gkong.com/liaochangchu_139813.ashx

提问者对于答案的评价:
我使用步进的方式仿真,temp确实不能存储前一周期的值,按链接里的建议添加IN/OUT传入M点,可用。暂且作为解决办法吧。

专家置评

阿鸣,正解

  • 关注微信

猜你喜欢

微信公众号