PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 1 / 59

Yanfeng Automotive Interiors North America

Design: Stephen Shoup Jatin Sheta Email:[email protected]

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 2 / 59

Contents

Abbreviations ...... 3 Section 1: Main OB1 ...... 4 Section 2: Badge Security Operation Authorization Levels ...... 7 Section 3: PLC Program Structure ...... 8 Section 4: PLC/MES Tags ...... 11 Section 5: PLC Cycle Status Codes/MES Status Codes ...... 13 Section 6: Station MES FC ...... 15 Section 7: Trace Data FC ...... 24 Section 8: Fault Reporting FC ...... 28 Section 9: Auto Sequence FC Example ...... 34 Section 10: Requirements for MES/PLC Connectivity ...... 37 Appendix 1. PLC/MES Flow Chart ...... 38 Appendix 2. Traceability Data by Machine Type ...... 39 Appendix 3. Machine/Process/Operations Data ...... 52 Appendix 4. PLC/MES Handshake Diagrams ...... 55 Appendix 5. HMI Screens...... 56

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 3 / 59

Abbreviations

ERP Enterprise Resource Planning MES Manufacturing Execution System YFAI Yanfeng Automotive Interiors OPC OLE for Process Control, OLE, IMM Injection Molding Machine OEM Original Equipment Manufacturer VW Vibration Welding Machine AOI Rockwell Automation Add on Instruction DB Siemens Programming Data Block FB Siemens Programming Function Block FC Siemens Programming Function Call Andon Shop Floor Management Notification System BC Barcode WinnCC Siemens Human Machine Interface (HMI) OPC UA OPC UA(Unified Architecture),OPC IP Instrument Panel DP Door Plate Cockpit Instrument Panel Assembly Subnet Subset of Larger Industrial Shop Floor Network Gateway A Router Used to Send Data to Other Networks OP Operation Panel HMI Human Machine Interface PanelView Plus Rockwell Automation Human Machine Interface (HMI)

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 4 / 59

Section 1: Main OB1

The following rungs are located in the template program’s OB1 block and are required for use for MES/PLC integration.

This FB is used to check the communication (heartbeat) between MES and the machine. The heartbeat FB will produce a heartbeat from the station PLC and receive a heartbeat from the MES system. The PLC heartbeat to MES will trigger every 500 milliseconds. The PLC will expect to receive the MES heartbeat signal within every 6 seconds. If 6 seconds expire without receiving the MES heartbeat, a station fault should be triggered along with a fault message on the station HMI. See section 8 MES/PLC Fault Reporting for more information.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 5 / 59

Section 1 Main OB1 This network is used to collect the PLC date time and construct a date time string for part history data collection and MES/part status override event time stamping. OEM shall set PLC date time prior to or upon commissioning of the equipment in the YFAI facility.

Network used to establish a part status override event in the PLC. Note the rung collects the logged in admin user requesting the event and sends to MES for later analysis if needed. The override AOI works by asking the user to select a number of machine cycles they are requesting to override. A maximum number of 10 are allowed per override event.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 6 / 59

Section 1 Main OB1 Rung used to establish a MES override event in the PLC. Note the rung collects the logged in admin user requesting the event in PLC arrays for later analysis if needed. The override AOI works by asking the user to select a number of machine cycles they are requesting to override. A maximum number of 10 are allowed per override event.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 7 / 59

Section 2: Badge Security Operation Authorization Levels

Describes the use of the employee badge for authorizing machine operation and permissive for changes to machine parameters. HMI Security:  Levels of security with auto log-off.  Operator level  Supervisor Level  Maintenance Level  Engineering Level  Administrative Level

 Credential Protection  Badges  One Factor authentication (Badge only)  Keyboard password input must be disabled – Badge Only  Automatic reset of poke-yoke bypass every hour, start of shift and start of machine.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 8 / 59

Section 3: PLC Program Structure

MES interface data, traceability data, and machine operation data DBs are shown below. Both machine data and trace data types are comprised of arrays of bools, dints, reals, and strings [25] to accommodate various types of data that may be required to collect. Consult with YFAI to determine which of these data types are going to be required for your equipment and automation cell.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 9 / 59

Section 3: PLC Program Structure

Note regarding “AutoSequenceFC” and “FaultReportingFC”, are provided to show YFAI expecations with how OEM logic shall incorporate both MES and fault data in the OEM program. OEMs can use the examples provided with the write their own logic incorporating the data types and points shown in the template program however, the “Station MES Logic FC”, “OverridePermissiveFB, “DateTimeToStringFB”, “TraceDataFC” and “PartHistoryFB” are required to be used as shown in subsequent chapters of this document.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 10 / 59

Section 3: PLC Program Structure Note the user defined PLC data types:

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 11 / 59

Section 4: PLC/MES Tags

PLC to MES PLC tags used with MES. Tags in yellow are trigger events to MES (.e. cycle start, part cycle complete, and override active.) Note the User ID is a user defined data type with 5 members as shown below under the “User ID” tag TAG Data Type Description “Interface”.ToMES.MasSerNum/DB1005.DBX0.0 STRING[25] Master Serial Number “Interface”.ToMES.MasPartNum/ DB1005.DBX28.0 STRING[25] Master Part Number “Interface”.ToMES.AuxSerNum/ DB1005.DBX56.0 STRING[25] Auxiliary Serial Number “Interface”.ToMES.AuxPartNum/ DB1005.DBX84.0 STRING[25] Auxiliary Part Number “Interface”.ToMES.MachineID/ DB1005.DBX112.0 STRING[20] Machine ID “Interface”.ToMES.PrevMachineID/ DB1005.DBX134.0 STRING[20] Previous Machine ID “Interface”.ToMES.UserID/ DB1005.DBX278.0 z_User User Data Group “Interface”.ToMES.UserID.Name/ DB1005.DBX278.0 STRING[20] User Name (Part of User Data) “Interface”.ToMES.UserID.BadgeIDNum/ DB1005.DBX300.0 STRING[20] User Badge Number (Part of User Data) “Interface”.ToMES.UserID.DataTime/ DB1005.DBX322.0 STRING[25] Data Time of User Event (Part of User Data) “Interface”.ToMES.UserID.AccesLevel/ DB1005.DBX350.0 DINT User Data Access Level (Part of User Data) “Interface”.ToMES.UserID.Password/ DB1005.DBX354.0 STRING[5] User Data Password (Part of User Data) “Interface”.ToMES.BuildData/ DB1005.DBX156.0 STRING[120] Build Data to Send to MES “Interface”.ToMES.CyclStat/ DB1005.DBX362.0 DINT Part Cycle Status “Interface”.ToMES.MachineErrCode/ DB1005.DBX366.0 DINT Machine Error Code to MES “Interface”.ToMES.DownTimeCode/ DB1005.DBX370.0 DINT Down Time Code to MES “Interface”.ToMES.ReqOKCycleStart/ DB1005.DBX374.0 BOOL Request OK Cycle Start to MES “Interface”.ToMES.StartCyclePermittedACK/ DB1005.DBX374.1 BOOL Start Cycle Permitted Acknowledge to MES “Interface”.ToMES.StartCycleDeniedACK/ DB1005.DBX374.2 BOOL Start Cycle Denied Acknowledge to MES “Interface”.ToMES.MESErrACK/ DB1005.DBX374.3 BOOL MES Error Acknowledge to MES “Interface”.ToMES.ResetMESHandshake/ DB1005.DBX374.4 BOOL Reset MES Handshake to MES “Interface”.ToMES.MachInCycle/ DB1005.DBX374.5 BOOL Machine In Cycle to MES “Interface”.ToMES.PartCycComp/ DB1005.DBX374.6 BOOL Part Cycle Complete to MES “Interface”.ToMES.CycEndUpdateCompleteACK/ DB1005.DBX374.7 BOOL Cycle End Update Complete Ack to MES “Interface”.ToMES.TraceActive/ DB1005.DBX375.0 BOOL MES Logic is Active to MES “Interface”.ToMES.AutoMode/ DB1005.DBX375.1 BOOL Machine in Auto Mode to MES “Interface”.ToMES.MachResetActive/ DB1005.DBX375.2 BOOL Machine Reset is Active to MES “Interface”.ToMES.SerNumEqual/ DB1005.DBX375.3 BOOL Serial Number Match to/from MES “Interface”.ToMES.SerNumMismatch/ DB1005.DBX375.4 BOOL Serial Number Mismatch to/from MES “Interface”.ToMES.HrtBeatToMes/ DB1005.DBX375.5 BOOL Heart Beat to MES “Interface”.ToMES.OvrrideTrigToMES/ DB1005.DBX375.6 BOOL Override Part Status Active in PLC PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 12 / 59

