FH故障安全系统组态与常见问题

SIS系统组态需要工程师有相关的安全知识和经验,组态过程请参考下面文档:

S7 F/FH Systems — 组态和编程

http://support.automation.siemens.com/CN/view/zh/2201072

SIMATIC 过程控制系统 PCS 7 提纲 B 部分 - 过程安全

http://support.automation.siemens.com/CN/view/zh/35016980

关于故障安全信号模板的接线,除了参考相关的行业标准外,还需要参考:

S7-300 ET 200M 分布式IO 故障安全信号模块手册

http://support.automation.siemens.com/CN/view/zh/19026151

如果使用了冗余I/O,需要订购MTA模板,请参考:

MTA的订货清单,包括了熔断器

http://support.automation.siemens.com/CN/view/zh/29289048

 

如何将低版本的S7-400FH项目升级至新版本?

关于S7-400FH项目的升级,请参考:S7 F/FH Systems — 组态和编程 2.3章(移植到 S7 F Systems V6.1

http://support.automation.siemens.com/CN/view/zh/2201072

常见问题:

为什么我换了新的安全模板后还不输出?

这是因为在模板插拨过程中CPU和安全模板的故障安全通讯中断,新换上的模板钝化后进入安全状态,需要手动去钝化后才能正常输出,关于钝化的解释如下:

F模板或通道检测到故障时,对应的通道或模板会切换到相应的安全位置,即为钝化现象,具有如下特点:

·         通道故障,例如断线,只会影响对应的通道钝化。

·         模板故障,例如插拨模板,它会影响整个模板进入钝化状态。

·         F_DI 通道在钝化后结果为“0”或为替代值,F_AI通道结果默认为保持最后值,如果设置SUBS_ON1,那么结果变为SUBS_V替代值。

·         可以手动设置ACK_NEC的值来实现不同的需求,通常需要设置为0,这样通道断线就不需要人工干预了。

Description: C:\Users\PCS7\Desktop\TO OS\TO OS\PCS7_TOP_V1\Special_Function\SIS\F_SYSTEM_Configue\image\image001.png

关于去钝化的方法介绍如下:

·         CPU重新启动的过程 ,系统会自动进行一次去钝化。

·         F模板或者通道的故障消除后,通过手动确认或者模板自己恢复到正常的位置, 即为去钝化现象。去钝化的方法是在故障消失后,ACK_REQ的值会变1,这时如果从ACK_REI输入一个脉冲,就可以实现去钝化,有三种方法来实现:

 

1)  在线修改CFC里驱动块ACK_REI引脚的值为1 ,再改为0,实现一个脉冲。

这种方式如果钝化的通道较多,操作起来非常费时间,而且一旦误操作,造成F数据的非法读写,就会出现F_ShutDown,因此不适合维护人员使用,只适合在试验时使用。

Description: C:\Users\PCS7\Desktop\TO OS\TO OS\PCS7_TOP_V1\Special_Function\SIS\F_SYSTEM_Configue\image\image002.png

2)  如果是PCS 7系统且有上位机,可以通过F Library里的F_QUITES功能块输出接到F_CH_XXXACK_REI引脚,在画面上设置两个按钮,分别给F_QUITES的输入赋值69,再通过DIG_MON功能块把钝化的消息发送到WINCC,操作员在一分钟之内先后给F_QUITES输入69F_QUITES就会输出一个脉冲实现去钝化。

Description: C:\Users\PCS7\Desktop\TO OS\TO OS\PCS7_TOP_V1\Special_Function\SIS\F_SYSTEM_Configue\image\image003.png

通常在一个CPU里只需要用一个F_QUITES,它的输出接到所有的驱动块就可实现去钝化,具体的做法,请参考下面的手册:

http://support.automation.siemens.com/CN/view/zh/35016980

SIMATIC 过程控制系统 PCS 7 提纲 B 部分 - 过程安全

4.7.5 编写用户确认后的重新集成程序)

3)  将钥匙按钮通过DI模板输入进行去钝化操作

对于没有上位机的系统,可以在柜门、操作台上安装相应的指示灯和按钮来实现,将一个CPU程序里F_CH_XX驱动块的ACK_REQ输出后,输出到一个指示灯提示维护人员需要去钝化。维护人员通过一个专用的按钮和DI输入到每一个F_CH_XX驱动块的ACK_REI引脚,实现去钝化。为了控制此按钮的操作权限,建议使用带钥匙的按钮。

由于去钝按钮所接的安全模板本身也可能会钝化,这样就会影响它的功能,因此,针对这个通道,需要特殊处理如下:

ACK_REQ的输出反向连到ACK_REI,由于ACK_REQ来标准数据,而ACK_REI为安全数据,所以需要调用一个转换块F_BO_FBO来转换一下,如下图所示:

Description: C:\Users\PCS7\Desktop\TO OS\TO OS\PCS7_TOP_V1\Special_Function\SIS\F_SYSTEM_Configue\image\image004.png

SIMATIC S7-400FH上,如何在运行过程中更改故障安全I/O的参数?

 

支持在运行中更改安全模板的参数,但是在下载程序之前要把相关模板的对应通道都打上旁路,在修改完成后确认模板工作正常再取消旁路,原因如下:

由于安全模板和安全CPU之间是通过ProfiSafe故障安全通讯来交换数据的,在每包数据中都包括一组CRC校验码,这个校验码是F SYSTEM根据模板的安全参数计算出来的,CPUF 模板驱动和F模板都各存一份相同的CRC校验码。因此,如果更改安全模板的安全参数,那么需要编译CFC以生成新的校验码,在下载CFCCPU时新的校验码生效

