分享一个分布式的功能块,涉及到一种新的编程思想

已锁定

牛逼之人必有牛逼之处

  • 帖子

    30
  • 精华

    0
  • 被关注

    0

论坛等级:游士

注册时间:2020-04-20

普通 普通 如何晋级?

分享一个分布式的功能块,涉及到一种新的编程思想

8594

57

2023-07-17 18:20:22

某些功能在逻辑上是存在重复性的,但有一些人非要写成一个整体,就是不想分开,不知道是什么原因。


我从没有见到过有人编写一个块,这个块只能控制一个设备,但是通过多次调用这个块,并使用数组连接起来,于是可以像搭积木一样,形成可以控制任意数量设备的大功能块。


不,其实见到过,但由于多个块之间存在复杂的连锁关系,不管是变量链接非常复杂,而且还需要其他功能块对这些块进行协调处理。


我真正没有见到过的是,即使多个块之间存在复杂的连锁关系,但他们只需要通过一个简单的数组连接,便能够处理块与块之间的连锁关系,并不需要其他块进行协调。


这种调用方式看起来有点像串行总线,仅通过一条总线连接多台设备,这些设备便能够轻松交换信息,而且可以轻松增加与减少总线中的设备数量。


如果要比喻的话,我这种编程方式就像串行总线,常规的编程方式则像是硬接线。



图片中是一个调用例子,每个排队块的调用(实例)相当于一个栈位。

所有的排队块通过【连接】Array[0..1] of Int 来连接,解决多个块之间的连锁关系。(这些连锁关系是比较复杂的。)


于是十个排队块的调用,组成了一个10栈位的FIFO。


如果你需要更多的栈位,只需要增加排队块的调用次数即可。





通过这个功能,你能够轻松的编写很多功能,例如夹具的先入先出处理,多台设备的固定数量自动轮换运行处理,信号的前后关系处理。



分享一个分布式的功能块,涉及到一种新的编程思想 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-1500系列

共有10591条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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