Section 4 PLC/MES Tags

MES to PLC PLC tags used to receive information from MES: TAG Data Type Description “Interface”.FromMES.RetBarcodeMES/ DB1005.DBX376.0 STRING[120] Return Parent Barcode to PLC “Interface”.FromMES.RetSerNum/ DB1005.DBX498.0 STRING[25] Return Serial Number to PLC “Interface”.FromMES.RecipeToRun/ DB1005.DBX526.0 DINT Recipe To Run to PLC “Interface”.FromMES.StatusCode/ DB1005.DBX530.0 DINT Return Status Code to PLC “Interface”.FromMES.RetStartData/ DB1005.DBX534.0 DINT Return Start Data to PLC “Interface”.FromMES.RetEndData/ DB1005.DBX538.0 DINT Return End Data to PLC “Interface”.FromMES.PartType/ DB1005.DBX542.0 DINT Part Type to PLC “Interface”.FromMES.DriverSide/ DB1005.DBX546.0 DINT Driver Side to PLC “Interface”.FromMES.ProcessTimeSecs/ DB1005.DBX550.0 DINT Process Time in Seconds to PLC “Interface”.FromMES.TimeSinceLastProcCmpSecs1/ DB1005.DBX554.0 DINT Time Since Last Process Complete to PLC “Interface”.FromMES.TimeSinceLastProcCmpSecs2/ DB1005.DBX558.0 DINT Time 2 Since Last Process Complete to PLC “Interface”.FromMES.StartCyclePermitted/ DB1005.DBX562.0 BOOL Start Cycle Permitted to PLC “Interface”.FromMES.StartCycleDenied/ DB1005.DBX562.1 BOOL Start Cycle Denied to PLC “Interface”.FromMES.MESCycEndUpdateComplete/ DB1005.DBX562.2 BOOL MES Cycle End Update Complete to PLC “Interface”.FromMES.MESError/ DB1005.DBX562.3 BOOL MES Error to PLC “Interface”.FromMES.MachineResetACK/ DB1005.DBX562.4 BOOL Machine Reset Signal Acknowledged to PLC “Interface”.FromMES.HrtBeatToStaPlc/ DB1005.DBX562.5 BOOL Heart Beat to Station PLC

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 13 / 59

Section 5: PLC Cycle Status Codes/MES Status Codes

Cycle status is a code assigned by the station PLC to the part in station after a part cycle is completed in station. Note if a part cycle is aborted, a code of 4 or 5 will be assigned to the cycle status PLC tag.

Please see template program Trace Data FC for specific logic examples for assigning cycle status codes in the OEM PLC program.

Note: equipment supplier and Yanfeng automotive shall determine if the station shall be permitted to run parts more than once in station.

PLC Cycle Status Code Explanation 1 Operation Complete Part Pass 2 Part Fail Part Rework is Allowed 3 Part Pass but Poke Yoke was Bypassed 4 Cycle Abort Part Not Complete Rework Allowed 5 Cycle Abort Part Not Complete Scrap Part 6 Part Fail Scrap Part 7 Part Pass but Pass Set with Part Status Override

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 14 / 59

Section 5 MES PLC Part Status Codes/MES Status Codes MES codes to PLC:

Note these codes shall be used for MES/PLC fault messages displayed to the HMI. Codes under 50 represent results obtained from MES while codes 50 and greater represent error conditions occurring as MES attempted to respond to the PLC request for information.

PLC shall be allowed to release part from station with returned MES status codes of 1, 2, or 3 however with codes 2 and 3, the part will not be permitted to run in the next station nor will it be allowed to ship to the customer. Only with a MES status code of 1 will the part be allowed to run in subsequent stations or be approved for shipment.

Note a status code of 9 is not a valid code to return to the PLC unless MES is acting as the synchronized time keeper for station PLCs.

MES Status Code Explanation 1 Part Update Complete 2 Part Update Complete for FAIL Status 3 Part Update Complete for ABORT Status 4 Previous Station Did Not Pass Part Cannot Run 5 Duplicate Process Variable Name Found 6 Process Variables Not Recorded 7 Part Status Code Was Not Found 8 Part Has Non-Rework Status Code Cannot Overwrite 9 Could Not Obtain Date Time from MES Server 10 Place Holder 49 Place Holder 50 Invalid Or Missing Serial Number 51 Invalid or Missing Part Number 52 Invalid or Missing Machine ID 53 Invalid or Missing Cycle Status Code Sent to MES 54 Invalid or Missing Variable Name 55 Invalid or Missing Customer/Part Data 56 Invalid Or Missing Child Serial Number 57 Invalid or Missing User Login Information 58 Place Holder 98 Place Holder 99 MES Database Error Contact I.T. Support

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 15 / 59

Section 6: Station MES FC

Network 1: Station status bits that can be used to update MES on station status (auto mode, reset, trace active, in cycle)

Network 2: Data check to ensure all data is in place and valid prior to initiating a MES cycle start request

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 16 / 59

Section 6 Station MES FC

Network 3: Station PLC requesting cycle start with previous station machine ID. Note this rung will also record a “start” time stamp immediately after the start cycle request is made. Upon start cycle request, the part cycle status tag is cleared one time to ensure updated value will be written to the tag.

