1. 课程导入与EAP通信全景

在半导体与泛半导体制造中,设备不是孤立运转的机器,而是产线数据链路的起点。EAP(Equipment Automation Program,设备自动化程序)位于设备与上层制造执行系统之间,负责把设备的运行状态、工艺参数、批次信息、报警事件翻译成可被MES、SPC、RMS、AMHS等系统消费的数据,同时把上层下发的配方、派工、控制指令可靠地送进设备。没有EAP,设备就是信息孤岛;EAP不稳定,整条产线的自动化就会在设备侧断裂。

本课程关注的不是单个EAP客户端,而是支撑成百上千台设备并发接入的设备通信中间件。它的职责边界可以概括为四件事:协议适配、连接与状态管理、消息路由与转换、可靠性与可观测性。协议适配解决“设备说什么语言”;连接与状态管理解决“设备现在是否在线、是否可通信”;消息路由与转换解决“这条数据该给谁、以什么格式给”;可靠性与可观测性解决“断线后能否恢复、问题能否定位”。

中间件的核心价值:把设备侧复杂、异构、易变的通信细节收敛为稳定的内部接口,让上层系统不必直接面对SECS/GEM、EDA、OPC UA等协议的差异。

协议生态:SECS/GEM、EDA与OPC UA

半导体设备通信最经典的是SECS/GEM体系。SECS-II定义消息语义,HSMS定义基于TCP/IP的会话与连接管理,GEM定义设备应具备的标准行为模型,包括状态模型、报警、事件、变量、配方、数据采集等。EAP与设备之间通常建立HSMS连接,通过S1F13/S1F14建立通信,通过S1F1/S1F2做在线确认,通过S6F11事件报告上报状态变化,通过S2F33/S2F35配置报告与链接,通过S1F3/S1F4按需读取状态变量。这些消息不是“随便发”,而是受GEM状态模型和报告机制约束。

EDA(Equipment Data Acquisition)面向更高频、更结构化的数据采集,典型基于SEMI E132、E134、E164等标准,强调客户端订阅、数据收集计划、元数据描述和高效传输。它适合先进制程中对设备参数、传感器数据、腔体状态的高密度采集。OPC UA则更多出现在泛半导体、光伏、锂电、面板等场景,提供信息模型、地址空间、订阅发布和安全通道,适合设备类型多样、数据模型需要统一表达的产线。三者并非互斥:一台设备可能同时提供SECS/GEM接口和OPC UA接口,中间件需要按设备能力选择接入方式。

EAP通信全景:从设备到上层系统的数据链路 设备层 刻蚀机 / 薄膜设备 SECS/GEM · HSMS 量测 / 检测设备 EDA · E132/E164 光伏 / 锂电设备 OPC UA · 信息模型 传感器 / PLC Modbus / 私有协议 设备通信中间件 协议适配层 HSMS / EDA / OPC UA / 私有 连接与状态管理 在线 / 离线 / 重连 / 心跳 消息路由与转换 SECS-II ↔ JSON / 内部模型 可靠性与可观测性 重试 / 幂等 / 日志 / 指标 统一内部接口 设备事件 / 命令 / 数据点 上层系统 MES / MOM 派工 / 批次 / 状态 SPC / FDC 统计过程控制 / 故障检测 RMS / 配方管理 配方下发 / 校验 AMHS / 调度 搬运 / 设备可用性 数据平台 / 数仓 历史数据 / 追溯 上行数据 事件/状态 命令/配方 控制指令 目标:单节点支撑 ≥ 2000 台设备并发连接,消息端到端延迟 P99 ≤ 200 ms,断线重连 ≤ 5 s,消息不丢失、可追溯

中间件的职责边界与高并发目标

很多团队一开始会把EAP写成“每台设备一个进程、每个进程一个Socket”的脚本集合。设备少时可行,设备上到几百台后,问题会集中爆发:连接数暴涨、线程切换开销大、断线重连风暴、消息积压、状态不一致、故障无法定位。中间件要解决的不是“能不能连”,而是“在大量设备同时在线、同时上报、同时下发时,仍然稳定、可观测、可恢复”。

本课程最终要交付的高并发接入中间件,目标可以量化为几个可验证指标:单节点支撑不少于2000台设备并发连接;消息端到端延迟P99不超过200毫秒;设备断线后5秒内完成重连并恢复订阅;关键事件与命令消息不丢失、可追溯;单设备故障不影响其他设备;支持水平扩展,通过增加节点线性提升接入能力。这些指标不是口号,而是后续架构设计、线程模型、序列化、背压、限流、熔断、监控等所有技术选择的判断依据。

能力维度 典型问题 中间件应对方式
协议适配 设备协议多样,SECS-II、EDA、OPC UA混用 插件化协议栈,统一内部消息模型
连接管理 断线、半开连接、重连风暴 连接池、心跳检测、指数退避重连
消息路由 事件、命令、数据点混杂,消费者不同 主题路由、优先级队列、背压控制
可靠性 消息丢失、重复、顺序错乱 持久化、幂等键、确认与重试机制
可观测性 故障定位慢,缺少设备级指标 结构化日志、指标、链路追踪