3. 设备通信与数据采集

在 TEL(Tokyo Electron)涂胶显影、刻蚀、清洗等设备的数据监控体系中,通信协议决定了“数据从哪里来、以什么语义被理解、以多快速度进入上层平台”。如果协议选型与接入方式设计不当,即使上层看板再漂亮,也会出现数据缺失、时间戳错位、事件与状态对不上等问题。本节围绕 SECS/GEM 与 OPC UA 两条主线,说明它们在 TEL 设备数据采集中的分工,并给出实时数据接入的工程实现要点。

一、SECS/GEM:设备侧事件与状态的标准语义层

SECS/GEM(SEMI Equipment Communications Standard / Generic Equipment Model)是半导体设备与主机(Host)之间最通用的通信标准。它由两部分构成:SECS-II 定义消息结构与数据项(如 L,2 表示含两个元素的列表),HSMS 定义基于 TCP/IP 的传输会话;GEM 则规定设备应具备的状态模型、事件报告、报警管理、远程命令等行为。对 TEL 设备而言,SECS/GEM 是获取“设备在做什么、处于什么状态、发生了什么事件”的首选通道。

典型采集对象包括:控制状态(ControlState,如 EquipmentOffline、OnlineRemote)、处理状态(ProcessState,如 Idle、Executing)、载体与晶圆信息(CarrierID、LotID、WaferID)、工艺参数(RecipeID、温度、转速、流量)以及报警(AlarmID、AlarmText)。这些数据并非靠轮询读取,而是通过设备主动上报的 事件报告(Event Report) 与 变量数据采集(Trace Data Collection) 获得。

工程实现上,Host 侧通常先建立 HSMS 连接,再依次完成:S1F13 建立通信、S1F17 请求 Online、S2F33 定义报告(Define Report)、S2F35 链接事件与报告(Link Event Report)、S2F37 使能事件。以“晶圆进入腔体”为例,可定义 CEID=1001 的事件,链接 RPTID=2001,报告内含 <VID 3001>(WaferID)与 <VID 3002>(ChamberID)。使能后,设备每次触发该事件即主动上报 S6F11,Host 解析后写入时序库。这种“事件驱动”模式比周期轮询更贴近真实工艺节拍,也避免了高频查询对设备控制器的干扰。

SECS/GEM 的采集质量取决于“报告定义是否覆盖关键事件”。建议按工艺步骤梳理 CEID 清单,确保上料、进腔、工艺开始、工艺结束、下料、报警等节点均有对应事件,而不是只采集最终结果。

二、OPC UA:面向参数与结构化数据的统一接口

OPC UA(Open Platform Communications Unified Architecture)提供地址空间、信息模型、订阅发布与安全通道机制。在 TEL 设备数据采集中,OPC UA 更适合承载高频模拟量、设备健康参数与跨系统结构化数据,例如腔体温度曲线、RF 功率、阀门开度、泵速、振动与能耗等。它通过 NodeID 定位变量,支持 MonitoredItem 订阅,可按死区(Deadband)和采样间隔控制上报频率。

与 SECS/GEM 相比,OPC UA 的优势在于:信息模型可自定义(可把“腔体—传感器—参数”建成层级结构)、支持历史访问(HA)与复杂数据类型、具备证书与加密能力。因此常见架构是:SECS/GEM 负责事件、状态、批次与报警;OPC UA 负责连续量测与设备健康数据;两者在时间戳上统一到同一时钟源,再进入数据平台做关联分析。

TEL 设备数据采集双通道架构 TEL 设备(涂胶/刻蚀/清洗) 设备控制器 / SECS 接口 状态·事件·报警·批次 OPC UA Server 温度·功率·流量·振动 工艺 Recipe / 参数 配方号·设定值·版本 统一时钟源(NTP/PTP) 采集接入层 HSMS 会话管理 S1F13/S1F17/S2F33/S2F35 OPC UA 订阅客户端 MonitoredItem·Deadband 消息解析与归一化 CEID/VID → 统一字段 时间戳对齐与缓冲 数据平台与应用 消息队列(Kafka/MQTT) 削峰·解耦·重放 时序数据库 状态·参数·事件关联 异常诊断 / SPC / FDC 报警·趋势·根因分析 看板与追溯查询 S6F11 Publish Read Sync JSON JSON 写入 查询

三、实时数据接入的工程实现

把上述两条通道真正接入平台,需要解决四个工程问题:连接可靠性、数据归一化、时间戳一致性与吞吐控制。

连接可靠性。HSMS 会话可能因设备重启、网络抖动而断开。采集服务应实现自动重连与状态机管理:断线后按指数退避重试,重连成功后重新执行 S1F13、S1F17、S2F33/S2F35/S2F37,确保报告定义与使能状态恢复。OPC UA 订阅同样需要断线重连与订阅重建,并记录 Session 超时时间。

数据归一化。SECS 消息是嵌套列表,OPC UA 是 NodeID 与值。建议在采集层定义统一事件模型,例如:{equipmentId, chamberId, eventTime, metric, value, unit, source}。SECS 的 CEID/VID 与 OPC UA 的 NodeID 都映射到该模型,后续平台无需关心协议差异。

时间戳一致性。设备事件时间与平台接收时间往往不同。应在设备侧与采集侧统一使用 NTP/PTP 对时,并在消息中同时保留 eventTime(设备产生时间)与 ingestTime(平台接收时间)。做工艺曲线关联时以 eventTime 为准,做链路延迟监控时用两者差值。

吞吐控制。高频模拟量若全量上报会压垮链路。OPC UA 侧可设置采样间隔(如 100 ms)与死区(如温度变化 0.5 ℃ 才上报);SECS 侧 Trace 采集可设置采样周期与总采样数。平台侧用消息队列削峰,时序库按设备与测点建索引。

常见误区:把 SECS/GEM 当作轮询接口使用,频繁发送 S1F3 查询变量。这会增加设备控制器负担,也可能与工艺节拍冲突。应优先使用事件报告与 Trace 采集,仅在必要时做低频查询。

四、一个可参考的接入配置示例

以下为某 TEL 涂胶设备接入参数的示例(数值为教学假设,非实测):

项目SECS/GEM 通道OPC UA 通道
连接方式HSMS,设备为 Passive,Host 为 Activeopc.tcp://设备IP:4840
关键配置S2F33 定义 RPTID=2001;S2F35 链接 CEID=1001;S2F37 使能订阅 NodeID=ns=2;s=Chamber1.Temp;采样 100 ms;死区 0.5
采集内容WaferID、ChamberID、RecipeID、AlarmID温度、转速、流量、RF 功率
上报频率事件触发(每片晶圆约 6~10 次)连续量测,约 10 Hz
时间戳eventTime 来自设备,ingestTime 来自采集服务SourceTimestamp 与 ServerTimestamp 同时保留

接入完成后,判断是否成功的依据不是“连接上了”,而是:事件是否按工艺节拍出现、关键 VID 是否非空、温度曲线是否连续无断点、报警是否在触发后 1 秒内进入平台、以及 eventTime 与 ingestTime 的差值是否稳定在可接受范围(例如小于 500 ms)。这些指标应作为采集服务的日常健康检查项。

综上,SECS/GEM 与 OPC UA 在 TEL 设备数据采集中是互补关系:前者提供设备行为与事件的语义,后者提供高频参数与结构化模型。实时接入的工程实现重点在于会话可靠性、字段归一化、时间戳对齐与吞吐控制。把这四点做扎实,后续的异常诊断与工艺分析才有可信的数据基础。