- added abstarct PID APid

- added PidFactory
- use variable args for factory
This commit is contained in:
jens
2021-10-02 11:10:43 +02:00
parent 7111bfd5e2
commit bf019733b2
15 changed files with 117 additions and 26 deletions
+4 -4
View File
@@ -6,8 +6,9 @@ class TempSensorSim(ATemperatureSensor):
def name(self):
return "FakeTemp"
def __init__(self):
def __init__(self, temp_offset=0):
ATemperatureSensor.__init__(self)
self.temp_offset = temp_offset
self.temp = 22.37
self.temp_set = self.temp
self.k_noise = 0.01
@@ -16,8 +17,7 @@ class TempSensorSim(ATemperatureSensor):
self.temp_set = temp
def temperature(self):
return self.temp_set + self.k_noise * np.random.normal(0, 1) / np.sqrt(12.0)
return self.temp_offset + self.temp
def process(self):
temp = self.temperature()
self.temp = temp
self.temp = self.temp_set + self.k_noise * np.random.normal(0, 1) / np.sqrt(12.0)
+1 -1
View File
@@ -1,4 +1,4 @@
#!/usr/bin/python3
#!/usr/bin/env python3
import time
from components import ATemperatureSensor
import spidev
+3 -3
View File
@@ -2,10 +2,10 @@
class TempSensorFactory:
@staticmethod
def create(name):
def create(name, *args, **kwargs):
if "sim" in name:
from components.sensor.tempSensorSim import TempSensorSim
return TempSensorSim()
return TempSensorSim(*args, **kwargs)
elif "31865" in name:
from components.sensor.tempSensor_max31865 import TempSensor_max31865
return TempSensor_max31865(temp_offset=0)
return TempSensor_max31865(*args, **kwargs)