python - pymodbus 和 pymodbus3 模块有什么区别?

标签 python python-3.x pymodbus pymodbus3

希望你做得很好!我最近开始使用 python 进行 modbus 通信。我想澄清我的一些疑虑。

  1. 哪个模块更适合使用 Python 实现 modbus - minimalmodbus、pymodbus、pymodbus3 还是其他。
  2. 我正在使用 python3.4 但无法使用 pip 或任何方式安装 pymodbus 模块。所以我安装了pymodbus3
  3. 在使用 pymodbus3 模块时,我能够使用以下代码编写线圈:

    import pymodbus3
    import serial
    from pymodbus3.pdu import ModbusRequest
    from pymodbus3.client.sync import ModbusSerialClient as ModbusClient 
    from pymodbus3.transaction import ModbusRtuFramer
    from serial.tools.list_ports import comports
    
    client = ModbusClient(method = "rtu", port = 'COM4',stopbits = 1, bytesize = 8, parity = 'N', baudrate= 19200)
    connection = client.connect()
    client.write_coil(1000, 1, unit = 0x01)
    

读取线圈状态(函数 0x01):

result = client.read_coils(1000,1)
print(result)
client.close()

它返回 None。

或者写入注册读取也不行:

client.write_register(0, 1000, unit=0x01)
resu= client.read_holding_registers(0, 1, unit=0x01)
print(resu)
client.close()

欢迎积极回应!

最佳答案

这是一个相当古老的问题,但我想把这些信息放在那里以减少混淆。

pymodbus3pymodbus 的一个分支,在 pymodbus 支持 python3 之前创建。 pymodbus 现在完全支持 python3 并且 pymodbus3 不再维护并且没有原始版本的所有最新版本。

参见 https://github.com/uzumaxy/pymodbus3/issues/7了解详情。

关于python - pymodbus 和 pymodbus3 模块有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39269315/

相关文章:

python - Django 中的分页未按预期工作

python - 将字典复制到新变量中而不维护与前一个的链接

python - 使用子进程编译c++

python - Raspberry Pi 3B 上的 pymodbus 和电表连接错误

python - 部署了 rest-framework 的 django 时出错

python - 使用 Gitlab CI Runner 从 "cannot import name ' 获取错误 'robot' run_cli'

python-3.x - 类型错误 : 'function' object is not subscriptable in tensorflow

modbus - 我可以写入输入寄存器吗?通讯总线

python - 读/写时 modbus 错误无法连接到 ModbusTcpClient

python - 如何在 PyMongo 中删除 MongoDB 集合