技成培训网 技成学习APP 技成工具箱 技成企业服务

欢迎回到技成培训网

技成培训网

电工题库宝典

技成电工课堂

PLC练习题

技成PLC课堂

变频器故障查询

技成PLC学吧

伺服驱动故障查询

技成PLC网校

当前位置:技成首页 > 文章中心 > 技成百科 > 背景数据块DB里的数据可以在不调用它的程序块里修改它的值?

背景数据块DB里的数据可以在不调用它的程序块里修改它的值?

刘玉蓉 发布于2014-10-17 16:52 25 0 标签:

背景数据块的值只能在所使用其的程序块FB里使用和修改,其它的程序块应该来说是不能修改背景数据块的值了,但是如图:我建了一个FB1,然后在FB1所带的背景数据块DB1和DB2里有一些数据如(DB2.DBW2)。这里的值可以在OB1里通过MOVE对它进行赋值?我的意思就是说背景数据块的值其它块应该修改不了的。但是我这里仿真了一下,确实可以修改,也就是说即使不调用这个FB1,也可以单独用指令修改这个背景数据块的值。我觉得要修改应该只能修改这个共享数据块的值吧?

佳答案

背景数据块是专门指定给某功能块FB或系统功能块SFB使用的数据块,它是FB或SFB运行时的工作存储区。背景数据块用来保存FB和SFB的实参和静态数据,背景数据块中的数据是自动产生的。
操作系统在编译功能块时,将自动生成与功能块FB对应的背景数据块中的数据,其变量与对应的功能块中的变量声明表中的变量相同,不能在背景数据块中增减变量,只能在数据显示方式下修改其实际值(打开相应的数据块,选择菜单View(浏览)/Data View(数据显示)),或者通过对应的功能块中的变量声明表来修改(双击打开相应的FB,如可以修改上面变量声明表中静态变量STAT中静态变量中的“Initial Value”(初始值))。
从上面的分析可以知道,背景数据块中的变量不能增减,但背景数据块中的数据是可以修改的,但很少这样做,因为背景数据块的内部结构与其对应的FB的变量声明表一致,又被称为私有存储器区,有些功能块FB的初始值不能随便改变,一般通过对应的FB的变量声明表中为形式参数赋初值,它被自动写入相应的背景数据块中;如果你人为改变背景数据块中的数据(FB形式参数的实参),尤其是修改FB变量声明表中输出、输入-输出参数(中间运行结果),可能影响程序的执行,产生严重的后果。

若有收获,就点个赞吧!

文章来源于网络及文献如有侵权请联系站长
分享到:

微信扫一扫分享

阅读与本文标签相同的文章

相关推荐

最新文章 热门文章
最新课程 免费课程
PLC资料下载 电工电气资料下载
应用新秀
变频器故障代码查询APP
伺服故障代码查询APP
技成
手机APP
热门标签