剩余变量

概述

剩余数据是指编程组织单元 (POU) 中被定义为“保留”或“保留持续”的变量。在发生断电、重启、复位和应用程序下载时,剩余变量要么被初始化,要么保持其值不变。

下表描述了各种情况下剩余变量的行为:

操作

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) 如果在线修改仅改动启动应用程序的代码部分(例如 a:=a+1; => a:=a+2;),则保持保留变量值。在所有其他情况下,则重新初始化保留变量。

(2) 关于 VAR RETAIN 的详细信息,请参阅热复位命令的作用

(3) 如果下载的应用程序包含与现有应用程序相同的保留持久变量,现有保留变量将保持其值。

添加保留持久变量

PersistentVars 窗口中声明保留持久 (VAR GLOBAL PERSISTENT RETAIN) 变量:

步骤

操作

1

应用程序树中,选择应用程序节点。

2

单击鼠标右键。

3

选择添加对象 > 持久变量

4

单击添加

结果:将显示 PersistentVars 窗口。

保留变量和持久变量:性能影响

保留或保留持久变量位于专门的非易失性存储器中。每当在执行编程组织单元 (POU) 期间访问这些变量时,也会访问非易失性存储器。这些变量的访问时间比可影响性能的常规变量的访问时间慢。在写入对性能敏感的 POU 时,需要考虑这一重要因素。

如需更多地了解保持变量以及保持持久变量在 POU 执行期间对循环时间的影响,请参阅处理性能