W1retap
Das Wetterstationen-Programm von Jonathan Hudson [15] ist eher auf die Aufzeichnung von Messwerten ausgerichtet, die es als CSV oder XML oder in MySQL-, PostgreSQL- oder ODBC-kompatiblen Datenbanken ablegt. Dabei kann W1retap auch einige Sensoren für Arten von Messwerten ansprechen, die die beiden anderen Lösungen nicht unterstützen.
W1retap läuft im Vordergrund oder als Daemon. Nach dem »configure« übersetzt ein »make« das Programm. Das in- itiale Setup ist verhältnismäßig aufwändig, da der Admin hier die Zuordnung von Sensor-Identifikationsnummern zu sprechenden Bezeichnungen wie »Serverraum vorne« vornehmen muss. Das Skript in Listing 3 zeigt ein automati- sches Beispiel für den ersten Start. Für einen Test bietet sich dann das Kommando »temp DS2490-1« an. DS2490-1 bezieht sich auf den ersten USB-Adapter.
|
Listing 3: »temp« |
|---|
#!/bin/sh
# Diesen Pfad anpassen!
BASE=/usr/local/
export PATH=$BASE/bin:$PATH
export LD_LIBRARY_PATH=$BASE/lib/w1retap/:$LD_LIBRARY_PATH
if ! test "`whoami`" = "root"
then
echo "Du musst root sein"
exit 0
fi
for I in 0 1 2 3 4 5 6 7 8 9 10
do
T=`w1find DS2490-$I`
if test "`echo $T | grep ^Error `" = ""
then
DEVICE="DS2490-$I"
break
fi
done
echo "USB-Adapter gefunden: $DEVICE"
if ! test -e ~/.config
then
mkdir ~/.config
fi
if ! test -e ~/.config/w1retap
then
mkdir ~/.config/w1retap
fi
if ! test -e ~/.config/w1retap/rc
then
cat > ~/.config/w1retap/rc <<_EOF_
init = w1file
log = w1csv=/tmp/csvlog.txt
altitude = 120
delay = 10
device = $DEVICE
_EOF_
fi
SENSORFILE=~/.config/w1retap/sensors
if ! test -e $SENSORFILE
then
ALLIDS=""
TX=/tmp/w1.$$
w1find $DEVICE > $TX
while read I
do
if ! test "`echo $I | grep 18S20:`" = ""
then
ID=`echo $I | grep "18S20:" | awk {'print $2'} `
if test "`echo $ALLIDS`" = ""
then
ALLIDS=$ID
else
ALLIDS="$ALLIDS,$ID"
fi
echo "$ID:1820:ST:Sensor $ID:C:::" >>$SENSORFILE
echo "$ID:1820:ST:Sensor $ID:C:::"
fi
if ! test "`echo $I | grep 'Serial ID Button'`" = ""
then
CID=`echo $I | grep "Serial ID Button" | awk {'print $2'} `
fi
done < $TX
echo "$CID:Coupler:MAIN:$ALLIDS::AUX:::" >>$SENSORFILE
echo "$CID:Coupler:MAIN:$ALLIDS::AUX:::" fi
w1retap -v
|
Wenn sich der Anwender für eine Software entschieden hat und die Sensorwerte auslesen kann, möchte er meist nicht nur einen Überblick über die aktuellen Messwerte, sondern auch über den zeitlichen Verlauf. Für einfache Ansprüche reichen eine kleine Konvertierung und das Auftragen der Messwerte mit Gnuplot [16]. Für die Darstellung komplexerer Diagramme hat sich Rrdtool von Tobias Oetiker durchgesetzt (siehe Abbildung 3).
Abbildung 3: Die mit Rrdtool erzeugte Grafik zeigt die Temperaturwerte in Abhängigkeit von der Zeit.
Digitemp stellt ein Perl-Skript zur Verfügung, das mit Hilfe der GD-Bibliothek Grafiken erzeugt. Für Owfs gibt es den Temploggerd [17], der Werte aufzeichnet und visualisiert. Und natürlich geht das auch alles direkt mit Perl [18]. Im Contrib-Verzeichnis von W1retap finden sich außerdem einige Ruby-Skripte, die eine kleine Wetterstation-Webseite grafisch ansprechend präsentieren. Aber egal welche Variante der Admin wählt, eine einfache Plug & Play-Lösung existiert bisher noch nicht.
Meldung machen - mit Gnokii auch mobil
Neben der grafischen Darstellung der Werte wünscht man sich auch eine Benachrichtigungsfunktion im Alarmfall, zum Beispiel wenn die Temperatur einen Grenzwert überschreitet. Wer noch ein altes Nokia-Handy mit SIM-Karte und Datenkabel besitzt, kann sich mit der Software Gnokii Kurznachrichten per SMS schicken lassen [19]. Wer es dagegen ganz innovativ wünscht, sendet mit einem Skript die Werte der Temperatursensoren an einen Micro-Blogging-Dienst und verfolgt die Ergebnisse online.
Insgesamt kostet jede dieser Lösungen zur Temperaturüberwachung nur einen Bruchteil vergleichbarer kommerzieller Produkte. Zwar sollte der Anwender wissen, von welcher Seite er einen Lötkolben anfasst, aber dann baut sich die individuelle und preiswerte Überwachungslösung fast von selbst.
Dabei sind Serverräume [20] nur eine von vielen Einsatzmöglichkeiten. Zur Ins- piration bietet das Web faszinierende Be- richte über individuelle Wetterstationen, Aquarienfarmen, Weinkeller (mit einem Sensor in einer gefüllten Flasche, [21]), Heizungs- und Solaranlagen [22] oder auch Gewächshäuser.(mfe)
| Der Autor |
|---|
| Dr. Andreas Bohne-Lang arbeitet an der Medizinischen Fakultät Mannheim der Universität Heidelberg und betreut dort neben diverser Hardware auch das komplette Bibliothekssystem. |
Diesen Artikel als PDF kaufen
Express-Kauf als PDF
Umfang: 4 Heftseiten
Preis € 0,99
(inkl. 19% MwSt.)
Als digitales Abo
Weitere Produkte im Medialinx Shop »
Versandartikel
Onlineartikel
Alle Rezensionen aus dem Linux-Magazin
- Buecher/07 Bücher über 3-D-Programmierung sowie die Sprache Dart
- Buecher/06 Bücher über Map-Reduce und über die Sprache Erlang
- Buecher/05 Bücher über Scala und über Suchmaschinen-Optimierung
- Buecher/04 Bücher über Metasploit sowie über Erlang/OTP
- Buecher/03 Bücher über die LPI-Level-2-Zertifizierung
- Buecher/02 Bücher über Node.js und über nebenläufige Programmierung
- Buecher/01 Bücher über Linux-HA sowie über PHP-Webprogrammierung
- Buecher/12 Bücher über HTML-5-Apps sowie Computer Vision mit Python
- Buecher/11 Bücher über Statistik sowie über C++-Metaprogrammierung
- Buecher/10 Bücher zu PHP-Webbots sowie zur Emacs-Programmierung
Insecurity Bulletin
Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...





