OPC与DCOM的关系

Posted

技术标签:

【中文标题】OPC与DCOM的关系【英文标题】:The relationship between OPC and DCOM 【发布时间】:2011-02-06 00:06:45 【问题描述】:

我试图掌握 OPC 和 DCOM 之间的联系。我看过所有四个教程here 并且我认为我对什么是 OPC 有很好的感觉,但是在其中一个教程(第三个 35 秒)中,叙述者指出 OPC 基于 DCOM,但我不明白这两者是如何真正联系起来的。我的困惑来自我的教授提出的一个问题,他问“你将如何以及在哪里部署 OPC 而不是 DCOM,反之亦然”。他的问题使两者看起来不像我的研究表明的那样联系在一起。我不是在寻找任何人来回答我教授的问题,我只是想知道 OPC 和 DCOM 之间的关系,然后我可以弄清楚其余的。具体来说,我想知道:1.) 一个总是基于另一个 2.) 一个总是可以在没有另一个的情况下部署。

【问题讨论】:

【参考方案1】:

我的理解是 DCOM/COM/OLE 是在 Windows 中构建 OPC 标准(由接口定义为方法组的相互通信对象)的基础。换句话说,由对象、接口和方法组成的 OPC 可以并且已经构建了一个 DCOM,它是一种允许创建这些的 Windows 技术。

因此 OPC 可以用其他基板构建,但我不太熟悉,不知道它是否已经存在。对于非基于 Windows 的系统,我怀疑是的。

来自here

OPC 是工业领域的开放式连接 自动化和企业系统 支持行业。 通过确保互操作性 开放的创建和维护 标准规范。有 目前有七项标准 规格完成或在 发展。

具体来说:

OPC 是一系列标准 规格。第一标准 (最初简称为 OPC 规范,现在称为数据 访问规范)产生于 多方的合作 全球领先的自动化供应商 与微软合作。 最初基于微软的 OLE COM(组件对象模型)和 DCOM (分布式组件对象模型) 技术、规范 定义了一组标准的对象, 接口和方法用于 过程控制和制造 自动化应用程序,以方便 互操作性。 COM/DCOM 技术提供了框架 用于开发的软件产品。 现在有数百个 OPC 数据 访问服务器和客户端。

【讨论】:

这确实有助于清除它。我在 Wiki 上多次阅读了同样的信息,但由于某种原因它并没有深入了解。在牢记这些信息的同时,我会做更多的研究。谢谢。 如果您查看特定的 OPC 接口/方法并了解它在不同系统(包括 Windows)上的实现,可能会有所帮助。【参考方案2】:

原始 OPC 规范基于 COM,而不是 DCOM。这意味着服务器可以实现为不需要使用 DCOM 的进程内 COM 服务器。实际上,几乎所有经典的 OPC 产品都需要 DCOM。

2003 年,OPC 基金会发布了 XML-DA,它提供与 OPC DA 相同的功能,但使用 XML Web Services 而不是 DCOM。

下一代技术:OPC 统一架构 (UA) 于 2009 年发布,独立于传输技术。目前的实现支持通过 XML Web Services 和 UA TCP(OPC 基金会定义的二进制协议)进行通信。

更多信息可以在这里找到:opcfoundation.org/ua

【讨论】:

但是很多基于OPC的产品的厂商和用户经常试图绕过链中的DCOM环节;这简化了安装并消除了复杂的 DCOM 安全问题。通常,桥接进程将在与 OPC 服务器相同的节点上本地运行,一方面充当 OCP 客户端,另一方面使用一些更简单的基于 TCP 的协议接受客户端连接。也许这就是问题的意思。 或者换种说法:OPC和DCOM之间没有真正的联系,但是COM和DCOM之间有联系

以上是关于OPC与DCOM的关系的主要内容,如果未能解决你的问题,请参考以下文章

谁知道wincc opc server具体详细设置? 留下联系方式,教会200分奉上!

OPC和DCOM配置

Windows7 With SP1 网络 OPC 的 DCOM

Java语言开发OPC之配置软件KEPserverEX OPC和DOM配置

Wincc与ABB机器人本体进行OPC通讯问题,已经实现了WINCC与ABB机器人的IPS通讯!

《OPC服务器与客户程序开发指南》