恭喜,你发布的帖子
发布于 2022-06-07 10:14:21
4楼
又重新看了一下这个帖子,并进行了测试,看看西门子官方这句话:S7-1200的定时器的时间更新发生在定时器功能框的Q点或ET连接变量时,或者在程序中使用背景DB(或IEC_TIMER类型的变量)中的Q点或者ET时。即如果程序中多次使用同一背景DB的Q点,或者既使用定时器功能框的Q点或ET连接变量,又使用背景DB的Q点,以上两种情况都会造成定时器在一个扫描周期内的多次更新,可能造成定时器不能正常使用的情况。
所以,问题的重点就是,不要让定时器在一个扫描周期内多次更新,什么事件会让定时器更新呢?1.用背景DB.Q(或ET);2.功能框的Q点(或ET)连接变量。所以,要避免多次使用背景DB.Q或1和2都用。那问题来了,实际工作中,就是要多次使用啊,很简单,老老实实的用功能框Q点(或ET)连接变量,后面多次用变量就好了。
至于楼主说的图2,既功能框连接了变量,又使用了背景DB.Q,为啥没问题呢?第一,楼主写的定时器已经可以自震荡并形成脉冲,第二,在用背景DB.Q,用了沿。但是这种用法如果理解不深刻,还是尽量不要用,没啥好处,真出了问题,在工作现场,绝对让你怀疑人生(其实是自己还是半桶水,本人多次怨天怨地,最后发现自己是个2B)
请填写推广理由:
分享
只看
楼主