pedrovg

Problem establishing connection over Python Modbus TCP to a Mitsubishi Inverter

2 posts in this topic

I am trying to establish a Modbus connection from a laptop to a Mitsubishi inverter (FR A-800 E series) (the manual for this connection can be found [here][1])

I am using pymodbus and I can establish a connection, but the problem comes when I try to read a register.

I know I am connection because doing something like:

from pymodbus.client import ModbusTcpClient

client = ModbusTcpClient('192.168.15.10', 502)

client.connect()

results in a

True

response. Also, if I just print `client` it returns the details of the connection, which makes me confident the connection is properly establish. But, whenever I try to read a register (which I am confident exists, since it appears in the manual) :

result=client.read_holding_registers(9,1,1)

print(result)

I would obtain:

Modbus Error: [Input/Output] Modbus Error: [Invalid Message] No response received, expected at least 8 bytes (0 received)

and if I try again,

Modbus Error: [Input/Output] No Response received from the remote unit/unable to decode response.

Does anyone have any idea? I have tried with a bunch of addresses for the registers, I have tried including not including the 1,1) part when reading the register and got no luck.

 

 

[1]: https://dl.mitsubishielectric.com/dl/fa/document/manual/inv/ib0600628eng/ib0600628engd.pdf)

Share this post


Link to post
Share on other sites

I think you address for the holding register is not correct.   It might be more like 

result=client.read_holding_registers(41009,1,1)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now