How do you get an HMI (Main) to communicate with an HMI (Slave) through an Ethernet connection, when the HMI (Slave) is giving commands to a PLC through an RS-232 connection?
The HMI (Main) will not be able to give/read commands directly from the PLC through the HMI (Slave). Each HMI must have their unique IP address and the same submask protocol. For example, the HMI (Main) has an IP of 192.168.0.1, and the HMI (Slave) is set as 192.168.0.2, and their submask protocol is set as 255.255.255.0. When both the IP and the submask are set, communication between the two HMIs is established. The next step is to set the PLC control parameter into the HMI’s (Slave) internal parameter so that the HMI (Main) will be able to read it. The way to do this is to write a MOV command in the macro window of the HMI (Slave), e.g. $0 = {PLCLink}1@D0. In the HMI (Main) under communication settings > Ethernet, additional controller IP address of the HMI (Slave) needs to be stated first.
If we look at the relationship between the Modbus address and the HMI register:

For the HMI (Main) to read the internal register in the HMI (Slave), there is a special Modbus address. In this case to read $0 of the HMI (Slave), the Modbus address for the HMI (Main) to read will be W40001.