Archiv für die ‘Projekte’ Kategorie

WsWin RSS-Feed erstellen

15 Dezember 2011

RSS-Feeds können auf zahlreiche Weise eingesetzt werden: Entweder für Aktualisierungen in Mailprogrammen, Einbindung in Smartphone-Apps oder zur Veröffentlichung in sozialen Netzwerken wie Twitter oder Facebook. An dem folgenden Beispiel wird ein Codebeispiel gezeigt, wie es mit WsWin möglich ist, einen eigenen RSS-Feed seinen Besuchern anzubieten, bzw. seine Wetterdaten in Facebook oder Twitter zu veröffentlichen.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<!-- %customfile=feed.xml% -->
<?xml version="1.0" encoding="ISO-8859-1"?><rss version="2.0">
 
<channel>
   <title>Wetterstation Berlin</title>
   <link>http://www.domain.tld</link>
   <description>Wetterwerte der Station Berlin</description>
   <language>de-de</language>
 
      <item>
         <title>Wetterwerte Berlin vom %ws_date%, %ws_time% Uhr</title>
         <description>
            <![CDATA[Temp Max %maxval[2]%  Min %minval[2]% Druck Max %maxval[33]%  Min %minval[33]% Wind Max %maxval[35]% (%wind_txt%)   Regen %rainday%]]>
         </description>
         <pubDate>%ws_rfc822datetime%</pubDate>
      </item>
 
</channel>
</rss>

Die exemplarische Wetterstation Berlin bindet das Textfile als Template ein, welches nach jedem Aktualisierungsintervall durch das Programm WsWin verarbeitet wird und die interpretierte Datei feed.xml erzeugt. Zeile 2 leitet die Deklaration für den RSS-Feed in der Version 2 ein. In Zeile 5 wird dem Feed einen Namen gegeben. In Zeile 6 gibt der Wetterstationsbetreiber einen Linkverweis idealerweise auf seine eigene Wetterwebsite an. In Zeile 7 darf eine kurze Beschreibung nicht fehlen, was der Nutzer des Feeds erwarten darf. Bitte an dieser Stelle keine Romane schreiben. Zeile 8 sagt uns, dass der Inhalt in deutsch formuliert wurde.

Nachdem der hauptsächliche Teil des Feeds eingerichtet wurde, kommt nun das Herzstück an die Reihe. Wir wollen die Wetterdaten ausgeben. Dazu leiten wir das Ganze mit einem item Tag ein und machen und an die weiteren Angaben. In Zeile 11 wird der Titel des Beitrags im Feed definiert. Nicht zu verwechseln mit dem Title-Tag des gesamten Feeds weiter oben. Wir nutzen diese Zeile, um dynamisch das Datum und die Uhrzeit mit auszugeben.

Und nun der Description-Tag: Innerhalb des CDATA-Abschnitts kommen unserer eigentlicher Inhalt, den wir wiedergeben möchten. Erst einmal: Warum brauchen wir den CDATA-Abschnitt? Ab hier wird dem Browser mitgeteilt, dass er keinen Quelltext parsen soll, also nur Text ausgibt. Wenn ihr also Sonderzeichen nutzen wollt und nicht möchtet, dass euch der Browser den Text parst, also in HTML umändert, dann nutzt man dafür den CDATA-Abschnitt. Das nur beiläufig am Rande bemerkt.

In Zeile 13 jedenfalls könnt ihr euch austoben und eurer Phantasie freien Lauf lassen, was dort angezeigt werden soll. Aber nicht vergessen: Wenn der Feed in den sozialen Netzwerken wie Twitter oder Facebook wiedergegeben werden soll, dann gelten bestimmte Zeichenlängenbegrenzungen (Twitter = 140 Zeichen; Facebook = 520 Zeichen).

In Zeile 15 kommt das pubDate hinein. Dieses Pubdatum ist ein Zeitdatum im Format RFC822. Zum Glück hat WsWin eigens dafür eine Variable zur Verfügung gestellt. Diese Zeile sorgt dafür, dass eine Feednachricht nur dann aktualisiert wird, wenn ein neues Update erfolgte. Ändert sich also das Zeitdatum in Zeile 15, dann werden Feed-Apps und Programme dazu angewiesen, den neuen Text anzuzeigen. Dies hat den Vorteil, dass eine Textnachricht nur einmal erscheinen kann und doppelte Texte vermieden werden können.

Zum Schluss werden die noch offenen Tags geschlossen und wir haben das fertige RSS-Feed Template für WsWin. Für die Einbindung in Social Media gibt es nützliche Webdienste wie den kostenlosen Twitterfeed, der auch Facebook versteht.

PHP: Round bei negativer Zahl ergibt eine negative Null

23 November 2011

Versucht man mit der Funktion round() eine negative Zahl ohne Nachkommastelle zu runden, welche größer als Null und kleiner als -0,5 ist, wird man unweigerlich auf das Problem stoßen, dass im Ergebnis -0 erscheint.

round(-0.1, 0);

Damit das negative Vorzeichen nicht mehr auftaucht, wird dem Programmierer mit der Funktion number_format geholfen, indem auf das Zahlenformat und die Nachkommastellen Einfluss genommen wird.

number_format(round(-0.1, 0), 0, ',', '.');

Ergebnis:

0

Neues Wettermessnetz für Niedersachsen und Bremen gegründet

5 November 2011

Mit dem neuen Wettermessnetz für Niedersachsen  & Bremen wird ein weiterer Teil im Nordwesten Deutschlands abgedeckt. Auf der Internetseite www.neuwetter.de tauschen sich private Wetterbeobachter über das aktuelle und zukünftige Wettergeschehen aus. Auch die Wetterstation Emden ist Teil dieses Netzwerkes und stellt ihre Messdaten frei zur Verfügung.

Zusammen ermöglicht das Messnetz eine genauere Darstellung regionaler Veränderungen unter bestimmten Wetterlagen. Auch für den Erfahrungsaustausch untereinander bietet die Seite ein Forum.

 

Wswin to mySQL

29 Oktober 2011

WsWin to mySQL bietet ihnen die Möglichkeit, aufgezeichnete Wetterdaten von der Software PC-Wetterstation direkt in eine mySQL Datenbank einzulesen. Dabei sind keine weiteren Templates mehr notwendig, denn als Grundlage verwenden die beinhalteten PHP Scripte die automatische Wetterdatendatei ws_newdata.csv. Diese Datei wird mit einem FTP Programm nur auf den Webspace hochgeladen und die Scripte erledigen in Zusammenarbeit mit einem Cronjob die Speicherung und Weiterverarbeitung.

Es ist nicht nur möglich, die Werte abzuspeichern. Zusätzlich sorgt WsWin to mySQL dafür, dass Maximum.- u. Minimumberechnungen inklusive Durchschnittsberechnungen einer jeden Stunde, eines jeden Tages, eines jeden Monates und eines jeden Jahres völlig automatisch durchgeführt werden. Durch die vielen Möglichkeiten in PHP lassen sich so durch Auslesen der Wertetabellen aufwendige Statistiken auf der eigenen Webseite realisieren. Mit einigen wenigen Kenntnissen in PHP und mySQL gelingt es jedem, die Dateien auch für sich zu nutzen. Der Zipdatei liegt zusätzlich noch eine kleine Hilfedatei bei, welche die Einrichtung dieses Dienstes erleichtert.

Die folgende Mindmap verdeutlich in kurzer Form, wie die Dateien untereinander zusammenarbeiten. Zum vergrößern bitte das Bild anklicken.

 

 

Download: wswin_to_mysql.zip

Isoplethen Diagramm erstellen

29 Oktober 2011

Ein so genanntes Isoplethendiagramm (-> Linien gleichen Zahlenwertes einer Größe) wird dazu genutzt, um z. B. bei einem Thermoisoplethendiagramm die Tages- sowie die Jahresschwankungen der Lufttemperatur in einem Diagramm festzuhalten. Mit dieser Diagrammform können Kälte- und Wärmeperioden schneller gedeutet werden. Durch die farbliche Abgrenzung der Isoplethen sind jahreszeitlich bedingte Veränderungen sichtbar.

Mit dem Download erhalten sie zwei Exceldateien, gezippt. Damit ist es ihnen möglich, aus den Daten der Monatsexportdatei des Computerprogrammes PC-Wetterstation ein Isoplethendiagramm zu erstellen. Eine kleine Anleitung befindet sich in der Exceldatei “Datenaufbereitung Isoplethendiagramm”.

Auf den Seiten der privaten Wetterstation Balingen werden Thermoisoplethendiagramme ab dem Jahr 2004 präsentiert und kontinuierlich fortgeführt.
Link: http://www.wetter-balingen.de/ereignisse/iso/iso.htm

 

Temperatur-Isoplethendiagramm 1. Januar 05 bis 30. Juni 2005


Temperatur-Isoplethendiagramm 1. Juli 05 bis 31. Dezember 2005


Windgeschwindigkeitsisoplethen Nov/Dez 05

Download Paket: isoplethenerstellung.zip

Bau eines Niederschlagsdauersensors

29 Oktober 2011

Der Niederschlagsdauersensor

Dieser Sensor ist ein modifizierter Sensor der WS 2xxx Serie (oder WMR 9xx Serie).

Mit einem, in der Schaltung eingebauten Regensensor wird schon bei feinem Niederschlag Alarm gegeben. Seine Funktion bezieht sich auf die Arbeitsweise der Niederschlagsmelder an DWD- Warten.

Durch ihn lassen sich folgende Werte ermitteln:

  • Schauer Anfang
  • Schauer Ende
  • Schauerlänge
  • Anzahl Schauer innerhalb eines Zeitraumes
  • Schauerzeit Gesamt innerhalb eines Zeitraumes
  • Trockenzeit Gesamt innerhalb eines Zeitraumes

Optional:

  • Niederschlagsalarm (warnt bei Einsetzen von Regen)
  • Niederschlagsalarm erweiterbar (Benachrichtigung via Mail (und/oder) SMS)

 

Vorteile gegenüber einem Regensensor!

Zu erst einmal misst ein Regensensor die Niederschlagsmenge. Der Niederschlags- dauersensor hingegen zeichnet die Schauerlänge auf.

Bei leichtem Niederschlag, wie zum Beispiel „Sprühregen“ würde der Regensensor nach Stunden nicht einmal Regen melden. Durch die empfindliche Elektronik eines Niederschlagsdauersensors kann sogar herunterkommender Nebel gemessen werden.

» Weiterlesen: Bau eines Niederschlagsdauersensors