加入收藏 在线留言 联系我们
关注微信
手机扫一扫 立刻联系商家
全国服务热线15267534595
公司新闻
西门子博途:多重实例 ARRAY 中参数实例的使用示例
发布时间: 2023-09-20 16:42 更新时间: 2024-04-28 09:10

通过参数实例可将函数块的实例传送到其它块(FB 或 FC)中进行进一步处理,如数据查询、错误分析,甚至使用由被传递实例执行的函数块。

ARRAY 多重实例可用于组合相同类型的对象,并在程序循环中对这些实例的下标进行处理。ARRAY 下标元素可作为参数实例传送到其它块中。

在以下示例中,使用对象“Valve”(FB_Valve) 进行详细说明。在此,显示了程序块(本示例中为“FB_ValveControl”)中进行阀处理的所有相关信息。

下图显示了所需的特性以及具体的应用方式:


图片

  • 使用函数“FC_StatusValve”和“FC_MaintainValve”,对调用时接收到的“FB_Valve”程序块的参数实例继续处理。

  • 在“FB_ValveControl”程序块中,可使用 ARRAY 多重实例对现有的阀的数量进行声明,同时通过各种函数对循环程序中的所有阀进行管理。


  • 说明

    完整性

    该解决方案示例仅用于说明如何实现指定的任务。请注意,在实际任务中需要对程序代码进行相应调整。


    在本示例中,需要使用以下程序块:



    说明

    编程语言

    FB_ValveControl

    该函数块将用作一个控制块,可通过一个多重实例 ARRAY 对所有阀进行处理。

    SCL

    FB_Valve

    该函数块中包含阀数据的定义以及进行阀处理的程序代码。

    SCL

    (在程序块“FB_ValveControl”中,将用到这三个程序块。)

    FC_StatusValve

    该函数将返回当前所处理阀的状态。

    FC_MaintainValve

    该函数用于检查阀是否需要维护。如果需要,将执行维护操作,并在维护完成时返回函数值 TRUE。


    操作步骤:创建“FB_Valve”

    要创建该 SCL 函数块,请执行以下操作步骤:

    1. 双击“新增块”(Add new block) 命令。

      “新增块”(Add new block) 对话框随即打开。

    2. 单击“函数块 (FB)”(Function block (FB)) 按钮。

    3. 输入名称“FB_Valve”。

    4. 选择 SCL 编程语言。

    5. 单击“确定”(OK)。

    6. 基于可打开和关闭的阀进行块接口声明,如下所示:




      图片

      图片

    7. 编写阀控制程序代码,如下所示:




      图片

      图片

    操作步骤:创建“FC_StatusValve”

    要创建 SCL 函数块“FC_StatusValve”,请执行以下操作步骤:

    1. 双击“添加新块”(Add new block) 命令。

      “新增块”(Add new block) 对话框随即打开。

    2. 单击“函数 (FC)”(Function (FC)) 按钮。

    3. 输入名称“FC_StatusValve”。

    4. 选择 SCL 编程语言。

    5. 单击“确定”(OK)。

    6. 使用参数实例“FB_Valve”组合声明该块接口,如下所示:




      图片

      图片

    7. 编写程序代码,如下所示:




      图片

      图片


    联系方式

    • 电  话:18126392341
    • 联系人:梁涛
    • 手  机:15267534595
    • 微  信:15267534595