• 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ü

Webcam am Meteohub Raspy (Tutorial)

Begonnen von martinkk, 27.01.2015, 13:31:35

⏪ vorheriges - nächstes ⏩

martinkk

Hallo,

Da die WEbcam Funktionalität von Meteohub nicht am Raspberry läuft, mache ich hier ein kurzes Tutorial, wie ihr eine Webcam am Raspberry verwirklichen könnt. In diesem Tutorial wird erklärt, wie ihr Bilder macht und diese auf einen Webserver per ftp hoch lädt.

1. Kauft euch eine Webcam
Ich verwende für meine Bilder eine Logitech c270. Zusätzlich habe ich ein -2 Dioptrien Brillenglas (kostet keine 10 EUR) anfertigen lassen, welches ich vor die Linse geklebt habe. Solche kleinen Webcams sind alle kurzsichtig und für Aufnahmen >2m Entfernung nicht zu gebrauchen. Mit dem Brillenglas funktioniert das einwandfrei.

1. Prüfen ob die Webcam erkannt wurde
mittels dem Befehl
dmesg
bekommt ihr eine Übersich über diverse Dinge. Irgendwo werdet ihr hier so etwas wie das hier "logitech c270 device registered as /dev/video0"

Das bedeutet, dass die WEbcam unter /dev/video0 angesprochen weden kann.


3. Webcam Software installieren
(euer Raspy muss mit dem INternet verbunden sein)

apt-get install fswebcam
Dies installiert euch das tool fswebcam. http://manpages.ubuntu.com/manpages/lucid/man1/fswebcam.1.html

welchselt nun mit "cd" in euer Home und führt dort folgenden Befehl aus.
fswebcam -v -r"640×480″ test.jpg
Nun solltet ihr in eurem Home bereits eine Datei test.jpg, also ein Bild in der Auflösung 640x480 Pixel vorfinden. Schaut euch die Datei an, ob alles passt (zB kopiert ihr euch sie mittels winscp auf einen Rechner etc....).

4. Config File erstellen
Wir wollen ein paar Parameter angeben...
Hier meine Beispielconfig.
device /dev/video0
jpeg 95
resolution 640x480
skip 20
font /usr/share/fonts/truetype/droid/DroidSans.ttf
title "Livebild meiner Webcam"
timestamp "%d.%m.%Y %H:%M:%S"
set White Balance Temperature, Auto=True
set Backlight Compensation=1
set Brightness=110
set Contrast=35
set Saturation=28
frames 1
save live.jpg


skip 20 bedeutet, dass die ersten 20 Frames ausgelassen werden und erst der 21. zum Foto wird. Das kann hilfreich sein, wenn ihr keine zu hellen oder zu dunklen Bilder haben wollt, falls die Kamera etwas Zeit braucht, um zu fokussieren etc... alle anderen Parameter sind denke ich selbsterklärend. frames 1 sagt, dass ein Frame abgespeichert wird, und zwar unter dem Namen live.jpg

Diese Datei speichert ihr als webcam.cfg ab.
nano webcam.cfg
öffnet eine leere Datei. Kopiert oben Text in diese Datei und schließt und speicehrt sie ab. (srg+q -> y)

5. Ausführen von fswebcam mittels cfg file
mittels
fswebcam -c webcam.cfg
Macht ihr euer erstes Testfoto, basierend auf den Einstellungen aus der webcam.cfg!

6. per ftp hochladen
Hierfür benötigt ihr ein weiteres Tool namens ncftp.
mittels
apt-get install ncftp
installiert ihr euc ncftp.

Um nun eine Datei über FTP auf einen Server zu laden, bräuchtet ihr prinzipiell einen Befehl wie diesen hier:

ncfftp -u BENUTZERNAME -p PASSWORT SERVERNAME DATEINAME

Da dieser Weg aber recht unpraktisch ist, erstellen wir uns ein Script, welches wir später bspw. alle 15min ausführen lassen können und welches Foto und ftp Upload in Einem erledigt.

7. Webcamscript erstellen
nano webcamrun.sh
öffnet euch eine leere Datei mit dem namen webcamrun.sh.
in diese Datei schreibt ihr folgenden Inhalt:

#!/bin/bash
fswebcam -c /EUERPFAD/fswebcam.conf
ncftpput ncfftp -u BENUTZERNAME -p PASSWORT SERVERNAME /PFAD/live.jpg


