From 08b36a0b855aab33995643473a72bc1d00d89e60 Mon Sep 17 00:00:00 2001 From: Jens Ahrensfeld Date: Thu, 4 Apr 2019 20:53:54 +0000 Subject: [PATCH] - added poly git-svn-id: http://moon:8086/svn/projects/HendiControl@228 fda53097-d464-4ada-af97-ba876c37ca34 --- Control/brewpi/hendiCtrl.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/Control/brewpi/hendiCtrl.py b/Control/brewpi/hendiCtrl.py index f6ca080..2a9b820 100644 --- a/Control/brewpi/hendiCtrl.py +++ b/Control/brewpi/hendiCtrl.py @@ -25,10 +25,21 @@ class HendiCtrl(): "pwr_digits_max" : 670 } self.curve = { - 'powers' : [500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000, 2100, 2200, 2300, 2400, 2500, 2600, 2700, 2800, 2900, 3000, 3100, 3200, 3300, 3400, 3500], + 'powers' : [ 500, 600, 700, 800, 900, 1000, 1100, 1200, 1300, 1400, 1500, 1600, 1700, 1800, 1900, 2000, 2100, 2200, 2300, 2400, 2500, 2600, 2700, 2800, 2900, 3000, 3100, 3200, 3300, 3400, 3500], 'digits' : [4092, 3840, 3700, 3440, 3300, 3060, 3000, 2930, 2860, 2780, 2640, 2510, 2430, 2360, 2190, 2130, 2030, 1980, 1880, 1730, 1630, 1560, 1480, 1400, 1240, 1150, 1150, 1080, 920, 740, 670] + 'poly' : [-7.6500e-14, 8.2218e-10, -3.4125e-06, 6.8421e-03, -7.6098e+00, 6.5858e+03] } + def toDigits(self, pwr): + poly = self.curve['poly'] + + N = len(poly) + + for n in range(0, N) + digits = poly[N-1-n] * pwr**n + + return digits + def reset(self): self.ser.dtr = True self.ser.rts = False @@ -70,6 +81,7 @@ class HendiCtrl(): self.ser.flushInput() self.ser.write(b'q') self.ser.flushOutput() + self._debugEnable() def __write(self, s): self.ser.flushInput() @@ -157,7 +169,7 @@ class HendiCtrl(): max_digits = max(pwr_digits_max, pwr_digits_min) min_digits = min(pwr_digits_max, pwr_digits_min) pwr_digits = int(min(max_digits, max(min_digits, pwr_digits))) - self.setPowerDigits(pwr_digits) + self.setPowerDigits(self.toDigits(power_watts)) def getPowerWatts(self): pwr_watts_min = self.caps['pwr_watts_min']