1. 课程导入

在半导体晶圆厂、封测厂以及高端电子制造车间里,设备与上层信息系统之间能否稳定、实时、可追溯地交换数据,直接决定了产线的自动化水平。SECS/GEM 正是解决这一问题的行业通用通信标准:它规定了设备与主机(Host)之间如何建立连接、如何交换状态与数据、如何下发指令与上报事件。可以说,没有 SECS/GEM,MES、EAP、SPC、RMS 等系统就很难真正“看见”和“控制”设备。

本课程面向设备工程师、自动化工程师、MES/EAP 开发人员以及制造 IT 从业者,目标是让你从“知道 SECS/GEM 是什么”进阶到“能读懂日志、能配置参数、能定位通信故障、能设计集成方案”。

本节核心定位:SECS/GEM 不是单一协议,而是一套由 SEMI 标准定义的通信体系。SECS-I/HSMS 负责“怎么传”,SECS-II 负责“传什么”,GEM 负责“设备应该具备哪些行为”。三者叠加,才构成可落地的设备自动化接口。

一、核心原理:三层标准如何协同

理解 SECS/GEM,最关键的是分清三个层次:

  • 传输层:SECS-I 基于 RS-232 串口,HSMS 基于 TCP/IP。现代工厂绝大多数使用 HSMS,支持主动连接(Active)和被动连接(Passive)两种角色。
  • 消息层:SECS-II 定义了消息结构,每条消息由 Stream 和 Function 组成,例如 S1F1 是“Are You There”请求,S1F2 是设备在线回复。
  • 行为层:GEM 规定了设备必须支持的状态模型、事件报告、变量采集、报警管理、远程命令等能力,使不同厂商设备具备一致的可集成行为。

下面这张图展示了设备与主机之间从物理连接到应用行为的整体关系,以及典型消息在链路中的流向。

SECS/GEM 通信体系:从物理链路到设备行为 设备 Equipment GEM 行为:状态/事件/报警/变量 SECS-II 消息:S1F1 / S6F11 / S2F41 主机 Host / EAP MES / SPC / RMS 集成 消息解析与业务逻辑 S1F1 Are You There S1F2 On-Line Data S6F11 Event Report 传输层:HSMS over TCP/IP(现代主流) / SECS-I over RS-232( legacy ) Active 主动连接 · Passive 被动监听 · T3/T5/T6/T7/T8 超时参数控制链路健康 设备侧通常为 Passive,主机侧为 Active;也可按工厂规范反向配置 状态模型 Communications Control State Processing State 数据采集 SVID 变量 CEID 事件 RPTID 报告 控制与告警 Remote Command Alarm Report Recipe / PPID

二、方法流程:一次典型通信如何发生

以主机确认设备在线为例,典型流程如下:

  1. 主机通过 HSMS 向设备发起 TCP 连接,设备作为 Passive 端监听端口(常见为 5000)。
  2. 链路建立后,主机发送 S1F1 询问设备是否在线。
  3. 设备回复 S1F2,携带 On-Line 状态与设备型号等信息。
  4. 主机进一步发送 S1F3 请求指定 SVID 的当前值,设备以 S1F4 返回数据。
  5. 生产过程中,设备通过 S6F11 主动上报事件报告,主机以 S6F12 确认。

这些消息的编号、方向和确认关系,是后续排障时读日志的基础。

# 典型 HSMS 连接参数(设备侧 Passive)
HSMS_MODE       = PASSIVE
HSMS_PORT       = 5000
T3_TIMEOUT      = 45s   # 连接分离超时
T5_TIMEOUT      = 10s   # 连接建立超时
T6_TIMEOUT      = 5s    # 控制事务超时
T7_TIMEOUT      = 10s   # 未回复消息超时
T8_TIMEOUT      = 5s    # 网络字符间超时
DEVICE_ID       = 0

三、案例/场景:为什么工厂离不开它

假设某封测厂需要把 200 台焊线机的生产数据接入 MES。如果没有 SECS/GEM,每台设备可能使用私有协议或文件导出,集成成本极高。采用 SECS/GEM 后,EAP 只需实现一套标准消息处理逻辑,即可对接不同品牌设备:

  • 设备开机后自动上报 S1F1/S1F2,EAP 识别在线状态。
  • 批次开始时,EAP 通过 S2F41 下发远程命令,选择 Recipe。
  • 每完成一颗产品,设备通过 S6F11 上报产量与关键参数。
  • 出现异常时,设备触发 Alarm,EAP 记录并联动停线。
实战提示:很多现场问题并非协议本身错误,而是 T3/T5/T6/T7/T8 超时参数与网络环境不匹配。排障时应先看链路状态,再看消息交互,最后看业务逻辑。

四、误区与复盘:初学者最容易踩的坑

常见误区实际含义正确做法
把 SECS 和 GEM 当成同一个东西SECS 是消息与传输标准,GEM 是设备行为规范先确认传输层,再确认消息层,最后核对 GEM 能力
只关注消息编号,不看状态模型设备是否可远程控制取决于 Control State先判断 Online/Offline、Local/Remote
忽略 CEID 与 RPTID 的绑定关系事件报告依赖报告定义与变量映射核对 S2F33/S2F35 配置是否完整
超时参数照搬默认值不同网络延迟差异很大根据现场 RTT 调整 T3/T5/T6/T7/T8
复盘要点:SECS/GEM 集成失败往往不是“协议太难”,而是“状态没对齐、配置没核对、日志没读全”。建立一套从链路到消息再到业务的排查顺序,比死记消息编号更有效。

五、整体知识框架与实战路线图

本课程后续将围绕以下主线展开:

  • 基础篇:SECS-I/HSMS 传输机制、SECS-II 消息结构、GEM 状态模型。
  • 配置篇:设备端与主机端参数、CEID/SVID/RPTID/PPID 配置。
  • 开发篇:EAP 侧消息收发、事件订阅、远程命令与 Recipe 管理。
  • 排障篇:日志分析、超时定位、连接断开与重连策略。
  • 实战篇:完整集成案例、测试验证与上线检查清单。

学习本课程时,建议你始终带着三个问题:这条消息从哪来、到哪去、期望的回复是什么。把这三个问题回答清楚,SECS/GEM 就不再是黑盒,而是一套可观察、可验证、可控制的工程体系。