Industrial Communications

cancel
Showing results for 
Search instead for 
Did you mean: 

Ethernet/IP Getting Started

Hi All,

I'm working on my first ENet/IP app using Labview and am having some difficulties.  I'm trying to run the example CreateAssemblyInstance, but on the PLC side the connection keeps timing out.  See attached for the module set-up on the PLC side.  I'm not getting any errors on the LV side.  My guess is that there's some set-up step I'm missing.  Also, the TagReadWrite example works fine when I try that.

Thanks in advance,

John

0 Kudos
Message 1 of 6
(6,491 Views)

Hi John,

 

Since I can only see PLC side from your snapshot, I can only give you suggestions.

1.The IP address should be that of the target, the cRIO in this case.

2. Assembly instance ID should match. Input Assembly Instance ID is 100 here, so on cRIO the Producing assembly ID should also be 100. And vice versa for 101.

3. Size must match. 

 

Error on LV side will only be on "local level" but not "network level".

 

I believe these conditions should suffice. If you still can not see a successful connection, I'd try reopen RSLogix5000 to do the whole thing again. It happened to me once and this worked.

Message 2 of 6
(6,477 Views)

Thanks for the suggestions - I restarted Logix, deleted and recreated the device and now it's working.  

0 Kudos
Message 3 of 6
(6,467 Views)

Just a suggestion.

 

Unless the data you want in RSLogix really is byte-wise, you might want to recreate your cRIO module with a 16 wide, or 32 wide data type. RSLogix, while it has the instruction to combine bytes into other data types - they suck compared to others (LV).

So you may be creating extra work on the PLC side.

 

If most of your data is real (SGL), I would define the module with the proper length for real types. Any DINTs in there could be 'type cast' using the COP command (MOV wont work as RSLogix expected source and destination to be same type).

 

Bytes is the most flexible, but you gott write ladder rungs to manipulate it.

 

0 Kudos
Message 4 of 6
(6,423 Views)

Just a suggestion.

 

Unless the data you want in RSLogix really is byte-wise, you might want to recreate your cRIO module with a 16 wide, or 32 wide data type. RSLogix, while it has the instructions to combine bytes into other data types - they suck compared to others (LV).

So you may be creating extra work on the PLC side.

 

If most of your data is real (SGL), I would define the module with the proper length for real types. Any DINTs in there could be 'type cast' using the COP command (MOV wont work as RSLogix expects source and destination to be same type).

 

Bytes is the most flexible, but you gotta write ladder rungs to manipulate it.

 

0 Kudos
Message 5 of 6
(6,422 Views)

That's kind of what I'm doing.  I'm using words for everything and just packing all of my booleans into the first word for the input and output.  I then just unpack the word on either side.

0 Kudos
Message 6 of 6
(6,393 Views)