CALL NOWCALL NOWCALL NOWGATEWAY SELECTORCALL NOWGATEWAY SELECTORLEARN MORELEARN MORE PROCEED TO CHECK-OUT SUBSCRIBE TO OUR RSS FEED SEARCH GATEWAYS NOW SEND MESSAGE NEWSLETTER | SUBSCRIBESUBMIT CALL NOWCALL NOWCALL NOWGATEWAY SELECTORCALL NOWGATEWAY SELECTORLEARN MORELEARN MORE PROCEED TO CHECK-OUT SUBSCRIBE TO OUR RSS FEED SEARCH GATEWAYS NOW SEND MESSAGE NEWSLETTER | SUBSCRIBESUBMIT

Modbus - Multiple Masters of one slave

Multiple Clients of a Modbus slave

We are frequenty asked how you deal with a situation where you have more than one client for a slave(s). The Modbus spec does not support this but we have a solution.
 
The essence of the solution if to use a multi-port FieldServer. Connect each client to its own port and the slave(s) to thier own ports. Each client will see a single virtual slave(s) on its network. This not only solves the problem but is extremely efficient. Of course the FieldServer needs to be correctly configured.
 
In a situation like this we exploit the FieldServer technology known as ‘Port Expansion’
 
Figure 1: Normally it is not possible to connect two clients to the same slave. There are two primary reasons:
1) If you are using RS232 then there can only be two devices on the cable segment.
2) If you are using RS485 then the 2nd client will not know to proceess the poll from the 1st client. It will cause errors.
 


 
Click to enlarge
Figure 2: Using a FieldServer with an appropriate configuration solves this problem whether you are using RS232 otr RS485.
 

 
Click to enlarge
Figure 3: Each client is on its own port. Thus each client does not see poll messages from the other client. In this example client#1 sends a poll to the FieldServer. The is directed a specific slave address. When the poll arrives at the FieldServer, the FieldServer checks the address against its configuration. If there is no match then an exception response is sent. If there is a match the FieldServer determines the port that the matching slave is configured on. The poll message is then relayed to the slave port.
 

 
Click to enlarge
Figure 4: The slave responds. The FieldServer relays the response to client#1. The FieldServer also extracts the data from the response and stores in a temporary location (FieldServer calls that a cache block). The duration/expiry of the storage is configurable.
 

 
Click to enlarge
Figure 5: If any client requests the same data (client#1 or #2) and the data hasnt expired then the FieldServer responds with data from the temporary storage.
 

 
Click to enlarge
Figure 6: If any client requests different data or if the temporary data has expired then the match and relay process is repeated requesting the new data.
 

 
Click to enlarge
Figure 7: The slave responds, the response is relayed to the client doing the polling (Client#2 in this case) and the data is stored temporarily so that it is available to the other client.
 

 
Click to enlarge

   

Gateway Selector

Select your combination of protocols.
Protocol 1
Protocol 2

Contact Us

Contact us via phone (+1 866-383-1657) or leave a detailed message below for sales, support, or any other needs

*Required Field
I'd like to receive the newsletter. *Check email for confirmation.
*Required Field
Preferred Time To Be Contacted (PST)
8:00am - 12:00pm 12:00pm - 5:00pm