CFX. |
Class | Description | |
---|---|---|
![]() | CalibrationPerformed |
Sent when calibration of any sort has been performed at an endpoint.
{ "TransactionID": "a71dae78-b78d-49b6-939d-d8fb20281391", "Calibration": { "CalibrationCode": "FID1", "CalibrationType": "UnitPosition", "Comments": "Position Check. Fiducial FID1.", "Status": "Ok", "CalibrationTime": null, "Measurements": [ { "MeasurementName": "Measure1", "MeasurementValue": { "Value": 0.97, "ValueUnits": "mm", "ExpectedValue": 1.0, "ExpectedValueUnits": "mm", "MinimumAcceptableValue": 0.9, "MinimumAcceptableValueUnits": "mm", "MaximumAcceptableValue": 1.2, "MaximumAcceptableValueUnits": "mm" } } ] } } |
![]() | ChangeSleepStateRequest | ** NOTE: ADDED in CFX 1.3 ** This request allows an external source to change the sleep state of a Stage or Station ChangeSleepStateResponse message that it sends back to the requester.{ "StageName": "Stage 1", "NewSleepState": "Awake" } |
![]() | ChangeSleepStateResponse | ** NOTE: ADDED in CFX 1.3 ** Response to an external source to modify a generic configuration parameter of a process endpoint.{ "Result": { "Result": "Success", "ResultCode": 0, "Message": "OK" }, "OldSleepState": "Hibernate", "NewSleepState": "Awake", "Stage": { "StageSequence": 2, "StageName": "Stage 1", "StageType": "Work" }, "Lane": null, "TransitionTimeRemaining": "00:00:45" } |
![]() | EnergyConsumed |
Sent by a process endpoint on a sampled interval of between 1 minute and 1 hour
to indicate the energy usage and power consumption.
{ "StartTime": "2018-04-05T09:33:06.1358356-04:00", "EndTime": "2018-04-05T09:38:06.1358356-04:00", "EnergyUsed": 0.012, "PeakPower": 125.6, "MinimumPower": 120.3, "MeanPower": 124.6, "PowerNow": 121.1, "PowerFactorNow": 0.95, "PeakCurrent": 0.82, "MinimumCurrent": 0.00, "MeanCurrent": 0.68, "CurrentNow": 0.69, "PeakVoltage": 239.1, "MinimumVoltage": 231.6, "MeanVoltage": 232.9, "VoltageNow": 212.1, "PeakFrequency": 52, "MinimumFrequency": 50.5, "MeanFrequency": 50.6, “FrequencyNow": 50.6, "PeakPowerRYB": [ 125.6, 77.4, 10.2 ], "MinimumPowerRYB": [ 120.3, 68.5, 8.5 ], "MeanPowerRYB": [ 124.6, 70.2, 9.8 ], "PowerNowRYB": [ 121.1, 68.9, 10.1 ], "PowerFactorNowRYB": [ 0.95, 0.92, 0.80 ], "PeakCurrentRYB": [ 0.82, 0.65, 0.33 ], "MinimumCurrentRYB": [ 0.00, 0.01, 0.32 ], "MeanCurrentRYB": [ 0.68, 0.58, 0.32 ], "CurrentNowRYB": [ 0.69, 0.57, 0.32 ], "PeakVoltageRYB": [ 420.1, 413.7, 404.6 ], "MinimumVoltageRYB": [ 393.6, 399.8, 397.4 ], "MeanVoltageRYB": [ 402.9, 400.1, 402.3 ], "VoltageNowRYB": [ 401.1, 401.5, 402.3 ], "ThreePhaseNeutralCurrentNow": 0.06 } |
![]() | EnergyConsumptionRequest | ** NOTE: ADDED in CFX 1.3 ** This request allows an external source to inquire data regarding energy consumption of the endpoint EnergyConsumptionResponse message that it sends back to the requester. |
![]() | EnergyConsumptionResponse | ** NOTE: ADDED in CFX 1.3 ** Response to an external source inquiring data regarding energy consumption of the endpoint.{ "Result": { "Result": "Success", "ResultCode": 0, "Message": "OK" }, "StartTime": "2018-04-05T09:33:06.1358356-04:00", "EndTime": "2018-04-05T09:38:06.1358356-04:00", "EnergyUsed": 0.012, "PeakPower": 125.6, "MinimumPower": 120.3, "MeanPower": 124.6, "PowerNow": 121.1, "PowerFactorNow": 0.95, "PeakCurrent": 0.82, "MinimumCurrent": 0.00, "MeanCurrent": 0.68, "CurrentNow": 0.69, "PeakVoltage": 239.1, "MinimumVoltage": 231.6, "MeanVoltage": 232.9, "VoltageNow": 212.1, "PeakFrequency": 52, "MinimumFrequency": 50.5, "MeanFrequency": 50.6, “FrequencyNow": 50.6, "PeakPowerRYB": [ 125.6, 77.4, 10.2 ], "MinimumPowerRYB": [ 120.3, 68.5, 8.5 ], "MeanPowerRYB": [ 124.6, 70.2, 9.8 ], "PowerNowRYB": [ 121.1, 68.9, 10.1 ], "PowerFactorNowRYB": [ 0.95, 0.92, 0.80 ], "PeakCurrentRYB": [ 0.82, 0.65, 0.33 ], "MinimumCurrentRYB": [ 0.00, 0.01, 0.32 ], "MeanCurrentRYB": [ 0.68, 0.58, 0.32 ], "CurrentNowRYB": [ 0.69, 0.57, 0.32 ], "PeakVoltageRYB": [ 420.1, 413.7, 404.6 ], "MinimumVoltageRYB": [ 393.6, 399.8, 397.4 ], "MeanVoltageRYB": [ 402.9, 400.1, 402.3 ], "VoltageNowRYB": [ 401.1, 401.5, 402.3 ], "ThreePhaseNeutralCurrentNow": 0.06 } |
![]() | FaultAcknowledged |
Sent when a fault has been acknowledged by the operator, but not yet corrected (cleared).
A subsequent FaultCleared message will be sent once the operator addresses the issue.
{ "Operator": { "OperatorIdentifier": "BADGE4486", "ActorType": "Human", "LastName": "Doe", "FirstName": "John", "LoginName": "john.doe@domain1.com" }, "FaultOccurrenceId": "5af7e56c-cfbf-4f1f-aa4c-79d94a7442bc" } |
![]() | FaultCleared |
Sent by a process endpoint when a fault is cleared as described in a FaultOccurred message
{ "FaultOccurrenceId": "22ac3c8a-9e6d-42f8-85b2-f51bf2224ecc", "Operator": { "OperatorIdentifier": "BADGE4486", "ActorType": "Human", "LastName": "Doe", "FirstName": "John", "LoginName": "john.doe@domain1.com" } } |
![]() | FaultOccurred | Sent by a process endpoint whenever a fault is encountered. A data structure must be included in the message related to specific equipment type. Generic Fault Example: { "Fault": { "Cause": "MechanicalFailure", "Severity": "Error", "FaultCode": "ERROR 3943480", "FaultOccurrenceId": "ea170e0a-43fb-4b02-af2c-928a8401dd51", "Lane": null, "Stage": null, "SideLocation": "Unknown", "AccessType": "Unknown", "Description": null, "DescriptionTranslations": {}, "OccurredAt": "2018-10-31T15:13:31.0083597-04:00", "DueDateTime": null } } SMT Placement Fault Example: { "Fault": { "$type": "CFX.Structures.SMTPlacement.SMTPlacementFault, CFX", "PlacementFaultType": "PickupError", "ProgramStep": 56, "Designator": { "ReferenceDesignator": "R31", "UnitPosition": null, "PartNumber": "PN123456" }, "MaterialLocation": { "LocationIdentifier": "UID23948348324", "LocationName": "SLOT47", "MaterialPackage": { "UniqueIdentifier": "UID34280923084932849", "InternalPartNumber": "IPN456465465465", "Quantity": 854.0 }, "CarrierInformation": { "$type": "CFX.Structures.SMTPlacement.SMDTapeFeeder, CFX", "BaseUniqueIdentifier": null, "BaseName": null, "LaneNumber": 1, "TapeWidth": 8.0, "TapePitch": 8.0, "UniqueIdentifier": "FDR2348934-32890", "Name": "8MMFDR231" } }, "HeadAndNozzle": { "HeadId": "HEAD1", "HeadNozzleNumber": 3, "NozzleType": "TYPE914", "UniqueIdentifier": "UID2389432849", "Name": "NOZZLE3243244" }, "Cause": "MechanicalFailure", "Severity": "Error", "FaultCode": "ERROR 3943480", "FaultOccurrenceId": "a5c05bdc-41a3-4e50-b421-b084eb12ba2b", "Lane": 1, "Stage": { "StageSequence": 2, "StageName": "STAGE2", "StageType": "Work" }, "SideLocation": "Unknown", "AccessType": "Unknown", "Description": null, "DescriptionTranslations": {}, "OccurredAt": "2018-10-31T15:13:31.0552292-04:00", "DueDateTime": null } } THT Insertion Fault Example: { "Fault": { "$type": "CFX.Structures.THTInsertion.THTInsertionFault, CFX", "InsertionFaultType": "ClinchError", "ProgramStep": 56, "Designator": { "ReferenceDesignator": "R31", "UnitPosition": null, "PartNumber": "PN123456" }, "MaterialLocation": { "LocationIdentifier": "UID23948348324", "LocationName": "SLOT47", "MaterialPackage": { "UniqueIdentifier": "UID34280923084932849", "InternalPartNumber": "IPN456465465465", "Quantity": 854.0 }, "CarrierInformation": { "$type": "CFX.Structures.SMTPlacement.SMDTapeFeeder, CFX", "BaseUniqueIdentifier": null, "BaseName": null, "LaneNumber": 1, "TapeWidth": 8.0, "TapePitch": 8.0, "UniqueIdentifier": "FDR2348934-32890", "Name": "8MMFDR231" } }, "Cause": "MechanicalFailure", "Severity": "Error", "FaultCode": "ERROR 3943480", "FaultOccurrenceId": "cdc5d80e-bd0a-4b3b-9d85-9084b23f95e5", "Lane": 1, "Stage": { "StageSequence": 1, "StageName": "STAGE2", "StageType": "Work" }, "SideLocation": "Unknown", "AccessType": "Unknown", "Description": null, "DescriptionTranslations": {}, "OccurredAt": "2018-10-31T15:13:31.0708549-04:00", "DueDateTime": null } } Solder Paste Printing Fault Example: { "Fault": { "$type": "CFX.Structures.SolderPastePrinting.SMTSolderPastePrintingFault, CFX", "PrintingFaultType": "SqueegeeError", "Cause": "MechanicalFailure", "Severity": "Error", "FaultCode": "ERROR 234333", "FaultOccurrenceId": "1610b591-eba0-4d30-b56e-89fdc94f865e", "Lane": 1, "Stage": { "StageSequence": 1, "StageName": "PRINTSTAGE", "StageType": "Work" }, "SideLocation": "Unknown", "AccessType": "Unknown", "Description": null, "DescriptionTranslations": {}, "OccurredAt": "2018-10-31T15:13:31.1021044-04:00", "DueDateTime": null } } |
![]() | GetActiveFaultsRequest |
This request allows an external source to query the equipment for a list of active faults.
GetActiveFaultsResponse message that it sends back to the requester.
{} |
![]() | GetActiveFaultsResponse |
Response to an external source to modify a generic configuration parameter of a process endpoint.
{ "Result": { "Result": "Success", "ResultCode": 0, "Message": null }, "ActiveFaults": [ { "Cause": "MechanicalFailure", "Severity": "Error", "FaultCode": "ERROR 3943480", "FaultOccurrenceId": "85a0286a-622f-4f87-99d5-1f11c95806f3", "Lane": null, "Stage": null, "SideLocation": "Right", "AccessType": "Remote", "Description": "PCB Transport is blocked", "DescriptionTranslations": { "de-DE": "Der Leiterplattentransport ist blockiert" }, "OccurredAt": "2018-10-31T15:13:30.9146011-04:00", "DueDateTime": "2018-10-31T18:13:30.9146011-04:00" }, { "Cause": "LoadError", "Severity": "Error", "FaultCode": "ERROR 3943555", "FaultOccurrenceId": "bb1933c4-5c7f-4840-9261-72998d682b2f", "Lane": null, "Stage": null, "SideLocation": "Right", "AccessType": "Local", "Description": "PCB Transport is blocked", "DescriptionTranslations": { "de-DE": "Der Leiterplattentransport ist blockiert" }, "OccurredAt": "2018-10-31T15:13:30.9146011-04:00", "DueDateTime": "2018-10-31T18:13:30.9146011-04:00" } ] } |
![]() | HandleFaultRequest |
This request allows an external source to modify the behaviour for this dedicated fault in such a way that the
equoipment itself is not indicating the operator to handle this fault.
Basically the fault should be handled remotly and no operator should be guided by the equipment itself to handle
this fault locally on the equipment.
HandleFaultResponse message that it sends back to the requester.
{ "FaultOccurrenceId": "5f643ff3-8928-4079-af7f-926bcafb13f8", "HandleRemote": true } |
![]() | HandleFaultResponse |
Response to an external source to modify the behaviour for the equipment to guide the operator process endpoint.
{ "Result": { "Result": "Success", "ResultCode": 0, "Message": "OK" } } |
![]() | LogEntryRecorded |
An informational message sent by a process endpoint regarding the something that has occurred at the station.
Information about the criticality of the information should also be given (information, warning, error etc.).
{ "InformationId": "INF21321321", "Message": "Beam 1 Zeroed and Homed", "Importance": "Information", "Lane": 1, "Stage": { "StageSequence": 1, "StageName": "STAGE1", "StageType": "Work" } } |
![]() | MaintenancePerformed |
Sent by an endpoint when maintenance has been performed.
Information includes the type of maintenance, maintenance code, parts used, labor etc.
{ "MaintenanceType": "Preventive", "MaintenanceOrderNumber": "MO676578576", "MaintenanceJobCode": "MNT113334", "ConsumedMaterials": [ { "MaterialLocation": { "LocationIdentifier": null, "LocationName": null, "MaterialPackage": { "UniqueIdentifier": null, "InternalPartNumber": "PN2343243", "Quantity": 0.0 }, "CarrierInformation": null }, "QuantityUsed": 3.0, "QuantitySpoiled": 0.0, "RemainingQuantity": 0.0 }, { "MaterialLocation": { "LocationIdentifier": null, "LocationName": null, "MaterialPackage": { "UniqueIdentifier": "UID23849854385", "InternalPartNumber": "PN4452", "Quantity": 0.0 }, "CarrierInformation": null }, "QuantityUsed": 3.0, "QuantitySpoiled": 0.0, "RemainingQuantity": 0.0 } ], "Tasks": [ { "Task": "Changed hydraulic fluid in resovoir 1", "TaskId": "HYD233432432", "Operator": { "OperatorIdentifier": "BADGE489435", "ActorType": "Human", "LastName": "Smith", "FirstName": "Joseph", "LoginName": "joseph.smith@abcdrepairs.com" }, "ManHoursConsumed": 0.75 }, { "Task": "Checked torque on main mount bolts", "TaskId": "CHK3432434", "Operator": { "OperatorIdentifier": "BADGE489435", "ActorType": "Human", "LastName": "Smith", "FirstName": "Joseph", "LoginName": "joseph.smith@abcdrepairs.com" }, "ManHoursConsumed": 0.25 } ] } |
![]() | ModifyStationParametersRequest |
This request allows an external source to modify a generic configuration parameter of a process endpoint.
Upon successful processing of this request, the endpoint should publish a StationParametersModified message in addition to the
ModifyStationParametersResponse message that it sends back to the requester.
{ "NewParameters": [ { "$type": "CFX.Structures.GenericParameter, CFX", "Name": "Torque1", "Value": "35.6" } ] } |
![]() | ModifyStationParametersResponse |
Response to an external source to modify a generic configuration parameter of a process endpoint.
{ "Result": { "Result": "Success", "ResultCode": 0, "Message": "OK" } } |
![]() | ProcessDataRecorded | ** NOTE: ADDED in CFX 1.5 ** Cleaning Agent needs to report the status of the cleaning liquid regularly as well as an alarm if certain values go out of the allowable range{ "ProcessData": { "$type": "CFX.Structures.Cleaning.CleaningManagementData, CFX", "Readings": [ { "ReadingType": "TemperatureAverage", "ReadingValue": 25.0 }, { "ReadingType": "DIWaterVolumeAdd", "ReadingValue": 1.5 } ] } } |
![]() | SleepStateChanged | ** NOTE: ADDED in CFX 1.3 ** Sent by a process endpoint when the sleep state transitions from one state to another.Example 1 (Sleep State change to deeper sleep state): { "OldSleepState": "Awake", "NewSleepState": "Shallow", "TransitionTimeRemaining": null } Example 2 (Sleep State change to shallower sleep state): { "OldSleepState": "Hibernate", "NewSleepState": "Awake", "Stage": { "StageSequence": 2, "StageName": "Stage 1", "StageType": "Work" }, "Lane": null, "TransitionTimeRemaining": "00:00:45" } |
![]() | StageStateChanged |
Sent by a process endpoint when the production state of one of its
stages transitions from one state to another per its state model.
{ "Stage": { "StageSequence": 2, "StageName": "STAGE2", "StageType": "Work" }, "Lane": null, "OldState": 2200, "OldStateDuration": "00:01:25", "NewState": 1100, "RelatedFault": null } |
![]() | StationOffline |
Sent by a process endpoint when it is about to transition to a state where it is not
possible for further communication, for example when the endpoint is powered down,
reset, put into maintenance mode, or simply set off-line.
{} |
![]() | StationOnline |
Sent by a process endpoint when it is ready for communication to resume, for example, powered up, maintenance over, etc.
{ "OfflineDuration": "00:23:00" } |
![]() | StationParametersModified |
Sent by a process endpoint to indicate that an operator has modified a generic
parameter or configuration setting. This does not apply to settings related to
recipes, which are handled by the RecipeModified event.
Generic Example { "ModifiedParameters": [ { "$type": "CFX.Structures.GenericParameter, CFX", "Name": "Torque1", "Value": "35.6" } ] } Example fore Solder Reflow Oven { "ModifiedParameters": [ { "$type": "CFX.Structures.SolderReflow.ReflowOvenParameter, CFX", "ConveyorSpeedSetpoint": 50.0, "ConveyorWidth": 25.0, "ZoneParameters": [ { "Zone": { "ReflowZoneType": "PreHeat", "StageSequence": 1, "StageName": "Zone1", "StageType": "Work" }, "Setpoints": [ { "SubZone": "Top", "SetpointType": "Temperature", "Setpoint": 220.0 }, { "SubZone": "Bottom", "SetpointType": "Temperature", "Setpoint": 220.0 } ] }, { "Zone": { "ReflowZoneType": "Soak", "StageSequence": 2, "StageName": "Zone2", "StageType": "Work" }, "Setpoints": [ { "SubZone": "Top", "SetpointType": "Temperature", "Setpoint": 200.0 }, { "SubZone": "Bottom", "SetpointType": "Temperature", "Setpoint": 220.0 } ] }, { "Zone": { "ReflowZoneType": "Reflow", "StageSequence": 3, "StageName": "Zone3", "StageType": "Work" }, "Setpoints": [ { "SubZone": "Top", "SetpointType": "Temperature", "Setpoint": 200.0 }, { "SubZone": "Bottom", "SetpointType": "Temperature", "Setpoint": 220.0 }, { "SubZone": "WholeZone", "SetpointType": "O2", "Setpoint": 500.0 }, { "SubZone": "WholeZone", "SetpointType": "Vacuum", "Setpoint": 2.0 }, { "SubZone": "WholeZone", "SetpointType": "VacuumHoldTime", "Setpoint": 5.0 } ] }, { "Zone": { "ReflowZoneType": "Cool", "StageSequence": 4, "StageName": "Zone4", "StageType": "Work" }, "Setpoints": [ { "SubZone": "Top", "SetpointType": "Temperature", "Setpoint": 105.0 }, { "SubZone": "Bottom", "SetpointType": "Temperature", "Setpoint": 105.0 } ] } ] } ] } |
![]() | StationStateChanged |
Sent by a process endpoint when the production state transitions
from one state to another per its state model.
Example 1 (State change with no related fault): { "OldState": 2200, "OldStateDuration": "00:01:25", "NewState": 1100, "RelatedFault": null } Example 2 (State change with related fault): { "OldState": 1100, "OldStateDuration": "00:00:25", "NewState": 5500, "RelatedFault": { "Cause": "MechanicalFailure", "Severity": "Error", "FaultCode": "ERROR 3943480", "FaultOccurrenceId": "3de0cfce-42f4-4302-982b-96dba4ec3de0", "Lane": null, "Stage": null, "SideLocation": "Unknown", "AccessType": "Unknown" } } |
![]() | ToolChanged |
Sent when a new tool is selected for active use at a production endpoint
Example 1 (Generic tool change): { "OldTool": null, "ReturnedToHolder": null, "NewTool": { "UniqueIdentifier": "UID23890430", "Name": "TorqueWrench_123" }, "LoadedFromHolder": { "LocationUniqueIdentifier": "UID238943243243", "LocationName": "BIN45", "BaseName": null } } Example 2 (Nozzle change on SMT placement machine): { "OldTool": null, "ReturnedToHolder": null, "NewTool": { "$type": "CFX.Structures.SMTPlacement.SMTHeadAndNozzle, CFX", "HeadId": "HEAD1", "HeadNozzleNumber": 1, "NozzleType": "TYPE914", "UniqueIdentifier": "UID23890430", "Name": "NOZZLE234324" }, "LoadedFromHolder": { "LocationUniqueIdentifier": "UID238943243243", "LocationName": "HOLDER14", "BaseName": "NEST2" } } |