Signal Mapping
In the past, machine tool builders typically provided legacy interfaces defined by leading customers in a similar way. Often these interfaces were quasi-standardized as they were integrated in the PLC libraries of the leading control manufacturers. The signal names were often the same.
The following table gives an overview how the standardized variables of OPC 40501-1 could be mapped to these legacy signals.
Legacy Signal |
Variables defined by OPC 40501-1 v1.00 |
Additional variables defined by OPC 40501-1 v1.01 |
Number of total parts |
(Not identical to legacy signal) ProductionStatisticsType/ PartsProducedInLifetime |
|
Number of good parts |
(Not identical to legacy signal) the information to each part ProductionPartType/ PartQuality |
|
Number of scrap parts |
(Not identical to legacy signal) the information to each part ProductionPartType/ PartQuality |
Can be calculated directly from
ProductionJobType/ PartsCompleted
minus
|
Production |
ChannelMonitoringType/ ChannelMode
ProductionType ActiveProgram/ CurrentState
ChannelMonitoringType/ FeedOverride
|
MachineryItemState_StateMachineType/ CurrentState = Executing
AND
MachineryOperationModeStateMachineType/ CurrentState = Processing The FeedOverride may also be included. |
Motors OFF (Energies OFF) |
|
(Not identical to legacy signal) MachineryItemState_StateMachineType/ CurrentState = OutOfService |
Override >=70 to 99 Override >= 100 Override = 0 Override = 100 |
ChannelMonitoringType/ FeedOverride as absolute value |
|
Active Program Number |
|
|
Automatic Mode MDA Mode JOG Mode
|
|
|
Start is active Stop is active |
|
|
Spindle running |
|
|
Program stop in reason of a programmed stop |
|
|
Program aborted in reason of a failure |
(incomplete) ProductionActiveProgramType/ CurrentState = Aborted
|
ProductionActiveProgramType/ CurrentState = Aborted AND MachineryItemState_StateMachineType/ CurrentState= Processing AND MachineryOperationModeStateMachineType/ CurrentState = Processing |
Program interrupted in reason of single step |
|
|
Error in general |
Occurrence of any Alarm with Severity >= 667 |
MachineryItemState_StateMachineType/ CurrentState = OutOfService |
Technical breakdown |
|
MachineryItemState_StateMachineType/ CurrentState = OutOfService AND MachineryOperationModeStateMachineType/ CurrentState = Processing |
Organisation breakdown |
|
MachineryItemState_StateMachineType/ CurrentState = NotExecuting AND MachineryOperationModeStateMachineType/ CurrentState = Processing |
OPC 40501-1 Job Management to OPC 40001-3 Job Management
With version 1.02 of OPC 40501-1, the job management with ProductionJobListType and ProductionActiveProgramType is deprecated. The job management for machine tools is intended to use OPC 40001-3 exclusively in the future.
The following table tries to map the previous 40501-1 variables to the OPC 40001-3 variables. Please note that the general idea for representing jobs, programs and parts in 40501-1 differs from the concept of OPC 40001-3 with job orders, work masters and OPC UA Structures for JobOrderParameters and JobOrderResults.
Most of the table’s contents are derived using section 7 and Annex B.2 of OPC 40001-3.
OPC 40501 |
OPC 40001-3 |
ActiveProgram/Name |
WorkMaster – ID (ID of ISA95WorkMasterDataType) |
ActiveProgram/State |
- |
ActiveProgram/NumberInList |
- |
ActiveProgram/JobNodeId |
WorkMaster is a Component of ISA95JobOrderReceiverObjectType. Individual JobOrders can reference WorkMasters. |
ActiveProgram/JobIdentifier |
WorkMaster is a Component of ISA95JobOrderReceiverObjectType. Individual JobOrders can reference WorkMasters. |
ProductionPlan/[Job]/CustomerOrderIdentifier |
In JobOrderParameters: CustomerOrderNumbers |
ProductionPlan/[Job]/Identifier |
JobOrderID in ISA95JobOrderReceiverObjectType/JobOrderList |
ProductionPlan/[Job]/OrderIdentifier |
In JobOrderParameters: OrderNumbers |
ProductionPlan/[Job]/PartsCompleted |
In JobOrderParameters: ProducedQuantity |
ProductionPlan/[Job]/PartsSets/[Set]/Name |
Entries for MaterialRequirements in JobOrderDataType for job input Entries for MaterialActuals in JobResponseDataType for job output Entries in AsBuiltBOM for job output |
ProductionPlan/[Job]/PartsSets/[Set]/PartsPlannedPerRun |
Quantity for entries for MaterialRequirements in JobOrderDataType for job input |
ProductionPlan/[Job]/PartsSets/[Set]/PartsCompletedPerRun |
Quantity for entries for MaterialActuals in JobResponseDataType for job output |
ProductionPlan/[Job]/PartsSets/[Set]/PartsPerRun/[Part]/CustomerOrderIdentifier |
- |
ProductionPlan/[Job]/PartsSets/[Set]/PartsPerRun/[Part]/Name |
[same as Identifier] ItemNumber in entries for MaterialRequirements in JobOrderDataType for job input ItemNumber in entries for MaterialActuals in JobResponseDataType for job output |
ProductionPlan/[Job]/PartsSets/[Set]/PartsPerRun/[Part]/Identifier |
[same as name] ItemNumber in entries for MaterialRequirements in JobOrderDataType for job input ItemNumber in entries for MaterialActuals in JobResponseDataType for job output |
ProductionPlan/[Job]/PartsSets/[Set]/PartsPerRun/[Part]/PartQuality |
- |
ProductionPlan/[Job]/PartsSets/[Set]/PartsPerRun/[Part]/ProcessIrregularity |
Not defined per individual part, but for MaterialActualsProcessIrregularity as Property for the ISA95MaterialDataType |
ProductionPlan/[Job]/PartsSets/[Set]/PartsPerRun/[Part]/State |
- |
ProductionPlan/[Job]/PartsSets/[Set]/ContainsMixedParts |
Entries in MaterialRequirements and MaterialActuals allow to represent different kinds of parts |
ProductionPlan/[Job]/PartsGood |
In JobOrderParameters: GoodQuantity |
ProductionPlan/[Job]/ProductionPrograms/[Program]/Name |
WorkMaster – ID (ID of ISA95WorkMasterDataType) |
ProductionPlan/[Job]/ProductionPrograms/[Program]/State |
- |
ProductionPlan/[Job]/ProductionPrograms/[Program]/NumberInList |
- |
ProductionPlan/[Job]/RunsCompleted |
In JobOrderParameters: RunsCompleted |
ProductionPlan/[Job]/RunsPlanned |
In JobOrderParameters: RunsPlanned |
ProductionPlan/[Job]/State |
Given for a job order with the ISA95JobOrderAndStateDataType / ISA95StateDataType |
ProductionPlan/[Job]/NumberInList |
- |