问题标签 [opc-da]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
805 浏览

java - 使用 Utgard 连接到 kepware OPC DA

我正在使用下面的代码来建立从 UTGARD 到 Kepware V6 OPC DA 的连接。

我想从kepServer获取IOT网关中所有参数的数据,

在此处输入图像描述

但是为了测试它,我只提到了一个参数名称 => Simulation Examples.Functions.Ramp1

我得到这样的输出

我是 UTGARD 代码的新手。我无法理解代码中有什么问题以及为什么会出现此错误:

00000005:未知错误(00000005)

0 投票
1 回答
204 浏览

java - 如何通过 Utgard 批量访问 OPC DA 服务器数据(一次 100 个信号)?

我在 Utgard 文档中找到了通过定义它们的回调函数来单独访问信号的代码。

但是,在我的应用程序中,我需要以 1000 秒的顺序获取信号。因此,定义 1000 个回调函数并不是处理如此大量信号的好方法。

他们有什么方法可以在单个回调函数中获取所有 1000 个信号的值吗?

请提出您的意见/意见并启发我。谢谢 !

0 投票
1 回答
463 浏览

c# - 寻求有关从 OPC 服务器获取实际值的帮助

我正在使用现有的 C# 程序通过 Kepserver 与 PLC 通信(我知道 PLC 和 Kepserver 方面,但在 C# 上是新手)。我不断将“Opc.Da.Item”作为值(不是实际的 PLC 值)。我知道这可能是一个基本问题,但是我从哪里得到实际值(我在最后一行逻辑中放了什么)?谢谢你的帮助。

这就是从 OPC 读取数据的其他部分的方式,但我似乎看不出我做错了什么。

我终于回到了这个问题,但仍然有问题。通过下面添加的方法,我在 results[0].value 中得到了一个空值。

我希望该值为 9999999,但我得到 Opc.Da.Item。

0 投票
1 回答
54 浏览

c# - 如何断开 RSLinx OPC 服务器?

我使用 Kepware 的 Clientace 与 RSLinx OPC Server 进行通信。但是,我无法断开 RSLinx OPC Server。当我不使用 Parallel.Foreach 时,我可以断开服务器。但是,当我使用 Parallel.Foreach 时,我无法断开连接。我没有收到 Kepware 的 Clientace 的回复。如何断开服务器?

0 投票
1 回答
360 浏览

c# - OPC dll - 如何批量检索标签值

我正在使用 带有 C# .NET 的OPCSiemensDAAutomation dll 从 OPC Server 检索标签的值。我设法使用 QueryAvailableProperties()和 GetItemProperties()检索值,但目标是检索每个请求的 500k 个标签值。

我已经用 100 个标签进行了测试,代码在 45 秒内完成,多线程导致 100 个标签的 30 秒小幅改进。以当前速度达到目标标签量需要 4 个多小时。有什么方法可以批量检索标签值并具有更好的性能?谢谢。

0 投票
1 回答
2019 浏览

python - 如何将数据从 python 传输到 opc da 服务器?

我在 Python 中编写了一个代码。我想将各自的输出传输到 OPC DA 服务器,以便客户端可以从资源管理器访问它。我可以创建一个空的配置别名,我可以用我的值填充它,然后显示它或任何类似的逻辑简单解决方案?我想出的唯一方法是将输出数据传输到模拟项目,但这并不是真正的解决方案,因为我只想显示我的数据..

0 投票
1 回答
153 浏览

matlab - matlab deploytool 生成的独立应用程序/使用 OPC 编译在主机系统中失败

我的 matlab 应用程序通过提供输入和获取输出与 dymola 软件(用于动态建模/模拟/计算)进行通信。在 Matlab 命令窗口中一切正常。在 matlab 中开发的独立应用程序(使用应用程序编译器)在与其开发的系统相同的系统中运行良好。一旦我将应用程序(使用 matlab 运行时)安装到没有完整安装 matlab 的主机系统中,OPC 代码将失败. * 开发/编译的代码:Windows 10 Pro,* 部署到/主机系统:Windows 10 Pro,* Matlab 版本 2017b * OPC 工具箱版本 4.0.4 * Matlab 运行时 9.3

OPC 代码片段如下:

下面给出的输出来自在主机系统中从命令行运行生成的 exe 文件。它失败并出现错误:

在取消注释该行时opcregister('install') ,我收到以下错误(请注意我正在从命令行运行 exe):

将行设为:opcregister('install','-silent') 错误:

比较一下,这是我在系统中得到的输出,其中开发和编译了代码: OPC 工作正常,将服务器名称作为输出

它在开发人员系统中运行良好,但在主机系统中失败。

0 投票
1 回答
590 浏览

c# - SafeArrayTypeMismatchException:指定的数组不是预期的类型

我正在尝试从 OPC DA 服务器读取数据。我正在使用方法 SyncRead SyncRead(short Source, int NumItems, ref Array ServerHandles, out Array Values, out Array Errors, out object Qualities, out object TimeStamps); 问题是我不确切知道参数值数组的类型。我正在这样做

当我启动应用程序时,我收到错误: System.Runtime.InteropServices.SafeArrayTypeMismatchException:指定的数组不是预期的类型

任何人都可以帮助我吗?

谢谢

0 投票
2 回答
162 浏览

c# - E_FAIL IOPCSyncIO2.ReadMaxAge

我正在使用 OpcNetApi.dll 驱动程序连接 Softing opc 服务器,并且我在 Windows 服务中每秒从订阅读取方法读取几个标签,最初它读取的值可以持续几个小时,比如 10 或 15 小时,但后来我不断得到这个 ReadMaxAge每次读取都例外,当我重新启动服务器时,它又开始正常工作了几个小时。我试图寻找原因,但没有运气。

有谁知道 ReadMaxAge 异常请帮忙。

0 投票
1 回答
174 浏览

apache-kafka - 用于 Kafka 的 OPC-da 连接器 - 可用的解决方案

有没有开箱即用的解决方案将 opc-da 连接到 Kafka?我正在寻找从 opc-da 服务器获取数据到 apache Flink