Esempio n. 1
0
 def sieveOut(inputs: Inputs, stateTime: float) -> Outputs:
     if not inputs.top:
         return Outputs(Up, Off), "sieveOut"
     else:
         if keepWarm:
             return Outputs(Halt, Off), "waitForCooldown"
         else:
             return Outputs(Halt, Off), "off"
Esempio n. 2
0
 def controlDevices(self, controls: Outputs, force: bool = False) -> None:
     if force or controls.motor != self.currentState.motor:
         print(controls.motor)
         if controls.motor == Motor.Up:
             self.motorUp()
         if controls.motor == Motor.Down:
             self.motorDown()
         if controls.motor == Motor.Halt:
             self.motorHalt()
     if controls.plate != self.currentState.plate:
         self.switchPlateState()
     self.currentState = Outputs(controls.motor, controls.plate)
Esempio n. 3
0
 def waitForHeatup(inputs: Inputs, stateTime: float) -> Outputs:
     assert inputs.top
     if inputs.temp > maxDrinkTemp:
         return Outputs(Halt, On), "waitForCooldown"
     else:
         return Outputs(Halt, On), "waitForCooldown"
Esempio n. 4
0
 def off(inputs: Inputs, stateTime: float) -> Outputs:
     return Outputs(Halt, Off), "off"
Esempio n. 5
0
 def steep(inputs: Inputs, stateTime: float) -> Outputs:
     assert inputs.bottom
     if stateTime < steepTime:
         return Outputs(Halt, Off), "steep"
     else:
         return Outputs(Halt, Off), "sieveOut"
Esempio n. 6
0
 def sieveIn(inputs: Inputs, stateTime: float) -> Outputs:
     if not inputs.bottom:
         return Outputs(Down, Off), "sieveIn"
     else:
         return Outputs(Halt, Off), "steep"
Esempio n. 7
0
 def boil(inputs: Inputs, stateTime: float) -> Outputs:
     assert inputs.top
     if inputs.temp < steepTemperature:
         return Outputs(Halt, On), "boil"
     else:
         return Outputs(Halt, Off), "sieveIn"
Esempio n. 8
0
 def setup(inputs: Inputs, stateTime: float) -> Outputs:
     if not inputs.top:
         return Outputs(Up, Off), "setup"
     return Outputs(Halt, Off), "boil"
Esempio n. 9
0
 def __init__(self) -> None:
     self.currentState = Outputs(Motor.Halt, Plate.Off)
     self.bus = SMBus(1)