常问问题列表

安全CPU必须使用安全IO模块吗?普通CPU是否需要安全模块?

ET200 分布式IO站点中是否有专门的安全的接口模块?

为什么硬件组态中找不到安全信号模块?

安全程序是否可以上载?

安全模块的输入输出地址是否可以在标准程序中使用?是否可以使用监控表操作、强制安全地址?

为什么安全输入模块的信号指示灯亮,但是地址却监视不到数据?

为什么安全信号模块同时占用输入输出地址,而且地址长度大于信号通道数,信号点是如何分配的?

如何找到安全程序为安全模块自动创建的F-IO DB?

怎样读取安全程序用安全编译器编译后的签名和日期时间?

为什么F-CPU进入STOP模式,并且在诊断缓冲区中出现“Data falsification in the safety program ...”消息?

当ET200SP/MP的F-IO模块无法分配 F 目标地址时应该检查哪些方面?

程序中如何读取安全F-IO模块进入钝化状态?

为什么编译时无错误但安全程序显示不一致?

在标准用户程序修改后,S7-1200F/1500F CPU为什么必须在停止模式下载?

与 PROFIsafe 地址惟一性相关的 PROFIsafe 地址类型1 和类型2 有什么区别?

如何将PROFIsafe 地址设置成在网络范围和CPU范围是唯一的?

为什么 S7-1500 F CPU 在启动时 Profisafe 报文不能自动去钝?

如果 S7-1500 F CPU 因为内部错误 16#7501 导致停止应该如何操作?

如何实现标准模块的故障安全关闭?

哪些模块可以用在 ET 200SP 的电源模块 F-PM-E 的负载组内?

为什么使用ET200SP的F-RQ 模块 (1x24VDC/24..230VAC/5A) 时,继电器触点会短暂地打开?

为什么在编译被配置为I-device的F CPU的F组件时,会出现地址同步错误?

如何通过程序评估钝化状态?如何进行重新集成?

安全CPU必须使用安全IO模块吗?普通CPU是否需要安全模块?

答:安全CPU具有标准CPU的所有功能,所以既可以使用安全信号模块也可以使用标准信号模块,但安全功能部分必须使用安全输入、输出模块实现。在不需要达到安全等级的功能上使用标准信号模块。有些故障安全信号模块支持安全和标准两种模式,与普通CPU一起使用时只能操作在普通模式。仅支持安全模式的故障安全模块,不能与普通CPU一起使用。

ET200 分布式IO站点中是否有专门的安全的接口模块?

答:没有专门的安全型接口模块,ET200系列的接口模块分为两类,支持安全模块和不支持安全模块的,可以通过样技术手册来确定是否支持安全模块扩展。

为什么硬件组态中找不到安全信号模块?

TIA博途中 STEP 7 V1x编程工具需要购买对应版本的STEP7 Safety Advanced V1x或 STEP7 Safety Basic V1x软件包并安装才能配置安全模块。

安全程序是否可以上载?

S7-1200F CPU 不支持上载。

S7-1500/ET200SP F CPU可上载,但需满足3个条件:

  1. CPU 固件在V2.1以上;
  2. 项目使用博途软件在V14SP1以上;
  3. 下载前,在博途软件中安全管理器—设定—高级设定中激活“使能从CPU一致性上载”功能。

更多的关于安全程序上载的信息请参考链接

安全模块的输入输出地址是否可以在标准程序中使用?是否可以使用监控表操作、强制安全地址?

安全模块的输入输出地址可以在标准程序中读操作,但是不能进行写操作,同样也包括F-DB块中的数据,因此在激活CPU安全模式下也不能使用监控表修改和强制操作。具体可以参考下图说明:

图1 标准程序和安全程序对输入输出模块的地址读写使用

图2 标准程序和安全程序对DB操作的说明(只写/只读表示对DB中的同一个数据只能进行一种操作)

为什么安全输入模块的信号指示灯亮,但是地址却监视不到数据?

答:可能的原因

1、模块被钝化

2、安全程序中没编写此模块地址相关的程序

详细信息,请参考链接

为什么安全信号模块同时占用输入输出地址,而且地址长度大于信号通道数,信号点是如何分配的?

