đŸ‡©đŸ‡Ș Fledermaus Lichtschranke

Eine Lichtschrankeninstallation zur Überwachung von Fledermausbewegungen an einem Quartier

Software: https://github.com/lukas2511/FlederSchranke (Installationsanleitung)

Idee

Blick in die Röhre(n)

Anfang dieses Jahres hat mich Martin vom Bonner Arbeitskreis fĂŒr Fledermausschutz BAFF angeschrieben und mich um Hilfe bei einigen Projekten gebeten um die Bewegungen von FledermĂ€usen nachvollziehen zu können.

Konkreter ging es in der ersten Mail um eine Lichtschranke, welche an einem Dachbodenfenster montiert werden soll, und dort Aufzeichnen sollte zu welchen Uhrzeiten und zu welchen ungefÀhren Massen die FledermÀuse ihr Quartier verlassen und betreten.

Martin hatte schon die ersten Ideen und kam beim ersten Treffen mit einem Arduino Mega, einem Ethernet Shield, ein paar Infrarot LEDs und einigen sĂŒndhaft teuren Infrarot-Sensoren an. Leider war diese Zusammenstellung an Hardware fĂŒr den Anwendungsfall nicht wirklich vollstĂ€ndig, und durch die Sensoren auch unnötig teuer.

Lichtschranke

Typ 1 - Dreieck

Erster Prototyp

Nach einigem hin und her hatten wir uns geeinigt wie wir die Lichtschranken umsetzen wollten: Es sollten jeweils zwölf IR-Leds und IR-Transistoren gegenĂŒber gesetzt werden, und das ganze dann noch eine Ebene in die Tiefe gezogen werden, so dass es insgesamt 24 Lichtschranken ergibt.

Die LEDs und Transistoren sind in kleine Aluminiumröhrchen montiert um Störungen durch Licht von aussen zu vermeiden, bieten aber auch eine große Hilfe beim ausrichten der einzelnen Teile, welche sich als kniffliger erwies als zunĂ€chst gedacht. Falls möglich wollen wir bei einer weiteren Version des Lichtschrankenaufbaus auf einem Metallrahmen setzen, wir befĂŒrchten dass sich das Holz womöglich verziehen könnte, was die Lichtschranken unbrauchbar macht.

Die Transistoren haben in unserem Aufbau einen 10kOhm Pull-Up, und die LEDs einen 220Ohm Vorwiderstand. Solang der Transistor das Licht der LED sieht wird die Signalleitung auf 0 gezogen, bei Unterbrechung des Strahls wird die Signalleitung durch den Pull-Up auf 5V gezogen, und kann von unserer Elektronik eingelesen werden.

Typ 2 - Rechteck

Zweite Lichtschranke

Wir haben zum Testen unserer Elektronik eine Lichtschranke in einem anderen Format gebaut, um diese hinter einer gekauften Rahmen aus einem anderen Projekt zu testen und nachher die Daten zu vergleichen.
Die Technik ist hier exakt die gleiche.

Elektronik

Versuch 1 - Raspberry Pi

Elektroschrott der irgendwie Lichtschranken gesteuert hat

Unser Aufbau fĂŒr den ersten Prototypen besteht aus dem bereits erwĂ€hnten Arduino Mega, einem Raspberry Pi, einem 3G-Stick fĂŒr das Hochladen von Logdateien und die Kontrolle von aussen, sowie einem modifizerten USB-Hub bei dem sich die einzelnen Ports aus- und anschalten lassen.
ZusĂ€tzlich hat der 3G-Stick noch sein eigenes Relais, so wie einen fetten Kondensator bekommen, da er doch beim einschalten relativ viel Strom zieht, und die Elektronik teilweise beim einschalten des Sticks abgestĂŒrzt ist.

Ausserdem befindet sich in der Box ein Funk-Wetterdatenlogger, da man auch gucken wollte wie sich das Verhalten der FledermÀuse zu bestimmten Wettersituationen verÀndert.

Auf dem Arduino lĂ€uft ein simples Sketch, welches die Signalleitungen der Transistoren einzeln einliest, und bei VerĂ€nderung ein Signal ĂŒber die USB-Verbindung an das Raspberry Pi gibt.
In dem Signal steht welche Lichtschranke sich wie verĂ€ndert hat, und es ist ein Timestamp (ĂŒber die micros()-Funktion realisiert) angefĂŒgt.
Damit die Zahl der Mikrosekunden nicht ĂŒberlĂ€uft wird das Arduino alle 30 Minuten automatisch rebootet, und gibt an das Raspberry Pi zurĂŒck dass es wieder bei 0 anfĂ€ngt zu zĂ€hlen.

Auf dem Raspberry Pi laufen zwei Python Scripts, UMTSkeeper, ein OpenVPN-Client, und ein kleiner Watchdog.

Der Watchdog sorgt dafĂŒr dass UMTSkeeper gestartet wird und wartet darauf dass eine Verbindung aufgebaut ist. Sobald eine Verbindung zum Internet verfĂŒgbar ist, wird mit ntpdate die Uhrzeit aus dem Netz gezogen, und kurz darauf sowohl NTPd als auch der OpenVPN-Client gestartet.

Das VPN bietet uns eine Möglichkeit von aussen auf das Raspberry Pi zuzugreifen, ohne ginge es nicht, da es im Mobilfunk natĂŒrlich hinter einem NAT hĂ€ngt.

Die Python Scripts loggen relativ simpel die eingehenden Daten mit absoluten Timestamp auf eine seperate Partition der SD-Karte.

Ein Server greift in regelmĂ€ĂŸigen AbstĂ€nden (wenn möglich) auf das Raspberry Pi zu, und zieht sich mittels rsync alle Logs, und löscht die alten Logs von der SD-Karte um Platz zu sparen.

Leider stĂŒrzt der Kram regelmĂ€ĂŸig ab und reisst SD-Karten mit in den Tod...

Versuch 2 - BeagleBone

BeagleBone und Arduino in einer Box, gefĂŒllt mit Heißkleber

Wir hatten wÀhrend unserer Tests immer wieder Probleme mit Raspberry Pis im Dauerbetrieb, ausserdem ist die Kombination aus Arduino Mega, Raspberry Pi und USB-Hub doch relativ teuer.

In meinem Regal habe ich dann das BeagleBone Black wiederentdeckt, welches ich mir "damals" kurz nachdem es verfĂŒgbar war gekauft habe. Das BeagleBone Black ist um einiges Robuster als das Raspberry Pi, das alte BeagleBone White lief bereits mehrere Monate als Temperaturlogger an meiner Heizung, ohne dass mir irgendwelche Fehler aufgefallen wĂ€ren. Es hat genug GPIO-Pins um die Lichtschranken direkt auszuwerten, und es lĂ€sst sich auch viel leichter um z.B. eine Echtzeituhr erweitern.

ZusÀtzlich besitzt das BeagleBone Black eine schnellere CPU (jedoch langsamere GPU, welche wir aber sowieso nicht benötigen), wodurch uns evtl. ermöglicht wird sogar die Auswertung vor Ort vorzunehmen, und/oder Log-Dateien wÀhrend des Betriebs stÀrker zu komprimieren (beim Raspberry-Pi gab es bei hoher CPU-Auslastung teilweise StabilitÀts-Probleme).

~~DemnÀchst wollen wir eine Platine zusammenlöten die auf das BeagleBone Black gesteckt werden soll, dann werde ich diese Seite erweitern.~~
Leider haben wir wegen Zeitdrucks keine Gelegenheit mehr gehabt das Beaglebone selbst als I/O Device zu nutzen, sondern haben es letzenendes einfach als Ersatz fĂŒr das Raspberry Pi verwendet, womit auch der USB-Hub nicht mehr benötigt wurde, und die Box mit der Elektronik jetzt einigermaßen ĂŒbersichtlich geworden ist.

Bilder

Hier noch ein paar weitere Bilder:

Raspberry Pi Elektronik ausserhalb der Box

Mit Heißkleber befestigte KĂŒhlkörper auf Raspberry Pi, 5 Sterne, Gerne wieder

AnschlĂŒsse an der Seite der Box (Video – Zur StatusprĂŒfung, Strom und SD-Karten Slot)

Fertige erste Lichtschranke