The PartManagementType contains a list of parts, as well as methods to add and remove parts from the Server. It is formally defined in Table 30.

The system must also be capable of managing local deletions, assuming that parts and articles can be removed from the local database while still existing in a central repository.

In cases of incorrect referencing (e.g., a missing part or article), the server must throw an error.

Table 30 – PartManagementType definition

Attribute

Value

BrowseName

PartManagementType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the BaseObjectType defined in the OPC10000-3; i.e., inherits the InstanceDeclarations of that Node.

HasComponent

Method

ClearPart

Mandatory

HasComponent

Variable

Terminals

3:ISA95MaterialDataType[]

BaseDataVariableType

Optional

HasComponent

Variable

Seals

3:ISA95MaterialDataType[]

BaseDataVariableType

Optional

HasComponent

Variable

Sleeves

3:ISA95MaterialDataType[]

BaseDataVariableType

Optional

HasComponent

Variable

Wires

3:ISA95MaterialDataType[]

BaseDataVariableType

Optional

HasComponent

Method

StorePart

Mandatory

HasComponent

Method

FindPartsByType

Optional

Conformance Units

WireHarness PartManagementType

Each Part represents an 3:ISA95MaterialDataType with the Properties shown in Table 15 (VECPartVersion and VECDocumentVersion).

Both Properties (VECPartVersion and VECDocumentVersion) must not provide by the server in the part Lists (Terminals, Seals, Sleeves, Wires) but need to be sent from the client to the server (in the method calls).

The Fields especially of the VECDocumentVersion structure depend on the kind of process and the Part. Table 31 - Table 33 show which fields need to be filled for each Part. The table has four columns. The first column displays the VEC attribute, the second provides an additional commonly used name, followed by a description and an indication of whether the parameter is always required or optional. The VEC attribute can be a direct child of the specification or a child of a subelement; in the latter case, it is separated by a "/".

Wires contain Part information for all wires. Table 31 contains the fields that must be given for this Parameter.

Terminals contain Part information for all terminals. Table 32 contains the fields that must be given for this Parameter.

Seals contain Part information for all seals. Table 33 contains the fields that must be given for this Parameter.

Table 31 – Fields of a Wire

Fields (VEC Attributes)

Alternative Name

Description

Optional/Mandatory field

WireElementSpecification/WireType

WireType

Defines the type of the wire. A wire must not have more than one type. This attribute allows more than one value because the same type can be expressed in multiple reference systems.

WireType: Specifies a wire type. A wire type is always defined by a key value. Which wire type is meant by this key value is defined by a standard reference system.

Optional

ConductorSpecification/CrossSectionArea

CrossSection

Specifies the cross-section area of the conductor (e.g., 0.5 mm²). The cross-section area is a nominal value, which refers to the conducting properties of the conductor normalized to the properties of a full material core.

Mandatory

CoreSpecification/OutsideDiameter

ConductorDiameter

Specifies the outside diameter of the core.

Optional

WireElementSpecification/OutsideDiameter

IsoDiameter

Specifies the outside diameter of the WireElement.

Optional

InsulationSpecification/BaseColor

Color_1

Specifies the base color of the outer insulation.

Optional

InsulationSpecification/FirstIdentificationColor

Color_2

Specifies the first identification color of the outer insulation.

Optional

InsulationSpecification/SecondIdentificationColor

Color_3

Specifies the second identification color of the outer insulation.

Optional

Table 32 – Fields of a Terminal

Fields

Alternative Name

Description

Optional/Mandatory field

WireReceptionSpecification/CrimpConnectionLength

OverallCrimpingLength

Distance from the conductor tip (in the direction of the center of the wire) to the beginning of the terminal. Specifies the length of the crimp area, conductor, and insulation crimp (wire reception, see diagram "Terminal Dimensions").

Optional

TerminalSpecification/OverallLength

OverallTerminalLength

Used to circumnavigate obstacles.

