1. 课程导入与EAP系统全景
在半导体晶圆厂和面板厂里,一台设备每天产生的数据量远超多数人的直觉:一片晶圆在刻蚀腔体中停留的几百秒内,温度、压力、射频功率、气体流量等参数会以毫秒级频率被记录,同时设备还要与上层系统交换数百条状态与指令消息。把这些设备真正"接进"工厂的信息流,靠的正是 EAP(Equipment Automation Program,设备自动化程序)。它不是简单的数据采集软件,而是设备与制造执行系统之间的"翻译官+调度员+记录员"。
EAP在制造体系中的定位
要理解EAP,先看它上下两端的邻居。向上是 MES(制造执行系统),负责工单、批次、工艺路线和良率管理;再往上是 ERP,管订单与物料。向下是设备本身,包括 SECS/GEM 接口、PLC、运动控制器和各类传感器。EAP就卡在这两者之间:MES说"这批Lot要跑Recipe A",EAP把它翻译成设备能懂的SECS-II消息;设备回"我准备好了",EAP再转成MES能识别的状态事件。
在面板厂,EAP还要面对更复杂的搬运体系——OHT天车、Stocker、AGV 与设备的Load Port协同,一个搬运动作往往涉及EAP、MES、MCS(物料控制系统)三方握手。所以EAP的定位可以概括为:设备侧通信的收敛点、生产指令的执行点、设备状态的观测点。
设备自动化通信架构
典型的EAP通信架构是分层的。最底层是设备的SECS/GEM接口,通过HSMS(High-Speed SECS Message Services)走TCP/IP,或老设备走SECS-I串口。EAP作为HSMS的Active端主动连接设备的Passive端,建立Session后开始周期性的S1F1 Are You There、S1F13 Establish Communication等握手。中间层是EAP内部的消息处理引擎,负责解析SECS-II的Stream/Function、管理CEID(Collection Event ID)与RPTID(Report ID)的订阅关系。最上层是EAP与MES的接口,常见的有基于MQ的消息队列、WebService或数据库中间表。
下面这张图展示了从MES到设备再回到EAP的完整信号链,以及日志在每一层的落点:
日志与故障诊断的学习地图
EAP的日志不是"有就行",而是分层的。最核心的是通信日志,它按时间顺序记录每一条SECS消息:方向(EAP→设备还是设备→EAP)、Stream/Function编号、消息体内容、时间戳。当设备报"通信超时"时,第一件事就是看通信日志里最后一条发出的消息有没有对应的回复。如果S2F41发出去了但S2F42迟迟不来,问题可能在设备侧;如果S2F41根本没发出去,问题在EAP的调度逻辑。
第二层是事件日志,记录CEID的触发情况。比如设备发出S6F11报告"Process Start",EAP收到后应该触发对应的CEID处理逻辑。如果MES没收到批次开始的通知,就要查事件日志里这个CEID有没有被正确订阅和转发。
第三层是报警日志,对应S5F1消息。ALCD(Alarm Code)的bit 7表示报警是Set还是Clear,ALID是报警编号。排障时要区分"设备报了警但EAP没转发"和"EAP转发了但MES没处理"。
一个典型的排障场景
假设MES下发了一个"Start Lot"指令,但设备迟迟不动作。按信号链排查:先看MES到EAP的接口日志,确认指令已到达EAP;再看EAP通信日志,确认S2F41已发出且收到S2F42的ACK;然后看设备是否发出S6F11的"Process Start"事件;最后看EAP是否把这个事件转发给了MES。如果卡在第三步,可能是Recipe名称不匹配或设备处于Not Ready状态;如果卡在第四步,可能是CEID订阅关系断了。
这个排查过程不需要"猜",只需要按层看日志。本课程后续会逐一展开每一层的日志格式、常见异常模式和诊断方法,从SECS-II消息结构到HSMS连接状态,从CEID/RPTID配置到报警清除逻辑,最终让你能独立完成从日志到根因的闭环分析。