Learn how to use an Explicit Do-more client with an Explicit Do-more server and learn how to use the Do-more simulator to emulate either one in this brief hands on live demo/tutorial.
Our FREE Practical Guide to Programmable Logic Controllers eBook: https://www.automationdirect.com/ebooks/plc-handbook
In this video we’ll setup a Do-more controller as an EtherNet/IP Explicit Server and use another Do-more as the client to access the data that’s on that server. Instead of using two Do-mores, though, we’ll use a real Do-more for the Server and we’ll use the Do-more Simulator for the client. Let’s setup the Server on the real Do-more first. Here’s an empty project and I’m already connected to the real Do-more. As always we start with the system configuration. Under CPU configuration we see the IP Address is already setup – if it wasn’t we could just configure it here. We also need to enable the EtherNet/IP Server and click here to configure it. These defaults are fine for what we are doing. The key thing here is we can expose 8 different blocks of memory to the outside world. Let’s enable blocks one and five. We can make the block readable and/or writeable – we’ll leave ours set for both. Wwe can choose which memory elements we want to expose. How about V memory for this one, starting at element 80 and let’s expose – I don’t know - 10 of those. Down here it reminds me that those 10 elements run from V80 to V89 and it exposes 20 bytes of data since each V element is 2 bytes wide. Over here we see the Class, Instance and Attribute information our Client will need to access this data. Perfect. For block five, let’s expose some D memory and I don’t kow .. let’s say it starts at element 200 and we’ll expose five of those. Write this configuration out to the Do-more … and we now have a Do-more EtherNet/IP explicit Server that exposes 10 V memory locations and five D memory locations to any EtherNet/IP client out there. The client only needs to know this guy’s IP Address and the Class, Instance and Attribute of this block of memory. We’ll leave this copy of Do-more Designer up and running so we can keep an eye on the Server and start a new copy of Do-more Designer for the Simulated Client. We want this to be a simulated project, and we’ll go ahead and connect to the Simulator. We won’t actually be using is view of the simulator for this project so we’ll move that out of the way. Just know that we are connected to it just like a real Do-more and that we’ll be writing our project to it. You don’t treat the simulator any different than a real Do-more so once again, we start with the System Configuration. This IP Address shown here is just one of the IP addresses I have on tis computer. I actually have three NIC cards in this computer. Now it really doesn’t matter which one pops up here. Windows will route all of the IP traffic from the simulator to the correct port when the time comes. There is nothing else to do here or under I/O configuration – and of course, instead of the I/O usual configuration screen here, we just see a screen shot of the simulator since this is all the I/O there is in a simulator and you can’t change any of it. And there is nothing to do under module configuration since there aren’t any plug in modules in the simulator. Under Device configuration, we could use the built-in EtherNet/IP device, but it’s best to get in the habit of creating a new EtherNet/IP device for each piece of hardware – it simplifies the handling of the TCP/IP connections inside the Do-more. New Device, EtherNet/IP Client, Give it a name – we’ll call it Do-more Server. Easy. There’s nothing to do under I/O mappings or Memory configuration, so we’re done! So all we need to do here is drop an Explicit EtherNet/IP Instruction on a rung and fill in the blanks. We want to talk to our new Do-more server we just setup, and he is at this IP Address. Here’s the EtherNet/IP information we had from the V-Block memory we had on the server, we just enter that here … and we want to Get that block of memory from the server. We’ll enable the instruction on a contact edge and we’ll use these status bits. Let’s put those Server V memory locations into V memory here but let’s put that at V0 on this client. We’ll put the number of response byes received here and we expect a maximum of 10 V words which is 20 bytes. Accept that and add a contact to trigger it. Now to access the D-Memory block it’s the exact same thing. I’m going to copy this instruction, paste it here. Edit it. The only difference is this instance number has changed. Let’s go ahead and change the status bits, and let’s put that result in memory starting at D 100. The number of bytes read will be in D99. And we’re still expecting 20 bytes total. Accept that. Add a contact to trigger the instruction and write all of this out to the simulated Do-more. Let’s bring up a data view for the V-memory and enter its triggering contact, the first few elements – I’m using control return to do this quickly – and the number of bytes read. Let’s bring up another data view for the D-Memory. Add its contact, the first few elements of him, and the number of bytes read for that operation. Make sure we’re running and status is on. Switch over to the Server and modify the V-memory and the D-memory. Switch back to the Client and trigger the instruction to read those memory locations from the server. Sure enough we get exactly what we expect. Flip back over to the server, change the numbers. Flip back to the client, issue another read and again we see the expected result. Easy. Suppose we wanted this Simulated Client to write to the Do-more Server. How do we do that? We just go into this instruction, change this get to a set and pick the block of memory locations we want to send to the server. And if we want to expose more memory locations on the server, we just change the configuration. And remember – all we did to allow clients to access the Servers memory was enable the server back in the system configuration. Once we turn it on – we can forget about it – we don’t have to do anything – the Do-more takes care of all of the client requests for us in the background. The Do-more makes all of this so easy. And how cool is it that we can simulate one or even both ends of the EtherNet/IP messaging? Which means you can setup and configure both ends of an EtherNet/IP system with no hardware in hand. And yes, that simulator comes with the FREE Do-more Designer software – there is no extra charge for the simulator. If you have any questions, please contact AutomationDirect’s free award winning tech support during regular business hours. They will be happy to help. And don’t forget the forums! There are lots of folks there that love to share their years of experience. Just don’t post any questions directed at AutomationDirect’s support staff there – they don’t monitor the forums on a regular basis. Spend Less, Do more. With Automation Direct.