半导体设备通讯SECS协议是由国际半导体设备与材料协会(SEMI)的会员一起构建的连接性标准。它最初是为了在半导体/电子行业的自动化中实现设备与主机系统之间的通信而制定的。
然而,今天SECS协议也被广泛应用于光伏和表面贴装技术 (SMT) 行业。它提供设备和主机系统之间的通信接口,与PLC等其他通信协议不同,它使来自各种供应商的设备能够使用标准和一致的协议与各种类型的主机系统进行通信。
SECS/GEM不仅允许客户查看设备的功能,还能查看设备何时、如何以及使用什么来完成任务。此外,SECS/GEM协议已有40多年的历史,被部署在数千台设备中,经过时间的验证,证明了其在实际应用中的可靠性和稳定性。
最新例子下载--> 需要源代码下载
常用SECS指令Strem的分类
-
Stream 1 Equipment Status:设备状态;
-
Stream 2 Equipment Control and Diagnostics:设备控制和诊断;
- Stream 3 Material Status:原料状态;
-
Stream 4 Material Control:原料控制;
-
Stream 5 Exception Handling:异常处理;
-
Stream 6 Data Collection:数据采集;
-
Stream 7 Process Program Management:工艺程序管理;
-
Stream 8 Control Program Transfer:控制程序传输;
-
Stream 9 System Errors:系统错误;
-
Stream 10 Terminal Services:终端服务;
常用的发送指令明细
发送者发送的指令 | 代表的含义 | 发送者发送的指令 | 代表的含义 |
S1F1 | 询问是否可连接(使用S1F2应答是否可连接) | S7F1 | 进程程序加载 查询 |
S1F3 | 请求设备状态 | S7F3 | 发送 加工程序 |
S1F5 | 请求Formatted(格式化)状态 | S7F5 | 请求 加工程序 |
S1F7 | 请求Fixed()状态 | S7F7 | 请求 加工程序ID |
S1F9 | 请求 原料传输状态 | S7F9 | 请求 原料或工艺路线 |
S1F11 | 请求 变量名称列表 | S7F11 | 发送 原料或工艺路线 |
S1F13 | 请求建立通信 | S7F13 | 发送 原料或工艺路线入口 |
S1F15 | 请求离线 | S7F15 | 发送 工艺路线Mode |
S1F17 | 请求在线 | S7F17 | 删除 加工程序 |
S1F19 | 获取属性 | S7F19 | 请求 当前设备的加工程序的资料 |
S1F23 | 查询 可用事件列表(新版本内容) | ||
S2F1 | 查询 Service程序负载 | S7F21 | 获取 设备加工程序能力 |
S2F3 | 请求 发送Service程序 | S7F23 | 发送 格式化加工程序的命令 |
S2F5 | 请求 Service程序加载 | S7F25 | 请求 格式化加工程序 |
S2F7 | 请求 Service程序运行 | S7F27 | 发送 加工程序验证 |
S2F9 | 请求 Service程序运行结果 | S7F29 | 查询 加工程序验证结果 |
S2F11 | 获取 Service程序的资料 | S7F31 | 发送 加工程序验证请求 |
S2F13 | 请求设备常量Constant | S7F33 | 请求 可用的加工程序 |
S2F15 | 发送新设备常量Constant | S7F35 | 请求 Mid$的加工程序 |
S2F17 | 请求 数据和时间 | S8F1 | 请求 启动程序 |
S2F19 | 请求 重置或初始化 | S8F3 | 请求 执行程序 |
S2F21 | 请求 远程控制 | S9F1 | 无法识别的设备Id |
S2F23 | 请求 初始化Trace(跟踪) | S9F3 | 无法识别的Stream类型 |
S2F25 | 请求 回路诊断 | S9F5 | 无法识别的Function类型 |
S2F27 | 启动处理请求 | S9F7 | 非法数据 |
S2F29 | 请求 设备常量名称列表 | S9F9 | 事务计时器超时 |
S2F31 | 请求 日期和时间设置 | S9F11 | 数据太长 |
S2F33 | 定义报告 | S9F13 | 对话超时 |
S2F35 | 给 事件设定 事件组 | S10F1 | 请求 终端 |
S2F37 | 订阅/退订事件 | S10F3 | 终端单个显示 |
S2F39 | 多块(Multi-block)查询 | S10F5 | 终端Multi-block(多个)显示 |
S2F41 | 发送 Host主机命令 | S10F7 | 不允许Multi-block(多块) |
S2F43 | 重置后台Streams和Functions | S10F9 | 广播 Map设置的数据 |
S2F45 | 定义 可变的限制属性 | S12F1 | 发送 Map设置的数据 |
S2F47 | 请求 可变的限制属性 | S12F3 | 请求 Map设置的数据 |
S2F49 | 请求 创建数据报告 | S12F5 | 查询 Map传输 |
S2F51 | 请求 删除数据报告 | S12F7 | Map数据发送类型1 |
S2F53 | 请求 创建Trace(跟踪) | S12F9 | Map数据发送类型2 |
S2F55 | 请求 删除Trace(跟踪) | S12F11 | Map数据发送类型3 |
S2F57 | 请求 收集 Link (连接)事件 | S12F13 | Map数据请求类型1 |
S2F59 | 请求 收集 UnLink (断开连接)事件 | S12F15 | Map数据请求类型2 |
S2F61 | 请求 重置 Trace(跟踪) | S12F17 | Map数据请求类型3 |
S2F63 | 请求 强制远程控制 | S12F19 | Map错误报告 |
S3F1 | 请求 原料状态 | S13F1 | 发送 数据集发送 |
S3F3 | 请求 完成时间 | S13F3 | 请求 打开数据集 |
S3F5 | 发现原料 通知 | S13F5 | 请求 读取数据集 |
S3F7 | 原料丢失 通知 | S13F7 | 关闭 数据集发送 |
S3F9 | 原料ID EquateSend | S13F9 | 重置 数据集发送 |
S3F11 | 请求 原料ID | S13F11 | 查询 数据集多块 |
S3F13 | 发送 原料ID | S13F13 | 发送 表格数据 |
S4F1 | 准备发送原料 | S13F15 | 请求 表格数据 |
S4F3 | 发送原料 | S14F1 | 请求 获取Attr |
S4F5 | 握手完成 | S14F3 | 请求 设置Attr |
S4F7 | 未准备好发送 | S14F5 | 请求 获取类型(GetType) |
S4F9 | 卡在发送端 | S14F7 | GetType 的数据 |
S4F11 | 卡在接收端 | S14F9 | 请求 创建 Object |
S4F13 | 发送超时 | S14F11 | 请求 删除 Object |
S4F15 | 接收到的原料 | S14F13 | 请求 附加对象 |
S4F17 | 请求接收 | S14F15 | 请求 附加的Object |
S4F19 | 创建 Transfer Job(转移) | S14F17 | 请求 监督对象 |
S4F21 | 控制 Transfer Job(转移) | S15F1 | 查询 Multi-Block(多块)配方管理 |
S4F23 | Transfer Job(转移)报警 | S15F3 | 请求 操作 配方的命名空间 |
S4F25 | 多块(Multi-block)查询 | S15F5 | 请求 重命名 配方的命名空间 |
S4F27 | 切换(Handoff )就绪 | S15F7 | 请求 配方空间(RecipeSpace) |
S4F29 | 切换(Handoff )命令 | S15F9 | 请求 配方状态 |
S4F31 | 切换(Handoff )命令完成 | S15F11 | 请求 重命名 配方的命名空间 |
S4F33 | 切换(Handoff )已验证 | S15F13 | 请求 创建配方 |
S4F35 | 切换(Handoff )取消就绪 | S15F15 | 请求 存储配方 |
S4F37 | 切换(Handoff )取消就绪确认 | S15F17 | 请求 检索配方 |
S4F39 | 切换(Handoff )停止 | S15F19 | 请求 重命名配方 |
S4F41 | 切换(Handoff )停止确认 | S15F21 | 请求 操作配方 |
S5F1 | 发送 报警报告 | S15F23 | 请求 配方描述符 |
S5F3 | 启用或禁用 报警 | S15F25 | 更新 配方参数范围 |
S5F5 | 请求 报警列表 | S15F27 | 请求 下载配方 |
S5F7 | 请求 已启用的报警列表 | S15F29 | 请求 验证配方 |
S5F9 | 发送 异常报警 | S15F31 | 请求 卸载配方 |
S5F11 | 清除 异常报警 | S15F33 | 请求 选择配方 |
S5F13 | 请求 异常恢复 | S15F35 | 请求 删除配方 |
S5F15 | 异常恢复 完成通知 | S15F37 | 请求 批准 DRNS分割行为 |
S5F17 | 中止 异常恢复 请求 | S15F39 | 请求 分割 DRNS记录器 |
S6F1 | 发送 Trace(跟踪)数据 | S15F41 | 请求 修改 DRNS记录器 |
S6F3 | 发送 离散型变量数据 | S15F43 | 请求 获取DRNS变更 |
S6F5 | 查询 “发送的多块(Multi-block)数据” | S15F45 | 请求 批准DRNS变更 |
S6F7 | 请求“数据传输” | S15F47 | 请求 重建DRNS管理器 |
S6F9 | 发送“Formatted(格式化)变量” | S16F1 | 查询 多块(Multi-block)加工程序数据 |
S6F11 | 发送 事件报告(设备上传数据) | S16F3 | 请求 创建加工程序 |
S6F13 | 发送 注释事件报告 | S16F5 | 请求 控制加工程序 |
S6F15 | 请求 事件报告 | S16F7 | 加工程序 警告通知 |
S6F17 | 请求 注释事件报告 | S16F9 | 加工程序 事件通知 |
S6F19 | 请求 特定报告 | S17F1 | 请求 创建数据报告 |
S6F21 | 请求 带注释的个人报告请求 | S17F3 | 请求 删除数据报告 |
S6F23 | 请求 后台数据 | S17F5 | 请求 创建Trace(跟踪) |
S6F25 | 发送 通知报告 | S17F7 | 请求 删除Trace(跟踪) |
S6F27 | 发送 Trace(跟踪)报告 | S17F9 | 请求 收集 Link(链接)事件 |
S6F29 | 请求 Trace(跟踪)报告 | S17F11 | 请求 收集 UnLink(断开连接)事件 |
指令的数据类型
这是以下几个指令通信的例子 需要源代码下载