Hello and welcome to today's video in which we're going to look at PLC-PLC communication. Yay, a good topic. There's so much to learn about and today we will only talk about one way of doing it. There's many many more. They all have differences, they all have advantages, disadvantages.
Today we will talk about I.O. communication, about I.O. devices and I.O. controllers.
Whatever that is we will get to know in this video. Therefore I have prepared two PLCs. right two 1500 plc's this works with 1500s it works with 300s and it works with 1200s and also with 400 so it works with all siemens plcs of the s7 family with some restrictions it you cannot do it with older plc's they have to have a certain firmware version i will put the available firmware versions in the comments below or in the in the info box below um yeah um It's different for all types of devices. So it's not available for all PLCs because some cannot go up to that new firmware version.
You would have to get a new hardware. But it's pretty easy to check here in TIA Portal when you have your PLC drag and dropped into your project. I have two of those, as I said.
And I click on one of the PROFINET ports here in my network view and properties. There is something called operating mode. If the operating mode is not there, your PLC is not capable of doing it.
Depends on the firmware version. If you can upgrade it to a newer firmware version, maybe it will pop up there. But some of them just simply don't have it because it's new.
It's not that new of a process, but it's new for the PLCs here with the corresponding firmware version. Good. So much for the intro. I will put the necessary firmware versions in the box below. Yeah.
So I have my two PLCs here and I have one PLC, this one here. It looks like this. If I double click, this is the hardware I have.
You see, I've got the CPU and I've got some input module here. I've got an output module and more, right? And one input here, I have actually connected a push button. So for my first PLC, I do have, if I go to my taxi, I can go online. I have a push button.
This is a real push button. If I press it, you see it turns true, right? The signal turns true.
Now the task for now is... When I press this push button, it turns true on this PLC and I want to transfer the signal to the other PLC. So the other PLC will also get this. The easiest way would just be running a second wire to the other PLC and they both have this.
Since I do not want to run, let's see, since I do not want to run here 32 wires for each input one, that would be annoying. I want to do it with PROFINET. The same we can do with the outputs.
We can link them for both PLCs, but our task for now is I press the button here, the other PLC will realize it as well. Because, here's the thing, my second PLC here, it does not have any IOModules. It's just a CPU. It can calculate stuff, it can coordinate, it can do a lot, but it does not have any IOModules.
So how do I hook up a push button? It needs to be somewhere from the network, from the other PLC. That's our task.
and therefore uh already three minutes oh this is i hope to make it quick yeah therefore we have our devices and networks right our network view first thing of course those two need to be communicating we have on top here we have show address labels but i need to link them right and i have prepared it a little bit i want to put them in the same network so this here and this here they should be in the same network i can go network just drag and drop They should be in the same network. This network right now is this line. Pretty hard to see.
But it's this line. They are both in one network now. Good. That's the first part. That's the first part.
Now that they are both in one network, you can also see it with the Ethernet address here. This is in one network. They are in the same network. Now we need to assign. Somehow we need to assign some parameters.
Here's what we need to do. We do not need to configure anything for... the PLC that should receive the data, which is this one here. This one will receive the input. So the push button, it will receive that.
So we don't need to configure anything here. We need to do stuff on this side. This one should send stuff.
This one, the upper one, the big one here that receives the data is the so-called I.O. Oh, no, I forgot it. I.O.
device. No, device is I.O. controller. This one is our I.O. controller it's the boss it's the controller this one is our io device So this is like an extension of this one.
Therefore we need to go to this PLC and also actually checking the Ethernet port here. Where do we want this? I could also take this Ethernet port. But you see here it is actually not available.
Here we have the so-called operating mode. See it? It's an operating mode here.
Here we also have an operating mode. So I could also make this one the I.O. device. So now I want this one.
I select the Ethernet port that should... be the extension where i want to send data through i go to property properties general operating mode and i can say hey please be the io device right now this one knows hey i am the extension i am the extension of another controller right i should send data to another controller inputs and outputs that's why i owe it's not sending data it's sending input status and output status It doesn't send any memory or databases or so. It's right now just inputs and outputs. So now I turn it on, the I.O.
device, and it potentially sends data. What I need to select is now which one do you want to send the inputs and outputs to. As they are both here in one network, as I already have them connected, I can select it from the dropdown here. This is the second PLC. This is the second PLC.
I can see, okay, they are now linked here with... a with a connection right and you can also see how here if i click if i click on this you see this psc is selected indicating yes this is this is the controller this is the device right very good um we can also see it if i go to this window right to my communication controls window this is usually on the right side i have on the bottom because i like it bit more we have the so-called io communication if i now click on any of those plcs i can see a they have an io communication one of those is an i device intelligent io device this is my communication window we can see the communication partner uh yeah but i don't want it this is just for checking if i can if they have the communication good you Next thing that we want to do for this, still with the Ethernet port here, is down here I can send, hey, which data do you want to transfer? By the way, this I.O.
device, there's many different ones like an ET200 or just external decentralized periphery distributed I.O.s. There's many, many. Right now I'm using PLCs, right? There's many more.
If you use a PLC, this is a so-called I.O. device, intelligent I.O. device.
I.O. device. That's why it says I.O. iDevice communication here. Now what we need to do, I select my PSC, right?
I have my Ethernet port and down here in iDevice communication, I need to select an area. Let's click on here. I give it a name, push button.
This is what I want to transfer, the push button. Now what we need to do is, whoops, just a bit bigger. Now On this line, very hard to see, I can't zoom in. I'm sorry, but it is possible to see, I hope. This is my area, I just gave it a name, not so important.
The type is also not too important. You see, I can't even change it right now. Then we have the address in the I.O. controller. The I.O.
controller is this one here, right? Don't forget, this is the I.O. controller.
And a second is address in the I. device, right? So now I can send, if I click on the button here in the middle, you see the arrow.
I can change the direction. What we can do is now the following. I can send data from my IO. If the error points from the controller to the iDevice, I can send an output from the controller.
So this one has input digital outputs. A digital output from this controller would be connected to a digital input here on this controller. So we are really sending from an output to an input.
Like connecting a wire without connecting a wire right now. We, uh, yeah, or I can turn it around like this. I can send an output from my iDevice.
So an output from here, I can send to an input from here. This one does not have any input modules, but it still has the internal memory for inputs. So that still works. The only thing we need to select here is what do we actually want to send?
This here is a push button, right? This push button. Let's see this push button is connected to an input, right?
It is connected to an input. So input 1.0. How do I send an input? With I.O. devices, we don't really send this input.
We always send an output to an input. So we first have to transfer this to an output. So this is what I internally do. Oops, we don't need a new block. I just put it.
Best practice, we need a new block. I.O. communication. And here what I want to do is if the push button, I called it push button.
If the push button is pressed, please turn on an output. And now I take an output that I do not physically have, right? Output 100 per zero I use until output 3.7.
So I'm using output 100.0, which is inside the memory, but not physically available here. Not physically available here. So I'm just sending something from the internal memory. This is the output.
So I'm just transferring the push button that I press to an output bit. And this output bit, this is what I'm going to connect to the other PLC. So let's see here. What do I want to send? What do I want to send?
I want to send... From my iDevice output byte 100. This is where I have the push button signal. And it should go here to input 0. So it will go to 0, 0. That's it already.
So if I download now. First I also want to be able to see it here actually. Do I already have it?
Yeah. Push button and go here. Let me push that to the side here.
It is 1.0. Here I send it to input byte 0. I want to send it to input byte 1. Doesn't matter. That's just addressing. Let's download all of it.
This will take a moment now because now that I download my iDevice here, it will try to connect to the PLC, to the IO controller. So starting it. When I start now, it will take a moment.
It will take a moment. You will see it takes actually more than a moment. It takes like probably 30 seconds.
Maybe I should not have pressed that. Because right now, the iDevice, the left PLC here, the one that is the subordinate now, the one that wants to send the data to the controller, to the other controller, is checking, hey, can I find the other controller? Where is it?
Where is it? Here I am. I here am. It can't find it yet. Because I also have to download the program to the other controller.
So it will take a while now. So it wasn't smart starting it actually. I should have clicked on don't start it. Download the other PLC first. Start the other PLC.
Start my PLC. So it's just taking a while. There's no problem or so. It's just taking a while.
It's checking. It can't find it. It will go to error state.
It will still run the program. It will go to error state because hey I can't find it. But that's it.
It was to run. Now I can download the second PLC. Here we go. I download the second PLC. This would be way faster as you can see now.
Hopefully, maybe. Way faster. So here's the thing now.
I made a problem. I did not put it in my main here. Now I download and it will be way faster.
Please. yes here we go so here's the process now i press the push button right the push button is connected to input 1.0 which will turn on output 100.0 which is in my in this plc so i'm turning right now output 100.0 i turn on here because i have configured my i o device here right i have configured this as i o device and i want to send output byte 100. I'm sending this push button which is inside of output byte 100 because it's 100.0. I'm sending it here to input 1 and there it will be input 1.0. So this PLC should receive now the push button here as input 1.0.
So let's check this out. I go to my default tech tab which I have here. So if I go online here we should be able to see the button press.
You see it? You're true. This is now on this PLC. So I press a button.
This PLC receives it, puts it on an output bit, sends the output bit to this PLC. In this PLC, I can see the status. I can now work with the push button from the other PLC. I.O. devices.
Good topic. Very important topic. Easy done.
This works for inputs and outputs. As I said in the beginning, it doesn't work for all PLCs, but for many, many, many. Yeah, 15 minutes. I think that's enough. For I.O.
devices right now, if you've got any questions, just leave them in the comments below. If you have any remarks, also leave them in the comments below. Do not forget to like and subscribe and I will see you in the next video.
Bye.