Ihr müsst hier nur noch die Daten in GROSSBUCHSTABEN durch eure ersetzen.

8. Rechte ändern
Damit euer Webcamrun.sh script ausgeführt werden darf, müsst ihr noch die Rechte anpassen und der Datei das Recht executeable zu sein geben.

chmod +x webcamrun.sh

Nun könnt ir die Datei mittels
./webcamrun.sh
ausführen. Es sollte nun ein Foto gemacht und auf den Server hochgeladen werden! Um den Statusfortschritt zu sehen, könnt ihr euch auch noch ein paar Zeilen Text ausgeben lassen. bspw vor dem Aufruf von ncftpput mittels
echo "Foto aufgenommen!"
und nach dem ftp Befehl
echo "Foto hochgeladen!"
Diese Ausgaben seht ihr später auch fein säuberlich in den Meteohub logs.

9. Script zeitgesteuert ausführen mittels Cronjob
Nun wollt ihr das Script bestimmt alle 5min oder 15min.... ausführen. Das ist unter Linux mittels eines Cronjobs sehr einfach. Hierzu wie folgt vorgehen.

crontab -e
Scrollt ganz nach unten und gebt folgende Zeile ein.

15 * * * * DEINPFAD/webcamrun.sh

Das bedeutet, dass das Script alle 15min ausgeführt wird.

Nun sollte eigentlich alles funktionieren.

Im nächsten Kapitel zeige ich euch, wie ihr es steuern könnt, dass nur dann Bilder gemacht werden, wenn es wirklich Tag ist. Das kann man entweder mit einem ganzen Haufen unterschiedlicher cronjobs machen, oder auch mit anderen Lösungen.

martinkk

Teil 2 - Zeitgesteuerte Aufnahme basierend auf Sonnenaufgang und Untergang

Im zweiten Teil zeige ich euch, wie ich es realisiert habe, dass nur dann ein Foto gemacht wird, wo es auch Tageslicht gibt.

Hierfür verwende ich die Funktion von Meteohub. Meine Meteohub INstanz ist unter der IP 192.168.1.222 zu erreichen. Das müsstet ihr anpassen.

Hier zusammengefasst die Schritte, die ich mache.
1. Abrufen von Sonnenaufgang und Sonnenuntergang mit curl
2. Vergleich der aktuellen Uhrzeit mit Sonnenaufgang und Untergang
3. Webcam Script auslösen

ad 1
die beiden Variablen sunrise und sunset werden gesetzt. Gleichzeitig setze ich eine Variable "jetzt" mit der aktuellen Uhrzeit. curl gibt den Inhalt des Links zurück. Da hier lediglich die Zeit ausgegeben wird, ist das ideal! Der Parameter -s unterdrückt jegliche weitere Ausgabe von curl (=Silent Mode)

sunrise=`curl -s http://192.168.1.222/meteograph.cgi?text=actual_sunrise_standard_local`
sunset=`curl -s http://192.168.1.222/meteograph.cgi?text=actual_sunset_standard_local`
jetzt=`date +%H:%M`


ad 2
Ich schaue, ob die aktuelle Zeit in die Zeitspanne zwischen Sonnenaufgang und Untergang fällt. Wenn ja, rufe ich das Webcam Script auf.
if [ $sunrise -nt $jetzt ] && [ $sunset -ot $jetzt ];
then
        echo "Es ist Tag!"
        /root/webcamrun.sh
else
        echo "Es ist Nacht!"
f


Da ich allerdings schon kurz vor Sonnenaufgang Fotos machen möchte und auch kurz nach Sonnenaufgang damit weitermachen will, habe ich noch folgende Anpassung gemacht.
Ich addiere eine Stunde zu "jetzt" dazu, um in der Früh eine falsche Uhrzeit vorzutäuschen. Selbiges mache ich am Abend, mit einer Stunde abzug. Es würde auch bspw. '-30 Minutes' funktionieren, wenn euch eine Stunde zu viel ist.

jetztSunrise=$(date -d '+1 hour' +%H:%M);
jetztSunset=$(date -d '-1 hour' +%H:%M);

if [ $sunrise -nt $jetztSunrise ] && [ $sunset -ot $jetztSunset ];
then
        echo "Es ist Tag!"
        /root/webcamrun.sh