Network 4: Start cycle request is on and status code from MES = 0 then set the MES start cycle transaction bit

Network 5: Checking if serial number sent to MES matches the serial number sent back to the PLC. This check is confirmation of correct data set exchanged between MES and the PLC.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 17 / 59

Section 6 Station MES FC

Network 6: Response for cycle start request received from MES. Rung determines in cycle start is permitted or denied as well as a check of serial numbers to ensure there is a match. The “end” time stamp is also recorded immediately after a MES response is received.

Rung 7: Start cycle permission or denial to start cycle received from MES. This rung will also take the “start” time stamp from rung 2 and the “end” time stamp from rung 4 and calculate the total response time for the transaction in milliseconds as well as calculate the average response time (in milliseconds) of the last 10 transactions.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 18 / 59

Section 6 Station MES FC

Rung 8: Start cycle permit or deny acknowledge bits to MES set upon receiving a start cycle request response.

Rung 9: Station PLC unlatches start cycle request after acknowledging the received response form MES

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 19 / 59

Section 6 Station MES FC Rung 10: Only Used to mark cycle complete section of MES logic Rung 11: Data check to ensure all data is in place and valid prior to initiating a MES part cycle complete transaction

Network 12: Station PLC to MES Part Cycle Complete trigger. This network also collects a time stamp marking the beginning of the part cycle complete transaction with MES.

Network 13: With part cycle complete set and status code to MES = 0 the part cycle complete transaction in progress bit is set

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 20 / 59

Section 6 Station MES FC Network 14: Copy end transaction time stamp and calculate the time difference for the part cycle complete transaction

Rung 15: Station PLC receives MES status code (response) and confirms serial number match sets part update complete

Network 16: Station PLC acknowledges MES part cycle complete response

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 21 / 59

Section 6 Station MES FC Network 17: Station PLC unlatches part cycle complete after acknowledging the part cycle complete response from MES. Data is loaded into part history AOI for display of transaction results. Data includes date time, serial number, status codes, and transaction times for both start and end of part cycle.

Network 18: Rung updates MES on serial number match. The serial number match is used as a check in the PLC/MES handshake to ensure agreement on current part in station.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 22 / 59

Section 6 Station MES FC Network 19: Station PLC storing last status code sent by MES

Network 20: Station PLC acknowledging MES error received. “OEM_Data” MES error bit received is set in fault reporting FC network 11. PLC acknowledges MES error back to MES. If MES error bit received is reset by MES, the MES error bit received bit is also reset.

Network 21: Reset handshake to MES: this may or may not tie to a machine fault reset button but is used to indicate to MES the current handshake data shall be reset on both the PLC and MES end

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 23 / 59

Section 6 Station MES FC Network 22: Used to set the PLC/MES transaction in progress bit for HMI display

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 24 / 59

Section 7: Trace Data FC

Cycle trace data can be of real, dint, string, or bool data types. During the machine cycle, the OEM will write trace data to their PLC tags. This routine is provided to copy the OEM trace tag date to the YFAI standard trace date tags. OEM trace data tags represented by tags “TraceDataValues” by data type (Real, Dint, String, Bool) are shown along with the method to copy the data to the YFAI standard trace data tags. Each YFAI trace data tag will have both a value and a name. Process value names are already hard copied into their respective tags. See appendix 2 for specifics on trace data per process type and trace data tags for use.

Note: this will have to be configured after discussions with Yanfeng on exactly what and how many trace data points are to be collected for your application.

Network 1: Set the bit for machine cycle trace data collection:

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 25 / 59

Section 7: Trace Data FC

Network 2: Copy trace data from OEM trace data tags to YFAI standard trace data tags. Note: flame treat trace data tags are used as an example.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 26 / 59

Section 7: Trace Data FC Network 3: Increase “TraceIndex” count and ensure count is less than 32, jump back to network 2

Rung 4: Clear “TraceIndex” when a value greater than 31 is attained

Rung 5: Part cycle complete part pass results in a value of 1 for cycle status

Network 6: Part cycle complete part fail results in a value of 2 for cycle status Determine if rework of part is allowed or not. 2 is assigned is rework is allowed and 6 is assigned if rework is not allowed.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 27 / 59

Section 7: Trace Data FC Network 7: One or more machine poke yokes in place will always result in a value of 3 for cycle status

Network 8: Part machine cycle abort triggers a MES event with a cycle status value of either 4 or 5. 4 is assigned is rework is allowed and 5 is assigned if rework is not allowed.

When part status override is active in the station PLC the part cycle status code shall have a value of 7 after each part cycle complete. The override code will allow the part to proceed to the next station and run in station as if it were given a part status code of 1 or pass in the current station.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 28 / 59

Section 8: Fault Reporting FC

Network 1: Station fault bit based on part faults, machine faults, or MES faults. MES faults only with no active MES override condition

Network 2: Machine requesting barcode scan trigger and waiting on barcode data. If valid data not found in 500 milliseconds, a fault condition will occur. Note consult with YFAI engineer to determine parameters for valid scan data.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 29 / 59

Section 8 Fault Reporting FC Network 3: Station cannot continue MES transaction as station is currently faulted

Network 4: Data is not valid for start cycle request to MES. Both the previous station machine ID along with the current serial number are required for MES to process the cycle start transaction and if missing either one the PLC will raise this fault.

Network 5: Once a MES cycle start transaction is in progress monitor the time the start cycle transaction bit is set. A MES communication fault will generate if the timer expires at 5 seconds.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 30 / 59

Section 8 Fault Reporting FC Network 6: Fault condition for serial number mismatch from cycle start MES transaction. This fault will occur if the serial number sent to MES does not match the serial number returned by MES for handshake data check.

Network 7: Data is not valid for part cycle complete update to MES. The station machine ID, current serial number, and valid cycle status code are required for MES to process the cycle start transaction. Missing data will result in this PLC fault.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 31 / 59

Section 8 Fault Reporting FC Network 8: Once a MES part cycle complete transaction is in progress monitor the time the transaction bit is set. A MES communication fault will generate if the timer finishes at 5 seconds.

Network 9: Fault condition for serial number mismatch from MES part cycle complete transaction. This fault will occur if the serial number sent to MES does not match the serial number returned by MES for handshake data check.

Network 10: Heartbeat signal from MES has been lost fault condition

Network 11: MES error to PLC

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 32 / 59

Section 8 Fault Reporting FC Network 12: Setting the check for trace data faults bit

Network 13: Fault condition for trace data required but not found for available trace data types: reals, dints, string, and bools. If the data type is required, the fault condition can be active is no data is found upon a machine part cycle completing. This is accomplished using a LBL/JMP loop in the PLC which will check each required trace data point for a value.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 33 / 59

Section 8 Fault Reporting FC

Network 14: The other end of the fault index looping for LBL/JMP loop

Network 15: Exiting LBL/JMP loop when “faultIndex” is greater than 31

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 34 / 59

