Arrays

In OPC UA werden Arrays bei UA_Variable-Nodes über die Attribute ValueRank und ArrayDimensions beschrieben. Der eigentliche DataType gibt dabei immer den Elementtyp an, also zum Beispiel Int32, Double oder String.

ValueRank

ValueRank legt fest, ob eine Variable ein Skalar oder ein Array ist und wie viele Dimensionen das Array besitzt.

ArrayDimensions

ArrayDimensions beschreibt die Größe der einzelnen Dimensionen.

Der Wert wird als Liste von Dimensionen angegeben. Die Anzahl der Einträge in ArrayDimensions sollte zur Anzahl der Dimensionen in ValueRank passen. Wenn die Größe nicht fest vorgegeben werden soll, kann ArrayDimensions leer bleiben oder 0.

Beispiele:

Im Node Editor ist die Bearbeitung der Werte über folgende Elemente möglich. Während der ValueRank nur zulässige Werte erlaubt, muss bei den ArrayDimensions der Wert selbst überprüft werden:

Arrays 1:

Beispiele ValueRank und ArrayDimensions

ValueRank = -1 → Skalar, ArrayDimensions bleibt leer

ValueRank = 1 → eindimensionales Array, z. B. ArrayDimensions = 10

ValueRank = 2 → zweidimensionales Array, z. B. ArrayDimensions = 3,4