系统架构设计:单通道、双通道与冗余架构
各位工程师朋友,今天我们聊聊系统架构设计。说实话,这是功能安全设计里最核心的一步。架构选对了,后面就顺了;选错了,返工成本高得吓人。我个人习惯,在项目启动阶段,花至少30%的时间在架构设计上。
一、系统架构类型
先说说三种基本架构。你想想看,安全功能就像一条链子,每个环节都可能出问题。架构设计就是决定这条链子怎么搭。
1. 单通道架构
单通道,说白了就是一条路走到黑。信号从传感器进来,经过逻辑处理,再到执行器,就一条路径。我在项目中遇到过,有些简单设备,比如温度保护开关,用单通道就够了。
但要注意,单通道的故障覆盖率有限。一旦某个元件坏了,安全功能就丢了。所以IEC 62061里对单通道的架构约束很严,诊断覆盖率必须高,否则硬件故障裕度(HFT)为0,风险降不下来。
2. 双通道架构
双通道,就是两条路并行。一条坏了,另一条还能顶上。嗯,这里要注意,双通道不是简单的复制粘贴。两条通道之间要有独立的供电、独立的信号路径,甚至独立的软件。
我曾经吃过亏,以为两个相同的传感器并联就是双通道。结果共因失效(CCF)一分析,两个传感器装在同一块电路板上,一个短路两个全挂。所以双通道的关键在于独立性。
3. 冗余架构
冗余架构比双通道更灵活。常见的有2oo2(二取二)、2oo3(三取二)。2oo2要求两个通道都输出正确信号才动作,适合高可用性场景。2oo3则是三个通道里至少两个一致,容错能力更强。
我记得有个项目做安全联锁系统,客户要求SIL 3。我们用了2oo3架构,诊断覆盖率做到99%以上。虽然成本高了点,但安全性和可用性都满足了。
二、诊断覆盖率与架构约束
诊断覆盖率(DC)是个硬指标。它衡量的是系统能检测出多少故障。DC越高,安全功能越可靠。
| 诊断覆盖率范围 | 等级 | 典型实现方式 |
|---|---|---|
| DC < 60% | 低 | 无诊断或简单看门狗 |
| 60% ≤ DC < 90% | 中 | 周期性自检、回读 |
| 90% ≤ DC < 99% | 高 | 双通道比较、冗余校验 |
| DC ≥ 99% | 非常高 | 三模冗余、在线监控 |
架构约束呢,就是IEC 62061里那张表——根据SIL等级和DC,决定硬件故障裕度。举个例子,SIL 2要求HFT至少为1,也就是说单通道架构必须DC≥90%,否则就得用双通道。
三、子系统划分原则
子系统划分,说白了就是把一个大系统拆成几个小块。为什么要拆?因为每个子系统可以独立做安全分析,独立分配SIL等级。
我一般遵循三个原则:
- 功能独立性:每个子系统完成一个明确的安全功能。比如急停按钮是一个子系统,安全PLC是另一个。
- 接口清晰:子系统之间的接口要定义清楚。信号类型、电压范围、时序要求,都得写明白。我曾经遇到一个项目,两个子系统之间用模拟信号通信,结果噪声干扰导致误动作,查了三天才找到原因。
- 故障隔离:一个子系统的故障不能影响其他子系统。比如电源要分开,地线要隔离。
四、知识体系框架图
下面这张图,是我自己总结的架构设计核心逻辑。你一看就明白。
这张图把架构类型、诊断覆盖率、架构约束和子系统划分串起来了。你设计时,从左上角开始,先选架构类型,再算DC,然后查架构约束表,最后拆分子系统。每一步都环环相扣。