2. 设备通信协议速览
在EAP设备联机工程中,协议选型决定了后续调试的难度、数据采集的粒度以及故障排查的路径。很多现场问题并非设备本身故障,而是协议栈组合与设备能力不匹配。因此,理解SECS/GEM、HSMS、TCP/IP、串口、OPC UA各自扮演的角色,以及它们如何组合,是联机测试的第一道基本功。
一、协议分层:谁承载谁,谁定义语义
这五种协议并非并列关系,而是分布在不同的通信层次上。TCP/IP是传输层与网络层的基础,负责把字节可靠地送到对端;串口(RS-232/RS-485)是物理层与链路层的传统通道,常用于老设备或简单控制器;HSMS是SEMI E37标准,把SECS-II消息封装后跑在TCP/IP之上,是当前300mm设备的主流选择;SECS-II(SEMI E5)定义消息语义,GEM(SEMI E30)定义设备行为模型与状态机;OPC UA则是IEC 62541定义的独立信息模型与通信栈,既可跑TCP,也可跑HTTPS/WebSocket,语义由配套的companion specification或设备厂商自定义信息模型决定。
二、典型组合方式与适用场景
在实际EAP联机中,最常见的组合有以下四类:
- SECS-II + HSMS + TCP/IP:这是半导体前道设备的标准组合。设备作为HSMS被动端监听5000端口,EAP作为主动端发起连接。GEM层负责定义设备状态、报警、事件上报和远程命令。适合光刻、刻蚀、薄膜等具备GEM接口的机台。
- SECS-II + HSMS + TCP/IP + 串口网关:当设备只有串口输出时,通过串口服务器或协议网关将串口数据转换为HSMS消息。此时EAP仍按SECS/GEM处理,但需注意网关的缓冲深度和超时设置。
- OPC UA + TCP/IP:适合非半导体标准设备,如部分检测仪器、环境监控、厂务系统。EAP作为OPC UA Client,通过订阅方式采集变量。语义由设备厂商的地址空间决定,需要提前获取节点ID清单。
- 串口直连 + 自定义协议:用于极简控制器或老旧设备,EAP通过串口库直接收发字节流。此时没有统一语义,必须依据设备手册逐条实现命令与应答解析。
三、选型依据:从设备能力反推协议栈
选型不是先选协议再找设备,而是先确认设备支持什么。现场可按以下顺序判断:
- 查看设备手册或接口清单,确认是否声明支持SECS/GEM、HSMS或OPC UA。
- 若支持HSMS,进一步确认是主动模式还是被动模式,端口号是否为5000,是否支持Select/Deselect。
- 若只支持OPC UA,确认端点URL、安全策略、是否允许匿名登录、订阅周期最小值。
- 若只有串口,确认物理接口类型、波特率、数据格式、命令集是否公开。
- 若设备同时支持多种协议,优先选择与工厂MES/EAP平台一致的那一种,减少转换层。
四、参数与调试观察点
不同协议组合在调试时关注的参数不同。以下表格列出典型观察点,便于快速定位问题。
| 协议组合 | 关键参数 | 正常表现 | 常见异常 |
|---|---|---|---|
| HSMS + TCP/IP | 端口5000、T3超时45s、T5连接间隔10s、T6控制超时5s | Select成功后持续心跳,S1F1应答S1F2 | 连接被拒、Select无响应、心跳超时断连 |
| SECS-II + GEM | 设备ID、CEID、RPTID、报警ID | 事件按CEID上报,报警可清除 | CEID未定义、报告未启用、报警卡死 |
| OPC UA | Endpoint URL、SecurityPolicy、订阅间隔、节点ID | 会话建立、订阅回调正常、变量值刷新 | 证书不受信、节点不存在、订阅超时 |
| 串口 | 波特率9600/19200、8N1、命令帧格式、CRC | 发送命令后收到完整应答帧 | 乱码、超时、帧不完整、校验失败 |
五、实操示例:HSMS连接建立的关键报文
以EAP主动连接设备HSMS被动端为例,连接建立后首先交换Select.req与Select.rsp。以下为简化后的报文结构示意,用于理解字段含义:
Select.req (HSMS控制消息)
SessionID: 0xFFFF
HeaderByte2: 0x00
HeaderByte3: 0x00
PType: 0x00
SType: 0x01
SystemBytes: 0x00000001
Select.rsp (设备应答)
SessionID: 0xFFFF
HeaderByte2: 0x00
HeaderByte3: 0x00
PType: 0x00
SType: 0x02
SystemBytes: 0x00000001
SelectStatus: 0x00 (0=成功)
若SelectStatus非0,常见原因包括设备未使能HSMS、SessionID不匹配或设备已处于被占用状态。此时应先检查设备侧HSMS配置,而非反复重连。
六、选型决策的工程化建议
综合来看,选型应遵循“设备能力优先、平台一致性其次、转换层最少”的原则。对于新建产线,优先要求设备支持SECS/GEM over HSMS;对于既有设备改造,若无法加装GEM接口,可考虑OPC UA或串口网关,但需在EAP侧增加协议适配层,并明确该层的维护责任。无论选择哪种组合,联机测试前都应先完成物理层连通性验证、端口探测和协议握手测试,再进入数据采集与命令下发阶段。