问题标签 [apache-plc4x]
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.
apache-plc4x - plc4x 挂起查询
我们正在尝试使用plc4x
(plc4j-driver-s7
,版本 0.7.0)从 Siemens S7 PLC 查询数据。
这是一个非常简单的例子。当我运行它时,它在执行查询时无限期挂起。
我不能 100% 确定地址是否正确。我可以假设它会在地址未知的情况下引发错误吗?或者它也会挂起?非常感谢任何关于如何追踪这一点的提示。
非常感谢!
apache-plc4x - 基于 TCP 的 Modbus RTU
我正在尝试使用 RTU over TCP 与 Modbus 从站通信,但它不起作用。我没有任何例外。程序似乎在等待响应并且没有抛出超时异常。
当我将 Modbus 从站更改为仅 TCP 时,它工作正常。我可以读取保持寄存器。PLC4X 是否支持基于 TCP 的 Modbus RTU?如果是,有什么例子吗?如果没有,您打算实施吗?
modbus - Plc4x 库 Modbus 串行 (RTU) 获取未检索数据
我正在尝试编写一个示例程序,以使用带有 apache plc4x 库的串行端口从 SHT20 温度传感器检索温度数据。
使用串行通信与设备建立连接。但它无法获取数据,而是连续打印以下警告消息。
调试器挂在下面的行:
以下日志连续打印。
使用 modpoll.exe 使用相同的 URL 数据(即波特率、stopBits 等),它可以工作并通过 RTU 返回数据。我不确定这里缺少什么。请在这里阐明一些观点。
apache-plc4x - plc4x 库中的字节序(大字节序/小字节序)支持
我想检查 plc4x modbus 库中是否支持 endianness(little endian/big endian) 以处理基于该的响应。如果存在,我找不到任何有关如何使用的文档或示例。
因此,如果可用,请在此处请求相同的一些链接。
java - 无法使用 Java 将字符串写入 S7-1500
我使用 plc4j 从 s7-1500 读取/写入字符串。我可以用语句读取字符串:
其中得到字符串“ hello world ”。但我不能用语句将字符串写入地址:
例外情况如下:
org.apache.commons.lang3.NotImplementedException:序列化字符串未实现 在 org.apache.plc4x.java.s7.utils.StaticHelper.serializeS7String(StaticHelper.java:196) 在 org.apache.plc4x.java.s7.readwrite.io.DataItemIO.staticSerialize(DataItemIO.java:418) 在 org .apache.plc4x.java.s7.readwrite.io.DataItemIO.staticSerialize(DataItemIO.java:275) 在 org.apache.plc4x.java.s7.readwrite.protocol.S7ProtocolLogic.serializePlcValue(S7ProtocolLogic.java:498) 在 org .apache.plc4x.java.s7.readwrite.protocol.S7ProtocolLogic.write(S7ProtocolLogic.java:245) 在 org.apache.plc4x.java.spi.optimizer.BaseOptimizer.lambda$optimizedWrite$2(BaseOptimizer.java:114) 在org.apache.plc4x.java.spi.optimizer.BaseOptimizer.send(BaseOptimizer.java:151) 在 org.apache.plc4x.java.spi.optimizer.BaseOptimizer.optimizedWrite(BaseOptimizer.java:114) 在 org.apache。 plc4x.java.spi.connection.AbstractPlcConnection.write(AbstractPlcConnection.java:159) 在 org.apache。plc4x.java.spi.messages.DefaultPlcWriteRequest.execute(DefaultPlcWriteRequest.java:65)
任何人,请给出一些想法。非常感谢。
apache-nifi - 我正在寻找如何在 NiFi 中使用 Plc4xSinkProcessor 的示例
由于Apache NiFi演练,我目前有 Plc4xSourceProcessor 在 NiFi 中工作 。我有来自 Modbus 从站到 Plc4xSourceProcessor 的 Modbus 数据。该处理器连接到 PutTcp 处理器,该处理器将其发送到另一个带有 ListenTcp 处理器的 NiFi 服务器,该处理器连接到 Plc4xSinkProcessor。在这一点上,我不确定要做什么或如何配置 Plc4xSinkProcesor。它应该连接到另一个 ModbusSlave 还是 ModbusPoll 应用程序?
java - PLC4X:S7 连接 NullPointerException
我想使用以下代码从带有 PLC4X 的 S7-300 中读取单个 DB 值:
但是我的代码在一些问题中运行。首先,我已经设置了 Remote Rack 、Remote Slot 和 Controller Type 的选项,但是当我运行代码时,控制台中的消息中会出现以下内容:
第二个问题分别。错误来了,当程序尝试读取 DB 值时:
pom.xml 的内容如下所示:
我已将版本从 plc4j 更改为其他一些版本,但问题仍然存在。
最后是控制台的完整输出:
我在 Windows 10 上使用 Netbeans 12.6。java 版本是 11.0.12。