在 S7-SCL 的功能块的接口改变后,如何调整背景数据块和多重背景数据块?

说明:
当一个功能块以 S7-SCL 源程序方式生成时,建议在源程序中直接生成背景数据块。如果不在相应的源程序中声明背景数据块,则每当接口(包含在 S7-SCL 的源程序)改变后,背景数据块都要重新生成。否则,在背景数据块和功能块之间将出现冲突。反之,如果背景数据块在源程序中直接生成,则不需要这些步骤。当执行命令“File > Compile”时,背景数据块将被自动生成。这样,功能块的改变将被直接传送到背景数据块中。这也防止了数据冲突的发生。n

图 01 描述了在 S7-SCL 的功能块中如何声明相应的背景数据块。首先编程功能块,然后编程背景数据块,这样当背景数据块生成时,功能块的变量就确定了。n

在 S7-SCL 的功能块的接口改变后,如何调整背景数据块和多重背景数据块?
图 01n

如果一个功能块在另一个功能块中被调用,仅需分配一个背景数据块给具有多重背景能力的功能块。这个背景数据块被称为多重背景数据块。它通过在功能块的静态变量声明中定义一个 FB 数据类型的来生成。被调用功能块的静态变量(及块参数)变为调用功能块静态变量的一个子集。n

在 S7-SCL 的功能块的接口改变后,如何调整背景数据块和多重背景数据块?
图 02n

图 02显示了 SFB4 被 FB22 调用。一个类型为“TON”的静态变量(SFB4 的符号名)在多重背景数据块(为了 SFB4 和 FB22)的应用中被声明,例如,数据块符号名为“SFB4_TON”。多重背景数据块 DB22 仅仅在 SFB4 在被 FB22 调用后生成。n

注:
为了更新背景数据块,建议下载前在 SIMATIC 管理器中检查数据块的一致性。选中块文件夹并通过菜单命令“Edit > Check Block Consistency...”打开对话框。然后执行功能“Program > Compile all”。n

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc336939.html

(1)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日 下午12:03
下一篇 2021年4月12日 上午12:00

相关推荐

发表回复

登录后才能评论