{"id":95,"date":"2020-05-10T19:44:42","date_gmt":"2020-05-10T19:44:42","guid":{"rendered":"https:\/\/himbeergarten.de\/?p=95"},"modified":"2020-05-10T19:47:08","modified_gmt":"2020-05-10T19:47:08","slug":"klappe-die-1-oder-auch-die-webcam","status":"publish","type":"post","link":"https:\/\/www.himbeergarten.de\/?p=95","title":{"rendered":"Klappe die 1. oder auch die Webcam"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Ich m\u00f6chte Euch ja auch mit nahezu Livebilder aus der Tomatenzucht versorgen. Besser gesagt es ist ein Webcambild das alle 15 Minuten erneuert wird. Das ist nun tats\u00e4chlich eine der leichtesten \u00dcbungen. Fangen wir an.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wie immer bringen wir erstmal die Paketliste auf den neuesten Stand:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt-get update<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Dann bringen wir alle bereits installierten Pakete auf den neuesten Stand:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt-get upgrade<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Und schon k\u00f6nnen wir das eigentlich notwendige Paket namens fswebcam installieren. Dies ist ein kommandozeilenbasiertes Tool zum ansprechen von USB-Webcams.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt-get install fswebcam<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Die Webcam sollte bereits an den Raspberry angeschlossen sein und wir k\u00f6nnen mal sehen ob der RaspberryPi die Kamera erkennt, das machen wir mit:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>dmesg\n...\n&#91;   16.889382] bcm2835_audio soc:audio: card created with 8 channels\n&#91;   18.968095] usbcore: registered new interface driver uas\n&#91;   19.179697] uvcvideo: Found UVC 1.00 device USB2.0 PC CAMERA (1908:2311)\n...<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">In der letzten Zeile sieht man, das diese Webcam erkannt wurde. Soweit sogut.<\/p>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">Auch hier werde ich wieder ein kleines Script bem\u00fchen:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#!\/bin\/bash\nWDIR=\/home\/pi\/tomatenpi\nETCDIR=$WDIR\/etc\nOUTDIR=$WDIR\/output\nIMGDIR=$OUTDIR\/images\nRRDDIR=$WDIR\/rrd\n\n# Bild erstellen\nfswebcam -D 1 -r 1280x720 --title Markus_Tomaten_Farm $OUTDIR\/camera.jpg\n\n# Bild ins www-root auf dem Raspberry kopieren\ncp --force $OUTDIR\/camera.jpg \/var\/www\/html\/images\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Schauen wir uns das Script kurz genauer an:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ich fange wieder mit meinen Umgebungsvariablen an. Dann kommt der eigentliche Befehl f\u00fcr fswebcam gefolgt von einigen Parametern<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&#8211;<strong>D 1<\/strong>: steht f\u00fcr Delay, damit weise ich fswebcam an, eine Sekunde zu warten bevor das Bild vom Sensor aufgenommen wird. Das dient dazu das der Wei\u00dfabgleich etwas Zeit hat sich anzupassen. Das ist keine Pflicht, aber die Kamera ist so billig, die brauch das einfach.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>-r 1280&#215;720<\/strong>: steht f\u00fcr Resolution, damit gebe ich die Aufl\u00f6sung vor in der das Bild erstellt werden soll.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">&#8211;<strong>-title<\/strong>: Dies ist der Titel der unten am Bildrand dargestellt wird.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Anschlie\u00dfend gebe ich noch vor wo das Bild gespeichert werden soll.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Der unterste Teil des Scripts sollte selbsterkl\u00e4rend sein. ich betreibe auf dem Raspberry Selbst auch eine Webseite mit all den Informationen und der M\u00f6glichkeit die Bew\u00e4sserung auch manuell \u00fcber den Browser zu starten.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ich m\u00f6chte Euch ja auch mit nahezu Livebilder aus der Tomatenzucht versorgen. Besser gesagt es ist ein Webcambild das alle 15 Minuten erneuert wird. Das ist nun tats\u00e4chlich eine der leichtesten \u00dcbungen. Fangen wir an. Wie immer bringen wir erstmal die Paketliste auf den neuesten Stand: Dann bringen wir alle bereits installierten Pakete auf den [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":101,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_themeisle_gutenberg_block_has_review":false,"footnotes":""},"categories":[1,22],"tags":[16,21,5,17,20],"class_list":["post-95","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-raspberry","category-tomatenpi","tag-bash","tag-fswebcam","tag-raspberry","tag-script","tag-webcam"],"_links":{"self":[{"href":"https:\/\/www.himbeergarten.de\/index.php?rest_route=\/wp\/v2\/posts\/95","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.himbeergarten.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.himbeergarten.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.himbeergarten.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.himbeergarten.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=95"}],"version-history":[{"count":4,"href":"https:\/\/www.himbeergarten.de\/index.php?rest_route=\/wp\/v2\/posts\/95\/revisions"}],"predecessor-version":[{"id":100,"href":"https:\/\/www.himbeergarten.de\/index.php?rest_route=\/wp\/v2\/posts\/95\/revisions\/100"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.himbeergarten.de\/index.php?rest_route=\/wp\/v2\/media\/101"}],"wp:attachment":[{"href":"https:\/\/www.himbeergarten.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=95"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.himbeergarten.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=95"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.himbeergarten.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=95"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}