本博客最初发布于cimetrix.com。
背景
英特尔的克里斯·马洛尼与我共同担任北美GEM 300工作组联合负责人。我们主导该工作组所有与GEM技术相关的SEMI标准制定工作,涵盖大量SEMI标准规范。
APCSM会议
我最近在德克萨斯州奥斯汀市举办的APCSM(先进过程控制智能制造)会议上,就GEM标准进行了授课。在我的演讲材料中,我阐述了所谓"GEM的核心理念"。这些理念正是推动GEM技术日益普及与应用的关键要素。其核心理念包括:
两种订阅级别
设备的GEM接口不仅充当消息代理,更具备多重功能。它绝非简单的开关式消息订阅服务。 终端用户主机可对设备发送的每条消息内容实施深度控制。同一GEM接口在不同终端站点可能发送更少且更小的消息,也可能发送更多且更大的消息——这完全取决于各终端用户主机的数据采集配置。请将以下特性与典型消息代理订阅模式对比:在后者中,客户端仅能选择订阅接收或不接收特定消息,却无法控制消息内容或发送频率。
收集事件报告允许最终用户启用或禁用收集事件消息通知,这是一种典型的客户端订阅模式。作为第二层订阅功能,最终用户还可选择这些消息中报告的数据内容。
跟踪报告允许最终用户选择跟踪报告消息的频率。作为第二层订阅,最终用户还可选择这些消息中包含的数据内容。

告警报告允许最终用户启用或禁用告警消息通知。作为第二层订阅功能,最终用户还可独立选择与告警关联的采集事件报告配置。
适应性
任何制造设备,无论简单或复杂,均可配备GEM接口。GEM接口的复杂程度反映了设备的复杂程度。例如,某个GEM接口可能包含15个独立采集事件,而另一个则可能包含20,000个。某台设备可能拥有10个状态变量,而另一台则拥有超过5,000个。
此外,GEM接口内的技术已足够成熟,可在各类设备平台上实现GEM接口,无论是Windows、Linux、PLC还是其他操作系统。 令人惊讶的是,仍有大量设备沿用Visual Basic 6.0和Visual C++ 6.0等旧版软件开发技术,但这些平台同样能实现GEM功能。甚至完全基于PLC构建的设备,也能通过串行通信或TCP/IP协议在PLC内部实现精简版GEM接口。GEM标准允许实现方根据实际需求灵活选择功能模块的部署。
可扩展性
在现有GEM接口中添加额外的采集事件、报警和变量非常容易,且不会影响向后兼容性。一旦新项目被纳入GEM接口,终端用户主机即可根据需求选择是否使用这些数据。
该系统还需整合来自不同来源的要求,并将其统一到单一的GEM接口中。具体而言,GEM接口的要求将来自不同终端用户、GEM标准本身、设备供应商以及其他补充标准。将所有这些来源的要求整合到单一GEM接口中相对容易实现。而整合后的数据采集功能可自然地与追踪报告和采集事件报告相结合。

自上而下的连接性
在许多情况下,允许一台设备访问另一台设备的数据会很有用。实现这一目标的一种可能方案是设备间直接通信。然而,在使用GEM时,虽然设备间直接连接并非被禁止,但通常并不采用这种方式。 相反,GEM采用自上而下的连接方式。这意味着终端用户主机通过其GEM接口从某台设备收集信息,随后将信息传递给下游设备。虽然这种间接方式看似效率较低,但自上而下的方法在工厂车间更易于集成,原因包括:
1. 这些场景可以不依赖特定设备。验证设备间的通信可能存在困难,且难以将某供应商的设备与其他供应商的设备直接互换。每台设备仅需与单一主机实体进行测试。
2. 这对设备供应商而言更易于支持。设备供应商只需支持GEM接口,无需额外支持设备间通信协议。
3. 这赋予终端用户更多控制权。终端用户能够精确记录每台设备的运行状态,必要时甚至可对信息进行操作。设备间的独立连接在故障诊断时会增加额外复杂性。

