复制/粘贴 F 块可以与标准用户程序块完全相同的方式复制 F-FB、F-FC和 F-DB。(S7-1200、S7-1500)不能复制 F-OB。例外:• 从“程序块 > 系统块”(Programblocks > System blocks) 文件夹中,无法对块进行复制。• 不能将 F块从安全单元复制到标准单元,也不能在安全单元与 F-CPU 的“程序块”(Program blocks) 文件夹之间复制 F块。专有技术保护要对 F 块进行专有技术保护,请按照 STEP 7 帮助中的“保护块”(Protecting blocks)步骤进行操作。要求请注意以下有关 S7-1200/1500 F-CPU 的 F 块专有技术保护的注意事项:• 需要分配专有技术保护的F 块必须在安全程序中进行调用。• 为 F 块设置专有技术保护之前,安全程序必须一致。为此,需对安全程序进行编译(页320)。说明在安全摘要中,不会输出专有技术保护 F块的源代码。需在设置专有技术保护前,创建安全摘要(如,执行一次代码审核或接受 F 块)。说明如果要对专有技术保护的 F块的程序代码和/或块接口进行编辑,不建议通过输入密码打开该 F块,而建议完全删除专有技术保护并在编译后重新设置。说明(S7-1200、S7-1500)对专有技术保护 F 块或由其调用的 F块进行重命名时,仅在打开或移除专有技术保护时输入密码后,专有技术保护的 F-block 的签名才会改变。说明使用专有技术保护 F块时,在编译安全程序时将显示因 F 块设有专有技术保护而产生的警告和错误消息。警告和错误消息中包含相应信息。示例:在专有技术保护的 F块中,在对标准程序中的变量执行读访问,另一个(专有技术保护)的 F 块在对该变量正在写访问。对于 S7-1200/1500F-CPU,更多信息可参见“安全程序中的专有技术保护 F 块”部分中的安全摘要。重用 F块简介在其它安全程序中,可重用已通过测试(如果适用)和认证的 F 块,而无需重新测试和认证。通过设置专有技术保护,可保护 F块中的内容。只有对 F 块进行验收后才能设置该保护,以确保安全摘要完整地包含该 F 块。与标准块相同,F块可存储为模板副本或全局库/项目库中的类型。更多信息,请参见 STEP 7 帮助中“使用库”部分。为待重用的 F块创建安全文档为待重用的 F 块创建包含以下信息的安全文档。S7-300/400 F-CPU• 专有技术保护 F块的签名和初始值签名• 所用 LAD/FBD 指令的所有版本• 所有被调用 F-FB 和 F-FC 的签名和初始值签名•所有要重用的由故障安全块访问的 F-DB 的签名。S7-1200/1500 F-CPU• 专有技术保护 F 块的签名•设置专有技术保护时的安全系统版本• 所用 LAD/FBD 指令的所有版本• 所有被调用 F-FB 和 F-FC 的签名•所有要重用的由故障安全块访问的 F-DB 的签名。安全文档中还应包含 F 块的功能说明。对于专有技术保护 F 块更是如此。通过为待重用F 块(已创建、测试和认证)创建安全程序的安全摘要,可查看所需信息。该安全摘要也可直接用作待重用 F 块的安全文档。使用待重用 F块时的检查重用 F 块时,需确保:• F 块的签名和初始值签名 (S7-300/400) 未发生改变。• (SIMATICS7-1200、S7-1500)设置了记录的安全系统版本。• 设置了记录的(或功能上相同的)LAD/FBD指令版本。有关指令版本的信息,请参见指令说明。• (S7-1200、S7-1500)使用带有已记录签名的已调用和已访问的 F 块。•(S7-300、S7-400)使用带有已记录签名和初始值签名的已调用 F块。如果由于相关性而无法消除版本冲突,则需联系专有技术保护块的创建者,以获得经认证可使用的兼容版本。
与安全程序的信息接口F 共享 DB(S7-300、S7-400)功能F 共享 DB是一个故障安全数据块,它包含安全程序的所有共享数据和 F 系统所需的其它信息。编译硬件配置时,系统将自动插入 F 共享DB。通过其名称 F_GLOBDB,可以在标准用户程序中评估安全程序的某些数据。。在标准用户程序中读取 F 共享DB在标准用户程序中或在操作员监视和控制系统上,可读出 F 共享 DB 中的以下信息:•操作模式:安全模式或已禁用的安全模式(“MODE”变量)• 错误信息“执行安全程序时出错”(“ERROR”变量)• 集体 F签名(“F_PROG_SIG”变量)• 安全程序的编译日期(“F_PROG_DAT”变量,DATE_AND_TIME数据类型)可使用完全资格访问来访问这些变量(例如 “"F_GLOBDB".MODE”)。编程5.4与安全程序的信息接口编程和操作手册, 11/2022, A5E33215622-AM 1655.4.2 F 运行组信息DB(S7-1200 和 S7-1500)简介F 运行组信息 DB 包含与 F 运行组相关的重要信息以及整个安全程序的相关信息。F运行组信息 DB 在创建 F 运行组时自动生成。将为 F 运行组信息 DB分配符号,例如,“RTG1SysInfo”。可以在安全管理编辑器中更改名称。不得通过安全程序访问参数“F_SYSINFO”中的信息。当F-CPU 在取消激活安全模式的运行时间已到后切换为 STOP 模式,会显示上一周期中仍存在的剩余时间。通过完全资格寻址,可以访问 F运行组信息 DB 的内容。可通过 F_SYSINFO PLC 数据类型(UDT) 进行统一访问(例如,由 F系统提供的“RTG1SysInfo.F_SYSINFO”),或访问个别信息(例如,“RTG1SysInfo.F_SYSINFO.MODE”)。例如,通过PG/PC、模式切换、通信功能或“STP”指令进行 STOP例如,通过 PG/PC 操作、模式切换、通信功能或“STP”指令启动STOP 以及维持 STOP 状态,这两类操作与安全无关。例如,STOP 状态可通过 PG/PC 操作轻松(意外)撤销。当 F-CPU从 STOP 模式切换为 RUN 模式时,标准用户程序将以正常方式启动。安全程序启动时,F-DB 的所有 DB内容通常都会复位为其在装载存储器中的起始值。这意味着所保存的错误信息将丢失。F 系统将自动重新集成F-I/O。如果在过程中不允许进行这种启动,则必须在安全程序中编写一个重启动/启动保护程序:禁止输出过程数据,直到用户确认为止(参见“进行用户确认”)。在可安全输出过程值且错误已消除后,才能进行该用户确认。(S031)重启动/启动保护的示例要实现重启动/启动保护,必须可以检测启动。要检测启动,请在F-DB 中声明一个数据类型为 BOOL 的变量,其初始值为“TRUE”。当此变量的值为“1”时阻止过程数据输出,例如,通过使用F-I/O DB 中的 PASS_ON 变量钝化F-I/O。如果可安全输出过程值且错误已得到更正,可通过用户确认复位该变量。 DP 主站或 IO 控制器的 F-CPU安全程序中实现用户确认 (页 198)在智能从站或智能设备上 F-CPU 的安全程序中进行用户确认 (页 203)F-I/ODBF-I/O 访问 6以下章节包含对 F-I/O 访问的一般说明。以下章节仅有部分内容适用于工艺模块(例如 F-TM 计数1x1Vpp sin/cos HF)。更多详细信息,请参见相应的设备手册。寻址 F-I/O概述下文介绍了如何在安全程序中对 F-I/O进行寻址,并介绍了在该过程中需要遵守哪些规则。通过过程映像进行寻址与标准 I/O 相同,可通过过程映像(PII 和 PIQ)访问F-I/O(如,S7-1500/ET 200MP 故障安全模块)。在安全程序中,不支持直接读取(通过 I/O标识“:P”)输入或写入输出。更新过程映像F-I/O 的输入过程映像在 F 运行组开始时进行更新。F-I/O 的输出过程映像在 F运行组结束时进行更新(请参见安全程序的程序结构(S7-300、S7-400) (页 117)或安全程序的程序结构(S7-1200 和S7-1500) (页 119))。有关更新过程映像的更多信息,请参见“将数据从安全程序传送到标准用户程序 (页207)”中的注意事项。为更新过程映像而需要在 F-CPU(过程映像)和 F-I/O 之间进行的通信采用了符合PROFIsafe的特殊安全协议。F-I/O 访问6.1 寻址 F-I/O编程和操作手册, 11/2022, A5E33215622-AM 169规则•只能在一个 F 运行组中寻址 F-I/O 的通道(通道值和值状态)。第一个编程的寻址定义了 F 运行组的分配。•只能通过与通道的数据类型匹配的单位寻址 F-I/O 的通道(通道值和值状态)。示例:要访问 BOOL数据类型的输入通道,必须使用“输入(位)”(I x.y) 单位。不能通过“输入字”(IW x) 单位访问 BOOL 数据类型的 16个连续输入通道。• 始终需要在数据类型为 INT 或 DINT 的变量表中输入模拟量通道。数据类型为WORD、DWORD 和 TIME的变量表中不允许输入。• 仅寻址引用实际存在的通道(通道值和值状态)的输入和输出(例如,对于起始地址为 10 的 F-DO10xDC24V,仅为用于通道值的输出 Q10.0 至 Q11.1,用于值状态的输入 I10.0 至I11.1)。请注意,由于特殊安全协议的原因,F-I/O 占用的过程映像区域比F-I/O上既有的和已启用的通道(通道值和值状态)所需的区域大。要找出用于存储通道(通道值和值状态)的过程映像区域(通道结构),请参见相关的F-I/O 手册。• 对于某些 F-I/O(如,ET 200SP 故障安全模块或 S7-1500/ET 200MP故障安全模块),可禁用通道。仅对硬件配置中启用的通道(通道值和值状态)进行寻址。如果寻址在硬件配置中禁用的通道,则在编译安全程序时会输出一条警告。•对于某些 F-I/O(如,S7-1500/ET 200MP 故障安全模块或 ET 200MP 故障安全模块),可指定“1oo2(2v2) 传感器评估”。在这种情况下,将两个通道组成一个通道对,“1oo2传感器评估”的结果通常位于通道号较小的通道地址下(请参见相关的 F-I/O手册)。仅对通道对的该通道(通道值和值状态)进行寻址。如果寻址其它通道,则在编译安全程序时会输出一条警告。警告如果在 F-CPU(S7-300/400) 和 F-I/O 间使用了其它组件(按照用户程序,在 F-CPU (S7-300/400) 和 F-I/O之间复制符合 PROFIsafe的安全消息帧),则在更改用户编程的复制功能时,必须测试受复制功能影响的所有安全功能。值状态(S7-1200 和S7-1500)属性值状态是 F-I/O 通道值的附加二进制信息。该值状态输入到过程映像输入 (PII) 中。S7-1500/ET200MP、ET 200SP、ET 200AL、ET 200eco PN、ET 200S、ET200iSP、ET200pro、S7-1200 故障安全模块或 S7-300 F-SM、故障安全 I/O 标准设备以及故障安全DP标准从站(支持“RIOforFA-Safety”规约)支持值状态。有关值状态的信息,请参见各自F-I/O的文档。建议通过“_VS”针对值状态修订通道值的名称,例如“TagIn_1_VS”。值状态提供了有关相应通道值有效性的信息:•1:为通道输出一个有效的过程值。• 0:输出通道的故障安全值。只能从同一个 F 运行组访问 F-I/O的通道值和值状态。对于带有数字量输入的 F-I/O,值状态位在 PII 中的位置值状态位在 PII 中位于通道值之后。