SECS GEM HSMS连接状态机与T3超时后的重连流程 - 第1节
1.1 SECS/GEM 协议栈全景
SECS/GEM 是半导体制造设备与上位主机(Host)之间进行通信和数据采集的行业标准协议族。它并非单一协议,而是一组分层协作的协议栈,从物理线缆到应用语义逐层封装。
核心分层关系: SECS-I(传输层)→ HSMS(网络传输层)→ SECS-II(消息层)→ GEM(设备行为与状态机层)。
1.1.1 协议栈分层架构
下表展示了 SECS/GEM 协议栈的四个主要层次及其职责:
| 层次 | 协议/标准 | 主要职责 | 典型载体 |
|---|---|---|---|
| 应用行为层 | GEM (SEMI E30) | 定义设备状态机、事件通知、变量收集、报警管理、远程控制等设备行为模型 | 设备固件 / 主机应用 |
| 消息层 | SECS-II (SEMI E5) | 定义消息格式、数据类型(如 U1/I2/A/B)、流(Stream)与功能码(Function)结构 | SECS-II 消息体 |
| 传输层 | HSMS (SEMI E37) / SECS-I (SEMI E4) | 提供可靠连接、消息分帧、超时重传、连接状态机管理 | TCP/IP 网络 / RS-232 串口 |
| 物理层 | RS-232 / 以太网 | 比特流传输、电气特性、物理连接 | 串口线 / 网线 |
记忆要点: 在现代化工厂中,HSMS 已基本取代 SECS-I 成为主流传输层,但 SECS-II 消息格式和 GEM 行为模型保持不变。理解 HSMS 连接状态机是掌握重连流程的前提。
1.1.2 协议栈交互关系图
下图展示了从物理连接到应用行为的完整协议栈封装关系,以及各层之间的数据流向:
1.2 SECS-I 与 HSMS:两种传输层的对比
SECS-I 和 HSMS 都承担传输层职责,但技术路线截然不同。理解它们的差异有助于在实际项目中做出正确的选型判断。
1.2.1 核心差异对比表
| 特性 | SECS-I (SEMI E4) | HSMS (SEMI E37) |
|---|---|---|
| 物理介质 | RS-232 串口(点对点) | TCP/IP 以太网(网络) |
| 传输速率 | 9600 / 19200 bps(典型) | 10/100/1000 Mbps |
| 连接模型 | 物理线缆直连,无连接状态机 | 主动建立/断开 TCP 连接,有完整状态机 |
| 超时机制 | T1(字符超时)、T2(块超时) | T3(回复超时)、T5(连接响应)、T6(控制事务)、T8(网络间隔) |
| 消息分帧 | 长度字节 + 块号 + 校验和 | 消息长度(4字节)+ 消息头(10字节)+ 数据 |
| 多设备支持 | 仅点对点 | 支持多设备同时连接 |
| 适用场景 | 老旧设备、低速简单通信 | 现代半导体工厂、高速数据采集 |
选型提示: 新建设备或产线升级时,优先选择 HSMS。SECS-I 仅建议在维护遗留设备或串口硬件无法替换时使用。HSMS 的 T3 超时和重连机制是本课程后续章节的核心内容。
1.3 SECS-II 消息结构基础
SECS-II 定义了设备与主机之间交换消息的格式。每条消息由 消息头 和 数据体 组成,通过 流(Stream) 和 功能码(Function) 唯一标识消息类型。
1.3.1 消息头结构
SECS-II 消息头固定为 10 字节,包含以下字段:
| 字节偏移 | 字段 | 长度 | 说明 |
|---|---|---|---|
| 0 | Device ID | 2 字节 | 设备标识符(低 15 位有效) |
| 2 | Stream / Function | 2 字节 | 高字节低 7 位为 Stream,低字节为 Function |
| 4 | PType / SType | 1 字节 | PType=0 表示 SECS-II,SType 用于 HSMS 控制消息 |
| 5 | System Bytes | 4 字节 | 系统字节,用于消息配对(请求与回复对应) |
1.3.2 常见 Stream/Function 示例
- S1F1 — Are You There? (设备在线查询)
- S1F2 — On Line Data (设备在线回复)
- S1F3 — Selected Equipment Status Request (选定设备状态请求)
- S1F4 — Selected Equipment Status Data (选定设备状态数据)
- S2F41 — Host Command Send (主机发送远程命令)
- S6F11 — Event Report Send (事件报告发送)
理解要点: 奇数 Function 通常表示请求(Primary),偶数 Function 表示回复(Secondary)。例如 S1F1 是请求,S1F2 是对应的回复。
1.4 GEM 核心概念
GEM(Generic Equipment Model)是建立在 SECS-I/HSMS 和 SECS-II 之上的设备行为标准。它定义了设备必须支持的能力集,使得不同厂商的设备能够以统一的方式与主机交互。
1.4.1 GEM 五大核心能力
| 能力 | 描述 | 相关 SECS-II 消息 |
|---|---|---|
| 设备状态机 | 定义设备从初始化到运行、空闲、报警等状态的转换规则 | S1F1/S1F2, S1F13/S1F14 |
| 事件通知 | 设备主动向主机报告特定事件(如加工完成、报警触发) | S6F11/S6F12 |
| 变量采集 | 主机可读取设备的状态变量(SV)、设备常量(EC)、数据变量(DV) | S1F3/S1F4, S2F13/S2F14 |
| 报警管理 | 设备向主机发送报警信息,主机可确认或清除报警 | S5F1/S5F2, S5F3/S5F4 |
| 远程控制 | 主机向设备发送远程命令(如启动、停止、暂停) | S2F41/S2F42 |
1.4.2 GEM 设备状态机概览
GEM 定义了设备在通信层面的核心状态,这些状态直接影响 HSMS 连接行为和 T3 超时处理策略:
1.5 本章小结
- SECS/GEM 协议栈分为四层:物理层(TCP/RS-232)、传输层(HSMS/SECS-I)、消息层(SECS-II)、应用行为层(GEM)。
- HSMS 是现代化工厂的主流传输层,具备完整的连接状态机和超时重连机制,是 T3 超时处理的核心载体。
- SECS-II 消息通过 Stream/Function 标识类型,奇数请求、偶数回复是基本规则。
- GEM 定义了设备状态机、事件通知、变量采集、报警管理和远程控制五大能力,其中设备状态机直接影响 HSMS 连接行为。