回复:一个关于FB多次调用的问题,第一次可以第二次就不行了,悲剧

Automann

  • 帖子

    6168
  • 精华

    138
  • 被关注

    308

论坛等级:至圣

注册时间:2004-12-23

普通 普通 如何晋级?

发布于 2014-10-25 12:42:33

9楼

功能块的临时变量和静态变量的区别
TEMP (临时变量):暂时保存在局部数据堆栈中的变量。同一级POU的临时变量使用局部数据堆栈中的同一块物理存储区,类似于公用的布告栏,谁都可以往上面贴布告,后贴的布告将原来的布告覆盖掉。每次调用POU之后,不再保存它的临时变量的值。每次调用FC和FB时,首先应初始化它的临时变量(写入数值),然后再使用它,简称为先赋值后使用。
STAT(静态变量):保存在背景数据块中,背景数据块相当于每次调用功能块时对应的被控对象的私人数据仓库。功能块执行完后,背景数据块中的数据不会丢失,以供下次执行功能块时使用。
所以在功能块执行完后需要保存的变量应使用静态变量。
追求完美
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54617条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。