8.5 MachineModuleProductionType ObjectType
8.5.1 Overview
The MachineModuleProductionType Object provides information about the current production order and quantity produced as well as affordances to start/stop a production order and reset totals for the machine module.
The MachineModuleProductionType is formally defined in the table below.
| Attribute | Value | ||||
| BrowseName | MachineModuleProductionType | ||||
| 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:HasComponent | Method | AbortProductionOrder | See below. | O | |
| 0:HasProperty | Variable | AssignedProductionOrders | ProductionOrderType[] | 0:PropertyType | O, RO |
| 0:HasComponent | Method | AssignProductionOrder | See below. | O | |
| 0:HasProperty | Variable | AutoComplete | 0:Boolean | 0:PropertyType | O, RW |
| 0:HasProperty | Variable | AutoStart | 0:Boolean | 0:PropertyType | O, RW |
| 0:HasComponent | Method | ClearProductionOrder | See below. | O | |
| 0:HasComponent | Method | CompleteProductionOrder | See below. | M | |
| 0:HasComponent | Object | Data | 0:FolderType | O | |
| 0:HasProperty | Variable | ProductionOrder | ProductionOrderHeaderType | 0:PropertyType | M, RO |
| 0:HasProperty | Variable | ProductionStatus | ProductionStatusEnumeration | 0:PropertyType | M, RO |
| 0:HasComponent | Method | ResetProductionTotals | See below. | M | |
| 0:HasComponent | Method | StartAssignedProductionOrder | See below. | O | |
| 0:HasComponent | Method | StartProductionOrder | See below. | M | |
| 0:HasComponent | Object | StateMachine | MachineModuleProductionStateMachineType | O | |
| 0:HasComponent | Method | UnassignProductionOrder | See below. | O | |
| 0:GeneratesEvent | ObjectType | POStartedLogType | |||
| 0:GeneratesEvent | ObjectType | POStoppedLogType | |||
| Conformance Units | |||||
|---|---|---|---|---|---|
| TMC Core Production | |||||
| TMC Single PO Production | |||||
| TMC Multi PO Production |
| BrowseName | Description |
| AssignedProductionOrders | The AssignedProductionOrders array contains the production orders that have been assigned to the machine module and have not yet been started or unassigned. |
| AutoComplete | The AutoComplete Boolean defines how to trigger the machine module to complete the execution of a production order. When AutoComplete is False, the completion of a production order at the machine module is triggered with the method CompleteProductionOrder. When AutoComplete is True, the machine module initiates the completion of the production order when all the active upstream machine modules running the production order are in state complete. |
| AutoStart | The Autostart Boolean defines how to trigger the machine module to start a production order. When AutoStart is True and AssignedProductionOrders[] contains one PO, the assigned machine module initiates the starting sequence automatically for the assigned production order. When AutoStart is False, the start of a production order at the machine module is triggered with the method StartProductionOrder. StartProductionOrder is also invoked when AutoStart is True and AssignedProductionOrders[] contains more than one production order. |
| Data | The Data folder provides additional production data that is not identified elsewhere in this specification. e.g. a shift report. |
| ProductionOrder | The production order header in execution at the machine module. |
| ProductionStatus | The execution status of the production order. |
| StateMachine | The StateMachine extends ProductionStatus and provides detailed production execution status as well as methods to trigger the transitions and events when the transitions occur. |
8.5.2 AbortProductionOrder Method
The AbortProductionOrder method is used to abnormally terminate, or abort, a production order that is in execution or starting or completing. Aborting cannot be reversed or undone.
The signature of this Method is specified below. Table 30 specifies the Arguments representation.
Signature
AbortProductionOrder (
[in] ProductionOrderHeaderType POToAbort,
[out] MethodExecutionFeedbackType ExecutionFeedback);| Argument | Description |
| POToAbort | The production order to be aborted. The argument is unnecessary for execution (since at most one production order can be executed at any time in the machine module) but provided as a safety net since aborting cannot be reversed. |
| ExecutionFeedback | The extended feedback returning a detailed message in case of execution failure. |
8.5.3 AssignProductionOrder Method
The AssignProductionOrder Method is used to transfer the information of an upcoming production order to the machine module.
The signature of this Method is specified below. Table 31 specifies the Arguments representation.
Signature
AssignProductionOrder (
[in] ProductionOrderType POToAssign,
[out] MethodExecutionFeedbackType ExecutionFeedback);
| Argument | Description |
| POToAssign | The production order to assign to the machine module for later execution. |
| ExecutionFeedback | The extended feedback returning a detailed message in case of execution failure. |
8.5.4 ClearProductionOrder Method
The ClearProductionOrder method is used to positively confirm that the machine module where a production order is aborted has been cleared of the product or parts left by the aborted production order.
The signature of this Method is specified below. Table 32 specifies the Arguments representation.
Signature
ClearProductionOrder (
[out] MethodExecutionFeedbackType ExecutionFeedback);| Argument | Description |
| ExecutionFeedback | The extended feedback returning a detailed message in case of execution failure. |
8.5.5 CompleteProductionOrder Method
The CompleteProductionOrder method is used to complete a production order in execution.
The signature of this Method is specified below. Table 33 specifies the Arguments representation.
Signature
CompleteProductionOrder (
[out] MethodExecutionFeedbackType ExecutionFeedback);| Argument | Description |
| ExecutionFeedback | The extended feedback returning a detailed message in case of execution failure. |
When the StateMachine is in state Execute, the successful execution of the method causes the transition to state Completing.
When the method is invoked in any other state, the method property Executable is False and when the method is invoked, the status code Bad_NotSupported is returned.
8.5.6 StartAssignedProductionOrder Method
The StartAssignedProductionOrder Method starts a production order whose state is Assigned at the machine module.
The signature of this Method is specified below. Table 34 specifies the Arguments representation.
Signature
StartAssignedProductionOrder (
[in] ProductionOrderHeaderType POHeaderToStart,
[in] 0:String[] SourceMaterialLoadingPointIDs,
[in] 0:String[] DestinationMaterialOutputPointIDs,
[out] MethodExecutionFeedbackType ExecutionFeedback);| Argument | Description |
| POHeaderToStart | The header of the production order to be started. |
| SourceMaterialLoadingPointIDs | The list of material loading points that are going to be used by the production order to be started. |
| DestinationMaterialOutputPointIDs | The list of material output points that are going to be used by the production order to be started. |
| ExecutionFeedback | The extended feedback returning a detailed message in case of execution failure. |
8.5.7 StartProductionOrder Method
The StartProductionOrder Method starts a production order at the machine module.
The signature of this Method is specified below. Table 35 specifies the Arguments representation.
Signature
StartProductionOrder (
[in] ProductionOrderType POToStart,
[in] 0:String[] SourceMaterialLoadingPointIDs,
[in] 0:String[] DestinationMaterialOutputPointIDs,
[out] MethodExecutionFeedbackType ExecutionFeedback);| Argument | Description |
| POToStart | The production order to be started. |
| SourceMaterialLoadingPointIDs | The list of material loading points that are going to be used by the production order to be started. |
| DestinationMaterialOutputPointIDs | The list of material output points that are going to be used by the production order to be started. |
| ExecutionFeedback | The extended feedback returning a detailed message in case of execution failure. |
8.5.8 UnassignProductionOrder Method
The UnassignProductionOrder method is used to remove the specified production order from AssignedProductionOrders[] of an infeed machine module.
The signature of this Method is specified below. Table 36 specifies the Arguments representation.
Signature
UnassignProductionOrder (
[in] ProductionOrderHeaderType POToUnassign,
[out] MethodExecutionFeedbackType ExecutionFeedback);| Argument | Description |
| POToUnassign | The production order to be unassigned at the machine module. |
| ExecutionFeedback | The extended feedback returning a detailed message in case of execution failure. |
8.5.9 ResetProductionTotals
The Method ResetProductionTotals simultaneously resets the totals of the machine components belonging to the following machine folders: DefectDetectionSensors, MaterialLoadingPoints, MaterialOutputPoints, MaterialRejectionPoints.
The master totals belonging to the same objects are not reset.
The signature of this Method is specified below. Table 37 specifies the Arguments representation.
Signature
ResetProductionTotals (
[out] MethodExecutionFeedbackType ExecutionFeedback);| Argument | Description |
| ExecutionFeedback | The extended feedback returning a detailed message in case of execution failure. |