.
隐式变量
.
.

每个SFC对象都为您提供隐式变量,以在运行时监视步骤和IEC动作的状态。CODESYS针对每个步骤和每个IEC动作自动声明这些隐式变量。

隐式变量是步的类型为SFCStepType的结构实例,而动作则是类型为SFCActionType的结构实例。变量具有与其元素相同的名称,例如,“ step1”步骤名称为“ step1”变量名称。结构成员描述步骤或动作的状态或激活步中当前经过的时间。

 

在元素属性中,可以定义CODESYS是否应将此标志的符号定义导出到符号配置。

.另请参阅

.
步和动作状态

隐式变量声明的语法:

<step name>:SFCStepType;

_<action name>:SFCActionType;

.

.以下隐式变量可用于步或IEC动作状态:

<step name>.x

显示下一个周期的激活状态。

<step name>.x = TRUE时,CODESYS将在当前循环中处理该步。

<step name>._x

显示下一个周期的激活状态。

<step name>._x = TRUE<step name>.x = FALSE, CODESYS在下一个循环中处理该步。这意味着在循环开始时,将<step name>._x复制到<step name>.x

<step name>.t

标志t产生自激活该步以来的当前经过时间。这仅适用于步,而不管是否在步属性中定义了最短时间。

另请参见SFC标志SFCError

<step name>._t

仅供内部使用

IEC 动作

_<action name>.x

当执行动作时为TRUE

_<action name>._x   

当动作激活时为TRUE

提示!

您可以使用上述变量将特定的状态值强制到步(激活步)。但是,请注意,这可能导致SFC中的状态不稳定。

.另请参阅

  • linktarget [_cds_sfc_sfc_flags] doesn't exist but @y.link.required='true'
.
访问隐式变量

访问语法:

直接在POU中分配隐式变量:<variable name>:=<step name>.<implicit variable><variable name>:=_<action name>.<implicit variable>

.

.例如

status:=step1._x;

从另一个POU中,其POU名称为: <variable name>:=<POU name>.<step name>.<implicit variable> or <variable name>:=<POU name>._<action name>.<implicit variable>

.

.例如

status:=SFC_prog.step1._x;

.
符号生成

在步骤或动作的元素属性中,定义CODESYS是否应为步骤或动作标志添加符号定义。在属性视图中,您必须在符号列中选择必要的访问权限。

.另请参阅