FSoE - Safety over EtherCAT
什么是 FSoE?
FSoE (Safety over EtherCAT) 是 EtherCAT 的功能安全通信协议,提供符合 IEC 61508 SIL3 / PLe 标准的安全数据传输。
FSoE 允许在同一条 EtherCAT 网络上同时传输标准控制数据和安全相关数据,无需单独的安全总线。
FSoE 需要特殊的 EtherCAT 硬件吗?
不需要。FSoE 使用标准 EtherCAT 物理层。安全性由 FSoE 协议层保证。
核心概念
黑色通道原理
FSoE 采用黑色通道模型(Black Channel):
- 安全层 — FSoE 协议,确保数据安全性
- 黑色通道 — 标准 EtherCAT,仅负责传输,不保证安全
- 安全层 — FSoE 协议,验证数据完整性
关键思想:
- 底层传输通道(EtherCAT)不需要是安全的
- 安全性完全由安全层(FSoE)保证
- 允许使用标准非安全硬件传输安全数据
FSoE 安全机制
数据完整性
CRC 校验:
- 16位或32位 CRC
- 检测数据传输错误
- 检测数据篡改
序列号:
- 每个安全帧携带序列号
- 检测丢失、重复、插入
- 防止重放攻击
时间监控
超时检测:
- 监控帧接收间隔
- 超时自动进入安全状态
- 可配置超时阈值
时间戳:
- 部分实现包含时间戳
- 检测延迟过大的帧
- 确保实时性要求
地址监控
连接标识符:
- 发送方和接收方 ID
- 确保数据来自正确的源
- 防止地址混淆
连接验证:
- 启动时建立安全连接
- 定期验证连接有效性
- 检测连接错误
数据正确性
数据一致性:
- 多字节数据原子传输
- 防止部分更新
- 确保数据一致性
语义检查:
- 检查数据范围合理性
- 检测不合法的状态转换
- 应用层语义验证
FSoE 帧结构
FSoE 安全帧包含以下关键字段:
| 字段 | 大小 | 说明 |
|---|---|---|
| Command | 1字节 | 命令类型(数据、连接、参数) |
| Connection ID | 2字节 | 安全连接标识符 |
| Sequence Number | 2字节 | 帧序列号 |
| Safety Data | 可变 | 实际安全数据(如安全输入/输出) |
| CRC | 2或4字节 | 循环冗余校验 |
FSoE 通信模式
安全数字量:
- 急停按钮状态
- 安全门开关
- 安全光栅
- 安全输出(安全继电器)
安全模拟量:
- 安全速度监控
- 安全位置反馈
- 安全扭矩限制 STO(Safe Torque Off):
- 安全扭矩关闭
- 切断电机功率
- SIL 3 / PLe
SS1(Safe Stop 1):
- 安全停止1
- 受控制动停止
- 到位后切断扭矩
SS2(Safe Stop 2):
- 安全停止2
- 受控停止
- 保持扭矩输出
SLS(Safely Limited Speed):
- 安全限速
- 监控速度不超过限值
- 超速自动停止
SLP(Safely Limited Position):
- 安全位置限制
- 软限位保护
- 防止碰撞
应用场景
机器安全
典型应用:
- 急停系统 — 分布式急停按钮(SIL 3 / PLe)
- 安全门 — 门锁和位置监控(SIL 2-3)
- 安全光栅 — 光幕区域保护(SIL 2-3)
- 双手控制 — 双手按钮监控(SIL 3)
- 防护锁定 — 锁定装置监控(SIL 3)
机器人安全
协作机器人:
- 安全限速(工作区域划分)
- 安全停止(碰撞检测)
- 安全监控位置和力矩
传统机器人:
- 安全围栏监控
- 安全区域进入检测
- 安全门互锁
物料搬运
自动化物流:
- AGV 安全激光扫描仪
- 安全 PLC 控制
- 紧急停止网络
- 区域隔离和限速
过程工业
安全仪表系统:
- 紧急关断阀
- 压力/温度安全监控
- 火灾和气体探测
- 安全联锁系统
性能影响
FSoE 开销:
- 数据开销:每个安全帧增加 8-12 字节
- 处理时间:CRC 计算和验证需要时间
- 周期时间:通常需要 2-4 倍安全周期
典型周期时间:
- 标准 EtherCAT:1 ms
- FSoE 通信:2-4 ms
- 仍远优于传统安全总线(10-50 ms)
FSoE 认证和开发
认证机构
- TÜV SÜD — IEC 61508, ISO 13849(欧洲/全球)
- TÜV Rheinland — 功能安全认证(欧洲/全球)
- UL — 安全标准(北美)