I want to automate ABB Trio 27 inverter with my PC. I am trying to read Modbus registers but no benefit.
The wiring scheme I am using a LAN cable as told in manual on point 3, 5, 7 and PMU A, and as well as tried it with A11. I connected my cable to RS485-RS232 converted and attached it to my laptop. Tried many Modbus software, but all Softwares give me timeout error. I want to read registers.
Your kind help will be highly appreciated.
Same settings is working fine for aurora. If I move lan cable to PC, then it works on Aurora.
I did everything what manual says
Sample message is:
05 03 01 2C 00 02 05 BA
My Salve ID is 5
1. >If I move lan cable to PC, then it works on Aurora.
That means your RS-232/RS-485 converter and PC serial port is working, right? This is when Aurora sofware communicates via the Trio's PC port.
A PC's serial port can not be shared by two different applications (or services) simultaneously. Make sure Aurora software is not running when you try your Modbus master using that PC serial port.
When you try communicating with the PMU port, make sure that you've configured the Trio's PMU port for Modbus RTU under settings.
2. Your Modbus poll message looks good but is it off by one register?
05 is the slave address, OK
03 is the function code for read Holding Register, OK
012C is a zero-based register address that is equivalent to 300 decimal.
If the register addresses are listed as one-based decimal values, starting at (4)0001 = 0000hex, then register (4)0300 = 012B, because zero based addresses are one less than one-based decimal addresses. (4)0301 decimal = 012C hex
0002 asks for two registers
05BA is the CRC
Neither the manual nor the Quick Start Guide provided Modbus registers, so I have no idea what register 300 decimal is.
3. Other generic Modbus RTU considerations:
- If you use the PMU port then the PMU port needs to be configured to "Modbus RTU"
- Make sure the Master is talking Modbus RTU, not Modbus ASCII.
- serial settings (which are very likely configurable on the Modbus master, but are probably default to correct settings in Aurora software)
Parity setting is not mentioned in the manual or quick start. Although the Modbus standard says every Modbus device must have Even parity, some do, some don't. You should probably experiment with both Even parity and no-parity (no-parity is quite common) because it is not clear what parity the Trio uses.
Baud rate on Trio has to match Master's baud rate (configured under 'settings')
if you use those RJ45 ports then you need to get the correct 485 lines broken out of out of the CAT cable/RJ45connector
- RS-485 driver lines: Tx/Rx (+)/(-)
There is no standardization in labeling RS-485 driver lines. Theoretically, the (+) driver line should connect to (+) driver line on the other end, (-) to (-). But some vendors label the (+) and (-) the opposite of other vendors. So when your serial settings match and you know you're polling a valid register and 485 still doesn't communicate, swap the (+) and (-) driver lines on one end to see if the labeling is a mismatch.
If you're communicating using Aurora via RS-485, then this is not likely a problem.