工控智汇

工控智汇

写给初学者的博途教程

admin 67 104

哈喽,大家上午好呀!


感谢大家来参加的双旦活动呀!都收获奖品和福利了吗?以后有机会,我们会设置更多的福利哦~

好啦今天的技术文章是写给初学者的博途教程15(DB数据块-全局块和背景数据块的区别)


图1-1

DB数据块,其作用是保存程序数据。

在使用过程中,DB数据块分为全局数据块和背景数据块。

全局数据块

1、所有的程序块(FB,FC和OB)可以访问程序中全局数据块中的数据。


图1-2

创建数据块的时候,在类型处,会默认该数据块为全局DB。

2、在西门子博图项目程序中能够独立地创建全局数据块;

3、在全局DB数据块中,我们可以添加,删除,改变变量。


图1-3

4、可以改变初始值和当前值。


图1-4


图1-5

起始值,可以在离线状态下设置,当前值也就是监视值,可以在在线状态下修改。

5、但是在全局数据块中,不能创建静态变量(Static)

背景数据块

1、背景数据块DB被指定到一个FB。

2、在程序中只能够对相关联的FB创建背景数据块。

3、在FB中可以定义静态变量(图1-6),当数据块建立完成并且已经被保留了几个循环之后,存储的本地静态数据不会丢失,除非数据再次被更改。

4、在相关的功能块(FB块参数中,参考图1-6~图1-8)中添加或删除变量后,由系统分配的背景DB块变量会随之改变;而全局DB数据块是直接可以在块内进行数据的修改。


图1-6(FB块中未设置参数)


图1-7

(将该FB拖至Main,由系统分配的背景DB中也没有参数显示)


图1-8

图1-8,在FB参数中设置启动、停止和电磁阀变量;

图1-9

将Main中的FB块选中,更新块调用后,该FB块的背景DB中的参数也会同步更新。

5、不能改变变量的初始值和当前值。