automatische Hühnerklappe

Mal wieder ein Freundschaftsdienst. Für den Hühnerstall des Hofes von Freunden soll eine automatische Hühnerstall-Tür gebaut werden. Es gibt fertige kommerzielle Lösungen die mehr als 120 € kosten. Das geht um einiges billiger und mit mehr Funktionalitäten.

Die Hühnerklappe soll folgende Eigenschaften besitzen:

- automatisches Öffnen zum Sonnenaufgang und Schließen zum Sonnenuntergang
- Netzunabhängig (Akkubetrieb)
- Solarpanel zum Laden des Akkus
- möglichst langlebig und wartungsarm
- Innenbeleuchtung des Stalls für düstere Tage und zum Entnehmen der Eier (optional)
- alternativ eine Wärmelampe für die Kücken während kalter Nächte (optional)

Prototyp:

Steuerung:

Das Herzstück des ganzen Projektes bildet ein ATmega8 Mikrocontroller, welcher die Ladeüberwachung des Akkus sowie das Timing und die Motorsteuerung übernimmt. Dafür ist der Wald-und-Wiesen-Mega8 bestens geeignet.
Bezüglich Hühnerklappe und der Zeitpunkte zu welcher die Klappe geöffnet und geschlossen werden soll gab es verschiedene Ansätze. Erste Überlegungen gingen in Richtung Helligkeitssensor. Doch was wenn das Hoflicht des Nachts angeschalten wird oder ein kräftiges Gewitter über dem Stall blitzt? Solche Fälle ließen sich durch Konstruktions- und Programmkniffe umgehen. Eine zweite Möglichkeit ist eine einfache Zeitsteuerung. Die Zeiten des Sonnenaufgangs bzw. des Sonnenuntergangs können berechnet werden. Problematisch hierbei ist der enorme Rechenaufwand für die 8-Bit Maschine. Und da es sich nur um einen errechneten Wert handelt, ist die nähe zur Praxis doch etwas weiter entfernt, wenn z.B. das Wetter nicht mit spielt.

Da das Projekt sehr schnell Aufgebaut werden musste, sind beide Optionen vorgesehen. So wurde die Schaltung mit einem DCF77 Empfänger ausgestattet, so dass der Mikrocontroller stets die genaue Uhrzeit, Datum und sogar Wochentage übermittelt bekommt. Die Routinen für den Mikrocontroller sind auf Mikrocontroller.net zu finden und stammen von Michael S. (Quelle). Falls der Empfang des DCF77 Signals gestört sein sollte, übernimmt der Lichtwiderstand die Funktion des detektierens von Sonnenaufgang und -untergang. Die Laderegelung des Akkus entspricht der Funktionalität aus dem Projekt "Solar-Inselanlage". Dementsprechend wird der Akku bei Tiefentladung abgeschalten, was allerdings auch die Schaltung außer Kraft setzten würde. Da hilft nur der Wechsel des Akkus bzw ein sonniger Tag zum erneuten Laden des Akkus. Wenn der Akku voll geladen ist, wird das Solapanel kurzgeschlossen.
Weiterhin ist ein Gleichstrom-Getriebemotor für das Öffnen und Schließen des Tores zum Hühnerstall zuständig. Der Motor dreht bei 6V eine Seilrolle (120mm Durchmesse) mit ca. 3 rpm. Damit öffnet und schließt das Tor angenehm langsam und die Gefahr ein Tier dabei einzuklemmen ist somit geringer. Die beiden Endlagen des Tores werden mit Reed-Kontakten abgefragt. Für die Stallbeleuchtung stehen zwei Schaltausgänge zur Verfügung, welche jeweils bis zu 6W schalten können.
Die kommerziell vertriebenen Hühnerklappen haben allesamt einen sehr schwachen Antrieb und werden von meist nur 4 kleinen Batterien betrieben. Geworben wird mit "1-3 Jahren Betriebsbereitschaft", was angesichts der kleinen Batterien eine glatte Werbelüge ist. Daher kommt bei meinem Projekt ein kleiner Bleigel-Akku zum Einsatz. Dieser ist Temperaturbeständiger als normale Alkali-Batterien, welche bereits bei 0°C um bis zu 40% Kapazitätsverlust (Quelle) aufweisen (bei dem Bleigel Akku sinkt die Kapazität merklich erst ab -5°C - siehe Datenblatt). Außerdem soll eben auch eine Beleuchtung in den Stall integriert werden, daher ist etwas mehr Kapazität von Nöten.
Die Schaltung hat im Betrieb eine Stromaufnahme von etwa 11mA. Durch den Schlafmodus des AVR sinkt diese auf knapp 8mA. Somit sollte der voll geladene Akku auch ohne Solarpanel einige Wochen standhalten. Den meisten Strom davon fließt durch die Status-LED. Diese könnte man auch noch abschalten bzw. toggeln lassen um die Stromaufnahme weiter zu reduzieren.

Schaltplan:

Schaltplan

Im Gegensatz zur Solar-Inselanlage wird hier der Akku mit Hilfe nur eines p-Kanal MOSFET von der Schaltung getrennt. Normalerweise würde die Schaltung über die Body-Diode des MOSFET weiterhin Strom ziehen, jedoch nutze ich hier den Fakt, dass diese parasitäte Diode eine Flussspannung von satten 1,2V besitzt. D.h. wenn der Akku leer ist UAkku = 5,4V, dann fallen nocheinmal 1,2V über die Body-Diode ab und am Spannungsregler kommen nur 4,2V an. Dies genügt dem 78L03 jedoch nicht um zu starten, da dieser einen Voltage-Drop von 2V besitzt (also mindestens 5,3V am Eingang sein müssen). Die Schaltung kann erst wieder mit vollem Akku, oder bei ordentlich Sonnenlicht in Betrieb gehen.

Um das DCF77 Modul sicher einschalten zu können wurde der Ausgang PC3 mit einem 100k Pull Up nach VDD an den PON Eingang des DCF Moduls geschalten. Während des Systemstarts wird dieser Ausgang einmalig definiert auf HIGH und nach einer Sekunde wieder auf LOW getrieben. Damit ist der schnelle und sichere Start des DCF Moduls garantiert. Weiterhin spielt es eine Rolle welches DCF Modul genutzt wird. So besitzt das Pollin-DCF-Modul einen Ausgang mit positiver Logik. Im Programm wird jedoch ein DCF-Signal mit negativer Logik gefordert. Um das Signal zu negieren und gleichzeitig die Belastung für das DCF Modul zu senken, habe ich selbiges über einen kleinen n-Kanal MOSFET invertiert. Somit sind die Flanken auch viel sauberer zu erkennen.

Der LDR liegt an der Stiftleiste K1 bzw. am Eingang PC1 (nur als Hinweis, da nicht im Schaltplan eingezeichnet). Die Anschlussbelegung ist für das kleine Gehäuse eher suboptimal. Bessere Konzepte wäre jedoch nur mit erhöhten Kosten in Punkto Steckverbinder realisierbar gewesen.

Prototyp im Acryl-Gehäuse

Software:

Um möglichst wenig Strom zu verbrauchen wird der Mikrocontroller zyklisch in den Schlafmodus versetzt. Und um den µC nicht mit unzähligen Fließkommaoperationen zu belasten, die für die Berechnung der Sonnenauf- und -untergangszeiten nötig wären, sind diese Zeiten im ausreichend großen Flash des AVR hinterlegt. Diese Zeiten gelten natürlich nur für den geplanten Einsatzort und müssten je nach Längen- und Breitengrad der Erde angepasst werden. Zusammenfassend lässt sich der zyklische Ablauf so beschreiben, dass der AVR jede Sekunde ein Signal vom DCF77 Empfänger erhält. Die Uhrzeit wird dann einmal in der Minute aktualisiert während dessen die interne Uhr weiterzählt. Die Uhrzeit wird zyklisch mit den hinterlegten Auf-/Untergangszeiten verglichen und bei Übereinstimmung die Hühnertür geöffnet bzw. geschlossen.

