Modbus Master-to-Master Communication



A large oil and natural gas platform in the North Sea was expanding their facility capabilities by adding a massive system module (over 1.5 million lbs) to the existing platform infrastructure. In order for the two systems to communicate seamlessly with one another, the proper communication channels needed to be established.

Control systems on each structure were configured to communicate with each other through a serial Modbus RTU RS-232 or RS-485 channel. However, the Modbus device configuration on each side was designed to communicate as a master, while traditional Modbus communication takes place between a master and a slave.

Each structure’s respective developers had invested substantial resources into their control systems, so the systems integrator needed to find a way to overcome this obstacle by converting one configuration to act as a slave in the most cost-effective way possible – or by making two Modbus master devices communicate with one another. Many industry experts have expressed that master-to-master Modbus communication is impossible, but Comtrol had already developed an innovative solution to allow a Modbus master communicate with another master.

The systems integrator assigned to this task researched master-to-master connectivity and ultimately discovered the DeviceMaster UP’s capabilities on a respected online forum. Hesitantly beginning the application, the integrator was highly satisfied with the end result.

As seen in the diagram, Comtrol was able to fix this integrator’s problem using the DeviceMaster UP 2-Port 2E Modbus gateway. By running Modbus Router firmware, an internal slave that resides in RAM is provided that responds to commands from any properly connected external Master. The connected Master(s) can be serial or Ethernet based, and there can be 2 of them, a dozen, or more than 50. Each Master can read or write data into or out of holding registers or coils. For memory management and accessibility convenience, the slave memory is divided into 8 blocks of 200 registers, and 8 blocks of 160 coils for a total of 1600 holding registers and 1280 coils. By default, the slave ID is 252 but it can be customized to any valid Modbus slave ID (1-255.) Present values for all the registers and coils can be viewed or cleared by the user directly from the embedded web page, providing a convenient way to monitor the system or determine that a write was successful even with only one Master (writing) connected. The Modbus Router firmware was developed to provide innovative network-wide Modbus connectivity from a wide variety of Modbus masters to a wide variety of local and remote Modbus slaves. Advanced features include the above-described master-to-master communication and also private serial bus connectivity, write protection, and device ID aliasing. With simplified configuration pages and advanced routing, Modbus Router provides unmatched Modbus connectivity.

*The Modbus/TCP firmware was developed for the original DeviceMaster UP Modbus application.