An heißen Tagen ist es immer interessant zu
wissen, wie warm es eigentlich im Serverraum ist. Mit der hier vorgestellten
Lösung kann man ganz einfach auf einen Apache Web-Server gehen und
die aktuellen Temperaturwerte abfragen. So kann z.B. ein Ausfall
der Klimaanlage im Serverraum sofort erkannt werden.
Natürlich liegen die Anwendungsfelder wesentlich breiter als nur für Serverräume. So kann ein Hobby-Meteorologe hiermit eine automatisierte Temperaturmessung gestalten oder der Gärtner sein Gewächshaus überwachen.
Es gibt für diese Probleme bereits von Firmen entwickelte
Temperaturmessgeräte, die z.T. schon einen integrierten
Webserver zur Abfrage besitzen. Diese sind
aber erst ab 300 EURO zu haben.
Die von mir realisierte Lösung nimmt zwar einen gewissen Zeitaufwand
in Kauf, ist aber weit aus billiger (bis 20 EUR) und kann genau
den jeweiligen Bedürfnissen angepasst werden.
Die für die Schaltung benötigten Bauteile sind:

Hier die Belegung für 9- und 25-polige serielle Stecker:
| Bezeichnung | DB-25 | DB-9 |
| DTR | 20 | 4 |
| RXD | 3 | 2 |
| TXD | 2 | 3 |
| GND | 1 und 7 (muss man verbinden!) |
5 |
Beim Zusammenlöten ist zu beachten, welche Pins an den DS1820 angeschlossen werden. Hier eine kleine nützliche Zeichnung:

Es ist sogar möglich, auch mehrere der
DS1820-Sensoren parallel in der Schaltung anzuschließen. Die DS1820-Sensoren
haben jeweils eine eigene Bausteinnummer, die bei der Messung mitgegeben
wird. Die Software von Brian Lane (Digitemp) kann also auch
problemlos mehrere Sensoren verarbeiten.
In der Configdatei, die mit Digitemp selbst erzeugt wird, sieht das so aus:
TTY /dev/ttyS0
FAIL_TIME 5
READ_TIME 500
LOG_TYPE 1
LOG_FORMAT "%b %d %H:%M:%S Sensor %s C: %.2C F: %.2F"
SENSORS 2
ROM 0 16 54 147 66 0 0 0 186
ROM 1 16 44 180 66 0 0 0 135
Am besten, man lötet die ganzen Bauteile direkt an den RS323C Stecker
an, so dass man dann auch noch die Hülle darüber bekommt. Bilder von
meinem "Kunstwerk" sehen folgendermaßen aus:
Die Software zum
Abfragen der Temperatur gibt es für Linux und Win95. Sie wurde von Brian
Lane (http://www.brianlane.com/digitemp.php)
von Nexuscomputing
geschrieben und heißt digitemp.
Für die hier benutzte Schaltung benötigt man die Version 1.3.
Nachdem man das Programm heruntergeladen hat, braucht man
es nur zu entpacken und zu kompilieren. Es ist auch noch eine
hilfreiche readme-Datei dabei, in der alles ausführlichst
erklärt ist.
Und jetzt kann es auch
schon losgehen. Zuerst muss digitemp den Sensor erkennen.
Dies geschieht mit dem Aufruf:
>> digitemp -s/dev/ttyS0 -iDieser Aufruf bewirkt, dass digitemp versucht, am COM1 einen Sensor zu erkennen und auszulesen. Wenn man seinen Sensor an COM2 angeschlossen hat, muss natürlich ttyS1 verwendet werden. Wenn dies erfolgreich war, wird die ID des Sensors ausgegeben.
>> digitemp -aabrufen.
Verfeinern kann man die Sache, indem die Daten in eine Log Datei geschrieben werden:
>> digitemp -a -l/var/log/temperaturMittels eines Perl-Skripts kann diese Log-Datei dann ausgelesen und auf einem Web-Server angezeigt werden.
Sehr schöne Ergebnisse erhält man auch, wenn man den zeitlichen Verlauf der Temperatur aus der Log-Datei ausliest und dann mit Hilfe eines Programms, wie z.B. rrdtools, grafisch darstellen lässt:
