📄 d165.bmp.txt
字号:
(Item)提供容器并逻辑组织数据项,并用于返回OPC Item类对象;数据项对象存储具体Item
的定义、数据值、状态值等信息,一个Item就代表一个具体的过程变量,每个数据项都有
值( Value)、品质(Quality)、时间戳(TimeStamp)三个属性。
每一个OPC Item对应到一个实际装置上的某一个通道或接口;每一个OPC Group则包
含了许多的OPC Item,同时并定义这些OPC Group更新时间、方式,以及提供读取OPC Item
值的接口;而每一个OPC Server则包含若干个OPC Group,同时提供操作这些OPC Group
的接口。因此,客户程序对OPC项的操作都是通过包容此项的OPC组来进行的,而不是直
接把OPC项作为一个对象来操作。按照OPC的类模型,当对象方法调用OPC对象时必须
遵循一定的顺序:如果要创建一个OPC Item类的实例,则首先需要一个OPC Group对象;
创建一个OPC Group对象的前提是存在一个OPC Server类的实例,并建立一个与该服务器
的连接。图5-2说明了操作OPC类模型的流程。
\\\\执行要求的读或写操作
图5-2操作OPC类模型的流程
2.OPC教据访问接口
OPC对象提供了对数据源进行存取(读/写)或通信的接口方法,通过接口,一个OPC
客户程序可以同时和一个或多个厂商提供的OPC服务器连接,如图孓1所示。OPC规范中
提供了两套接口方案,即定制接口和自动化接口。定制接口效率高,通过该接口能够发挥OPC
服务器的最佳性能,采用C++语言的客户一般采用定制接口方案;自动化接口使解释性语言
和宏语言访问OPC服务器成为可能,采用VB等语言的客户一般采用自动化接口。典型的
OPC体系结构如图5-3所示。
┏━━━━━━━━━━━━┳━━━━━┳━┳━━━━━━━┓
┃ 。I - 目动化援口 ┃ 自动化 ┃ ┃ 本地或远程 ┃
┣━━━━━━━━━━━━┫ ┃ ┃ ┃
┃ VDMⅢ任厅I一 ┃ 转换 ┃ ┃ OPC服务器 ┃
┣━━━━━━━━━━━━┫ ┃ ┃ ┃
┃ ┃ ┃ ┃ ┃
┣━━━━━━━━━━━━┻━━━━━┻━╋━━━━━━━┫
┃ - 一一一一I- 上J ┃ ┃
┃ L十十出朋往厅I - }制格口 ┃ 数据缓冲区 ┃
┣━━━━━━━━━━━━━━━━━━━━┫ ┃
┃ ┃ ┃
┗━━━━━━━━━━━━━━━━━━━━┻━━━━━━━┛
图5-3典型的OPC体系结构
OPC规范中并没有给出各对象接口的具体实现,而只是描述了它们的外部功能,这些外
部功能正是程序员所关心的。下面对对象必需的接口的外部功能做简要说明。
对OPC定制接口简要说明如下:
(1) OPC服务器对象接口(见图5-4)
●IUnknown接口是COM标准接口,包括AddRef0、Release()和Querylnterface0。一
般来说,这是获取、保持和释放一个指针所必需的。
165
p 啪
m
∑\1
S
p
m
,胁
一一、、一\\\一
k
L
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -