ControlLogix Keyence Ethernet/IP

5 posts in this topic

I'm attempting to establish implicit communications using a 1756-L71 as the Scanner and a Keyence KV-5500 as the Target. Keyence defines a connection as Input Only and configurable size. I was successful in connecting an Omron NJ501 as the Scanner using the Keyence EDS file. Omron displays the defined connection after importing the EDS file. I imported the EDS file using Rockwell's EDS Hardware Installation Tool. Upon creating the module in Studio 5000 I'm unable to see the connection that Keyence defines.

Is there a Rockwell setting that I'm missing? Is there an alternative to importing the EDS file? I don't have RSNetworx installed. Is it worth trying?



Second question. The defined connection in the Keyence is an implicit Input Only as opposed to Exclusive Owner. I can choose Tag type or Instance ID type. If I attempt this with the ControlLogix GENERIC ETHERNET module, How can I set it to Input Only?


Share this post

Link to post
Share on other sites

Not sure this is going to help, but...

I created an L71 program at v28 (Studio 5000) with an ENBT.  When I added the module definition for a Keyence XG-8000/7000 (sorry I don't have the add-on profile for the KV-5500), I find in the Module Definition a Name of Class1 with Input and Output files of 496 SINT each.  When I click on Class1, I then see an option for Class1 (Input Only).  After selection, the connection shows Input:496 SINT and the Output:0 SINT.  After completing the addition of the Module, I got new definitions for Datatypes under the Module-Defined section.

Getting the feeling that the installation of your Add-On Profile and it's Module-Defined Data Type is not correct or didn't register correctly.

I've used many Keyence Vision systems, over the years, connected to both CompactLogix and ControlLogix.  I honestly don't remember using anything other than a Generic EtherNet Module definition.  The only thing you would need to find out is the instance and size.  I think your picture shows Instance 100 with size of 200 SINT.  You might still need to define the instances for the output and configuration but with 0 SINT.

Usually, Keyence has a manual for this.

One other idea, if the L71 and the KV-5500 are both online and you can see them, I'm wondering if the "Module Discovery" option might help.  This assumes that the EDS for the KV-5500 is properly registered with RSLinx.

Edited by pcmccartney1

Share this post

Link to post
Share on other sites

Thanks for the response and insight. I'm familiar with the XG as well. I really like that you can define your I/O then it creates a custom EDS file for your application. I've used this flawlessly with Omron's CJ and NJ. I've never tried with Rockwell. Anyway, the differences are, the XG is designed to be a Target in the EIP world. I'm sure this was tested on various PLC manufacturers. I believe they even have examples for Rockwell in the manual.

The KV-5500 does a good manual with very bad translations in it. The Input Only instance is defined and specified. The KV series PLCs are not supported in the US so getting help with this is difficult. I have some colleagues in Japan but they don't know Rockwell at all. Also, the KV is designed mainly to be an Originator. As with most manufacturers, they don't serve a lot of Implicit instances so I'm stuck with one (the Input Only).

Ruling out the use of the EDS file, I decided to try using the Generic EtherNet Module. I cannot figure out how to set it up for Input Only. Setting Output to zero is invalid.

Module Discovery does the same thing as adding it manually. <No valid connections in EDS file.>

As yet another option, I can set up Produced tags in the KV. I'm messing around with that now. I'm having trouble with the connection path. This is why I really wanted to get it added to the tree. Much easier. I know it will communicate. I installed RSNetWorx for Ethernet/IP and I was able to send it Explicit messages via the Class Instance Editor.

Share this post

Link to post
Share on other sites

Outside shot here...Does the Omron ENet Configurator create a "better" EDS?

Interesting that it is uni-directional.  So you are basically doing "read only" in the PLC.  You would have no ability to change parameters or programs.

Not having seen the Keyence programming software, does it have an ability to "produce" tags?  If so, then you would still have to add some sort of object (Keyence or Generic) to the tree to setup tagging on the PLC side to read into or "consume".

What about an explicit message to read the array?  Not sure how critical your cycle rate is and the inherit latency of the data requirements. I think back to a project where I had no other choice but to do explicit read and writes to a series of Parker servos via DeviceNet with a machine cycle rate of 180 PPM.  It worked, wasn't pretty, hard to debug, but...

Share this post

Link to post
Share on other sites

The answer to my second question is quite silly actually. When choosing the Comm Format there are options in the drop down for "Input Data". Not sure how I missed that before. In any case, I still didn't get it to work.

On ‎2‎/‎22‎/‎2019 at 10:24 AM, pcmccartney1 said:

Interesting that it is uni-directional.  So you are basically doing "read only" in the PLC.

Keep in mind the Keyence 5500 is a PLC. It's designed to be a Scanner (Master) just like the AB PLCs. I'm not sure I've seen any manufacturer's PLCs with an Instance that supports predefined Cyclic Input/Output. Instead, the PLCs have the ability to create tags for Input or Output. (Producer/Consumer).

That being said, Keyence has defined an "Implicit Instance" that will create a connection for Input Only and it is documented in detail in their EIP manual. Haven't got either to work with AB.

I mentioned having issues with the Connection Path. This is not the problem because even though my Keyence Module shows unconnected in the project tree, I was able to choose it for an Explicit Message. This works great! I understand your hesitation with the Explicit Messaging as I've done that myself with a Schneider Drive. Very cumbersome. The Keyence 5500 has a few really nice messages available that will allow me to Read and/or Write large blocks of data. This should turn out fairly clean as I'll just drive these alternately mimicking a cyclic connection.

Thanks for your interest!



Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now