In response to bluefaces question about
Auberins PID settings for a Rancilio Silvia thought I would butcher up an attempt at explaining a PID.
Well if you really want to medium dive into PID's let me see if I can explain a few things whilst I puff on my cigar (Rocky Patel Sun Grown this evening). FYI, this is all book and none practical knowledge. I have not had need for a PID on any of my machine.
PID is an acronym for Proportional Integral Derivative. The fuzzy logic on the PID should make it as simple as set a temp and let it run. It will figure out what it needs to do. But you can override the P, I and D settings to performance tune your machine. The error is equal to the set point minus the measurement of the thermocouple.
The Proportional band is proportional to the error measurement (set temperature minus actual temperature) essentially your margin of error. The Integral portion controls the response time of the heater in response to the Proportional band. I am set at 205.6, my probe says the medium being monitored is 205.4. Ooops, that is out of my Proportional band range (error), I need heat. Or reversely, my temp setting is 205.6 and the medium being monitored is 205.9, oops, time to stop. Now I sit here while my temperature carries over another 1.0 degrees and then starts to fall. Ooops, now I am at 205.4 again, time to heat, over and over and over. Little more than a thermostat at this point.
Now the I comes in, Integral action. Basically a measurement of time. So now I can compensate for time error in the above loop. So now my little brain says Ok, you want me to run at 205.6, I am at 205.2. You want me to heat this stuff back to 205.6 but not go over (reverse the process for cooling). So I know that if I apply heat for 1 divided by I (lets say 0.6 seconds) I will heat the stuff to 205.5 but I know there will be carry over heat for another 0.5 seconds so I will turn off the heater even though I am under the error margin and the temperature will coast up to 205.7 and stop instead of running up to 206.9.
Now the Derivative jumps into the party. Basically doing the opposite of the above action. Ok, you told me to run at 205.6, I heat for 0.x seconds and turn off I know my temperature will stop at 205.5 and my end error will be 205.7. Now I sit here. Oops, I am back at 205.2, time to juice it up again. But I know that if I heat for 0.x seconds once I am beyond my margin of error I will get where I want to be. Hmm, but I know I am going to cool Z fast so instead of waiting until I get past my error setting I am going to kick in the juice to minimize the drop.
So P tells the brain I am beyond my error margin. I, tells the brain how long to apply juice before I need to turn off to keep a tighter band and D tells the brain how long to wait after before I give it more juice to keep the temperature from falling too much.
This is very simplified, the complicated stuff gives me a headache. Do a Google on PID loop tuning if you want the deep dive.