答:西门子故障安全信号模块与故障安全CPU之间的数据交换采用的是PROFIsafe安全通信,除了信号状态外还附加有一些安全措施的数据彼此交换,因此同时占用输入输出地址而且长度会大于信号点数。

举例说明

ET200SP中的数字量输入模块 F-DI 8×24VDC HF 将占用 F-CPU 中的以下地址范围:

x = 模块的起始地址

图3 F-DI 8×24VDC HF 占用地址

该模块相应输入通道数据在 F-CPU 中占用已分配输入地址中的以下地址:

图4 F-DI 8×24VDC HF 分配输入位占用地址

ET200SP中的数字量输出模块模块F-DQ 4×24VDC/2A PM HF 将占用 F-CPU 中的以下地址范围:

x = 模块的起始地址

图5 F-DQ 4×24VDC/2A PM HF 占用地址

该模块相应输出通道在 F-CPU 中占用已分配输出地址中的以下地址:

图6 F-DQ 4×24VDC/2A PM HF 分配输出位占用地址

如何找到安全程序为安全模块自动创建的F-IO DB

在TIA Portal软件中,可以直接在安全模块的F-parameters属性中查到。

图7 TIA Portal软件中F-IO DB在F-parameters中直接显示

F-I/O DB 的变量具体说明请参考链接

怎样读取安全程序用安全编译器编译后的签名和日期时间?

HW Config 中保存并编译硬件配置时,将自动插入并扩展 F 共享数据块。 F 共享数据块是一个故障安全块,其中包含 F 系统所需的安全程序的所有共享数据,以及附加信息,可以在标准用户程序中评估安全程序的这些数据。

S7-1500F/1200F系统,安全编译器编译后的签名和日期时间存放在RTG1SysInfo(程序块->系统块->STEP 7 Safety下)中,且该F-DB可打开,调用如下:

“RTG1SysInfo”.F_SYSINFO.F_PROG_SIG (安全程序的集体签名,DWORD类型);

“RTG1SysInfo”.F_SYSINFO.F_PROG_DAT (安全程序的编译日期,DTL数据类型)

RTG1SysInfo的具体说明请参考链接

为什么F-CPU进入STOP模式,并且在诊断缓冲区中出现“Data falsification in the safety program ...”消息?

如果安全数据发生毁坏,F-CPU会进入STOP模式,并在诊断缓冲区中会出现下列任一个故障消息:“Data falsification before output to F IO (75D6)”和“Data falsification in the safety program before output to partner F-CPU (75D7)”。

下列的情况可能导致这个现象。

详细信息,请参考链接

当ET200SP/MP/eco PN的F-IO模块无法分配 F 目标地址时应该检查哪些方面?

如果在给F-IO模块分配F目标地址时,收到提示信息“模块不可用”,需要检查以下几点:

  1. F-IO模块所在分布式从站与F-CPU通信正常。
  2. 检查所组态的F-IO模块的订货号和固件版本是否与实际的匹配。
  3. 需要至少 STEP 7 V13 SP1 Update 9 和至少STEP 7 Safety V13 SP1 Update 5。
  4. 如果F-IO 使用GSDML配置,则可通过S7-FCT分配F目标地址,S7-FCT下载链接
  5. 为了分配F目标地址,禁用组态控制(选项预处理)的选项。
  6. 如果通过PG或PC进行分配,则PG或PC必须位于站点的同一IP子网中(ET 200MP、ET 200SP、ET200ecoPN)。
  7. 确认编码元件可用,且正确插在F-IO模块上。

注:编码元件(备件)订货号:

模块 数量 订货号
ET200SP 不包含F-AI 4xU 0..10V HF 5 6ES7193-6EF00-1AA0
ET200SP F-AI 4xU 0..10V HF 5 6ES7592-6EH00-1AA0
S7-1500/ET200MP 5 6ES7592-6EF00-1AA0
ET200ecoPN 1 6ES7194-6KB00-0AA0

当使用ET200SP还需要检查额外几点:

  1. 站点终端需要加服务模块。
  2. 检查是否组态正确的基座单元(黑色或白色基座单元模块)。
  3. 确定白色基座单元供电。
  4. 确保编码元素的两个部分匹配:

    机械编码元件:防止另一种类型的模块插入基本单元。

    电子编码元件:包含一个电子存储器,用于存储模块特定的配置数据,如F目的地地址。
  5. 确保电子编码元件和F模块出厂设置的放置位置没有改变(同样适用于ET 200MP),见下图:

图8 ET200SP电子编码元件初始位置

程序中如何读取安全F-IO模块进入钝化状态?

在编译硬件组态时,安全系统会为每个F-IO模块自动创建一个F-IO DB。可在程序中评估其中的变量PASS_OUT和QBAD, 如果F-I/O 发生钝化,则变量 PASS_OUT = 1 和 QBAD = 1 。

下图是在TIA Portal软件中ET200S 4/8 F-DI模块发生故障进入钝化状态时的F-IO DB变量PASS_OUT和QBAD状态。

图9 TIA Portal中F-IO DB显示安全模块钝化

为什么编译时无错误但安全程序显示不一致?

在极少数情况下,安全程序在编译后可能仍然会不一致。

编译后,按照以下步骤获取一致的安全程序:

1.如果可能,设置最新的Safety system version。 使用此参数指定安全系统版本(包括F系统模块和自动生成的F模块的版本),选择出现的最高版本。

2.点击 "Clean up" 按钮。

注意 这将删除不同安全程序的系统模块。

图10 修改安全系统版本和清除系统

3.在项目导航中标记项目分别选择"Hardware(rebuild all)"和“Software(rebuild all)”进行编译(通过弹出菜单)。

图11 完全编译

在标准用户程序修改后,S7-1200F/1500F CPU为什么必须在停止模式下载?

以下三个场景描述了下载时需要停机的原因和避免停机的补救措施。

场景 1

描述

如果是安全程序和标准程序之间交换的数据,在这种情形下,标准程序的修改系统有时需要在停机模式下载。

例子

在安全程序中,编写了对标准用户程序里背景数据块中静态变量的读访问,则这个数据块跟安全程序相关联而编译并下载。现在,如果修改相关功能块的接口,则背景数据块也被修改,于是安全程序必须被编译。结果,安全相关的修改需要在停机模式下载。

补救

对于标准用户程序和安全程序之间交换的数据,推荐定义一个特殊数据块(传输数据块),用于交换数据的存储,这个数据块和标准/安全程序都相连接。这样,在标准程序修改时不会改变这些传输数据块,从而不会影响安全程序,反过来也一样。

更多信息

更多信息可从这里获得SIMATIC S7-1200/1500 安全编程指导,在第3.9章节"标准程序和安全程序的数据交换"。

场景2

描述

安全程序正在多用户环境下工作,如果在标准程序中做以下操作可能需要在停机模式下载。

例子

在本地多用户会话中修改了安全程序,于是直接下载修改的程序到控制器,然后会将改变同步到多用户服务器项目中。如果没有标记产生的F系统块,那么这些F块也不会传递给服务器项目。

下次在多用户服务器项目中做编译和下载标准修改时,F系统块必须再次修改,这个修改会导致下载停机。

补救

仅在多用户服务器项目中下载安全程序的更改。

场景3

描述

工程工作使用安装了不同界面语言的STEP 7(TIA)软件的多种PC机,在标准系统环境中项目语言改变,系统需要故障安区那控制器在停机模式下载程序。

例子

项目有多个项目语言(例如,德,英)

用户A仅安装了英文项目语言,完全编译后保存项目。

用户B安装了德文项目语言。

在操作过程中,重新编译安全项目,签名没有改变,但是需要在停机模式下载程序。

补救

所有用户需要选择相同的项目语言。可以在TIA Portal 中增加更多的项目语言。

与 PROFIsafe 地址惟一性相关的 PROFIsafe 地址类型1 和类型2 有什么区别?

PROFIsafe 地址就像 IP 地址是为了唯一的寻址F IO和为了保护标准地址的机制。这个唯一性的界定在PROFIsafe 地址类型1 的F IO中和PROFIsafe 地址类型2 的F IO中有区别,这个区别在下面解释。

PROFIsafe 地址的定义

PROFIsafe 地址(术语命名依据 IEC 61784-3-3: 2010) 是源和目标的唯一标识。每个F-IO都具有两部分地址:

可以使用地址部分中的一个或两个都使用来进行保护。

PROFIsafe 地址类型 1

PROFIsafe 地址的唯一性仅由 F 目标地址保证,F 源地址对 PROFIsafe 地址的唯一性没有影响。因此,F 目标地址在CPU范围1)和网络范围2)内必须是唯一的,而且要在安全打印输出中检查。

