30.8.2 功能块变量

功能块编辑画面中,用功能块(FB)专用变量和系统变量创建程序。

FB专用变量有3种:一种变量仅能在FB之内使用,另外两种变量则作为功能块指令的操作数,用于向逻辑程序传递FB数据或从逻辑程序接收FB数据。变量在功能块画面的变量列表中创建,使用范围是创建它们的FB之内。

本地变量

本地变量是仅用于FB之内的变量。不能从插入FB的逻辑画面直接写入本地变量。

每个FB最多可注册512个本地变量。

输入变量/输出变量

在功能块之与逻辑程序之间,可以用输入变量输出变量传递和接收数据。将FB插入逻辑画面后,在FB中创建的输入变量显示为S操作数,输出变量显示为D操作数。

每个FB最多可注册63个输入变量和63个输出变量

对于操作数,需要指定与输入变量输出变量的变量类型一致的地址或变量。为S操作数设置的地址或变量,其保存的值被传递到输入变量,并用于功能块。另外,FB中输出变量的值被保存在为D操作数设置的地址或变量中。

备注

创建或使用FB时,请注意以下几点。

人机界面开机后,即使导通状态结束,FB也不会复位,且FB中的变量保持上次的值。需要时请复位FB。

在逻辑程序中将同一FB当作指令多次使用时,使用的逻辑变量的数量及FB中本地变量的运行情况将取决于[系统设置]-[逻辑程序]-[在功能块中共享本地变量]设置。因为本地变量的表现不同,逻辑程序的处理结果也会不同。

下述示例描述了不同设置下的区别:

示例:

创建FB(FB_0000),功能是每次执行指令即加1。FB向输出变量(Output)传递一个值,该值为本地变量(Count)加1。

在逻辑程序中用了两次FB_0000,两次中D1操作数分别是D100和D2000。