org.openscada.opc.lib.da

时间: 2023-09-07 19:04:44 浏览: 83
org.openscada.opc.lib.da是一个基于Java的开放源代码软件库,用于远程访问OPC (OLE for Process Control)服务器。OPC是一种通信规范,允许不同厂商的设备和软件系统进行数据交换。 org.openscada.opc.lib.da提供了一组对OPC服务器的访问方法和功能,可以实现数据读取、写入、订阅和取消订阅等操作。使用这个库,开发人员可以编写Java应用程序来与OPC服务器进行通信,并获取、处理和控制实时数据。 该库的主要特点包括: 1. 基于高性能的异步通信机制,可以实现并行的数据访问和处理。 2. 支持对OPC服务器的所有标准操作,包括浏览和管理OPC服务器的数据点、组、标签等。 3. 提供了灵活的数据访问方法,可以根据需要进行同步或异步的数据读取和写入操作。 4. 支持数据订阅和取消订阅,实现实时数据的推送和更新。 5. 提供了异常处理机制,可以处理网络连接异常、OPC服务器错误等情况。 6. 支持使用用户名和密码进行安全认证,保证数据访问的安全性。 org.openscada.opc.lib.da可以与任何兼容OPC规范的服务器进行通信,无论是本地服务器还是远程服务器。通过这个库,开发人员可以方便地实现与各种设备和系统进行数据交换,包括传感器、PLC、SCADA系统等。 总之,org.openscada.opc.lib.da是一个强大的Java库,为开发人员提供了访问OPC服务器的功能,帮助他们在Java应用程序中实现数据读取、写入和控制操作。
相关问题

GodSharp.Opc.Da.OpcNetApi库opcda源码

以下是GodSharp.Opc.Da.OpcNetApi库中opcda的源码示例: ```csharp public class OpcDa : IDisposable { private const int ShutdownTimeout = 10000; private readonly object _lockObject = new object(); private readonly OpcServer _server; private readonly IOPCServer _opcServer; private readonly IConnectionPoint _connectionPoint; private readonly OPCShutdown _opcShutdown; private readonly Dictionary<int, OpcGroup> _groups = new Dictionary<int, OpcGroup>(); private int _groupId; private bool _disposed; public OpcDa(string host) { _server = new OpcServer(); _server.Connect(host); _opcServer = _server.GetOPCServer(); _opcShutdown = new OPCShutdown(this); var cpContainer = (IConnectionPointContainer)_opcServer; var cpGuid = typeof(IOPCShutdown).GUID; cpContainer.FindConnectionPoint(ref cpGuid, out _connectionPoint); _connectionPoint.Advise(_opcShutdown, out var cookie); } public void Dispose() { lock (_lockObject) { if (_disposed) { return; } _disposed = true; _connectionPoint.Unadvise(_opcShutdown.Cookie); foreach (var group in _groups.Values) { group.Dispose(); } _server.Disconnect(ShutdownTimeout); } } public OpcGroup AddGroup(string name, int updateRate) { lock (_lockObject) { var group = new OpcGroup(this, ++_groupId, name, updateRate); _groups.Add(group.GroupId, group); return group; } } public void RemoveGroup(OpcGroup group) { lock (_lockObject) { if (_groups.TryGetValue(group.GroupId, out var target)) { target.Dispose(); _groups.Remove(target.GroupId); } } } public IOPCItemProperties GetItemProperties() { _opcServer.QueryInterface(typeof(IOPCItemProperties).GUID, out var itemProperties); return (IOPCItemProperties)itemProperties; } public IOPCBrowseServerAddressSpace GetBrowser() { _opcServer.QueryInterface(typeof(IOPCBrowseServerAddressSpace).GUID, out var browser); return (IOPCBrowseServerAddressSpace)browser; } public void ShutdownRequest() { Dispose(); } internal IOPCServer OpcServer => _opcServer; internal void RemoveGroup(int groupId) { lock (_lockObject) { if (_groups.TryGetValue(groupId, out var target)) { target.Dispose(); _groups.Remove(target.GroupId); } } } private class OPCShutdown : IOPCShutdown { private readonly OpcDa _parent; public OPCShutdown(OpcDa parent) { _parent = parent; } public int Cookie { get; private set; } public void ShutdownRequest(string reason) { _parent.ShutdownRequest(); } } } ``` 该类提供了与OPC DA服务器通信的功能。它使用OpcServer对象连接到OPC服务器,并提供添加/删除组以及获取ItemProperties和Browser的功能。在Dispose方法中,它释放了与OPC服务器的连接并释放了所有组。 OPCShutdown类用于处理OPC服务器关闭请求。

org.eclipse.milo.opcua.sdk.client.api.nodes.NodeType对应的pom

`org.eclipse.milo.opcua.sdk.client.api.nodes.NodeType` 枚举类属于 `milo-sdk-client` 依赖,因此需要在 `pom.xml` 文件中添加以下依赖项: ```xml <dependency> <groupId>org.eclipse.milo</groupId> <artifactId>milo-sdk-client</artifactId> <version>0.6.4</version> </dependency> ``` 这个依赖包含了 `milo-opcua-sdk-client-api` 和 `milo-opcua-sdk-client` 等多个模块。如果你只需要 `org.eclipse.milo.opcua.sdk.client.api.nodes.NodeType` 类,可以添加以下依赖项: ```xml <dependency> <groupId>org.eclipse.milo</groupId> <artifactId>milo-opcua-sdk-client-api</artifactId> <version>0.6.4</version> </dependency> ``` 这个依赖只包含 `milo-opcua-sdk-client-api` 模块,可以避免不必要的依赖。希望这可以帮助到你。

相关推荐

最新推荐

recommend-type

OPC DA 到 OPC UA.pdf

OPC 实时数据访问规范(OPC DA)定义了包括数据值,更新时间与数据品质信息的相关 标准。 OPC 历史数据访问规范(OPC HDA)定义了查询、分析历史数据和含有时标的数据的方 法。 OPC 报警事件访问规范(OPC AE)定义...
recommend-type

WIN7系统下OPC DA协议WINCC通讯DCOM配置说明教程.pdf

基于win7系统的两台安装WINCC 7.4的工控机,通过OPC DA形式进行OPC通讯的教程,着重对两台机器的DCOM配置加以说明
recommend-type

Kepware使用教程 OPC DA Client

IOT开发:Kepware中OPC DA Client使用案列,详细介绍Kepware中如何进行设置新建Channel、设置Device、Kepware QC显示等3个过程
recommend-type

win7_win10_OPC发布 DCOM配置.doc

Win7、win10_OPC发布 DCOM配置 1、关闭防火墙 操作:控制面板--》所有控制面板项--》Windows防火墙 2、组件服务配置 操作:开始--》运行--》mmc comexp.msc /32 3、本地安全策略 控制面板——》所有控制面板项——》...
recommend-type

Intouch OI Gateway 连接 RSlinx OPC 步骤.docx

Intouch OI Gateway 连接 RSlinx OPC 步骤 非常详细 有截图有说明
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

SPDK_NVMF_DISCOVERY_NQN是什么 有什么作用

SPDK_NVMF_DISCOVERY_NQN 是 SPDK (Storage Performance Development Kit) 中用于查询 NVMf (Non-Volatile Memory express over Fabrics) 存储设备名称的协议。NVMf 是一种基于网络的存储协议,可用于连接远程非易失性内存存储器。 SPDK_NVMF_DISCOVERY_NQN 的作用是让存储应用程序能够通过 SPDK 查询 NVMf 存储设备的名称,以便能够访问这些存储设备。通过查询 NVMf 存储设备名称,存储应用程序可以获取必要的信息,例如存储设备的IP地址、端口号、名称等,以便能
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。