欢迎光临散文网 会员登陆 & 注册

通讯协议017——全网独有的OPC AE知识四之接口(一)

2023-07-19 08:51 作者:zhouwl72  | 我要投稿

本文简单介绍OPC AE规范的接口相关知识,更多通信资源请登录网信智汇(wangxinzhihui.com)。OPC AE规范描述了OPC事件服务器应该实现的对象和接口,实现在多个OPC客户端间共享事件和警报条件。

任何支持IOPCEventServer接口的COM对象都是OPC事件服务器。在许多情况下,OPC DA服务器还将暴露一个OPCEventServer对象,具备数据服务器和事件服务器的角色。在其他情况下,通常是专用的OPC事件服务器,而不是具备OPC DA的事件服务器。

本规范定义了以下COM对象,下面将简要介绍这些对象:OPCEventServer、OPCEventSubscription和OPCEventAreaBrowser。

                                             

1、OPCEventServer对象

 

上图为OPC Event Server和IID_IOPCShutdown关闭对象的视图。这些对象是使用CoCreateInstance或CoCreateInstanceEx创建。如前所述,这可能是一个OPC DA服务器对象,它也实现IOPCEventServer接口。

IOPCCommon接口用于执行OPC服务器的通用功能,例如数据访问。例如:包括LocaleID的管理和检索错误字符串。

IOPCEventServer接口用于创建OPC事件订阅和OPC事件区域浏览器对象,查询事件类别和事件参数,并管理条件。

IConnectionPointContainer和IConnectionPoint接口是可连接对象的标准DCOM接口,用于处理服务器通知即将关闭客户端的回调。

 

2、OPCEventSubscription对象

 


上图为客户端使用IOPCEventServer::CreateEventSubscription方法时,OPC事件服务器创建的OPCEventSubscription和IID_IOPCEventSink对象的视图。

IOPCEventSubscriptionMgt接口用于配置OPC事件报告的过滤器和其他属性。

可选的IOPCEventSubscriptionMgt2接口用于设置或获取订阅的keep-alive时间。

IConnectionPointContainer和IConnectionPoint接口是的标准DCOM接口可连接对象,并用于处理事件通知的回调。

 

3、OPCEventAreaBrowser对象(可选)

 

上图是当客户端调用IOPCEventServer::CreateAreaBrowser方法时,由OPC事件服务器创建的OPCEventAreaBrowser对象的视图。

IOPCEventAreaBrowser接口为客户端提供了一种浏览由服务器实现的过程区域组织结构。服务器提供的事件条件被组织成一个或多个过程区域,并且客户端可以根据指定的过程区域筛选事件订阅。

此对象是可选的,简单事件服务器可能不支持该接口。

 

4、自定义接口开发注意

为了正确操作,枚举器是从对象上的方法创建和返回的,而不是而不是通过QueryInterface。

根据COM规范,客户端必须释放与“out”或“in/out”参数关联的所有内存。

根据COM规范,所有方法都必须在每个接口上实现。方法不需要的可以根据情况返回E_ NOTIMPL或S_OK。

COM不允许为Out或In/Out参数传递NULL。

 更多通信资源请登录网信智汇(wangxinzhihui.com)。


通讯协议017——全网独有的OPC AE知识四之接口(一)的评论 (共 条)

分享到微博请遵守国家法律