AAS Property als Enumeration

Wie kann ich eine Property anlegen, die genau einen von mehreren möglichen Werten annehmen kann? In der Programmierung würden wir das als Enumeration bezeichnen. Dies in einer Property eindeutig zu modellieren ist etwas aufwendig, aber möglich. Hier zeige ich, wie es geht.

Nehmen wir an, ich habe eine Property “Color”. Diese Color kann Blue, Green, Yellow oder Red sein.

Das Meta-Model der Asset Administration Shell kennt keine Enums. Um diesen Zusammenhang ausdrücken zu können, nutzen wir den Verweis auf eine ConceptDescription “Colors”, die ihrerseits die einzelnen Enum Member (“Blue”, “Green”, “Yellow” und “Red”) als ValueReferencePairs (VRP) enthält.

ConceptDescriptions

Die Referenzen auf die einzelnen ConceptDescriptions für die Farben Blue, Green, Yellow und Red wurden als IEC61360 value list items in der ConceptDescription Color wie folgt angelegt:

IEC61360 value list items

Jetzt können wir einem Submodel eine Property hinzufügen.

Submodel mit einer Property

Wichtig ist jetzt, dass die SemanticId der Property eine Referenz zur auflistenden ConceptDescription “Colors” enthält…

Property -> Semantic ID

… und die ValueId eine Referenz auf die ConceptDescription der Farbe selbst bekommt:

Property -> ValueId

Value kann in diesem Fall freibleiben. Falls es beschrieben wird, muss es natürlich mit dem Wert der ConceptDescription (in diesem Fall “Green”) übereinstimmen.