modbus multidrop rs485 network


Thread Starter


I'm trying to build a network Modbus RTU between
a Beijer Cimrex 69 HMI as master and three
Kollmorgen S600 Servostar Servodrives using a two
wire interface. The problem I have is the
communication is acheived only with one Servostar at the time.

Does someone know why?
Please explain in more detail the sequence of what is happening because it isn't clear exactly what your problem is.

FYI, a Modbus master can communicate to only one slave device at a time. To communicate to 3 devices, the master would have to query each in succession. Technically, querying one at a time constitutes "only one", which is essentially your description of your problem. So maybe Modbus is only performing as it should???

I've never used a Cimrex device--it looks similar to a Panelview but more versatile--but would have to comment that in addition to a Modbus system having only one Master, an RS485/2-wire scheme only runs at half-duplex, versus full-duplex of an RS422/4-wire scheme. This is going to slow you down even further at lower baud rates.

Beyond that, you may have an issue with the Cimrex modbus driver having some sort of limitation, or maybe the polling is not setup right.

We typically use Prosoft Modbus cards (old 3100-MCMs) in PLCs to run our modbus-type motor drives, and then interface our Operator terminals/HMIs all directly to the PLC. The PLC with a Prosoft card seems to be a good combination for us in its centralization, and has been very dependable.

Daniel Bjorkkvist

As David mentione the modbus network is only polling one slave at a time, but if you want all the nodes to let's say start or stop at the same time you should use the broadcast address 0.

Type in f.ex 0:00010 for a set bit on a touch key then will all the slaves read the telegram but none are allowed to respond.

The only delay you then got is due to the bus delay/cable length.