In many simple microcontroller power controller applications, I see controllers that work in an "increment/decrement" on error with hysteresis implemented e.g.
if(targetvoltage<errorvoltage) PWM_Output++; else if(targetvoltage>(errorvoltage+hysteresis)) PWM_Output--; SetPWMOutput(PWM_Output);
It seems to be somewhere between a bang bang controller and a PI controller (error is integrated kind of and stored in PWM_Output, P scaling is most likely done by the transistor driver) but its not quite either. What kind of controller would this be?
Obviously its not a particularly fast controller but it seems to work OK for some of the applications I've tried.