3. SECS标准体系概览
在半导体与泛半导体工厂自动化中,SECS/GEM 并不是一个单一协议,而是一整套由 SEMI 组织定义的标准族。很多初学者会把 SECS-I、SECS-II、HSMS、GEM 混为一谈,导致在设备联机、选型、排障时抓不住重点。理解这套标准体系的关键,是先分清“传输层、消息层、行为层、场景层”四个层次,再理解每个标准解决什么问题、不解决什么问题。
一、标准层次关系:从线缆到行为
SECS 标准族可以按 OSI 模型类比理解。最底层是物理与链路传输,中间是消息语义,最上层是设备行为与场景应用。它们之间是依赖关系,而不是替代关系。
- SECS-I(E4):基于 RS-232 串行链路的传输标准,定义了点对点、半双工、块传输、超时与重试机制。它解决的是“在串口上如何可靠地传 SECS 消息”。
- HSMS(E37):High-Speed SECS Message Services,基于 TCP/IP 的高速传输标准,支持一个设备与多个主机连接、异步通信、心跳与选择状态。它是现代工厂自动化的主流传输方式。
- SECS-II(E5):定义消息内容的标准,包括消息结构、数据项格式、流(Stream)与功能(Function)编号,例如 S1F1、S2F41。它不关心底层是串口还是 TCP。
- GEM(E30):Generic Equipment Model,定义设备在 SECS-II 之上应具备的通用行为,包括状态模型、事件报告、报警、配方管理、远程命令、数据采集等。它回答“设备应该怎么配合主机”。
- E4 / E5 / E30 / E37:分别对应 SECS-I、SECS-II、GEM、HSMS 的标准编号,是同一体系的不同编号表达。
二、各标准的作用与适用边界
理解边界比记住编号更重要。SECS-I 和 HSMS 是“二选一”的传输方式,SECS-II 是两者共用的消息语言,GEM 是建立在 SECS-II 之上的行为规范。E30 不规定传输方式,E37 也不规定消息语义,E5 不规定设备行为。它们各司其职,组合使用。
| 标准 | 层次 | 核心作用 | 适用边界 |
|---|---|---|---|
| SECS-I(E4) | 传输层 | RS-232 串行传输、块传输、超时重试 | 老设备、低速点对点场景;不适用于多主机并发 |
| HSMS(E37) | 传输层 | TCP/IP 高速传输、多连接、心跳、选择状态 | 现代工厂主流;需要网络与端口配置 |
| SECS-II(E5) | 消息层 | 定义消息结构、数据项、Stream/Function | 只定义消息格式,不定义设备行为 |
| GEM(E30) | 行为层 | 状态模型、事件、报警、配方、远程命令 | 依赖 SECS-II;不规定底层传输 |
| E30 / E37 / E5 / E4 | 编号体系 | SEMI 标准编号,分别对应 GEM、HSMS、SECS-II、SECS-I | 编号用于文档与合规声明,不是独立协议 |
三、方法流程:从设备联机到场景落地
实际项目中,标准体系的落地通常遵循“先传输、再消息、后行为、最后场景”的顺序。以下是一个典型的设备联机流程:
- 确定传输方式:新设备优先选 HSMS(E37),老设备若只有串口则用 SECS-I(E4)。
- 建立连接:HSMS 下设备与主机通过 TCP 端口建立连接,进入选择状态(Select)后才能收发消息。
- 验证消息层:用 S1F1 在线确认、S1F13 建立通信,确认 SECS-II 消息能正常解析。
- 启用 GEM 行为:配置状态模型、事件报告、报警、配方管理等,使设备符合 E30 要求。
- 场景化应用:根据工厂需求,叠加 E30 之外的场景标准,如 E5 消息扩展、E37 多连接、E4 兼容等。
典型 HSMS 连接建立过程:
1. 设备监听 TCP 5000 端口
2. 主机发起 TCP 连接
3. 主机发送 Select.req
4. 设备回复 Select.rsp
5. 双方进入 Selected 状态
6. 主机发送 S1F13(Establish Communications Request)
7. 设备回复 S1F14,通信建立完成
四、案例与场景:为什么不能只讲 SECS-II
某封装厂在导入一台新划片机时,设备厂商声称“支持 SECS-II”,但联机后主机无法获取设备状态。排查发现:设备只实现了 SECS-II 消息收发,没有实现 GEM 的状态模型和事件报告。主机发送 S1F3 查询状态,设备能回复,但设备不会主动上报状态变化,也不会在报警时发送 S5F1。这就是典型的“有消息层、缺行为层”。
另一个案例是某老厂设备只有 SECS-I 串口,主机却按 HSMS 配置,导致连接始终失败。问题不在 SECS-II,而在传输层不匹配。此时需要增加协议转换网关,或改用 SECS-I 驱动。
五、常见误区与复盘
- 误区一:SECS-II 等于 GEM。 SECS-II 只是消息格式,GEM 才是设备行为规范。没有 GEM,主机很难做自动化调度。
- 误区二:HSMS 可以替代 SECS-II。 HSMS 只负责传输,消息内容仍由 SECS-II 定义,两者是互补关系。
- 误区三:E30 包含 E37。 E30 是 GEM 行为标准,E37 是 HSMS 传输标准,编号不同、层次不同,不能互相包含。
- 误区四:所有设备都必须支持全部标准。 实际项目中,设备可能只支持部分 GEM 功能,需在规格书中明确功能清单。
总结来看,SECS 标准体系是一个分层协作的整体。SECS-I 和 HSMS 解决传输,SECS-II 解决消息,GEM 解决行为,E30/E37/E5/E4 是它们的标准编号。只有把层次关系、作用与边界同时看清,才能在设备联机、选型、排障和验收中做出正确判断。