Micro830 ModBus RTU Master configuration

NBlackwell

Member
Join Date
Aug 2019
Location
UK
Posts
4
Hello,

I am using the Micro830 (2080-LC30-24QWB) with the 2080-SERIALISOL in slot 1.

I am having an issue setting up the Micro830 to communicate on ModBus RTU master to my ModBus Slave simulator tool.

I have followed the ModBus guide and have got as far as the attached pics.

I am using a ModBus Slave simulator, and on this simulator I can see on the communications tab that send / receive traffic from the Micro830 as well as the Tx and Rx LED’s on my 485 to USB converter. So, I think I can say that comms is OK. However, I cant make the Micro830 (the Master) read any of the Modbus registers that I write to using the slave simulator.

My setup is as follows;

Micro830
ModBus Master RTU
9600, 8, 1 stop, no parity

The code is written as follows:
Using the MSG_MODBUS1 instruction;
Channel = 5 (as this is slot 1 for my 2080-SERIALISOL module)
Trigger = 1 (so continuously triggered)
Cmd = 3 (as I want to read holding registers (4xxxxx)
ElementCnt = 100 (not quite sure what this actually means, assume means read 100 holding registers)
Addr = 1 (as I want to start reading from 40,000)
Node = 1 (as slave address is 1)

Any help greatly appreciated
Thanks

ModBus1.PNG ModBus2.PNG ModBus3.PNG ModBus4.PNG ModBus5.PNG
 
I'm not familiar with the 2080 serial module however there are a couple of basics I'd look at. First is I'd start with 1 element. There's no need to complicate the communications by trying to read from or write to 100 registers. Get one working first and go from there. Next, I'd try starting with address 40001 and also try changing the simulator to PLC based addressing. It's good practice to only try one change at a time and I'd start with the PLC based addressing. The other thing to look at is the RS485 connection. Try reversing the lines. Different manufactures use different nomenclature so you can't trust that "TX" on one device is the same at "TX" on another device. Fortunately there is only two lines to play with so it's easy to try one or the other. It's worth noting that even though you are seeing data come in on the simulator doesn't mean the RS485 lines aren't reversed. Reversing the lines will invert the logic highs and lows and still look like data to the serial port. It won't be valid data but it will be data.
 
In the image you sent showing the VAR table the configuration word "Addr" is set to "10" not "1". That looks like to me that you are reading "40010" not "40001". If you are still reading 100 elements try changing words 9, 10 and 11 in the slave simulator and see if one of them gets a result in the Micro. It also looks like you aren't getting any error messages so it looks like it's reading something.
 
Hi Firejo,

I must admit I have tried pretty much every permutation I can think off, with no luck. I am in the process of giving up with the MSG_MODBUS1 and trying the RA_MBUS_RDWORDS from the example code instead.

Cheers
 

Similar Topics

Using a plug-in SERIALISOL module for RS232 Modbus RTU comms Initially had some success with communications to a remote RTU (data not correct but...
Replies
0
Views
991
Hi guys. I have a some-what noobish question. I have been doing light plc programing for the last year or so, mostly with descreate I/O's, simple...
Replies
6
Views
3,840
I have a AB Micro 830 PLC and Serialisol plugin for modbus communication. I have a pcb where multiple sensors' values are taken and stored in...
Replies
10
Views
5,459
Is it possible to access the Rockwell Micro800 fault codes using the Modbus port
Replies
1
Views
1,618
I was wondering if anyone has tied a Redlion device (modular controller or HMI) to the Micro830 PLC. I'm trying to get it working over Modbus...
Replies
4
Views
4,736
Back
Top Bottom