On-line Check
核心概念速览
-
目的:主机可以随时(设备处于 ONLINE 且 COMMUNICATING)用 S1,F1 问设备“你在吗?”,设备必须以 S1,F2 回复其身份信息(MDLN)和软件版本号(SOFTREV)。
-
MDLN(Equipment Model Type):设备型号的 ASCII 字符串(用于标识设备类型/型号)。
-
SOFTREV(Equipment Software Revision Code):设备软件版本的 ASCII 字符串;必须能唯一区分不同软件发布,任意设备软件变更都应导致 SOFTREV 改变。
-
范围:这里描述的是 主机发起 的场景;设备主动发起 S1,F1(请求主机)属于 Control Model
1) 为什么要有 On-line Identification?(场景与价值)
- 主机在工厂里需要能确认设备是否在线、是什么型号、运行哪版软件,用于:设备注册/资产管理、兼容性检查、升级策略、自动化脚本决策、合规性与追踪。该能力是 GEM 的基础能力之一(Fundamental)。
- 场景和价值微信公众号S11F1的消息有更完整的介绍
2) 在 SECS-II 层面的交互(简化示例)
-
主机 -> 设备:S1,F1(通常无复杂内容,表示“Are you there?”)
-
设备 -> 主机:S1,F2,返回包含 MDLN 和 SOFTREV 的清单(ASCII 字符串)。
示例(伪 SML 表示):S1F1 Host -> Equipment
S1F2 Equipment -> Host 返回: <L,2> A[MDLN], A[SOFTREV]
(SEMI E30 要求 S1,F2 必须返回 MDLN 和 SOFTREV。)
3) 实现细节与工程注意点(设备端)
-
随时可响应:只要设备处于 ON-LINE 且 COMMUNICATING,就必须能接受并回复 S1,F1(不能把这个消息“排队太久”或只在空闲时才响应)。实现上推荐采用非阻塞/优先级处理,避免因为长时间的硬件操作阻塞响应路径。
-
SOFTREV 的治理:标准明确要求 SOFTREV 能唯一标识不同软件发布,任何软件改动(包括固件、驱动、重大配置脚本)都应引起 SOFTREV 的变更。厂商应制定版本策略(例如:
MAJOR.MINOR.PATCH+build或YYYYMMDD-build),并记录变更日志供主机/FA 使用。 -
MDLN 与硬件配置:MDLN 是设备型号字符串;E30 要求 S1,F2 的返回能“反映硬件与软件配置”(即 MDLN+SOFTREV 要共同代表设备的身份与运行状态)。在实践中,设备常用 MDLN 表示基础型号,若有可选硬件模块也应在 MDLN 字段或另行暴露的设备常数/设备属性中说明。(实现细节厂商可选)
4) 主机端(应用端)建议
-
什么时候调用 S1,F1:在设备上线(连接建立并通过 Establish Communications),在批量升级前后、以及在设备治理脚本(inventory、兼容性校验)时。不要把 S1,F1 当成建立通信的唯一手段(Establish Communications 有专门 S1,F13/F14)。
-
校验 SOFTREV:主机应有策略决定接受哪些 SOFTREV(白名单、最低版本、强制升级等),并在设备软件变更时触发相应流程。
-
若设备回复异常:若 S1,F2 返回空或与记录不符,应触发报警或人工介入流程,而不是盲目继续自动化控制。
5) 测试与验收要点(建议的用例)
-
ONLINE 响应测试:设备 ON-LINE & COMMUNICATING 状态下,发送 S1,F1,校验 S1,F2 马上返回且包含 MDLN+SOFTREV。
-
OFF-LINE 行为测试:设备 OFF-LINE 或 HOST OFF-LINE 时的 S1,F1/S1,F2 行为符合 Communications State Model 规则(例如在某些 OFF-LINE 子状态下设备不能随意发主消息)。
-
升级后验证:更新软件包后,SOFTREV 必须变化且主机能检测到变化并记录。
-
并发压力测试:在设备执行高负载处理时反复发送 S1,F1,验证设备仍能及时响应(非阻塞实现)。
-
边界值测试:[?] 如果 SOFTREV 字段长度、字符集有什么限制需要查 SEMI E5 的数据项定义(建议核对 E5)。
一句 话 总结
E30 On-line Identification要求设备在 ON-LINE 且 COMMUNICATING 时能被主机随时查询(S1,F1)并以 S1,F2 返回 MDLN 与能唯一区分软件发布的 SOFTREV——这是保证设备可识别性、版本管理与工厂自动化可靠性的基础性能力。
编辑此页
有任何问题或疑问,请发送邮件到--->admin@secs-ii.net
- 发现错误或表达不清希望修正
- 内容不健全需要扩展
- 有疑问希望解答