Back at the end of 2014 I had to give some brief instructions on how PID loops work.
Working at Gigatron at our CNC division, I had to understand, design and configure several PID loops on several types of machines over the years (plasma cutters, routers, etc).
From the point of view of an experienced programmer, PID loops are pretty obvious (if not immediatly, at least in retrospect). In fact, in LinuxCNC the important bit is implemented as a single line of code:
Since then I added a couple of written instructions (the original presentation I made was face-to-face), translated to english (original was in portuguese) and put it up online for anyone to see.
It’s currently available at:
Note: this is meant as a simple demonstration of PID loops and as a helper tool for someone either studying control theory or wanting to get a “feel” for how a machine driven by PID loops behaves. It is not an authoritative source for all things PID.