SiemensS7300F 系统.docx
《SiemensS7300F 系统.docx》由会员分享,可在线阅读,更多相关《SiemensS7300F 系统.docx(17页珍藏版)》请在冰豆网上搜索。
SiemensS7300F系统
SIMATICS7-300F安全系统应用总结
1故障安全系统概述
1.1什么是故障安全自动化系统
安全自动化系统(F系统)用于控制可以在关闭后立即达到安全状态的过程。
即在F系统控制过程中立即关闭过程不会对人员或环境造成危害。
故障安全系统超越了常规安全工程,启用了全部扩展至电子驱动和测量系统的远程智能系统。
F系统用于具有高级安全要求的系统。
通过详细的诊断信息,F系统中改进的故障检测和本地化操作允许在生产出现安全相关的中断后快速恢复生产。
所谓故障安全自动化系统必须满足下面特征:
当我们用一组自动化装置构造一个自动化系统,此系统可以实现一组故障安全保护功能。
当其中一个或多个自动化装置发生故障的时候,此系统仍然能够保持安全功能不丢失。
1.2西门子安全集成的概念
安全集成是西门子用于自动化和驱动的集成安全概念。
将自动化工程的成功技术和系统用于安全工程。
安全集成覆盖从传感器和执行器下至控制器的整个系列,包括标准现场总线上安全相关的通讯。
除驱动器和控制器的功能任务外,它们还参与安全任务。
安全集成的一个特别功能是,它不仅确保可靠的安全性,还确保了高度灵活性和高生产率。
将安全工程集成至标准自动化标准的优点:
●具有集成故障安全工程的自动化系统比电子机械解决方案更灵活。
●集成使接线解决方案更简便。
●由于使用标准工程工具进行组态和编程,因此集成所需的工程量更少。
●由于可以与CPU中的标准部分一起执行程序中的安全相关的部分,因此仅需要一CPU。
●安全相关的组件和标准程序组件之间的通讯十分简单。
1.3SIMATICS7中的故障安全系统
1.3.1SIMATICS7自动化系统提供两种故障安全系统
◆S7分布式故障安全控制系统
用于实现人身和设备的保护(例如机械设备和生产装置的急停保护)和过程控制工业(例如测量和保护设备,加热炉的保护功能)
◆故障安全和容错S7F/FH系统
容错的S7F/FH系统适用于过程控制工业和石油工业的自动化工厂。
为了增加自动化系统的可用性,防止由于F系统的错误导致的过程失败,S7F系统可以选配冗余部分(S7FH系统)。
通过部件冗余(例如电源部分、处理器部分、通讯部分和输入输出部分)增加系统可用性。
1.3.2可实现的安全要求
S7DistributedSafety和S7F/FHSystemsF系统可以满足以下安全要求:
⏹符合IEC61508规定的安全等级(安全集成等级)SIL1至SIL3
⏹符合EN954-1规定的类别2至类别4
1.3.3S7DistributedSafety和S7F/FHSystems中的安全功能原理
功能安全主要是通过软件中的安全功能实现的。
在发生危险事件时S7DistributedSafety或S7F/FHSystems执行安全功能以恢复或维护系统的安全状态。
安全功能主要包含在以下组件中:
●故障安全CPU(F-CPU)中的安全相关的用户程序(安全程序)
●故障安全输入和输出(F-I/O)F-I/O确保现场信息的安全处理(急停按钮、光栅和电机控制)。
它们具有安全处理所需的所有硬件和软件组件,符合要求的安全等级。
用户仅对用户安全功能进行编程。
可以通过用户安全功能或故障响应功能提供该过程的安全功能。
出现故障时,如果F系统无法再执行其实际用户安全功能,则将执行故障响应功能,例如,取消激活关联输出,以及在必要时将F-CPU切换至STOP模式。
2S7DistributedSafety组件
2.1系统结构
图2-1系统结构
S7分布式故障安全系统包含满足特殊安全要求的部分硬件组件:
图2-2硬件组件
S7分布式故障安全系统的软件组件包括以下内容:
ØSTEP7对SIMATIC可编程控制器进行组态和编程的标准软件包
ØS7DistributedSafety对分布式故障安全系统进行组态和编程的选件包
图2-3软件组件
使用这些选件包,用户将获得:
Ø支持在STEP7中使用HWConfiguration组态F-I/O。
Ø用于创建安全程序的、具有故障安全块的F库。
Ø支持在安全程序中创建安全程序和集成故障检测功能。
3分布式系统的组态和编程
3.1综述
故障安全系统的组态和编程和普通的PLC系统有所不同,不管是硬件组态,还是程序结构,或者是编译下载,都有它的特点。
总体来说,如果开始编写一个故障安全系统的新项目,可以按照下面的图示,分五个步骤进行:
图3-1组态步骤
在进行组态时,安装完STEP7后需要再安装S7-DistributedSafety软件包,否则将在硬件配置里找不到F系统硬件。
3.2硬件组态步骤
3.2.1组态硬件
这个环节与普通PLC系统组态方法基本一致,根据实际的硬件配置,对F-CPU的电源模板、F-DI/DO,逐一进行组态。
本实例以江苏联化科技CAF系统为实例。
图3-2江苏联化科技CAF系统硬件组态
3.2.2组态CPU
相对于普通CPU,F-CPU还需要如下两步配置:
配置F-CPU密码保护,F-CPU的密码防止将F系统从工程系统(ES)或编程设备(PG)XX下载至F-CPU。
图3-3设置密码保护
2)配置F参数,这些参数都是安全程序编辑所要用到的保留区域,通常不用修改。
值得注意的是,当点击FParameters标签页后,会出现一个密码输入对话框,此时需要设定一个安全程序密码(不是上边提及的F-CPU密码),安全程序密码防止对F-CPU和F-I/O设置的组态和参数进行未授权的更改。
图3-4密码输入
图3-5江苏联化科技CAF系统CPU组态
3.2.3组态F-IO
我们分别介绍SM326;AI6x13Bit模块、SM326DI24x24VDC模块、M336;DO10x24VDC/2A模块组态为例
SM336;AI6x13bit模块的组态
图3-6SM336;AI6x13bit模块的组态
SM326DI24x24VDC模块的组态
图3-7SM326DI24x24VDC模块的组态
SM326DO10x24VDC/2A模块的组态
图3-8SM326DO10x24VDC/2A模块的组态
F系统名词解释:
F目标地址:
每个安全模板都会有唯一的F目标地址,该地址由系统自动分配并保证其唯一性,通常不用修改(300F系统也不允许更改)。
模块DIP开关位置:
通常位于安全模板的侧面和背面,位置设定对应该模板F目标地址
(该模板F目标地址的二进制编码)。
如下图:
图3-9F模块安全地址拨码
钝化结果选择:
当通道出现错误后,选择是出错的通道钝化或者整个模板钝化。
从S7DistributedSafetyV5.4开始支持该功能,并且需要相应信号的模板支持。
钝化的含义:
如果F-I/O检测到故障,则将受影响的通道或所有通道切换至安全状态,即该F-I/O的通道被钝化。
F-I/O通过从站诊断将检测到的故障报告给CPU。
对于具有输入的F-I/O,如果发生钝化,则F系统为安全程序提供的是故障安全值,而不是故障安全输入处未决的过程数据。
对于具有输出的I/O,如果发生钝化,则F系统将故障安全值(0)传送给故障安全输出,而不是安全程序提供的输出值。
传感器评估类型:
Ø1oo1评估:
通过一个通道将一个非冗余传感器连接至F模板。
Ø1oo2评估:
两个输入通道由一个双通道传感器或两个单通道传感器占用。
在内部比较输入信号是对等还是非对等。
传感器连接类型
✓Failsafe的输入方式
Ø
1oo1evaluationShortcircuittestAK4/SIL2/Kat.3单通道传感器
图3-101oo1传感器输入接线
Ø1oo2evaluationShortcircuittestAK6/SIL3/Kat.4双通道传感器或两个单通道传感器
图3-111oo2传感器输入接线
Ø1oo2evaluationShortcircuittestAK6/SIL3/Kat.4Antivalent传感器
图3-121oo2传感器输入接线
✓Failsafe的输出方式
ØFailsafe执行器
图3-13Failsafe执行器接线
Ø继电器
图3-14继电器接线
差异时间:
对于1oo2传感器信号评估,在设置的差异时间内,如果2个信号不一样,按照设定的替代值输入;如果差异时间已到,2个信号还不一样,输入值变为0。
应关闭以下SM326;DO10x24VDC/2A模块、SM336;AI6x13Bit模块未使用的输入或输出通道上的组诊断
3.2.4保存编译
完成正确的硬件配置,保存编译通过后,系统会自动生成与硬件相关的安全程序。
硬件配置编译界面
图3-15F程序编译画面
编译完成后,SIMATICManager显示界面:
图3-16安全程序功能块
系统会生成与安全相关的程序且都处于加密状态,每个安全模板都会对应生成一个安全数据块F-I/ODB(红色框内)。
F-I/ODB作用很大,判断模板是否钝化以及模板故障排除后需要完成去钝,都需要通过访问F-I/ODB来完成。
3.2.4F-I/ODB变量
在HWConfig中进行编译时,将为每个F-I/O自动创建一个F-I/ODB。
此F-I/ODB包含可在安全程序中评估的变量,或者可以或必须说明的变量(只能在标准用户程序中评估的DIAG变量除外)。
不能在F-I/ODB中直接更改变量的初始值或实际值,因为F-I/ODB受知识保护。
仅介绍与钝化和去钝相关的F-I/ODB变量。
变量
数据类型
功能
缺省值
可以或必须说明的变量
PASS_ON
BOOL
1=启用钝化
0
ACK_NEC
BOOL
1=发生F-I/O故障或通道故障时需要确认重新集成
1
ACK_REI
BOOL
1=确认重新集成
0
IPAR_EN
BOOL
用于故障安全DP标准从站/标准I/O设备重新分配参数的变量,或用于
SM336;F-AI6x0/4...20mAHART启用HART通讯的变量
0
可以评估的变量:
PASS_OUT
BOOL
钝化输出*
1
QBAD
BOOL
1=输出故障安全值*
1
ACK_REQ
BOOL
1=重新集成的确认要求
1
IPAR_OK
BOOL
用于故障安全DP标准从站/标准I/O设备重新分配参数的变量,或用于SM336;F-AI6x0/4...20mAHART启用HART通讯的变量
0
DIAG
BYTE
检修信息
0
QBAD_I_xx
BOOL
1=将故障安全值输出到输入通道xx
1
QBAD_O_xx
BOOL
1=将故障安全值输出到输出通道xx
1
表3-1安全DB变量说明
PASS_ON:
PASS_ON变量使您可以启用F-I/O的钝化,例如,钝化为安全程序中特殊状态的功能。
在F-I/ODB中使用PASS_ON变量,只能钝化整个F-I/O,不能进行通道级钝化。
只要PASS_ON等于1,就将钝化关联的F-I/O。
ACK_NEC:
如果F-I/O检测到F-I/O故障,则将钝化相关的F-I/O。
如果检测到通道故障,且已组态通道级钝化,则将钝化相关通道。
如果已组态整个F-I/O的钝化,则将钝化相关F-I/O的所有通道。
一旦消除F-I/O故障或通道故障,将根据ACK_NEC重新集成相关F-I/O:
ACK_NEC=0时,可以编写自动重新集成程序。
ACK_NEC=1时,可以通过用户确认编写重新集成程序。
ACK_REI:
当F系统检测到通讯错误或F-I/O的F-I/O故障时,将钝化相关F-I/O。
如果组态了通道级钝化,当检测到通道故障时将钝化相关通道。
如果组态了钝化整个F-I/O,将钝化相应F-I/O的所有通道。
消除故障后,要重新集成F-I/O/F-I/O的通道,要求在以下情况下使用F-I/ODB的变量ACK_REI的上升沿执行用户确认:
●每个通讯错误后
●ACK_NEC=1的情况下发生F-I/O故障或通道故障后
通道故障后的重新集成将重新集成所有已清除故障的通道。
仅在ACK_REQ=1时才可能确认。
在安全程序中,必须通过ACK_REI为每个F-I/O提供用户确认。
PASS_OUT/QBAD/QBAD_I_xx/QBAD_O_xx:
如果已为F-I/O组态通道级钝化,则PASS_OUT=1和QBAD=1表示至少已钝化一个通道。
QBAD_I_xx和QBAD_O_xx表示被钝化的输入和输出通道。
如果已组态整个F-I/O的钝化,则变量PASS_OUT=1和QBAD=1表示已钝化整个FI/O。
使用故障安全值0代替关联的F-I/O或F-I/O的单个通道的过程数据后,F系统将把PASS_OUT、QBAD、QBQD_I_xx和QBAD_O_xx设置为1。
但是,如果您通过将PASS_ON设置为1来启用钝化,则仅将QBAD、QBAD_I_xx和QBAD_O_xx设置为1。
如果使用PASS_ON=1启用钝化,PASS_OUT将不更改数值。
因此,PASS_OUT可以用于其它F-I/O的组钝化。
ACK_REQ:
当F系统检测到通讯错误或F-I/O的F-I/O故障或通道故障时,将钝化相关F-I/O或FI/O的单个通道。
ACK_REQ=1表示重新集成相关F-I/O或F-I/O的通道需要用户确认。
一旦消除故障后,F系统将立即把ACK_REQ设置为1,从而可以执行用户确认。
对于通道级钝化,一旦修正通道故障,F系统会立即将ACK_REQ设置为1。
可对此故障执行用户确认。
确认完成后,F系统将把ACK_REQ复位为0。
3.2.5程序结构
一个安全程序由一个或两个F运行组组成。
安全程序包括以下组件:
●由用户创建或从F库(例如DistributedSafetyF库[V1])中选择的F块。
●自动添加的F块(F-SB、自动生成的F块和F共享DB)
下图显示了S7DistributedSafety安全程序的示意图结构。
图3-17安全程序结构图
S7DistributedSafety安全程序中的一个F运行组包括:
●一个F-CALLF调用块
●一个F程序块(分配给F-CALL的F-FB/F-FC)
●使用F-FBD或F-LAD编程的附加F-FB或F-FC(如果需要)
●一个或多个F-DB(如果需要)•F-I/ODB
●DistributedSafetyF库(V1)的F块
●来自自定义F库的F块
●F系统块•自动生成的F块
3.2.6创建FailsafeRuntimeGroup
1)进入安全程序编译界面
在SIMATICManager主界面下,点击菜单Options>EditSafetyProgram,或者直接点击工具栏中图标,启动安全程序编译界面。
图3-18编辑安全程序
2)创建FailsafeRuntimeGroup
上一步创建完的FB1不能直接在标准用户程序中被调用,需要创建一个对应的F-CALL调用块和I-DB。
如下图:
FC1、DB1。
点击“OK”后,它们会有系统自动生成并且处于加密状态,不能由用户进行编辑。
图3-19创建安全组
3.2.7编译下载Failsafe程序
点击Safety编译窗体中的Compile,编译Failsafe程序;然后点击Download下载,这里需要注意:
●硬件组态应该首先下载;
●如果修改了硬件组态中CPU、F-I/O模块的有关参数,或者修改了Failsafe程序中的F块,就应重新编译并下载Safety程序;
●普通用户程序可以及时修改、编写,对Failsafe程序的版本号signature没有影响。
4应用中问题处理
●对于300F系统工作在安全模式下安全模块会出现SF灯亮报模块丢失通讯的故障,这是因为没有安全组使用其I/O通道造成的。
●安全程序需要单独下载且安全系统自带的程序较大建议对系统使用较大的存储卡
●对于较复杂的程序要使用高级别的安全系统300FCPU安全组调用程序块的个数是有限制的手册上没有明确说明单如果安全程序调用的快较多最好多设置安全组否则编译不过去。
●安全程序不支持浮点数据类型,如果用户程序与安全程序需要数据交换只能使用M区作为中间置换区。
●在安全程序内非安全地址只能是只读或只写的操作模式
●安全系统不支持比较后再运算的能流运算模式