8.8 MaterialLoadingPointType ObjectType

8.8.1 Overview

The MaterialLoadingPointType ObjectType describes the machine module part where materials are loaded (either manually or by means of an automated system or both) and the materials being loaded, as well as the brand integrity checks required.

The MaterialLoadingPointType is formally defined in the following table.

Table 50 – MaterialLoadingPointType Definition
Attribute Value
BrowseNameMaterialLoadingPointType
IsAbstractFalse
References Node Class BrowseName DataType TypeDefinition Other
Subtype of the TMCDeviceType i.e. inheriting the Instance Declarations of that Node.
0:HasComponentVariableActualDispensingRate0:DoubleMaterialRateTypeM, RO, HR
0:HasComponentVariableConsumedMaterialMasterTotal0:DoubleMaterialQuantityVariableTypeM, RO
0:HasComponentVariableConsumedMaterialTotal0:DoubleMaterialQuantityVariableTypeM, RO, HR
0:HasComponentVariableDispensedMaterialMasterTotal0:DoubleMaterialQuantityVariableTypeM, RO
0:HasComponentVariableDispensedMaterialTotal0:DoubleMaterialQuantityVariableTypeM, RO, HR
0:HasComponentVariableDispensingRateState0:LocalizedText0:StateVariableTypeM, RO, HR
0:HasPropertyVariableExpectedMaterialsMaterialSublotType[]0:PropertyTypeM, RO
0:HasComponentVariableLoadedMaterialMaterialSublotType[]0:BaseDataVariableTypeM, RO
0:HasPropertyVariableMaterialPointDefinitionMaterialPointType0:PropertyTypeM, RO
0:HasPropertyVariableMaterialIntegrityAgentMaterialIntegrityAgentEnumeration0:PropertyTypeM, RW
0:HasPropertyVariableMES_ID0:String0:PropertyTypeM, RW
0:HasComponentVariableNominalDispensingRate0:DoubleMaterialRateTypeM, RO
0:HasComponentVariablePresentedMaterialMaterialSublotType0:BaseDataVariableTypeM, RW
0:HasComponentVariablePresentedMaterialValidationStatusMaterialValidationStatusEnumeration0:BaseDataVariableTypeM, RO
0:HasComponentMethodSetPresentedMaterialValidationStatusSee below.M
0:HasPropertyVariableAllowMixedLots0:Boolean0:PropertyTypeM, RW
0:HasPropertyVariableUpstreamHold0:Boolean0:PropertyTypeM, RO
0:GeneratesEventObjectTypeIntegrityRejectedMaterialLogType
0:GeneratesEventObjectTypeLoadingPointUnloadedLogType
0:GeneratesEventObjectTypeMaterialConsumedLogType
0:GeneratesEventObjectTypeMaterialDispensedLogType
0:GeneratesEventObjectTypeMaterialUnloadingRequiredLogType
0:GeneratesEventObjectTypeNewPresentedMaterialLogType
Conformance Units
TMC Core Production
BrowseName Description
ActualDispensingRateThe actual rate at which the input material is being dispensed.
ConsumedMaterialMasterTotalThe total quantity of material that entered the machine loading point. This total is never reset.
ConsumedMaterialTotal

The total quantity of material that entered the machine loading point. When the material is loaded, it may be immediately dispensed or may be stored and dispensed when required according to the machine logic. When the material is immediately dispensed, the consumed material quantity equals the dispensed material quantity (DispensedMaterialTotal).

The quantity is reset by the successful execution of the ResetMachineTotals method, only.

DispensedMaterialMasterTotalThe total quantity of material dispensed at the machine after loading at the loading point. This total is never reset.
DispensedMaterialTotalThe total quantity of material dispensed at the machine after loading at the loading point. The quantity is reset by the successful execution of the ResetMachineTotals method, only.
DispensingRateState

The DispensingRateState provides information about the state of the dispensing rate justifying why the ActualDispensingRate is different from the NominalDispensingRate. At a minimum the list of states below shall be provided:

Id=0, Speed is at Nominal value

Id=1, Speed Changed by Operator

Id=2, Speed Followed from Downstream Internal

Id=3, Speed Reduced due to low input material

Id=4, Speed Reduced due to internal high input material level

Id=5, Speed Reduced due to Filling Mode

Id=6, Speed Reduced due to internal procedure (e.g. calibration)

Id=7, Speed Reduced due to input material change (e.g. foil splicing, inner frame bobbin change, etc.)

Id=8, Speed Changed by Remote Host

When the actual rate is not measured, Id=0 Speed is at Nominal value will be returned. The speed set by an external host, if any, is used as the NominalDispensingRate.

Null speed is a speed reduction. The list may be extended for specific states not already covered in the list above.

ExpectedMaterialsThe array of sublots of the material that are expected at the machine loading point for the current production. ExpectedMaterials is a set of MaterialListItems such that the UserMachineName in LoadingPoint matches the LoadingPointID of the MaterialListItem.
LoadedMaterial

An array of the sublots that entered the machine loading point. When a sublot is unloaded, it is also removed from the array.

The sublot in the first position is the sublot from which the machine module is currently dispensing the material. The quantity of the sublot in the first position is decreased by an amount equal to the dispensing.

MaterialPointDefinitionThe Property MaterialPointDefinition contains the identification of the material point and the material that is processed.
MaterialIntegrityAgent

MaterialIntegrityAgent defines how material validation is performed. The scenarios taken into consideration are defined by the MaterialIntegrityEnumeration:

None: the material validation is not requested. In this case the underlying system sets MaterialValidationResult to None.

External: an external system performs the material validation. The external system validates the PresentedMaterial and invokes the SetValidationResult method to transfer the validation results to the machine.

Local: the underlying system performs the material validation on the PresentedMaterial and sets the result in MaterialValidationResult.

When an unsupported value is written to the variable, the underlying system will overwrite it with a supported one.

MES_IDUnique identifier for the material point in an external system, e.g. MES.
NominalDispensingRateThe nominal rate at which the input material is dispensed when the machine runs at design speed.
PresentedMaterial

The material presented to the material loading point, but not yet loaded.

When the material is loaded, the underlying system resets the PresentedMaterial and the MaterialValidationStatus to Failed.

When an upstream machine is connected, the material output from the upstream machine is the presented material.

Read/Write to allow for external systems to request the validation of a material. When the PresentedMaterial changes, the validation system performs validation.

PresentedMaterialValidationStatusThe status of the validation of the presented material. When Passed, the presented material is loaded by the machine module; when Failed, the presented material will be removed from the loading point, either automatically or manually. When InProgress, the validation is in progress. When MaterialIntegrityAgent is None and MaterialPresented is empty, then the value is None.
AllowMixedLotsWhen AllowMixedLots is False and BatchManaged in the material definition of the ExpectedMaterials is True, then one material lot will be processed i.e. the first material lot received.
UpstreamHold UpstreamHold is true when the loading point cannot receive more product and the upstream machine is required to stop loading, False when the loading point can receive product.

8.8.2 SetPresentedMaterialValidationStatus Method

The SetPresentedMaterialValidationStatus Method provides a client with an affordance to perform the validation of the PresentedMaterial against the ExpectedMaterials and set the result of the validation in the PresentedMaterialValidationStatus variable.

The method is called by the material integrity agent, i.e. when MaterialIntegrityAgent is External.

The method is executed only when the MaterialValidationStatus is Waiting.

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

Signature

	SetPresentedMaterialValidationStatus (
	  [in]  MaterialValidationStatusEnumeration		ValidationResult,
	  [out] MethodExecutionFeedbackType		ExecutionFeedback);
Table 51 – SetPresentedMaterialValidationStatus Method Arguments
Argument Description
ValidationResultThe result of the validation of the PresentedMaterial.
ExecutionFeedbackThe extended feedback returning a detailed message in case of execution failure.

The material validation is performed checking (1) a sublot, (2) material lot of the sublot and (3) material definition of the PresentedMaterial against each material sublot in the ExpectedMaterials array. When one matches, the PresentedMaterial is valid and its ValidationStatus is set to True, otherwise False.

The PresentedMaterial is compared against a material sublot from the ExpectedMaterials array as follows being valid when all checks are True:

Sublot:

The PresentedMaterial sublot MES_ID is equal to the sublot MES_ID of a material sublot from the ExpectedMaterials. If the MES_ID of a material sublot from the ExpectedMaterials is Null, then the result of the check is true.

Material lot:

If AllowMixedLots is True, then the result of the check is True. If AllowMixedLots is False, then the result of the check is True for the first presented MaterialSublot and for all subsequent MaterialSublots of the same MaterialLot.

The PresentedMaterial MaterialStockStatus is Unrestricted or equal to the ExpectedMaterial MaterialStockStatus. For example, a ripping machine processes blocked material.

The BestUsedBeforeDate of the material sublot from the ExpectedMaterials is not greater than the current date. If BestUsedBeforeDate is NULL, then the result of this check is true.

Material Definition:

The PresentedMaterial material definition MES_ID is equal to an ExpectedMaterial material definition MES_ID. If the ExpectedMaterial MES_ID is Null, then the result of the check is true.

When the material is validated, the machine proceeds loading it. If it is not validated, the IntegrityRejectedMaterialLogType event is triggered and when the PresentedMaterial is unloaded and the loading procedure terminates, the LoadingPointUnloadedLogType event is generated. If the underlying system cannot reject the invalid material automatically, a MaterialUnloadingRequiredLogType event is generated.