问题标签 [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 投票
1 回答
126 浏览

python - (, ProtocolError('无效数据或不支持的协议版本'),)

我正在尝试连接到 OPC DA 服务器,但出现以下错误:

我正在使用 python 3 和我的代码来连接它,如下所示:

启动脚本时,它直接向我抛出该错误,连接尝试执行此操作,因为如果我放置另一个端口,它会告诉我该端口未连接,但我不明白为什么它会出现此错误,我的依赖项这些是

有谁知道我该如何解决这个错误?非常感谢

0 投票
1 回答
46 浏览

database - 使用基于计时器的 gamma 脚本将数据从 Cogent Datahub 记录到数据库

你们能帮我写一个伽玛脚本来将数据记录到数据库表中吗?标签位于 Cogent Datahub 的 OPC DA 中创建的域内。唯一需要满足的条件是脚本应该每隔一秒记录域中的所有点及其值和时间戳。

0 投票
0 回答
362 浏览

python - Python - 使用 OpenOPC 从远程服务器读取 OPCDA

我对 OPCDA 和 OpenOPC 有很大的问题。我应该(必须)从远程服务器读取一组标签,我无法以任何方式访问机器。我只知道 IP 和 OPC 服务器名称。

使用此代码在本地测试 OpenOPC 一切正常。否则,使用远程主机名更改主机名无效,出现 0x800706BA 错误。

有人对此有任何想法吗?

由于无法访问服务器(设置为匿名登录),我已经尽可能地进行了 DCOM 配置。

有谁知道可能的解决方案的程序?

谢谢!

0 投票
1 回答
179 浏览

c# - EventHandler 不会在 .NET Core 辅助服务应用程序中触发

我正在尝试在 .NET Core 3.1 中使用工作服务模板创建 OPCDA C# 客户端。

我的目标是在 OPC DA 触发 DataChange 事件时读取 PLC 标记值。我创建的示例代码在控制台应用程序(.NET Core 3.1)中正确完成了这项工作,但是当我在 Worker Service App(.NET Core 3.1)中使用相同的代码时,我发现它正确连接到 OPC DA 服务器但 DataChange 事件不调用该方法。我尝试添加此代码

但它不会触发事件并且没有错误。

这是我的示例代码:

上面的代码适用于控制台应用程序。事件 groupRead.DataChange 不会触发“GroupRead_DataChanged”方法读取数据,没有错误/异常发生:

此代码行和以下方法读取项目值,我试图使其工作

我希望我已经解释了我要解决的问题。

感谢您提前提供的时间和解决方案!

0 投票
1 回答
170 浏览

c# - 如何确定什么样的 OPC 服务器并读取它的项目

我提供了 OPC 服务器的链接:http: //192.168.2.5 :54354并被要求读取项目值。我是 OPC 新手,我认为我的服务器是 OPC XML-DA,但是当我尝试示例代码时,它可以工作。但是当我替换我的服务器 URL 和项目名称时,它不起作用,服务器地址似乎缺少某些部分

这一项有效,但不适用于我的服务器 URL: http: //192.168.2.5 :54354 我不确定是什么/XmlDaSampleServer/Service.asmx意思,但我可以使用https://www.kassl.de/opc/explorer连接到我的服务器.shtml

0 投票
0 回答
87 浏览

opc - 从远程计算机使用 Traeger OPC DA

尝试使用 Traeger Opc.UaFx.Client.OpcClient 订阅远程 OPC 服务器上的项目时,我看到以下问题。读取工作正常(尽管速度很慢),这只是我看到问题的订阅。

服务器端身份验证级别策略不允许来自地址 YYY.YYY.YYY.Y 的用户 SID (SXX-XX-XXXXXXXXXX-XXXXXXXXXX-XXXXXXXX-XXX) 激活 DCOM 服务器。请在客户端应用程序中将激活认证级别至少提高到 RPC_C_AUTHN_LEVEL_PKT_INTEGRITY。

在 OPC Server 上本地运行应用程序时,订阅工作没有问题。如何配置我的 .NET 应用程序以提供请求的身份验证级别?

0 投票
0 回答
61 浏览

c# - 使用 TitaniumAS ASP.NET Core 连接到 opc da 服务器和浏览节点

我在使用标准 opc da 连接和浏览我的 opc 服务器时遇到问题。这是我创建的用于处理连接和浏览数据的类:

我在控制台中遇到的第一个错误Server.Connect()如下:System.Runtime.InteropServices.ExternalException (0x80040154): CoCreateInstanceEx: Class not registered at TitaniumAS.Opc.Client.Interop.System.Com.CreateInstance(Guid clsid, String host, NetworkCredential credential) at TitaniumAS.Opc.Client.Interop.System.Com.CreateInstanceWithBlanket(Guid clsid, String host, NetworkCredential credential, ComProxyBlanket comProx)...

(编辑:由第一个错误引起)第二个错误在Browse()函数中引发OpcDaBrowseElement[] elements = browser.GetElements(null);。错误看起来像这样:System.AggregateException: 'no configuration section <common/logging> found - suppres(Browser isn't attached to com object.)'

我正在关注此处找到的 GitHub 上的库文档。我不明白我应该如何从这里继续。

0 投票
0 回答
73 浏览

opc - 远程 OPC 连接错误代码 0x80070005。E_ACCESSDENIED

我正在尝试连接到位于本地网络上的远程计算机上的 OPC HDA 服务器(Proficy Historian)。客户端将是 Ignition SCADA,但我正在使用免费版本的 OPC Expert 进行调试。在服务器机器上使用 OPC Expert 工作正常,我能够读取数据。

在客户端计算机上,我收到错误 0x80040154 REGDB_E_CLASSNOTREG(未注册类)。我不相信它与 DCOM 权限有关。以前,我遇到拒绝访问错误,但当我更改 DCOM 权限时,该错误就消失了。

OPC 专家建议在服务器机器上禁用和重新启用 OPC 功能。我已经做了几次没有任何运气。我还在两台机器上重新安装了 OPC Core 工具,但没有成功。

OPC 专家消息