Als sich von Seiten der Freundin vor einigen Jahren die Frage nach
einem Haustier stellte, begann die Grüblerei, welches Tier es denn sein
sollte. Da wir beide berufstätig sind, kommen Tiere wie Hund, Katze,
etc. nicht in Frage. Es bleiben nur Tiere die in Aquarien oder Terrarien
leben, übrig. Da zu diesem Zeitpunkt ein Bekannter gerade ein
Reptiliengeschäft führte, statteten wir ihm einen Besuch ab und gingen
schlussendlich mit einer Königspython nach Hause. So beschäftigten wir
uns nun intensiv mit der artgerechten Haltung des Reptils und bauten ein
Terrarium. Die Heizung sollte eine Wärmelampe mit breitem Spektrum
übernehmen. Als zusätzliche Lichtquelle sollte noch eine Ledleiste
dienen.
Nun ging es an die Steuerung bzw. Regelung des
Terrariumklimas. Die bis dahin eher provisorische Steuerung bestand
lediglich aus einer mechanischen Zeitschaltuhr und einem einfachen
Dimmer, der die Leistung der Wärmelampe festlegte. Um das zu verbessern,
entschloss ich mich, eine kleine Steuerung zu bauen, die alle diese
Aufgaben übernimmt. Sie sollte folgende Eigenschaften haben:
- Messen der Temperatur im Terrarium
- Messen der Luftfeuchtigkeit im Terrarium
- Regeln der Temperatur auf einen Sollwert (Dies soll durch die Leistungregelung der Wärmelampe mittels Phasenanschnitt geschehen)
- Die Lichtsteuerung nach programmierbaren Schaltzeiten übernehmen
- Alle Informationen in einem Display anzeigen
Daraus enstand schnell ein Blockschaltbild das einen Überblick über die zu entwerfende Hardware gab:
|
Skizze des Blockschaltbildes |
Nun
begann der Entwurf eines Schaltplanes. Als zentrale Einheit sollte ein
Microcontroller der Firma Microchip dienen. Genauer gesagt verwendete
ich einen PIC16F877 in DIL Bauweise für die Hauptaufgaben und etwas
umständlich einen weiteren Microcontroller (16H628) als Zeitgeber für
die Uhr. Hier wäre es sicher sinnvoller gewesen, eine RTC zu verwenden,
jedoch hatte ich die uC´s da. :)
Über einen PWM-Ausgang des PIC
wird ein Phasenanschnittdimmer gesteuert, der mittels Optodiac den
Leistungstriac steuert. Der Spannungsnulldurchgang der Netzspannung,
also die Synchronisierung für den Triac, wird von der Sekundärseite des
Netztransformator entnommen und mit einer OPAmp Verstärkungs- und
Komparatorschaltung in die Ansteuerung eingebunden.
Zwei direkt
schaltbare Relais sollen weitere Verbraucher, wie Ledleiste oder
Ultraschallvernebler ansteuern. Über Reedkontakte an den
Glassschiebetüren des Terrartiums sollen geöffnete Türen gemeldet
werden. Die Zeit bis zur Auslösung eines akkustischen Alarmes soll
einstellbar sein.
Als Istwertgeber wird ein Feuchtesensor und ein
Temperatursensor in das Terrarium verlegt und an entsprechende
Analogeingänge des uC geschaltet. Ein LC-Display soll den Status der
Anlage anzeigen und in entsprechenden Menues Einstellungen über Tasten
ermöglichen.
|
Schaltplan des Controllers |
|
Layout des Controllers |
So wurde nun aus dem Schaltplan ein Layout erstellt und daraus ein
Board gefertigt. Parallel zum Aufbau der Hardware gings an das Schreiben
der Software. Hier hat auch ein Freund intensiv daran gearbeitet, um
das System schnell in einen funktionstüchtigen Zustand zu bringen. Die
Software steuert die Wärmelampe nun im Sonnenauf- und Untergangsmodus
(das bedeutet, morgens geht die Sonne langsam auf, also die Lampe "dimmt
ein" und abends geht sie unter "dimmt ab"). Während der Tageszeit ist
sie für den Temperatursollwert zuständig. Würde es zu heiss im
Terrarium, und die Wärmelampe würde abschalten, so übernimmt die
Ledleiste die Beleuchtung. Solche und noch einige andere
Sonderfunktionen sind in der ersten Softwareversion implementiert.
Parallel
zur Softwareentwicklung enstand auch der fertige Aufbau der Hardware
und konnte erste Tests und Optimierungen durchlaufen. Mittlerweile
verrichtet der Controller seit einigen Jahren seinen Dienst...
|
fertig bestückte Platine |
|
|
|
Board im Gehäuse eingebaut |
|
Gehäusedeckel mit Display und Tasten |
|
Sensorboard | |
Keine Kommentare:
Kommentar veröffentlichen