下列 F 模板使用 PROFIsafe 地址类型1:

F 目标地址由 IO 上的 DIP 开关设置的模块通常是使用地址类型1。

故障安全 DP 标准从站和故障安全标准 IO 设备使用地址类型1,除非在其相关文档中明确说明。

PROFIsafe 地址类型 2

PROFIsafe 地址的唯一性是由 F 源地址和 F 目标地址共同保证的。PROFIsafe 地址在CPU范围1)和网络范围2)内必须是唯一的。达到目的需要同时满足两个条件:

F CPU 的F 源地址 (参数 "PROFIsafe 地址的基数") 在网络范围2)内是唯一的。

F 模板的 F 目标地址在CPU范围1)是唯一的。

警告:

如果使用 F 源地址保证符合PROFIsafe 地址类型2的 F IO 的PROFIsafe 地址的唯一性, 必须要在安全打印输出中检查每个单独的 F IO 被分配了正确的 F 源地址。同样也需要检查 F 目标地址的唯一性。

成批生产系列设备的厂家使用相同的操作设备在同一个 PROFIBUS/PROFINET 网段,只需要修改 F CPU 的 F 源地址。

这看起来类似:

机械 A: F-CPU S7-1500 的 F 源地址 1000 和 ET 200SP 的 F 目标地址 1, 2, 3。

机械 B: F-CPU S7-1500 的 F 源地址 2000 和 ET 200SP 的 F 目标地址 1, 2, 3。

下列 F IO 使用 PROFIsafe 地址类型2:

在一个网络中使用 PROFIsafe 地址类型1和2

如果在一个网络中使用地址类型1和地址类型2 的 F IO ,地址类型1 的 F IO 的F 目标地址必须继续保持在网络范围内2) 唯一。地址类型2 的 F IO 的F 目标地址必须不能包含任何在网络中地址类型1 的 F IO 的F 目标地址。

备注

1)"CPU范围内-wide" 包含所有分配给 F CPU 的 F IO:位于F CPU中央机架上F IO 和 以F CPU作为 DP 主站/IO 控制器的F IO。 在智能从站与从站通信中分配给智能从站的F CPU 的F IO,而不是分配给作为 DP 主站/IO 控制器的F CPU。

2)一个网络由一个或多个子网构成。 "网络范围"意味着跨越子网边界。在PROFIBUS网络,一个网络包含所有PROFIBUS DP可以访问的节点。在在PROFINET IO 网络包括所有的可以通过RT_Class_1/2/3 (Ethernet/WLAN/Bluetooth, Layer 2) 和使用RT_Class_UDP (IP, Layer 3)访问的的节点。

如何将PROFIsafe 地址设置成在网络范围和CPU范围是唯一的?

在组态范围内唯一PROFIsate 地址的设置取决于:

下面的文档显示了不同设备的组态,解释了网络范围和CPU范围的唯一 PROFIsafe 地址的设置。图中两个设备中有PROFIsafe 地址类型1和2特性的F IO和主机架的F IO(参考下图)。

图12 两个设备中有PROFIsafe 地址类型1和2特性的F IO和主机架的F IO

详细信息,请参考链接

为什么 S7-1500 F CPU 在启动时 Profisafe 报文不能自动去钝?

在S7-1500 F CPU启动期间,PROFIsafe消息(例如驱动器S120、G120)不会自动去钝化。

说明

从手册中的描述可以看出,F IO的重新集成最早在F系统启动后F运行组的第二个周期自动进行。这与变量"ACK_NEC"或配置"通道道错误确认"的设置无关。

如果在F系统启动期间出现F通信/F IO/通道错误,请参阅以下手册章节了解更多信息:

如果在F CPU和F IO之间建立通信所花费的时间超过F IO属性中设置的F监视时间,则不会自动重新集成。

详细信息,请参考链接

如果 S7-1500 F CPU 因为内部错误 16#7501 导致停止应该如何操作?

内部错误16#75D1表示在安全程序中检测到安全关键错误。

说明

如果收到上述错误消息,S7-1500 F-CPU的诊断缓冲区包含以下诊断:

x of xx; 事件ID:16#0D:75D1

错误:安全程序:内部CPU错误

