|
|
@ -73,13 +73,13 @@ class Thermistor: |
|
|
|
def temp(self, adc): |
|
|
|
"Convert ADC reading into a temperature in Celcius" |
|
|
|
l = log(self.resist(adc)) |
|
|
|
Tinv = self.c1 + self.c2*l + self.c3* l**3) # inverse temperature |
|
|
|
Tinv = self.c1 + self.c2*l + self.c3* l**3 # inverse temperature |
|
|
|
return (1/Tinv) - ZERO # temperature |
|
|
|
|
|
|
|
def adc(self, temp): |
|
|
|
"Convert temperature into a ADC reading" |
|
|
|
x = (self.c1 - (1.0 / (temp+ZERO))) / (2*self.c3) |
|
|
|
y = sqrt((self.c2 / (3*self.c3)**3 + x**2) |
|
|
|
y = sqrt((self.c2 / (3*self.c3))**3 + x**2) |
|
|
|
r = exp((y-x)**(1.0/3) - (y+x)**(1.0/3)) |
|
|
|
return (r / (self.rp + r)) * ARES |
|
|
|
|
|
|
|