Siemens PLC Communication with I-Device

Siemens PLC Communication with I-Device

For a couple of recent projects I needed to transfer a few bytes between Siemens PLCs. I had used PUTs and GETs in the past, which I find very useful for sending large amounts of data. But if I only need to send a few bytes or speed is critical, setting up one of the PLCs as slave to the other PLC can be more efficient. Siemens makes this quick to do with I-Device, and I’ll show a couple of examples below.

S7-300 PLCs and Profibus, Both PLCs In The Same TIA Portal Project

When using I-Device for a Profibus connection, there will only by a single DP master and a single DP slave. First add the PLC that will be the master to the project, create a DP network, and add the master PLC to the DP network. Make sure that the operating mode of the master PLC’s Profibus interface is set to  “DP master”.


Add the slave PLC to the project, and change its operating mode to “DP slave”. Select its master, in this case “Master PLC.DP Interface_1”.


The slave PLC is now a DP slave to the master PLC. Keep in mind that the slave PLC will no longer be able communicate with other devices on the Profibus interface that is being used for I-Device communication.


In the properties of the Profibus interface properties the transfer areas can be defined. Click on the arrows to change the direction data is going. As with DP/DP couplers, be careful about sending momentary signals, because the other PLC may not have enough time to read the signal.



S7-300 PLCs and Profibus, both PLCs Not In The Same TIA Portal Project

I’ve worked on a project where the main control PLC needed to interface with equipment that had its own PLC. Unfortunately, the PLC I needed to interface with was programmed with Step7 5.5, and I could not easily integrate it into the main control PLC project. After sifting through some documentation provided by the equipment manufacturer, I found the PLC part number and how the IO needed to be mapped. I had not used this specific PLC as a slave before, so I needed to download and install the slave PLC GSD. They can both be found here. After the GSD is installed, drop the slave PLC into the Portal project. Assign the slave PLC to the master PLC network.


The project should now have a master PLC and the generic slave PLC..


Configuring the IO for a slave PLC that is not integrated into the project requires going to the device view of the slave PLC. Add modules to it the same way you would add modules to a remote I/O rack. Be sure to map the “modules” to match the slave PLC configuration in the other project.


S7-1500 PLCs and Profinet, Multiple Slave I-Devices With A Single Master PLC.

For a recent application, I-Device communication had three S7-1500 PLCs on the same Profinet network. One of the PLCs needed to communicate to the other two PLCs.

First add all three PLCs to the project and put them all on the same network.


In the operating mode of the Proinet interface for the slave PLCs, check “IO device” and select the master PLC for the assigned IO controller. The slave PLCs can now exchange data with the master PLC as if they were remote IO. The transfer areas are set up the same way as shown above for an integrated Profibus slave PLC.


A great feature of using I-Device communication with Profinet is that while a PLC can be a Profinet slave to another PLC, it can still be a Profinet master to drives and remote I/O racks using the same Profinet interface.


Hopefully, this will help you with future PLC to PLC communication!

Learn more about DMC's PLC programming services. Contact us to learn more.


robel medalla
# robel medalla
how about using S7-1200 as a slave,?
# giuseppe

thanks for the good article.

In the introduction you said that i-device is a good choice if time is critical.

I have to set up a big network (one master, 20 slaves, 8 slaves have in turn one slave each). The exchange of information would be few KB per cycle (50 ms cycle).

Could you tell me advantages of using Profinet i-device vs s7 protocol?

Thanks a lot,

Post a comment

Name (required)

Email (required)

Enter the code shown above: