Temperaturansage und Anzeige

1. Vorraussetzungen

Für die Umsetzung sind Kenntnisse in LINUX und in der Funktionsweise des D-STAR-Gateways nötig!!!

Die Erstellung der entsprechenen Sound-Files muß wieder über "Aufnahme-Funktion" des Repeaters erfolgen (siehe DXRobot). Im folgenden wird vorausgesetzt, daß sich die Dateien im Verzeichnis "/dstar/temperatur/voices" befinden.

2. Hardware Temperaturfühler mit DS1820

Als Temperaturfühler wählte ich einen DS1820. Diese integrierte Schaltung gibt Daten in digitaler Form aus. Mit dieser einfachen Schaltung könen die Daten problemlos über die serielle Schnittstelle eingelesen werden.

Es können auch mehrere Fühler parallel geschaltet werden. Damit ist dann z.B. auch die Überwachung der Temperaturen im Relaisschrank einfach realisierbar.

Weiter Informationen sind auf den Webseiten von Maxim und auf den Seiten von http://lena.franken.de.

3. Software zum Auslesen der Daten

Zum Auslesen der Daten benutze ich die Software Digitemp Version 1.7. Man kann die Software downloaden unter http://www.digitemp.com/software/. Die Software muß nicht extra installiert werden, ich habe alle Dateien in das Verzeichnis "/dstar/temperatur/digitemp-1.7" kopiert und rufe das Programm dort auf.

Zuerst muß der Sensor initalisiert werden (Schnittstelle entsprechend wählen):
./digitemp -i -s/dev/ttyS0.
Danach entsteht eine Konfigurationsdatei (.digitemprc). Weitere Informationen sind in der Dokumentation nachzulesen.

4. Script

Nachdem die Logdatei gelöscht wurde, wird ein neuer Wert aus dem Temperaturfühler gelesen und in die Datei geschrieben. Dieser Wert besteht nur aus einer Zahl (ist im Aufruf von digitemp definiert). In der IF-Abfrage wird die aktuelle Temperatur ausgewertet und das entsprechende Sondfile für die Ausgabe kopiert. Für jeden Temperaturwert ist eine Abfrage mit passendem Soudfile nötig.


#!/bin/bash
# Auswertung des Temperaturen
# Schritt 1: Start Temperaturfühler

cd /dstar/temperatur
rm /dstar/temperatur/temperatur.log

cd /dstar/temperatur/digitemp-1.7
/dstar/temperatur/digitemp-1.7/digitemp -a -l/dstar/temperatur/temperatur.log -o"%.0C"
cd /dstar/temperatur

# Schritt 2: Laden der Temperatur aus Datei
for Temperatur in $(< temperatur.log); do
  echo $(date) 'aktuelle temperatur =' $Temperatur >> /var/log/temperatur.log
done

.
.
.

if [ $Temperatur == '3' ]
then
   cp /dstar/temperatur/voices/plus05.dvtool /dstar/tmp/play-b.dvtool
fi

if [ $Temperatur == '4' ]
then
   cp /dstar/temperatur/voices/plus06.dvtool /dstar/tmp/play-b.dvtool
fi

if [ $Temperatur == '5' ]
then
   cp /dstar/temperatur/voices/plus05.dvtool /dstar/tmp/play-b.dvtool
fi

if [ $Temperatur == '6' ]
then
   cp /dstar/temperatur/voices/plus06.dvtool /dstar/tmp/play-b.dvtool
fi

.
.
.
exit 0

Dieses Script kann als /dstar/scripts/exec-W.sh gespeichert werden. Der Eintrag von DM0MW WX in das YOUR Rufzeichen startet dann die Ansage der aktuellen Temperatur.

Informationen zur Bedienung sind zu finden unter: www.htwm.de/dm0mw/http/dienste.html