AVR-NET-IO als Gewächshaussteuerung

Hallo AVR-Freunde,

diesmal möchte ich von meiner Gewächshaussteuerung berichten:

Gewächshaus

Diese basiert auf der AVR-NET-IO Platine von Pollin (hier im Versuchsaufbau):

AVR-NET-IO Versuchsaufbau

Dabei deckt die Steuerung folgende Bereiche ab:

Schema Gewächshaussteuerung

  • 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:

Webseite Steuerung

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:

Temperaturen über 48 Stunden

Die Luftfeuchte über 48 Stunden:

Luftfeuchte über 48 Stunden

Die Sonnen-Einstrahlung über 48 Stunden:

Sonne ü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):

AVR-NET-IO im Gehäuse

Die Sensoren für das Gewächshaus sind dabei:

Aussentemperatur Sensor

der Aussentemperatur-Sensor (DS1620 im Gehäuse)

Sonsore-Anschlüsse

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

Lüfter

Pflanzenlicht

Pflanzenlicht

Heizung

Heizung

Lüftungsklappe

Lüftungsklappe

Fensteröffner

über Fenster-Öffner

Tropfer

Bewässerung / Luftbefeuchtung

Bewässerung

über Magnet-Ventile

Beschattung

und die Beschattung

Steckdosen

alles Modular über Steckdosen an den Seiten des Gehäuses.

Gehäuse aussen

Hier das fertige Gehäuse mit den Steck-Verbindungen und dem Display.

Gehäuse innen

Nun von innen mit AVR-NET-IO, Relais-Platine, Netzteil und dLAN-Adapter.

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.

AVR-NET-IO angeschlossen

Hier der AVR-NET-IO eingebaut

K8 IO Relais-Karte

die K8 IO Relais-Karte (mit den angelöteten Anschlüssen zu den Steckdosen)

Display hinten

und das Display von hinten.

Autoren-Avatar
Christian Häussler

52 Replies to “AVR-NET-IO als Gewächshaussteuerung”

  1. 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!

  2. 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!

  3. 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

  4. 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

  5. @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.

  6. 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

Kommentar verfassen

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.