PID controller without global variables: out = pid.compute(input). Anti-windup, no derivative kick, filter, slew limit, bumpless manual/auto and relay auto-tuning. No dependencies.
Keeps a temperature, speed or light level at a setpoint: AlashPID pid(2, 0.5, 0); pid.setSetpoint(60); analogWrite(pin, pid.compute(sensor)). No pointers to global variables. Integral windup protection, derivative on measurement (no kick when the setpoint changes), derivative filter, deadband, output slew limit, feed-forward, safe output on a failed sensor, DIRECT and REVERSE action. AlashPIDAutoTune finds the gains by the relay method and Ziegler-Nichols or Tyreus-Luyben rules. Explains problems in Russian, Kazakh or English. Works on Arduino AVR, ESP32, ESP8266. Examples with a virtual oven need no hardware. Made for classes and kits by Alash Electronics.
| Filename | Release Date | File Size |
|---|---|---|
| AlashPID-1.0.1.zip | 2026-11-02 | 35.65 KiB |
| AlashPID-1.0.0.zip | 2026-11-02 | 34.06 KiB |