Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
fun:digitemp [03.08.2011 20:00. ] – [Software - digitemp] django | fun:digitemp [20.04.2018 09:06. ] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== Temperaturmessung mit digitemp ====== | ||
+ | Zum Erfassen von Temperaturdaten, | ||
+ | |||
+ | {{: | ||
+ | ===== Hardware - Schaltung ===== | ||
+ | Mittels einer kleinen Schaltung, die locker in ein DIN SUB-D Gehäuse passt können mehrere Meßsensoren der Baureihe **DS18S20** angeschlossen werden. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ==== Bauteilliste ==== | ||
+ | Die Bauteile holen wir uns am einfachsten beim einschlägigen Fachhandel (Kostenpunkt ca. 10 €). Folgende Kleinteile stehen auf der Bestellliste: | ||
+ | * Temperatursensor(en) DS10S20 | ||
+ | * 1x 1N5228 (Zenerdiode) | ||
+ | * 1x 1N5234 (Zenerdiode) | ||
+ | * 2x 1N5818 (Schottkydioden) | ||
+ | * 1x 1,5kΩ 1/4 Watt Widerstand | ||
+ | * 1x SUB D9 Buchse mit Gehäuse | ||
+ | * 1x Stückchen Lochrasterplatine (bei Bedarf) | ||
+ | ==== Schaltplan ==== | ||
+ | Das ganze wir anhand des nachfolgenden Schaltplanes entweder direkt an die SUB-D 9 Buchse gelötet, oder man gönnt sich den Luxus einer kleinen Lochrasterplatine. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Den bzw. die Sensoren **DS19S20** werden dann gemäß Schaltplan mit der Steuerplatine verbunden - will man mehrere Sensoren betreiben, so werden diese einfach parallel geschaltet. Die PIN-Belegung des DS18S20 ist wie folgt. {{: | ||
+ | ===== Software - digitemp ===== | ||
+ | Zum " | ||
+ | |||
+ | Diese holen wir uns per **wget** von der [[http:// | ||
+ | |||
+ | # cd / | ||
+ | |||
+ | # wget http:// | ||
+ | |||
+ | # tar zxvf digitemp-3.5.0.tar.gz | ||
+ | |||
+ | # ln -s digitemp-3.5.0 digitemp | ||
+ | |||
+ | Da das Ausleseprogramm wie erwähnt bereits als binary vorliegt verlinken wir das Programm einfach nach **/ | ||
+ | # ln -s / | ||
+ | |||
+ | Dass hierzu root-Rechte zum Anlegen des Symlinks benötigt werden, versteht sich von selbst. :-) | ||
+ | |||
+ | Als erstes müssen wir nun die ROM-Werte der angeschlossenen DS18S20-Temperaturfühler auslesen. Dazu verbinden wir den SUB-D9-Buche mit einem freien seriellen Port (COM1), den wir dann über die Gerätedatei **/ | ||
+ | Nun kommen wir, wie schon erwähnt zum Auslesen der ROM-Werte: | ||
+ | $ digitemp -s/ | ||
+ | |||
+ | < | ||
+ | GNU Public License v2.0 - http:// | ||
+ | Turning off all DS2409 Couplers | ||
+ | .. | ||
+ | Searching the 1-Wire LAN | ||
+ | 1006CB4300080005 : DS1820/ | ||
+ | 108FB643000800F8 : DS1820/ | ||
+ | ROM #0 : 1006CB4300080005 | ||
+ | ROM #1 : 108FB643000800F8 | ||
+ | </ | ||
+ | |||
+ | Als Ergebnis erhalten wir dann im Homeverzeichnis die Datei **.digitemprc**, | ||
+ | <file bash .digitemprc> | ||
+ | READ_TIME 1000 | ||
+ | LOG_TYPE 1 | ||
+ | LOG_FORMAT "%b %d %H:%M:%S Sensor %s C: %.2C F: %.2F" | ||
+ | CNT_FORMAT "%b %d %H:%M:%S Sensor %s #%n %C" | ||
+ | HUM_FORMAT "%b %d %H:%M:%S Sensor %s C: %.2C F: %.2F H: %h%%" | ||
+ | SENSORS 2 | ||
+ | ROM 0 0x10 0x06 0xCB 0x43 0x00 0x08 0x00 0x05 | ||
+ | ROM 1 0x10 0x8F 0xB6 0x43 0x00 0x08 0x00 0xF8 | ||
+ | </ | ||
+ | |||
+ | Zum Erfassen der Messwerte starten wir einfach mal eine Messreihe mit mit 15 Werten und 10 Sekunden Pause zwischen den Werten.< | ||
+ | |||
+ | $ digitemp -a -d10 -n15 | ||
+ | Als Ergebnis erhalten wir dann: | ||
+ | $ digitemp -a -d10 -n15 | ||
+ | < | ||
+ | GNU Public License v2.0 - http:// | ||
+ | May 28 23:32:43 Sensor 0 C: 24.69 F: 76.44 | ||
+ | May 28 23:32:45 Sensor 1 C: 32.44 F: 90.39 | ||
+ | May 28 23:32:53 Sensor 0 C: 24.75 F: 76.55 | ||
+ | May 28 23:32:54 Sensor 1 C: 32.56 F: 90.61 | ||
+ | May 28 23:33:03 Sensor 0 C: 24.75 F: 76.55 | ||
+ | May 28 23:33:04 Sensor 1 C: 32.69 F: 90.84 | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Zu späteren Aufbereitung lassen wir uns nun zum Schluss die Messdaten in eine Datei schreiben. | ||
+ | $ digitemp -a -n0 -d300 -l / | ||
+ | So werden alle 5 Minuten die Messwerte ermittelt und in eine Datei geschrieben. | ||
+ | $ cat / | ||
+ | < | ||
+ | May 28 23:34:02 Sensor 1 C: 32.69 F: 90.84 | ||
+ | May 28 23:34:12 Sensor 0 C: 24.81 F: 76.66 | ||
+ | May 28 23:34:13 Sensor 1 C: 32.62 F: 90.72 | ||
+ | May 28 23:34:21 Sensor 0 C: 24.81 F: 76.66 | ||
+ | May 28 23:34:22 Sensor 1 C: 32.50 F: 90.50 | ||
+ | May 28 23:34:31 Sensor 0 C: 24.81 F: 76.66 | ||
+ | May 28 23:34:32 Sensor 1 C: 32.31 F: 90.16 | ||
+ | May 28 23:34:41 Sensor 0 C: 24.81 F: 76.66 | ||
+ | May 28 23:34:42 Sensor 1 C: 32.25 F: 90.05 | ||
+ | May 28 23:34:51 Sensor 0 C: 24.81 F: 76.66 | ||
+ | May 28 23:34:52 Sensor 1 C: 32.19 F: 89.94 | ||
+ | May 28 23:35:01 Sensor 0 C: 24.81 F: 76.66 | ||
+ | May 28 23:35:03 Sensor 1 C: 32.12 F: 89.83 | ||
+ | May 28 23:35:11 Sensor 0 C: 24.81 F: 76.66 | ||
+ | May 28 23:35:12 Sensor 1 C: 32.06 F: 89.71 | ||
+ | May 28 23:35:21 Sensor 0 C: 24.81 F: 76.66 | ||
+ | May 28 23:35:22 Sensor 1 C: 32.00 F: 89.60 | ||
+ | May 28 23:35:31 Sensor 0 C: 24.81 F: 76.66 | ||
+ | May 28 23:35:32 Sensor 1 C: 31.94 F: 89.49 | ||
+ | May 28 23:35:41 Sensor 0 C: 24.81 F: 76.66 | ||
+ | May 28 23:35:42 Sensor 1 C: 31.88 F: 89.38 | ||
+ | May 28 23:35:51 Sensor 0 C: 24.81 F: 76.66 | ||
+ | May 28 23:35:52 Sensor 1 C: 31.75 F: 89.15 | ||
+ | May 28 23:36:01 Sensor 0 C: 24.88 F: 76.78 | ||
+ | May 28 23:36:02 Sensor 1 C: 31.69 F: 89.04 | ||
+ | May 28 23:36:11 Sensor 0 C: 24.88 F: 76.78 | ||
+ | May 28 23:36:12 Sensor 1 C: 31.62 F: 88.92 | ||
+ | May 28 23:36:22 Sensor 0 C: 24.88 F: 76.78 | ||
+ | May 28 23:36:23 Sensor 1 C: 31.62 F: 88.92 | ||
+ | ... | ||
+ | </ | ||
+ | Am besten nutzen wir hierzu aber ein kleines shell-script, | ||
+ | |||