3. PLC安全功能基础
在矿山提升机、带式输送机、通风机等关键设备的急停回路中,普通PLC与安全PLC承担着完全不同的角色。理解两者的本质差异,是正确设计双通道急停回路、合理选择硬件并验证其安全功能的前提。本节围绕安全PLC的硬件与软件特征、安全完整性等级(SIL)的量化含义、急停输入/输出模块的电气特性、安全程序的结构组织,以及IEC 61508与IEC 62061两个标准的核心要点展开,为后续双通道回路的接线、诊断与验证打下概念基础。
一、普通PLC与安全PLC的本质区别
普通PLC的设计目标是“可用性”与“控制功能正确”,其内部CPU、存储器、电源多为单套结构,程序执行中若发生位翻转、指令跳转错误或输出粘连,系统无法自行察觉。安全PLC的设计目标则是“功能安全”,即在出现内部随机硬件故障或系统性错误时,仍能进入并保持安全状态(通常是使能回路断开)。这一目标通过三条技术路线实现:
- 冗余与多样性:采用双CPU(同构或异构)并行运算,对输入映像、运算结果逐周期比较,不一致即触发安全停机;部分型号采用“1oo2”或“2oo3”表决结构。
- 自诊断覆盖:内置看门狗、存储器CRC校验、时钟监测、输出回读(read-back)等诊断,将危险失效的检测覆盖率提升到60%~99%区间,具体数值由模块安全手册给出。
- 受控的软件环境:安全程序只能使用经认证的安全指令集(如安全与、或、定时、比较),禁止使用指针、间接寻址、浮点运算等难以验证的指令;程序下载需通过密码或专用安全签名机制。
需要强调的是,安全PLC并非“更可靠的普通PLC”,而是以认证方式证明其失效率满足特定SIL等级的产品。普通PLC即使加装冗余模块,也不能直接用于安全功能回路,除非整条回路(传感器、逻辑、执行器)均满足相应SIL要求。
二、安全完整性等级(SIL)的量化含义
SIL是IEC 61508提出的离散等级(SIL1~SIL4),用于描述安全功能在要求时刻成功执行的概率。对低要求模式(如急停按钮,动作频率每年不超过1次),用平均失效概率PFDavg衡量;对高要求或连续模式,用每小时危险失效概率PFH衡量。常用对应关系如下表(示例数值,取自标准典型区间):
| SIL等级 | PFDavg(低要求) | PFH(高要求/连续) | 典型应用 |
|---|---|---|---|
| SIL1 | 10⁻²~10⁻¹ | 10⁻⁶~10⁻⁵ /h | 一般辅助设备急停 |
| SIL2 | 10⁻³~10⁻² | 10⁻⁷~10⁻⁶ /h | 带式输送机、局部风机急停 |
| SIL3 | 10⁻⁴~10⁻³ | 10⁻⁸~10⁻⁷ /h | 提升机、主通风机急停 |
| SIL4 | 10⁻⁵~10⁻⁴ | 10⁻⁹~10⁻⁸ /h | 矿山极少单独要求 |
矿山急停回路通常按SIL2或SIL3设计。SIL等级不是单个器件的属性,而是整条安全功能回路(传感器+逻辑+执行器)的属性。工程上常用“子系统分解法”:若急停按钮PFDavg为5×10⁻⁴、安全PLC为2×10⁻⁴、接触器为3×10⁻⁴,则回路总PFDavg约为1×10⁻³,落在SIL2区间。这也解释了为什么双通道急停必须同时关注按钮触点、PLC模块和最终执行元件三段的失效数据。
三、急停输入/输出模块的电气与诊断特性
安全型急停输入模块通常为双通道输入,两路信号在模块内部独立采样、独立滤波,并进行“等价性比较”。以常见的24V DC安全输入为例,其关键特性包括:
- 双通道接线:急停按钮的两组常闭触点分别接入通道A、通道B,模块分别提供测试脉冲,可检测触点粘连、断线及对地/对电源短路。
- 不一致时间窗:两通道状态不一致超过设定时间(如500ms)即判为故障,触发安全停机;该时间需大于触点抖动时间,又不能过长而削弱诊断能力。
- 测试脉冲:模块周期性输出短脉冲,若某通道因短路始终为高电平,脉冲无法被拉低,模块即报告“通道卡死”。
安全输出模块同样采用双通道开关元件(如两个串联的MOSFET或继电器),并具备输出回读功能:模块在输出使能后读取实际端子电压,若与期望不符则判定输出故障并锁存。急停回路的最终执行元件(如安全接触器)应选用带强制导向触点的型号,以便用辅助触点反馈主触点状态,形成“输出—反馈—再判断”的闭环诊断。
四、安全程序的结构组织
安全程序与标准程序通常在同一工程中分区存放,但执行机制不同。以典型安全PLC为例,安全程序由“安全主程序+安全功能块”构成,其结构要点如下:
- 安全输入映像处理:先对双通道输入做等价性判断与去抖,生成一个“安全可信”的布尔量,而不是直接把原始点用于逻辑。
- 安全逻辑运算:急停逻辑一般采用“与”关系串联多个急停点与安全门开关,任一条件不满足即输出0;复位采用上升沿触发并需满足“所有急停已释放”的前置条件,防止自动重启。
- 安全输出与反馈校验:输出使能后读取接触器辅助触点,若在设定时间内未收到反馈,则判定执行元件故障并锁存。
- 安全程序段与标准程序隔离:安全变量通过受控接口与标准程序交换,标准程序不得直接写安全输出。
一个简化的安全逻辑示例如下(示意代码,非特定品牌语法):
// 安全功能块:双通道急停处理
IF (EStop_A = TRUE) AND (EStop_B = TRUE) THEN
EStop_OK := TRUE; // 两通道均闭合
ELSE
EStop_OK := FALSE;
END_IF;
// 不一致监视
IF EStop_A <> EStop_B THEN
InconsistTimer := InconsistTimer + 1;
IF InconsistTimer > 500 THEN // 500ms
EStop_Fault := TRUE;
END_IF;
ELSE
InconsistTimer := 0;
END_IF;
// 安全输出与反馈
SafeOut := EStop_OK AND NOT EStop_Fault AND Reset_OK;
IF SafeOut AND NOT Feedback_OK THEN
OutFault := TRUE; // 输出回读失败,锁存
END_IF;
这段逻辑体现了安全程序的三个特征:输入先判可信、过程带时间监视、输出带反馈确认。实际编程时,安全功能块需在安全任务中按固定周期调用,且其执行时间应留有足够裕量,避免看门狗超时。
五、IEC 61508与IEC 62061要点
IEC 61508是功能安全的通用基础标准,提出“安全生命周期”框架,涵盖危险辨识、安全要求分配、SIL确定、设计与实现、验证确认、运行维护与修改管理。其核心思想是:安全功能必须经过从需求到退役的全过程管理,任何阶段缺失都会削弱SIL的可信度。IEC 62061则是面向机械安全的功能安全标准,在IEC 61508框架下针对机械领域细化了SIL的确定方法,采用“严重度—暴露频率—避免可能性”的参数组合来分配SIL,并给出子系统架构(如1oo1、1oo2、2oo3)的PFH估算方法。
对矿山急停回路而言,两个标准的落地要点可归纳为:其一,先做风险评估确定所需SIL,再选型,而不是先买高等级PLC再补论证;其二,保留完整的验证记录,包括接线图、模块安全手册中的PFDavg/PFH数据、程序版本与测试用例;其三,运行阶段定期做诊断测试(如每月手动触发一次急停并观察诊断信息),以维持假设的诊断覆盖率。只有把标准要求转化为可执行的选型、接线、编程与测试动作,SIL才不是纸面等级,而是急停回路真实具备的安全能力。