Results 86 comments of drf5n

Why? If you don't reset the integral, then the tuning changes should be bumpless, per http://brettbeauregard.com/blog/2017/06/proportional-on-measurement-the-code/ and http://brettbeauregard.com/blog/2011/04/improving-the-beginner%e2%80%99s-pid-tuning-changes/

Is this issue about overshoot? Or is it about SetTunings? I can't imagine the use-case for making SetTunings non- bumpless. I often operate heaters with PV far from zero, and...

Setting a high proportional constant (e.g. Kp=255, Kp=1e6...) makes the proportional band narrow, and then PID acts like bang-bang because either kP*error>outMax or kP*error

I was playing around with it and added a `SetIntegral(double)` and `GetIntegral(double)` in this sample at Wokwi: https://wokwi.com/projects/358122536159671297 (If you play with it, be sure to toggle the SerialMonitor/SerialPlotter graph...

A smaller change to the library than https://github.com/br3ttb/Arduino-PID-Library/pull/132 adding functions is to move the PID_v1.h:: outputSum variable from private up to public, which enables all sorts user-space tricks. PR https://github.com/br3ttb/Arduino-PID-Library/pull/133...

Yes, the default output range is set to the analogWrite(...) range of 0-255. If you want it to go negative, use SetOutputLimits: https://playground.arduino.cc/Code/PIDLibrarySetOutputLimits/

In an Input was ever a nan, it will propagate through into Output and persist. You can check and protect against it in userspace before your compute step: ``` if(isnan(pidOutput)){...

It's this line: ``` OCR2A = 0; // Set TOP to 0. This effectively keeps us from counting becuase the counter just keeps reseting back to 0. ``` Versus the...

> **First of all, thank you for this library. It is really a piece of art.** Probably Iam just **stupid** and can't use it properly. > > **My setup** >...

Downloading the MagCal data from https://github.com/hightower70/MagCal/blob/master/mag.txt and translating it into mag.csv with awk '{print $1","$2","$3}' mag.txt > mag.csv gives this truncated result: ``` Magneto 1.2 .csv input file name? mag.csv...