函数

函数具有一个输出参数和一个或多个输入参数。

指令块格式

指令块由单个矩形表示,并且具有固定数量的输入和输出连接点。一个基本指令块执行一个功能。
指令块示例
具有输入和输出连接点的标记为 MOVE 的指令块。
指令块
项目
名称
描述
Callout1
块名称
指令块要执行的功能的名称写在其矩形形状内(位于顶端)。
Callout2
输入
指令块的每个输入都带有标签且具有定义的类型。
Callout3
输出
指令块的每个输出都带有标签且具有定义的类型。
Callout4
输入连接
输入在左边框进行连接。
Callout5
输出连接
输出在右边框进行连接。
Callout6
输出值
当控制器处于联机状态时显示输出值。当控制器处于脱机状态且无默认值时,将显示“??”。

调用函数

FactoryTalk Design Workbench
不支持递归函数调用。当“函数”部分的某个函数由其自身或其被调用函数之一调用时,会发生运行时错误。函数不会存储其局部变量的本地值。由于函数未经实例化,因而它们无法调用功能块。
  • 函数可以由程序、函数或功能块加以调用。
  • 任何部分的任何程序均可调用一个或多个函数。函数可具有局部变量。
  • 函数没有实例,这意味着不会存储本地数据,因此本地数据通常无法在两次调用之间转承。
  • 函数由其父程序来执行,因此父程序会在该函数执行结束前挂起。
函数调用示意图
描述函数调用规则的示意图

定义函数和参数名称

必须为函数的每个调用(输入)参数或返回(输出)参数指定一种类型或唯一名称,来显式定义该函数的接口。一个函数具有一个返回参数。功能块返回参数的值因各种不同编程语言(结构化文本、梯形图或功能块图语言)而异。
函数名称和函数参数名称最多可包含 128 个字符。函数参数名称可以字母或下划线开头,后跟字母、数字和单个下划线字符。
提供反馈
对本文档有问题或反馈吗? 请在这里提交您的反馈 。
Normal