Pymodbus: Request Creation And Response Receiving
Can anyone explain how to create the request and get the response in right way using pymodbus via Modbus TCP/IP? I have the PLC which I want to use as slave and PC - as master. I t
Solution 1:
Set unit
argument and use the print(request.registers)
instead of print(request)
.
Here's an example:
request = client.read_holding_registers(4138, 1, unit=1) # Set unit argument.
if not request.isError():
'''isError() method implemented in pymodbus 1.4.0 and above'''
print(request.registers) # Your problem is here.
else:
# Do stuff for error handling.
print('Error message: {}'.format(request))
Solution 2:
You could execute dir(response)
to check what the response is composed of but if pymodbus TCP master is similar to RTU serial master implementation then the data is available in Registers field so try to print response.Registers instead of response. The response.Registers
should be a one-element array containing the value of register your requested for reading.
Post a Comment for "Pymodbus: Request Creation And Response Receiving"