MODBUS REDUNDANCY MGATE 3170

Hello, we have a DCS that take the MODBUS DATA (RS232) via a Gateway (MOXA 3170), the Modbus TCP slave has two controllers, when the primary is working the DCS is getting the data, but when the primary fail the DCS is not getting the data since we configured only one IP address ( Primary one) on the MOXA 3170 and there is no way on how to add a second IP, in case if we provide a second moxa 3170 to get the redundancy, does someone know if we have a device that will check if the modbus link is broken the device will switch to the second mgate ( new primary controller ) ?
 
I'm trying to understand your situation. Here's what I gather from your post.

Your DCS communicates Modbus RTU (or ASCII) via RS-232. You have a Modbus/TCP Server (Slave) device that exposes a primary controller at one IP address and a secondary controller at another IP address. When the primary controller fails, you want to switch over to using the secondary controller. Is this correct? If not, please provide a diagram of your application.

The Moxa 3170 should support communicating with multiple IP addresses. You would, however, need to target two different slave addresses from your DCS system - one for the primary and one for the secondary. The Moxa will route these messages for different slave addresses on the RS-232 side to different IP addresses on the Ethernet side.

If my above understanding is correct, you could implement this fail-over logic directly in your DCS. For example, it could commnicate with the primary controller at slave address 1. If the DCS detects a number of consecutive communication errors (timeouts), then it should switch over to communicating with the secondary controller at slave address 2.
 
Hello, as described before, the DCS is communicating with our system via a MGATE 3170 with one serial cable, I am able to add a second slave with the second IP address of our system in the mgate but with a different slave ID, and the pb is that in our system there is no way on how to add a second slave ID on the already added redundant controllers in the software, I was thinking of adding a second MGATE for a second MODBUS route straight to the DCS but the client has no spare DB25 port ? is there any solution on how to use two serial ports ( multidrop) between two mgates ( to get one serial port) to send the MB data in one cable ?
 

Attachments

the pb is that in our system there is no way on how to add a second slave ID on the already added redundant controllers in the software, I was thinking of adding a second MGATE for a second MODBUS route straight to the DCS but the client has no spare DB25 port ? is there any solution on how to use two serial ports ( multidrop) between two mgates ( to get one serial port) to send the MB data in one cable ?
If you can't add a second slave ID, I don't see how adding a second MGATE helps. All you would be doing is multi-dropping two MGATE's. However, a single MGATE already has the ability to support multiple "virtual" Modbus devices. There is no difference between one MGATE routing two slave ID's compared to two MGATE's, each routing one slave ID.

It seems that you are saying it is not possible for you to modify the DCS software to target two slaves and perform fail-over logic to switch between the two slaves (although this would be the easiest method to achieve what you're trying to do). Therefore, you need to have this logic in another device. I don't know if the MGATE is capable of dynamic routing such as this. I recommend contacting MOXA technical support about this.

If the MOXA cannot perform this fail-over logic, you could do it using ICC's ETH-1000 gateway and its Database Logic feature. Essentially, you would configure the ETH-1000 as a single Modbus RTU slave device, and it would communicate with both the primary and secondary Modbus/TCP controllers. The Database Logic would dynamically copy the data from the primary controller to the Modbus RTU slave's registers. If the gateway detects a communication issue with the primary controller, the Database Logic would switch to copying the secondary controller's data to the Modbus RTU slave's registers. Details on the ETH-1000 can be found here:
http://www.iccdesigns.com/millennium-series/10-eth-1000.html

If you are interested in using the ETH-1000 for this application, please contact ICC technical support by submitting a support ticket here:
https://www.iccdesigns.com/hesk/
 
Thread starter Similar threads Forum Replies Date
J Modbus 1
M Modbus 0
M Modbus 0
S Modbus 0
R Modbus 2
Top