else
        echo "Es ist Nacht!"
fi


Und hier das ganze Script:

#!/bin/bash
CURL='/usr/bin/curl'
sunrise=`curl -s http://192.168.1.222/meteograph.cgi?text=actual_sunrise_standard_local`
sunset=`curl -s http://192.168.1.222/meteograph.cgi?text=actual_sunset_standard_local`

jetzt=`date +%H:%M` #kann man sich sparen....

jetztSunrise=$(date -d '+1 hour' +%H:%M);
jetztSunset=$(date -d '-1 hour' +%H:%M);

if [ $sunrise -nt $jetztSunrise ] && [ $sunset -ot $jetztSunset ];
then
        echo "Es ist Tag!"
        /root/webcamrun.sh
else
        echo "Es ist Nacht!"
fi



Dieses Script rufe ich über Crontab (siehe Tutorial 1) alle 15min auf. Et voilá....fertig ist die Webcam.

Beiträge zusammengeführt, weil der Autor sich selbst geantwortet hat statt seinen letzten Beitrag zu ändern: 29.01.2015, 19:39:11

Hallo,

Teil 3 - Automatisches Archiv der Webcambilder anlegen

im dritten Teil zeige ich euch, wie ich ein Tagesarchiv der Webcam Bilder ablege. Am Raspberry selbst werden in meinem Fall keine Bilder gespeichert. Ich transferiere sie alle auf meinen ftp Server.

Mit diesem Script wird das aktuell geschossene Foto als live.jpg am Webserver gespeichert und weiters ein ORdner mit dem aktuellen Datum als Ordnername angelegt. Innerhalb dieses ORdners liegen die einzelnen Webcam Bilder des Tages im Format YYYY-MM-DD_HHMM.jpg So bekommt ihr Pro Tag einen ORdner mit allen Bildern, chronologisch alphabetisch sortiert.

Wie Fotos geschossen werden, steht ja bereits im ersten Beitrag. Hier zeige ich euch, wie ich das script webcamrun.sh ergänzt habe, um die Fotos auch zu archivieren.

1. das Bild wird aufgenommen
fswebcam -c webcam.cfg

2. Livebild hochladen
ncftpput -f ftp.cfg  /html/Wordpress/webcam/ live.jpg

3. Heutiges Datum und Zeitstempel speichern und Bild mit Zeitstempel abspeichern

HEUTE="$(date +"%Y-%m-%d")"
JETZT="$(date +"%Y-%m-%d_%H%M")"
cp live.jpg  "$JETZT".jpg


3. Bild in einen Tagesordner im Format YYYYMMTT hochladen

ncftpput -f ftp.cfg  -m /html/Wordpress/webcam/archiv/"$HEUTE" "$JETZT".jpg


4. Löschen der lokalen Kopie und des Files mit dem Zeitstempel
rm live.jpg
rm "$JETZT".jpg



Und hier das komplette Script.


echo -"Bild aufnehmen"
fswebcam -c webcam.cfg

echo "Bild aktuell setzen"
ncftpput -f ftp.cfg  /html/Wordpress/webcam/ live.jpg

HEUTE="$(date +"%Y-%m-%d")"
JETZT="$(date +"%Y-%m-%d_%H%M")"
cp live.jpg  "$JETZT".jpg
ncftpput -f ftp.cfg  -m /html/Wordpress/webcam/archiv/"$HEUTE" "$JETZT".jpg

echo "Loeschen von live.jpg"
rm live.jpg
rm "$JETZT".jpg
echo "done"


Beiträge zusammengeführt, weil der Autor sich selbst geantwortet hat statt seinen letzten Beitrag zu ändern: 29.01.2015, 19:39:58



Beiträge zusammengeführt, weil der Autor sich selbst geantwortet hat statt seinen letzten Beitrag zu ändern: 29.01.2015, 19:50:47

Teil 4 - Webcam Bilder im Zeitraffer zusammenfügen

Hier bediene ich mich der grundsätzlichen Idee von Jon Raasch (http://jonraasch.com/blog/a-simple-jquery-slideshow)

Im Prinzip werden über ein kleines Javascript alle Dateien eines Ordners hintereinander geladen. Etwas CSS macht einen netten Übergang zwischen den Bildern. Schaut euch einfach das oben verlinkte Tutorial an.

Vorteil der Lösung: Einfach und nicht speicherintensiv. Läuft auf jedem Smartphone.
Nachteil der Lösung: Bei langsamer Internetverbindung werden Bilder zu langsam geladen und ausgelassen.

In meinem Fall sieht das Ergebnis wie folgt aus:

<?php header("Expires: 0"); header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); header("cache-control: no-store, no-cache, must-revalidate"); header("Pragma: no-cache");?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"/>
<head>
<?php$pattern = '/\.(png|gif|jpg|jpeg)$/i';$dh = opendir('.');$height = 0;while (false !== ($filename = readdir($dh))) {  if (!is_dir($filename) && $filename[0] != '.' && preg_match($pattern, $filename)) {    $files[] = $filename;    if ($height == 0) {        list($width, $height) = getimagesize($filename);    }  }}asort($files);/*array_multisort ($files, SORT_ASC, SORT_NUMERIC, $files);*/$count = intval($_REQUEST['count']);if ($count == 0) $count = 10;/* if (count($files) == 0) {  throw new Exception("No image files were found");}*//*shuffle($files);*//*if (count($files) > $count) {  array_splice($files, $count);}*/closedir($dh);?>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
<script type="text/javascript">
/***
Simple jQuery Slideshow Script
Released by Jon Raasch (jonraasch.com) under FreeBSD license: free to use or modify, not responsible for anything, etc.  Please link out to me if you like it :)
***/
function slideSwitch() {
  var $active = $('#slideshow IMG.active');
  if ( $active.length == 0 ) $active = $('#slideshow IMG:last');
  var $next =  $active.next().length ? $active.next() : $('#slideshow IMG:first');
  $active.addClass('last-active');
  $next.css({opacity: 0.0}).addClass('active').animate({opacity: 1.0}, 100, "linear", function() {$active.removeClass('active last-active');});
}
$(function() {
  setInterval( "slideSwitch()", 500 );
});
</script>
<style type="text/css">
body {padding:0; margin:0;}
#slideshow {position:relative; height:
<?php echo $height ?>
px;}
#slideshow IMG {position:absolute; top:0; left:0; z-index:8; opacity:0.0;}
#slideshow IMG.active {z-index:10; opacity:1.0;}
#slideshow IMG.last-active {z-index:9;}
</style>
</head>
<body>
<div id="slideshow">
<?php    $first = true;    foreach ($files as $file) {        echo ' <img src="'.$file.'"'.($first ? ' class="active"' : '').' />';        $first = false;    }?>

</div>
</body>
</html>


In Aktion sieht das Ganze dann so aus. Ich habe in meiner Version die Übergänge extrem reduziert. Das könnte man "smoother" machen, wollte ich am Ende dann aber doch nicht.
http://www.trickytrails.com/Wordpress/webcam/archiv/2015-01-12/slider.html

Beiträge zusammengeführt, weil der Autor sich selbst geantwortet hat statt seinen letzten Beitrag zu ändern: 30.01.2015, 09:54:42

Teil 5 - Galerie aller Webcambilder erstellen (automatisch)

Mir ist es wichtig, dass ich schnell auf alle Archivbilder zugreifen kann. Hierfür gibt es ein fix fertiges php Script, welches eine gut konfigurierbare und ansehnliche Galerie aller Bilder eines Ordners (und auch Unterordner) erstellt. Für dies Galerie reicht ein einziges php File aus, welches im Stammverzeichnis eurer Webcam, in dem sich die YYYYMMDD Verzeichnisse befinden ablegt.

Mehr Infos hier:
https://sye.dk/sfpg/

1. php file herunterladen
2. in einen ORdner (am besten Stammverzeichnis der Webcam) kopieren
3. mit den Settings im php File spielen (Sortierung, etc.)

Das Ganze sieht dann beispielsweise so aus (ich habe am Layout quasi nichts geändert):
http://www.trickytrails.com/Wordpress/webcam/archiv/

Es gibt auch hier die Möglichkeit eine Art Zeitraffer über die Slideshow Funktion zu erzeugen. Die hat mich allerdings nicht überzeugt.
Um auch das Zeitraffer Video in den einzelnen Tagesvideos zu haben, kopiere ich das php script aus dem letzten Tutorial (ich nenne es slider.php) einmal pro Tag mitels cronjob in den Tagesordner. So kann das Zeitraffer Video auch aus der Galerie geöffnet werden.

Beiträge zusammengeführt, weil der Autor sich selbst geantwortet hat statt seinen letzten Beitrag zu ändern: 30.01.2015, 10:07:44

Teil 6 -Tipps zur Optimierung der Webcam-Fotos

Ich verwende eine Logitech C260 Webcam, die ich in ein SPritzwasserfestes Gehäuse geklebt habe. Da solche Kameras allerdings alle kurzsichtig sind, habe ich ein -2 Dioptrien Mineralglas beim Optiker bestellt (8,- EUR), welches ich vor die Linse geklebt habe. Das verbessert die Qualitä enorm (in meiner Galerie erst seit 29.1.2015 zu sehen).

Des weiteren habe ich bemerkt, dass das Tool fswebcam nur ungenügend verkleinern kann. Aus diesem Grund habe ich folgende Änderungne implementiert.

1. fswebcam keine Bilder verkleinern lassen
Informiert euch über die native Auflösung der Webcam und stellt diese im webcam.cfg ein. Weiters habe ich die jpg Komprimierung im webcam.cfg auf 100 gestellt und die Schiftgröße auf 18px vergrößert, damit man sie nach dem Verkleinern noch lesen kann.

device /dev/video0
jpeg 100
resolution 1280x720
skip 20
font /usr/share/fonts/truetype/droid/DroidSans.ttf:18
title "Livebild meiner Webcam"
timestamp "%d.%m.%Y %H:%M:%S"
set White Balance Temperature, Auto=True
set Backlight Compensation=1
set Brightness=110
set Contrast=35
set Saturation=28
frames 1
save live.jpg


2. imagemagick zur Optimierung der Bilder installieren
apt-get install imagemagick
Nun lassen wir das Verkleinern imagemagick erledigen und fügen im webcamrun.sh an die Stelle gleich nachdem das Foto gemacht wurde folgenden Befel hinzu:

convert live.jpg -resize "640x" -unsharp 2x0.5+0.7+0 -quality 98 live.jpg

das komplette Script:

echo -"Bild aufnehmen"
fswebcam -c webcam.cfg

#Bild verkleinern
convert live.jpg -resize "640x" -unsharp 2x0.5+0.7+0 -quality 98 live.jpg

echo "Bild aktuell setzen"
ncftpput -f ftp.cfg  /html/Wordpress/webcam/ live.jpg

HEUTE="$(date +"%Y-%m-%d")"
JETZT="$(date +"%Y-%m-%d_%H%M")"
cp live.jpg  "$JETZT".jpg
ncftpput -f ftp.cfg  -m /html/Wordpress/webcam/archiv/"$HEUTE" "$JETZT".jpg

echo "Loeschen von live.jpg"
rm live.jpg
rm "$JETZT".jpg
echo "done"



Das Bild wird so auf 640 Pixel verkleinert und etwas nachgeschärft. Das Ergebnis is deutlich besser! Ich werde mich, wenn ich Muße habe, noch etwas mit dem Weißabgleich usw spielen. Da ist noch viel möglich...

GS63

Hallo,
mein Webhoster akzeptiert ab dem 01.04. nur noch FTP mit Verschlüsselung: FTPS (explizites FTP über TLS). Wenn ich das auf den Seiten von ncftp richtig gelesen habe, unterstützt ncftp kein FTPS.  Im www habe ich bis jetzt nur Lösungen gefunden, die die Einrichtung eines eigenen FTP-Servers auf dem Raspi zeigen. Kennt jemand alternative Programme für den reinen Upload per FTPS?

Gruß
Georg

falk

Zitat von: GS63 am 12.04.2016, 17:42:24
Kennt jemand alternative Programme für den reinen Upload per FTPS?

Das Programm curl kann das.

martinkk

Zitat von: GS63 am 12.04.2016, 17:42:24
Hallo,
mein Webhoster akzeptiert ab dem 01.04. nur noch FTP mit Verschlüsselung: FTPS (explizites FTP über TLS). Wenn ich das auf den Seiten von ncftp richtig gelesen habe, unterstützt ncftp kein FTPS.  Im www habe ich bis jetzt nur Lösungen gefunden, die die Einrichtung eines eigenen FTP-Servers auf dem Raspi zeigen. Kennt jemand alternative Programme für den reinen Upload per FTPS?

Hi Georg!
Ich habe dein Email leider vergessen zu beantworten. Sorry! Schau mal das an: http://lftp.yar.ru/features.html

Das schaut gan brauchbar aus...

GS63

Hallo Falk und Martin,
vielen Dank für Eure Tipps.

Ich bin gestern Abend noch auf WPUT von Hagen Fritsch gestoßen. WPUT muss nachinstalliert werden, da das Programm normalerweise nicht in der Standardinstallation enthalten ist.
Hier gibt es "sogar" eine deutsche Beschreibung:

https://itooktheredpill.irgendwo.org/wput/wput.pdf

Usage: wput [options] [file]... [url]...
url ftp://[username[:password]@]hostname[:port][/[path/][file]]

Mit wput --force-tls live.jpg ftp://username:password@hostname/html/webcam/live.jpg wird das Bild, wie gewünscht, hochgeladen.
Leider sind sporadisch einige Bilder völlig zerstückelt (siehe Anhang). Kann jetzt nicht sagen, ob es an wput liegt... :?

Ric

#6
Hallo Martin,

auf der Suche nach einer Möglichkeit Wetterbilder auf meine Homepage zu laden, bin ich auf Dein interessantes Tutorial gestoßen. Da ich ebenfalls eine Wetterstation (Nexus) unter Verwendung von meteohub am Raspberry Pi betreibe und zufälligerweise auch über eine Logitech C260 verfüge, wäre es einen Versuch wert, hier einzusteigen.
Bevor ich mich allerdings stärker in Dein Tutorial vertiefe, hätte ich vorher ein paar Fragen dazu.
Meine Kenntnisse, was den Raspi anbelangt, sind noch sehr dürftig, wenn es mir auch gelungen ist, Meteohub funktionsfähig darauf zu installieren.

- Werden alle Eingaben direkt am Raspberry vorgenommen?
- Gibt es Stolperfallen, wo ich als stinknormaler Windows-User evt. nicht weiterkomme?
- Wird die USB-Webcam nach Anschluss am Raspberry gleich auch im Meteohub-Menü auf dem Browser angezeigt (S. 70 in der Meteohub-Anleitung)? :confused:

Gruß
Richard (gaildorf-meteo.de und dg2sbl.de)

Beiträge zusammengeführt, weil der Autor sich selbst geantwortet hat statt seinen letzten Beitrag zu ändern: 08.05.2016, 11:23:50

Hi,
bin mittlerweile bis Punkt 3 des Tutorials vorgedrungen.
Wie komme ich mit cd in mein HOME?
Es erscheint immer nur die Eingabezeile:
root@meteohub-rpi:~#

Gruß
Ric

Mit cd .. scheine ich nun in mein Home gekommen zu sein.
Nach ein paar Zeilen mit u.a. dem Hinweis FIQ timed out. Data may have been lost. kam dann der Hinweis:
Processing captured image...
Unable to load font ´sans´: Could not find/open font.
Disabling the banner.
Writing JPEG image to test.jpg.

An der Stelle hänge ich nun, wie krieg ich das Bild mit winscp auf meinen Rechner?
Sorry für die aus Deiner Sicht wohl doofen Fragen. Evt. kommen noch mehr, falls Du sie mir beantwortest.  :)

GS63

Kleines Update zu meinem Beitrag #5:

Die Bildfehler hat tatsächlich wput beim upload produziert. Hierfür nutze ich nun curl. Jedes Bild kommt jetzt fehlerfrei auf meinem Webspace an. :)

Dann noch was zur zeitgesteuerten Aufnahme (wer meteohub nicht einsetzt).
Mit dem Tool sunwait lässt sich dies wunderbar steuern:

sunrise=`sunwait list civ rise Langitude Longitude`
sunset=`sunwait list civ set Langitude Longitude`
sunrise1=$(date -d "$sunrise" +%s);
sunset1=$(date -d "$sunset" +%s);
jetzt=$(date +%s);
if (($sunrise1 <= $jetzt)) && ((sunset1 >= $jetzt));
then
        webcamrunT.sh
else
        webcamrunN.sh
fi

Mit der Option civ beginnen/enden die Aufnahmen auch während der zivilen Dämmerung.