The software engineering survival guide to automation programming
M. T. White

#PLC
#Programming
#SOLID
#HMI
Understand PLC programming from a software engineering perspective and master advanced concepts like OOP and HMI development to design reusable, portable, and robust code
Object-oriented programming (OOP) is a game-changing addition to PLC programming that’s revolutionizing the automation industry. This book equips you with the necessary skills to succeed in the modern automation programming environment.
This second edition is designed to systematically guide you through advanced topics such as OOP design, SOLID programming, the software development life cycle (SDLC), library design, version control, 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 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’ll have what it takes to create long-lasting codebases for any modern automation project.
This book is for automaton programmers with a background in software engineering topics such as object-oriented programming and general software engineering knowledge. Automation engineers, software engineers, electrical engineers, PLC technicians, hobbyists, and upper-level university students with an interest in automation will also find this book useful and interesting. Anyone with a basic knowledge of PLCs can benefit from reading this book.
18. Unlock Your Exclusive Benefits
Answer Sheet
M. T. White has been programming since the age of 12. His fascination with robotics flourished when he was a child programming microcontrollers. He holds an undergraduate degree in mathematics, a master's degree in software engineering, and an MBA in IT management. He is currently working as a software developer for a major US defense contractor and is an adjunct CIS instructor, where he teaches Python, C, and an array of other courses. His background mostly stems from the automation industry where he programmed PLCs and HMIs for many different types of applications. He has programmed many different brands of PLCs over the years and has developed HMIs using many different tools. Other technologies that he is fluent in include Linux, Ansible, Docker, AWS, C#, Java, and Python. Be sure to check out his channel AlchemicalComputing on YouTube.









