The TextileTestingDeviceType is the main entry point for the functionality of the TTD.

The TextileTestingDeviceType is formally defined in Table 15.

Table 15 – TextileTestingDeviceType Definition

Attribute

Value

BrowseName

TextileTestingDeviceType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of 0:BaseObjectType defined in OPC 10000-5

0:HasProperty

Variable

AvailableExchangeableParts

ExchangeablePartDataType[]

0:PropertyType

M

0:HasAddIn

Object

2:Identification

3:MachineIdentificationType

M

0:HasProperty

Variable

InstalledTesterModules

OptionalModuleDataType[]

0:PropertyType

M

0:HasComponent

Object

MachineStatistics

MachineStatisticsType

M

0:HasAddIn

Object

3:MachineryBuildingBlocks

0:FolderType

M

0:HasComponent

Object

6:Notification

6:NotificationType

M

0:HasComponent

Object

RecipeManagement

RecipeManagementType

M

0:HasProperty

Variable

TestProcedureIds

TestProcedureIdDataType[]

0:PropertyType

M

Conformance Units

TTD_TextileTestingDeviceType

AvailableExchangeableParts is an array holding the available exchangeable parts of the TTD.

2:Identification is the entry point for the MachineIdentification.

InstalledTesterModules is an array that stores the optional modules for the TTD.

MachineStatistics holds the machine statistics for the TTD.

3:MachineryBuildingBlocks contains all machinery building blocks. See for More Information.

6:Notification is the main entry point for upcoming events from the device. It also contains different tasks like calibration that have to be performed on the TTD. The NotificationType is inherited from OPC 40501-1.

RecipeManagement is the entry point for the recipe management on the TTD.

ResultManagement is the entry point for the result management on the TTD.

TestProcedureIds is an array that contains the IDs of the test procedures of the TTD.

The components of the TextileTestingDeviceType have additional references which are defined in Table 16.

Table 16 – TextileTestingDeviceType Additional References

SourceBrowsePath

Reference Type

Is Forward

TargetBrowsePath

3:MachineryBuildingBlocks

0:HasAddIn

true

2:Identification

The components of the TextileTestingDeviceType have additional subcomponents which are defined in Table 17.

Table 17 – TextileTestingDeviceType Additional Subcomponents

Source Path

Reference

NodeClass

BrowseName

DataType

TypeDefinition

Others

3:MachineryBuildingBlocks

0:HasAddIn

Object

3:MachineryItemState

3:MachineryItemState_StateMachineType

M

3:MachineryBuildingBlocks

0:HasAddIn

Object

3:MachineryOperationMode

3:MachineryOperationModeStateMachineType

M

3:MachineryBuildingBlocks

0:HasAddIn

Object

8:JobManagement

8:JobManagementType

M

3:MachineryBuildingBlocks

0:HasAddIn

Object

4:ResultManagement

TTDResultManagementType

M

MachineryItemState is the entry point for the MachineryItemState statemachine and holds the state of the TTD.

MachineryOperationMode is the entry point for the MachineryOperationMode statemachine and holds the operation mode of the TTD.

JobManagement is the entry point for the job management for the TTD.

OPC 10031-4 defines mechanisms to add job order information using the 7:ISA95JobOrderDataType and mechanisms getting the result or current status of the job order using the 7:ISA95JobResponseDataType. Both DataTypes define arrays of properties of a job order: general, personal, equipment, physical assets, and material. The 7:ISA95JobOrderDataType uses the general properties to describe the job order and the other properties to define the requirements, whereas the 7:ISA95JobResponseDataType uses the general properties to describe the output and the other properties to provide the information what has been used.

OPC UA Machinery Job Management (OPC 40001-3) standardizes some of those parameters, which are application-specific from the view of OPC 10031-4.

The guidelines and extensions specified in this section are designed to complement the foundational models, providing a structured framework for implementation. The Optional element (e.g. fields or parameters) of the OPC 10031-4 or OPC 40001-3 may be used as defined.

Table 18 – Predefined 7:ISA95JobOrderDataType/JobOrderParameters

Key

DataType

Description

Engineering Units

Sub-parameters

Others

RecipeId

RecipeIdDataType

The available Recipes are stored on the TTD and referenced by their Id.

-

-

M

NumberOfTests

TestNumDataType[]

This array contains TestNumDataType structures that describe how many tests per procedure have to be performed.

-

-

M

SampleInfos

SampleInfoDataType[]

This array contains SampleInfoDataType structures that hold the information about the samples that have to be tested.

-

-

M

CarrierTypeId

0:String

Id to identify the creel geometry or the geometry of the fiber container.

-

-

M

CarrierId

0:String

Id of the fiber container or carrier/creel. For creels it represents the number of the creel wagon.

-

-

M

AdditionalInfos

0:KeyValuePair[]

A set of key/value pairs that define additional information for the job.

-

-

O

Scheduled

0:Boolean

Indicates if a job was scheduled by a remote client (MES).

-

-

M

Table 19 – Predefined 7:ISA95JobResponseDataType/JobResponseData

Key

DataType

Description

Engineering Units

Sub-parameters

Others

TesterJobId

0:String

TTD-internal id given to the tested set of samples(job).

-

-

M

TotalInitializingTime

0:Duration

The total time in ms the job was initializing. The initializing time starts/resets when the job enters the AllowedToStart state and stops when the job enters the Running or Aborted state.

-

-

M

TotalInterruptedTime

0:Duration

The Time in ms the job was interrupted

-

-

M

TotalRunningTime

0:Duration

the total time in ms the job was running

-

-

M

Additional to the listed Keys the Fields StartTime and EndTime are Mandatory in the JobResponseDataType.

The RecipeManagementType is the entry point for the recipe management on the TTD. It provides an array of RecipeIds containing the metadata of all recipes that are stored on the TTD as well as methods for accessing the content of the recipe and methods for adding/deleting recipes to/from the TTD.

The RecipeManagementType is formally defined in Table 20.

Table 20 – RecipeManagementType Definition

Attribute

Value

BrowseName

RecipeManagementType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of 0:BaseObjectType defined in OPC 10000-5

0:HasProperty

Variable

RecipeIds

RecipeIdDataType[]

0:PropertyType

M

0:HasComponent

Method

GetRecipeIds

M

0:HasComponent

Method

GetRecipe

O

0:HasComponent

Method

SetRecipe

O

0:HasComponent

Method

DeleteRecipe

O

0:HasComponent

Method

GetRecipes

O

0:HasComponent

Method

SetRecipes

O

Conformance Units

TTD_RecipeManagementType

RecipeIds is a Property that stores the metainformation for all recipes that are stored on the TTD.

GetRecipeIds is a Method that is used to retrieve the metadata for all recipes that are stored on the TTD.

GetRecipe is a Method that is used to retrieve the content of a recipe with a given id.

SetRecipe is a Method that is used to store a recipe on the TTD. A flag is used to indicate if the recipe should be overwritten if a recipe with the same id already exists on the TTD.

DeleteRecipe is a Method that is used to remove a recipe from the TTD. The id of the recipe is used to identify the recipe that is to be deleted.

GetRecipes is a Method that is used to retrieve all recipes (metadata and content) that are stored on the TTD at once.

SetRecipes is a Method that is used to store a set of recipes on the TTD. A flag is used to indicate if the recipes should be overwritten if a recipe with the same id already exists on the TTD.

The Method GetRecipeIds is used to get information about all recipes that are stored on the TTD. The recipe metadata for all recipes is returned in the output parameter RecipeIds.

The signature of this Method is specified below. Table 21 and Table 22 specify the Arguments and AddressSpace representation, respectively.

Signature

GetRecipeIds (

[out]RecipeIdDataType[]RecipeIds)

Table 21 – GetRecipeIds Method Arguments

Argument

Description

RecipeIds

An array containing the recipe ids that are stored on the device.

Table 22 – GetRecipeIds Method AddressSpace Definition

Attribute

Value

BrowseName

GetRecipeIds

References

Node Class

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

0:OutputArguments

0:Argument[]

0:PropertyType

0:Mandatory

The Method GetRecipe is used to get the recipe content for a given RecipeId. The RecipeId has to match the system-wide unique Id property of the RecipeIdDataType associated with the recipe on the TTD. The output parameter Recipe is used to return the recipe.

The signature of this Method is specified below. Table 23 and Table 24 specify the Arguments and AddressSpace representation, respectively.

Signature

GetRecipe (

[in]0:StringRecipeId,

[out]RecipeDataTypeRecipe)

Table 23 – GetRecipe Method Arguments

Argument

Description

RecipeId

The id of the recipe that is to be retrieved.

Recipe

The recipe.

Method Result Codes (defined in Call Service)

Result Code

Description

Bad_NotFound

See OPC 10000-4 for a general description. Returned when there is no Recipe with the given RecipeId.

Table 24 – GetRecipe Method AddressSpace Definition

Attribute

Value

BrowseName

GetRecipe

References

Node Class

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

0:InputArguments

0:Argument[]

0:PropertyType

0:Mandatory

0:HasProperty

Variable

0:OutputArguments

0:Argument[]

0:PropertyType

0:Mandatory

The Method SetRecipe is used to store a recipe on the TTD. Beneath the Recipe that is to be stored on the TTD the method takes an additional input parameter Overwrite that indicates if the recipe should be overwritten in case a recipe with the same id already exists on the TTD.

The signature of this Method is specified below. Table 25 and Table 26 specify the Arguments and AddressSpace representation, respectively.

Signature

SetRecipe (

[in]RecipeDataTypeRecipe,

[in]0:BooleanOverwrite)

Table 25 – SetRecipe Method Arguments

Argument

Description

Recipe

The recipe that is to be stored on the TTD.

Overwrite

A flag is used to indicating if the Recipe shall be overridden if there is already a recipe with the same id on the TTD.

Method Result Codes (defined in Call Service)

Result Code

Description

Bad_InvalidState

Returned when the Overwrite flag is set to false and a Recipe with the same id already exists on the server so that the server is not allowed to overwrite.

Bad_NotSupported

Returned if the Overwrite flag is set but not supported by the server.

Table 26 – SetRecipe Method AddressSpace Definition

Attribute

Value

BrowseName

SetRecipe

References

Node Class

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

0:InputArguments

0:Argument[]

0:PropertyType

0:Mandatory

The Method DeleteRecipe is used to delete a recipe from the TTD. The given RecipeId has to match the system-wide unique Id property of the RecipeIdDataType associated with the recipe on the TTD.

The signature of this Method is specified below. Table 27 and Table 28 specify the Arguments and AddressSpace representation, respectively.

Signature

DeleteRecipe (

[in]0:StringRecipeId)

Table 27 – DeleteRecipe Method Arguments

Argument

Description

RecipeId

The id of the recipe that is to be deleted.

Method Result Codes (defined in Call Service)

Result Code

Description

Bad_NotFound

See OPC 10000-4 for a general description. Returned when there is no Recipe with the given RecipeId.

Table 28 – DeleteRecipe Method AddressSpace Definition

Attribute

Value

BrowseName

DeleteRecipe

References

Node Class

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

0:InputArguments

0:Argument[]

0:PropertyType

0:Mandatory

The Method GetRecipes is used to get the recipe content for all recipes stored on the TTD. The output parameter Recipes is used to return all recipes that are currently stored on the TTD.

The signature of this Method is specified below. Table 29 and Table 30 specify the Arguments and AddressSpace representation, respectively.

Signature

GetRecipes (

[out]RecipeDataType[] Recipes)

Table 29 – GetRecipes Method Arguments

Argument

Description

Recipes

An array of all stored recipes on the TTD.

Method Result Codes (defined in Call Service)

Result Code

Description

BadEncodingLimitsExceeded

Returned when the size of the Recipes on the TTD exceeds the maximum message size of the server. This may happen if a large number of Recipes are stored on the TTD and the maximum message size is configured small.

Table 30 – GetRecipes Method AddressSpace Definition

Attribute

Value

BrowseName

GetRecipes

References

Node Class

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

0:OutputArguments

0:Argument[]

0:PropertyType

0:Mandatory

The Method SetRecipes is used to store a set of recipes on the TTD. Beneath the Recipes that are to be stored on the TTD the method takes an additional input parameter Overwrite that indicates if the recipes should be overwritten in case a recipe with the same id already exists on the TTD.

The signature of this Method is specified below. Table 31 and Table 32 specify the Arguments and AddressSpace representation, respectively.

Signature

SetRecipes (

[in]RecipeDataType[]Recipes,

[in]0:BooleanOverwrite)

Table 31 – SetRecipes Method Arguments

Argument

Description

Recipes

An array of recipes that is to be stored on the TTD.

Overwrite

A flag indicating if recipes should be replaced if there are already recipes with the same id on the TTD.

Table 32 – SetRecipes Method AddressSpace Definition

Attribute

Value

