OPC-UA issues with ControlLogix

I’m just starting to convert from RSLinx to OPC-UA. I have run into two issues (at the moment) that have me beating my head against the wall:

  1. I cannot access controller scope tags in a ControlLogix PLC. I can browse to all of the PROGRAM scope tags, but not find any CONTROLLER scope tags. Since the syntax is slightly different than RSLinx (Program scope tags don’t use the [Topic]Program:ProgramName.TagName syntax, but instead use [Device]ProgramName.Tagname), I do not know how to manually reference a controller scope tag for testing.

  2. I cannot build a path to a remote ControlLogix PLC (although I can bridge connections to get to a PLC5 or SLC). It looks like the ControlLogix driver for OPC-UA requires a mill-wide Ethernet card in the PLC local rack. I need to be able to bridge through a rack
    (ENBT–>Backplane–>CNB–>CNB–>Backplane–>Processor)

I’ll take any help I can get… without these two issues resolved, I think I’m dead in the water with this OPC server.

Jason

In response to #1:
The controller scope tags will appear under the Global folder and can be referenced as [Device]Global.TagName. If you don’t see your tags in the Global folder, try doing a refresh browse for the device in the Gateway.

In response to #2:
Currently bridging to a ControlLogix processor is not support, but we will be adding it in the near future.

Has the issue with bridging to a ControlLogix processor been resolved since this thread was started? I too have a system with two backplanes connected via CNB modules. The path command should do the trick but I find no guidance in the manual.

Thanks

Our manual does need to be updated to include the connection path addition.

The path depends on the modules the connection is being routed through and the manual for the modules should be referenced.
But in general:

It must be an even number of values separated by commas.

In Ignition, the first connection point is a ControlLogix Ethernet module such as ENET, ENBT
or EN2T module.

ENET, ENBT and EN2T:
1 = Backplane
2 = Ethernet Port

CNB:
1 = Backplane
2 = ControlNet Port

DHRIO:
1 = Backplane
2 = DH+ Channel A
3 = DH+ Channel B

Example:
To connect to the processor in slot 0, the path is 1,4,2,12,1,0


Where:
1 = Backplane
4 = Slot 4, CNB module
2 = ControlNet Port
12 = CN 12
1 = Backplane
0 = Slot 0 - Processor

I am trying to connect a ControlLogix5500 CPU through ControlNet with Ignition Gateway (to expose the data with OPC UA). This is a very similar setup to the one descibed in the previous post. However I am unable to succesfully connect to the CPU module.

My configuration is as follows:

Backplane 1:
[ul][li]slot0: CPU (Logix 5563)[/li]
[li]slot1: Controlnet Module (1756-1756-CNB/E) Adress 01[/li]
[li]slot2: Ethernet Module (1756-ENBT/A)[/li][/ul]

Backplane 2:
[ul][li]slot0: CPU (Logix 5563)[/li]
[li]slot1: Controlnet Module (1756-1756-CNB/E) Adress 02[/li]
[li]slot2:
… I/O modules
slot5:[/li][/ul]

I am trying to get the data from backplane 2 slot0 cpu.

According to what I am able to find, the connection path is as follows:

1,1,1,2,1,0

1 - backplane 1
1 - slot for CN-module
1 - address CN module backplane 1
2 - address CN module backplane 2
1 - backplane 2
0 - slot for CPU-module backplane 2

Still I can not get any data from the cpu exposed to the Ingition Gateway. The data from the backplane 1 (no connection path, slot 0) is exposed fine.

Any ideas what I am doing wrong?

P.S: I attached a screenshot from RSNetworx for controlnet for extra information.


Dont know if this is your problem, but I notice that you reference the control net address of your backplane 1 control net card. that should be the port number of that card.

[quote]
1 - backplane 1
1 - slot for CN-module
1 - address CN module backplane 1
2 - address CN module backplane 2
1 - backplane 2
0 - slot for CPU-module backplane 2[/quote]

So the third item down in your list should be the port number not the address. May still be the same as your address is 1.

One change. The third number should be 2 which routes it through the ControlNet. Putting a 1 there will route it back to backplane 1.

1 - backplane 1
1 - slot for CN-module
2 - ControlNet Channel
2 - CN address of backplane 2
1 - backplane 2
0 - slot for CPU-module backplane 2

Tom

Ok so its a 2 to route it though control net. You are not selecting a port #. Thanks.

I changed the third parameter to 2 and now it works like a charm!

Thank you for providing me with such quick and accurate answers.

Greetings,