剩余变量可以在断电、重新启动、复位和应用程序下载时重新初始化或保留其值。有多种类型的剩余变量,分别声明为“保留”、“持久”或组合“保留持久”。
下表描述了各种情况下剩余变量的行为:
操作 |
VAR |
VAR RETAIN |
VAR GLOBAL RETAIN PERSISTENT |
---|---|---|---|
对应用程序进行在线修改 |
X |
X |
X |
在线修改,改动启动应用程序 (1) |
– |
X |
X |
停止 |
X |
X |
X |
电源重置 |
– |
X |
X |
热复位 |
– |
X (2) |
X |
冷复位 |
– |
– |
X |
初始值复位 |
– |
– |
– |
初始化设备 |
– |
– |
– |
使用 EcoStruxure Machine Expert 下载应用程序 (3) |
– |
– |
X |
使用 SD 卡下载应用程序 (3) |
– |
– |
– |
(X)保持该值。 (–) 重新初始化该值。
(1) 如果在线修改仅改动启动应用程序的代码部分(例如 (2) 关于 VAR RETAIN 的详细信息,请参阅热复位命令的作用。 (3) 如果下载的应用程序包含与现有应用程序相同的保留持久变量,现有保留变量将保持其值。 |
%MW
,在没有变量与它们关联的情况下,会自动持久保留。它们的值在重新启动/热复位/冷复位后保留。其他 %MW
作为 VAR 进行管理。
例如,如果程序中具有:
VAR myVariable AT %MW0 : WORD; END_VAR
%MW0
的行为方式类似于 myVariable
(既不会保留,也不会持久)。