收藏 分享(赏)

数据块的作用.doc

上传人:jinchen 文档编号:7014835 上传时间:2019-04-30 格式:DOC 页数:3 大小:29.50KB
下载 相关 举报
数据块的作用.doc_第1页
第1页 / 共3页
数据块的作用.doc_第2页
第2页 / 共3页
数据块的作用.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

1、STEP7 数据块的作用我想问一下在 STEP7 中建立数据块(DB )有什么作用,变量表又有什么作用,它们只有监控变量的作用吗?修改会对项目有影响吗?STEP7 中数据块(DB )和 WICC 中变量地址属性中数据 DB有关联吗? 问题补充:如果我在 WINCC 中建立一个 DB 类型变量如 DB0.DD0,那么我需要在 STEP7 中定义该变量吗?它的定义有范围吗?答复数据块是用作建立临时数据的,在与 WINCC 连接的时候可以关联,整个STEP7 都可以关联,在程序中 M 的点是有限制的,而 DB 可以随着内存卡改变大小。变量表就是一个调试工具。 建立数据块是用来集中地存取数据,便于对数

2、据进行操作和管理 .分为共享数据块和背景数据块.其中背景数据块是依附于与之相对应的功能块 FB 使用的.变量表可以用来批量地监管变量.在变量表中还可以对变量的状态和数值进行修改 .修改后程序中引用的变量的值为修改后的值.便于对程序进行调试和强制 .STEP7 中数据块(DB)和 WICC 中变量地址属性中数据 DB 有关联吗? 没错,它们是关联的,它们的地址相对应,DB 代表数据块变量 在 wincc 中被缩写例如:STEP7 中 DB0.DBD0 对应 wincc 中 DB0.DD01.数据块 DBDB 用来存储用户数据及程序的中间变量,为全局变量。DB 的最大容量,S7-300 为 32K

3、B,S7-400 为 64KB。DB 可分为共享数据块(Share DB)、背景数据块(Instance DB)和用户自定义数据(UDT)类型的数据块。共享数据块可作为所有程序使用的全局变量,在 CPU 允许的条件下,一个程序可创建任意多个 DB,每个 DB 的最大容量为 64KB。默认条件下,共享数据块为掉电保持,在其属性菜单中选中“Non Retain” 可以更改为掉电数据丢失。如 CPU 中无足够的内部存储空间保存数据,可将指定的数据保存到共享数据块。存储在共享数据块中的数据可被其它任意一个块调用(全局变量)。这一点和背景数据块不同,背景数据块只能被指定的功能块(FB )使用,保存在背景

4、数据块中的数据只能在这个功能块中有效。背景数据块与 FB 和 SFB 关联,也是全局变量。背景数据块和共享数据块相比,只保存与 FB 或 SFB 接口数据区(Temp)相关的数据。背景数据块中有一种比较特殊的数据块,称为多重背景数据块。有关多重背景数据块的用法和使用注意事项请参看怎样使用多重背景数据块。基于 UDT 的数据块为全局变量,提供一个固定格式的数据结构,便于用户使用。2.声明变量表(又称局部变量声明表)的组成,变量声明表由参数(IN、IN_OUT、OUT)和局部变量两大类组成,局部变量又包括静态变量(STAT)和临时变量(TEMP)两种。参数是调用快(FB)和被调用快(背景数据块)间

5、传递数据,是逻辑块的接口。静态变量和临时变量是仅供逻辑块(这里指 FB)本身使用,不能用作不同程序块之间的数据接口,也就是说静态变量仅用于本功能块 FB,并且只能在 FB 的背景数据块中使用,它在 PLC 运行期间始终被存储。S7 将静态变量定义在对应的背景数据块中,当被调用快(FB 快)运行时,能读出或修改静态变量(从对应的 DI 块);被调用快运行结束,静态变量的数据保留在数据块中。由于 FB 有自己的背景数据块,所有的参数在其背景数据块中都有对应的存储位置,静态变量随着 FB 打开起作用,随着 FB 块调用结束而关闭,而且 STAT(静态变量)的数据必须在调用 FB 快时同时打开对应的背

6、景数据时才能修改或读出,所以你是无法在线修改 STAT中的数据,也没有什么快捷方法。(转帖:http:/ WinCC 里调用 STEP7 的变量:下载http:/ STEP7 中有两种用来定义符号地址的表格形式:符号表(共享符号)和变量声明表(局域符号),其本质都是为了建立绝对地址与符号地址之间的内在联系,但表格针对的对象不同。共享符号是整个程序所使用的共同符号(用于全局符号定义的表为符号表);而局域符号是某一特定逻辑快(OB、FB、FC 等)所使用的临时性标记,只能在特定的逻辑块中进行临时性定义。用于临时性的、局域符号定义的表被称为变量声明表,又称局部变量声明表。局部变量声明表分为参数(输入

7、参数 IN、输出参数 OUT、输入/输出参数IN_OUT)和局部变量。局部变量又包括静态变量(STAT)和临时变量(TEMP)两种。参数可在调用块(逻辑块,块中的形参)和被调用块(功能FB 有自己自动生成的背景数据块 DI,而功能 FC 只能使用共享数据块,提供调用块的形参的实际参数值,与调用块形式参数一一对应,数据类型必需一致)。静态变量和临时变量是仅供逻辑块本身使用数据,不能用作不同程序块之间的数据接口。通过以上分析,我们知道所谓局部变量(包括静态变量和暂态变量)都是指对特定的逻辑块而言的,局部变量只是在它所在的块中有效,离开具体的逻辑块谈上述变量是没有意义的,你不能在其他块中调用利用变量

8、(包括静态变量和暂态变量),这是与共享符号不一致的,共享符号可以被任意块调用。在每个逻辑块的前上面部分就是变量声明表的区域,在变量声明表中,用户声明本块中专用的变量,即局部变量包括块的形参和参数的系统属性。你可以在不同的块中使用相同的局部变量符号不会产生冲突。静态变量(STAT)在 PLC 运行期间始终被存储。S7 将静态变量定义在背景数据块(针对 FB 而言,FC 和 OB 无静态变量),当被调用块运行时,能读出或修改静态变量;被调用块结束后,静态变量保留在数据块中;临时变量(TEMP) 是一种在块执行时,用来暂时存储数据的变量,这些数据存储在 CPU 工作存储区的局部数据堆栈(L 堆栈)中。临时变量可以在组织快OB、功能 FC 和功能块 FB 中使用,当块执行时它们被用来临时存储数据,一旦块执行介绍,堆栈重新分配,临时变量中的数据将丢失。在程序块中,如果在块的变量声明表中有局部变量符号,编程是 STEP7 软化自动在局部变量名前加一个“#”号,如果要访问与局部变量重名的全局变量(在符号表中定义),则全局变量必须使用双引号(如“Symbol”)

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报