Modbus RTU : slave device listen responses of other slave devices

1.1k Views Asked by At

I would like that each slave device of my system knows the state of all others. A good way for me would be that each slave device listens to the response of the addressed device when a request has been send by the master device.

Is there a command in the standard protocol that permit this function?

1

There are 1 best solutions below

0
Tagli On

Modbus is designed as a master-slave (request-response) protocol and what you have asked is probably a bad idea to implement in Modbus.

Nevertheless, the data you seek is on the wire, and if you're the one who is programming/developing the slave devices, you can extract this data from the wire and use it as you wish. For example, you can intercept messages targeted to some select slaves by filtering the messages according to their IDs. But remember, you're not allowed to respond any message that belongs to some other slave.

Maybe you should consider using CAN Bus and a protocol based on it, like CANopen for example. It's suitable for publisher-subscriber communication model.

P.S. : I assumed Modbus is used over RS485 line. Modbus-TCP may have different capabilities & constraints and I don't know anything about it.