NI Labs

cancel
Showing results for 
Search instead for 
Did you mean: 

Welcome to EtherNet/IP Driver for Communication to Allen Bradley ControlLogix PLCs

The PLC5/40E I'm trying to talk to is a Series F, A.2.

 

Barbara

0 Kudos
Message 71 of 193
(8,744 Views)

Hi Barbara,

 

Unfortunately I am not sure what might be the issue. It seems like the presence of EtherNet/IP support (not just Ethernet) varies based on which version PLC5 you have and while it seems like yours should support it based on Rockwell's app notes, I cannot say for certain. I also am not 100% certain if the PLC5 supports the type of message we are using (Rockwell's documentation is somewhat lacking in this regard). Since I do not have a PLC5 here to play with I can't really examine it to see what the problem may be. Perhaps if there are any other users with PLC5s here that may be able to test it out and comment on whether it works for them it may help out.

 

Eric

Message Edited by BlueCheese on 04-08-2009 10:41 AM
0 Kudos
Message 72 of 193
(8,723 Views)

Sweet!  

 

And incredibly timely.

 

I'm looking forward to trying this out.     

---------------------
Patrick Allen: FunctionalityUnlimited.ca
0 Kudos
Message 73 of 193
(8,709 Views)
Are there any issues with building this into an .exe and executing it on a different machine (non-development machine with runtime installed)?  A colleague of mine just tried it and was getting an error of something missing, I think it was a library file (not ethernetIPInterface.dll).  He even tried installing the driver on the remote machine.  Is this supposed to work, and if so, what is the recommended procedure?
0 Kudos
Message 74 of 193
(8,688 Views)

Hi JF3M,

 

There should be no issues building this into an EXE. The only requirement should be getting the driver's DLL onto the remote system. If you are running into other errors it may be due to not building all the LabVIEW support VIs you need into the EXE. You may want to verify that all the VIs from vi.lib that you are using are included and such.

 

As you said, one way to get the DLL installed is by running the installer on the system. I have to admit that I have not tested running the installer on a machine with only the LabVIEW runtime installed so it is possible that the installer ends up finding nothing to install since there are no supported versions of LabVIEW (though you may be able to force it by manually selecting some version of LabVIEW to install support for). You can confirm this by checking for ethernetIPInterface.dll in your Windows\System32 directory.

 

Another option you could try is to place the ethernetIPInterface.dll next to your built EXE. This would eliminate the need to install the whole driver on a system you distribute your app to. 

 

Eric 

0 Kudos
Message 75 of 193
(8,686 Views)

I was just checking in to report this build issue. I have the same issue. The ethernerIPInterface.dll is in the build but does not get installed to the system32 folder. Tried several build configs but no luck. I manually had to install the dll.

 

Mike

0 Kudos
Message 76 of 193
(8,634 Views)

Dazach,

 

Where are you getting the DLL to install manually? Is it possible that it is not in System32 because you are running on a 64-bit OS? If so, the installer will put it into the SysWoW64 directory.

 

Eric 

0 Kudos
Message 77 of 193
(8,629 Views)
The ethernetIPInterface.dll is on my WIN XP 32bit development pc that has LV and the EnetIP add on installed. That dll is put on your system when you install the add on package. It also appears in your LV project directory tree under dependencies if one or more of your project files are using the EnetIP VIs. I've created a stand alone executable that I should be able to install on any PC. The problem is the Installer does not install the ethernetIPInterface.dll on the target pc. If I copy the dll from my development pc system32 directory to the target machines system32 directory the application runs fine. I would expect that the installer would add the ethernetIPInterface.dll during instal of the executable for me since it is a dependacy of the LV project executable.
0 Kudos
Message 78 of 193
(8,602 Views)
I have since tried this as an .exe and it worked.  My colleague had some problems with this but found out it was some settings issue he had.  When I first tried to make an installer, I had also assumed it would pull in the .dll since it was a dependancy.  Apparently Labview doesn't work that way, so I tried it again specifically including it and it worked.  In my case I used/made an installer.  I did a mass compile, then right clicked My Computer in the project tree, then selected Add>, then File..., then picked the .dll.  Now it appears in my project tree under My Computer.  In the installer config, under Source Files, the .dll appears (again under My Computer) and can be selected to go to any folder you want.  In my case, I just put it in the same folder as the .exe and it worked fine.
0 Kudos
Message 79 of 193
(8,598 Views)

Hi JF3M and dazach,

 

It doesn't look like LabVIEW will automatically pull SystemRoot-based DLLs into an installer. However, as you found out, you can tell it to do so manually and put it alongside the EXE and it will work.

 

Eric 

0 Kudos
Message 80 of 193
(8,594 Views)