The StateVariableType is the base VariableType for Variables that store the current state of a StateMachine as a human readable name.

The StateVariableType is formally defined in Table 2.

Table 2 – StateVariableType definition

Attribute

Value

BrowseName

StateVariableType

DataType

LocalizedText

ValueRank

−1 (−1 = Scalar)

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseDataVariableType defined in OPC 10000-5

Note that a Reference to this subtype is not shown in the definition of the BaseDataVariableType.

HasSubtype

VariableType

FiniteStateVariableType

Defined in 4.4.6

HasProperty

Variable

Id

BaseDataType

PropertyType

Mandatory

HasProperty

Variable

Name

QualifiedName

PropertyType

Optional

HasProperty

Variable

Number

UInt32

PropertyType

Optional

HasProperty

Variable

EffectiveDisplayName

LocalizedText

PropertyType

Optional

Conformance Units

Base Info State Machine Instance

Id is a name which uniquely identifies the current state within the StateMachineType. A subtype may restrict the DataType.

Name is a QualifiedName which uniquely identifies the current state within the StateMachineType.

Number is an integer which uniquely identifies the current state within the StateMachineType.

EffectiveDisplayName contains a human readable name for the current state of the state machine after taking the state of any SubStateMachines in account. There is no rule specified for which state or sub-state should be used. It is up to the Server and will depend on the semantics of the StateMachineType.

StateMachines produce Events which may include the current state of a StateMachine. In that case Servers shall provide all the optional Properties of the StateVariableType in the Event, even if they are not provided on the instances in the AddressSpace.