Automated Manufacturing Systems

cover_page




Automating Manufacturing Systems

with PLCs

 

(Version 6.0, August 11, 2009)

 
Hugh Jack

 
 

Copyright (c) 1993-2009 Hugh Jack (jackh@gvsu.edu).

 


Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license may be included with this documentation, or is available on-line at the GNU website (http://www.gnu.org).

 

This document is provided as-is with no warranty, implied or otherwise. There have been attempts to eliminate errors from this document, but there is no doubt that errors remain. As a result, the author does not assume any responsibility for errors and omissions, or damages resulting from the use of the information provided.

 

Additional materials and updates for this work will be available at http://sites.google.com/site/automatedmanufacturingsystems/

 
 
1. INTRODUCTION 1
2. PROGRAMMABLE LOGIC CONTROLLERS 5

2.1 INTRODUCTION 5

2.1.1 Ladder Logic 5

2.1.2 Programming 9

2.1.3 PLC Connections 12

2.1.4 Ladder Logic Inputs 14

2.1.5 Ladder Logic Outputs 14

2.2 A CASE STUDY 15

2.3 SUMMARY 16

2.4 PRACTICE PROBLEMS 16

2.5 ASSIGNMENT PROBLEMS 17

2.6 PRACTICE PROBLEM SOLUTIONS 19
3. PLC HARDWARE 21

3.1 INTRODUCTION 21

3.2 INPUTS AND OUTPUTS 22

3.2.1 Inputs 23

3.2.2 Output Modules 26

3.3 RELAYS 32

3.4 A CASE STUDY 33

3.5 ELECTRICAL WIRING DIAGRAMS 34

3.5.1 JIC Wiring Symbols 36

3.6 SUMMARY 39

3.7 PRACTICE PROBLEMS 40

3.8 ASSIGNMENT PROBLEMS 43

3.9 PRACTICE PROBLEM SOLUTIONS 45
4. LOGICAL SENSORS 51

4.1 INTRODUCTION 51

4.2 SENSOR WIRING 51

4.2.1 Switches 52

4.2.2 Transistor Transistor Logic (TTL) 52

4.2.3 Sinking/Sourcing 53

4.2.4 Solid State Relays 60

4.3 PRESENCE DETECTION 60

4.3.1 Contact Switches 61

4.3.2 Reed Switches 61

4.3.3 Optical (Photoelectric) Sensors 61

4.3.4 Capacitive Sensors 69

4.3.5 Inductive Sensors 73

4.3.6 Ultrasonic 75

4.3.7 Hall Effect 75

4.3.8 Fluid Flow 75

4.4 SUMMARY 76

4.5 PRACTICE PROBLEMS 76

4.6 ASSIGNMENT PROBLEMS 79

4.7 PRACTICE PROBLEM SOLUTIONS 83
5. LOGICAL ACTUATORS 89

5.1 INTRODUCTION 89

5.2 SOLENOIDS 89

5.3 VALVES 90

5.4 CYLINDERS 92

5.5 HYDRAULICS 94

5.6 PNEUMATICS 96

5.7 MOTORS 97

5.8 OTHERS 97

5.9 SUMMARY 98

5.10 PRACTICE PROBLEMS 98

5.11 ASSIGNMENT PROBLEMS 99

5.12 PRACTICE PROBLEM SOLUTIONS 101
6. BOOLEAN LOGIC DESIGN 103

6.1 INTRODUCTION 103

6.2 BOOLEAN ALGEBRA 103

6.3 LOGIC DESIGN 107

6.3.1 Boolean Algebra Techniques 114

6.4 COMMON LOGIC FORMS 115

6.4.1 Complex Gate Forms 115

6.4.2 Multiplexers 116

6.5 SIMPLE DESIGN CASES 117

6.5.1 Basic Logic Functions 117

6.5.2 Car Safety System 118

6.5.3 Motor Forward/Reverse 119

6.5.4 A Burglar Alarm 119

6.6 SUMMARY 122

6.7 PRACTICE PROBLEMS 123

6.8 ASSIGNMENT PROBLEMS 127

6.9 PRACTICE PROBLEM SOLUTIONS 129
7. KARNAUGH MAPS 141

7.1 INTRODUCTION 141

7.2 SUMMARY 144

7.3 PRACTICE PROBLEMS 144

7.4 ASSIGNMENT PROBLEMS 151

7.5 PRACTICE PROBLEM SOLUTIONS 153
8. PLC OPERATION 161

8.1 INTRODUCTION 161

8.2 OPERATION SEQUENCE 163

8.2.1 The Input and Output Scans 164

8.2.2 The Logic Scan 164

8.3 PLC STATUS 165

8.4 MEMORY TYPES 166

8.5 SOFTWARE BASED PLCS 166

8.6 SUMMARY 167

8.7 PRACTICE PROBLEMS 167

8.8 ASSIGNMENT PROBLEMS 167

8.9 PRACTICE PROBLEM SOLUTIONS 169
9. LATCHES, TIMERS, COUNTERS AND MORE 171

9.1 INTRODUCTION 171

9.2 LATCHES 172

9.3 TIMERS 176

9.4 COUNTERS 184

9.5 MASTER CONTROL RELAYS (MCRs) 187

9.6 INTERNAL BITS 188

9.7 DESIGN CASES 190

9.7.1 Basic Counters And Timers 190

9.7.2 More Timers And Counters 191

9.7.3 Deadman Switch 192

9.7.4 Conveyor 193

9.7.5 Accept/Reject Sorting 194

9.7.6 Shear Press 195

9.8 SUMMARY 197

9.9 PRACTICE PROBLEMS 197

9.10 ASSIGNMENT PROBLEMS 201

9.11 PRACTICE PROBLEM SOLUTIONS 205
10. STRUCTURED LOGIC DESIGN 217

10.1 INTRODUCTION 217

10.2 PROCESS SEQUENCE BITS 218

10.3 TIMING DIAGRAMS 221

10.4 DESIGN CASES 223

10.5 SUMMARY 223

10.6 PRACTICE PROBLEMS 223

10.7 ASSIGNMENT PROBLEMS 225

10.8 PRACTICE PROBLEM SOLUTIONS 229
11. FLOWCHART BASED DESIGN 235

11.1 INTRODUCTION 235

11.2 BLOCK LOGIC 237

11.3 SEQUENCE BITS 243

11.4 SUMMARY 246

11.5 PRACTICE PROBLEMS 247

11.6 ASSIGNMENT PROBLEMS 248

11.7 PRACTICE PROBLEM SOLUTIONS 251
12. STATE BASED DESIGN 261

12.1 INTRODUCTION 261

12.1.1 State Diagram Example 264

12.1.2 Conversion to Ladder Logic 266

Block Logic Conversion 266

State Equations 273

State-Transition Equations 280

12.2 SUMMARY 285

12.3 PRACTICE PROBLEMS 285

12.4 ASSIGNMENT PROBLEMS 290

12.5 PRACTICE PROBLEM SOLUTIONS 297
13. NUMBERS AND DATA 313

13.1 INTRODUCTION 313

13.2 NUMERICAL VALUES 314

13.2.1 Binary 314

Boolean Operations 317

Binary Mathematics 318

13.2.2 Other Base Number Systems 321

13.2.3 BCD (Binary Coded Decimal) 321

13.3 DATA CHARACTERIZATION 322

13.3.1 ASCII (American Standard Code for Information Interchange) 322

13.3.2 Parity 325

13.3.3 Checksums 326

13.3.4 Gray Code 327

13.4 SUMMARY 327

13.5 PRACTICE PROBLEMS 328

13.6 ASSIGNMENT PROBLEMS 330

13.7 PRACTICE PROBLEM SOLUTIONS 331
14. PLC MEMORY 335

14.1 INTRODUCTION 335

14.2 PROGRAM VS VARIABLE MEMORY 335

14.3 PROGRAMS 336

14.4 VARIABLES (TAGS) 337

14.4.1 Timer and Counter Memory 340

14.4.2 PLC Status Bits 342

14.4.3 User Function Control Memory 344

14.5 SUMMARY 345

14.6 PRACTICE PROBLEMS 345

14.7 ASSIGNMENT PROBLEMS 346

14.8 PRACTICE PROBLEM SOLUTIONS 347
15. LADDER LOGIC FUNCTIONS 351

15.1 INTRODUCTION 351

15.2 DATA HANDLING 353

15.2.1 Move Functions 353

15.2.2 Mathematical Functions 355

15.2.3 Conversions 359

15.2.4 Array Data Functions 360

Statistics 360

Block Operations 362

15.3 LOGICAL FUNCTIONS 364

15.3.1 Comparison of Values 364

15.3.2 Boolean Functions 368

15.4 DESIGN CASES 370

15.4.1 Simple Calculation 370

15.4.2 For-Next 370

15.4.3 Series Calculation 371

15.4.4 Flashing Lights 372

15.5 SUMMARY 373

15.6 PRACTICE PROBLEMS 373

15.7 ASSIGNMENT PROBLEMS 375

15.8 PRACTICE PROBLEM SOLUTIONS 377
16. ADVANCED LADDER LOGIC FUNCTIONS 387

16.1 INTRODUCTION 387

16.2 LIST FUNCTIONS 387

16.2.1 Shift Registers 387

16.2.2 Stacks 389

16.2.3 Sequencers 391

16.3 PROGRAM CONTROL 394

16.3.1 Branching and Looping 394

16.3.2 Fault Handling 398

16.3.3 Interrupts 400

16.4 INPUT AND OUTPUT FUNCTIONS 402

16.4.1 Immediate I/O Instructions 402

16.5 DESIGN TECHNIQUES 403

16.5.1 State Diagrams 403

16.6 DESIGN CASES 407

16.6.1 If-Then 407

16.6.2 Traffic Light 408

16.7 SUMMARY 409

16.8 PRACTICE PROBLEMS 409

16.9 ASSIGNMENT PROBLEMS 411

16.10 PRACTICE PROBLEM SOLUTIONS 415
17. OPEN CONTROLLERS 425

17.1 INTRODUCTION 425

17.2 IEC 61131 425

17.3 OPEN ARCHITECTURE CONTROLLERS 427

17.4 SUMMARY 427

17.5 PRACTICE PROBLEMS 427

17.6 ASSIGNMENT PROBLEMS 428

17.7 PRACTICE PROBLEM SOLUTIONS 429
18. INSTRUCTION LIST PROGRAMMING 431

18.1 INTRODUCTION 431

18.2 THE IEC 61131 VERSION 431

18.3 THE ALLEN-BRADLEY VERSION 434

18.4 SUMMARY 438

18.5 PRACTICE PROBLEMS 439

18.6 ASSIGNMENT PROBLEMS 439

18.7 PRACTICE PROBLEM SOLUTIONS 441
19. STRUCTURED TEXT PROGRAMMING 443

19.1 INTRODUCTION 443

19.2 THE LANGUAGE 444

19.2.1 Elements of the Language 445

19.2.2 Putting Things Together in a Program 450

19.3 AN EXAMPLE 455

19.4 SUMMARY 457

19.5 PRACTICE PROBLEMS 457

19.6 ASSIGNMENT PROBLEMS 459

19.7 PRACTICE PROBLEM SOLUTIONS 461
20. SEQUENTIAL FUNCTION CHARTS 465

20.1 INTRODUCTION 465

20.2 A COMPARISON OF METHODS 479

20.3 SUMMARY 479

20.4 PRACTICE PROBLEMS 479

20.5 ASSIGNMENT PROBLEMS 480

20.6 PRACTICE PROBLEM SOLUTIONS 481
21. FUNCTION BLOCK PROGRAMMING 489

21.1 INTRODUCTION 489

21.2 CREATING FUNCTION BLOCKS 491

21.3 DESIGN CASE 492

21.4 SUMMARY 493

21.5 PRACTICE PROBLEMS 494

21.6 ASSIGNMENT PROBLEMS 496

21.7 PRACTICE PROBLEM SOLUTIONS 497
22. ANALOG INPUTS AND OUTPUTS 501

22.1 INTRODUCTION 501

22.2 ANALOG INPUTS 502

22.3 ANALOG OUTPUTS 507

22.4 ANALOG INPUTS AND OUTPUTS WITH CONTROLLOGIX 509

22.4.1 ANALOG INPUTS AND OUTPUTS WITH A PLC-5 511

22.4.2 Pulse Width Modulation (PWM) Outputs 516

22.4.3 Shielding 518

22.5 DESIGN CASES 520

22.5.1 Process Monitor 520

22.6 SUMMARY 520

22.7 PRACTICE PROBLEMS 520

22.8 ASSIGNMENT PROBLEMS 521

22.9 PRACTICE PROBLEM SOLUTIONS 523
23. CONTINUOUS SENSORS 527

23.1 INTRODUCTION 527

23.2 INDUSTRIAL SENSORS 528

23.2.1 Angular Displacement 528

Potentiometers 528

23.2.2 Encoders 530

Tachometers 533

23.2.3 Linear Position 533

Potentiometers 533

Linear Variable Differential Transformers (LVDT) 534

Moire Fringes 535

Accelerometers 537

23.2.4 Forces and Moments 540

Strain Gages 540

Piezoelectric 543

23.2.5 Liquids and Gases 545

Pressure 546

Venturi Valves 546

Coriolis Flow Meter 548

Magnetic Flow Meter 548

Ultrasonic Flow Meter 548

Vortex Flow Meter 549

Positive Displacement Meters 549

Pitot Tubes 549

23.2.6 Temperature 549

Resistive Temperature Detectors (RTDs) 550

Thermocouples 550

Thermistors 552

Other Sensors 554

23.2.7 Light 554

Light Dependant Resistors (LDR) 554

23.2.8 Chemical 555

pH 555

Conductivity 555

23.2.9 Others 555

23.3 INPUT ISSUES 555

23.4 SENSOR GLOSSARY 558

23.5 SUMMARY 559

23.6 REFERENCES 560

23.7 PRACTICE PROBLEMS 560

23.8 ASSIGNMENT PROBLEMS 561

23.9 PRACTICE PROBLEM SOLUTIONS 565
24. CONTINUOUS ACTUATORS 567

24.1 INTRODUCTION 567

24.2 ELECTRIC MOTORS 567

24.2.1 Basic Brushed DC Motors 569

24.2.2 AC Motors 573

24.2.3 Brushless DC Motors 580

24.2.4 Stepper Motors 582

24.2.5 Wound Field Motors 584

24.3 HYDRAULICS 588

24.4 OTHER SYSTEMS 589

24.5 SUMMARY 589

24.6 PRACTICE PROBLEMS 590

24.7 ASSIGNMENT PROBLEMS 590

24.8 PRACTICE PROBLEM SOLUTIONS 593
25. CONTINUOUS CONTROL 595

25.1 INTRODUCTION 595

25.2 CONTROL OF LOGICAL ACTUATOR SYSTEMS 598

25.3 CONTROL OF CONTINUOUS ACTUATOR SYSTEMS 599

25.3.1 Block Diagrams 599

25.3.2 Feedback Control Systems 600

25.3.3 Proportional Controllers 601

25.3.4 PID Control Systems 603

25.4 DESIGN CASES 607

25.4.1 Oven Temperature Control 607

25.4.2 Water Tank Level Control 608

25.5 SUMMARY 610

25.6 PRACTICE PROBLEMS 610

25.7 ASSIGNMENT PROBLEMS 611

25.8 PRACTICE PROBLEM SOLUTIONS 613
26. FUZZY LOGIC 617

26.1 INTRODUCTION 617

26.2 COMMERCIAL CONTROLLERS 622

26.3 REFERENCES 622

26.4 SUMMARY 622

26.5 PRACTICE PROBLEMS 622

26.6 ASSIGNMENT PROBLEMS 623

26.7 PRACTICE PROBLEM SOLUTIONS 625
27. SERIAL COMMUNICATION 627

27.1 INTRODUCTION 627

27.2 SERIAL COMMUNICATIONS 628

27.2.1 RS-232 631

27.2.2 ASCII Functions 633

27.3 PARALLEL COMMUNICATIONS 637

27.4 DESIGN CASES 638

27.4.1 PLC Interface To a Robot 638

27.5 SUMMARY 639

27.6 PRACTICE PROBLEMS 639

27.7 ASSIGNMENT PROBLEMS 639

27.8 PRACTICE PROBLEM SOLUTIONS 641
28. NETWORKING 645

28.1 INTRODUCTION 645

28.1.1 Topology 645

28.1.2 OSI Network Model 647

28.1.3 Networking Hardware 649

28.1.4 Control Network Issues 650

28.2 NETWORK STANDARDS 651

28.2.1 Devicenet 651

28.2.2 CANbus 655

28.2.3 Controlnet 656

28.2.4 Ethernet 657

28.2.5 Profibus 658

28.2.6 Sercos 659

28.3 PROPRIETARY NETWORKS 659

28.3.1 Data Highway 659

28.4 NETWORK COMPARISONS 662

28.5 DESIGN CASES 663

28.5.1 Devicenet 663

28.6 SUMMARY 664

28.7 PRACTICE PROBLEMS 665

28.8 ASSIGNMENT PROBLEMS 666

28.9 PRACTICE PROBLEM SOLUTIONS 667
29. HUMAN MACHINE INTERFACES (HMI) 673

29.1 INTRODUCTION 673

29.2 HMI/MMI DESIGN 674

29.3 SUMMARY 676

29.4 PRACTICE PROBLEMS 676

29.5 ASSIGNMENT PROBLEMS 676

29.6 PRACTICE PROBLEM SOLUTIONS 677
30. ELECTRICAL DESIGN AND CONSTRUCTION 679

30.1 INTRODUCTION 679

30.2 ELECTRICAL WIRING DIAGRAMS 679

30.2.1 Selecting Voltages 683

30.2.2 Grounding 684

30.2.3 Wiring 687

30.2.4 Suppressors 688

30.2.5 PLC Enclosures 689

30.2.6 Wire and Cable Grouping 691

30.3 FAIL-SAFE DESIGN 692

30.4 SAFETY RULES SUMMARY 692

30.5 REFERENCES 694

30.6 SUMMARY 694

30.7 PRACTICE PROBLEMS 694

30.8 ASSIGNMENT PROBLEMS 694

30.9 PRACTICE PROBLEM SOLUTIONS 697
31. SOFTWARE ENGINEERING 699

31.1 INTRODUCTION 699

31.1.1 Fail Safe Design 699

31.2 DEBUGGING 700

31.2.1 Troubleshooting 700

31.2.2 Forcing 701

31.3 PROCESS MODELING 701

31.4 PROGRAMMING FOR LARGE SYSTEMS 705

31.4.1 Developing a Program Structure 705

31.4.2 Program Verification and Simulation 707

31.5 DOCUMENTATION 708

31.6 COMMISIONING 716

31.7 SAFETY 716

31.7.1 IEC 61508/61511 safety standards 716

31.8 LEAN MANUFACTURING 717

31.9 REFERENCES 718

31.10 SUMMARY 718

31.11 PRACTICE PROBLEMS 718

31.12 ASSIGNMENT PROBLEMS 719

31.13 PRACTICE PROBLEM SOLUTIONS 721
32. SELECTING A PLC 723

32.1 INTRODUCTION 723

32.2 SPECIAL I/O MODULES 728

32.3 SUMMARY 731

32.4 PRACTICE PROBLEMS 731

32.5 ASSIGNMENT PROBLEMS 731

32.6 PRACTICE PROBLEM SOLUTIONS 733
Appendix A. COMBINED GLOSSARY OF TERMS 735

A.1 A 735

A.2 B 736

A.3 C 739

A.4 D 743

A.5 E 745

A.6 F 746

A.7 G 747

A.8 H 748

A.9 I 748

A.10 J 750

A.11 K 750

A.12 L 751

A.13 M 751

A.14 N 753

A.15 O 754

A.16 P 755

A.17 Q 757

A.18 R 757

A.19 S 759

A.20 T 761

A.21 U 762

A.22 V 763

A.23 W 763

A.24 X 764

A.25 Y 764

A.26 Z 764
Appendix B. PLC REFERENCES 765

B.1 SUPPLIERS 765

B.2 PROFESSIONAL INTEREST GROUPS 766

B.3 PLC/DISCRETE CONTROL REFERENCES 766
Appendix C. GNU Free Documentation License 771

C.1 PREAMBLE 771

C.2 APPLICABILITY AND DEFINITIONS 771

C.3 VERBATIM COPYING 772

C.4 COPYING IN QUANTITY 773

C.5 MODIFICATIONS 773

C.6 COMBINING DOCUMENTS 775

C.7 COLLECTIONS OF DOCUMENTS 775

C.8 AGGREGATION WITH INDEPENDENT WORKS 776

C.9 TRANSLATION 776

C.10 TERMINATION 776

C.11 FUTURE REVISIONS OF THIS LICENSE 776

C.12 How to use this License for your documents 777


Site Links


Engineer On A Disk Main Page

- PLC Book Book Page