Mastering PLC Programming
The software engineering survival guide to automation programming
M.T. White
BIRMINGHAMMUMBAI
Mastering PLC Programming
Copyright 2023 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to have been caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
Group Product Manager: Mohd Riyan Khan
Publishing Product Manager: Suwarna Patil
Senior Editor: Tanya Dcruz
Technical Editor: Arjun Varma
Copy Editor: Safis Editing
Project Coordinator: Prajakta Naik
Proofreader: Safis Editing
Indexer: Pratik Shirodkar
Production Designer: Shyam Sundar Korumilli
Senior Marketing Coordinator: Nimisha Dua
Marketing Coordinator: Agnes D'souza
First published: March 2023
Production reference: 1220223
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham
B3 2PB, UK.
ISBN 978-1-80461-288-0
www.packtpub.com
For Jennie. I like to think you helped me write this and how cool it would have been to have two writers in the family.
Jennie Branch Bolton
1981-2020
Contributors
About the author
M.T. White has been programming since the age of 12. His fascination with robotics flourished when he was a child programming microcontrollers such as Arduinos. M.T. currently holds an undergraduate degree in mathematics, a masters degree in software engineering, and is currently working on an MBA in IT project management. M.T. is currently working as a software developer for a major US defense contractor and is an adjunct CIS instructor at ECPI University. His background mostly stems from the automation industry where he programmed PLCs and HMIs for many different types of applications. M.T. has programmed many different brands of PLCs over the years and has developed HMIs using many different tools.
About the reviewers
Oleg Osovitskiy is a senior firmware engineer with more than 23 years of experience in industrial automation. He is a certified IEC-61508 functional safety engineer (#11605/15), and a certified IEC-62443 CySec specialist (#658/22). He worked as a control engineer for the gas industry, implementing technological and emergency algorithms for various factories and plants. He has extensive hands-on experience with PLCs, I/O drivers, and communication drivers for various industrial protocols, including Modbus, HART, CANopen, EtherNet/IP, EtherCAT, and others. He currently lives and works in Canada, Quebec, and is responsible for developing firmware for several mission-critical, safety PLCs.
Id like to thank my wife and two lovely daughters, who support me and understand the time and commitment it takes to learn new skills and obtain new knowledge in our constantly changing and demanding environment. They are the purpose and joy of my life.
Keith Lyding is an electrical engineer for a manufacturing company in Columbus, OH. He has over 15 years of experience in the electrical field, as well as more than 9 years of experience in automation. He graduated from Thomas Edison State University in 2019. He served in the US Navy for six years, and has worked for Nucor Steel, and currently, for Sonoco Products Company where he works primarily with Allen Bradley PLCs, Inductive Automations Ignition platform, EXOR and Panelview HMIs, and many other platforms. He enjoys troubleshooting, as well as automating complex operations. In his spare time, he loves to serve in his church, coach his sons baseball team, and spend time with his family.
I am thankful for Paul Cassidy and Brian Babin, who discipled me as a young Christian. I would also like to thank Kyle Ahrendt and Will Carleton, former coworkers and experts in their fields. My competitive nature drove me to relentlessly follow your example. Finally, Id like to thank my wife Katie, my amazing wife of 12 years. She is so gracious with me, especially when I forget to tell her Im working late.
Tony LeRoy has worked in the automation field since 2013, starting as a machine operator, transitioning to industrial maintenance, and then to controls engineering and design. Specializing in PLC programming, HMI design, and SCADA development, Tony has developed a passion for making the physical world and the digital world come together. Tony holds three associate degrees in mechatronics, industrial electronics, and general engineering technology, all from Tri-County Technical College. Currently working for a system integrator, focusing on the research and development of control solutions for emerging technologies, he also does consulting and freelance work, hoping to own a business one day.
I would like to thank my family and my friends for their understanding about the time, dedication, and passion that I devote to my work, and for still sticking by my side. I also would like to thank my professors at Tri-County Tech for giving me a love of learning and paving the way for my success today. Thank you for your hard work and for giving students brighter futures!