PaulS:
myPID.Compute();
Input = thermocouple.readCelsius();
Do some computing, then get some input. OK.
Ok, maybe I should review this sequence...
Please correct me if I am wrong, but as far as I know the output of the PID does not have to be the same unit as the input - in my case for example the Kp would be "degrees (of the servo) / degrees Celsius (deviation)", the resulting output is then a position change of the servo
rockwallaby:
I don't know why you only want the flap to move once every 60 seconds, am I understanding that part right?
Why not allow it to freely operate when it needs, that way the pid will work best.
If you stop the output, that is the flap from moving then the pid will do a thing called 'wind up' because it is not seeing a change in the pv, say temperature.
Then when you do enable the output it will most likely either bang open or bang closed, no fine control there at all.You do want fine control don't you, say yes
Ok, later all, 12:30am here zzzz...
Paul
That's a good point - so that would mean I don't change the sample time but choose the kp, Ki and Kd small enough to achieve slower changes, right?
Thanks for all your quick responses - and: yes, I want fine control...
Axo