Viser: Programmable Logic Controllers - A Practical Approach to IEC 61131-3 Using CoDeSys
Programmable Logic Controllers: A Practical Approach to IEC 61131-3 using CoDeSys Vital Source e-bog
Dag H. Hanssen
(2015)
Programmable Logic Controllers
A Practical Approach to IEC 61131-3 Using CoDeSys
Dag H. Hanssen
(2015)
Sprog: Engelsk
Detaljer om varen
- 1. Udgave
- Vital Source searchable e-book (Reflowable pages)
- Udgiver: John Wiley & Sons (September 2015)
- ISBN: 9781118949221
Primary: Engineering/automation undergraduate and postgraduate students.
Secondary: Engineers and other technical personnel who work with control systems.
Bookshelf online: 5 år fra købsdato.
Bookshelf appen: ubegrænset dage fra købsdato.
Udgiveren oplyser at følgende begrænsninger er gældende for dette produkt:
Print: 10 sider kan printes ad gangen
Copy: højest 2 sider i alt kan kopieres (copy/paste)
Detaljer om varen
- Hardback: 416 sider
- Udgiver: John Wiley & Sons, Limited (November 2015)
- ISBN: 9781118949245
Widely used across industrial and manufacturing automation, Programmable Logic Controllers (PLCs) perform a broad range of electromechanical tasks with multiple input and output arrangements, designed specifically to cope in severe environmental conditions such as automotive and chemical plants.
Programmable Logic Controllers: A Practical Approach using CoDeSys is a hands-on guide to rapidly gain proficiency in the development and operation of PLCs based on the IEC 61131-3 standard. Using the freely-available* software tool CoDeSys, which is widely used in industrial design automation projects, the author takes a highly practical approach to PLC design using real-world examples. The design tool, CoDeSys, also features a built in simulator/soft PLC enabling the reader to undertake exercises and test the examples.
Key features: Introduces to programming techniques using IEC 61131-3 guidelines in the five PLC-recognised programming languages. Focuses on a methodical approach to programming, based on Boolean algebra, flowcharts, sequence diagrams and state-diagrams. Contains a useful methodology to solve problems, develop a structured code and document the programming code. Covers I/O like typical sensors, signals, signal formats, noise and cabling. Features Power Point slides covering all topics, example programs and solutions to end-of-chapter exercises via companion website.
No prior knowledge of programming PLCs is assumed making this text ideally suited to electronics engineering students pursuing a career in electronic design automation. Experienced PLC users in all fields of manufacturing will discover new possibilities and gain useful tips for more efficient and structured programming.
* Register at www.codesys.com
www.wiley.com/go/hanssen/logiccontrollers
Part One Hardware 1 1 About PLCs 3
1.1 History 4
1.1.1 More Recent Developments 6
1.2 Structure 7
1.2.1 Inputs and Outputs 10
1.3 PLC Operation 13
1.3.1 Process Knowledge 14
1.3.2 Standard Operations 16
1.3.3 Cyclic, Freewheeling, or EventControlled Execution 18
1.4 Test Problems 19 2 Digital Signals and Digital Inputs and Outputs 20
2.1 Introduction 20
2.2 Terminology 21
2.2.1 Discrete, Digital, Logical, and Binary 21
2.2.2 Sensors, Transducers, and Transmitters 22
2.3 Switches 24
2.3.1 Limit Switches 24
2.3.2 Safety Devices 24
2.3.3 Magnetic Switches 25
2.4 Logical Sensors 26
2.4.1 Inductive Sensors 27
2.4.2 Capacitive Sensors 29
2.4.3 Photocells 30
2.4.4 Ultrasonic Sensors 33
2.4.5 Rotating Sensors (Encoders) 34
2.4.6 Other Detection Principles and Sensors 37
2.5 Connection of Logical Sensors 39
2.5.1 Sink/Source 41
2.5.2 Selecting a Sensor with the Proper Type of Output 43
2.6 Properties of Discrete Inputs 44
2.7 Discrete Actuators 45
2.7.1 Relays and Contactors 46
2.7.2 Solenoids and Magnetic Valves 47
2.7.3 Transistor Outputs versus Relay Outputs 49
2.8 Test Problems 50 3 Analog Signals and Analog I/O 52
3.1 Introduction 52
3.2 Digitalization of Analog Signals 53
3.2.1 Filtering 53
3.2.2 A/D Conversion 55
3.3 Analog Instrumentation 58
3.3.1 About Sensors 58
3.3.2 Standard Signal Formats 59
3.3.3 On the 4-20 mA Standard 59
3.3.4 Some Other Properties of Sensors 61
3.4 Temperature Sensors 61
3.4.1 Thermocouple 61
3.4.2 PT100/NI1000 62
3.4.3 Thermistors 64
3.5 Connection 64
3.5.1 About Noise, Loss, and Cabling 64
3.5.2 Connecting Sensors 67
3.5.3 Connection of a PT100 (RTD) 68
3.5.4 Connecting Thermocouples 72
3.6 Properties of Analog Input Modules 72
3.6.1 Measurement Ranges and Digitizing: Resolution 72
3.6.2 Important Properties and Parameters 74
3.7 Analog Output Modules and Standard Signal Formats 75
3.8 Test Problems 76
Part Two Methodic 79 4 Structured Design 81
4.1 Introduction 81
4.2 Number Systems 82
4.2.1 The Decimal Number Systems 82
4.2.2 The Binary Number System 82
4.2.3 The Hexadecimal Number System 83
4.2.4 BinaryCoded Decimal Numbers 85
4.2.5 Conversion between Number Systems 86
4.3 Digital Logic 87
4.4 Boolean Design 91
4.4.1 Logical Functional Expressions 91
4.4.2 Boolean Algebra 93
4.5 Sequential Design 97
4.5.1 Flowchart 97
4.5.2 Example: Flowchart for Mixing Process 99
4.5.3 Example: Flowchart for an Automated Packaging Line 101
4.5.4 Sequence Diagrams 107
4.5.5 Example: Sequence Diagram for the Mixing Process 110
4.5.6 Example: Batch Process 112
4.6 StateBased Design 113
4.6.1 Why Use State Diagrams? 114
4.6.2 State Diagrams 114
4.6.3 Example: Batch Process 117
4.6.4 Example: Level Process 118
4.6.5 Example: Packing Facility for Apples 121
4.7 Summary 124
4.8 Test Problems 125
Part Three IEC 611313 131 5 Introduction to Programming and IEC 611313 133
5.1 Introduction 133
5.1.1 Weaknesses in Traditional PLCs 134
5.1.2 Improvements with IEC 611313 136
5.1.3 On Implementation of the Standard 137
5.2 Brief Presentation of the Languages 138
5.2.1 ST 138
5.2.2 FBD 138
5.2.3 LD 139
5.2.4 IL 139
5.2.5 SFC 141
5.3 Program Structure in IEC 611313 141
5.3.1 Example of a Configuration 145
5.4 Program Processing 146
5.4.1 Development of Programming Languages 146
5.4.2 From Source Code to Machine Code 147
5.5 Test Problems 151 6 IEC
611313: Common Language Elements 152
6.1 Introduction 152
6.2 Identifiers, Keywords, and Comments 153
6.2.1 Identifiers 153
6.2.2 Keywords 154
6.2.3 Comments 154
6.3 About Variables and Data Types 156
6.4 Pragmas and Literals 156
6.4.1 Literal 157
6.5 Data Types 158
6.5.1 Numerical and Binary Data Types 158
6.5.2 Data Types for Time and Duration 161
6.5.3 Text Strings 163
6.5.4 Generic Data Types 164
6.5.5 UserDefined Data Types 166
6.6 Variables 169
6.6.1 Conventional Addressing 170
6.6.2 Declaration of Variables with IEC 611313 171
6.6.3 Local Versus Global Variables 174
6.6.4 Input and Output Variables 175
6.6.5 Other Variable Types 176
6.7 Direct Addressing 176
6.7.1 Addressing Structure 176
6.7.2 I/OAddressing 178
6.8 Variable versus I/OAddresses 179
6.8.1 Unspecified I/OAddresses 179
6.9 Declaration of Multielement Variables 180
6.9.1 Arrays 181
6.9.2 Data Structures 182
6.10 Test Problems 184 7 Functions 187
7.1 Introduction 187
7.2 On Functions 188
7.3 Standard Functions 189
7.3.1 Assignment 190
7.4 Boolean Operations 191
7.5 Arithmetic Functions 192
7.5.1 Overflow 193
7.6 Comparison 194
7.7 Numerical Operations 195
7.7.1 Priority of Execution 196
7.8 Selection 197
7.9 Type Conversion 197
7.10 BitString Functions 199
7.11 TextString Functions 200
7.12 Defining New Functions 202
7.13 EN/ENO 203
7.14 Test Problems 204 8 Function Blocks 206
8.1 Introduction 206
8.1.1 The Standard''s FBs 207
8.2 Declaring and Calling FBs 207
8.3 FBs for Flank Detection 208
8.4 Bistable Elements 209
8.5 Timers 210
8.6 Counters 211
8.6.1 UpCounter 212
8.6.2 DownCounter 212
8.6.3 Up/DownCounter 212
8.7 Defining New FBs 213
8.7.1 Encapsulation of Code 214
8.7.2 Other Nonstandardized FBs 216
8.8 Programs 217
8.8.1 Program Calls 218
8.8.2 Execution Control 219
8.9 Test Problems 220
Part Four Programming 221 9 Ladder Diagram (LD) 223
9.1 Introduction 223
9.2 Program Structure 224
9.2.1 Contacts and Conditions 225
9.2.2 Coils and Actions 226
9.2.3 Graphical Elements: An Overview 227
9.3 Boolean Operations 227
9.3.1 AND/ORConditions 227
9.3.2 Set/Reset Coils 230
9.3.3 Edge Detecting Contacts 233
9.3.4 Example: Control of a Mixing Process 234
9.4 Rules for Execution 237
9.4.1 One Output: Several Conditions 237
9.4.2 The Importance of the Order of Execution 238
9.4.3 Labels and Jumps 239
9.5 Use of Standard Functions in LD 240
9.6 Development and Use of FBs in LD 242
9.7 Structured Programming in LD 244
9.7.1 Flowchart versus RSBased LD Code 248
9.7.2 State Diagrams versus RSBased LD Code 253
9.8 Summary 259
9.9 Test Problems 260 10 Function Block Diagram (FBD) 262
10.1 Introduction 262
10.2 Program Structure 263
10.2.1 Concepts 264
10.3 Execution Order and Loops 264
10.3.1 Labels and Jumps 265
10.4 UserDefined Functions and FBs 266
10.5 Integer Division 268
10.6 Sequential Programming with FBD 271
10.7 Test Problems 273 11 Structured Text (ST) 278
11.1 Introduction 278
11.2 ST in General 279
11.2.1 Program Structure 280
11.3 Standard Functions and Operators 281
11.3.1 Assignment 282
11.4 Calling FBs 283
11.4.1 Flank Detection and Memories 284
11.4.2 Timers 287
11.4.3 Counters 288
11.5 IF Statements 288
11.6 CASE Statements 290
11.7 ST Code Based upon State Diagrams 292
11.7.1 Example: Code for the Level Process 295
11.8 Loops 298
11.8.1 WHILE
... DO... END_WHILE 298
11.8.2 FOR
... END_FOR 299
11.8.3 REPEAT
... END_REPEAT 300
11.8.4 The EXIT Instruction 300
11.9 Example: Defining and Calling Functions 301
11.10 Test Problems 302 12 Sequential Function Chart (SFC) 306
12.1 Introduction 306
12.1.1 SFC in General 307
12.2 Structure and Graphics 307
12.2.1 Overview: Graphic Symbols 309
12.2.2 Alternative Branches 309
12.2.3 Parallel Branches 311
12.3 Steps 312
12.3.1 Step Addresses 313
12.3.2 SFC in Text Form (for Those Specially Interested...) 314
12.4 Transitions 314
12.4.1 Alternative Definition of Transitions 315
12.5 Actions 317
12.5.1 Action Types 318
12.5.2 Action Control 319
12.5.3 Alternative Declaration and Use of Actions 321
12.6 Control of Diagram Execution 322
12.7 Good Design Technique 323
12.8 Test Problems 326 13 Examples 331
13.1 Example
1: PID Controller Function Block: Structured Text 331
13.2 Example
2: Sampling: SFC 333
13.2.1 List of Variables 334
13.2.2 Possible Solution 334
13.3 Example
3: Product Control: SFC 337
13.3.1 Functional Description 338
13.3.2 List of Variables 338
13.3.3 Possible Solution 339
13.4 Example
4: Automatic Feeder: ST/SFC/FBD 342
13.4.1 Planning and Structuring 344
13.4.2 Alternative
1: SFC 345
13.4.3 Alternative
2: ST/FBD 347
Part Five Implementation 351 14 CODESYS
2.3 35