通过参数实例可将函数块的实例传送到其它块(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 函数块,请执行以下操作步骤:
|
操作步骤:创建“FC_StatusValve”