F运行组:1

内部错误信息:2:0*

内部其他错误信息:0

软件PLC/软件PLC

进入事件

事件类型:错误

*除了错误信息2:0之外,还有其他含义不同的信息。

在STEP 7(TIA Portal)的联机帮助中,在"事件0D:75D1的帮助"下,将找到有关错误可能原因和故障排除方法的详细信息。

详细信息,请参考链接

如何实现标准模块的故障安全关闭?

多种SIMATIC 标准输出模块可以实现故障安全关闭。下面条目中列出了哪些输出模块适用。
描述

下面的相关产品列表可以找到能够实现故障安全关闭的 SIMATIC 标准输出模块。只有在表中列出的 SIMATIC 标准输出模板才能应用于故障安全关闭。

列表中的模块没有安全功能,安全功能的触发是通过高层级的安全继电器。这使系统处于安全状态,应该遵守相应的安全继电器的安全注意事项。

以下内容适用于列出的模块所在的同一电势组(ET 200AL除外):

不能使用其它标准数字量输入模板,标准模拟量输入模板,计数模板等,必须为这些模板建立独立的电势组。

注意

详细信息,请参考链接

哪些模块可以用在 ET 200SP 的电源模块 F-PM-E 的负载组内?

安装在电源模块 F-PM-E 24VDC/8A PPM ST (6ES7136-6PA00-0BC0) 右侧模块,只要基座单元没有打开新的电位组,那么模块在电源模块的负载组内。通过断开电源模块 F-PM-E 24VDC/8A PPM ST 的负载组可以实现这种方式的模块的安全停机。

标准模块的安全停机可达 SIL 2 / PL d。

电源模块 F-PM-E 24VDC/8A PPM ST和标准输出模块的组合可实现达到SIL 2和PL d 标准的安全停机。SIL 2 符合 IEC 61508:2010标准,PL d 符合 EN ISO 13849-1:2015标准。

详细信息,请参考链接

为什么使用ET200SP的F-RQ 模块 (1x24VDC/24..230VAC/5A) 时,继电器触点会短暂地打开?

使用如下所示的两款ET 200SP 故障安全模块:

F-RQ 模块与F-DQ 模块的连接方式如下图所示:

图13 连接示意图

行为

在个别情况下,继电器触点会在未预期的情况下短暂打开。

原因

F-DQ 模块的dark test 会导致继电器触点短时间打开。硬件配置中(模块视图 F-DQ > "常规" 标签 > "DQ Parameters")最大回读时间 5ms 设置过长。

关于此问题的更多信息可在F-DQ模块手册的"应用:连接 ET 200SP 数字量输出模块 F-RQ 1x24VDC/24..230VAC/5A (6ES7136-6RA00-0BF0)" 部分获得。

解决办法

如果可能,应该在模块组态中设置"Disable dark test for 48 hours"。

注意上述设备手册中"Disable dark test for 48 hours"部分的进一步信息。

如果不能停用 dark test :

在 F-RQ 模块的24V DC 电源端接入一个二极管 (下图).。这使得F-DQ可以在预先设定的回读时间为1毫秒的情况下运行。

图14 连接示意图

为什么在编译被配置为I-device的F CPU的F组件时,会出现地址同步错误?

当手动更改传输区域的地址时,可能会发生地址同步错误。

如果在编译时出现地址同步错误,那么需要更改传输区域的起始地址。

详细信息,请参考链接

如何通过程序评估钝化状态?如何进行重新集成?

如果发生钝化,F-I/O 将切换到故障安全状态。故障修复后,可重新集成 F-I/O。重新集成存在不同的可能性,取决于 F-I/O 是否支持 RIOforFA-Safety PROFIsafe 配置文件。

如果 F-I/O 发生错误(例如通道故障),则 F-I/O(或相关通道)切换到安全模式。在这种"钝化"状态下,自动输出替代值而不是过程值。

清除导致钝化的错误后,可能会从替代值切换到过程值。切换可以自动完成,也可以在安全程序中的用户确认后完成。该切换称为"重新集成"。

本安全应用示例根据以下内容介绍了 F-I/O 的钝化和重新集成:

如果想重现此处介绍的功能,则可以使用可用于 S7-1200 和 S7-1500 的相应 TIA Portal 项目。

详细信息,请参考链接