在修改硬件并通过H-CiR(硬件更改)之后,新的硬件组态并不会立即生效,需要在插拨之后新的CRC校验码才能生效,因此程序与模块间的数据交换会有一个中断的状态,这是为什么不允许在运行过程中更改参数的原因。

变通的解决方案如下:

启用F模块上一个未使用的输入后,必须再次编译更新模块驱动,以使模块驱动参数重新匹配模块的参数,为了在下传更改硬件和F模块驱动期间保持输入信号,在执行下传之前,必须通过F_CH_XXSIM_ONSIM_V引脚来提前打好旁路。

警告:
在这段时间内进程没有捕获任何实际值。确保这段时间内采取其它系统安全防护措施。

安全模板的备用通道报SF怎么办?

 

通常在模板配置时会预留一些备用通道,由于备用通道没有接线,这些通道会报“SF”故障,不利于维护,建议做如下处理:

·         由于F-DI24不能识别断路(开路)故障,因此未使用的输入不会被诊断为故障信号。

·         由于F-DI Namur可以识别断路(开路),因此未使用的输入必须连接一个电阻(例如,1千欧)才能避免被诊断为故障信号。

·         由于F-AI (4-20 mA)可以识别开路信号,要使输入不会诊断为故障信号,必须提供一个大于4 mA的电流,比如,在供电电压和输入之间连接一个3.9千欧的电阻。

·         由于F-DO10可以识别无连接的输出,必须在输出上连接一个电阻(例如,2.7千欧)。

为什么冗余DO报断线?

 

冗余的326-2BF10 DO模板,需要在每个通道里都激活如下的选项:

Description: C:\Users\PCS7\Desktop\TO OS\TO OS\PCS7_TOP_V1\Special_Function\SIS\F_SYSTEM_Configue\image\image005.png

使用了STEP7+F SYSTEM软件编程,每次我手动插入OB8X后都被系统删掉?

 

这是因为CFC编译时会检查并删掉空的OB8X组织块,如果是PCS 7系统不会存在此问题,解决的方法请参考:

http://www.ad.siemens.com.cn/download/searchResult.aspx?searchText=A0512

CFC编程时如何自动生成相应的错误处理OB

安全模板背后的拨码如何拨?

 

     为了保证ProfiSafe 通讯的数据可靠性,在每一个安全模板的背后设置了一组DIP开关,这一组开关要保证在每个CPU里唯一,为了便于管理,建议结合站号来配置一组有规律的地址,例如:3号从站第1块模板设置为“31”DIP的开关拨码要与硬件组态里“F 目标地址一致,如下图所示:

Description: C:\Users\PCS7\Desktop\TO OS\TO OS\PCS7_TOP_V1\Special_Function\SIS\F_SYSTEM_Configue\image\image006.png

安全系统如何实现I/O的选举功能?

 

F-DIF-AI的模板自己可以实现1OO2的选举,方法是在硬件组态里激活即可,下面以F-DI21功能为例:

1 可以基于通道灵活的实现选举,一个模板里可以随意指定哪些通道做1OO2选择。

2 选举基于硬件实现,在程序里只要为两个通道中低地址通道调用一个驱动块即可。

3 可以根据现场DI开关的类型选择不同的方式。

4 只能是基于固定的通道组来实现,例如:第0通道只能和第12通道来组合选举。

具体的组态参考下图:

Description: C:\Users\PCS7\Desktop\TO OS\TO OS\PCS7_TOP_V1\Special_Function\SIS\F_SYSTEM_Configue\image\image007.png

如果要想实现2OO3以上的选举,那么基于模板无法实现,但是可以在CFC里调用F_Library里相应的选举功能块来实现,例如:F_2OO3AI功能块可以方便地实现2OO3功能,并提供了更多的选择,如选择3个中的最高值、平均值,并且结合F_CH_AI的质量代码,可以实现2OO3D的功能,提供更高的可靠性和可用性。

什么是F_ShutDown?发生后如何处理?

 

安全程序目前不支持自动调整运行组,如果需要调整,可以手动调节,但是注意一定不要调节以@开关的运行组,否则可能会引起F_Shutdown,整个安全程序不再执行,不影响到标准程序的执行,当然过程的生产也会中断 ,引起F_Shutdown的原因有以下几种:

1 安全数据的非法读写:例如对安全功能块的背景DB进行非法修改

2 安全程序的执行顺序出错

3 CPU硬件故障 ,例如:工作内存出错

 发生F_ShutDown后,需要先找到原因并排除,再在Chart 文件夹里找到@F_SHUTDN,打开它后将Restart 给一个脉冲,执行一次重启。

Description: C:\Users\PCS7\Desktop\TO OS\TO OS\PCS7_TOP_V1\Special_Function\SIS\F_SYSTEM_Configue\image\image008.png

如果安全程序仍然无法执行,说明故障没有排除,需要继续查找原因。

安全驱动块的状态如何在画面上显示?

 

  安全功能块的输出有的配有标准数据,如下图的QQ_DATA的值是相等的。

Description: C:\Users\PCS7\Desktop\TO OS\TO OS\PCS7_TOP_V1\Special_Function\SIS\F_SYSTEM_Configue\image\image009.png

如果想将安全数据和DB块里的标准 数据相连接,这种应用仅用于显示或者非安全逻辑,这时需要用F Library里转换块来实现,例如:

F_BO_FBO功能块可以将标准数据(M区或者DB区数据)转成安全数据,F_FBO_BO可以将安全数据转成标准数据。