简介:本资源为ISO 3691-4:2020国际标准中核心安全条款——表1“安全回路PL要求”的完整中文翻译,面向工业自动化工程师、叉车AGV系统安全设计人员及功能安全(IEC 62061/ISO 13849)实践者,解决智能物流设备安全控制系统PL等级选型与验证缺乏权威中文依据的痛点。文档严格对照原文结构,逐项解析4.2刹车系统、4.3速度控制、4.8.2人员检测(含ESPE动态区域适配)、4.9自动/手动模式切换等15类安全功能,明确每项功能对应的主要风险、最低PL要求(如d级急停、c级速度监测)及技术实现约束(如0.3m/s抑制阈值、0.7m/s转向限速)。资源为单个27KB Word文档(.docx),内容排版清晰,表格与条款编号完整保留,便于嵌入安全评估报告或PL验证文档。已有348人学习下载,可直接用于AGV安全回路设计、PL计算输入、TÜV认证材料准备及高校安全控制系统课程教学参考。
1. 这不是一份普通翻译:它是叉车安全回路PL等级落地的“设计说明书”
你手头这份《ISO 3691-4-2020 表1 安全回路PL要求 翻译》,表面看是标准条款的中文转述,实则是工业移动机器人(AGV/AMR)、自动叉车、智能物流搬运设备做功能安全认证时,必须逐条对齐、逐项验证的硬性输入。它不讲原理,不教PL计算,而是用“功能—风险—PL等级—是否进安全回路”四维结构,把抽象的安全完整性要求,钉死在刹车、速度、转向、人员检测等12个具体子系统上。比如第19条明确:“抑制人员检测装置在自动模式下,不允许速度大于0.3m/s时抑制”,这不是建议,是PL=d级功能安全回路的强制触发条件——一旦超速还允许屏蔽检测,整套系统就无法通过EN ISO 13849-1的类别3/4验证。它服务的对象非常明确:正在做叉车安全控制系统架构设计的硬件工程师、编写安全PLC逻辑的FAE、准备CE认证技术文档的安全合规工程师。如果你还在靠经验估算“这个急停应该够用”,或者把人员检测当成可选配置,这份表1就是你第一张必须签收的“安全责任确认单”。
2. PL等级不是拍脑袋定的:从风险描述反推安全功能设计逻辑
PL(Performance Level)不是孤立参数,而是由“发生概率+暴露时间+伤害严重度+规避可能性”四要素共同决定的风险评估结果。表1的价值,在于它跳过了通用风险评估流程,直接给出针对叉车典型工况的预判式PL分配。要真正用好它,必须理解其背后的设计逻辑链:风险场景 → 安全功能定义 → 失效模式约束 → PL等级 → 回路集成要求。下面以刹车系统和速度控制两大高频模块为例,拆解其隐含的技术决策依据。
2.1 刹车系统:为什么PL=d是底线,且必须进安全回路?
表1第4.2条将“刹车系统控制冲撞人员”列为PL=d,这并非保守选择,而是由失效后果倒逼的必然。叉车在仓储环境中的典型运行速度为1.5~2.0 m/s,若制动系统在高速下失效,按ISO 13849-1 Annex K的PL计算公式,其每小时危险失效概率(PFHd)需≤10⁻⁷。这意味着:
- 不能依赖单一电磁阀或继电器;
- 必须采用双通道冗余设计(如双回路气刹+独立液压备份);
- 制动指令必须由安全PLC(而非普通PLC)发出,并带周期性诊断(如回读制动器状态反馈);
- “电池断开导致制动性能降低”虽标注“不太可能”,但标准仍要求将其纳入安全回路——因为电池断开属于共因失效(CCF),必须通过物理隔离或不同技术路径(如电控+机械弹簧储能)来规避。
提示:第24.2d条中“停车系统控制碰撞风险”的PL=d,与第15条“急停功能”的PL=d本质不同:前者是持续运行中的防护功能(需要监控制动器实时状态),后者是事件触发的终止功能(只需一次有效动作)。二者在安全回路中需独立建模,不可共用同一输出模块。
2.2 速度控制:PL=c与PL=d的分水岭在哪里?
表1对速度相关功能给出了PL=c(如4.3过速检测)和PL=d(如4.8.2.1行进方向人员检测)两级要求,其分水岭在于风险暴露时间是否可控。
- PL=c(如第34.3条):过速检测系统本身不直接制动,仅触发报警或降速指令。其失效不会立即导致碰撞,操作员有数秒干预窗口,故允许单通道+自检设计(如编码器信号经安全栅隔离后送入安全PLC,PLC内部做速率比较并输出警告)。
- PL=d(如第16条):人员检测系统一旦失效,车辆将在无预警状态下直撞前方人员,暴露时间为毫秒级。因此必须满足:
- 双通道ESPE(如双激光扫描仪+交叉验证算法);
- 检测区域动态缩放(速度0.3m/s时覆盖2m,1.0m/s时需覆盖5m,否则PL无法达标);
- 所有通信链路(如IO-Link安全协议)需支持CRC校验与超时重传。
2.3 人员检测系统的“速度-区域-PL”三角约束关系
表1第c5、d6、c7三条反复强调“确保人员检测区域与实际卡车速度一致”,这不是一句空话,而是PL验证的核心输入参数。以直线运动为例,其检测区域最小长度L_min(单位:m)与最大允许速度v_max(单位:m/s)满足:
$$ L_{min} = v_{max} \times t_{response} + s_{safety} $$
其中:
- $t_{response}$ 为系统响应时间(含传感器扫描周期+控制器处理+执行器动作,典型值0.2~0.5s);
- $s_{safety}$ 为安全裕量(通常取0.5~1.0m)。
当v_max=0.3m/s时,L_min≈0.6~1.0m(PL=d可接受);
当v_max=0.7m/s时,L_min≈1.4~2.0m(此时若仍用原ESPE,PL将跌至c级,必须升级硬件或限速)。
表1第d19条“速度必须小于0.3m/s以下,该回路进安全回路”,正是对这一公式的工程化封装——它强制你在PL=d级人员检测未就绪前,用速度限制作为“兜底安全措施”。
3. 安全回路不是“加个安全继电器”:表1中“进安全回路”的实操判定规则
“是否进安全回路”是表1最易被误读的字段。很多工程师看到“b”(PL=b)就认为“不用进”,看到“d”就一股脑全塞进安全PLC,结果导致成本飙升或验证失败。实际上,“进安全回路”取决于该功能失效是否会导致不可接受的风险,且无法通过其他层级防护(如机械防护、培训)消除。以下是基于表1内容提炼的四条硬性判定规则,每条都对应真实项目翻车案例。
3.1 规则一:所有PL≥c级的“主动防护功能”必须进安全回路
所谓“主动防护”,指在危险发生前主动干预的功能(如刹车、降速、人员检测触发停止)。表1中PL=c及以上的功能(如第34.3过速检测、第16行进方向人员检测、第15急停)全部标记为“进安全回路”。
错误做法:某AGV项目将PL=c的过速检测输出到普通PLC,再由普通PLC发指令给安全PLC执行制动——这违反了EN ISO 13849-1的“单一故障准则”,普通PLC的CPU故障会导致整个防护链失效。
正确做法:过速检测的比较逻辑、输出驱动、状态反馈必须全部在安全PLC内闭环完成,普通PLC仅接收“已降速”状态信号用于HMI显示。
# 安全PLC中过速检测的典型ST代码(符合IEC 61131-3) PROGRAM SpeedMonitor_Safe VAR speed_actual: REAL; // 来自安全编码器的实时速度 speed_limit: REAL := 1.5; // 当前工况允许的最大速度(m/s) speed_ok: BOOL; // 输出:速度正常标志 brake_cmd: BOOL; // 输出:制动指令(PL=d级) END_VAR // 安全比较:双通道输入校验(假设speed_actual为双通道冗余信号) IF ABS(speed_actual - speed_actual_backup) > 0.1 THEN // 通道偏差超限,触发安全状态 speed_ok := FALSE; brake_cmd := TRUE; ELSIF speed_actual > speed_limit THEN // 超速,触发制动 speed_ok := FALSE; brake_cmd := TRUE; ELSE speed_ok := TRUE; brake_cmd := FALSE; END_IF逻辑说明:此代码必须运行在安全PLC的专用任务中,且speed_actual必须来自经安全认证的双通道编码器(如SICK DFS60B),brake_cmd输出需驱动安全继电器(如Pilz PNOZ)。参数speed_limit不可硬编码,应通过安全参数通道(如PROFIsafe)由上位机动态配置,且每次修改需触发安全PLC重启自检。
3.2 规则二:“不进安全回路”的功能,必须证明其失效不增加风险
表1中标记为“b”或“不需要进安全回路”的功能(如第4.4自动充电的断开触点、第4.5负载位置检测的部分逻辑),并非不重要,而是其失效后果被其他措施覆盖。例如:
- 第9条“充电连接失活”标记为“b”,因充电时车辆本就不允许启动,物理联锁(如充电插头拔出才解锁驱动)已构成更高等级防护;
- 第10、11条“负载位置检测”标记为“b”,因负载跌落风险主要通过机械限位(如货叉挡块)和操作规程控制,检测功能仅为辅助报警。
血泪经验:某叉车项目曾将“负载位置检测”误标为PL=d并强求进安全回路,结果因传感器安装精度不足(±5mm误差),导致频繁误报停机。后经重新评估,改用机械开关+视觉复核方案,既满足PL=b要求,又提升系统可用性。
3.3 规则三:模式切换功能必须与对应模式下的PL要求严格绑定
表1第4.9条“自动/手动/维修模式”涉及多条PL要求(d/c/b),其核心是模式切换本身必须是安全功能。例如:
- 第23条“检测人员在预期位置”为PL=d,意味着从维修模式切回自动模式前,必须由安全PLC确认区域内无人(如通过ESPE扫描+门禁信号双重验证);
- 第24条“点动功能”为PL=c,其使能按钮必须是带防护罩的红色蘑菇头按钮,且按下时需持续施力(防止误触),松开即停止。
翻车现场:某项目用普通PLC读取模式旋钮开关状态,再通过网络指令切换安全PLC工作模式——这等于把模式选择权交给了非安全系统。一旦网络中断,安全PLC无法获知当前模式,可能继续执行自动运行逻辑,酿成事故。
3.4 规则四:所有“进安全回路”的信号,必须完成端到端的类别与诊断覆盖率验证
这是最容易被忽略的底层要求。表1只告诉你“要进”,但没说“怎么进才算合格”。根据EN ISO 13849-1,一个PL=d回路需满足:
- 结构类别 ≥ 3(即双通道+交叉监控);
- 平均危险失效概率(MTTFd)≥ 100年;
- 共因失效(CCF)得分 ≤ 65分;
- 诊断覆盖率(DC)≥ 99%(对关键元件如安全继电器、安全光幕)。
避坑指南:某项目采购了PL=d认证的安全继电器,但将两个通道的输入信号(如左/右ESPE)并联接入同一端子——这直接将类别降为1,DC归零。正确做法是:左ESPE接通道1输入,右ESPE接通道2输入,继电器内部自动执行交叉监控。
4. 避坑:表1落地中最常踩的5个“PL等级玄学”陷阱
PL等级不是魔法数字,它的每一级都对应着可测量、可验证的硬件架构与软件行为。但在实际项目中,工程师常因概念混淆或经验主义掉进“玄学陷阱”,导致认证失败或现场事故。以下是基于数十个叉车安全项目总结的5条血泪教训,每一条都附带真实现象、根本原因与可执行解决方案。
4.1 陷阱一:把“PL=d”等同于“用安全PLC”,忽视传感器与执行器的PL匹配
- 现象:项目选用PL=d级安全PLC,但配套的激光扫描仪(ESPE)仅满足PL=c,最终整机PL被拉低至c级,CE认证未通过。
- 原因:PL是整个安全功能链(传感器→逻辑单元→执行器)的综合等级,由最薄弱环节决定(木桶效应)。安全PLC只是逻辑单元,若前端传感器诊断覆盖率不足(如未实现发射/接收信号双通道比对),或后端制动器响应时间超限(如气刹延迟>0.5s),PL必然降级。
- 解决:严格按EN ISO 13849-2 Annex F进行组件PL验证。例如,对ESPE需确认其是否支持“发射功率监测+接收信号强度分析+镜面污染检测”三重诊断,缺一不可。
4.2 陷阱二:认为“速度限制到0.3m/s”就能绕过PL=d人员检测
- 现象:为节省成本,项目将所有工况限速至0.3m/s,并宣称“无需PL=d级ESPE”。但现场测试发现,车辆在转弯时因离心力导致侧滑,实际轨迹超出0.3m/s线性模型预测范围,仍发生擦碰。
- 原因:表1第d19条“速度必须小于0.3m/s以下”隐含前提——该速度是车辆质心在任意方向上的瞬时合成速度。单纯限制前进电机转速,无法约束转弯时的横向速度分量。
- 解决:采用六轴IMU(惯性测量单元)实时计算合成速度向量,其输出必须接入安全PLC参与速度判断。同时,ESPE的检测区域需按合成速度动态调整(如转弯时启用侧向扫描场)。
4.3 陷阱三:将“手动模式”简单理解为“关闭所有安全功能”
- 现象:维修人员在手动模式下操作叉车,因未触发人员检测而撞倒货架。事后追溯发现,手动模式下PL=d级的间隙区域检测(第17条)被完全禁用。
- 原因:表1第26条“手动模式”未标注PL等级,但第17条“间隙区域检测”明确要求“确保接触式人员检测能够覆盖车辆和固定结构之间的区域”,此功能在手动模式下风险更高(操作员注意力分散),反而需强化。
- 解决:手动模式不是安全功能的“关机键”,而是安全策略的切换键。应启用更高灵敏度的接触式安全边条(如电容式),其信号直接接入安全PLC的独立通道,与自动模式的ESPE并行工作。
4.4 陷阱四:忽略“共因失效(CCF)”对PL的毁灭性影响
- 现象:双通道刹车系统在高温环境下批量失效,诊断覆盖率(DC)测试显示99%,但MTTFd实测仅10年,远低于PL=d要求的100年。
- 原因:两路制动电磁阀使用同一型号、同一批次、安装在同一散热片上,高温导致同时老化——这属于典型的CCF,EN ISO 13849-1要求对此类风险必须采取“多样性设计”(如一路用电磁阀,另一路用液压伺服阀)或“物理隔离”(如分置在车体两端)。
- 解决:在安全计划(Safety Plan)中强制加入CCF分析表,对每个共用元件(电源、散热、安装基座)标注防护措施。例如,双通道电源必须来自不同变压器次级绕组,且中间加装隔离二极管。
4.5 陷阱五:把“安全回路”当成黑匣子,不验证信号传输链路的完整性
- 现象:安全PLC输出制动指令,但制动器未动作。万用表测量输出端子电压正常,最终发现安全继电器到制动器线缆在弯折处存在隐性断股,仅在振动时断开。
- 原因:表1要求“进安全回路”,但未规定线缆必须满足什么标准。许多项目沿用普通线缆,未考虑其在机械振动下的寿命(叉车线缆弯曲半径<5D时,普通PVC线缆寿命<1万次,而安全线缆要求>100万次)。
- 解决:所有安全回路线缆必须选用UL AWM Style 20276(柔性拖链电缆),且在布线时强制执行:弯曲半径≥10倍电缆外径,固定点间距≤300mm,并在安全PLC程序中加入“输出回读+开路检测”逻辑(如每100ms检测制动器线圈电阻)。
5. 验证不是走流程:用表1反向构建你的安全验证检查清单
拿到这份翻译,别急着往设计文档里贴。真正的价值在于把它变成一张可执行、可追溯、可审计的安全验证检查清单(Safety Verification Checklist)。我一般会用表1的原始结构为蓝本,但将每一条“要求”转化为“验证动作+验收标准+证据形式”,让测试工程师拿着这张表就能逐项打钩。下面以第4.8.2.1条“行进方向人员检测”为例,展示如何构建高可信度的验证项。
5.1 将PL要求转化为可测量的测试用例
表1原文:“16 4.8.2.1 行进方向的人员检测 人员碰撞路径上人员识别后停止 d”。这句信息量严重不足,需拆解为5个维度的验证点:
| 验证维度 | 验证动作 | 验收标准 | 证据形式 |
|---|---|---|---|
| 功能正确性 | 在车辆前进方向0.5m、1.0m、1.5m处各放置标准测试靶(直径200mm),以0.3m/s、0.7m/s、1.2m/s速度驶向靶标 | 每种距离+速度组合下,车辆必须在距靶标≥0.3m处开始减速,≤0.1m处完全停止 | 高速摄像机视频(带时间戳)+ 制动距离测量报告 |
| PL等级符合性 | 使用故障注入工具(如Keysight 33500B)模拟ESPE单通道失效(如切断左激光发射信号) | 系统必须在100ms内检测到通道失效,并触发PL=d级制动(非报警) | 故障注入日志 + 制动响应时间波形图 |
| 动态区域适配 | 设置车辆速度从0.3m/s阶跃升至1.0m/s,同步记录ESPE检测区域长度变化 | 检测区域长度必须在200ms内从1.2m扩展至4.0m(按L_min=v×t_response+s_safety计算) | ESPE配置参数快照 + 检测区域激光扫描热力图 |
| 抗干扰性 | 在ESPE前方0.5m处开启强光手电(10000lux)、播放1kHz蜂鸣声、释放水雾(湿度90%) | 人员检测功能不得误触发或漏触发,制动指令输出稳定 | 干扰测试视频 + 连续100次检测成功率报表(≥99.9%) |
| 模式切换鲁棒性 | 在自动模式下触发人员检测制动后,立即切换至手动模式,再切回自动模式 | 切换过程中ESPE必须保持供电,且重新进入自动模式后首帧扫描即生效(无>500ms盲区) | 模式切换时序图(含ESPE供电电压、PLC模式寄存器、制动输出信号) |
注意:此表中“验收标准”全部引用EN ISO 13849-1的具体条款(如“100ms内检测”对应Annex K的PL=d响应时间上限),而非主观描述。证据形式必须是客观数据,拒绝“目视确认正常”等模糊表述。
5.2 关键参数必须固化为安全配置文件(Safe Configuration File)
表1中大量参数(如速度阈值、检测区域尺寸、响应时间)不能写死在PLC程序里,必须抽离为独立的安全配置文件,并通过安全通道(如PROFIsafe的Parameter Channel)下载。这样做的好处:
- 配置变更可追溯(每次下载生成唯一SHA256哈希值);
- 防止误操作(普通HMI无法修改,需专用安全配置工具+双因子认证);
- 便于型式检验(认证机构只需验证配置文件,无需反编译PLC程序)。
我一般用XML格式定义配置文件,关键字段强制加密:
<SafeConfig version="1.2" hash="a1b2c3d4e5f67890"> <SpeedLimits> <AutoMode max="1.5" unit="m/s" pl_level="d"/> <ManualMode max="0.3" unit="m/s" pl_level="c"/> </SpeedLimits> <DetectionZones> <Forward direction="x+" min_length="1.2" unit="m" pl_level="d"/> <Lateral direction="y+" min_length="0.8" unit="m" pl_level="c"/> </DetectionZones> <ResponseTime max="0.2" unit="s" pl_level="d"/> </SafeConfig>参数说明:pl_level字段直接关联表1中的PL要求,unit强制声明单位避免歧义(如“0,3米/秒”中的逗号在欧洲标准中是小数点,必须统一为英文句点)。此文件经签名后烧录至安全PLC的专用存储区,PLC启动时自动校验哈希值,不匹配则拒绝运行。
5.3 建立“失效树-表1条款-验证项”三级追溯矩阵
最硬核的验证,是让每一个测试失败都能精准定位到表1的哪一条、哪一个字。我用Excel构建三级追溯矩阵:
- Level 1(失效树):从顶层危险(如“人员碰撞”)向下分解,列出所有可能的失效模式(如“ESPE单通道失效”“制动器响应延迟”“速度传感器漂移”);
- Level 2(表1条款):将每个失效模式映射到表1的具体条款(如“ESPE单通道失效”→第16、21、22条);
- Level 3(验证项):为每个条款生成至少3个验证动作(如第16条对应“功能正确性”“PL符合性”“动态区域适配”)。
当某次测试中“车辆在0.7m/s时未及时制动”,追溯矩阵会立刻指向:
- 失效树:ESPE检测区域未随速度扩展 →
- 表1条款:第c5、d6、c7条(速度-区域-PL关系)→
- 验证项:5.1表中“动态区域适配”测试用例。
这种结构让问题根因分析从“猜”变成“查”,也极大缩短了认证整改周期。从那以后我每次启动新项目,第一件事就是用表1原文初始化这张矩阵表,所有设计输入、测试用例、问题报告都必须关联矩阵ID。希望帮到你。
本文还有配套的精品资源,点击获取