OPC Array Write: The access level does not allow writing to the Node

We have a python program that writes to an A-B ControlLogix PLC via an Ignition Allen-Bradley Logix Driver OPCUA device connection. If try to write a 20-REAL array at once, we get the error: "The access level does not allow writing to the Node." If we cycle through each element of the array and write them individually the write succeeds. Writing individually ends up being a lot slower.

Is there an OPC Server setting change that would allow the single write, or any other ideas?

Not a setting, but a driver change would do. My alternate EtherNet/IP driver for Ignition supports array reads and writes.

The driver doesn't expose arrays, just folders with an element per array. Is this what you mean?

I'm not sure I understand "just folders with an element per array." Can you point me to some documentation?


IA's Logix driver doesn't support specifying a OPC Item Path of an entire array, to get an array in a single tag. Each element of an array must be addressed with a separate OPC Item Path in a separate Ignition tag. (But bulk operations writing multiple consecutive elements will be optimized at the protocol level.)

My alternate driver does allow complete 1-D arrays of numeric types to be treated as a single tag, both for read and write. Though only complete writes of that array are supported through the tag.

Consider having your python driver write the 20 elements in a single batch. I suspect you will find that suitably performant.

OK, thanks for your help.