S7-300功能块的临时变量和静态变量的区别

S7-300功能块的临时变量和静态变量的区别

TEMP (临时变量):暂时保存在局部数据堆栈中的变量。同一级POU的临时变量使用局部数据堆栈中的同一块物理存储区,类似于公用的布告栏,谁都可以往上面贴布告,后贴的布告将原来的布告覆盖掉。每次调用POU之后,不再保存它的临时变量的值。每次调用FC和FB时,首先应初始化它的临时变量(写入数值),然后再使用它,简称为先赋值后使用。

STAT(静态变量):保存在背景数据块中,背景数据块相当于每次调用功能块时对应的被控对象的私人数据仓库。功能块执行完后,背景数据块中的数据不会丢失,以供下次执行功能块时使用。

所以在功能块执行完后需要保存的变量应使用静态变量。

,

TEMP (临时变量):暂时保存在局部数据堆栈中的变量。同一级POU的临时变量使用局部数据堆栈中的同一块物理存储区,类似于公用的布告栏,谁都可以往上面贴布告,后贴的布告将原来的布告覆盖掉。每次调用POU之后,不再保存它的临时变量的值。每次调用FC和FB时,首先应初始化它的临时变量(写入数值),然后再使用它,简称为先赋值后使用。

STAT(静态变量):保存在背景数据块中,背景数据块相当于每次调用功能块时对应的被控对象的私人数据仓库。功能块执行完后,背景数据块中的数据不会丢失,以供下次执行功能块时使用。

所以在功能块执行完后需要保存的变量应使用静态变量。

S7-300功能块的临时变量和静态变量的区别

相关文章:

你感兴趣的文章:

标签云: