-
Postów
5 -
Dołączył
-
Ostatnia wizyta
Typ zawartości
Nowości
Receptury medalowe
Profile
Forum
Galeria
Pliki
Blogi
Wydarzenia
Sklep
Collections
Giełda
Mapa piwowarów
Odpowiedzi opublikowane przez Dyrektor
-
-
Witam. Jaki dodatek pobrać do elektrozaworu bo jakoś nie mogę znaleźć. Chodzi o załączenie przy pewnej temperaturze a nie wyłączenie. Pomożecie?
-
-
Grzałki rozwiązałem ten sposób że jedna będzie podgrzewać do pewnej temp. A druga działa w pid. Czyli ma za zadanie utrzymanie temperatury. Przydała by się apka która to załączy. Chcę jeszcze zamontować elektrozawór do wody i myślałem o moto zaworze ale chyba brakuje aplikacji.
-
Kończę budowę sterownika ale mam pytanie czy da się wysterować moto zawór.? Czy jest możliwe ustawienie auto startu?
CraftBeerPi - sieciowy sterownik browaru
w Projekty "Zrób to sam"
Opublikowano
Witam.
Co robię nie tak.
Chcę wysterować zawór który się załączy przy danej temperaturze a wszystkie dodatki działają na zasadzie rozłączenia.
Prozę o pomoc.
from modules import cbpi
from modules.core.controller import KettleController
from modules.core.props import Property
@cbpi.controller
class Templogic(KettleController):
# Custom Properties
overshoot = Property.Number("Overshoot", True, 0)
state = False
setpoint = 0
def stop(self):
'''
Invoked when the automatic is stopped.
Normally you switch off the actors and clean up everything
:return: None
'''
super(KettleController, self).stop()
self.heater_off()
def run(self):
'''
Each controller is exectuted in its own thread. The run method is the entry point
:return:
'''
while self.is_running():
currentTemp = self.get_temp() ## Current temperature
targetTemp = self.get_target_temp() ## Target Temperature
## Current Temp is below Target Temp ... overshoot is on ... switch heater on
if(currentTemp + float(self.overshoot) < targetTemp and self.state == False and targetTemp != self.setpoint):
self.state = True
self.heater_on(100)
## Switch overshoot off if target temp is reached
if(currentTemp >= targetTemp):
self.setpoint = targetTemp
## Current Temp is below Target Temp ... overshoot is off ... switch heater on
if(currentTemp < targetTemp and self.state == False and targetTemp == self.setpoint):
self.state = True
self.heater_on(100)
## Current Temp is equal or higher than Target Temp ... overshoot is on ... switch Heater off
if(currentTemp + float(self.overshoot) >= targetTemp and self.state == True and targetTemp != self.setpoint):
self.state = False
self.heater_off()
## Current Temp is equal or higher than Target Temp ... overshoot is off ... switch Heater off
if(currentTemp >= targetTemp and self.state == True and targetTemp == self.setpoint):
self.state = False
self.heater_off()
self.sleep(1)