Ich arbeite an einem Heizungssteuerungssystem für mein Zuhause, habe jedoch Probleme mit einem höheren Temperatursensor als erwartet.
Ich habe einen 5-V-Arduino Mini Pro-Klon an ein Relaismodul, ein HD47780-Display und ein Tiny RTC-Modul angeschlossen, an das ein DS18B20 angeschlossen ist.
Der DS18B20 wird mit 5 V Vcc betrieben, die an das Tiny RTC-Modul angelegt werden, anstatt parasitäre Stromversorgung auf der DQ-Leitung (da ich nicht sicher war, ob die Onewire-Bibliotheken diesen Betriebsmodus unterstützen) und dem DS18B20-Datenblatt besagt, dass Vcc möglicherweise dazwischen liegt 3,0 V und 5,5 V. Ich habe die geregelte Leistung des Mini Pro bei 5,2 V gemessen.
Ich vergleiche die Temperatur des DS mit dem vorhandenen Raumthermostat (Bimetall), einem RS-Desktop-Temperaturmonitor mit zwei Sensoren, einem kleinen „Thermo-Hygrometer“ und einem Bimetall-Kühlschrankthermometer (im oberen Viertel seiner Temperatur) Bereich) † . Die Anzeige vom DS ist immer um 1-2 Grad höher als die Anzeige von den anderen Sensoren, die innerhalb eines Grades voneinander liegen.
† Nicht der eigentliche, aber etwas Ähnliches.
Beim Lesen verschiedener Foren habe ich gehört, dass diese Sensoren ziemlich genau sind, aber unter lokaler Erwärmung durch Komponenten in ihrer Nähe leiden können. Deshalb habe ich den Sensor auf ein 20-cm-Kabel gelegt und ihn weit vom Rest der Elektronik entfernt positioniert. Das machte keinen Unterschied.
Ich habe dann gelesen, dass der DS sich selbst erwärmen kann, wenn er mit einer zu hohen Vcc-Spannung versorgt wird. Deshalb habe ich eine rote LED mit einem Abfall von 1,7 V hinzugefügt und die neue Spannung über dem DS als 3,5 V gemessen, aber auch nach dem Warten auf die Temperaturen wieder zu stabilisieren, machte dies keinen Unterschied.
Kann jemand vorschlagen, warum der DS möglicherweise hoch liest und was ich tun kann, um dies zu verhindern?