回复:看了yzs贴后 ,探讨以下300PLC的 SD 指令奇怪现象

已锁定

Zane

版主 西门子1847工业学习平台

  • 帖子

    21054
  • 精华

    399
  • 被关注

    1484

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

发布于 2020-05-05 16:33:10

3楼

       这个问题的实质就是对PLC逻辑运算寄存器RLO及其堆栈的理解的问题,以及定时器访问的一般逻辑问题。因此,我在原贴中就留下了是否有“放之四海而皆准”的编程方法的提问,可惜应者寥寥,而原贴楼主持否定建议。

       原想在我的一个编程专题中说一下的,但楼主既已提出了,我就提前就这部分内容答复一下。

       计数器C的计数条件是输入条件的的上升沿变化

      上图逻辑,C1的逻辑条件是定时器T1保存在RLO堆栈中的值,所以C1能检测到输入值的变化,从而正常工作。

       C2的逻辑条件是T1的实时状态值,因为上图的逻辑,C2是只能检测到一次输入值的变化,定时器的T1的上电后首次出发,以后就再也无法检测到输入值的上升沿变化了。

       从上面的分析看出,只有在RLO堆栈中才能检测到T1的状态变化,在正常OB1扫描中是无法检测到T1的状态变化的,这就给编程带来的诸多不便。

       因此,使用定时器状态去复位定时器的做法本身就是一种不可取的编程方法,我认为是编程上的一些陋习,其根本原因就是不愿意多使用中间标志位,一个字“懒”!

Zane 注册自动化系统工程师 Always save before download
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54616条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。