Section 9: Auto Sequence FC Example

Rung showing example of how OEM logic may call for barcode trigger once a part has been placed in station

After triggering and receiving barcode data, checks to ensure the serial number received fits YFAI format. If the serial number is found to be valid, the rung sets the start cycle request bit to MES

Upon receiving start cycle permissive from MES, operator can start the machine cycle via the start cycle push button. This will set the auto cycle started memory bit.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 35 / 59

Section 9 Auto Sequence FC Example

Rung example setting the station in cycle bit. This bit can be used to indicate to MES the station is in cycle.

When part cycle compete is achieved (NOTE this is not cycle complete) and the appropriate cycle status code (see Section 5) is assigned to the cycle status tag; the part cycle complete bit is set. This bit will in turn trigger the MES part cycle complete transaction.

Rung example for cycle complete. The use of the MES part update complete or active MES override are required conditions for machine cycle complete.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 36 / 59

Section 9 Auto Sequence FC Example

Rung example of clearing machine and MES data to get ready for the next machine cycle. MES latch bits for cycle start permit/deny and machine part update complete are reset.

Rung example showing a 0.5 second reset upon pressing a HMI reset faults push button

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 37 / 59

Section 10: Requirements for MES/PLC Connectivity

1 Controller Types Permitted 1.1 Use PLCs supporting multiple IP addresses (for PLC and MES networks) 1.2 Siemens 1.3 Allen Bradley 2 HMIs Permitted 2.1 Siemens 2.2 Rockwell 3 Network 3.1 Siemens Profinet 3.2 Rockwell Ethernet I/P 3.3 Siemens/Rockwell PLC Communications 3.4 Use of unmanaged switches 3.4.1 Unmanaged switch types permitted 3.5 Use of managed switches 3.5.1 Managed Switch types permitted 4 Remote diagnostics 4.1 VPN Devices 5 Service Panel 5.1 .

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 38 / 59

Appendix 1. PLC/MES Flow Chart

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 39 / 59

Appendix 2. Traceability Data by Machine Type

Data Point Description PLC Tag Data Type Torque 1 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[0] Bool Torque 2 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[1] Bool Torque 3 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[2] Bool Torque 4 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[3] Bool Torque 5 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[4] Bool Torque 6 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[5] Bool Torque 7 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[6] Bool Torque 8 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[7] Bool Torque 9 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[8] Bool Torque 10 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[9] Bool Torque 11 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[10] Bool Torque 12 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[11] Bool Torque 13 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[12] Bool Torque 14 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[13] Bool Torque 15 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[14] Bool Nut Torque 16 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[15] Bool Runner Angle 1 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[16] Bool Angle 2 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[17] Bool Angle 3 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[18] Bool Angle 4 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[19] Bool Angle 5 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[20] Bool Angle 6 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[21] Bool Angle 7 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[22] Bool Angle 8 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[23] Bool Angle 9 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[24] Bool Angle 10 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[25] Bool Angle 11 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[26] Bool Angle 12 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[27] Bool Angle 13 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[28] Bool Angle 14 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[29] Bool Angle 15 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[30] Bool Angle 16 1 = Pass 0 = Fail "StaTrace".NutRunner.Bools[31] Bool

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 40 / 59

Appendix 2 Traceability by Machine Type

Data Point Description PLC Tag Data Type Torque Value Pt 1 "StaTrace".NutRunner.Reals[0] Real Torque Value Pt 2 "StaTrace".NutRunner.Reals[1] Real Torque Value Pt 3 "StaTrace".NutRunner.Reals[2] Real Torque Value Pt 4 "StaTrace".NutRunner.Reals[3] Real Torque Value Pt 5 "StaTrace".NutRunner.Reals[4] Real Torque Value Pt 6 "StaTrace".NutRunner.Reals[5] Real Torque Value Pt 7 "StaTrace".NutRunner.Reals[6] Real Torque Value Pt 8 "StaTrace".NutRunner.Reals[7] Real Torque Value Pt 9 "StaTrace".NutRunner.Reals[8] Real Torque Value Pt 10 "StaTrace".NutRunner.Reals[9] Real Torque Value Pt 11 "StaTrace".NutRunner.Reals[10] Real Torque Value Pt 12 "StaTrace".NutRunner.Reals[11] Real Torque Value Pt 13 "StaTrace".NutRunner.Reals[12] Real Torque Value Pt 14 "StaTrace".NutRunner.Reals[13] Real Torque Value Pt 15 "StaTrace".NutRunner.Reals[14] Real Nut Torque Value Pt 16 "StaTrace".NutRunner.Reals[15] Real Runner Angle Value Pt 1 "StaTrace".NutRunner.Reals[16] Real Angle Value Pt 2 "StaTrace".NutRunner.Reals[17] Real Angle Value Pt 3 "StaTrace".NutRunner.Reals[18] Real Angle Value Pt 4 "StaTrace".NutRunner.Reals[19] Real Angle Value Pt 5 "StaTrace".NutRunner.Reals[20] Real Angle Value Pt 6 "StaTrace".NutRunner.Reals[21] Real Angle Value Pt 7 "StaTrace".NutRunner.Reals[22] Real Angle Value Pt 8 "StaTrace".NutRunner.Reals[23] Real Angle Value Pt 9 "StaTrace".NutRunner.Reals[24] Real Angle Value Pt 10 "StaTrace".NutRunner.Reals[25] Real Angle Value Pt 11 "StaTrace".NutRunner.Reals[26] Real Angle Value Pt 12 "StaTrace".NutRunner.Reals[27] Real Angle Value Pt 13 "StaTrace".NutRunner.Reals[28] Real Angle Value Pt 14 "StaTrace".NutRunner.Reals[29] Real Angle Value Pt 15 "StaTrace".NutRunner.Reals[30] Real Angle Value Pt 16 "StaTrace".NutRunner.Reals[31] Real

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 41 / 59

Appendix 2 Traceability by Machine Type

Data Point Description PLC Tag Data Type Oxygen Percent "StaTrace".FlameTreat.Reals[0].PVval Real Air pressure "StaTrace".FlameTreat.Reals[1].PVval Real Air Flow "StaTrace".FlameTreat.Reals[2].PVval Real Gas Pressure "StaTrace".FlameTreat.Reals[3].PVval Real Flame Gas Flow "StaTrace".FlameTreat.Reals[4].PVval Real Treat Gas Mix Ratio "StaTrace".FlameTreat.Reals[5].PVval Real Flame Treat Pass "StaTrace".FlameTreat.Bools[0].PVval Bool Flame On Sensor "StaTrace".FlameTreat.Bools[1].PVval Bool Robot Program "StaTrace".FlameTreat.Dints[0].PVval Dint Robot Speed "StaTrace".FlameTreat.Dints[1].PVval Dint

