Hallo AVR-Freunde,
diesmal möchte ich von meiner Gewächshaussteuerung berichten:
Diese basiert auf der AVR-NET-IO Platine von Pollin (hier im Versuchsaufbau):
Dabei deckt die Steuerung folgende Bereiche ab:
- Sonsoren:
- Temperatur (aussen und innen)
- Luftfeuchte (innen)
- Helligkeit (innen)
- Fenster und Tür
- Aktoren:
- Lüftung
- Lüftungsklappe
- Heizung
- Luftbefeuchtung
- Pflanzenlicht
- Beschattung
- Bewässerung
Sensoren werden ein SHT-71 (Temperatur und Luftfeuchte) für innen und ein DS1820 (1-Wire) für aussen verwendet. Sowie ein Fotowiderstand zur Messung der Helligkeit bzw. Sonneneinstrahlung.
Die Öffnungszustände der Fenster und Türen erfolgen durch Microschalter.
Die Parameter der Steuerung sind kompfortabel über eine Web-Seite aus einstellbar:
Die gemessenen Werte werden über eine Daten-Webseite daten.html mit einem PHP-Script ausgelesen und in eine mySQL-Datenbank gespeichert, um sie als jpgraph-Diagramme (über 24h, 48h, Woche, Monat) auswerten zu können.
Die Temperaturen über 48 Stunden:
Die Luftfeuchte über 48 Stunden:
Die Sonnen-Einstrahlung über 48 Stunden:
Die Software basiert auf RoBues Code. (Danke noch mal an dieser Stelle an Robert!)
Download Grund-Version: AVR-NET-IO RoBue V1.5
Lediglich ein paar Anpassungen an der
config.h (Konfiguration),
main.c (Logik + Vorgabe-Werte + Display),
website.h (Web-Seite),
lcd.c (LCD Anpassung)
und Einbindung der SHT-Lib wurden von mir vor genommen!
Wer meine Version mit den fertigen Anpassungen haben will,
hier der Download:
Hier der Aufbau der Steuerung in einem Gehäuse (versuchsweise):
Die Sensoren für das Gewächshaus sind dabei:
der Aussentemperatur-Sensor (DS1620 im Gehäuse)
der Innen Feuchte- / Temperatur-Sensor (SHT71 – mitte) und der Foto-Widerstand (links).
Alles Modular über Stecker am Gehäuse angeschlossen (rechts Aussen-Temperatur-Sensor).
Die Aktoren im Gewächshaus sind:
Lüfter
Pflanzenlicht
Heizung
Lüftungsklappe
über Fenster-Öffner
Bewässerung / Luftbefeuchtung
über Magnet-Ventile
und die Beschattung
alles Modular über Steckdosen an den Seiten des Gehäuses.
Hier das fertige Gehäuse mit den Steck-Verbindungen und dem Display.
Nun von innen mit AVR-NET-IO, Relais-Platine, Netzteil und dLAN-Adapter.
Im Keller befindet sich das Gegenstück zum dLAN-Adapter, da kein Ethernet-Kabel (sondern nur Strom und Wasser) in das Gewächshaus führt.
Hier der AVR-NET-IO eingebaut
die K8 IO Relais-Karte (mit den angelöteten Anschlüssen zu den Steckdosen)
und das Display von hinten.
Arbeite momentan an etwas ähnlichem – einer automatischen Bewässerungsanlage für Zimmerpflanzen. Setze aber eher auf Arduino (bin auch mehr Designer als Entwickler) um das zu realisieren. Werd mal Bookmarken – ich brauch was ähnliches demnächst. Danke Christian!
Moin Christian,
sehr schönes, umfangreiches Projekt!
So etwas Ähnliches möchte ich auch aufbauen, nur nicht annähernd so komplex.
Meine Vorstellung ist, das mit einem Arduino zu lösen, der den gesamten Regelkreis selbst betreut:
– minütliches Loggen von Temperatur und Feuchtigkeit im Gewächshaus
– Ermitteln einer Tendenz daraus, Vergleich mit dem Zielwert
– viertelstündlich: Berechnen einer Aktion, um das Ziel zu erreichen: Fenster auf oder zu
Um zu erreichen, dass nun nicht ständig das Fenster auf und zu geht oder nachkorrigiert wird, hoffe ich, dass sich eine gewisse Verzögerung ergibt: je nachdem, wie groß die Differenz zwischen Soll-Wert und Ist-Wert ist, wird das Fenster nur ein Stückchen weiter geöffnet aber niemals in großen Schritten.
Feintuning wird natürlich nötig sein.
Ich habe absichtlich mal nicht geschaut, wo es fertige Definition des Regelkreises gibt, und auch nach Stellmotoren muss ich noch suchen, aber ich finde die Thematik sehr interessant, zumal man das heute mit billigsten Komponenten lösen kann – sollte mein Plan aufgehen! 😉
Keep up the good work!
Hi Christian,
wirklich sehr schönes Projekt. Habe mir davon auch eine ganze Menge abgeguckt und habe jetzt 10x 1-wire Sensoren und auch den SHT 71 integriert. Das funktioniert auch alles soweit, allerdings habe ich mit „zuschalten“ des SHT 71 arge Probleme beim Aufbau der Seitendarstellung, d.h. erst nach ca. 3maligen betätigen des Aktualisierungsbuttons wird die ganze Seite mit den Werten angezeigt.
Hattest Du das Problem auch? Wie hast Du das gelöst? Oder ist der Prozesser mit der Vielzahl von Sensoren überlastet?
Beste Grüße
Michael
Hallo Michael,
hmm, keine Ahnung, warum das bei Dir so ist, kann schon sein, das die Vielzahl an Sensoren so seine Probleme macht.
Hast Du mal versucht weniger zu benutzen, also erst mal einen oder zwei und den SHT, wie sieht es dann aus?
Viele Grüße,
Christian
Ein wirklich sehr anspruchsvolles Projekt was Du da verfolgst. Großes Kompliment für das was Du geschafft hast!
Hallo Christian,
super Artikel . Bin begeistert von Deiner professionellen Verarbeitung. Selbst habe ich noch nicht viel Erfahrung mit Avr, aber schon ein bisschen was selbst gemacht (eine Schachuhr auf Basis vom Pollinspiel Seno). Da ich plane selbst ein Treibhaus zu bauen ,finde ich deine Arbeit (natürlich auch die RoBue) sehr gut um darauf weiter auf zu bauen. Ich bin halt ein guter Abschreiber ;-). Ich selbst finde Leute wie euch (Ulli , Robert und Dich) als unbezahlbar. Wenn es möglich wäre dann würde ich Leute wie euch für einen Orden vorschlagen. Einen Einsatz wie den euren müsste man mehr in die Öffentlichkeit bringen. Ich versuche es mal auf meiner Seite,wenn man es mir gestattet.
Jetzt noch eine Frage: Ich betreibe mit RoBue selbst ein Webserver (nicht öffentlich) und habe das Problem, dass dieser nicht alle Befehle korrekt übernimmt. Mache ich was falsch oder wie schaffst du das?
Beste Grüße Frank
Hallo Frank,
Danke für das Lob und den Orden!
Was bei Eurem Webserver falsch läuft, weiß ich nicht, müsste man mal genauer drauf schauen…
Du kannst gerne meine Seite verlinken.
Viele Grüße,
Christian
@Alfred probier es mal mit WinAVR aus. Und ggf. besorgst du dir noch von Ulrich Radig den ISP Programmier Adapter. Damit sollte es dann keine Probleme mehr beim Flashen geben.
Hallo danke für deine Hilfe noch mal.
Ich hab mir das Atmel Evaluierungs bort von Pollin besorgt und deine *.hex Datei raufgeflasht.
So aber jetzt will ich das noch für meine Bedürfnisse abändern.
Und hätte da noch einige Fragen wo ich hoffe das du mir hier weiterhelfen kannst.
Also wie bearbeite ich die hex Datei am besten? Mit AVR Studio?
Oder muss ich das neu machen mit den surce codes?
Welche Debug platform muss ich da auswählen
Und wenn ich es mit AVR Studio Builden will kommt der Fehler:
gcc plug-in: Error: Object file not found on expected location C:\Users\*Benutzername*\Desktop\test\default\test.elf
Bin echt schon verzweifelt!
Vielen Dank im Voraus!
Lg. Afred