30 lines
656 B
Python
30 lines
656 B
Python
from components.atemperatureSensor import ATemperatureSensor
|
|
from utils.value import Value, ValueChanged
|
|
import math
|
|
|
|
|
|
class TempSensorSim(ATemperatureSensor):
|
|
def name(self):
|
|
return "FakeTemp"
|
|
|
|
def __init__(self):
|
|
self.count = 0
|
|
self.freq = 0.2
|
|
self.log("Created")
|
|
self.temp = Value(22.37)
|
|
self.temp_set = self.temp.get()
|
|
|
|
def set_fake_temp(self, temp):
|
|
self.temp_set = temp
|
|
|
|
def temperature(self):
|
|
self.count += 1
|
|
return self.temp_set + 0.1*math.sin(2*math.pi*self.count*self.freq)
|
|
|
|
def process(self):
|
|
temp = self.temperature()
|
|
self.temp.set(temp)
|
|
|
|
def set_on_changed(self, on_changed: ValueChanged):
|
|
self.temp = on_changed
|