Lack of Context = Frustration

It happened to me. I was learning something new on a video course, following the instructions step by step. I put in all the code to the Google Colab notebook, but one of the code cells wouldn’t execute. I attempted to troubleshoot, but to no avail. I simply didn’t have the background in the python libraries or language. The stakes were low for me so I gave up. That course still exists in my graveyard of tech courses sitting, unwatched, slowly becoming obsolete.

Real world, Real Stakes

Instead of a course to try and pick up ML, what if you were learning manufacturing programming language? What if it was your job to learn and execute that program, and you ended up in the same boat? Your risks aren’t wasting your time or not learning a skill, they are actual in-plant consequences. Whatever regulatory training or safety training you receive at work, if the equipment you are programming is a part of it, I don’t have to tell you the consequences. This series is meant to help provide that background to new Industrial Control System (ICS) programmers, or anyone trying to get into the field of ICS / OT.

Sharing Time

I am a chemical engineer by degree who went into the field of controls directly after college. I started as a systems integrator, which is a contracted process control system engineer. After that I was a control engineer for an Original Equipment Manufacturer (OEM). I oversaw the design, build and execution of the control systems for manufacturing equipment nodes called skids. I then spent over a decade as a control engineer and manager at manufacturing facilities, supporting systems and equipment in 24/7 manufacturing. As you might imagine, I have experienced a lot of different control projects; the good, the bad and the ugly.

Knowledge for the Future

Other than a crash course and primer on control system design, I am also doing this series because the knowledge of proper control system design is aging. But worse than that, it is aging out. Experienced control engineers that have learned this type of design are retiring, and all their experience and knowledge is retiring with them. This series is a way to preserve at least some of that knowledge for future generations.

What You’ll Get From the Series

In the span of a few articles I will provide you with the design information you will need before writing a single line of code. I will start out discussing the various sources of truth required to control a process. These are things to look out for; the right questions to ask to get the detail needed to build it right the first time. I will take a short foray into a few simple control system design elements that will help set up you up for the future and then end with the two separate ways with how to start a control system programming project.

The first installment in the series is the the process description; because if you don’t know what the thing you are trying to control does, you probably aren’t going to control it very well.

Disclosure: The views expressed here are my own and do not reflect my employer. This content is for educational and illustrative purposes only; it is not a guide for building or operating industrial equipment. Consult a professional for practical implementation.