问题标签 [open62541]
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.
c++ - “... .exe hast stop working”只出现在我朋友的电脑上,但不在我的电脑上
我的程序的发布版本有问题。当我在我的电脑上启动它时,一切正常。没有例外,没有问题或任何其他阻止我使用该程序的东西。一旦我压缩 exe 及其所需的 DLL 并将其发送给朋友,当他尝试运行服务器时,他立即收到错误“.exe 已停止工作”。
顺便说一句,它是一个用“open62541”构建的 opc 服务器。运行时,它使用名为“Snap7”的库从 PLC 中检索值。是的,他和我位于同一个网络中,因此原因不可能是网络连接。
我们都在使用 Windows,我的 IDE 是 Visual Studio 2015。不幸的是,我不能在这里发布任何代码,因为它太多了。此外,我真的不知道要发布哪个代码,因为我不知道错误出现的位置和原因。
编辑:这是我得到异常的代码。调用“UA_Server_addVariableNode”时总是抛出它。
c - 多个定义,包括开源库(看似正确的链接器设置?)
我正在开发一个使用开源库的学习程序。它旨在在 Raspberry Pi(Raspbian Kernel)上运行。因为我打算也能够在 PLC 上加载它,所以我主要使用纯 C。库本身带有合适的头文件和 .c 文件。
当我在 Raspberry 上使用预安装的 GCC 编译器时,我的程序编译没有任何错误并且工作正常。现在我的问题来了:
我试图让这个项目使用安装了 MinGW 的 code::blocks IDE 在 Windows 上工作。我重新访问了该库并下载了 Windows 的 zip(显然是相同的头文件和 .c 文件,但还包括 .lib 和 .dll)。
我在项目中设置了搜索目录和链接器设置,并像往常一样将标题包含#include "header.h"
在相对路径中。它不能编译并且提供了很多multible definition
,first defined here
这通常表明错误的链接和包含。
当我试图识别其中一些定义时,我注意到导致错误的函数在 library.c 文件中定义了一次。在此 .c 文件的开头,它还包含一次标头。
简短的摘要:
这适用于 raspbian GCC:
但在 Windows IDE + MinGW 中出现错误
我错过了什么严重的事情吗?动态链接库只能由之后的可执行文件使用。我想也许libraby.c
会被library.lib
但如果我删除其中一个项目不知道这些功能。我还搜索了错误的内含物。我真的在这里知识的尽头,并且还搜索了对我有帮助的帖子,但这些帖子主要是“链接器路径在哪里”或“包含 .c 文件”。这似乎是一个我忽略的简单问题。
任何帮助都会得到帮助。如果需要,我会提供更多细节。谢谢!
编辑(2):
编辑 (3)
回答1!现在编译好了,谢谢大家。
client - 客户端如何从opcua服务器读取数组值
我一直在尝试使用open62541堆栈做一个简单的OPC UA 客户端服务器应用程序。我可以从 open62541 实现的服务器访问该值。但我需要知道, open62541 客户端如何解释/检索来自服务器的数组值?
例如:这就是我为单值所做的-
c - 多个节点在 open62541 中从客户端读取单个请求
谁能告诉我在 open62541 中对服务器的单个请求中读取多个节点的语法。
我一直在
UA_Client_readValueAttribute(client, UA_NODEID_STRING(1, "variable"), &value)
从 open62541 客户端到服务器进行一次读取请求。
open62541 - open62541 与 c95 的兼容性
我想为当前运行 c95 的嵌入式平台编写一个应用程序。open62541 向后兼容 c95 吗?
我目前正在寻找支持 opc ua 的硬件设备,并希望在选择使用 open62541 进行开发之前获得一些信息。
c - 在 open62541 中将内存变量从服务器发送到客户端
我正在尝试用 C 语言创建一个使用两种协议的桥:OPC-UA 和 MODBUS。
在客户端和网桥之间,我使用协议 open62541 来请求任何类型的一些数据。当网桥收到请求后,开始内存请求,从协议MODBUS 的网桥发送到MODBUS 服务器,该服务器应该发回那些请求的内存变量。
我的问题是我找不到任何方法来查看代码中服务器接收客户端请求的位置。
我需要找到如何将这些内存变量从服务器发送回客户端。
如果有人有解决方案,我会很高兴。
compiler-errors - open62541 Visual Studio 2017 错误,OPCUA
我正在尝试使用 Cmake 构建 open62541,为 VS 2017 生成文件。我有问题,
我正在尝试将我的 4Diac 控制系统连接到 UA 专家,该专家将用于向 JS 模拟器读取和写入数据。
我正在寻找答案,但没有找到任何令人满意的答案。我将非常感谢一些解决方案。
谢谢你。BR,阿山
c++ - 由于“没有合适的 UserTokenPolicy”,连接到 OpcUA-Server 失败
我是 OpcUA 的新手并使用 Open62541 v3.0 - rc2。
我正在尝试连接到 B&R 设备上的 OpcUA 服务器。
当我尝试连接到服务器(使用用户名和密码)时,我收到此消息"No suitable UserTokenPolicy found for the possible endpoints"
和此 return-value UA_STATUSCODE_BADINTERNALERROR
。
与UAExpert 的设备连接正常。
阿联酋专家的日志打印以下消息:
安全策略:' http: //opcfoundation.org/UA/SecurityPolicy#None '
为什么我无法使用以下代码连接到服务器?
UA_Client_getEndpoints() 给出以下结果:
open62541 - 如何通过“登录”用户设置不同的对象视图?
假设我有两个用户 - UserA 和 UserB。当 UserA 基于 open62541 连接到我的 OPC-UA 服务器时,我希望他看到:
当 UserB 连接时,我希望他看到:
可能吗?如果是这样,当我设置对象节点时我在哪里使用它
opc-ua - 无法从 open62541 服务器查询节点到 milo 客户端
我有一个用 open62541 实现的 OPC-UA 服务器。
我有一个用 milo 实现的 OPC-UA 客户端。
当我使用 open62541 客户端请求它的节点时,我的 open62541 服务器工作。
我的 milo 客户端能够从 milo 服务器请求节点。
我的 milo 客户端能够连接到我的 open62541 服务器,并检索信息,例如 PRODUCT_NAME。但它无法获取我在服务器上创建的任何节点。
你知道这是否是一个已知问题吗?你知道他们是否有什么特殊的配置吗?有人有代码工作的例子吗?