Data Point Description PLC Tag Data Type Program Number "StaTrace".Sewing.Dints[0].PVval Dint Recipe Thread "StaTrace".Sewing.Dints[1].PVval Dint Sewing Stitch Length "StaTrace".Sewing.Dints[2].PVval Dint Tension "StaTrace".Sewing.Dints[3].PVval Dint Cycle Pass "StaTrace".Sewing.Bools[0].PVval Bool

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 42 / 59

Appendix 2 Traceability by Machine Type

Data Point Description PLC Tag Data Type Color "StaTrace".Slush.Dints[0].PVval Dint Oven Temperature "StaTrace".Slush.Reals[0].PVval Real Oven Heat Time "StaTrace".Slush.Reals[1].PVval Real Rotation Start Temperature "StaTrace".Slush.Reals[2].PVval Real Slush Rotation Angle "StaTrace".Slush.Reals[3].PVval Real Slush Rotation Speed "StaTrace".Slush.Reals[4].PVval Real Gel Oven Temperature "StaTrace".Slush.Reals[5].PVval Real Gel Oven Time "StaTrace".Slush.Reals[6].PVval Real Cooling Time "StaTrace".Slush.Reals[7].PVval Real Powder Box Weight "StaTrace".Slush.Reals[8].PVval Real Slush Part weight "StaTrace".Slush.Reals[9].PVval Real Part Thickness "StaTrace".Slush.Reals[10].PVval Real Frame Number "StaTrace".Slush.Reals[11].PVval Real Cavity Number "StaTrace".Slush.Dints[1].PVval Dint Recipe Resin "StaTrace".Slush.Dints[2].PVval Dint Program Number "StaTrace".Slush.Dints[3].PVval Dint Galvano Temperature "StaTrace".Slush.Reals[12].PVval Real Powder Box Temperature "StaTrace".Slush.Reals[13].PVval Real Cycle Count Per Tool (lifetime) "StaTrace".Slush.Dints[4].PVval Dint Cycle Count Per Tool (Since Cleaning) "StaTrace".Slush.Dints[5].PVval Dint Slush Cycle Pass "StaTrace".Slush.Bools[0].PVval Bool

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 43 / 59

Appendix 2 Traceability by Machine Type

Data Point Description PLC Tag Data Type Table Position Number "StaTrace".KnifeScore.Dints[0].PVval Dint Barcode Skin "StaTrace".KnifeScore.String[0].PVval String Part Destroyed "StaTrace".KnifeScore.Bools[0].PVval Bool Skin Thickness Pos 1 to 30 "StaTrace".KnifeScore.Reals[0] - [29].PVval Real Skin Temperature "StaTrace".KnifeScore.Reals[30].PVval Real Knife "StaTrace".KnifeScore.Dints[1].PVval Dint Score Blade Count Blade Check "StaTrace".KnifeScore.Bools[1].PVval Bool Blade Compensation "StaTrace".KnifeScore.Dints[2].PVval Dint Relative Wall Thickness "StaTrace".KnifeScore.Reals[31].PVval Real Knife Scoring Pass "StaTrace".KnifeScore.Bools[3].PVval Bool Robot Program Number "StaTrace".KnifeScore.Dints[3].PVval Dint

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 44 / 59

Appendix 2 Traceability by Machine Type

Data Point Description PLC Tag Data Type Mold Carrier Number "StaTrace".FoamInPlace.Dints[0].PVval Dint Program Number "StaTrace".FoamInPlace.Dints[1].PVval Dint Part Shot Number "StaTrace".FoamInPlace.Dints[2].PVval Dint Mix head Number "StaTrace".FoamInPlace.Dints[3].PVval Dint Shot Weight "StaTrace".FoamInPlace.Reals[0].PVval Real Shot Time "StaTrace".FoamInPlace.Reals[0].PVval Real Temperature Polyol "StaTrace".FoamInPlace.Reals[1].PVval Real Temperature Isocyanate "StaTrace".FoamInPlace.Reals[2].PVval Real Pressure Polyol "StaTrace".FoamInPlace.Reals[3].PVval Real Pressure Isocyanate "StaTrace".FoamInPlace.Reals[4].PVval Real Flow Polyol "StaTrace".FoamInPlace.Reals[5].PVval Real Foam In Flow Isocyanate "StaTrace".FoamInPlace.Reals[6].PVval Real Place Index / Mix Ratio "StaTrace".FoamInPlace.Reals[7].PVval Real Cure Time "StaTrace".FoamInPlace.Reals[8].PVval Real Upper Tool Temperature "StaTrace".FoamInPlace.Reals[9].PVval Real Lower Tool Temperature "StaTrace".FoamInPlace.Reals[10].PVval Real Frequency of Poly Pump "StaTrace".FoamInPlace.Reals[11].PVval Real Frequency of Isocyanate Pump "StaTrace".FoamInPlace.Reals[12].PVval Real Tool Angle "StaTrace".FoamInPlace.Reals[13].PVval Real Inflation Time "StaTrace".FoamInPlace.Reals[14].PVval Real Deflation Time "StaTrace".FoamInPlace.Reals[15].PVval Real Skin Check "StaTrace".FoamInPlace.Bools[0].PVval Bool Carrier Check "StaTrace".FoamInPlace.Bools[1].PVval Bool Foam In Place Cycle Pass "StaTrace".FoamInPlace.Bools[2].PVval Bool

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 45 / 59

Appendix 2 Traceability by Machine Type

Data Point Description PLC Tag Data Type Heating zone temperature "StaTrace".Punch.Reals[0].PVval Real Heating Zone Power "StaTrace".Punch.Reals[1].PVval Real Heating Time "StaTrace".Punch.Reals[2].PVval Real Process Temperature of the Sheet "StaTrace".Punch.Reals[3].PVval Real Press Pressure "StaTrace".Punch.Reals[4].PVval Real Punch Press Time "StaTrace".Punch.Reals[5].PVval Real Press Holding Pressure "StaTrace".Punch.Reals[6].PVval Real Holding Time "StaTrace".Punch.Reals[7].PVval Real Punching Pressure "StaTrace".Punch.Reals[8].PVval Real Punching Time "StaTrace".Punch.Reals[9].PVval Real Mold Temperature "StaTrace".Punch.Reals[10].PVval Real Program to Run "StaTrace".Punch.Dints[0].PVval Dint Punch Press Cycle Pass "StaTrace".Punch.Bools[0].PVval Bool

Data Point Description PLCTag Data Type Table side "StaTrace".Milling.Dints[0].PVval Dint The Speed of Splind "StaTrace".Milling.Dints[1].PVval Dint Vacuum Pressure "StaTrace".Milling.Reals[0].PVval Real Feed Speed "StaTrace".Milling.Reals[1].PVval Real Knife Test "StaTrace".Milling.Dints[2].PVval Dint Airbag Robot Program Number "StaTrace".Milling.Dints[3].PVval Dint Milling Robot Process Time "StaTrace".Milling.Reals[2].PVval Real AirBag Weakening Robot Process Time "StaTrace".Milling.Reals[3].PVval Real Program to Run "StaTrace".Milling.Dints[4].PVval Dint Robot Tracking in Part "StaTrace".Milling.Dints[5].PVval Dint Mill Bit Type "StaTrace".Milling.Dints[6].PVval Dint Mill Bit Check Complete "StaTrace".Milling.Bools[0].PVval Bool Air Bag Mill Cycle Pass "StaTrace".Milling.Bools[1].PVval Bool

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 46 / 59

