Track Out#
Overview#
Track Out records that a Material has completed processing at the Resource. MES applies its normal Track Out preconditions and completes the in-process execution.
See Track Out Material ↗ for the product transaction behavior.
Nodes#
| Relative node | OPC UA type | Direction | Purpose |
|---|---|---|---|
Operation.TrackOut.Material.Name | String | Machine → MES | Exact MES Material name |
Operation.TrackOut.MachineOperationRequest | Boolean | Machine → MES | Starts machine-initiated Track Out |
Operation.TrackOut.MESOperationPerformed | Boolean | MES → Machine | Indicates that MES performed Track Out and is waiting for machine confirmation |
Operation.TrackOut.MachineOperationConfirmed | Boolean | Machine → MES | Machine consumed the result |
Communication Flow#
sequenceDiagram
autonumber
actor O as Operator
participant M as Machine / OPC UA Server
participant I as Connect IoT
participant E as Critical Manufacturing MES
alt Machine initiated
M->>I: Material.Name
M->>I: MachineOperationRequest = true
I->>E: Track Out resolved in-process Material
else Operator initiated
O->>E: Track Out selected Material in MES UI
end
E->>E: Validate and perform Track Out within transaction
E-->>I: Track Out performed, awaiting machine confirmation
I->>M: MESOperationPerformed = true
alt Confirmation before MachineReplyTimeout
M-->>I: MachineOperationConfirmed = true
I-->>E: Machine confirmed
E->>E: Commit Track Out
I->>M: MESOperationPerformed = false
M->>I: Machine-owned bits = false
else MachineReplyTimeout expires
I-->>E: Machine confirmation timeout
E->>E: Roll back Track Out
I->>M: MESOperationPerformed = false
end Step-by-Step Process#
Machine-Initiated#
- The PLC writes
Material.Name. - The PLC sets
MachineOperationRequest = true, which raises the machine request through Connect IoT. - Connect IoT requests Track Out in MES and provides the explicit Material name when available.
- MES resolves the explicit Material or, when FIFO is enabled, the first eligible in-process Material at the Resource.
- MES validates and performs Track Out within the current transaction.
- Connect IoT sets
MESOperationPerformed = trueand waits forMachineOperationConfirmed = true. - When confirmation arrives before
MachineReplyTimeout, MES commits Track Out. - Both sides return their control bits to
false. - If confirmation does not arrive in time, Track Out fails and the transaction rolls back.
Operator-Initiated#
- The operator selects the Material and performs Track Out in the MES UI;
MachineOperationRequestis not required. - MES validates and performs Track Out within the current transaction.
- Connect IoT sets
MESOperationPerformed = trueand waits for the machine confirmation. - When confirmation arrives before
MachineReplyTimeout, MES commits Track Out. - The result and confirmation bits are reset.
- If confirmation does not arrive in time, the operator receives a failure and the transaction rolls back.
Failure Behavior#
- In MES automation controller type must be
IndEqController - In MES resource
EnableAutomationScenariosmust be set totrue - A Material that is not in process at the Resource is rejected.
- A failed MES validation or transaction leaves
MESOperationPerformed = false. - If the machine does not set
MachineOperationConfirmed = truebeforeMachineReplyTimeoutexpires, Track Out is not successful and its transaction rolls back. - After a timeout, reconcile the MES Material state, machine state, and handshake values before retrying.
Validation and Assumptions#
- Explicit and FIFO resolution select only an eligible in-process Material.
- Operator-initiated Track Out notifies the machine when
EnableAutomationScenarios = true. - The performed signal is written only after the MES succeeds.
- Duplicate and missing-acknowledgement recovery do not execute Track Out twice.
- Resource is set as
EnableAutomationScenarios = true - MES automation controller type is
IndEqController