SIEMENS西门子 ET200SP输出模块 6ES7132-6BH00-0BA0
数据块编程的基本原理 数据块 (DB) 用于保存程序执行期间写入的值。 与代码块相比,数据块仅包含变量声明。不包含任何程序段或指令。变量声明定义数据块的 结构。 数据块类型 有两种类型的数据块: • 全局数据块 全局数据块不能分配给代码块。可以从任何代码块访问全局数据块的值。全局数据块仅 包含静态变量。 全局数据块的结构可以任意定义。在数据块的声明表中,可以声明在全局数据块中要使 用的数据元素。 • 背景数据块 背景数据块可直接分配给函数块 (FB)。背景数据块的结构不能任意定义,取决于函数块 的接口声明。该背景数据块只包含在该处已声明的那些块参数和变量。 但,可以在背景数据块中定义实例特定的值,例如,声明变量的起始值。 ARRAY 数据块 (S7-1500) ARRAY 数据块是包含一个 ARRAY 的全局数据块。该 ARRAY 可基于任意数据类型。例如,可 以是 PLC 数据类型 (UDT) 的 ARRAY。但这种数据块不能包含除 ARRAY 之外的其它元素。由 于采用平面结构,ARRAY 数据块可访问 ARRAY 元素,并将这些元素传递给被调用块。 通过 ARRAY 数据块间接寻址 ARRAY:可以在运行过程中确定待读取或写入的 ARRAY 数据块 以及数据块的大小。 可通过“指令”(Instructions) 任务卡上“移动操作”(Move operations) 部分中的选项,对 ARRAY 数据块进行寻址。
ARRAY 数据块的保持性 ARRAY 数据块及其组件不能设置为具有保持性。 另请参见: ARRAY 数据块的使用示例 (页 50) PLC 数据类型作为全局数据块的模板 PLC 数据类型可用作模板,创建数据结构相同的全局数据块。仅需创建一次 PLC 数据类型的 结构,之后可通过分配 PLC 数据类型生成所需的数据块。 系统数据类型作为全局数据块的模板 系统数据类型也可用于创建具有相同数据结构的全局数据块的模板。系统数据类型已预定义 了结构。只需在程序中插入系统数据类型一次,之后就可以通过对相同的结构分配系统数据 类型来生成其它数据块。 访问模式 访问数据块中的数据值有两种方式: • 可优化访问的数据块(仅对 S7-1200) 可优化访问的数据块没有固定的定义结构。在声明中,仅为数据元素分配一个符号名称, 而不分配在块中的固定地址。可通过符号名访问这些块中的数据值。 ARRAY 数据块中始终启用“优化块访问”(Optimized block access) 属性。 • 可标准访问的数据块(所有 CPU 系列) 可标准访问的数据块具有固定的结构。数据元素在声明中分配了一个符号名,并且在块 中有固定地址。通过符号名称或地址,可访问该块中的各种数据值。 标准访问的数据块数量取决于 WORD 的限值。即,数据块的标准访问通常占用一个或多 个 WORD(16 位)大小。必要时,系统将在编译过程中为数据块自动添加变量,从而确 保该块占用下一个 WORD 空间。 ARRAY 数据块不可能进行标准访问。 数据值的保持性 要防止在发生电源故障时数据丢失,可以将数据值存储在保持性存储区中。数据块声明表的结构 数据块声明表的结构 下图是数据块的声明表结构,其显示会因块类型和访问方式而不同。 显示实例特定值 在背景数据块中,可以应用所分配函数块接口中已定义的值,也可以定义实例特定的起始值。 对于来自函数块的值,不能进行编辑。可以使用实例特定值替换灰色部分的值。替换的值将 不再以灰色显示。 各列的含义 下表列出了各列的含义。可根据需要显示或隐藏各列。显示的列数取决于 CPU 类型。 列 说明 单击符号以移动或复制变量。例如,可以将变量拖动到程序中作为 操作数。 名称 变量名称。 数据类型 变量的数据类型。变量的相对地址。 仅在一般访问的数据块中提供了该列。 注: SIMATIC 系统库中的许多指令都具有“优化块访问”属性,因此不占 用任何固定存储器地址。即使将这些指令用作标准访问块中的多重 实例,这些指令也不显示偏移量。 默认值 更gaoji别代码块接口中或 PLC 数据类型中变量的默认值。 “默认值”(Default value) 列中包含的值,只能在更gaoji别的代码块或 PLC 数据类型中更改。这些值仅显示在数据块中。 起始值 在启动时变量采用的值。 创建数据块时,代码块中中定义的默认值将用作起始值。之后,即 可使用实例特定的起始值替换所用的默认值。 可选择是否指定起始值。如果未指定任何值,则在启动时变量将采 用默认值。如果也没有定义默认值,将使用相应数据类型的有效默 认值。例如,将 BOOL 的默认值指定为“FALSE”。 监视值 CPU 中的当前数据值。 只有当在线连接可用并单击“监视”按钮时,此列才会出现。 快照 显示从设备加载的值。 保持性 将变量标记为具有保持性。即使在关断电源后,保持性变量的值也 将保留不变。 在 HMI 工程组态中可 见 显示默认情况下,该变量在 HMI 选择列表中是否显示。 从 HMI/OPC UA/Web API 可访问 指示在运行过程中 HMI/OPC UA/Web API 是否可访问该变量。 无论“从 HMI/OPC UA/Web API 可访问”(Accessible from HMI/OPC UA/Web API) 属性是否禁用均可通过 ANY 指针juedui访问非优化数据。 从 HMI/OPC UA/Web API 可写 指示在运行过程中是否可从 HMI/OPC UA/Web API 写入变量。 无论“从 HMI/OPC UA/Web API 可写”(Writable from HMI/OPC UA/Web API) 属性是否禁用均可通过 ANY 指针juedui访问非优化数据。 设定值 设定值是指在调试过程中可能需要进行微调的值。经过调试之后,这 些变量的值可作为起始值传输到离线程序中并进行保存。 监控 指示该变量的过程诊断是否创建有监视。 注释 用于说明变量的注释信息。创建数据块 要求 项目树中,文件夹“程序块”(Program blocks) 已打开。 操作步骤 要创建数据块,请按以下步骤操作: 1. 双击“新增块”(Add new block) 命令。 “新增块”(Add new block) 对话框随即打开。 2. 单击“数据块 (DB)”(Data block (DB)) 按钮。 3. 选择该数据块的类型。此时,可进行以下选择: – 要创建全局数据块,请选择列表条目“全局 DB”(Global DB)。 – 要创建一个 ARRAY 数据块,则需在列表中选择条目“ARRAY DB”。 – 要创建背景数据块,请从列表中选择要为其分配背景数据块的目标函数块。该列表只 包含先前为 CPU 创建的函数块。 – 要创建基于 PLC 数据类型的数据块,从列表中选择 PLC 数据类型。该列表只包含先前 为 CPU 创建的 PLC 数据类型。 – 要创建基于系统数据类型的数据块,从列表中选择系统数据类型。该列表中仅包含已 插入 CPU 程序块中的系统数据类型。 4. 输入数据块名称。如果数据块尚未定义命名空间,则数据块名称中Zui多可包含 125 个字符。5. 软件单元中的可选操作:输入新数据块的命名空间,或使用该软件单元的预设命名空间。 说明 软件单元中的命名空间 有关命名空间的信息,特别是符合 IEC 61131-3 的命名约定,敬请访问: 对命名空间中的程序元素进行分类 (页 9503) 6. 输入新数据块的属性。 7. 如果选择一个 ARRAY DB 作为数据块类型,则需输入数据类型 ARRAY 和 ARRAY 的上限。 可以在所创建块的属性窗口中随时更改 ARRAY 的上限。但后续无法更改 ARRAY 数据类型。 8. 如果选择包含有监视的块作为“类型”(Type),则可为监控函数指定一个 ProDiag 函数块。 9. 要输入新数据块的其它属性,可单击“附加信息”(Additional information)。 随即显示一个带有多个文本框的区域。 10.输入所需的所有属性。 11.如果该块在创建后没有打开,则可选择复选框“添加新对象并打开”(Add new and open)。 12.单击“确定”(OK),确认输入。 结果 创建了新数据块。该数据块位于项目树的“程序块”(Program blocks) 文件夹中。 说明 ARRAY 数据块的保持性 ARRAY 数据块及其组件不能进行保持性设置。更新数据块 简介 函数块接口或 PLC 数据类型的任何更改都会造成相应的数据块不一致。 这些不一致性在声 明表和块调用点中标记为红色。 要解决不一致问题,必须更新数据块。 有三种方式来更新块调用: • 在数据块声明表中显式更新。 更新数据块。 应用所分配函数块的接口更改和所用 PLC 数据类型的更改。 • 在程序编辑器中显式更新。 将更新打开块中的块调用。 相关的背景数据块也进行调整。 • 在编译期间隐式更新。 将更新程序中的所有块调用以及所用的 PLC 数据类型。相应的背景数据块也作更新。 在数据块声明表中显式更新 要显式更新块数据块,请按以下步骤操作: 1. 打开数据块。 2. 在快捷菜单中,选择“更新接口”。 在程序编辑器中显式更新 要更新所有块调用或块中的特定调用,请按以下步骤操作: 1. 在程序编辑器中打开块。 2. 右键单击包含块调用的指令。 3. 在快捷菜单中,选择“更新”命令。 4. 将打开“接口更新”对话框。 此对话框显示使用中的块接口与被调用块的已更改接口之间的 差别。 5. 如果要更新块调用,请单击“确定”。 要取消更新,请单击“取消”。 编译期间的隐式更新 要在编译期间隐式更新所有块调用以及 PLC 数据类型和背景数据块的所有使用,请按如下步 骤操作: 1. 打开项目树。 2. 选择“程序块”文件夹。 3. 选择快捷菜单中的“编译 > 软件(重建所有块)”命令。