Appendix 2 Traceability by Machine Type

Data Point Description PLC Tag Data Type Weld Point 1 1= P, 0 = F "StaTrace".SonicWelding.Bools[0] Bool Weld Point 2 1= P, 0 = F "StaTrace".SonicWelding.Bools[1] Bool Weld Point 3 1= P, 0 = F "StaTrace".SonicWelding.Bools[2] Bool Weld Point 4 1= P, 0 = F "StaTrace".SonicWelding.Bools[3] Bool Weld Point 5 1= P, 0 = F "StaTrace".SonicWelding.Bools[4] Bool Weld Point 6 1= P, 0 = F "StaTrace".SonicWelding.Bools[5] Bool Weld Point 7 1= P, 0 = F "StaTrace".SonicWelding.Bools[6] Bool Weld Point 8 1= P, 0 = F "StaTrace".SonicWelding.Bools[7] Bool Weld Point 9 1= P, 0 = F "StaTrace".SonicWelding.Bools[8] Bool Weld Point 10 1= P, 0 = F "StaTrace".SonicWelding.Bools[9] Bool Weld Point 11 1= P, 0 = F "StaTrace".SonicWelding.Bools[10] Bool Weld Point 12 1= P, 0 = F "StaTrace".SonicWelding.Bools[11] Bool Weld Point 13 1= P, 0 = F "StaTrace".SonicWelding.Bools[12] Bool Weld Point 14 1= P, 0 = F "StaTrace".SonicWelding.Bools[13] Bool Weld Point 15 1= P, 0 = F "StaTrace".SonicWelding.Bools[14] Bool Sonic Weld Point 16 1= P, 0 = F "StaTrace".SonicWelding.Bools[15] Bool Welding Weld Point 17 1= P, 0 = F "StaTrace".SonicWelding.Bools[16] Bool Weld Point 18 1= P, 0 = F "StaTrace".SonicWelding.Bools[17] Bool Weld Point 19 1= P, 0 = F "StaTrace".SonicWelding.Bools[18] Bool Weld Point 20 1= P, 0 = F "StaTrace".SonicWelding.Bools[19] Bool Weld Point 21 1= P, 0 = F "StaTrace".SonicWelding.Bools[20] Bool Weld Point 22 1= P, 0 = F "StaTrace".SonicWelding.Bools[21] Bool Weld Point 23 1= P, 0 = F "StaTrace".SonicWelding.Bools[22] Bool Weld Point 24 1= P, 0 = F "StaTrace".SonicWelding.Bools[23] Bool Weld Point 25 1= P, 0 = F "StaTrace".SonicWelding.Bools[24] Bool Weld Point 26 1= P, 0 = F "StaTrace".SonicWelding.Bools[25] Bool Weld Point 27 1= P, 0 = F "StaTrace".SonicWelding.Bools[26] Bool Weld Point 28 1= P, 0 = F "StaTrace".SonicWelding.Bools[27] Bool Weld Point 29 1= P, 0 = F "StaTrace".SonicWelding.Bools[28] Bool Weld Point 30 1= P, 0 = F "StaTrace".SonicWelding.Bools[29] Bool Weld Point 31 1= P, 0 = F "StaTrace".SonicWelding.Bools[30] Bool Weld Point 32 1= P, 0 = F "StaTrace".SonicWelding.Bools[31] Bool

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 47 / 59

Appendix 2 Traceability by Machine Type

Data Point Description PLC Tag Data Type Hold Time Zone 1 "StaTrace".SonicWelding.Reals[0] Real Hold Time Zone 2 "StaTrace".SonicWelding.Reals[1] Real Hold Time Zone 3 "StaTrace".SonicWelding.Reals[2] Real Hold Time Zone 4 "StaTrace".SonicWelding.Reals[3] Real Hold Time Zone 5 "StaTrace".SonicWelding.Reals[4] Real Cooling Time Zone 1 "StaTrace".SonicWelding.Reals[5] Real Cooling Time Zone 2 "StaTrace".SonicWelding.Reals[6] Real Cooling Time Zone 3 "StaTrace".SonicWelding.Reals[7] Real Cooling Time Zone 4 "StaTrace".SonicWelding.Reals[8] Real Cooling Time Zone 5 "StaTrace".SonicWelding.Reals[9] Real Weld Time Zone 1 "StaTrace".SonicWelding.Reals[10] Real Weld Time Zone 2 "StaTrace".SonicWelding.Reals[11] Real Weld Time Zone 3 "StaTrace".SonicWelding.Reals[12] Real Weld Time Zone 4 "StaTrace".SonicWelding.Reals[13] Real Weld Time Zone 5 "StaTrace".SonicWelding.Reals[14] Real Sonic Weld Depth Zone 1 "StaTrace".SonicWelding.Reals[15] Real Weld Weld Depth Zone 2 "StaTrace".SonicWelding.Reals[16] Real Continued Weld Depth Zone 3 "StaTrace".SonicWelding.Reals[17] Real Weld Depth Zone 4 "StaTrace".SonicWelding.Reals[18] Real Weld Depth Zone 5 "StaTrace".SonicWelding.Reals[19] Real Weld Pressure Zone 1 "StaTrace".SonicWelding.Reals[20] Real Weld Pressure Zone 2 "StaTrace".SonicWelding.Reals[21] Real Weld Pressure Zone 3 "StaTrace".SonicWelding.Reals[22] Real Weld Pressure Zone 4 "StaTrace".SonicWelding.Reals[23] Real Weld Pressure Zone 5 "StaTrace".SonicWelding.Reals[24] Real Cooling Time Zone 1 "StaTrace".SonicWelding.Reals[25] Real Cooling Time Zone 2 "StaTrace".SonicWelding.Reals[26] Real Cooling Time Zone 3 "StaTrace".SonicWelding.Reals[27] Real Cooling Time Zone 4 "StaTrace".SonicWelding.Reals[28] Real Cooling Time Zone 5 "StaTrace".SonicWelding.Reals[29] Real Spare "StaTrace".SonicWelding.Reals[30] Real Spare "StaTrace".SonicWelding.Reals[31] Real Weld Control Type "StaTrace".SonicWelding.Dints[0] Dint

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 48 / 59

Appendix 2 Traceability by Machine Type

Data Point Description PLC Tag Data Type

Supply Pressure "StaTrace".VacuumForming.Reals[0].PVval Real

Pre-Blowing Pressure "StaTrace".VacuumForming.Reals[1].PVval Real

Stripping Pressure "StaTrace".VacuumForming.Reals[2].PVval Real

