Hühnerstall V2 - IOT MQTT WORLDS SECOND!


2018-04-29

Der alte Stall hatte ein Milbenproblem. Wir konnten der Milben nicht Herr werden, egal wieviel wir gekalkt haben. Es gab einfach zu viele Ritzen und zu viele nicht erreichbare Ecken. Ich habe daher einen komplett neuen Stall gebaut, der so konstruiert ist, dass sämtliche Ecken ausserhalb sind und innen (fast) nur glatte Wände. Die gesamte Frontwand ist abnehmbar, der Boden ist abnehmbar und im Stall selbst stehen nur Tische und Kisten und Treppen die sämtlichst herausnehmbar sind. Übrig bliebt eine Art "Bushaltestelle" und alle Teile sind perfekt zugänglich. Wir haben alles mit Kalk gestrichen und nach nunmehr über einem Jahr "Betriebszeit" ist noch keine einzige Milbe aufgetreten. Unsere gestressten Hühner haben sich in kurzer Zeit komplett erholt, alle Federn sind nachgewachsen und sie sind nun vollkommen relaxt und kratzen sich nicht mehr.

Den Futternapf haben wir nun in den Stall gestellt und uns zunächst gewundert, warum das Futter scheinbar ewig hält. Da fielen uns die vielen Vögel ein... Wir können daher nur wärmstens empfehlen, das Hühnerfutter stets im Stall zu platzieren.

Es kam noch nie vor, dass irgendein Räuber unsere Hühner gefressen hätte. Dennoch wollte ich schon immer eine automatische Hühnertüre haben und heute ist es nun endlich so weit.

Den Computer der automatischen beheizten Hühnertränke habe ich umgebaut und er steuert nun die Hühnertüre. Beheizte Hühnertränken funktionieren nicht wirklich, da die Batterie zu schnell leer wird. Jetzt steht die Tränke im Stall und gefriert nur noch selten ein.

Im WLAN können über das MQTT Protokoll der Zustand der Türe überwacht sowie manuelle Befehle abgesetzt werden. Normalerweise fährt die Türe automatisch helligkeitsgesteuert hoch- und runter. Eine Zeitsteuerung ist nicht vorhanden - im Winter wird es früher dunkel als im Sommer. Natürlich könnte man den Zeitpunkt des Sonnenauf- bzw. Untergangs leicht berechnen, aber ich hatte einfach keine Lust auf Uhrsynchronisation bzw. Uhrenstellen. Die Batteriespannung ist überwacht und wird gemeldet. Die Temperatur im Schaltschrank wird automatisch auf über 5°C gehalten. Hierfür ist ein Heizwiderstand vorhanden (weißer Klotz rechts neben Platine). Fällt die Batteriespannung zu stark, öffnet sich die Türe und schließt sich nicht mehr automatisch. Die Fahrzeit des Türblattes ist überwacht. Fährt es zu lange ohne gemeldeten Endschalter, geht die Türe auf Störung. Die Störung ist dann über MQTT einsehbar. Störungen werden über MQTT gelöscht. Ist der MQTT Server ausgeschaltet oder das WLAN nicht erreichbar, arbeitet die Steuerung davon unbeeindruckt weiter.

Es sind immer die vermeintlich einfachsten Komponenten die gerne mal Ärger machen. Zunächst plante ich den Helligeitssensor auf der Computerplatine. Zum Glück ist mir noch vor der Fertigung aufgefallen, dass der Computer stets in einem komplett dunklen Kasten sitzt... Also kam noch ein kleiner Plastikkasten mit einem transparenten Deckel hinzu. Beim ersten echten Testlauf ging abends tatsächlich die Türe zu, aber morgens einfach nicht mehr auf. Erst als es wirklich sehr Hell war ging die Türe auf. Ich habe mir die Schaltung des Helligkeitssensors dann nochmal unter die Lupe genommen. Die Schnittstelle ist einfach - es gibt eine 0V und 5V Zuleitung sowie einen Digitalausgang welcher Hell oder Dunkel melden soll. Also habe ich einen VT 93 N1 Fotowiederstand genommen und in dessen Datenblatt den Arbeitspunkt für die Dämmerung gesucht. Er dürfte in diesem Helligkeitsbereich ca. 200 kOhm haben. Um eine Möglichst hohe Spannungsänderung in diesem Bereich zu erhalten, habe ich den Fotowiderstand einfach mit 220 kOhm in Serie geschaltet und zwischen 0V und 5V geklemmt. Den Ausgang habe ich mit einem Operationsverstärker in Komparatorschaltung mit dem Ausgang eines Potentiometerspannungsteilers zwischen 0V und 5V verglichen. Scheinbar kein Hexenwerk. Hat aber eben nicht funktioniert. Nach genauerem Studium des Datenblattes vom Operationsverstärker wurde mir klar, dass ich zu weit im Randbereich der Versorgungsspannung gearbeitet habe, nachdem ich den Einstellwert des Potis angesehen habe (war fast am Rand). Ich habe daher den Fotowiderstand in die Mitte zweier 100k Wiederstände gebaut und somit die Spannung mehr in die Mitte gerückt. Und schon funktionierts.

Die Software ist in einzelne Module aufgeteilt: Ein Modul für die Batterieauswertung (A/D Wandlung), eines für das Halten aller Zustandsvariablen (Heizung an/aus, LED an/aus, Schalter an/aus, Batteriespannung, usw.) sowie ein Debugoutput derselben über serielle Schnittstelle, was aber im Arbeitsbetrieb nicht verwendet wird. Ein Modul für die LEDs, eines für den 1-Wire bus mit korrekter Resetfunktion bei Wackelkontakten, eines für den PCF8577 IO Expander, eines fürs WLAN. Und dann noch ein automatisch erzeugtes Modul aus meinem SPS Compiler der meine eigene SPS Programmiersprache nach C-Code übersetzt. Dieses Modul macht die Steuerungslogik. Darüber habe ich noch keine Webseite geschrieben, aber die eigene SPS Programmiersprache ist eigentlich das genialste an dem ganzen Projekt.

Das Board selbst ist mit KiCAD designt wobei ich meine eigenen Lochrasterspezialeinstellungen und eigene Teilebibliotheken verwende um direkt aus KiCAD die Platine auf Lochraster umsetzen zu können.

Der neue Stall von der Seite Stallbewohner


Schaltschrank Helligkeitssensor


Motorkasten Türblatt mit Sensoren



(erikyyy at erikyyy dot de, Erik Thiele) back