[Brewpi]
- reset between at oven state changes - PID: Y_max is 500 git-svn-id: http://moon:8086/svn/projects/HendiControl@235 fda53097-d464-4ada-af97-ba876c37ca34
This commit is contained in:
@@ -241,6 +241,7 @@ class Controller():
|
||||
# -----------------------------------------
|
||||
if ovenStateNext != self.ovenState:
|
||||
self.log("{} -> {}".format(self.ovenState, ovenStateNext))
|
||||
self.pid.reset()
|
||||
if ovenStateNext == ovenStates.HEAT:
|
||||
self.stirrer.setSpeed(self.stirrSpeedHeat)
|
||||
self.stirrer.setDutyCycle(1.0)
|
||||
|
||||
@@ -11,7 +11,7 @@ class Pid():
|
||||
|
||||
# Auto windup
|
||||
self.y_min = 0.0
|
||||
self.y_max = 100.0
|
||||
self.y_max = 500.0
|
||||
self.diff_aw = 0.0
|
||||
|
||||
# Output
|
||||
@@ -23,6 +23,10 @@ class Pid():
|
||||
p = dict(kp=kp, ki=ki, kd=kd, rho=rho)
|
||||
return p
|
||||
|
||||
def reset(self):
|
||||
self.yi = 0
|
||||
self.xd = 0
|
||||
|
||||
def process(self, dt, params, err, derr=None):
|
||||
kp = params['kp']
|
||||
ki = params['ki']
|
||||
|
||||
Reference in New Issue
Block a user