Vacuum Pressure "StaTrace".VacuumForming.Reals[3].PVval Real

Cycling Time "StaTrace".VacuumForming.Dints[0].PVval Dint

Heating Time "StaTrace".VacuumForming.Dints[1].PVval Dint

Stopper Delay "StaTrace".VacuumForming.Dints[2].PVval Dint

Stopper Action Time "StaTrace".VacuumForming.Dints[3].PVval Dint

Upper Table Rise Delay "StaTrace".VacuumForming.Dints[4].PVval Dint

Lower table Rise Delay "StaTrace".VacuumForming.Dints[5].PVval Dint

Pre-Blow Delay "StaTrace".VacuumForming.Dints[6].PVval Dint

Pre-Blowing Time "StaTrace".VacuumForming.Dints[7].PVval Dint Vacuum Vacuum Suction Delay "StaTrace".VacuumForming.Dints[8].PVval Dint Forming Molding Time "StaTrace".VacuumForming.Dints[9].PVval Dint

Vacuum Adsorption Time "StaTrace".VacuumForming.Dints[10].PVval Dint

Cooling Delay "StaTrace".VacuumForming.Dints[11].PVval Dint

Blowing Time "StaTrace".VacuumForming.Dints[12].PVval Dint

Mold Temperature "StaTrace".VacuumForming.Reals[4].PVval Real

Skin heating temperature "StaTrace".VacuumForming.Reals[5].PVval Real

Upper Plate Heating Power "StaTrace".VacuumForming.Reals[6].PVval Real

Lower Plate Heating Power "StaTrace".VacuumForming.Reals[7].PVval Real

Glue Spray Pressure "StaTrace".VacuumForming.Reals[8].PVval Real

Glue Spray Amount "StaTrace".VacuumForming.Reals[9].PVval Real

Oven Drying Time "StaTrace".VacuumForming.Reals[10].PVval Real

Oven Drying Temperature "StaTrace".VacuumForming.Reals[11].PVval Real

Top Heat Plate Epidermis Temp "StaTrace".VacuumForming.Reals[12].PVval Real

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 49 / 59

Appendix 2 Traceability by Machine Type

Data Point Description PLC Tag Data Type Bottom Heat Plate Epidermis Temp "StaTrace".VacuumForming.Reals[13].PVval Real Heating Block Power Output "StaTrace".VacuumForming.Reals[14].PVval Real Upper Mold Vacuum Pressure "StaTrace".VacuumForming.Reals[15].PVval Real Lower Mold Vacuum Pressure "StaTrace".VacuumForming.Reals[16].PVval Real Upper Mold Temperature "StaTrace".VacuumForming.Reals[17].PVval Real Lower Mold Temperature "StaTrace".VacuumForming.Reals[18].PVval Real Vacuum Upper Mold Vacuum Action Time "StaTrace".VacuumForming.Dints[13].PVval Dint Forming Upper Mold Vacuum Effect Delay Time "StaTrace".VacuumForming.Dints[14].PVval Dint Continued Lower mold vacuum action time "StaTrace".VacuumForming.Dints[15].PVval Dint Lower Mold Vacuum Effect Delay Time "StaTrace".VacuumForming.Dints[16].PVval Dint Molding Position "StaTrace".VacuumForming.Reals[19].PVval Real Clamping Pressure "StaTrace".VacuumForming.Reals[20].PVval Real Material Thickness Before Cycle "StaTrace".VacuumForming.Reals[21].PVval Real Material Thickness After Cycle "StaTrace".VacuumForming.Reals[22].PVval Real Program to Run "StaTrace".VacuumForming.Dints[17].PVval Dint Clamping Pressure Time "StaTrace".VacuumForming.Dints[18].PVval Dint

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 50 / 59

Appendix 2 Traceability by Machine Type

Data Point Description PLC Tag Data Type Weld Amplitude Set Value "StaTrace".VibrationWelding.Reals[0].PVval Real Weld Amplitude Process Value "StaTrace".VibrationWelding.Reals[1].PVval Real Weld Frequency in Hz Set Value "StaTrace".VibrationWelding.Reals[2].PVval Real Weld Frequency in Hz Process Value "StaTrace".VibrationWelding.Reals[3].PVval Real Weld Depth Set Value "StaTrace".VibrationWelding.Reals[4].PVval Real Weld Depth Process Value "StaTrace".VibrationWelding.Reals[5].PVval Real Vibration Weld Time Set Value "StaTrace".VibrationWelding.Reals[6].PVval Real Welding Weld Time Process Value "StaTrace".VibrationWelding.Reals[7].PVval Real Total Weld Depth "StaTrace".VibrationWelding.Reals[8].PVval Real Weld Force "StaTrace".VibrationWelding.Reals[9].PVval Real Hold Time Set Value "StaTrace".VibrationWelding.Reals[10].PVval Real Hold Time Process Value "StaTrace".VibrationWelding.Reals[11].PVval Real Hold Pressure Set Value "StaTrace".VibrationWelding.Reals[12].PVval Real Hold Pressure Process Value "StaTrace".VibrationWelding.Reals[13].PVval Real Program to Run "StaTrace".VibrationWelding.Dints[0].PVval Dint

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 51 / 59

Appendix 2 Traceability by Machine Type

Data Point Description PLC Tag Data Type Clip 1 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[0] Bool Clip 2 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[1] Bool Clip 3 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[2] Bool Clips 4 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[3] Bool Clips 5 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[4] Bool Clip 6 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[5] Bool Clip 7 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[6] Bool Clip 8 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[7] Bool Clip 9 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[8] Bool Clip 10 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[9] Bool Snap Lock 1 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[10] Bool Snap Lock 2 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[11] Bool Snap Lock 3 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[12] Bool Snap Lock 4 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[13] Bool Snap Lock 5 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[14] Bool Assembly Snap Lock 6 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[15] Bool and Vision Snap Lock 7 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[16] Bool Snap Lock 8 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[17] Bool Snap Lock 9 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[18] Bool Snap Lock 10 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[19] Bool Spare "StaTrace".AssyVision.Bools[20] Bool Spare "StaTrace".AssyVision.Bools[21] Bool Spare "StaTrace".AssyVision.Bools[22] Bool Bezel 1 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[23] Bool Bezel 2 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[24] Bool Duct 1 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[25] Bool Duct 2 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[26] Bool Pad 1 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[27] Bool Pad 2 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[28] Bool Part Photo 1 = Taken 0 = Not Taken "StaTrace".AssyVision.Bools[29] Bool Hud 1 = Present 0 = Not Present "StaTrace".AssyVision.Bools[30] Bool Vision Inspection 1 = Pass 0 = Fail "StaTrace".AssyVision.Bools[31] Bool

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 52 / 59

Appendix 3. Machine/Process/Operations Data

Data Point Description PLC Tag Data Type (Names of Bool data) Array of 32 "Station".ProcessData.Bools Bools Process (Names of Dint data) Array of 32 "Station".ProcessData.Dints Dints Data (PR) (Names of real data) Array of 32 "Station".ProcessData.Reals Reals (Names of string data) Array of 32 "Station".ProcessData.Strings Strings[25]

