gpt4 book ai didi

python - pymodbus 的问题

转载 作者:太空宇宙 更新时间:2023-11-03 20:08:14 25 4
gpt4 key购买 nike

我对 pymodbus 相当陌生,我正在尝试使用 pymodbus 读取协作机器人的保存寄存器以获取当前 z 坐标的值。此类信息位于 7053 地址。我查看了较旧的问题,但无法让我的代码工作:

from pymodbus.client.sync import ModbusTcpClient

host = '192.168.250.201' # Robot IP address
port = 502 # port

client = ModbusTcpClient(host, port)
client.connect()
request = client.read_holding_registers(
address=0x03, # The starting address to read from
count=4, # The number of registers to read
unit=1) # The slave unit this request is targeting
response = client.execute(request)
print(response.bits[0])
client.close()

我不断收到此错误消息:

ConnectionException: Modbus Error: [Connection] Failed to connect[ModbusTcpClient(192.168.250.201:502)]

我想我的代码一定有问题,或者可能有其他东西阻止我建立连接。有什么建议么?谢谢

最佳答案

您有几个小问题:

1) 您查询的寄存器地址似乎不正确,请仔细检查设备手册,看看您读取的地址是否正确,很可能您需要查询address=7053.

2) 您正在读取保持寄存器,但随后尝试以线圈(位)的形式打印该值。检查它们是否真的持有寄存器并使用 print(response.registers[0])

关于python - pymodbus 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58840615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com