GEM标准的激动人心变革
在未来几周内,关于修改SEMI E30 GEM标准的提案6572C将提交北美秋季信息与控制委员会审议。 会议将于2022年11月9日在加州米尔皮塔斯的SEMI总部举行。本次提案对GEM标准提出了多年来最重大的修订。鉴于此为第四轮投票,且上一轮投票显示对修订案存在强烈支持,修订案获批的可能性极高。以下为拟议修订内容摘要:
流程项目管理
针对设备配方(即工艺程序)的处理方式,现提出若干变更建议。最重大的变更在于正式采纳Stream 21 SECS-II消息协议——该协议此前已在SEMI E5(SECS-II)标准中获得批准,该标准作为所有标准消息定义的库。 Stream 21消息将使设备能够传输超过16.7MB的非格式化工艺程序。这是对GEM标准的迟来改进——当前标准虽定义了支持大型工艺程序的替代方案,但其复杂程度导致几乎无人实现。
此外,流程程序管理部分已完全重组,将每种实施方案独立出来,以便更轻松地识别场景集。例如,下表汇总了每种场景的消息:
表7 SECS-II各进程项目管理选项消息摘要

从GEM标准主体中移除的每个过程程序实现方案,均已移至附录中。
希望配方管理能够更易于理解、更易于实施,并能以更少的努力应对日益增大的工艺程序规模。
新增消息
提案6572C还建议新增消息S2F51至F64。这些消息此前已在SEMI E5(SECS-II)标准中获批,现拟纳入GEM标准。新增消息将提升GEM接口的透明度。以下是新消息的简要概述:
| 消息 | 描述 |
| S2F51 | 向设备请求返回所有报告标识符的列表。 |
| S2F53 | 请求返回一个或多个报告定义 |
| S2F55 | 向设备请求返回一个或多个采集事件的关联报告标识符列表。 |
| S2F57 | 向设备请求返回所有已启用报告功能的采集事件标识符列表。 |
| S2F59 | 向设备发出请求,要求其返回在缓冲活动期间需要缓冲的流和函数列表。 |
| S2F61 | 向设备请求返回所有跟踪标识符的列表。 |
| S2F63 | 向设备请求返回一个或多个跟踪定义的列表。 |
这些新消息不仅使GEM接口的设置和配置更加透明,还将提升GEM接口的测试能力。例如,测试GEM接口时可遵循以下步骤:
1. 使用消息 S2F33 定义报告
2. 使用新消息 S2F51 检查报告是否存在
3. 使用新消息 S2F53 检查报告定义
4. 使用消息 S2F35 将报告链接至采集事件
5. 使用新消息 S2F55 检查报告链接状态
6. 使用消息 S2F37 启用采集事件
7. 使用新消息 S2F57 检查采集事件启用状态
8. 断开与设备的连接并重启设备
9. 使用新消息 S2F51 检查报告存在性
10. 使用新消息 S2F53 检查报告定义
11. 使用新消息 S2F55 检查报告关联状态
12. 使用新消息 S2F57 检查采集事件启用状态
如今,当主机重新连接到GEM接口时,通常会重新定义数据收集,以确保在断开连接期间数据收集设置未被其他主机应用程序修改。主机可通过验证数据收集设置是否保持不变,来替代重新定义操作。
设备识别
目前,设备通过GEM接口基于其软件版本和型号进行识别。若两台设备型号相同且运行相同软件版本,则难以区分。
新增了若干识别功能。
| E30设备供应商 | 这是一份用于确定设备供应商的新提案。 |
| 设备序列号 | 设备的序列号。该项内容多年来一直是E5 SECS-II标准的一部分,但GEM标准并未要求提供。 |
| 设备名称 | 由操作员或主机可分配的名称。该功能多年来一直是E5 SECS-II标准的一部分,但未被GEM标准强制要求。 |
改进的设备识别功能应有助于先进过程控制应用。
文档访问
使用GEM接口时常遇到的困难之一,是获取设备正确文档及其对应版本。本提案建议通过GEM接口提供两种获取GEM文档的方式。
1. 下载传统的GEM文档,可能是PDF或CSV格式文件。
2. 下载SEDD文件,该XML文件描述了GEM接口。SEDD代表SECS设备数据字典。
在两种情况下,文档均通过Stream 21消息下载,该消息与流程程序传输所用的消息相同。
杂项变更
此外还提出了若干其他变更。SEMI近期通过了限制性偏见术语的要求及其他偏见术语的指导方针。尽管GEM标准中未包含限制性偏见术语,但仍存在某些偏见术语。本次投票涉及的偏见术语可依据SEMI指导方针进行处理。
GEM合规声明也已更新,以反映GEM的变更。新的合规声明如下:
