Wolkensensor - Die astronomische Wetterstation

Guten Abend ;)

So, ab jetzt läuft ein kleiner NSLU2 mit unslung drauf und die Daten von der Wetterstation flattern auch schon rein :

root@Schnecke:/> stty -F /dev/ttyUSB0 19200
root@Schnecke:/> cat /dev/ttyUSB0
Astro-Wetterstation Version 1.0.0 #E3B8 19-01-2009 22:43:53 (c) Thomas Tuchan

Ortskoordinaten: 48.439998624 9.889999387

Datum,Uhrzeit,Temperatur,Taupunkt,Luftfeuchte,Wolkentemperatur,Spannung,SHT71-Fehler,Alarm,Laden,Heizung,DCF77,Zeitzone

24.01.09,00:15:17,24.759994505,7.451475616,33.119594571,-50.799999235,4.222469326,1,0,0,0,0,1

Das Ganze kann man auch in ein File schreiben und mit einem kleinen Webserver oder auch nur per FTP auf den großen Webserver beim Magenta-T hochladen.

root@Schnecke:/> cat /dev/ttyUSB0 > /logfile.txt &
[1] 4739
root@Schnecke:/> tail -f /logfile.txt

Jetzt fehlt nur nur eine html-Seite dazu, die das irgendwie grafisch präsentiert.

Hat jemand irgendeine Ahnung, wie man das anstellt ?

Thomas
Ja.
Apache,MYSQL(dann kann man Daten archivieren und Daten für tolle Diagramme bereitstellen ;) ) und PHP und php-gd drauf und 'ne PHP-Seite schreiben.
Code:
su root
apt-get install apache2
apt-get install mysql-server
apt-get install mysql-client
apt-get install php5
apt-get install php-gd
Bei PHP alle Kommandos in der Konsole werden mit
PHP:
passtrough("Kommando");
gemacht.
Wenn du willst,kann ich eine Seite für dich schreiben.
Ich hab echt keine Ahnung ob die Naktschnecke schnell genug ist.
Schau dir mal das an:http://www.henningdippel.de/nslu2-als-linux-server/
Da wird Debian draufgespielt.
Das wird wohl Ideal für die Naktschnecke zu sein.
 
Hallo,

OK, wieder ein kleiner Schritt weiter. Die ersten Daten sind im Internet. Jetzt fehlen nur noch die schönen Grafiken dazu.

http://www.sternhimmel-ueber-ulm.de/seeing.htm

Debian hatte ich die letzten beiden Tage auf der Schnecke. Mehr als ernüchternd ! Ist zwar schön, flexibel und es gibt jede Menge Pakete. Aber das Ding wird dann wirklich zur Schnecke :(

Seit gestern Abend ist ein einfachen uNSLUng drauf. Braucht so gut wie keinen Platz und rennt richtig flüssig :

root@Schnecke:/> df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 722M 46M 669M 7% /
/dev/root 6.4M 6.1M 320K 96% /initrd
/dev/sda1 722M 46M 669M 7% /
/dev/sda1 722M 46M 669M 7% /share/flash/data
/dev/sda2 122M 4.1M 116M 4% /share/flash/conf

Ganz im Gegensatz zu Debian. Da waren über 500MB weg. Ich bin mal gespannt, wie lange es der USB-Stick tut.

Hmmm, Apache brauche ich nicht wirklich. Ich habe eine gute Homepage bei dem Magenta-T und dort auch jede Menge Platz. Die Schnecke müßte also nur die Pages und die Grafiken generieren. Dann per FTP hochladen und fertig ! Für was eine MySQL ? Ist doch mit Kanonen auf Spatzen geschossen.

Ach ja, die Schnecke verbraucht bei mir gerade mal 3 Watt !!! Das wären umgerechet auch nicht mehr, was die kleinen AVR-Werbserver verbraten. Schön ist, das ich über den USB-Port die Spannungsversorgung der Wetterstation bereitstellen kann. Nur ein Kabel :)

Soo, und jetzt der peinliche Teil. Wie bastel ich eine Webseite mit den Grafiken ? Irgendwas muß mir ja aus den Meßwerten die Diagramme "zeichnen". Hab null Ahnung von Perl, Java, PHP, weißgottwas ...

Thomas
 
Hallo,

OK, wieder ein kleiner Schritt weiter. Die ersten Daten sind im Internet. Jetzt fehlen nur noch die schönen Grafiken dazu.

http://www.sternhimmel-ueber-ulm.de/seeing.htm

Debian hatte ich die letzten beiden Tage auf der Schnecke. Mehr als ernüchternd ! Ist zwar schön, flexibel und es gibt jede Menge Pakete. Aber das Ding wird dann wirklich zur Schnecke :(

Seit gestern Abend ist ein einfachen uNSLUng drauf. Braucht so gut wie keinen Platz und rennt richtig flüssig :

root@Schnecke:/> df -h
Filesystem Size Used Avail Use% Mounted on
rootfs 722M 46M 669M 7% /
/dev/root 6.4M 6.1M 320K 96% /initrd
/dev/sda1 722M 46M 669M 7% /
/dev/sda1 722M 46M 669M 7% /share/flash/data
/dev/sda2 122M 4.1M 116M 4% /share/flash/conf

Ganz im Gegensatz zu Debian. Da waren über 500MB weg. Ich bin mal gespannt, wie lange es der USB-Stick tut.

Hmmm, Apache brauche ich nicht wirklich. Ich habe eine gute Homepage bei dem Magenta-T und dort auch jede Menge Platz. Die Schnecke müßte also nur die Pages und die Grafiken generieren. Dann per FTP hochladen und fertig ! Für was eine MySQL ? Ist doch mit Kanonen auf Spatzen geschossen.

Ach ja, die Schnecke verbraucht bei mir gerade mal 3 Watt !!! Das wären umgerechet auch nicht mehr, was die kleinen AVR-Werbserver verbraten. Schön ist, das ich über den USB-Port die Spannungsversorgung der Wetterstation bereitstellen kann. Nur ein Kabel :)

Soo, und jetzt der peinliche Teil. Wie bastel ich eine Webseite mit den Grafiken ? Irgendwas muß mir ja aus den Meßwerten die Diagramme "zeichnen". Hab null Ahnung von Perl, Java, PHP, weißgottwas ...

Thomas
Grafiken?
gnuplot,php ...
Ich würde dir GNUPlot empfehlen(klick)macht schöne Diagramme in der Konsole ;)
Installier dir mal gnuplot,dass kann (glaub ich) auch Dateien Verarbeiten und daraus Diagramme machen.Ich habs selber drauf(auf 'ner Kiste mit Doppelkern Intel Atom @1.600 GHz und Ubuntu 8.10).
Websitegenerierung?
Da kann ich für dich ein Shellscript machen,welches dann halt nur alle 30 Sekunden ausgeführt wird.
 
Oh Mann Leute :eek:

Habe heute Nachmittag stundenlang nach einem Fehler gesucht, wo keiner war. Naja, einfach eine Stringvariable zu klein bemessen und die ganze Sch... ist einfach stehen geblieben. Regelrecht eingefroren. So was habe ich noch nie gesehen !

OK, jetzt sind die Meßwerte alle online, sogar die Druckmessung sollte funktionieren. Kann es leider noch nicht prüfen, da die kleine Platine für den Drucksensor noch nicht da ist.

Ein paar Grafiken, die dynamisch alle 6 Minuten aktualisiert werden :

temp.gif


humi.gif


druck.gif


wolken.gif

(je kleiner der Wert, desto klarer der Himmel :yes4: )

Und hier die "paar" Scripte, die das ins WWW übertragen :

# vi /page1.txt

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<meta http-equiv="refresh" content="600; url=seeing.htm">
<meta http-equiv="Pragma" content="no-cache">
<meta name="GENERATOR"
content="Mozilla/4.78 [de] (Windows NT 5.0; U) [Netscape]">
<title>Sternhimmel &uuml;ber Ulm</title>
</head>
<body
style="background-color: rgb(0, 0, 0); background-image: url(verlauf.jpg);"
link="#ffff00" text="#000000" vlink="#ffff00">
<center>
<h1><font color="#dfdfdf">Wetter- und Seeingvorhersage f&uuml;r Ulm
</font></h1>
<p>
</p>
<hr>
<p><img src="/scratch/webcam.jpg" nosave=""></p>
<p>
<font color="#dfdfdf">Die Kamera zeigt den Himmel in westlicher Richtung aus Weidach. Das Bild wird alle 10 Minuten aktualisiert.</font></p>
<br>
<font color="#dfdfdf"><b>Aktuelle Wetterdaten aus Weidach :</b><br>
</font><br>
<table style="color: rgb(223, 223, 223); text-align: left; width: 300px;" border="0"
cellpadding="2" cellspacing="2">
<tbody>
<tr>

# vi /page2.txt

</tbody>
</table>
<p><font color="#dfdfdf">Die Meßwerte der letzten 24 Stunden grafisch dargestellt :</font></p>
<p> <img src="temp.gif" align="middle"> </p>
<p> <img src="humi.gif" align="middle"> </p>
<p> <img src="druck.gif" align="middle"> </p>
<p> <img src="wolken.gif" align="middle"> </p>
</center>
<p>
</p>
<hr>
<p><font color="#dfdfdf">Zur&uuml;ck zur <a href="index.htm">Startseite</a>.</font></p>
</body>
</html>

# vi /messung.sh

#!/bin/sh
# Werte von Wetterstation ausgeben, aufbereiten und auf Webserver übertragen
ZEILE=`grep '*' /logfile.txt | tail -1`
echo "$ZEILE" >> /logfile.dat
FELD1=$(echo $ZEILE | cut -d , -f3)
FELD2=$(echo $ZEILE | cut -d , -f4)
FELD3=$(echo $ZEILE | cut -d , -f5)
FELD4=$(echo $ZEILE | cut -d , -f8)
FELD5=$(echo $ZEILE | cut -d , -f6)
cat /page1.txt > /seeing.htm
echo '<td>Temperatur :</td><td style="text-align: right;">' >> /seeing.htm
echo "$FELD1" >> /seeing.htm
echo '°C</td></tr><tr>' >> /seeing.htm
echo '<td>Tau- oder Frostpunkt :</td><td style="text-align: right;">' >> /seeing.htm
echo "$FELD2" >> /seeing.htm
echo '°C</td></tr><tr>' >> /seeing.htm
echo '<td> rel. Luftfeuchte :</td><td style="text-align: right;">' >> /seeing.htm
echo "$FELD3" >> /seeing.htm
echo '%</td></tr><tr>' >> /seeing.htm
echo '<td>Luftdruck :</td><td style="text-align: right;">' >> /seeing.htm
echo "$FELD4" >> /seeing.htm
echo 'mbar</td></tr><tr>' >> /seeing.htm
echo '<td>Wolkentemperatur :</td><td style="text-align: right;">' >> /seeing.htm
echo "$FELD5" >> /seeing.htm
echo '°C</td></tr>' >> /seeing.htm
cat /page2.txt >> /seeing.htm
tail -241 /logfile.dat > /logfile.tmp
/opt/bin/gnuplot /script.plt
ftp -n www.sternhimmel-ueber-ulm.de << EOT
user <zensiert> <zensiert>
put /seeing.htm /seeing.htm
put /temp.gif /temp.gif
put /humi.gif /humi.gif
put /druck.gif /druck.gif
put /wolken.gif /wolken.gif
bye
EOF

# vi /script.plt

set term gif
set size 1.0,0.5
set border 15
set datafile separator ","
set data style lines
set grid
unset key
set xrange [0:240]
set xtics ("0" 240,"" 230,"" 220,"" 210,"-4" 200,"" 190,"" 180,"" 170,"-8" 160,"" 150,"" 140,"" 130,"-12" 120,"" 110,"" 100,"" 90,"-16" 80,"" 70,"" 60,"" 50,"-20" 40,"" 30,"" 20,"" 10,"-24" 0)
set yrange [-20:40]
set title "Temperatur (rot) Tau-/Frostpunkt (grün) [°C]"
set out "/temp.gif"
plot "/logfile.tmp" using :3, "/logfile.tmp" using :4
set yrange [0:100]
set title "relative Luftfeuchte [%]"
set out "/humi.gif"
plot "/logfile.tmp" using :5
set yrange [900:1100]
set title "Luftdruck [mbar]"
set out "/druck.gif"
plot "/logfile.tmp" using :8
set yrange [-30:0]
set title "Wolkentemperatur [°C]"
set out "/wolken.gif"
plot "/logfile.tmp" using :6

# vi /opt/etc/init.d/S99wetter

#!/bin/sh
# Startet USB-Verbindung mit Wetterstation und Logging
killall cat
/opt/bin/stty -F /dev/ttyUSB0 19200
/opt/bin/nohup cat /dev/ttyUSB0 > /logfile.txt &
killall USB_Detect

# vi /etc/crontab

1 * * * * root /opt/bin/ntpclient -s -h 0.pool.ntp.org > /var/log/ntp.log && hwclock --systohc --utc
50 19 * * * root /opt/etc/init.d/S99wetter
*/6 * * * * root /messung.sh

Jeder mit ein bißchen Linux-Kenntnisse sollte das eigentlich zum Rennen bringen :stupido:
:cheers:

Thomas
 
Hallo Thomas,

das ist ja alles super geworden :adore:

Wenn ich wieder mehr Zeit habe, werde ich mich auch mal mit deinem Wolkensensorprojekt befassen.

Grüße,
Dirk
 
Nachbau!

Hi Thomas,

tolle Sache! Sag mal, wenn können wir uns mal zu einer Session treffen damit ich mit dem Nachbau der Astrowetterstation beginnen kann? Ich mag auch so ein Ding haben!!!!

Andere Frage, hast Du Dir mal überlegt, auf dem Sensor-Board für den Aussenbereich auch noch einen kleinen Mega unterzubringen welcher die Erfassung der Daten macht und dann z.B. auch über RS232 oder ähnliches üebrträgt? Man hätte den Vorteil, dass man das Flachbandkabel welces durch zusätzliche Sensorig immer umfangreicher wird durch ein 4-adriges Kabel ersetzen kann. Außerdem könnte man größere Längen umsetzen.

Zugegebn, das verschräft das PowerKonzept mit Akku, dafür wird es aber "handlicher". Denk mal drüber nach!

Grüße,
Markus
 
Hallo Markus,

4 Adern werden wohl nicht reichen, da ich 2 Versorgungsspannungen brauche. Und auch noch einen relativ großen Strom für die Heizung, falls aktiviert. Aber mit 6 bis 8 Adern müßte es gehen. Vielleicht wird es auch notwendig, da ich bei 5m Länge den SHT71 bereits mit 3,3kOhm belaste, damit die Werte sauber rüber kommen. DCF und Analogsignale scheinen kein Problem zu sein.

Wäre halt eine Umprogrammierung notwendig, also im Prinzip nur Softwareaufwand. Wegen dem Strom mache ich mir keine Gedanken. Die paar mA reißen es jetzt auch nicht raus. Kommt Zeit, kommt Programm ;)

Ja, Deinen Platinensatz kannste Dir bei Gelegenheit abholen. Ich warte nur noch auf die Miniplatinen vom Drucksensor. Hab gleich mal eine Überlieferung von 10 Stück für ein paar Cents mitbekommen und das bei einer Bestellmenge von nur 10 Stück :stupido3:

Sodale, der Prototyp kann jetzt Luftdruck und Innentemperatur messen. Leider kann ich mit dem das nicht per USB ausgeben und übertragen. Das geht erst mit den Platinen der Serienproduktion.

Wetter9a.jpg
Wetter9b.jpg


Der kleine Linux-Server daneben überträgt das alles ins Internet und versorgt die Wetterstation mit Strom über USB. Die kleine Fernbedienung gehört auch dazu. Damit kann man alles bequem vom dem Wohnzimmersessel aus bedienen :cool:

Thomas
 
Hallo zusammen.

Ich sehe das Projekt "Wolkensensor", würde es besser "Astro-Wetterstation" bezeichnen, von der Hardwareseite aus, jetzt als beendet an. Einzig mit dem Verbindungskabel von/zu der Sensorenplattform werde ich mir noch was überlegen. Zumindest werde ich wieder auf das Flachbandkabel zurück gehen. Die Signale sehen einfach sauberer aus und vor allem, das flache Kabel kann man prima zwischen dem Fenster und Rahmen "durch drücken".

Alternativ überlege ich mir, ob es Sinn macht, eine Kleine Außenstation mit separatem Prozessor der Sensorenplattform zu spendieren. Würde die Anzahl der Adern minimieren und auch die Leitungslänge erhöhen. Da muß ich aber noch drüber sinnieren ;) Es muß ja dann alles mit den vorhandenen Mitteln klappen. Ich möchte die Platine ja nicht noch einmal redesignen.

Hier noch ein paar Fotos :

Wetter9c.jpg


Ich kann das Display in 3 Farben und das Gehäuse in 2 Farben anbieten.

Die Sensorenplattform sieht so aus :

Wetter9d.jpg
Wetter9b.jpg



Ist also für jedermann nachbaubar und die Abflußrohre gibt es in jedem Baumarkt. Dazu optional den kleinen Webserver. Die Fernbedienung ist immer mit dabei.

Endgültiger Code und Doku folgen in nächster Zeit. Gesamtkosten allein für die Hardware : ca. 300 Euro, ohne den Webserver. Ganz schön heftig. Habe das nicht gedacht, als ich damit angefangen habe.

Thomas
 
Hallo Knickohr!

Ich habe zwar hier nicht jeden Beitrag verfolgt, aber das Ergebniss sieht nicht nur gut aus, sondern ist im allgemeinen sehr beachtlich!

Gratuliere zum gelungenen Projekt!

Nun kann ich mich fast ein wenig ärgern, dass ich vor einem Jahr mein ETX125 verkauft habe. Mit der Astro-Wetterstation hätte das Hobby bestimmt noch viel mehr Spaß gemacht! ;)

Daher denke ich mal, ist deine Astro-Wetterstation ein lohnenswertes Zubehör für jeden Hobbyastronom... und nicht nur für die!


Schöne Grüße,
Cassio !
 
Hallo Cassio.

Danke für die Blumen :flowers:

Wir hatten heute Morgen übrigens den klarsten Himmel seit Bestehen der Wetterstation. Und das ist auch schon über ein halbes Jahr her. Unter -25°C Wolkentemperatur. Ich muß mir mal den Luxus gönnen und das Ding mit nach Namibia im September nehmen. Mal sehen, wie sauber dort der Himmel ist ;)

Es gibt ein "Konkurrenzprodukt". Den Boltwood Cloud Sensor. Er diente mir auch als Vorlage. Allerdings habe ich damals gesagt, für 300 Euro kannste Dir das selber zusammen schustern. Pustekuchen ! Ist wohl nicht so. Nun gut, so ein schönes Display hat der Boltwood nicht :D

Thomas
 
Gratuliere dir zu einem so gelungenem Projekt!

Wow!
Ich möchte auch so eine Astro-Wetterstation haben!
Haben will!
Ist Luftdruck -160.6 mbar richtig?
Das Bild der Webcam auf deiner Seite ist gans schön Verstöhrt.
Meint ihr das die Bauteile hier in den USA billiger sind?
(Hier haben wir grade 13°C und Regen)
Gratuliere zum gelungenen Projekt!
Wo hast du denn diese Riesen-Displays her?
Mir gefällt schwarzes Gehäuse und grünes Display :)
Achso: Das Diegramm auf deiner Website für Luftdruck zeigt nichts an.
 
Hallo,

neneee, die kleine Platine für den Lufdrucksensor ist noch nicht da, kommt erst diese Woche. Also kann da noch nichts angezeigt werden.

Ob in den Staaten günstiger kommt, wage ich zu bezweifeln. Ich bestelle viele Bauteile bei Farnell, die Preise sind überall fast gleich.

Schau mal in der Bucht, und suche nach "240x128" weltweit. Da bekommste sicher ein paar Treffer ;)

Thomas
 
Eagle

Hallo hier ist mal die eagle Datei vom Display:
MS240128A2 ich hoffe ihr könnt etwas damit anfangen.
MfG Gerwin
 

Anhänge

  • MS240128A2.zip
    1,7 KB · Aufrufe: 52
Hallo :)

Vielen Dank, ich werde die LIB mir Morgen gleich mal anschauen.


@all

Jetzt ist die Wetterstation auch mit Druckmesser ausgestattet. Komischerweise hat ein MS5534 ganz andere Parameter als die übrigen 4. Muß da wohl ein madigen erwischt haben. Ob ich da mal Intersema anschreiben soll ?

Thomas
 
Hallo Thomas,

ich habe eine Frage zu dem TPS334 - ich wollte damit mal experementieren. Wenn ich das richtig verstanden habe, gibt der Sensor nur eine Temperaturdifferenz zwischen dem gemessenen Wert und dem internem Wert aus, richtig? Heißt es im Umkehrschluß, dass ich für eine korrekte Temperaturberechnung in der Software beide Werte auswerten muss?

Vielleicht könntest du mir das Prinzip kurz erklären.

Vielen Dank!
Grüße
Alex
 
Hallo Thomas,

das habe ich mir schon angeschaut. Danke!

Eine Frage habe ich noch:
Was liegt an den Pins UC-Out, C-Out und T-Out an? Wenn ich die Schaltung richtig verstehe, müsste C-Out die gemessene Temperatur sein, UC-Out der unkorrigierte Wert und T-Out die interne Temperatur?

Grüße
Alex
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)