类型 |
类别 |
全局变量列表 |
局部变量列表 |
定义 |
||
---|---|---|---|---|---|---|
程序 |
FUN |
FB |
||||
全局变量 |
VAR_GLOBAL | l |
非保持全局变量 |
|||
VAR_GLOBAL_RETAIN | l |
保持型全局变量 |
||||
VAR_GLOBAL_CONSTANT | l |
常量全局变量 |
||||
VAR_EXTERNAL | l |
l |
l |
非保持全局变量 |
||
VAR_EXTERNAL_RETAIN | l |
l |
l |
保持型全局变量 |
||
VAR_EXTERNAL_CONSTANT | l |
l |
l |
常量全局变量 |
||
局部变量 |
VAR | l |
l |
l |
非保持局部变量 |
|
VAR_RETAIN | l |
l |
保持型局部变量 |
|||
VAR_CONSTANT | l |
l |
l |
常量局部变量 |
||
VAR_INPUT | l |
l |
输入变量 |
|||
VAR_IN_OUT | l |
l |
输入和输出变量 |
|||
VAR_OUTPUT | l |
l |
输出变量 |
|||
VAR_OUTPUT_RETAIN | l |
保持型输出变量 |
可通过PLC程序在使用位置修改全局变量的值。只有在将PLC从PROG切换到RUN模式或电源故障之后才能读取此类型变量的初始值。
此类型的变量为保持变量。在电源故障或将PLC从PROG切换到RUN模式之后保留保持变量的值。
外部变量是全局变量的参考。其允许使用POU中的全局变量。在整个程序中常量变量的值保持不变。其无法通过PLC程序修改。这些变量不占用PLC中的任何地址,并且作为常数插入程序代码。只有在冷启动之后才能读取保持变量的初始值,即当程序下载到PLC或当在PROG模式中激活INITIALIZE开关时。
外部变量是全局变量的参考。其允许使用POU中的全局变量。在电源故障或将PLC从PROG切换到RUN模式之后保留保持变量的值。
此类别的变量可以在任何POU类型中声明,并用于存储中间结果等。从一个调用到下一个调用其值保持不变。这些变量的内存区无法由用户定义,而是由编译器自动分配。 只有在将PLC从PROG切换到RUN模式或电源故障之后才能读取此类型变量的初始值。
此类别的变量可使参数传输到函数或功能块。必须在函数或功能块的头中声明变量。此类别的变量可能无法用于PRG类型POU。
(1) |
输入变量 |
(2) |
函数 |
输入变量的值只能在调用POU中写入,而非在其自身POU内(除非强制变量时)。其他POU可读取输入变量。
此类别的变量可在函数程序中修改。在跳转到函数程序之前,当前参数被复制到形式参数;返回跳转之后,形式参数将被复制回到当前参数。
函数程序中的形式参数可读写。
这种类型的变量只能在功能块中使用。只有在将PLC从PROG切换到RUN模式或电源故障之后才能读取此类型变量的初始值。
输出变量的值只能在已声明的功能块内写入。其他POU可读取输出变量。
与功能块相比,函数只有一个带有函数名称的输出,例如Fun_Desc:
这种类型的变量只能在功能块中使用。只有在将PLC从PROG切换到RUN模式或电源故障之后才能读取此类型变量的初始值。
如果在[初始化除全局保持变量外带有显式地址的所有变量],则用户分配地址的变量不会重新初始化。 下,激活
输出变量的值只能在已声明的功能块内写入。其他POU可读取输出变量。
与功能块相比,函数只有一个带有函数名称的输出,例如Fun_Desc: