无法通过TCP连接到modbus RTU。怎么了?

时间:2018-02-14 21:33:39

标签: python modbus

证明该设备正在运行:./modpoll -m enc -p4660 -t4:float -r60 -a3 192.168.1.1

Protocol configuration: Encapsulated RTU over TCP
Slave configuration...: address = 3, start reference = 60, count = 1
Communication.........: 192.168.1.1, port 4660, t/o 1.00 s, poll rate 1000 ms
Data type.............: 32-bit float, output (holding) register table

TRACELOG: Set poll delay 0
TRACELOG: Set port 4660
TRACELOG: Open connection to 192.168.1.1
TRACELOG: Configuration: 1000, 1000, 0
-- Polling slave... (Ctrl-C to stop)
TRACELOG: Read multiple floats 3 60
TRACELOG: Send(6): 03 03 00 3B 00 02 
TRACELOG: Recv(9): 03 03 04 6E 08 42 F7 35 FF 
[60]: 123.714905

以及我如何尝试与pymodbus库建立连接:

from pymodbus.client.sync import ModbusTcpClient
from pymodbus.transaction import ModbusRtuFramer

ModbusTcpClient(host='192.168.1.1', port=4660, framer=ModbusRtuFramer, timeout=5)
client.connect() # returns True
client.read_holding_registers(60, count=3, unit=0x03)

得到这个结果:

pymodbus.exceptions.ConnectionException: Modbus Error: [Connection] 192.168.1.1:4660
Modbus Error: [Connection] 192.168.1.1:4660

我做错了什么?

0 个答案:

没有答案