问题标签 [modbus-tk]
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.
python - 是否可以并行运行以下 Web 查询?
我正在使用 Python 和modbus_tk 包来轮询n
PLC。每次轮询大约需要 5 秒。是否可以并行运行这些,以便无需n*5
几秒钟即可获取所有数据?
我当前的代码:
python - Modbus-tk CPU 负载降低
非常感谢您的回答。
我在哪里可以找到这个文件?
...通过以下方式修改“modbus_rtu.py”后...
我正在使用 Raspbian,试图在这些文件中查找并替换代码:
但它并没有减少 CPU 负载。
干杯。
python - 无法使用 Python 的 modbus_tk 连接到从站
我目前正在尝试开发一个使用 Modbus-RTU 协议的应用程序,我必须在 Python 2.7中使用modbus_tk 。
我应该使用来自另一个应用程序的代码位,该应用程序能够通过 modbus 与微控制器通信。当我运行以下代码时,它适用于该应用程序,但是当我在我的应用程序中运行相同的行时出现错误。
首先,我需要删除构造函数调用中的参数baudrate
,bytesize
等,因为它会出现如下错误:
但是当我们调用 to 时execute
,又出现了一个错误,我还无法解决:
我找到的唯一文档是:https ://github.com/Nobatek/modbus-tk/tree/master/docs ,但我不太了解它。如果有人可以首先向我解释这个错误的真正含义,以及我应该在哪里查看,我们将不胜感激。非常感谢你 !
python - 如何获取 modbus_tk master 的 IP?
我基于 modbus_tk(https://github.com/ljean/modbus-tk )编写了一个 slave.py(server )。然后,我用客户端工具连接slave,就OK了。现在,我想获得哪个主(客户端)访问我,我想获得源 IP 和端口。我在 TcpServer(server) 类 modbus_tcp.py 的函数 _do_run(self) 中找到关键点'client, address = self._sock.accept()'。我尝试了一些方法,但没有奏效。
奴隶.py
modbus_tcp.py
python-3.x - MODBUS-tk 从主机中的从机读取浮点值
我创建了 modbus slave 来将数据写入寄存器。我能够从从端写入浮点值和整数值。
在 modbus master 中,我只能访问整数值,但不能读取浮点值。
我经历了这个https://github.com/ljean/modbus-tk/issues/72但这并没有解决我的问题。
对于读取的整数值,我可以使用下面的代码并读取值。
但是对于浮点值,我同时使用了上面和下面的代码。
我在读取浮点数时出错,
unpack 需要一个长度为 4 的字节对象
python - Python:modbus_tk 在从属模式下没有响应
我正在尝试使用 modbus_tk 库在 python 中制作 Modbus-RTU 从站。下面是我试图让它工作的基本代码。
代码运行后,我正在从另一个主机执行一些读取查询(我可以在主机进行查询的 com 端口上监视),但从机没有对查询做出任何响应。
其他信息
有什么我想念的吗?或任何建议。
python - Modbus-tk RTU Slave 保持寄存器读取有符号整数
我使用 modbus-tk 创建了一个 modbus 从站,如下所示。我使用Simply modbus master 软件(http://www.simplymodbus.ca/RTUmaster.htm)作为master。如何设置从站以表示有符号整数而不是无符号整数。例如,当我发送 16 位数据时, (FC19) HEX 应该表示 -999 decimal ,但现在我得到 64537。
尝试使用此处的示例https://github.com/ljean/modbus-tk/blob/master/examples/tcpmaster_example.py。好像只对Master有效。
我得到了:
python - 如何使用 modbus-tk RTU (Python) 设置简单的从机和主机
我想通过 Modbus 协议在 Raspberry PI(从机)和我的 PC(主机)之间建立通信。目前,我正在使用modbus-tk
(python)来设置通信协议。
问题是主站无法从从站读取寄存器。我可以知道我的代码有什么问题吗?我很困惑。
我从 Slave 得到的错误是:
Handle request failed: Invalid CRC in request or Request length is invalid
我从大师那里得到的错误是:
ModbusInvalidResponseError
注意:目的是使用Master从slave读取数据。
这是奴隶的代码:
这是大师的代码:
这是我用来连接 Raspberry Pi 和我的 PC 的 USB-to-rs485 设备的数据表和图片:
https ://www.enika.cz/data/files/produkty/komponenty/mereni-a-规则/UT-890A%20User%20manual.pdf
https://c.76.my/Malaysia/ut-890-usb-to-rs485-converter-belco-1605-07-belco@2569.jpg
非常感谢您的帮助。
modbus - 自动发现网络中 modbus 设备的从设备 ID
通过广播机制获得有效的ip范围后如何确定连接到网络的设备是否为modbus设备或如何自动发现连接到网关的modbus设备的slave id?
python - 在 Linux 路由器上的 python 中使用 Modbus RTU 写入多个寄存器失败
我目前正在尝试在商业路由器(来自 Ursalink 的 UR71)和 Modbus RTU(来自 Schneider Electric 的 ZBRN2)之间建立 Modbus 通信。
UR71 路由器在 Linux OpenWRT LEDE-17.01 上运行 Python 是 v2.7.13 Python 使用 modbus-tk 0.5.7 和 pyserial 3.4
我的应用程序需要 modbus 读取 (FC03) 和 modbus 多次写入 (FC16)
问题是我成功地将我的计算机(Windows 10)作为 modbus 主机运行,但是当我切换到 UR71 作为 modbus 主机时,FC16 不再工作并发送:
我制作了一个小示例应用程序向您展示:
Modbus初始化如下:
UR71RTU 包含串行配置:
这导致:
Windows 中的相同代码导致:
我无法弄清楚会导致问题的原因。
- 我调查了超时(最多 10 秒)、inter_byte_timeouts 等,但如果它适用于 FC06,为什么它应该与 FC16 不同?
- 我用 minimummodbus lib 测试过,问题是一样的,所以我不认为错误来自 modbus-tk lib
我的想法已经用完了,如果有人已经遇到过此类问题,我将不胜感激。也许Linux和Windows上的串行端口存在一些我现在不知道的差异(但为什么FC06可以工作?)?
此致