PLC_博图系列☞多重实例

本文介绍了PLC编程中的西门子博图软件中的多重实例概念,包括其背景、创建方法、优势以及工作原理,特别关注了多重实例在S7-1200/S7-1500系列中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

头图

PLC_博图系列☞多重实例


关键字: PLC西门子博图Siemens 多重实例

背景介绍

这是一篇关于PLC编程的文章,特别是关于西门子的博图软件。我并不是专业的PLC编程人员,也不懂电路,所以如果你希望从这里学习PLC编程技术,可能会有些失望。然而,因为工作需要,我开始了解PLC编程,特别是西门子的博图软件,并记录了这些经验。随着我国工业4.0的推进,相信会有更多的人从事类似的工作。如果这篇文章能对你有所帮助,欢迎点赞关注我❥(^_-)。

多重实例

PLC 中的多重实例是一种在 FB 块中调用其他 FB 块的方式,它可以使被调用的 FB 块的背景数据块保存在当前 FB 块的静态变量中,而不是在系统块中生成单独的 DB 块。这样可以减少外部 DB 块的数量,方便数据管理和程序维护。

定义

当函数块 (FB) 调用另一个函数块时,可其实例数据存储在调用函数块的背景数据块中。这种块调用又称之为多重实例。

优势

使用多重实例具有以下优势:

  • 适用于复杂块的完美结构

  • 背景数据块的数量较少

  • 轻松编写本地子程序,如本地定时器或边沿评估等。

工作原理

下图显示了一个函数块正在使用另一函数块(“Valve”)。其中,“Valve”作为一个多重实例进行调用;即,该函数块的数据将保存在调用函数的背景数据块中。多重实例数据位于调用块的“Static”区域中。在 S7-1200/S7-1500 系列的 CPU 中,该实例也可位于另一函数块的背景数据块中。

image-20240214212240636

创建多重实例

可通过以下几种方式创建多重实例:

  • 在程序中调用函数块时,“调用方式”(Call options) 对话框随即打开。在该对话框中,可输入要将该函数块作为单实例、多重实例或参数实例进行调用。
  • 直接在调用块接口中声明多重实例。
  • 直接在另一函数块接口中声明多重实例 (S7-1200/S7-1500)。

多重实例的 ARRAY

多重实例也可创建为一个 ARRAY。在程序循环执行的过程中,可使用一个可变下标对各个 ARRAY 元素进行寻址。

image-20240214212706446

直接在函数块接口中声明 ARRAY of multi-instances。

调用多重实例

调用一个多重实例时,系统将指示所分配的实例。下图显示了“Block”块在 LAD 中作为多重实例进行调用。

在以下示例中,该实例位于调用块背景数据块本地:

image-20240214212802032

在以下示例中,该实例位于背景数据块中“MyOtherFB”(S7-1200/S7-1500):

image-20240214212828687

在以下示例中,该实例位于背景数据块“MyOtherFB”中的 ARRAY of multi-instances 内 (S7-1200/S7-1500):

image-20240214212858673


博客签名2021
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DreamLife.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值