An einem Raspberry habe ich einen HTU21D-Sensor angeschlossen. Die
Ergebnisse stimmen jedoch nicht mit einem Technolinesender und einem
TFA-Gerät überein. Die rel. Feuchte liegt um ca. 10 % RH zu tief, die
Temperatur um über 1 Grad zu hoch.
1 | HTU21D Technoline TFA
|
2 | 23,0 °C 21,8 °C 21,7 °C
|
3 | 41 % 50 % 51 %
|
Wer kennt den Sensor und kann sagen woran es liegt? Sind die HTU21D
ungenau (lt. Datenblatt nicht)? Liegt es an der Umrechnung:
1 | def ctemp(self, sensorTemp):
|
2 | return -46.85 + (175.72 * sensorTemp / 65536.0)
|
3 |
|
4 | def chumid(self, sensorHumid):
|
5 | return -6.0 + (125.0 * sensorHumid / 65536.0)
|
6 |
|
7 | def read_humidity(self):
|
8 | self.dev.write(CMD_READ_HUM_NOHOLD) #measure humidity
|
9 | time.sleep(.1)
|
10 |
|
11 | data = self.dev.read(3)
|
12 | buf = data
|
13 | humid = (buf[0] << 8 | buf[1]) & 0xFFFC
|
14 | return self.chumid(humid)
|
15 |
|
16 | def read_tmperature(self):
|
17 | self.dev.write(CMD_READ_TEMP_NOHOLD) #measure temp
|
18 | time.sleep(.1)
|
19 | data = self.dev.read(3)
|
20 | buf = data
|
21 | temp = (buf[0] << 8 | buf[1]) & 0xFFFC
|
22 | return self.ctemp(temp)
|