4. EAP核心功能与通信机制

EAP(Equipment Automation Program,设备自动化程序)位于MES与生产设备之间,是制造执行系统向物理世界延伸的“手”和“眼”。MES关心的是工单、批次、良率和追溯,而设备只认端口、指令、寄存器和事件。EAP的核心价值,就是把这两套语言稳定、可靠、可追溯地互相翻译。理解EAP,关键是抓住五个功能:设备连接、数据采集、配方管理、远程控制、报警管理,以及支撑这些功能的通信协议基础。

一、五大核心功能

设备连接是EAP的入口。它负责与设备建立并维持通信通道,管理连接状态、心跳、断线重连和会话恢复。以SECS/GEM设备为例,EAP通常作为Host主动发起TCP连接,默认端口5000,连接建立后通过S1F13/S1F14交换建立通信,再通过S1F1/S1F2做在线确认。连接管理必须处理“设备重启后EAP不知道”这类问题,因此需要周期性心跳和状态机来判定Online/Offline。

数据采集解决“设备现在怎么样”。采集分两类:事件驱动采集和周期采集。事件驱动依赖设备上报的Collection Event,例如“加工完成”“门打开”“配方切换”;周期采集则按固定间隔读取状态变量(SV)或设备常量(EC)。采集到的数据要带时间戳、设备ID、变量ID和值,写入实时库或消息队列,供MES做SPC、OEE和追溯。

配方管理是EAP最容易被低估的功能。配方(Recipe)是设备加工的参数集合,EAP需要支持配方的上传、下载、比对、版本管理和校验。典型流程是:MES下发配方ID和版本,EAP通过S7F3/S7F4或S7F5/S7F6与设备交互,设备返回PPID和参数体,EAP校验参数数量、名称、范围是否与MES一致,一致才允许放行生产。配方不一致是批量报废的常见根因,因此“比对”比“下载”更重要。

远程控制让MES能够指挥设备动作,包括远程命令(Remote Command)、载入/卸载、开始/停止、切换配方等。远程控制必须与设备本地操作互锁,避免人在设备面板上操作时EAP同时下发指令。通常通过设备状态模型(如SEMI E10的Idle/Run/Down状态)和操作权限位来判断是否允许远程下发。

报警管理负责把设备报警(Alarm)实时、准确地送到MES和值班人员。EAP需要区分报警的Set和Clear,维护报警ID、等级、描述、发生时间和清除时间,并做去重和抑制。报警不是简单转发,还要与工单、批次关联,才能回答“这批产品生产时设备报了什么警”。

EAP 核心功能与通信机制 MES 工单 / 批次 / 追溯 SPC / OEE EAP 核心功能层 设备连接 心跳 / 重连 / 状态机 数据采集 事件 / 周期 / SV·EC 配方管理 上传 / 下载 / 比对 远程控制 命令 / 互锁 / 权限 报警管理 Set / Clear / 去重 通信协议层 SECS/GEM HSMS · 端口5000 OPC UA 地址空间 · 订阅 生产设备 PLC / 传感器 / 执行器 本地操作面板 下发 上报 指令 事件 承载 统一数据模型 → 实时库 / 消息队列 → MES

二、SECS/GEM协议基础

SECS/GEM是半导体和泛半导体设备最主流的通信标准。SECS-II定义了消息格式,每条消息用“流(Stream)+ 功能(Function)”编号,例如S1F1是“Are You There”,S6F11是事件报告。GEM则是在SECS-II之上定义的一套行为规范,规定了设备必须支持哪些状态模型、事件、变量和报警。传输层常用HSMS(High-Speed SECS Message Services),基于TCP/IP,默认端口5000。

一条典型的事件上报链路是:设备加工完成 → 触发Collection Event(CEID=1001)→ 设备发送S6F11,携带报告ID和变量值 → EAP解析后写入数据库 → MES查询到该批次完成。EAP需要维护CEID、RPTID、VID的映射表,这张表就是EAP与设备之间的“字典”。

# 示例:S6F11 事件报告结构(示意)
S6F11 W
  <DATAID> 0
  <CEID>   1001          # 加工完成事件
  <RPTID>  2001
  <V>      LOTID   = "LOT240315A"
  <V>      PPID    = "RCP_A12"
  <V>      RESULT  = "PASS"
  <V>      WAFERCNT= 25

三、OPC UA协议基础

OPC UA(Open Platform Communications Unified Architecture)面向更广泛的工业设备,尤其是PLC、机床、机器人。它不依赖COM/DCOM,跨平台,内置信息模型和安全机制。OPC UA的核心概念是地址空间(Address Space),每个变量是一个Node,用NodeId标识,例如ns=2;s=Machine1.Temperature。EAP作为Client,可以读取、写入、订阅这些Node。

与SECS/GEM的“事件+报告”不同,OPC UA更强调“订阅”。EAP可以创建Subscription,设置PublishingInterval=1000ms,再对关心的Node建立MonitoredItem。当温度变化超过死区(Deadband)时,服务器主动推送数据变更通知。这种方式比轮询更省带宽,也更实时。

对比项 SECS/GEM OPC UA
典型行业 半导体、面板、光伏 汽车、机床、通用制造
传输层 HSMS over TCP,端口5000 TCP / HTTPS / 二进制
数据组织 Stream/Function、CEID、VID 地址空间、NodeId、信息模型
交互方式 请求应答 + 事件报告 读写 + 订阅/发布
安全机制 依赖网络隔离 证书、签名、加密

四、实际落地要点

在真实项目中,EAP的难点往往不在协议本身,而在“边界条件”。第一,连接恢复后必须重新同步设备状态,不能假设设备还在原来的状态。第二,数据采集要定义好采样频率和缓存策略,避免设备高频上报把MES打挂。第三,配方比对要覆盖参数名、参数值、单位、顺序,任何一项不一致都要拦截。第四,远程控制必须做互锁和超时,指令发出后若设备未在设定时间内响应,要自动降级并报警。第五,报警要做分级和抑制,避免“报警风暴”淹没关键信息。

实践建议:EAP上线前,先用协议仿真工具模拟设备,把S1F13建立通信、S6F11事件上报、S7F3配方下载、S5F1报警这几条关键消息跑通,再接入真实设备。这样能把协议问题和设备问题分开定位。

总结来说,EAP是MES与设备之间的翻译官和守门人。它用SECS/GEM和OPC UA把设备能力抽象成标准接口,用连接、采集、配方、控制、报警五大功能把MES的意图落到设备动作上。只有把这五件事做扎实,设备自动化生产系统才能真正稳定运行。