[西门子] 西门子博图关于优化的块访问

[复制链接]
查看8131 | 回复0 | 2024-5-23 17:36:14 | 显示全部楼层 |阅读模式
优化的块访问

在前面关于MODBUS TCP通讯案例中,频繁提到一个新建的数据块要取消“优化的块访问”的打钩,那么两者有什么区别呢?



块访问的基本知识

可优化访问的数据块没有固定的定义结构。 在声明中,仅为数据元素分配一个符号名称,而不分配在块中的固定地址。 这些元素将自动保存在块的空闲内存区域中,从而在内存中不留存储间隙。 这样,可以提高内存空间的应用率。

在这些数据块中,变量使用符号名称进行标识。要寻址该变量,则需输入该变量的符号名。例如,可通过以下方式访问“优化数据块”数据块中的“INT1”变量:“优化数据块”.INT1,此数据并不对应实际的数据地址。如下图所示:



可优化访问的数据块具有以下优势:

1、可以使用任意结构创建数据块,而无需在意各个数据元素的物理排列方式。

2、由于数据的存储方式已优化并由系统进行管理,因此可快速访问经优化的数据。

3、不会发生访问错误,如,间接寻址或 HMI 进行访问。

4、可以将指定的单个变量定义为具有保持性。

5、默认情况下,优化块具有一个预留存储区,可以在操作过程中对函数块或数据块的接口进行扩展。无需将 CPU 设置为 STOP 模式,即可下载已修改的块,而不会影响已加载变量的值。

STEP 7 提供具有不同访问选项的数据块:

·可优化访问的数据块 (S7-1200/S7-1500)

·可标准访问的数据块 (S7-300 / S7-400 / S7-1200 / S7-1500)

并且在一个程序中,可以包含两种不同类型的块。

可标准访问的数据块:

可标准访问的数据块具有固定的结构。数据元素在声明中分配了一个符号名,并且在块中有固定地址。地址将显示在“偏移量”(Offset) 列中。

这些数据块中的变量既可以使用符号寻址,也可以使用绝对地址进行寻址。如刚才上面例子中的:“优化数据块”.INT1就变为了“DB4.DBW0”,如下图所示:



比较两次的数据变化会发现:可标准访问的数据块多了一个“偏移量”数据都有一个地址符。

为优化访问或标准访问设置保持性

如果将数据定义为具有保持性,则在发生电源故障或网络断开时,也可以保留这些数据的值。在热启动后也不会对保持型变量进行初始化,而是保持电源发生故障之前的值。如果将一个数据块变量定义为具有保持性,则该变量将存储在数据块的保持性存储器区域中。

设置保持性的选项取决于块的访问类型。

·对于可标准访问的数据块,不能定义各变量的保持性。保持性设置对于该数据块的所有变量均有效。

·对于可优化访问的数据块,可以定义各个变量的保持性。

对于结构化数据类型的变量,保持性设置将始终应用于整个结构。无法对数据类型中的各个元素进行任何单独的保持特性设置。如下图所示:



取消打钩,可标准访问的数据块时



打钩,可优化访问的数据块

前面在设定MODBUS TCP存储数据时,取消勾选“优化的块访问”数据块就变为了“可标准访问的数据块”;就因为MODBUS TCP是采用寻址方式进行数据读写。所以数据就有了偏移量一栏。

当然还有关于背景数据块等特殊的情况,可查询手册等相关资料了解更加详细情况,此处主要针对前面MODBUS TCP通讯时频繁提到的取消打钩“优化的块访问”进行补充说明。

==END

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册哦

x
您需要登录后才可以回帖 登录 | 注册哦

本版积分规则