7 OPC UA ObjectTypes

7.1 WSMachineType ObjectType Definition

The WSMachineType ObjectType Definition provides the structure of a Weihenstephan Standard machine and is formally defined in Table 15. Instances of this type are to be organized in the Machines folder as specified in the CS for Machinery.

Table 15 – WSMachineType ObjectType Definiton
Attribute Value
BrowseNameWSMachineType
IsAbstractFalse
References Node Class BrowseName DataType TypeDefinition Other
Subtype of the 0:BaseObjectType defined in OPC 10000-5
0:HasComponentObjectAlarms2:FunctionalGroupTypeO
0:HasComponentObjectBatchAndArticleTracing2:FunctionalGroupTypeO
0:HasComponentObjectComputedValues2:FunctionalGroupTypeO
0:HasComponentObjectCounters2:FunctionalGroupTypeO
0:HasAddInObject2:Identification3:MachineIdentificationTypeM
0:HasComponentObjectMeasuredValues2:FunctionalGroupTypeO
0:HasComponentObjectOperatingModes2:FunctionalGroupTypeO
0:HasComponentObjectOperatingStates2:FunctionalGroupTypeO
0:HasComponentObjectParameters2:FunctionalGroupTypeO
0:HasComponentObjectPrograms2:FunctionalGroupTypeO
0:HasComponentObjectWarnings2:FunctionalGroupTypeO
0:HasPropertyVariableWSMachineProfileStringPropertyTypeM
0:HasPropertyVariableWSVersionStringPropertyTypeM
0:HasPropertyVariableWSVersionProjectStringPropertyTypeO
0:HasPropertyVariableWSVersionVendorStringPropertyTypeO

All components of the type FunctionalGroupType represent categories for WS DataPoints. A description of the individual WS Categories can be found in Table 10.

The Identification-AddIn contains information about the identification and nameplate of a machine.

WSMachineProfile provides the machine profile according to the respective domains of the Weihenstephan Standards.

WSVersion provides the WS Domain and version number of the WS interface.

WSVersionProject provides the project and version number of the project-specific library.

WSVersionVendor provides the vendor and version number of the vendor-specific library.

Figure 11 – WSMachineType

7.2 WSBaseObjectType Definition

The WSBaseObjectType is formally defined in Table 16. This data type is required for compatibility with WS Protocol, where the WS TagNumber is usually used to identify a WS DataPoint. In OPC UA the WS BrowseName shall be used as BrowseName for identification. Thus the WSTagNumber property is optional.

Table 16 – WSBaseObjectType Definiton
Attribute Value
BrowseNameWSBaseObjectType
IsAbstractFalse
References Node Class BrowseName DataType TypeDefinition Other
Subtype of the 0:BaseObjectType defined in OPC 10000-5
0:HasPropertyVariableWSTagNumberUInt160:PropertyTypeO
Figure 12 – WSBaseObjectType

7.3 WSAlarmType ObjectType Definition

The WSAlarmType provides two variables to inform about the current alarm and is formally defined in Table 17.

The WSAlarmCode can be used to pass an integer to the client and map it to a language-specific message. WSAlarmMessage contains the message as localizedText.

For the future it is planned to use OPC UA functionalities like Alarms and Conditions for this data point. As soon as this is available in the Weihenstephan Standards, this object definition will be obsolete.

Table 17 – WSAlarmType Definiton
Attribute Value
BrowseNameWSAlarmType
IsAbstractFalse
References Node Class BrowseName DataType TypeDefinition Other
Subtype of the WSBaseObjectType
0:HasComponentVariableWSAlarmCodeUInt32BaseDataVariableTypeM
0:HasComponentVariableWSAlarmMessageLocalizedTextBaseDataVariableTypeO

WSAlarmCode shall be used to pass an integer to the client and map it to a language-specific message. If there ist no alarm, the value of the WSAlarmCode variable is set to 0.

WSAlarmMessage contains the message as localizedText. If there is no alarm, the value of the WSAlarmMessage variable is empty (empty string).

Figure 13 – WSAlarmType

7.4 WSWarningType ObjectType Definition

The WSWarningType provides two variables to inform about the current warning and is formally defined in Table 18.

For the future it is planned to use OPC UA functionalities like Alarms and Conditions for this data point. As soon as this is available in the Weihenstephan Standards, this object definition will be obsolete.

Table 18 – WSWarningType Definiton
Attribute Value
BrowseNameWSWarningType
IsAbstractFalse
References Node Class BrowseName DataType TypeDefinition Other
Subtype of the WSBaseObjectType
0:HasComponentVariableWSWarningCodeUInt32BaseDataVariableTypeM
0:HasComponentVariableWSWarningMessageLocalizedTextBaseDataVariableTypeO

