找答案的高端用户(找答案钻石及双钻级别的用户)将尽可能从此问题下的所有回
答中,为您推荐最佳答案。届时您可以根据推荐数采纳答案。
如果自提问时间起7天内您仍无法选出最佳答案,您可以选择“无满意答案”关闭此问题。
背景数据块是用来保存FB的实参和静态变量(STAT),背景数据块中的数据是自动生成的,它们是功能块FB的变量声明表中的数据(不包括临时变量TEMP)。你在修改多重背景数据块的低层块时,PLC操作系统在编译功能块FB时,将自动生成与功能块FB 对应的背景数据块中的数据,其变量与对应的功能块中的变量相同,不能在背景数据块中增减变量,只能在数据显示式下修改实际值或者通过对应的功能块的变量声明表来修改。为了防止你把底层的块稍做修改,引起对应背景数据快变化,最好在修改时删除FB的背景数据块,修改完成后,你在编译保存时,操作系统会自动产生新的对应的新背景数据块。
在建立多重背景数据块时,首先要建立底层功能块FB,再建立上层FB快;如底层功能块FB为FB1(局部背景调用,控制功能块),FB10 为上层功能块,DB3为共享数据块,DB10 为多重背景数据块。在执行菜单命令Inset-S7 Block->Function Block, 创建一个上层功能块时必须在FB10的属性对话框内激活”Multi-Instance capable”(默认),然后在FB10的变量声明表中为FB1的调用声明不同名称的静态变量Stat,数据类型为FB1。如果你不首先建立底层功能块FB,可能就会在定义上层功能块中静态变量Stat的数据类型时出错;
在使用多重背景数据块时应注意以下问题:
首先应生成需要多次调用的功能块;
管理多重背景的功能块必须设置为多重背景功能;
在管理多重背景的功能块的变量声明表中,为被调用的功能块的每一次调用定义一个静态(STAT)变量,以被调用的功能块的名称作为静态变量的数据类型;
必须一个背景数据块分配给管理多重背景的功能块。背景数据块中的数据是自动生成的;
多重背景只能声明为静态变量(声明类型为Stat)
首次回答问题,获得
双倍西币积分!
立即成为技术知识分享的一员!
找答案微信小程序
提问
搜索
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!