回复:巧妙利用双线圈偷懒

已锁定

Zane

西门子1847工业学习平台

  • 帖子

    21062
  • 精华

    399
  • 被关注

    1487

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

发布于 2022-05-08 19:36:19

18楼

子弹飞了了一会儿了,可以落地了。


结论,巧妙谈不上,得瑟而已!


首先,把线圈当临时变量使用(而且是重复使用),物理世界是无法是实现的,软件里(或者说虚拟世界)里可以使用,但你也要注意其合理性,因为你是在用软件来实现一个原本在物理世界实现的功能。


其次,回到纯软件中,楼主的两段程序是等效的吗?非也,PLC的基本功没学好!如果说有事件中断要读取线圈的值,还有芳季大侠提到的即时生效的特殊标志位,你的程序还能若你所愿吗?

     每一次赋值,临时变量的值都是都是根据当前计算结果变化的,线圈赋值中间标志位也好,输出点也好,计算机内存变量的值都是变化的,只是输出点会在扫描周期的某个节点统一刷新其最后的赋值,这些值的变化依然会给程序的处理带来不确定性。


真正等效的程序,应该是这样的,

A    #IN1

A     #IN2

A    #IN3

A    #IN4

=   #FLAG1


A    #IN5

A     #IN6

A    #IN7

=   #FLAG2


A    #IN8

A     #IN9

A    #IN10

=   #FLAG3


A    #FLAG1

A    #FLAG2

A    #FLAG3

=    #OUT1

细想想,这与我们使用中间继电器分电路没太大区别哟(别较真计算机程序处理与电路的区别),所以说物理世界的道理是你大爷还是你大爷。先学好基础知识没坏处的。

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

请填写推广理由:

本版热门话题

SIMATIC S7-200 SMART

共有8945条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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