或者,也可以像以前一样选择使用“赋值 (页428)”(Assignment) 指令在变量中设置“1”或“TRUE”。为此,请勿在 FBD 中互连“赋值”(Assignment)指令的功能框输入端。在 LAD 中,将输入直接与电源轨互连。随后通过指令“取反 RLO (页 424)”(Invert RLO)进行取反,可获得具有“0”或“FALSE”的变量。FBD示例:临时本地数据的操作数区域:特性说明请注意,当使用临时本地数据操作数区域时,对主安全块/F-FB/F-FC中的本地数据元素的首次访问必须始终为写访问。这可对本地数据元素进行初始化。请确保在首个 JMP、JMPN 或 RET指令之前,初始化临时本地数据元素。“本地数据位”应通过赋值(“=”)(FBD) 或 ("--( )") (LAD)指令初始化。为本地数据位赋一个信号状态(布尔常量“0”或“1”)。不能使用触发器(SR、RS)、置位输出 (S) 或复位输出 (R)指令来初始化本地数据位。如果未执行以上操作,则 F-CPU 将切换为 STOP 模式。在 F-CPU的诊断缓冲区中输入引起该诊断事件的原因。“完全资格 DB 访问”对 F-FB/F-FC 中数据块变量的访问属于“完全资格 DB访问”。这也适用于在跳转标记后对数据块变量的初始访问。对于 S7-300/400 F-CPU,仅首次访问需要是“完全资格 DB访问”。也可以使用“OPN”指令。“完全资格 DB 访问”的示例:指定 F-DB 名,例如“F_Data_1”。使用在 F-DB声明中指定的名称而非juedui地址。 “不完全资格 DB 访问”的示例(S7-300、S7-400):图 5-2无完全资格访问的示例访问背景数据块也可以通过完全资格访问方式访问 F-FB 的背景数据块,例如传送块参数。不能访问其它F-FB的单一/多重背景中的静态局部数据。(S7-300、S7-400)请注意,访问未在安全程序中调用的 F-FB背景数据块可能会导致F-CPU 切换为 STOP 模式。注意 S7-1200/1500 F-CPU 的以下警告信息:警告通过程序设定对F-FB 的实例 DB 的全局访问时,必须确保已调用安全程序中的关联 FFB。F 型 PLC 数据类型 (UDT)(S7-1200 和S7-1500)简介可以像使用标准 PLC 数据类型 (UDT) 那样,声明和使用 F 型 PLC 数据类型 (UDT)。可以在安全程序中以及标准用户程序中使用 F 型 PLC 数据类型 (UDT)。本章介绍了与标准 PLC 数据类型 (UDT)之间的差别。有关使用和声明标准 PLC 数据类型 (UDT) 的信息,请参见 STEP 7 帮助中的“声明 PLC 数据类型”。声明F 型 PLC 数据类型 (UDT)可以像声明 PLC 数据类型 (UDT) 那样,声明 F 型 PLC 数据类型 (UDT)。在 F型 PLC 数据类型 (UDT) 中,可以使用所有数据类型 (页125)(也可在安全程序中使用)。例外:ARRAY。声明步骤如下:1. 单击项目树的“PLC 数据类型”(PLC DataTypes) 文件夹中的“添加新 PLC 数据类型”(Addnew PLC data type)。2. 要创建 F 型 PLC数据类型 (UDT),请启用“添加新 PLC 数据类型”(Add new PLC data type)对话框中的选项“创建 F 型PLC 数据类型”(Create F-compliant PLC data type)。3. 请按 STEP 7 帮助的“编程 PLC数据类型的结构”中的说明进行操作。声明时,可以指定 F 型 PLC 数据类型 (UDT) 的默认值。使用 F 型 PLC 数据类型(UDT)可以像使用标准 PLC 数据类型 (UDT) 那样,使用 F 型 PLC 数据类型。F 型 PLC 数据类型的嵌套深度对于F 型 PLC 数据类型,与标准 PLC 数据类型相比,Zui大嵌套深度有一定限制(Zui大嵌套深度 = 8)。嵌套深度还取决于其中声明了嵌套F 型 PLC 数据类型的变量的块调用顺序。每调用一级 F-FC 或多实例 F-FB,所使用 F 型 PLC数据类型的Zui大嵌套深度都会减少。对于多实例 F-FB,调用函数计为一个额外的层级。如果在全局 F-DB 中声明嵌套 F 型 PLC数据类型的变量,其Zui大嵌套深度为 7。示例 1主安全块(层级 1)调用作为多实例的 F-FB(层级 2),该 F-FB 转而调用F-FC(层级3),而 F-FC 中则声明了类型为嵌套 F 型 PLC 数据类型的变量。这意味着为变量使用的故障安全型 PLC数据类型提供的Zui大嵌套深度为 5。示例 2主安全块调用作为单实例的 F-FB(层级 1),该 F-FB 转而调用 F-FC(层级2),而 F-FC中则声明了类型为嵌套 F 型 PLC 数据类型的变量。这意味着为变量使用的故障安全型PLC数据类型提供的Zui大嵌套深度为 6。对 F 型 PLC 数据类型 (UDT) 的更改需要输入安全程序的密码来更改 F 型 PLC数据类型 (UDT)。不管是在 F 块中,还是在标准块中使用 F 型 PLC 数据类型(UDT)(或者根本不使用),均需上述密码。参见“F 型 PLC 数据类型”(F-compliant PLC data types)区域(S7-1200 和 S7-1500)为 F-I/O 的输入和输出按一定结构分组 PLC 变量(S7-1200 和S7-1500)可按照标准 I/O 的输入和输出的变量分组方式为 F-I/O 的输入和输出按一定结构分组 PLC变量(结构化 PLC变量)。使用 F 型 PLC 数据类型 (UDT)。规则为 F-I/O 的输入和输出创建结构化 PLC变量时,除了标准规则外,还必须遵守以下规则:• 不能用结构化 PLC 变量为标准 I/O 和 F-I/O 的输入/输出进行分组。•只能用结构化 PLC 变量对实际存在的通道(通道值和值状态)的输入/输出进行分组。另请参见寻址 F-I/O (页 168)•只能用结构化 PLC 变量对已在硬件配置中启用的通道(通道值和值状态)的输入/输出进行分组。另请参见寻址 F-I/O (页 168)•在设置了“1oo2 传感器评估”(1oo2 sensor evaluation)的情况下,只能对可提供“1oo2传感器评估”结果的通道(通道值和值状态)的输入进行分组。另请参见寻址 F-I/O (页 168)•应将 F-I/O 的所有输入和输出合并到一个结构化 PLC 变量中。将这些输入和输出分为多个结构化 PLC 变量时,只能以 16位的倍数开始。这一点也适用于嵌套 F 型 PLC 数据类型 (UDT)。参见标准中的规则。如果忽略上述内容,则 F-CPU 将进入STOP 模式。在 F-CPU 的诊断缓冲区中输入引起该诊断事件的原因。• 用于分组 F-I/O 输出的结构化 PLC 变量不能与其它PLC 变量重叠。如果忽略上述内容,则 F-CPU 将进入 STOP 模式。在 F-CPU的诊断缓冲区中输入引起该诊断事件的原因。说明要遵守这些规则,必须相应地声明用于结构化 PLC 变量的 F 型 PLC数据类型。F-I/O 组态的“IO 变量”(IO tags) 选项卡中提供了分配给结构化 PLC 变量的地址。F-I/O的输入和输出的结构化 PLC 变量示例(S7-1200 和 S7-1500)简介本示例将 F 模块 4 F-DI/3 F-DODC24V/2A 与 1oo2 评估结合使用,以演示如何使用结构化PLC 变量来访问 F-I/O。4 F-DI/3 F-DODC24V/2A F 模块的通道结构下表列出了使用 1oo2 评估的 F 模块 4 F-DI/3 F-DO DC24V/2A的通道结构和地址分配。只能访问已启用的现有通道(地址 I15.0 至 I15.3 和 I16.0 至 I16.3)。这些通道提供在 F模块内部生成的 1oo2 评估结果。创建 F 型 PLC 数据类型 (UDT)例如,创建两个 F 型 PLC 数据类型(UDT),以访问所有通道。下图所示为一个 F 型 PLC 数据类型 (UDT),此数据类型用于访问进行 1oo2评估的输入的通道值和值状态:使用 F 型 PLC 数据类型 (UDT)如下图所示,可以使用已在 F-FC 中创建的两个 F 型 PLC数据类型 (UDT)(例如,“Motor”):为 F 模块 4 F-DI/3 F-DO DC24V/2A 创建结构化 PLC 变量为F 模块 4 F-DI/3 F-DO DC24V/2A 创建结构化 PLC 变量:访问 F-FC在调用 F-FC 时传送已创建的结构化PLC 变量(例如,“Motor”):使用外部编辑器编辑 PLC 变量要使用外部编辑器编辑 PLC变量,请按该标准中的步骤进行操作。更多信息,请参见STEP 7 帮助中的“使用外部编辑器编辑 PLC变量”。注意事项:说明如果导入的变量表中包含安全程序中所用的变量,则将复位安全程序的集体 F 签名。要生成集体 F签名,则需重新编译项目数据。为此,为安全程序设置访问保护后,还需为安全程序设置有效的访问权限。如果要使用外部编辑器编辑 PLC变量,建议将安全程序中需使用的 PLC 变量存储在一个单独变量表中。使用 Multiuser Engineering如果要使用Multiuser Engineering,则需按照 STEP 7 帮助中的“使用MultiuserEngineering”(Using Multiuser engineering)步骤进行操作。删除安全程序删除单个 F 块删除 F 块的操作步骤与 STEP 7 中相同。删除 F 运行组请参见 删除 F 运行组(页 158)(S7-300、S7-400)删除调用安全程序 (Main_Safety) 的所有调用。删除插入存储卡(SIMATIC微型存储卡或闪存卡)的 S7-300/400 F-CPU 的完整安全程序要删除整个安全程序,请按以下步骤操作:1. 删除项目树中的所有F 块(以黄色符号显示)。2. 删除调用安全程序 (Main_Safety) 的所有调用。3. 在硬件与网络编辑器中选择该F-CPU,在 F-CPU 的属性中清除“F 功能已激活”(Fcapability activated) 选项。4. 编译F-CPU 的项目数据此时,离线项目中不再包含安全程序。5. 要删除存储卡(SIMATIC MMC卡或闪存卡)中的安全程序,则需将存储卡(SIMATICMMC 卡或闪存卡)插入 PG/PC 或 SIMATIC USB 编程器中。6.在菜单栏中,选择菜单命令“项目 > 读卡器/USB 存储器 > 显示读卡器/USB 存储器”(Project >Card Reader/USB memory > Show Card Reader/USB memory)。7.打开“SIMATIC 读卡器”(SIMATIC Card Reader) 文件夹,然手删除存储卡。8. 将存储卡插入 F-CPU中。9. 对 F-CPU 执行存储器复位(STOP LED 闪烁表示请求存储器复位)。将离线标准用户程序下载到 F-CPU中。编程5.1 编程概述编程和操作手册, 11/2022, A5E33215622-AM 141删除未插入闪存卡的 S7-400F-CPU 的完整安全程序要删除整个安全程序,请按以下步骤操作:1. 删除项目树中的所有 F 块(以黄色符号显示)。2.删除调用安全程序 (Main_Safety) 的所有调用。3. 在硬件与网络编辑器中选择该 F-CPU,在 F-CPU属性中清除“F 功能已激活”(Fcapability activated) 选项。4. 编译 F-CPU的项目数据此时,离线项目中不再包含安全程序。5. 对 F-CPU 执行存储器复位(在 F-CPU 的“在线工具”(Onlinetools) 任务卡中)。将离线标准用户程序下载到 F-CPU 中。删除 SIMATIC S7-1200/1500 F-CPU的整个安全程序要删除整个安全程序,请按以下步骤操作:1. 删除项目树中的所有 F 块(以黄色符号显示)。2.在硬件与网络编辑器中选择该 F-CPU,在 F-CPU 的属性中清除“F 功能已激活”(Fcapabilityactivated) 选项。3. 编译 F-CPU 的项目数据此时,离线项目中不再包含安全程序。将离线标准用户程序下载到F-CPU 中。