首页 理论教育 数据块的生成与使用方法

数据块的生成与使用方法

时间:2023-06-29 理论教育 版权反馈
【摘要】:共享数据块又称为全局数据块,它不附属于任何逻辑块。在共享数据块中和全局符号表中声明的变量都是全局变量。数据块在使用前,必须作为用户程序的一部分下载到CPU中。在数据块编辑器的“View”菜单中选择是声明表显示方式还是数据显示方式。有两种访问数据块中的数据的方法。1)访问数据块中的数据时,需要用OPN指令先打开它。

数据块的生成与使用方法

数据块用来分类存储设备或生产线中变量的值,数据块也是用来实现各逻辑块之间的数据交换、数据传递和共享数据的重要途径。与逻辑块不同,数据块只有变量声明部分,没有程序指令部分。

1.数据块的类型

数据块分为共享数据块(DB)和背景数据块(DI)两种。

共享数据块又称为全局数据块,它不附属于任何逻辑块。在共享数据块中和全局符号表中声明的变量都是全局变量。用户程序中所有的逻辑块(FB、FC、OB等)都可以使用共享数据块和全局符号表中的数据。

背景数据块是专门指定给某个功能块(FB)或系统功能块(SFB)使用的数据块,它是FB或SFB运行时的工作存储区。当用户将数据块与某一功能块相连时,该数据块即成为该功能块的背景数据块,功能块的变量声明表决定了它的背景数据块的结构和变量。不能直接修改背景数据块,只能通过对应的功能块的变量声明表来修改它。调用FB时,必须同时指定一个对应的背景数据块。只有FB才能访问存放在它的背景数据块中的数据。

在符号表中,共享数据块的数据类型是它本身,背景数据块的数据类型是对应的FB。

多次使用同一FB时,需要调用不同的背景数据块,具体做法是将这些数据块中的数据存放在一个多重背景数据块中,但需要增加一个管理多重背景的FB。

2.定义数据块

在编程阶段和程序运行中都能定义数据块,大多数数据块是在编程阶段用STEP 7开发软件包定义的,定义内容包括数据块号和块中的变量。定义完成后,数据块中变量的顺序及类型决定了数据块的数据结构,变量的数量决定了数据块的大小。数据块在使用前,必须作为用户程序的一部分下载到CPU中。

3.生成共享数据块(www.xing528.com)

在SIMATIC管理器中用鼠标右键点击SIMATIC管理器的块工作区,在弹出的菜单中选择“Insert New Object”→“Data Block”命令,就可以生成新的数据块。

数据块有两种显示方式,即声明表显示方式和数据显示方式,菜单命令“View”→“Declara-tion View”和“View”→“Data View”分别指定声明表显示方式和数据显示方式。声明表显示状态用于定义和修改共享数据块中的变量,指定它们的名称、类型和初值,STEP7根据数据类型给出默认的初值,用户可以修改初值。可以用中文给每个变量加上注释,声明表中的名称只能使用字母、数字和下划线,地址是CPU自动指定的。在数据显示状态,显示声明表中的全部信息和变量的实际值,用户只能改变每个元素的实际值。复杂数据类型变量的元素(例如数组中的各元素)用全名列出。如果用户输入的实际值与变量的数据类型不符,STEP7将用红色显示错误的数据。在数据显示状态下,用菜单命令“Edit”→“Inicialize Data Block”可以恢复变量的初始值。

4.生成背景数据块

要生成背景数据块,首先应生成对应的FB,然后再生成背景数据块。在SIMATIC管理器中,用菜单命令“Insert”→“S7 Block”→“Data Block”生成数据块,在弹出的窗口中,选择数据块的类型为背景数据块(Instance),并输入对应的FB的名称。操作系统在编译FB时将自动生成FB对应的背景数据块中的数据,其变量与对应的FB的变量声明表中的变量相同,不能在背景数据块中增减变量,只能在数据显示(Data View)方式下修改其实际值。在数据块编辑器的“View”菜单中选择是声明表显示方式还是数据显示方式。

5.访问数据块

在访问数据块时,需要指明被访问的是哪一个数据块,以及访问该数据块中的哪一个数据。有两种访问数据块中的数据的方法。

1)访问数据块中的数据时,需要用OPN指令先打开它。

2)在指令中同时给出数据块的编号和数据在数据块中的地址,直接访问数据块中的数据。例如DBZ.DBX2.0,其中DBZ是数据块的名称,DBX2.0是数据块内第2个字节的第0位。这种访问方法不容易出错,建议尽量使用这种方法。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