590 likes | 748 Views
IQPT PLC Training. 1. PLC Architecture Overview 2. Control Breakdown 3. Data File Architecture 4. State Machine Theory 5. IQPT State Machine Implementation Strategy 6. IQPT State Machine Example 7. Other IQPT PLC Features 8. Troubleshooting
E N D
1. PLC Architecture Overview 2. Control Breakdown 3. Data File Architecture 4. State Machine Theory 5. IQPT State Machine Implementation Strategy 6. IQPT State Machine Example 7. Other IQPT PLC Features 8. Troubleshooting 9. Practice Troubleshooting Scenarios - Hands On Training Outline
IJBU Final Assembly PLC Code Standard (modular program structure & state machine design) http://ijbuwww.cv.hp.com/dilbert/plc/main_p.htm Warp 9 electrical specification Warp 9 data table architecture Standards and Specifications For Machinery and Equipment (SSME) http://ijbu.cv.hp.com/srm/Documentation/docs.htm#Safety PLC code architecture design review w/ techs and engineers Easy maintainability & supportability IQPT PLC Design Considerations
RSLogix 5 (development and on-line editing software) SoftLogix (PLC Engine) RSLinx Lite (interface between RSLogix 5 and SoftLogix) RSSideWinderX (OCX for accessing PLC data tables) Windows NT 4.0, Service Pack 5 Software Components
“The PLC structure is designed to be modular in construction with distinct machine processes logically mapped into distinct program structures.” - IJBU Final Assembly PLC Standard Accordingly, the IQPT PLC code is compartmentalized. Control Breakdown
Compartmentalization is the breakdown of a system into sub-systems, according to logical boundaries The IQPT PLC code compartmentalizes the entire control system into smaller subsets, from which individual program files are coded (I.e. - the print wheel is self contained in 1 program file) This compartmentalization of program files is what Ismeca calls “objects” What is Compartmentalization?
Compartmentalization aids in PLC code development Compartmentalization greatly aids in machine supportability and troubleshooting, and thus long term sustainability Compartmentalization enables code modularity Why Compartmentalize?
Print & Image Wheel Program File 17 - Image Wheel State Machine Program File 27 - Image Wheel Maintenance Program File 16 - Print Wheel State Machine Program File 26 - Print Wheel Maintenance
Supply & Takeup Reel Program File 12 - Takeup Reel State Machine Program File 22 - Takeup Reel Maintenance Program File 30- Reel Communications State Machine Program File 31 - Reel Speed Control Program File 11 - Supply Reel State Machine Program File 21 - Supply Reel Maintenance
Vacuum Columns Program File 15 - Left Vacuum Column Program File 14 - Middle Vacuum Column Program File 13 - Right Vacuum Column
Module PLC Handshaking Program File 18 - Module PLC Handshaking
Misc Program File 2 - Main Program File 3- Fault Handler Program File 4 - Misc Control Program File 5 - Warning Handler Program File 10 - Misc Faults Program File 20 - Supervisor State Machine
2 - Main 3 - Fault Handler 4 - Misc Control 5 - Warning Handler 10 - Misc Faults 11 - Supply Reel 12 - Takeup Reel 13 - Right Vac Col 14 - Middle Vac Col 15 - Left Vac Col 16 - Print Wheel 17 - Image Wheel 18 - Module PLC Handshake 19 - Dry Cycle 20 - Supervisor 21 - Supply Reel Maint. 22 - Takeup Reel Maint. 26 - Print Wheel Maint. 27 - Image Wheel Maint. 30 - Reel Communications 31 - Reel Speed Control 32 - Driver Board Control Program File Summary
Data Table Example Program File #12 = Takeup Reel State Machine
A machine which transitions from one state to another state, repetitively Contains a finite number of paths between a finite number of states Transitions from current state to another state based on input conditions and current state Outputs are asserted based on machine’s current state (Moore machine) A machine which can have one and only one active state at any given time Also known as a sequential machine What is a State Machine?
Well suited for sequential operations Anticipates and solves commonly occurring sequential problems (like machine control on a production line) Provide efficient implementations Easy to understand and conceptualize Advantages of State Machines
The following is an example of a state machine used to control a set of grippers. The flowchart is a graphical model representing the actual PLC code. Machine Control Example
“The control architecture of the module shall be state machine based.” - IJBU Final Assembly PLC Standard State Machine Program Files Takeup Reel Supply Reel Print Wheel Image Wheel Supervisor Serial Comm. With NSK Drives The Standard
“Not all machine control problems are well suited for state machine implementations.” - Unknown Non-State Machines Program Files Vacuum Columns Maintenance Functions Fault & Warning Handlers Module PLC Handshaking Misc Control Reality
Each state machine has an associated flowchart from which the PLC code was written These flowcharts are part of the PLC code documentation The flowcharts graphically depict the state machine flow, and are therefore very useful in troubleshooting Flowcharts
0. Input scanning logic (as required) 1. Timer assertion 2. State machine logic 3. Program return if no state change 4. Output assertion 5. Faults & Warnings assertion State Machine Program Structure Always scanned Only scanned upon state change
Each state Machine (for example, the Print Wheel state machine) has its own associated state table Each state table is a binary file used to programmatically keep track of which state in the sequence the machine currently resides Each state table contains only one current state at any time Each state table also records the last state, 2nd to last state, and 3rd to last state which is helpful for troubleshooting State Table Usage
1 Word State Table Design (for State Machines with 16 or fewer states)
1 Word State Table Example Takeup Reel Current State Takeup Reel Last State Takeup Reel 2nd Last State Takeup Reel 3rd Last State
2 Word State Table Design(for State Machines with between 17 and 32 states)
2 Word State Table Example Print Wheel Current State Print Wheel Last State Print Wheel 2nd Last State Print Wheel 3rd Last State
6.0 IQPT State Machine Example See Appendix A
Remap inputs to binary file B10 Invert polarity of sensors, as needed Call individual program files (subroutines), as required Remap binary file B11 to outputs Program File #2 - Main
Provides ability to conveniently switch sensor polarity Consistent with Warp 9 Machine Base Code Input remapping Output remapping Remapping I/O
Production Mode (selected for normal production operation and initializing/homing tool) Sequencing Mode (selected by Tool Control to sequence the tool during maintenance and debugging) Calibration Mode (automatically selected by the PLC when the calibration wheel is installed) Maintenance Mode (selected by Tool Control for maintenance functions, other than sequencing) PLC Modes
One separate maintenance program file exists for each functional group Each function (I.e.- retract upper splice cylinder) is activated from Maintenance GUI Used for toggling outputs during debugging and troubleshooting Activated only while in Maintenance Mode (set by Tool Control) Maintenance Functions
Fault detection is controlled in program file #3 Fault detection uses the following files: B18 - binary file containing any active faults (active fault = 1 in the table) ST38 - string file containing text messages for every fault represented in file B18, 1-to-1 correspondence positionally N37 - integer file containing bit position location in B18 for all active faults ST30 - string file containing all active fault text messages (copied from ST38 according to the active fault position recorded in N37) Fault Detection
Fault detection occurs every 20ms, controlled by a timer in Program File #3 The FBC (file bit compare) instruction is used to compare B18 to B33 (all zeroes), to detect for faults in B18 If fault(s) is found in B18, a Machine Fault bit is set and a Homing/Initialize bit is set, as required If fault(s) is found, Tool Control will display the text messages contained in file ST30 If no fault is found, then Machine Fault bit is reset Fault Detection
Once a fault is encountered, the Supervisor state machine (program file #20) is charged with handling it Depending on the fault, the machine may need to be re-initialized, homed, and the pen queue to be reset - this is controlled through bit B14:3/2 (Initialization/Homing Required) Simple faults only require a Reset pushbutton The Supervisor is also responsible for clearing all faults See the Supervisor State Machine flowchart for more details Fault Handling
Warning detection is managed much the same as faults Program file #5 is used for the detection of warnings Warnings are “handled” by the yellow light being strobed on the light tree and Tool Control displaying the warning message(s) stored in ST50 Warning Detection and Handling