Specifies the overall length the terminal.

Optional

WireReceptionSpecification/CoreCrimpDetails/Size/Width

NominalCrimpWidth

Defines the expected size of the crimp. The height is measured in the direction of the crimp opening. The width is measured orthogonal to the height and orthogonal to the main axis of the terminal

Optional

WireReceptionSpecification/CoreCrimpDetails/Size/Width/Tolerance

NominalCrimpWidthRange

Specifies the tolerance for the CrimpWidth

Optional

GeneralTechnicalPartSpecification/BoundingBox

MaximalTerminalWidth

Defines the bounding box of the part.

BoundingBox: The bounding box is defined for the processed state of the component, as it appears in the finished product. Therefore, it is valid to use the bounding box as simplified geometry of the component for viewing or simple DMU operations. For correct 3D positioning, the bounding may require transformation of the coordinate system of the component (see LocalGeometrySpecification.BoundingBoxPositioning).

The bounding box defines the smallest cuboid (box) that can contain a described part completely. If a component has multiple variants, the bounding box is the smallest cuboid that can contain every variant, while maintaining the spatial orientation of the bounding box and component variants.

It is valid to use the BoundingBox to describe the dimensions of a component, even if not all dimensions are known (e.g., only length and width). However, it must be possible to transform such a partial bounding box into a complete bounding box by adding the missing dimensions.

Used to circumnavigate obstacles.

The x,y,z coordinate of the Bouding Box are defined in the Figure 14.

Optional

7:PartVersion/PrimaryPartType

TerminalType

For display purposes.

Optional

WireReceptionSpecification/InsulationDisplacementLength

NominalStrippingLength

Specifies the length of the insulation which must be stripped off to fit to this wire reception. This overrides stripping parameters such as StripStartPosition

Optional

WireReceptionSpecification/InsulationDisplacementLength/Tolerance

NominalStrippingLengthRange

Specifies the tolerance for the dimension.

Optional

image019.jpg

Figure 14 – Direction of a Terminal (based on VEC)

Table 33 – Fields of a Seal

Fields

Alternative Name

Description

Optional/Mandatory field

GeneralTechnicalPartSpecification/ColorInformation

SealColor

Specifies the color of the part.

Optional

GeneralTechnicalPartSpecification/BoundingBox

SealLength /GeometricSealWidth

Length of the seal

Mandatory

This method is used to add a new Part to a list.

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

Signature

StorePart(

[in]3:ISA95MaterialDataTypePart);

Table 34 – StorePart Method Arguments

Argument

Description

Part

Information about the part.

Table 35 – StorePart Method AddressSpace definition

Attribute

Value

BrowseName

StorePart

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

0:InputArguments

0:Argument[]

0:PropertyType

0:Mandatory

This method returns all Parts of a Type.

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

Signature

FindPartsByType (

[in]0:NodeId TypeNodeId,

[out]3:ISA95MaterialDataType[]Parts);

Table 36 – FindPartsByType Method Arguments

Argument

Description

TypeNodeId

NodeId of the list of parts that should be returned. The node must be a subtype of the PartDataType.

Parts

Information about the part.

Table 37 – FindPartsByType Method AddressSpace definition

Attribute

Value

BrowseName

FindPartsByType

References

NodeClass

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

Theis method is used to remove a Part from the S.

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

Note: The Data Integrity described in 4.1.3 must be considered.

Signature

ClearPart (

[in] 3:ISA95MaterialDataType Part);

Table 38 – ClearPart Method Arguments

Argument

Description

Part

Information about the part. Either a MaterialClassID, or MaterialDefinitionID must be defined.

Warning: If only the MaterialClassID is used, all entries of a MaterialClass (e.g., all wires) are cleared.

Table 39 – ClearPart Method AddressSpace definition

Attribute

Value

BrowseName

ClearPart

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

0:InputArguments

0:Argument[]

0:PropertyType

0:Mandatory