Wie so oft gibts den Quellcode bzw. das AVR-Studio Projekt zum download (siehe Attachment unten).

Mechanischer Aufbau:

Bei der Hühnertür handelt es sich um ein Blech, welches in zwei Führungsschienen gelagert ist. An dem Blech wurde ein kleiner Neodym-Magnet befestigt, welcher die Reed-Kontakte auslösen soll. Diese sind am Türrahmens befestigt.
Für die Schaltung, Akku und DCF-Modul wurde ein kleines Gehäuse angefertigt. Der LDR wird an der Außenseite des Stalls unter das Dach befestigt, um das passive Tageslicht wahrzunehmen. Ein kleines Solarpanel auf dem Dach sorgt für die zusätzliche Stromversorgung.

Der Motor zieht die Hühnerklappe über die Seilrolle nach oben. Durch das sehr hoch übersetzte Getriebe des Motors besitzt dieser eine hohe Selbsthemmung und kann die Klappe ohne Probleme geöffnet halten.

Hier auf dem Bild ist noch die "fliegende" Verdrahtung während der ersten Tests zu sehen. Das Gehäuse sowie der Motor werden von einem Vordach vor Regen und Schnee geschützt.

Version 2.0:

Nachdem sich der Prototyp im Außeneinsatz bewährt hat und mich zahlreiche Interessenten aus Umgebung und Netz angeschrieben haben, folgt nun die Weiterentwicklung der Hühnerklappe. Durch die Anschaffung eines 3D-Druckers kann ich hier in diesem Projekt eigene Formteile drucken und das System kompakter gestalten. Aus gegebenen Anlass wird die Hühnerklappe dann nur noch auf Helligkeit reagieren, da der Empfang mit DCF77 in manchen Regionen sehr schlecht ist. Dadurch fällt die Notwendigkeit der zahlreichen IOs sowie des Quarzes weg. Schlussendlich kann damit ein kleinerer Controller verwendet werden. Die Visualisierung des Akkuladestatus wurde optimiert, so dass nur noch ein IO dafür notwendig ist.

Schaltplan & Steuerung:

Schaltplan

Das Programm wurde vereinfacht und mit einem kleinem Menü ausgestattet, womit es möglich ist die Hühnerklappe auch manuell zu öffnen bzw. zu schließen sowie die Helligkeit, bei welcher dies automatisch erfolgen soll, kann im EEPROM des Controllers gespeichert werden.

Zum Download gibt es das komplette Projekt für AVR-Studio sowie Stückliste und ein paar Bilder als Attachment weiter unten.

Aufgrund der oben erwähnten Optimierungen fällt die Schaltung insgesamt sehr sparsam aus. Die Fläche des doppelseitigen PCB ist mit nur 32x36mm sehr klein. Die Platine konnte durch exportieren aus dem Layout-CAD-Programm direkt in Solidworks, dem 3D-CAD Programm als Modell erzeugt. Damit ist die exakte Gehäusekonstruktion und Simulation möglich.

3D Modell

3D Modell

Versuchsaufbau:

Um die neue Hardware auch ausführlich zu testen wurde eine Testanlage improvisiert. Die Seilwinde zieht dabei einfach eine Schubladen-Führung auf und ab.

Versuchsstand

Die Hühnerklappe im Einsatz:

Projekt von 2013 (Version 1) sowie 2014 (Version 2)

Attachments:
Download this file (Huehnerklappe_V2_www.stefan-franke.net.rar)Huehnerklappe_V2_www.stefan-franke.net.rar[Schaltplan, Software, Manual von V2]2834 kB
Download this file (Hühnerklappe_V1_www.stefan-franke.net.rar)Hühnerklappe_V1_www.stefan-franke.net.rar[Schaltplan, Stückliste und Software]1036 kB