The MachineModuleSetupType ObjectType contains the value of all the settings (including mechanical adjustments) required to run production as well as affordances to validate and load settings for the machine module.

This MachineModuleSetupType is formally defined in the table below.

Table 44 – MachineModuleSetupType Definition

Attribute

Value

BrowseName

MachineModuleSetupType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the BaseObjectType defined in OPC 10000-5 - Part 5: Information Model, i.e. inheriting the Instance Declarations of that Node.

0:HasProperty

Variable

DataSet

DataSetType

0:PropertyType

M, RW

0:HasComponent

Method

LoadDataSet

See below.

O

0:HasComponent

Method

LoadMaterialList

See below.

O

0:HasProperty

Variable

MaterialList

MaterialListType

0:PropertyType

M, RO

0:HasComponent

Object

MechanicalAdjustments

0:FolderType

M

0:HasComponent

Object

DataSetFolder

0:FolderType

M

0:HasComponent

Method

ValidateDataSet

See below.

O

0:HasComponent

Method

ValidateMaterialList

See below.

O

0:GeneratesEvent

ObjectType

DataSetChangeLogType

M

Conformance Units

TMC Single PO Production

TMC Advanced Setup

The components of the MachineModuleSetupType are further described below.

BrowseName

Description

DataSet

DataSet contains all the digital settings (other than the mechanical settings stored in the folder MechanicalAdjustments) required by the machine module.

MaterialList

MaterialList contains the list of materials that are going to be used for the production of the current production order.

MechanicalAdjustments

The MechanicalAdjustments folder contains the non-digital settings required to setup the machine e.g. mechanical adjustments.

DataSetFolder

The DataSetFolder contains the DataSet including values and descriptions. It contains the same information as DataSet but in a way that is friendlier to simple clients.

The components of the MachineModuleSetupType have additional subcomponents which are defined in the table below.

Table 45 – MachineModuleSetupType Additional Subcomponents

BrowsePath

References

NodeClass

BrowseName

DataType

TypeDefinition

Others

MechanicalAdjustments

0:HasProperty

Variable

<DocumentName>

0:ByteString

0:PropertyType

OP, RO

DataSetFolder

0:HasComponent

Variable

DataSetID

0:String

0:DataItemType

M, RW

DataSetFolder

0:HasComponent

Variable

DataSetDescription

0:LocalizedText

0:DataItemType

M, RW

DataSetFolder

0:HasComponent

Variable

<DataSetValue>

0:BaseDataType

0:DataItemType

OP, RW

The DataSetID Variable subcomponent is the ID of the DataSet, the DataSetDescription Variable subcomponent is the Description of the DataSet which contains many values represented by <DataSetValue >.

The mapping between the DataSet and <DataSetValue> in DataSetFolder shall be as follows:

  1. The BrowseName of each <DataSetValue > shall be the ID of the corresponding Definition in the DataSetList and DataSet.
  2. The DataType of each <DataSetValue > shall be equal to the DataType of the corresponding Definition in the DataSetList.
  3. If the <DataSetValue > is numeric, its type definition shall be 0:AnalogUnitRangeType which includes EURange and EngineeringUnits.
  4. EURange shall be equal to the ControlRange of the corresponding definition in the DataSetList.
  5. EngineeringUnits shall be equal to EngineeringUnits of the corresponding definition in the DataSetList.

The LoadDataSet Method loads the dataset to the underlying system after having validated that (a) the dataset is complete when IsCompleteDataset is True and (b) the dataset is valid.

When the validation is not passed, then the data set is not loaded to the underlying system rolling back any data change and a specific message shall be returned via ExecutionFeedback.

For detailed validation diagnostics, the Method ValidateDataSet shall be invoked.

The signature of this Method is specified below. Table 46 specifies the Arguments representation.

Signature

LoadDataSet (

[in] DataSetType DataSet,

[in] Boolean IsCompleteDataSet,

[out] MethodExecutionFeedbackType ExecutionFeedback);

Table 46 – LoadDataSet Method Arguments

Argument

Description

DataSet

The dataset to be transferred to the underlying system.

IsCompleteDataSet

When true, the DataSet argument is a complete dataset, meaning all DataSet entries are included.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

The LoadMaterialList Method loads the material list to the underlying system after having validated that (a) the material list is complete and (b) the material list is valid.

When the validation is not passed, then the material list is not loaded to the underlying system rolling back any data change and a specific message shall be returned via ExecutionFeedback.

For detailed validation diagnostics, the Method ValidateMaterialList shall be invoked.

The signature of this Method is specified below. Table 47 specifies the Arguments representation.

Signature

LoadDataSet (

[in] MaterialListType MaterialList,

[out] MethodExecutionFeedbackType ExecutionFeedback);

Table 47 – LoadMaterialList Method Arguments

Argument

Description

MaterialList

The material list to be transferred to the underlying system.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

The ValidateDataSet Method transfers a dataset, complete when IsCompleteDataSet is True, to the underlying system and returns the result of the validation, i.e. verifying that the dataset is complete and can run in production.

When the ValidateDataSet Method is executed, the DataSet variable is not affected. If the validation is not passed, the identifiers of the datapoints that did not pass are provided with the ExecutionFeedback.

The validation of the DataSet normally occurs before the DataSet is required, i.e. while production is running and using a different dataset. As a matter of fact, the ValidateDataSet Method is used to validate a DataSet beforehand giving time to the higher-level systems in charge to correct mistakes. Thus the underlying system is required to provide all affordances to perform the validation without disrupting running production orders.

The signature of this Method is specified below. Table 48 specifies the Arguments representation.

Signature

ValidateDataSet (

[in] DataSetType DataSet,

[in] Boolean IsCompleteDataSet,

[out] DataSetEntryType[] FailedValidationEntries,

[out] MessageType[] FailedValidationMessages,

[out] MethodExecutionFeedbackTypeExecutionFeedback);

Table 48 – ValidateDataSet Method Arguments

Argument

Description

DataSet

The dataset to be validated by the underlying system.

IsCompleteDataSet

When true, the DataSet argument is a complete dataset, meaning all DataSet entries are included.

FailedValidationEntries

The dataset items that failed the validation.

FailedValidationMessages

The detailed reasons the validation failed.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

The ValidateMaterialList Method transfers a material list to the underlying system and returns the result of the validation, i.e. verifying that the material list is complete and can run in production.

When the ValidateMaterialList is executed, the MaterialList variable is not affected. If the validation is not passed, the identifiers of the materials that did not pass are provided with the ExecutionFeedback.

The validation of the MaterialList normally occurs before the MaterialList is required, i.e. while production is running and using a different material list. As a matter of fact, the ValidateMaterialList Method is used to validate a MaterialList beforehand giving time to the higher-level systems in charge to correct mistakes. Thus the underlying system is required to provide all affordances to perform the validation without disrupting running production orders.

The signature of this Method is specified below. Table 49 specifies the Arguments representation.

Signature

ValidateMaterialList (

[in] MaterialListType MaterialList,

[out] MaterialListItemType[] FailedValidationEntries,

[out] MessageType[] FailedValidationMessages,

[out] MethodExecutionFeedbackTypeExecutionFeedback);

Table 49 – ValidateMaterialList Method Arguments

Argument

Description

MaterialList

The material list to be validated by the underlying system.

FailedValidationEntries

The material list items that failed the validation.

FailedValidationMessages

The detailed reasons the validation failed.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.