Book Image

Mastering PLC Programming

By : Mason White
Book Image

Mastering PLC Programming

By: Mason White

Overview of this book

Object-oriented programming (OOP) is a new feature of PLC programming that has taken the automation world by storm. This book provides you with the necessary skills to succeed in the modern automation programming environment. The book is designed in a way to take you through advanced topics such as OOP design, SOLID programming, the software development lifecycle (SDLC), library design, HMI development, general software engineering practices, and more. To hone your programming skills, each chapter has a simulated real-world project that’ll enable you to apply the skills you’ve learned. In all, this book not only covers complex PLC programming topics, but it also removes the financial barrier that comes with most books as all examples utilize free software. This means that to follow along, you DO NOT need to purchase any PLC hardware or software. By the end of this PLC book, you will have what it takes to create long-lasting codebases for any modern automation project.
Table of Contents (25 chapters)
1
Part 1 – An Introduction to Advanced PLC Programming
6
Part 2 – Modularity and Objects
10
Part 3 – Software Engineering for PLCs
14
Part 4 – HMIs and Alarms
19
Part 5 – Final Project and Thoughts

Introducing CODESYS

The most common tool for learning the full gamut of the IEC 61131-3 standard is CODESYS. CODESYS is a free-to-download and free-to-use PLC programming environment that is developed by the German company CODESYS. The programming system has a built-in editor, syntax-checking tools, and a built-in simulator that will allow you to compile and run your code virtually. Not only that, but CODESYS also has a built-in HMI development tool that we’ll use in later sections of this book that can be used to develop fully working HMIs. As such, you can learn the full breadth of the IEC 61131-3 standard without having to spend a dime on expensive hardware or software and still be able to develop and watch your code in action.

CODESYS is much more than just a virtual development tool. Currently, it is set up to program a wide variety of PLCs and is the basis for other development environments. CODESYS can best be thought of as a true Integrated Development Environment (IDE) for PLCs. CODESYS comes with many advanced tools such as debuggers, library management tools, and so on that are used to speed up the development process. Those of you who are familiar with IDEs such as Visual Studio will already be somewhat familiar with the overall gist of CODESYS. Above all else, CODESYS supports the full spectrum of the IEC 61131-3 protocol, including object-oriented programming.

Systems such as Beckhoff’s TwinCat and Wago’s e!COCKPIT are all built on top of CODESYS. In short, CODESYS is a prime tool for learning PLC software development as well as creating production code for supported PLCs. So, upon completion of this book, you should not only have a pretty decent grasp of the IEC 61131-3 standard but should also have a good idea of how to use multiple other PLC development environments.

If you have not already installed CODESYS, it is important to install it now. The remainder of the book will require the software to be installed. The link for installation can be found in the Technical requirements section of this chapter. Installation is pretty straightforward. All you have to do is follow the provided link and follow the wizard. Since CODESYS is a German company, the download website will be in German. I suggest using Chrome to translate the text. At the time of writing this book, you will need to provide some information such as your email to create an account so that you can download the software. Outside of that, CODESYS is a pretty heavy software package, so downloading it may take a little while.