OPC Server


OPC Server

文章插图
OPC Server【OPC Server】OPC是OLE for Process Control的缩写 。顾名思义 , OPC是一种利用微软的COM/DCOM技术来达成自动化控制的协定 , 根据OPC Specification 的定义 , OPC is "a standard mechanism for communicating to numerous data sources, either devices on the factory floor, or a database in a control room."
基本介绍中文名:OPC Server
类型:信息系统软体
性质:利用微软的COM/DCOM技术
协定简介在现今的工业自动化中 , 我们需要一套整合的信息系统 , 由底层的各项装置採集信息 (Field Management) , 中层的控制系统或图控应用程式进行程式的控制 (Process Management) , 再由最上层的整合软体将这些信息整合起来以供企业决策或效能提升 , 如下图所示:OPC 为硬体製造商与软体开发商提供了一条桥樑 , 透过硬体厂商提供的 OPC Server 接口 , 软体开发者不必考虑各项不同硬体间的差异 , 便可自硬体端取得所需的信息 , 所以软体开发者仅需专注于程式本身的控制流程的运作 。此外 , 由于 COM/DCOM 实作并隐藏了网路的细节 , 透过 OPC 可以很容易地达成远程控制的理想 。
OPC Server

文章插图
原理在说明 OPC Server/Client 运作方式之前 , 我们先简单介绍一下 Microsoft 发展的 COM/DCOM 是什幺?COM 是一种发展软体组件的方法 , 所谓的软体组件 , 是指一个可以提供应用程式、作业系统、以及其它组件服务的二进制可执行程式 。事实上 , 发展自订的 COM 对象就好象是在建构一套可以动态执行的对象导向 API 一般 。你可以在应用程式执行的时期随意拼上或移除所需要的组件 。依据 COM 这样的概念 , 发展应用程式就像是堆积木一样 , 每一个 COM 组件就是一块积木 , 你可以利用各式各样不同的积木 , 拼凑出你所需要的应用程式 。在实作上 , COM 透过一组一组的接口 (Interface) 提供服务 , 所有 COM 组件的使用者 , 都必须透过这些 Interface 来使用组件提供的功能 。OPC 的规格中便定义了许多 OPC Server 应该提供的 Interface , 要撰写一个 OPC Server 的 COM 组件 , 你必须在你的组件中加入这些接口 , 并提供它们的实作 , Client 便可以透过这些接口 , 操作连线到 OPC Server 的硬体装置 , 这也就是 OPC Server/Client 运作的方式 。以下的图示可以让这样的概念更清晰 。架构如前面所述 , OPC Server 透过一组一组的接口提供服务 , 不过在实作的架构上 , OPC Server 共分为三层:分别是 OPCServer, OPCGroup, OPCItem
OPC Server

文章插图
其中每一个 OPCItem 对应到一个实际的硬体装置上的某一个 channel 或 port;每一个 OPCGroup 则包含了许多的 OPCItem , 同时并定义这些 OPCItem 更新的时间、方式 , 以及提供读取 OPCItem 值的接口;而每一个 OPCServer 则包含若干个 OPCGroup , 同时提供操作这些 OPCGroup 的接口 。下图可以较清楚地说明 OPCServer/OPCGroup/OPCItem 间的关係:定製接口接下来的这一节 , 我们将讨论 OPC Server 的重点 , 也就是每一组接口的定义 , 以及它所提供的功能 。
OPC Server

文章插图