background image

(3) OPC 客户端在服务器异常或断开连接时可向客户发出异常通知。

4.2 OPC 客户端框架设计

OPC 客户端程序主要分为以下模块:

  (1)服务器对象模块。实现本地服务器和远程服务器连接的创建和断开;实现组对象的添加
与移除;

  (2)组对象模块。实现项对象的添加与移除;分别实现面向项对象的 OPC DA2.0 和 3.0 规范
的异步读写和订阅功能;实现数据访问相关属性

(数据刷新率、服务器与客户端时差、数据刷

新死区等

)的设置。

  (3)项对象模块,实现需要读取或写入的项对象的相关属性(访问路径、访问权限、时间戳标
志等

)的设置与读取。 

5  OPC 客户端功能实现

  

OPC 客户端与服务器的交互主要分为:创建服务器对象并连接服务器;为服务器对象

添加组对象,并向组对象内添加需要访问或写入数据的项对象;对相关项对象进行读或写
操作;断开服务器连接。

OPC 客户端工作流程如图 4 所示。

5.1 OPC 服务器连接

OPC 客户端使用 QT 库开发,以 QT Creator 为开发平台,采用 Windows API 函数进行编写。

QT 实现与 Matrikon OPC 服务器连接的关键程序如下:

//创建 OPC 服务器对象,初始化其 ProgID 和 IP

CKServer server(

“Matrikon.OPC.Simulation.1”, “172.16.10.175”);