本博客最初发布于cimetrix.com。
工程师们常问:"接口A与SECS/GEM在数据采集方面有何差异?"本文将从高层次对比接口A与SECS/GEM/HSMS-SS的数据采集特性。我们正在开发若干工具以演示EDA/接口A的数据采集功能,后续将提供更多信息……
客户
接口A支持多个客户端,而SECS/GEM通常仅支持单个客户端。
安全
接口A可配置为SSL加密通信。仅持有有效证书的客户端可使用该接口,所有传输数据均经过加密处理。
HSMS未受安全保护。在HSMS中,任何拥有设备ID的主机均可连接,且传输数据采用二进制编码但未加密。
此外,Interface A客户端功能受权限控制,而GEM功能则不受权限限制。
设备型号
接口A E125为其客户端提供了上传设备逻辑结构描述的方法,该结构包含分配给模块、子系统和I/O设备的参数、事件及异常。通过这种方式,每个参数、事件和异常都具有所属组件的上下文。
在GEM系统中,类似信息可在设备随附的手册中找到。遗憾的是,大多数设备手册并未说明设备上哪个组件会产生特定参数、事件或异常,缺乏上下文关联。
痕迹
接口A跟踪具有GEM跟踪所不具备的特性。接口A跟踪包含启动和停止触发器,这些触发器可包含一个或多个事件和/或异常。当任何启动触发器发生时,跟踪将开始收集数据;当任何停止触发器发生时,跟踪将停止收集数据。这种特性非常实用,例如可将处理模块的跟踪定义为:当该模块的处理开始事件发生时启动,当处理完成事件发生时停止。 通过这种方式,接口A客户端只需定义一次跟踪,仅在处理活动期间收集数据。在触发器之间,数据将按指定速率采集。该速率通过浮点数设定,表示两次采样间隔的秒数。数据采样精度受设备限制。
在GEM中,追踪始于通过SECS消息定义,终于指定数量的采样被收集。要实现与接口A相同的效果,主机必须为处理模块的"处理开始"和"处理完成"事件定义事件报告。当接收到处理开始事件时,主机需通过发送SECS消息定义追踪;当接收到处理完成事件时,主机则需用SECS消息终止追踪。 与接口A不同,主机需每次执行此操作。由于SECS消息传递的延迟,处理开始事件与追踪启动之间存在时间差——这种延迟在接口A中并不存在。即使设备支持更快的追踪速度,E5标准仍将GEM追踪精度限制在百分之一秒。部分早期GEM实现甚至仅支持秒级精度。
活动报告
接口A事件报告用于指定某一事件及其发生时需收集的一组可选参数。接口A客户端通过激活事件报告开始监控该事件,停用报告则停止监控。
GEM事件报告的机制略有不同。GEM主机首先定义名为报告的参数集合,随后将一个或多个报告关联至一个或多个事件。同一份报告可根据需要关联至多个事件。主机通过启用事件来启动监控,通过禁用事件来停止监控。
警报报告
接口A异常报告与GEM告警报告存在显著差异。接口A异常报告通过源ID、异常ID和严重性进行定义。上述字段均可为空或填写具体值。 源ID用于标识触发告警的组件(如处理模块或加载端口)。若源ID为唯一非空字段,则该组件的所有异常均将被监控并报告。异常ID用于标识特定异常名称,若此字段为唯一非空字段,则所有匹配该名称的异常(无论源组件)均将被监控并报告。 若严重性是唯一非空字段,则所有匹配该严重性的异常(无论源ID或异常ID)均将被监控并报告。当多个字段非空时,报告规则将通过布尔AND逻辑组合字段条件确定。此外,接口A的异常报告可能包含参数数据,但具体参数由设备制造商指定,接口A客户端无法选择。
GEM报警报告有两种形式。对于报警设置或清除的通知,主机可启用报警功能并接收不含其他数据的SECS消息。在GEM中,每个报警都包含一个设置事件和一个清除事件,可用于事件报告。通过这些事件,主机可接收包含自选数据的报告,从而获知报警设置与清除的状态转换。
报告
无论是接口A还是GEM,均不提供注释报告。
数据收集影响
接口A E134定义了一种机制,用于限制客户端定义的数据采集对物料处理的影响。若数据采集阻碍处理进程,设备可向所有客户端发出性能警告并停用其数据采集功能。设备可在后续时段恢复数据采集,并发布性能恢复通知。
GEM未定义此类限流或通知机制。