Archiv der Kategorie: Allgemein

picam – Einfaches System für den ersten Test einer webbasierten Raspberry-Pi-Kamera (naturwatch.lite)

Zusammenfassung. Für die Anwendungsszenarien „Autarke Beobachtung von Höhlenbrütern“ und „Beobachtung des Fluglochs von Honigbienen“ (Forschungsvorhaben #biene40) sind neben dem mechanischen Aufbau (Nistkasten, wettersicherer Aufbau mit Raspberry Pi ..) auch Computerprogramme in mehreren Programmiersprachen zu programmieren. Um mit einem ersten Test sofort starten zu können, wird hier ein radikal einfaches System vorgestellt, das jeder einer halben Stunde programmieren kann. Das System nimmt ein Bild auf und lädt es auf einen Webserver. Es besteht aus einem einfachen Python-Skript auf dem Raspberry Pi, einem einfachen in PHP geschriebenem Webservice auf dem Webserver und einer minimalistischen HMTL-Seite zur Anzeige des hochgeladenen Bildes.

Anwendungsfälle (Use Case Diagramm).  Abb. 1 zeigt, was ein menschlicher Nutzer und ein als Bilderlieferant dienender Kleinrechner Raspberry Pi mit dem webbasierten Teil des Systems tun können.

Abb 1: Use Case Diagramm

Topologie (Netzwerkstruktur). Abb. 2 zeigt die Vernetzung der Geräte und der Computerprogramme. Das Gesamtsystem besteht aus:

  1. Einem Webserver. Die einzige Anforderung ist, dass der Webserver PHP unterstützt. Fast alle Providern leisten das heutzutage.
  2. Einem Raspberry Pi mit Kamera. Für den Start ist ein Raspberry Pi Zero W kostengünstig.
  3. Einem Nutzer mit Computer oder Smartphone, der die HTML-Seite aufrufen kann.
  4. Einem Python Skript „picam.py“, das auf dem Raspberry Pi läuft, ein Bild aufnimmt und über die bestehende Netzverbindung an den Webservice „picamWS.php“ überträgt.
  5. Ein PHP Skript „picamWS.php“, das auf dem Webserver läuft und ein Bild entgegennimmt und unter dem Namen „picam.jpg“ auf dem Webserver speichert.
  6. Eine HTML-Seite „picam.html“ (smartphone-geeignet), die das Bild im Browser anzeigt.

Abb. 2: Netzwerktopologie

picam.py – Bilder aufnehmen und hochladen. Das Script picam.py (netto 16 Zeilen Quelltext) kann mit einem Texteditor, z.B. nano, direkt auf dem Raspberry Pi mit der Befehlsfolge „nano picam.py“erstellt werden. Nach dem Speichern mit der Tastenkombination „ctrl+o“  wird das Script noch ausführbar gemacht mit „chmod 777 picam.py“. Das Script lässt sich dann mit „./picam.py“ aufrufen und zeigt, wenn alles richtig eingerichtet ist, die folgende Ausgabe:

pi@naturwatch02:~ $ ./picam.py
<Response [200]>
picam.jpg hochgeladen.
pi@naturwatch02:~ $

Das Script arbeitet „ohne Netz und doppelten Boden“. Der Quelltext ist in Listing 1 dargestellt und kann gleich in den Editor übernommen werden. Es ist im Script eine Programmzeile zu ändern: An der Stelle, an die URL spezifiziert wird, ist anstelle von „meinServerUndVerzeichnis“ der eigene Server und das Verzeichnis, in dem Webservice, Bild und HTML-Seite liegen sollen, anzugeben.

Zunächst werden die benötigten Bibliotheken importiert: „picamera“, um direkt Bilder aus Python aufnehmen zu können,  „sleep“ aus der Bibliothek „time“ für eine Pause für die Kamera und „requests“ für den http-Zugriff auf den Webserver.

Die spannenden Zeilen im Skript sind:

camera.capture(localpicname)

Mit dem Statement wird das Bild aufgenommen und unter localpicname gespeichert.

url = 'http://meinServerUndVerzeichnis/picamWS.php'

files = {'file': open(localpicname, 'rb')}

r = requests.post(url, files=files)

Mit den Statements werden in der Variablen „url“ der Standort des Webservice angegeben, in „files“ das Bild als Datei zum Übertragen festgelegt,  mit „requests“ der Webservice aufgerufen und das Bild hochgeladen. In der Variablen „r“ wird u.a. der Statuscode und die Antwort des Webservice gespeichert.

#!/usr/bin/python
# picam.py
# vereinfachte Version fuer naturwatch.lite
# Claus Brell 17.11.2018
import picamera
from time import sleep
import requests
# Voreinstellungen Bildgroesse:
WIDTH=320
HEIGHT=240
# Kamera initialisieren:
camera = picamera.PiCamera()
camera.resolution = (WIDTH,HEIGHT)
# Dateiname fuer Bild:
localpicname = 'picam.jpg'
# 2 Sek. Pause, damit Kamera alles einstellen kann:
sleep (2)
# Ein Bild aufnehmen:
camera.capture(localpicname)
camera.close()
# Ein Bild auf den Webspace hochladen:
# Webservice Aufruf URL festlegen:
url = 'http://meinServerUndVerzeichnis//picamWS.php'
files = {'file': open(localpicname, 'rb')}
r = requests.post(url, files=files)
# Zur Kontrolle Rueckgabe ausgeben
print(r)
print(r.text)

Listing 1: picam.py, Skript für das Aufnehmen eines Bildes und Hochladen auf den Webserver.

picamWS.php – Bild entgegennehmen und speichern. Der Webservice picamWS.php (netto 3 Zeilen Quelltext) kann mit einem einfachen Texteditor (Notepadd++ unter Windows oder Sublime Text unter MacOS oder Linux) erstellt und dann mit FTP auf den eigenen Webserver hochgeladen werden. Listing 2 zeigt das Skript, es sind keine Prüfungen oder Fehlerbehandlungen eingebaut, um das Script möglichst einfach und kurz zu halten. Die spannende Zeile ist:

if (move_uploaded_file($_FILES['file']['tmp_name'], $target_file)) {
    echo basename( $_FILES['file']['name']). " hochgeladen.";}

Es wird überprüft, ob das Kopieren des hochgeladenen Bildes in dasDateisystem des Webservers funktioniert hat, Wenn das der Fall ist, gibt es eine Bestätigung. Das Bild wird im selben Verzeichnis, in dem sich der Webservice befindet abgelegt.

<?php
// picamWS.php
// Webservice für picam.py
// nimmt Bild entgegen und speichert es auf dem Server
// naturwatch.lite
// Claus Brell 17.11.2018
// Ziel-Name, unter dem das Bild abgelegt wird:
$target_file=$mandant.'picam.jpg'; 
// Bild hochladen und uner Ziel-Name ablegen,
// wenn erfolgreicht, Meldung zurückgeben: 
if (move_uploaded_file($_FILES['file']['tmp_name'], $target_file)) {
echo basename( $_FILES['file']['name']). " hochgeladen.";
}
else echo "Fehler";
?>

Listing 2: picamWS.php – Webservice, der ein Bild entgegennimmt

picam.html – Anzeigeseite. Eine einfache HTML-Seite, die i.w. aus einem img-Tag besteht, das Bild aus dem gleichem Verzeichnis lädt und anzeigt. Die Meta-Statements sorgen dafür, dass die Anzeige auch auf einem Smartphone funktioniert.

<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="language" content="de-DE">
<meta http-equiv="Content-type" content="text/html;charset=utf-8">
<meta name="mobile-web-app-capable" content="yes">
</head>
<body>
picam Bildanzeige
<br><br>
<img src="picam.jpg">
</body>
</html>

Listing 3: picam.html – Anzeigeseite für das hochgeladene Bild

Was noch fehlt … Für eine gelungene Naturbeobachtung wäre ein Automatismus wünschenswert. Dazu kann das Python-Script einfach über CRON, z.B. jede Minute, aufgerufen werden. Dann fehlt jedoch ein ebenfalls automatisches Nachladen des Bildes in der HTML-Seite. Das ließe sich über Javascript realisieren. Möchte man kein Bild verpassen, also sollten die Bilder gespeichert werden und auch die Historie sollte einsehbar sein. Allerdings werden Webservice und Anzeigeseite dadurch sehr viel komplizierter. Wie das gehen kann, ist in einem Artikel in der Raspberry Pi Geek dargestellt (Brell 2017).

Quellen:

Brell, Claus (2017) Meisencam – Nistkästen mit der Pi-Cam ins Internet bringen. in: Raspberry Pi Geek 10 / 2017

Zeitungsartikel Rheinische Post Krefeld vom 14.03.2017:
„Auf den Spuren von Heinz Sielmann …“

Pressemitteilung der Hochschule Niederrhein vom 10.03.2017:
https://www.hs-niederrhein.de/news/news-detailseite/wirtschaftsinformatik-studierende-entwickeln-interaktiven-meisenkasten-16506/.

Tweets zum Forschungsvorhaben #biene40 – Naturschutz, Digitalisierung und Wirtschaft verbinden: https://twitter.com/hashtag/biene40

Lichtkartierung gegen das Insektensterben

Ausgangslage. Nachts fliegende Insekten, die sich am schwachen Licht der Gestirne orientieren, werden von künstlichen Lichtquellen angezogen und in ihrer Orientierung gestört. Ebenso wirken künstliche Lichtfallen oft als Fallen [1]. Pro Straßenlampe in einer Nacht können etwa 150 Insekten sterben [2]. Ob Insekten die Quellen überhaupt wahrnehmen, hängt allerdings auch von der spektralen Zusammensetzung des Lichts ab [3,4].

Lichtkartierung als vorbereitende Maßnahme. Um gezielt wirksame Maßnahmen (andere Lichtquellen, temporäre Abschaltung u.v.m.) gegen die Lichtverschmutzung einleiten zu können, ware es sinnvoll, die regionalen „Hotspots“ der Lichtemission unter Berücksichtigung der spektralen Verteilung zu kennen. Dies kann im Sinne einer Vorlaufforschung erfolgen, in der die regionale Lichtemission durch die Beteiligung einer großen Menge von Menschen kartiert und über das Internet bekannt gemacht wird.

Methode. Das Institut GEMIT der Hochschule Niederrhein hat im Rahmen eines EFRE-geförderten Logistik-Projektes hierzu das sogenannte Gladbacher Crowd Solving Konzept [5,6] entwickelt, das leicht auf die Themenstellung Lichtemission adaptiert werden kann. Um viele Menschen an der Kartierung zu beteiligen, wäre die Entwicklung einer eine Lichtmess-App für Android und iOS, die die gemessenen Lichtdaten mit einer Zeit- und Georeferenzierung an eine internetgestützte Datendrehscheibe sendet, sinnvoll.

Konzept für eine Lichtmess-App. Es soll eine App entwickelt und kostenfrei bereitgestellt werden, die es Menschen ermöglicht, an jedem Ort die Umgebungslichtstärke zu erfassen. Dabei ist aus Sicht des Nutzers / der Nutzerin der App folgender Ablauf vorgesehen:

  1. Der Nutzer / die Nutzerin startet die App und wird aufgefordert, sich mit seinem Smartphone nach Norden auszurichten. Die App zeigt die richtige Ausrichtung an.
  2. Der Nutzer / die Nutzerin wird aufgefordert, das Smartphone senkrecht vor sich zu halten.
  3. Der Nutzer wird aufgefordert, sein einmal langsam rechtsherum einmal ganz um seine eigene Körperachse zu drehen. Dabei nimmt die App kontinuierlich Bilder mit der Frontkamera auf und wertet einen schmalen Streifen hinsichtlich spektraler Verteilung und Lichtstärke aus. Zugleich wird als Referenz ein Gesamtbeleuchtungswert ermittelt.
  4. Nach Abschluss der Drehung wird ein Datensatz mit 8 Werten für die richtungs- und spektralbezogene Belichtungsstärke, sowie ein Beleuchtungsreferenzgesamtwert inkl. Geokoordinaten an einen Webservice übertragen.
  5. Der Nutzer / die Nutzerin erhält sofort eine Rückmeldung über die erfolgte Messung

Es werden Gamification Elemente an die Nutzung der App gekoppelt, um schnell eine hohe Nutzungsfrequenz zu erhalten. Vorgesehene Game-Design-Elemente sind „Epic Meaning“, „sofortiges Feedback“, „Comunity-Building“ und ein niederschwelliger Punkte/Erfolge-Mechanismus. Über die Informationsdrehscheibe kann via Browser jederzeit der aktuelle Kartierungsstand in Form einer „Licht-Heatmap“ eingesehen werden.

Ein detaillierteres Konzept wäre im Rahmen eines Forschungsprojektes zur entwerfen.

Outcome. Es ist (a) zu erwarten, dass allein durch die öffentliche Kartierung die Stakeholder in Folge bemüht sein werden, die aufgedeckten Lichtemissionen selbsttätig zu reduzieren. Weiterhin können (b) nach einer Kartierung Maßnahmen mit öffentlicher Unterstützung dort angestoßen werden, wo ein großer Bedarf sprich großer nächtlicher Lichtanfall zu beobachten ist.

Die Lichtkartierung gegen das Insektensterben ist ein Baustein im Vorhaben #biene40 [7]

Quellen:

[1] Bericht des Bundes über Kenntnisstand, aktuelle Forschungen und Untersuchungen zum Insektensterben sowie dessen Ursachen für die 90. Umweltministerkonferenz vom 6.-8. Juni 2018 in Bremen, online unter https://www.bmu.de/fileadmin/Daten_BMU/Download_PDF/Artenschutz/bericht_insektensterben_bf.pdf

[2] Kobler, R.L. (2002): Die Lichtverschmutzung in der Schweiz. Mögliche Auswirkungen und praktische Lösungsansätze. Diplomarbeit FHHB, online unter http://www.ens.ch/ens/sternwarte/lichtverschmutzung/presseberichte/rlkobler_dipl.pdf

[3] Cleve, K. (1967): Das spektrale Wahrnehmungsvermögen nachts fliegender Schmetterlinge. Nachrichtenblatt der Bayerischen Entomologen, 16, S. 33-35.

[4] Menzel, R. (1979): Spectral sensitivity and colour vision in invertebrates. In: Autrum, H. (Hrsg.): Handbook of Sensory Physiology. Vol. VII/6A. Berlin, Heidelberg, New York, S. 503-580.

[5] Gladbacher Crowd Solving Konzept auf der logistiCS-Projektseite, Online Ressource: http://logistics.traffgoroad.com/index.php/2018/06/13/13-06-2018-das-gladbacher-crowd-solving-konzept-erklaert/

[6] Gladbacher Crowd Solving Konzept und Gamification im Wissensmanagement-Blog: https://cbrell.de/blog/gladbacher-crowd-solving-konzept/

[7] Ideen zum Vorhaben #biene40 auf Twitter: https://twitter.com/hashtag/biene40

[8] Anlockstudie Tirol, Online Ressource: http://www.hellenot.org/fileadmin/user_upload/PDF/WeiterInfos/10_AnlockwirkungInsektenFeldstudie_TLMFundLUA.pdf

Wildbienen 2018

Nistmöglichkeiten für Wildbienen

Besetzungswahrscheinlichkeit unterschiedlicher Materialien

Im Frühjahr / Sommer 2018 werden hier verschiedene Materialien unter möglichst gleichen Bedingungen getestet: wie gerne werden diese Materialien von Wildbienen angenommen?

Belegung des Nistblocks (Seekiefernsperrholz) für Wildbienen

Für die Tests wurde in Zusammenarbeit mit der Schreinerei der Justizvollzugsanstalt Willich ein Rahmen entwickelt, der zur effizienten Wartung verschiedene Materialien als Nistplatzmaterial aufnehmen kann. Planung für 2018 ist, die Materialien Seekiefernsperrholz und  Gasbeton  gegeneinander zu testen. Für die Niströhrchen aus dem 3D-Drucker, die in 2019 untersucht werden sollen, wurde eine spezielle Konstruktion entwickelt, die ein Verschimmeln der Brut verhindern soll.

Besatz (Stand 30.05.2018)

Bohrung Seekiefer Gasbeton
3 mm 2 von 9 0
4 mm 8 von 9 0
6 mm 0 0
8 mm 0 0
10 mm 0 0

Besatz (Stand 30.09.2018

Bohrung Seekiefer Gasbeton
3 mm 9 von 9 0
4 mm 9 von 9 0
6 mm 0 0
8 mm 0 0
10 mm 0 0

Fazit 2018: Alle Bohrungen 3-4 mm in Holz wurden angenommen. Gasbeton wird als Nistgelegenheit gar nicht angenommen.

Vorhaben #biene40:

Insbesondere in diesem Frühjahr war der Rückgang der Anzahl der (Wild-) Bienen und Hummeln schon deutlich zu spüren. Die Förderung der nützlichen Insekten insbesondere im urbanen Raum ist dringend erforderlich. Insektenschutz wird i.W. aktiv von Hobbyisten betrieben. Diesen sollen Hilfsmittel und Motivationsinstrumente zur Verfügung gestellt werden:

Durch empirische Untersuchung von Unterstützungsmaßnahmen könnte ein Katalog entwickelt werden, welche Maßnahmen nachweislich zu einer höheren Dichte von Wildbienen und Hummeln unter ansonsten gleichen Bedingungen führen.

Durch die Verknüpfung von Digitalisierung (sprich Technik) und Naturschutz wird es vielleicht möglich sein, ganz andere Menschen für aktiven Wildbienenschutz und Hummelschutz zu akquirieren, die sich bislang nicht für Hautflügler begeistern können: Die Computer-Nerds.

Einige Aktivitäten zur Vorbereitung des Vorhabens sind unter http://twitter.com/hashtag/biene40 zu finden.

Youtube Videos:

Bienen nehmen Futterteig im Brutraum Ende September sofort an 180929

Bienen tragen Ende September noch Pollen ein 180928

Wespennest brennt nicht 180826

Bienen sind harmlos 180809

#biene40 Impressionen Wildblumenwiese und Bienen 180623

Brutsaison 2018

Stand: 28.05.2018

Live beim Brüten zuschauen

Vier Prototypen der internetfähigen Nistkästen an verschiedenen Orten mussten sich bewähren: Zwei in einem Garten in Willich Schiefbahn (Kohlmeisen, jeweils 9 Eier bzw.  Küken). Einer auf dem Campus der Hochschule Niederrhein (Blaumeisen, 11 Eier). Einer an der Astrid Lindgren Schule in Willich-Schiefbahn (leider nicht angenommen). In die Meisenkästen kann man hier schauen:

https://cbrell.de/naturwatchcam

Chronologischer, bebilderter Ablauf der Brutsaison 2018

24.05.2018 Auch die Blaumeisen fliegen aus

Die Brutsaison 2018 geht für Blau- und Kohlmeisen in den Internetkästen erfolgreich zuende.

Nun geht es Schlag auf Schlag, die Balumeisenküken verlassen den Nistkasten. 18:37

Der Campus-Nistkasten war der letzte. Schade, noch 48 Stunden länger im Kasten gefüttert, hätten die 400 Gäste der Absolventenfeier des Fachbereichs Wirtschaftswissenschaften das Schauspiel real mitverfolgen können.

Blaumeisenküken schaut aus dem Kasten. Campus Mönchengladbach, 24. Mail 18:34 kurz vor dem Ausflug

Nun wird nur noch am Einflugloch gefüttert. Es kann nicht mehr lange dauern.

Langsam rückt der Ausflugszeitpunkt näher und die Küken brauchen ordentlich Energie und Eiweiß zu wachsen. Da sind schon öfter beide Alttiere mit schönen grünen Räupchen gleichzeitig bei den Küken.

Die Küken wachsen schnell und brauchen viel Futter. Immer öfter sieht man beide Elterntiere gleichzeitig im Kasten

19.05.2018 zweite Kohlmeisenfamilie verlässt das Nest, Blaumeisen füttern noch

Mittlerweile hat eine zweite Meisenfamilie Ihr Nest verlassen. Auch hier hat es ein Küken nicht geschafft.

Nunmehr ist die Blaumeisenfamilie auf dem Campus der Hochschule Niederrhein noch übrig.

Blaumeisenfamilie auf dem Camups der Hochschule Niederrhein in Mönchengladbach

 

18.05.2018 Zwei Meisenküken waren zu schwach

Nachdem die Geschwister ausgeflogen waren, haben sich die Elterntiere nur noch in sehr großem zeitlichen Abstand (7 Stunden und mehr) um die verbleibenden beiden schwächeren Küken gekümmert. Insbesondere in der Nacht waren die Küken allein. Am Morgen des 18.05. verstarben die Küken. Bei der Nestinspektion waren keine Verletzungen oder Anzeichen einer Infektion zu erkennen. Vermutung ist, das durch ungleiches Füttern und Unterkühlung die Tiere zu schwach waren. Hierzu (Analyse und Abhilfemaßnahmen) wird zur nächsten Brutsaison eine eigene Seite aufgesetzt.

 

17.05.2018 Erste Kohlmeisenfamilie bereitet sich auf den Ausflug vor.

13.05.2018 Küken werden größer und kräftiger

… und fordern lautstark mit aufgerissenem Schnabel Futter ein.

Hungrige Küken bei der Kohlmeisen-Familie. Im Zwanzig-Sekundentakt werden grüne Raupen verfüttert.

 

01.05.2018 In zwei Nistkästen hört man es piepen

Mittlerweile machen die Küken schon deutlich hörbar auf sich aufmerksam. Beide Elternteile sind fleißig unterwegs, um kleine grüne Raupen für die Küken zu fangen. Die Futterflaschen mit Erdnüssen und Sonnenblumenkernen werden kaum noch besucht.

Brutpflege. Die Küken können noch nicht viel selber und müssen gewendet werden.

Beide Elterntiere füttern. Noch sind nicht alle Küken geschlüpft (Bild vom 28.12.2018)

Gierige Schnäbel

 

28.04.2018 Astrid Lindgren Schule bekräftigt den Wunsch zu einer weitergehenden Zusammenarbeit mit der Hochschule Niederrhein.

Der Nistkasten an der Astrid Lindgren Schule wurde so umgebaut, dass er auch für Hausspatzen attraktiv ist. Es wurden Überlegungen für eine Zusammenarbeit mit dem Fokus auf Wildbienen und Hummeln angestellt. Schulleitierin Pelz und Lehrerin Röhrscheid freuen sich über die bisherigen positiven Reaktionen in der Öffentlichkeit.

Schulleiterin Pelz, Prof. Brell, Lehrerin Röhrscheid. Foto: Wolfgang Kaiser (Rheinische Post)

Zum Bericht in der Rheinischen Post geht es hier [externer Link].

14.04.2018 Der Prototyp des Nistkastens mit Solaranlage geht zum Campus in Mönchengladbach

Nach ausgiebigen Test im Schiefbahner Garten soll sich die Solaranlage nun unter schwierigeren Bedingungen bewähren. Auf dem Campus der Hochschule Niederrhein in Mönchengladbach, zwischen den Gebäuden des Fachbereichs Wirtschaftswissenschaften, steht ein alter Baumbestand. Zum einen ideal, da Vögel hier vielfältige Nahrungsangebote haben. Andererseits eine schwierige Testumgebung, da es keine Möglichkeit gibt, das Solarpanel ohne Beschattung zu montieren.

Nistkasten, Batterie und Elektronik im KG-Rohr und ein 20 Watt Solarpanel am Baum montiert.

Der Nistkasten in etwa 3 m Höhe mitten im schönen Mönchengladbacher Campus.

Die Technik: Nistkasten (Raspberry Pi, Kamera und IR-Leuchtdioden nicht sichtbar unter dem Nistkastendach), KG-Rohr zur wetterfesten Unterbringung der Energieversorgung, 12 Volt Batterie, Laderegler, Batteriewächter und 5 Volt DC Konverter, Solarpanel.

Die Montage konnte wetterbedingt nicht früher erfolgen, was allerdings notwendig gewesen wäre. Kaum hing der Nistkasten, begann eine Maisenpaar Nistmaterial einzutragen. Den Einbau und die Inbetriebnahme der Elektronik wurde dann mit lautem Schimpfen quittiert.

14.04.2018 Erste Eier in Schiefbahn

In einem Kasten in Schiefbahn liegen bereits acht (von schlussendlich neun) Eier. Die Heizung unter der schwarzen Abdeckung läuft Tag und Nacht durch mit einer Leistung von 2,5 Watt. In 2017 und 2016 sind einige Bruten aufgrund sehr kalter Tage Ende März eingegangen, das soll in 2018 vermieden werden.

Acht Eier und die komfortable Heizung.

17.11.2017 Kraft sammeln für die kommende Brutsaison

Der Aufbau der Eier erfordert Eiweiß und Energie, Überwintern auch. Eiweißhaltiges  wie Erdnüsse oder Sonnenblumenkerne als Beifutter werden gerne angenommen.

Meisen sind geschickt darin, sich unten an Futtermöglichkeiten zu hängen.

Der Buchfink kann nicht kopfüber an der Futterflasche hängen und sucht darunter den Boden ab. (Bild aus April 2018)

 

 

 

IP-Adresse (lokal) eines Raspberry Pi automatisch ermitteln

Problem:

Für z.B. die internetgestützten Meisenkästen wird der Raspberry Pi headless betrieben, das heißt: Man kommt lediglich über ssh auf den Raspberry. Dazu ist die Kenntnis der IP-Adresse erforderlich.

Lösungsansatz:

Mit einem einfachen Script ermittelt der Raspberry beim Systemstart selber seine IP-Adresse, übergibt sie an einen Webservice im Internet, der Webservice speichert die IP-Adresse ab.

Notwendige Voraussetzungen:

  1. Sie haben einen Raspberry Pi mit Internetzugang.
  2. Sie haben Zugriff auf einen Webserver, auf dem Sie PHP-Scripte speichern können.

Benötigte Scripte:

Auf dem Raspberry:

Auf dem Rasberry genügt ein einfaches Shell-Script:

#!/bin/bash
# holt IP Adresse
# ruft Webservice  auf,
# der IP-Adresse speichert
# in cron bei Neustart aufrufen
ipadr=$(hostname -I)
echo IP Adresse $ipadr
# Web Aufruf
curl "http:///service/getipWS.php?ip=$ipadr&name=Schiefbahn+Garten"
echo

Das Shell-Script rufen Sie durch einen Eintrag in CRON automatisch beim Neustart des Raspberrys auf. Die Besonderheit: Geben Sie dem Rapberry Zeit, die Verbindung zum lokalen Netzwerk aufzubauen. Das ist in dem Beispiel durch „sleep 30“ realisiert. die interessierende Zeile ist:


@reboot sleep 30; /home/pi/getip.sh >/mnt/ramdisk/getip.log

So könnte zum Beispiel Ihre Crontab aussehen:


# Edit this file to introduce tasks to be run by cron.
#
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
#
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').#
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
#
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
#
# For more information see the manual pages of crontab(5) and cron(8)
#
# m h  dom mon dow   command
*/30 * * * * /home/pi/wifirefresh.sh >/dev/null 2>&1
#*/10 * * * * /home/pi/naturwatchcam.py >/dev/null 2>&1
0 * * * * /home/pi/cam.py >/dev/null 2>&1
@reboot sleep 30; /home/pi/getip.sh >/mnt/ramdisk/getip.log

Auf dem Webserver:

Auf dem Webserver schreiben Sie einen Webservice (hier getipWS.php), der durch den curl-Aufruf des Raspberrys genutzt wird.


// getipWS.php
// Claus Brell, 20.05.2018
// nimmt IP entgegen, z.B. eines Raspberry Pi
// speichert IP-Adresse in getip.log
// Aufruf: getipWS?ip=192.168.1.104
// alternativ: getipWS?ip=192.168.1.104&name=mein+kleiner+Raspberry
// Rückgabe:
// ok wenn vermutlich richtiger Parameter
// fehler wenn Parameter zu lang
// ? wenn kein Parameter übergeben 
if(isset($_GET['ip'])){
    if(strlen($_GET['ip'])<16){
	  // übergebene IP in lokale Variable speichern:
	  $ip=$_GET['ip'];
	  // übergebenen Namen in lokale Variable speichern:
	  if (isset($_GET['name'])) $name=$_GET['name'];
	  else $name='unbekannt';
	  // Internetadresse, woher der Aufruf kommt: 
	  $ipremote=getenv("REMOTE_ADDR");
	  $domain=gethostbyaddr($ipremote);
	  // CSV-String zusammenstellen:
	  $ausgabe=date("ymd-His").';'.$ip.';'.$name.';'.$ipremote.';'.$domain."\r\n";
	  // CSV-String an Datei anhängen:
	  file_put_contents("getip.log",$ausgabe,FILE_APPEND);
	  echo 'ok';
    } else echo 'fehler';
} else echo '?';

Auf Ihrem Webserver finden Sie dann die Textdatei getip.log im CSV-Format, in der die lokale IP-Adresse steht. So könnte ein Beispieleintrag in getip.log aussehen:


180520-082623;192.168.0.103 ;Schiefbahn Garten;80.140.39.66;p508C2742.dip0.t-ipconnect.de

Bauanleitung für eine adaptive IR/Tageslicht-Nistkastenbeleuchtung

Mit einer Infrarotbeleuchtung und einer entsprechenden Infrarotkamera ist eine Beobachtung im Nistkasten – auch in der Nacht – möglich. Nachteil: Es gibt keine Farben. Eine Beleuchtung mit weißen LEDs während der Nachtstunden irritiert Singvögel, es ist anzunehmen, dass zudem der nächtliche Blauanteil im Licht die Küken in ihrer Entwicklung beeinträchtigt. Ein Lösung, um trotzdem zumindest am Tage Farbaufnahmen zu bekommen, ist, in der Nacht mit Infrarot und tagsüber mit Weißlicht zu beleuchten.

Weiterlesen

Hummel Nisthilfe, beheizt und unterirdisch – Prototyp in Entwicklung

Aus der Kooperation mit der Bischöflichen Marienschule Mönchengladbach – Biologielehrer Cornel van Bebber – erwuchs die Idee für eine Nisthilfe für Erdhummeln, die die Beobachtung und – im Idealfall – die Zählung der Ein- und -Ausflüge ermöglicht. Im Frühjahr 2018 werden zwei Prototypen des neue Nistkastens auf Privatgrundstücken in Neuss und Willch-Schiefbahn getestet. Das Beitragsbild zeigt die erste handschriftliche Zeichnung des Hummelkastens.

Die Besonderheit: Die Nisthilfe erhält eine Raspberry-Pi-basierte Internetkamera, eine Temperaturkontrolle und, das ist neu, eine Heizung, um den Stress der Hummeln insbesondere an kalten Frühjahrstagen zu mindern. Die Entwicklung des Prototypen – Work in Progress – wird in diesem Beitrag beschrieben. Dabei wird sich im Frühjahr noch einiges ändern, zum Zeitpunkt der Erstberöffentlichung ist der Nistkasten noch nicht fertig.

Warum Gasbeton? Grundaufbau ist ein Rahmen aus 5 cm starken Weiterlesen

Raspberry Pi-Workshop für Lehrer/innen an der Hochschule Niederrhein

 

Am 28. September 2017 fand an der Hochschule Niederrhein in Mönchengladbach erstmalig ein Lehrerworkshop statt, um die Teilnehmer über verschiedene Einsatzmöglichkeiten des Mini-Computers Raspberry Pi zu informieren. Insgesamt 10 Lehrkräfte nahmen an der von Prof. Dr. Claus Brell durchgeführten, dreistündigen Veranstaltung teil. Ziel des Workshops war es, die grundlegende Technik und Funktionsweise des Raspberry Pi-Computers zu erläutern sowie die Möglichkeiten der Einbindung in den Schulalltag aufzuzeigen. Insbesondere der fächerverbindende Unterricht stand im Fokus.

Wozu ist der Raspi gut? Der gerade Mal kreditkartengroße Mini-Computer ist dabei für eine Vielzahl von Anwendungen geeignet. So lässt sich das Gerät als Gamification-Element nutzen oder Weiterlesen