modbus doubt

S

Thread Starter

santhosh

Hai,
Let take one situation , that if modbus master send a query to slave device 1 (say),whether it has to wait for response from that slave for futher transactions (not only with that and also with any slave device),

suppose by using timeout concept , it may send queries to 3 slaves (say), if any two slaves gave response at a time then what will happen?

please answer these questions?

thanks and regards,
santhosh
 
D

Daniel Chartier

Hello santosh;

Look up Modbus standard protocol and telegram format: yes, the master must wait for a response from the slave before continuing. How long it will wait is a parameter you must setup in the master (also how many retries are required before detecting a connection error with a slave).

Therefore, only one slave at a time is allowed to repond to a master's request. So the situation that you decribe should never happen.

Hope this helps,
Daniel Chartier
 
L

Lynn A Linse

Modbus is strictly a half-duplex poll response.

So if master sends a request to slave #1 - it needs to wait for either a response from slave #1 or a timeout. Only after a response from slave #1 or a timeout can the master send a request to slave #2 or #3.

So for the master, at any time there is ONLY one outstanding request to one slave.

Modbus is NOT like DF1 (half-duplex) or Siemens protocols where the master can send requests to many slaves and then can poll each for a response in the future.

best regards
- LynnL, www.digi.com
 
Top