1 数据块的类型
1.1 全局数据块(Global DB)
全局数据块用于存储程序数据,因此,数据块包含用户程序使用的变量数据。一个程序中可以自由创建多个数据块(不同CPU有最大数量的限制)。全局数据块必须事先定义才可以在程序中使用。要创建一个新的全局数据块,可在TIA 博途界面下点击“程序块”->“添加新块”,选择“数据块”并选择数据块类型为“全局 DB”(缺省),如图1所示。
图1
全局DB创建完成后自动打开,然后需要在DB块中定义变量才能使用,如图2所示,优化的DB块中可以为每一个变量定义属性,例如保持性,但是不能为一个变量中的元素定义属性,例如图2中的数组变量F,只能将F作为一个变量整体定义,为不能为其中一个元素单独定义,例如F[1]。
图2
DB的访问方式(以符号名称为例)为 <数据块名称>.<变量名称>.<元素名称>.<子元素名称>,例如将变量B的值传送到变量F其中的一个元素中,如图3所示。
图3
1.2 实例化数据块
实例化DB块与FB块相关联。在创建实例化DB块时,必须指定它所属的FB块,而且该FB块必须已经存在,如图4所示。
图4
在调用一个FB块时,既可以为之分配一个已经创建的实例化DB块,也可以直接定义一个新的DB块,该DB将自动生成并作为实例化数据块。实例化DB块与全局DB块相比,只存储FB块接口数据区(临时变量除外)相关的数据。数据块格式随接口数据区的变化而变化,数据块中不能插入用户自定义的变量,其访问方式(优化或非优化)、保持性、默认值均由FB块中的设置决定。实例化DB块与全局DB块都是全局变量,所以访问方式相同。
1.3 通过系统数据类型创建数据块
对于有些固定格式的数据块,有可能包含很多的数据,不便于用户自己创建,如用于开放式用户通信的参数DB。TIA 博途软件提供了一个含有固定数据格式的模板,用户使用这个模板可创建具有该格式的数据块,比如可以使用“TCON_Param”系统数据类型创建与之对应的DB。创建基于数据类型的数据块时,必须指定它所属的数据类型,如图5所示。
图5
数据块创建完成后,在使用时直接赋值,例如使用“TCON_Param”系统数据类型创建的DB为“Com”,在调用TCON时赋值,如图6所示。
图6
与实例化DB块相同,基于系统数据类型的DB块只存储与数据类型DB相关的数据,不能插入用户自定义的变量。可以使用相同的系统数据类型生成多个数据块。
注意:
图6中“CONNECT”参数的赋值也可以在一个全局DB中创建,然后以一个变量的方
式赋值,但是“TCON_Param”系统数据类型在全局数据块变量类型的向导中不存在
必须手动键入。此外创建一个独立的DB块存储参数,结构也比较清晰,当然这与编程人员的喜好方式有关,无论如何,方式更加灵活。
-
cpu
+关注
关注
68文章
10922浏览量
213277 -
数据
+关注
关注
8文章
7193浏览量
89817 -
S7-1500
+关注
关注
3文章
301浏览量
6543
发布评论请先 登录
相关推荐
基于S7-1500 CPU集成PN口的Modbus TCP通信快速入门
西门子plc S7-1200/S7-1500优化的DB块与标准的DB块整体对比
![西门子plc <b class='flag-5'>S7</b>-1200/<b class='flag-5'>S7-1500</b>优化的<b class='flag-5'>DB</b><b class='flag-5'>块</b>与标准的<b class='flag-5'>DB</b><b class='flag-5'>块</b>整体对比](https://file1.elecfans.com//web2/M00/8E/49/wKgaomTDomqAQySDAACAnNBD494583.jpg)
S7-1500与MV340自由口通信方案
![<b class='flag-5'>S7-1500</b>与MV340自由口通信方案](https://file.elecfans.com/web2/M00/49/DF/pYYBAGKhvG2AT5F6AAAM_48-NTg549.jpg)
S7-1500系统架构及特点
![<b class='flag-5'>S7-1500</b>系统架构及特点](https://file.elecfans.com/web2/M00/49/F6/pYYBAGKhvH6AK6S5AAARzdUZDoA923.jpg)
怎样去使用S7-1500 SCL PEEK和POKE指令呢
S7-1500 CPU支持与其它S7-1500 CPU进行直接数据交换
S7-1500之间S7通信实例
![<b class='flag-5'>S7-1500</b>之间<b class='flag-5'>S7</b>通信实例](https://file1.elecfans.com/web2/M00/89/0E/wKgZomR389WAIYZ5AAAWshCYy84658.jpg)
DCM与S7-1500 PN是如何进行通讯的?
![DCM与<b class='flag-5'>S7-1500</b> PN是如何进行通讯的?](https://file1.elecfans.com/web2/M00/8C/78/wKgaomSs81uAbJ3RAABTDCy32K8605.jpg)
评论