点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我们无法将IoT网关边缘连接到我们的OPCUA服务器。
我们在OPCUA服务器上没有使用任何证书,而是在使用" FreeOPCUA" python库。
其他客户端可以正常连接。
我们遵循了本指南(摘自SAP的记录片 )并正确设置所有内容。
这是网关启动后收到的完整错误消息:
[DiscoveryManager] 错误(OpcUaServerBrowser:59)-由于{},创建客户端时出错 java.util.concurrent.ExecutionException:UaException:status = Bad_Timeout, 消息=超时等待确认 com.sap.iotservices.exceptions.IoTServicesException: java.util.concurrent.ExecutionException:UaException:status = Bad_Timeout, 消息=超时等待确认 在 com.sap.iotservices.gateway.protocol.opcua.OpcuaUtils.createClient(OpcuaUtils.java:608) 〜[gateway-opcua-4.22.0.jar :?] 在 com.sap.iotservices.gateway.protocol.opcua.OpcUaServerBrowser.buildServerStructure(OpcUaServerBrowser.java:57) [gateway-opcua-4.22.0.jar :?] 在 com.sap.iotservices.gateway.protocol.opcua.OpcuaUtils.creteOPCUaStructure(OpcuaUtils.java:166) [gateway-opcua- 4.22.0.jar :?] 在 com.sap.iotservices.gateway.protocol.opcua.OpcuaUtils.creteOPCUaStructure(OpcuaUtils.java:149) [gateway-opcua- 4.22.0.jar :?] 在com.sap.iotservices.gateway.protocol.opcua.OpcuaDiscoveryManager.initializeDiscoveryManager (OpcuaDiscoveryManager.java:44) [gateway-opcua-4.22.0.jar :?] 在 com.sap.iotservices.gateway.core.DiscoveryManager.run(DiscoveryManager.java:269) [gateway-core-4.22.0.jar :?] 在java.lang.Thread.run(Thread.java:748) [?:1.8.0_181] 造成原因: java.util.concurrent.ExecutionException:UaException:status = Bad_Timeout, 消息=超时等待确认 在 java.util.concurrent.CompletableFuture.reportGet(CompletableFuture.java:357) 〜[?:1.8.0_181] 在java.util.concurrent.CompletableFuture.get(CompletableFuture.java:1895) 〜[?:1.8.0_181] 在 com.sap.iotservices.gateway.protocol.opcua.OpcuaUtils.createClient(OpcuaUtils.java:582) 〜[gateway-opcua- 4.22.0.jar :?] ...另外6个 造成原因: org.eclipse.milo.opcua.stack.core.UaException:等待超时 确认 在 org.eclipse.milo.opcua.stack.client.handlers.UaTcpClientAcknowledgeHandler.lambda $ startHelloTimeout $ 4(UaTcpClientAcknowledgeHandler.java:156) 〜[stack-client-0.1.2.jar:0.1.2] 在io.netty.util.HashedWheelTimer $ HashedWheelTimeout.expire(HashedWheelTimer.java:588) 〜[netty-common-4.1.5.Final.jar:4.1.5.Final] 在 io.netty.util.HashedWheelTimer $ HashedWheelBucket.expireTimeouts(HashedWheelTimer.java:662) 〜[netty-common-4.1.5.Final.jar:4.1.5.Final] 在io.netty.util.HashedWheelTimer $ Worker.run(HashedWheelTimer.java:385) 〜[netty-common-4.1.5.Final.jar:4.1.5.Final] ...还有1个 [DiscoveryManager] WARN(OpcuaUtils:168)-问题在 与服务器通信。 不会创建任何设备! [DiscoveryManager] 警告(DiscoveryManager:47)-问题 为至少一台服务器创建OPCUA结构
有人对此有解决方案吗?
提前谢谢
巴斯蒂安
尊敬的会员,
您是否已在启动网关之前创建了数据模型?
您可以检查以下线程-
https://github.com/eclipse/milo/issues/215 。
您好,穆罕默德,谢谢您的回答。
是的,我在OPCUA服务器上设置了数据模型。 是否有"规则"? 我刚刚添加了一个带有一些变量的对象。
它看起来像这样:
对象-> MyObject ---> MyString,MyInt,MyFloat
还有一个"服务器"-对象节点,其中包含一些特定于服务器的信息(我没有创建该信息)。
我还在IoTStarterkit中运行了脚本,该脚本在IoT Service Cockpit中创建了数据模型。
服务器上的变量名是否需要与IoT Service Cockpit中的功能匹配?
巴斯蒂安·摩瑟(Bastian Moser):您的数据库还具有IOT绑定功能吗? 对 ? 。 到目前为止,我们可以跳过规则,而不是必需的。
" DB"是什么意思?
我们目前未使用任何数据库。
DB:数据库。
先生,我不确定您如何使用此服务。 或可能有很多使用方法。
我要做的是以下步骤-
我将SAP IOT用作服务。 意味着我创建了SAP登录ID DB(数据库),启用了IOT服务,并通过MQTT通过Node(或树莓派作为中间件)调用了传感器。 并成功运行我的方案。
在您的情况下,您有一个IOT边缘网关-再次出现错误-iotservices我相信这与服务有关。
您能解释更多吗?
当然。 我们正在使用一种几乎完全不同的方式来做到这一点。
AFAIK,我们使用的不是物联网服务,而是物联网服务主控室。 网关应该直接向它发送数据。
我们希望网关连接到我们的OPCUA服务器,因为传感器的所有值都存储在该服务器上(并且其他客户端将在该服务器上对其进行更改)。
因此,基本上我们的数据应该从opcua-client到ocpua-server; opcua服务器到网关; 物联网服务主控室的网关。
我们的服务器已经从其他客户端接收了数据,但这已经足够了。
一周热门 更多>