Data Point Description PLC Tag Data Type Machine Fault Code "Station".MachineData.Dints[0] Dint Machine Status "Station".MachineData.Dints[1] Dint Machine Part Reject "Station".MachineData.Dints[2] Dint Material Status "Station".MachineData.Dints[3] Dint Machine Mode "Station".MachineData.Dints[4] Dint Over Cycle Status "Station".MachineData.Dints[5] Dint Mold/Tool ID "Station".MachineData.Dints[6] Dint Active Alarm Code "Station".MachineData.Dints[7] Dint Machine ID "Station".MachineData.Strings[0] String[25] Machine Machine Date "Station".MachineData.Strings[1] String[25] Data (MD) Machine Time "Station".MachineData.Strings[2] String[25] Starved "Station".MachineData.Bools[0] Bool Blocked "Station".MachineData.Bools[1] Bool Set Value Out of Range "Station".MachineData.Bools[2] Bool Machine Bypass "Station".MachineData.Bools[3] Bool Machine Red Rabbit "Station".MachineData.Bools[4] Bool Machine Fault "Station".MachineData.Bools[5] Bool Part Reject "Station".MachineData.Bools[6] Bool Test Mode "Station".MachineData.Bools[7] Bool Active Alarm "Station".MachineData.Bools[8] Bool

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 53 / 59

Appendix 3 Machine/Process/Operations

Data Point Description PLC Tag Data Type Repair Flag "Station".QualityData.Bools[0] Bool Rebuild Flag "Station".QualityData.Bools[1] Bool Quality Scrap Flag "Station".QualityData.Bools[2] Bool Data (QD) Rerun "Station".QualityData.Bools[3] Bool Defect Flag "Station".QualityData.Bools[4] Bool Bad Cycle "Station".QualityData.Bools[5] Bool

Data Point Description PLC Tag Data Type Handshake Active "Station".CommunicationData.Bools[0] Bool No Error "Station".CommunicationData.Bools[1] Bool Communiation No Response "Station".CommunicationData.Bools[2] Bool Data (CD) Invalid Request "Station".CommunicationData.Bools[3] Bool Error Handling "Station".CommunicationData.Dints[0] Dint Online/Offline "Station".CommunicationData.Dints[1] Dint

Data Point Description PLC Tag Data Type Auto Order PM "Station".MaintenanceData.Bools[0] Bool Maintenance Auto Clean Up "Station".MaintenanceData.Bools[1] Bool Data (MD) Auto Grease "Station".MaintenanceData.Bools[2] Bool Predictive Data "Station".MaintenanceData.Dints[0] Dint Cycle Counts "Station".MaintenanceData.Dints[1] Dint

Data Point Description PLC Tag Data Type Batch Number "Station".MaterialPartData.Dints[0] Dint WIP Count "Station".MaterialPartData.Dints[1] Dint Material Part Cavity Number "Station".MaterialPartData.Dints[2] Dint Data () Master Part Number "Station".MaterialPartData.Strings[0] String[25] Build Number "Station".MaterialPartData.Strings[1] String[25] Version "Station".MaterialPartData.Strings[2] String[25] Batch Number "Station".MaterialPartData.Strings[3] String[25]

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 54 / 59

Appendix 3 Machine/Process/Operations

Data Point Description PLC Tag Data Type Call Quality "Station".OperationData.Bools[0] Bool Call Maintenance "Station".OperationData.Bools[1] Bool Call Materials "Station".OperationData.Bools[2] Bool Call Supervisor "Station".OperationData.Bools[3] Bool Hourly Run Rate Previous Shift "Station".OperationData.Dints[0] Dint Hourly Run Rate Current Shift "Station".OperationData.Dints[1] Dint OEE Shift 1 "Station".OperationData.Dints[2] Dint OEE Shift 2 "Station".OperationData.Dints[3] Dint OEE Shift 3 "Station".OperationData.Dints[4] Dint Production Cout Shift 1 "Station".OperationData.Dints[5] Dint Production Cout Shift 2 "Station".OperationData.Dints[6] Dint Production Cout Shift 3 "Station".OperationData.Dints[7] Dint Operational Down Time Shift 1 "Station".OperationData.Dints[8] Dint Data (OD) Down Time Shift 2 "Station".OperationData.Dints[9] Dint Down Time Shift 3 "Station".OperationData.Dints[10] Dint Repair Current Shift "Station".OperationData.Dints[11] Dint Repair Previous Shift "Station".OperationData.Dints[12] Dint Rebuild Current Shift "Station".OperationData.Dints[13] Dint Rebuild Previous Shift "Station".OperationData.Dints[14] Dint Yield Current Shift "Station".OperationData.Dints[15] Dint Yield Previous Shift "Station".OperationData.Dints[16] Dint Production Current Shift "Station".OperationData.Dints[17] Dint Production Previous Shift "Station".OperationData.Dints[18] Dint Set Up "Station".OperationData.Dints[19] Dint Cycle Time "Station".OperationData.Dints[20] Dint Operator Badge "Station".OperationData.Strings[0] String [25]

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 55 / 59

Appendix 4. PLC/MES Handshake Diagrams

Start cycle handshake:

Part cycle comple handshake:

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 56 / 59

Appendix 5. HMI Screens Screen 1 MES: Example HMI screen that could be used for MES/PLC logic with important items noted in below picture.

OEM to ensure a shutdown application button is provided in the event the HMI program needs to be stopped.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 57 / 59

Appendix 5 HMI Screens

Screen 2 MES Override Selection: Example of a part status/MES override screen displayed requesting user to enter number of machine cycles requested for override. A maximum of 10 cycles are allowed per override event. After the 10 part cycles complete (cycle aborts are not counted) the override condition will be automatically disabled.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 58 / 59

Appendix 5 HMI Screens

Screen 3 Part/Cycle Status Override Selection: Example of part/cycle status override screen displayed requesting user to enter number of machine cycles requested for override. A maximum of 10 cycles are allowed per cycle/part status override event. After the 10 part cycles complete (cycle aborts are not counted) the part/cycle status override condition will be automatically disabled requiring the user to request an additional override event if needed.

PLC/MES Interface Specification For Yanfeng NA Ver. 1.0 Date 2018.09.21 59 / 59

Appendix 5 HMI Screens

Screen 4 IP Addresses to Display: Example of IP address display screen. Note items below are examples of some typical devices connected to a PLC. Your application may have more or less IP addresses to display. Typical minimum will be PLC and HMI. Note ALL devices connected to a PLC over Ethernet must have their IP address listed on a HMI screen similar to that shown below.

It is highly advisable to use programmatic/automatic means of reading IP addresses from all devices (where possible) and storing that information as strings in the PLC program allowing the HMI to access and display for easy reference. If device IP address cannot be retrieved by the PLC through programming, insert the IP address manually.