WSWarningCode shall be used to pass an integer to the client and map it to a language-specific message. If there ist no alarm, the value of the WSWarningCode variable is set to 0.

WSWarningMessage contains the message as localizedText. If there is no alarm, the value of the WSWarningMessage variable is empty (empty string).

Figure 14 – WSWarningType

7.5 WSBaseStateMachineType ObjectType Definition

The WSBaseStateMachineType provides the available states according to the PackML states and is formally defined in Table 19. The WS DataPoint WS_Cur_State has the type definition WSBaseStateMachineType and is defined as follows: This machine can be in different operating states. These states and the corresponding transitions are described in this WS DataPoint.

This ObjectType is required for compatibility with WS Protocol, where the WS TagNumber is usually used to identify a WS DataPoint. In OPC UA the WS BrowseName shall be used as BrowseName for identification. Thus the WSTagNumber property is optional.

Table 19 – WSBaseStateMachineType Definiton
Attribute Value
BrowseNameWSBaseStateMachineType
IsAbstractFalse
References Node Class BrowseName DataType TypeDefinition Other
Subtype of the 4:PackMLBaseStateMachineType defined in OPC 30050
0:HasPropertyVariableWSTagNumberUInt160:PropertyTypeO
Figure 15 – WSBaseStateMachineType as SubType of PackMLBaseStateMachineType

7.6 WSExecuteStateMachineType ObjectType Definition

The WSExecuteStateMachineType provides all of the base states defined in PackML and extends them by the WS-specific states HeldState and SuspendedState and is formally defined in Table 20.

Table 20 – WSExecuteStateMachineType Definiton
Attribute Value
BrowseNameWSExecuteStateMachineType
IsAbstractFalse
References Node Class BrowseName DataType TypeDefinition Other
Subtype of the 4:PackMLExecuteStateMachineType defined in OPC 30050
0:HasComponentObjectHeldStateWSHeldStateMachineTypeM
0:HasComponentObjectSuspendedStateWSSuspendedStateMachineTypeM

HeldState: The State is a substate of Held and is defined in 7.7.

SuspendedState: The State is a substate of Suspended and is defined in 7.8.

Figure 16 – WSExcecuteStateMachineType as SubType of PackMLExecuteStateMachineType

7.7 WSHeldStateMachineType Definition

The WSHeldStateMachineType provides the WS-specific substates of the PackML state Held and is formally defined in Table 21.

Table 21 – WSHeldStateMachineType Definiton
Attribute Value
BrowseNameWSHeldStateMachineType
IsAbstractFalse
References Node Class BrowseName DataType TypeDefinition Other
Subtype of the 0:FiniteStateMachineType defined in OPC 10000-5
0:HasComponentObjectEquipmentFailureStateTypeM
0:HasComponentObjectExternalFailureStateTypeM

EquipmentFailure: Failure, which occurs in the unit/machine itself and leads to a unit/machine stop.

ExternalFailure: A failure which is not attributable to the unit/machine but which nonetheless leads to a unit/machine stop.

Figure 17 – WSHeldStateMachineType

7.8 WSSuspendedStateMachineType Definition

The WSSuspendedStateMachineType provides the WS-specific substates of the PackML state Suspended and is formally defined in Table 22.

Table 22 – WSSuspendedStateMachineType Definiton
Attribute Value
BrowseNameWSSuspendedStateMachineType
IsAbstractFalse
References Node Class BrowseName DataType TypeDefinition Other
Subtype of the 0:FiniteStateMachineType defined in OPC 10000-5
0:HasComponentObjectLack0:StateTypeM
0:HasComponentObjectLackBranchLine0:StateTypeM
0:HasComponentObjectPrepared0:StateTypeM
0:HasComponentObjectTailback0:StateTypeM
0:HasComponentObjectTailbackBranchLine0:StateTypeM

Lack: The unit/machine shall not produce product in this state due to a lack detected in the inlet of the machine.

LackBranchLine: The unit/machine shall not produce product in this state due to a lack detected in the branch line inlet of the unit/machine.

Prepared: The unit/machine is ready to carry out its intended function. However, it is in a waiting state which was not recognized as a lack or tailback state and can automatically start again.

Tailback: The unit/machine shall not produce product in this state due to a tailback detected in the inlet of the machine.

TailbackBranchLine: The unit/machine shall not produce product in this state due to a tailback detected in the branch line inlet of the unit/machine.

Figure 18 – WSSuspendedStateMachineType