BrowseName

SetRecipes

References

Node Class

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

0:InputArguments

0:Argument[]

0:PropertyType

0:Mandatory

The MachineStatisticsType tracks KPI information of the TTD. Therefore, it measures the time the TTD is in the different MachineryItemState states. The MachineryItemState states are: Executing, NotExecuting, NotAvailable and OutOfService.

The MachineStatisticsType is formally defined in Table 33.

Table 33 – MachineStatisticsType Definition

Attribute

Value

BrowseName

MachineStatisticsType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of 0:BaseObjectType defined in OPC 10000-5

5:HasStatisticComponent

Variable

TotalExecutingTime

0:Duration

0:BaseDataVariableType

M, RO

5:HasStatisticComponent

Variable

TotalNotAvailableTime

0:Duration

0:BaseDataVariableType

M, RO

5:HasStatisticComponent

Variable

TotalNotExecutingTime

0:Duration

0:BaseDataVariableType

M, RO

5:HasStatisticComponent

Variable

TotalOutOfServiceTime

0:Duration

0:BaseDataVariableType

M, RO

0:HasProperty

Variable

5:StartTime

0:DateTime

0:PropertyType

O

0:HasComponent

Method

5:ResetStatistics

O

0:HasInterface

ObjectType

5:IStatisticsType

Conformance Units

TTD_MachineStatisticsType

TotalExecutingTime stores the total time in ms the TTD was executing.

TotalNotAvailableTime stores the total time in ms the TTD was not available.

TotalNotExecutingTime stores the total time in ms the TTD was not executing, but operational. E.g. The TTD was in an idle state.

TotalOutOfServiceTime stores the total time in ms the TTD was out of service.

StartTime indicates the point in time at which the collection of the statistical data has been started.

ResetStatistics restarts all statistical data, including a reset of the StartTime to the current time.

The RecurrentPrognosisType represents recurrent tasks, such as calibration tasks in the TTD and is formally defined in Table 34. It is used in the TTD under the browse path /Notifications/Prognoses.

Table 34 – RecurrentPrognosisType Definition

Attribute

Value

BrowseName

RecurrentPrognosisType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of PrognosisType defined in OPC 40501-1

0:HasComponent

Variable

Activity

0:LocalizedText

0:BaseDataVariableType

M

0:HasProperty

Variable

Interval

0:UtcTime

0:PropertyType

O

0:HasProperty

Variable

LastExecutionTime

0:UtcTime

0:PropertyType

M

Conformance Units

TTD_RecurrentPrognosisType

Activity is a localized text message specifying the task that is to be performed.

Interval represents the normal (estimated) time period between two task executions.

LastExecutionTime is the last time the task finished its execution.

The TTDResultManagementType provides mechanisms to access results generated by the TTD. Basically this is a subtype of the 4:ResultManagementType enforcing the implementation of different methods and objects for the result transfer mechanisms that should be used on the TTD. In general, we want to accomplish the following tasks:

The TTDResultManagementType is formally defined in Table 35.

Table 35 – TTDResultManagementType Definition

Attribute

Value

BrowseName

TTDResultManagementType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the 4:ResultManagementType defined in OPC 40001-101

0:HasComponent

Object

4:Results

0:FolderType

M

0:HasComponent

Object

4:ResultTransfer

4:ResultTransferType

M

0:HasComponent

Method

4:GetResultById

M

0:GeneratesEvent

ObjectType

TTDResultReadyEventType

Conformance Units

TTD_TTDResultManagementType

4:Results is a folder that is used to organize available results of the system. It is supposed to store variables of the 4:TTDResultType. A 4:ResultType contains the 4:ResultMetaData (see subtype TTDResultMetaDataType) used to identify the result and optional an data based 4:ResultContent or 4:ReducedResultContent. The ResultContent may be of any DataType but typically it is a field of StatisticResultContent defined in this specification or a 0:ByteString of any raw data.

4:ResultTransfer is used to transfer the content of a result by a temporary file transfer. The file that is to be transferred is identified by its ResultId.

4:GetResultById is used to retrieve a result (4:ResultDataType) from the TTD.

Table 36 – TTDResultManagementType Additional Subcomponents

BrowsePath

References

NodeClass

BrowseName

DataType

TypeDefinition

Others

4:Results

0:HasComponent

Variable

4:<ResultVariable>

4:ResultDataType

TTDResultType

OP