• Willkommen im Forum „Wetterstationsforum.info - Archiv“.
 

Neuigkeiten:

Dieses Forum dient ausschließlich zu Archivzwecken.
Für Fragen nutze bitte unser aktuelles Forum, welches du unter https://wetterstationsforum.info findest.

Hauptmenü

ws2300 mit open2300 - log2300 nach Wetterpool Datenkonverter

Begonnen von storchenwetter, 12.03.2009, 00:21:59

⏪ vorheriges - nächstes ⏩

storchenwetter

Hallo, in diesem Beitrag möchte ich euch ein kleines Script für die WS2300 unter Linux vorstellen, um open2300 Daten schmackhaft für Wetterpool zu machen. Erstellt aus dem Logfile von log2300 eine konforme wp_werte.txt ;-)
Momentan verarbeitet das Script Datum, Uhrzeit, Aussentemperatur, Aussenfeuchte, Windgeschwindigkeit+ Windrichtung(+Durchschnittswerte),Regen in einer Stunde, Regen in 24 Stunden und den Luftdruck. Temperaturänderung und Schneehöhe etc. habe ich leider noch nicht integriert.
Programmiertechnisch mit Sicherheit noch optimierbar, aber es funktioniert!

Vielleicht findet jemand anders es ja auch nützlich... Hier der Link zum Script: http://pastebin.com/f2dd540c6

LG

Lazarus Long

Hallo,

da es bei automatisiert ablaufenden Scripten im Unix (auch Linux) immer zu Problemen mit der Umgebung kommt, wäre es gut, wenn du in deinem Script mit als ersten den Pfad setzten würdest.
Zum beispiel mit
PATH=/usr/bin

Denn bei per Cron ausgeführten Scripten wird die Umgebung nicht komplett ausgelesen und übergeben, so dass es immer wieder passiert, das Programme nicht gefunden werden.

Und jetzt noch ein bischen Klugscheißerei ;-)

Diese Abfrage
#
# Monatsangabe in 2 stellige Zahl umwandeln
#
if [ "$TEDATEMONTH" = "Jan" ]; then
#
TEDATEMONTH="01"
#
fi
#

#
if [ "$TEDATEMONTH" = "Feb" ]; then
#
TEDATEMONTH="02"
#
fi
...


würde so besser aussehen:

case $TEDATEMONTH in
 "Jan" )
   TEDATEMONTH="01"
   ;;
 "Feb" )
   TEDATEMONTH="02"
   ;;
...
esac


Variablen funktionieren schöner/besser, wen man sie als ${variable} und nicht als $variable schreibt.
Außerdem kommt man so aich an die Übergabe-Parameret ${10}, ${11}, .. ran, ohne mit shift arbeiten zu müssen ;-)
Man kann das auch dieses machen:

satz1=heute
satz2=tag
echo "${satz1} ist ein schoener ${satz2}"
echo ""Alles ${satz2}e"


;-)
Das leben ist Lang
Das Wetter ist schön(?) ;-)

Lazarus Long

Berlin: http://www.lichterfelde-ost.de/Wetter.php Vantage 2 Pro

storchenwetter

Zitat von: "Lazarus Long"
Und jetzt noch ein bischen Klugscheißerei ;-)

Diese Abfrage[..]

Hey, ja, nein, dankeschön, auf diese Klugscheißerei hatte ich eigentlich schon gewartet :-). Das Script wurde von mir unter großem Zeitdruck entwickelt, ohne große Rücksicht auf stilistische Feinheiten, mit der Absicht, dass es halt unter einer normalen Debian GNU/Linux Umgebung funktionsfähig ist. Bei manchen anderen diversen Linux Umgebungen ohne diese Umgebungsvariablen, die du nanntest, kann das dann schon ganz anders aussehen. Die Praxis zeigt, dass das Script so mit Cron gut funktioniert.
In Bezug auf die Variablen kann ich dir nur Recht geben, hatte da bei anderen Scripten auch schon Probleme ohne die geschweiften Klammern.
Werde deine Anregungen natürlich baldmöglichst umsetzen!

Hast schon Recht, man kann sovieles machen, nur manchmal fehlt einem die Zeit ;)

LG

storchenwetter

So, jetzt kommt aber die eierlegende Wollmilchsau...(zumindest so in der Art). Hatte heute kurz Zeit zum Scripten.
- das ist der Code vom Hauptscript - kommt mit weiteren Scripten daher. Abfrage ist umgeschrieben und Variablen sind ab sofort umgeben von {}!

Am Anfang des Scriptes gibt man wichtige Pfade, sowie die Stationshöhe an.
PHP liest jetzt die Regenmenge von heute richtig aus(mittels Differenz der 24-Stunden Menge). Tendenzen, Minimal- und Maximaltemperatur des Tages gehören auch dazu.
PHP berechnet die Schneefallgrenze, Sonnenaufgangs- und Sonnenuntergangszeiten, sowie Luftdruckveränderungen der letzten 3 Stunden.

Neben der Wetterpool Datei wird eine zweite Rohdaten-Datei für die eigene Homepage erstellt. Habe zu der Rohdaten-Datei eine kleine Parameterbiliothek für PHP erstellt, mittels welcher man schnell auf Temperatur-,Feuchtewerte (sowie Differenzen davon) etc. zurückgreifen kann. So kann man auch Wettergrafiken mittels php5-gd generieren(siehe meine Signatur).
Durch die PHP Scripte lässt sich das Ganze gut erweitern.

Also wer noch so eine WS2300 oder ähnliches hat, bisschen bei Wetterpool mitfaxen möchte und Wettergrafiken bzw. Wetterdaten ins Netz stellen möchte, wird mit diesem Komplettpaket bestens bedient sein ;-)

(bitte Fehler melden)

jimjack

Kurze Meldung meinerseits.

Ich hab Dein Script seit heute im Einsatz, geht
wunderbar. Meldungen erscheinen bei Wetterpool.

Hab Dank für Deinen Programmiereinsatz und die Möglichkeit das Script nutzen zu dürfen.