codekasten/digitemp/read_digitemp.sh
2007-05-16 11:40:15 +00:00

40 lines
1.3 KiB
Bash
Executable file

#!/bin/sh
# dieses script schreibt aktuelle temperaturmesswerte in die rrdtool
# datenbankdatei (siehe unten)
# (deswegen bestenfalls per crontab aufrufen lassen)
#
# der user dieses scriptes sollte der gruppe "dialout" angehoeren, um
# auf /dev/ttyS0 zugreifen zu koennen
#
# parameter von digitemp:
# -t0 oder -t1 : fragt den ersten oder zweiten Sensor ab
# -q : nur die Temperatur ausgeben, keine anderen Informationen
# -c/etc/digitemprc : das ist die erstellte Configdatei
SENSOR1=`digitemp -t0 -q -c/etc/digitemprc | tr -s [:blank:] | cut -f7 -d" "`
SENSOR2=`digitemp -t1 -q -c/etc/digitemprc | tr -s [:blank:] | cut -f7 -d" "`
rrdtool update /var/log/temperatur/temperaturen.rrd N:$SENSOR1:$SENSOR2
exit 0
#### Vorarbeit ####
## 1. digitemp config anlegen (enthaelt IDs der sensoren)
digitemp -a -c/etc/digitemprc
## 2. hiermit wird die rrdtool datenbankdatei einmalig angelegt
rrdtool create /var/log/temperatur/temperaturen.rrd --step 60 \
DS:Sensor1:GAUGE:120:U:U \
DS:Sensor2:GAUGE:120:U:U \
RRA:AVERAGE:0.5:1:2160 \
RRA:AVERAGE:0.5:5:2016 \
RRA:AVERAGE:0.5:15:2880 \
RRA:AVERAGE:0.5:60:8760 \
RRA:MIN:0.5:1:2160 \
RRA:MIN:0.5:5:2016 \
RRA:MIN:0.5:15:2880 \
RRA:MIN:0.5:60:8760 \
RRA:MAX:0.5:1:2160 \
RRA:MAX:0.5:5:2016 \
RRA:MAX:0.5:15:2880 \
RRA:MAX:0.5:60:8760