|
|
Ultimatives Aquariumsteuergerätvon Torsten Crull
[Bearbeiten] EinleitungWie an den zahlreichen Beiträgen zu dem Thema im Internet zu erkennen ist, scheint der Bedarf durch fertig käufliche Geräte nicht ausreichend gedeckt zu sein. Ich habe seit einiger Zeit ein Aquarium und mir sind die fertigen Kauflösungen zu unflexibel und/oder zu teuer. Fazit: Ein ultimatives Steuergerät ist zu entwickeln; hier geht's zum Diskussionsthread dieses Projekts. Terrarien-Steuerung: Auch wenn die Überschrift es anders vermuten lässt, ist das Gerät auch für Terrarien vorgesehen. Im folgenden Text wird zur besseren Lesbarkeit trotzdem immer von einem Aquarium gesprochen. Es handelt sich nicht um ein komerzielles Projekt. Bei Bedarf können wir aber Sammelbestellungen z.B. beim Platinenservice organisieren. Übergeordnete Anforderungen
[Bearbeiten] Beschreibung[Bearbeiten] Bedienung über die integrierte Mini-BedienungDie Mini-Bedienung ist die minimal vorgesehene Anzeige- und Bedienmöglichkeit. Gegenüber dem unten beschriebenen Menü-Bedienteil ist sie deutich spartanischer, aber auch preiswerter. Nacholgend sind die Funktionen beschrieben: Lich ein/ aus Duch kurzen Druck auf die Tasten ein oder aus wir das Aquarium-Licht ein- ode ausgeschaltet. Licht dimmen Duch langen Druck auf die Tasten ein oder aus wir das Aquarium-Licht heller oder dunkler gedimmt. Temperatur-Anzeige Die zweifarbige LED signalisiert im normalen Betrieb über Blink-Sequen die gemessene Temperatur im Aquarium in Schritten von 0,5°C. Es wird angezeigt, ob die Temperatur wärmer oder kälter als Anzeige-Basistemperatur ist. Falls die Anzeige-Basistemperatur vom Anwender nicht anders eingestellt wurde, beträgt sie 22°C. Die Anzeige-Basistemperatur ist nicht die Soll-Temperatur für den Regler, diese wird gesondert eingestellt (s.u.).
Zeitautomatik Durch Betätigen der Mode-Taste wird der Zeit-Programmier-Modus aktiviert und durch ein dauerhaftes rotes Leuchten der LED signalisiert. Durch Drücken der jeweiligen Bedientaste “ein” oder “aus” wird zur gewünschten Zeit die Ein- oder Aus-Funktion programmiert, die sich täglich zur selben Uhrzeit wiederholt. Dabei wird bei installiertem Dimmer (EVG) jeweils ein Sonnen-auf- bzw. -untergang simuliert. Einstellung der Soll-Temperatur Durch mehrfaches Betätigen der Mode-Taste wird der Temperatur-Programmier-Modus aktiviert und durch ein dauerhaftes blaues Leuchten der LED signalisiert. Durch Drücken der jeweiligen Bedientaste “ein” oder “aus” wird die Temperatur in Schritten von 0,5°C höher oder tiefer gestellt programmiert. Die eingestellte Temperatur ist dabei an den Blink-Sequenzen (siehe "Temperatur-Anzeige") erkennbar. [Bearbeiten] Bedienung über USBNeben den bereits im Kapitel "Bedienung über den Aquarium-Satellit" beschriebenen Funktionen gibt es über USB weitere Möglichkeiten:
Dieses Kapitel ist noch in Arbeit. [Bearbeiten] HardwareDie Hardware besteht aus mehreren Modulen, die sich - je nach Bedarf - kombinieren lassen. Zunächachst eine Übersicht:
[Bearbeiten] Zentralrechner (Basis)In der Basisversion kommt ein MSP430-Launchpad zum Einsatz. Es bringt einen I²C-Bus, PWM-Ausgänge und einen USB-Anschluss mit und kostet nur ca. 5€. [Bearbeiten] Mini-Bedienung (optional)Aquariumsteuergerät läßt sich über den USB-Anschluss von einem PC oder einem geeigneten Tablet oder Handy mit USB-OTG-Schnittstelle bedienen. Man kann jedoch eine einfache Bedieneinheit mit drei Tastern und zwei LEDs zu nutzen. Diese kann man entweder für ca. 5€ über den I²C-Bus anschließen oder für ca. 3,50€ direkt über 5 freie IO-Ports an den Prozessor. Diese Bedieneinheit ermöglicht es, die wichtigsten Funktionen zu bedienen, siehe Kapitel "Bedienung über die Mini-Bedienung". Die Mini-Bedienung kann direkt in den Deckel des Aquariums eingebaut werden, wenn man ein paar Löcher für die Taster und die LEDs in den Deckel bohrt. Hier noch im Prototypen-Aufbau, links ragt die Abdeckung (spätere Frontplatte) ins Bild. In der preiswertesten Variante ist die Mini-Bedienung auf der Zentralrechner-Platine integriert, so dass der Zentralrechner ohne (teures) Gehäuse direkt zusammen mit der Mini-Bedienung direkt unter den Deckel des Aquariums verbaut werden kann. Die Mini-Bedienung kann optional auch über ein Netzwerk-Patchkabel mit einem Zentralrechner verbunden werden, wenn er nicht unter dem Aquaruim-Deckel verbaut werden soll. Im einachsten Fall reicht ein vieradriges Patch-Kabel, bei dem lediglich die PINs 1, 2, 3 und 6 belegt sind:
[Bearbeiten] Mondlicht (optional)Auf der Rückseite der Mini-Bedienung ist optional eine LED ("High Power 1W Emitter") bestückbar. Wer nachts die Leuchtstofflampen ganz ausschalten möchte, kann dieses Mondlicht aktivieren. Über einen PWM-Ausgang des Mikrokontrollers ist es ebenfalls dimmbar. Wenn über PIN 7 (s.o.) 12 V eingespeist werden, kann auch eine 12V LED-Leiste angeschlossen werden. [Bearbeiten] Menü-Bedienteil (optional)Wem die spartanische Mini-Bedienung mit einer Taste und einwe LED oder drei Tasten und einer Dual-LED zu primitiv ist, kann auch ein entsprechnd teureres Bedienteil mit Display und einem Dreh-Drückgeber für eine Menü-Bedienung anschließen. Dazu stehen verschiedene Displays zur Auswahl: Dieses Bedienteil kann entweder - wie die Mini-Bedienung (s.o.) - in den Kunststoff-Deckel des Aquariums eingebaut werden oder zusammen mit dem Zentralrechner in einem gemeinsamen Gehäuse untergebracht werden, so wie im µQuarium: Über die bequeme Menü-Bedienung mit Softkeys und Dreh-Drück-Geber sind weitere Funktionen direkt am Gerät bequem bedienbar, ohne dass über USB ein Rechner angeschlossen werden muss. Darüber hinaus werden Temperatur und andere Werte im Klartext angezeigt. Unter dem Display befinden sich vier frei belegbare "Softkeys" die am unteren Rand des Displays beschriftet sind. Im Bild sind das z.B.
Dieser Hardware-Teil ist noch nicht detaillierter ausgeplant, → Diskussionen sind erwünscht. [Bearbeiten] Temperaturalarm (optional)Optional kann am Zentralrechner ein Piezo-Summer für einen Temperaturalarm angeschlossen werden. [Bearbeiten] 230V Relaisbox (optional)Über einen Port-Expander_PCF8574 und Halbleiterrelais (S202S02) können Heizungen, Pumpen, Licht usw. geshaltet werden. Durch die Relais und die 230V-Steckverbindungen kommt man bei drei schaltbaren Steckdosen auf etwa 25€. Wer also kein Licht schalten muss und z.B. nur ein EVG für Leuchtstofflampen steuern will und wer eine z.B. eine 12V Heizfolie statt eines 230V Aquarium-Heizers verwendet, kann diese Kosten sparen. [Bearbeiten] Temperatursensoren (optional)Zur Messung der Temperaturen im Aquarium, Terrarium und der Umgebunstemperatur können mehrere DS18B20 Sensoren angeschlossen werden. Als Steckverbindung kommen Cynch-Stecker zum Einsatz, da diese vergleichsweise preiswert sind (noch zu diskutieren). Anhand der Temperaturen kann z.B. mit einem 230V-Aquarium-Heizer oder mit 12V-Heizfolien die Temperatur geregelt werden. [Bearbeiten] EVG-AnsteuerungWer sein Aquarium mit Leuchtstofflampen beleuchtet, setzt vielleicht ein elektronisches Vorschaltgerät als Dimmer ein. Diese EVGs haben i.d.R. einen Analog-Eingang von 0..10V, über den sich die Helligkeit in Gewissen Grenzen einstellen läßt. Die EVG-Ansteuerung sorgt über einen Optokoppler und einen Tiefpass dafür, dass such der 0..10V-Eingang über einen PWM-Ausgang des Mikrocontrollers steuern läßt.
Wer die Leuchtstofflampen nachts nicht nur auf ein Minimum abdunkeln, sondern ausschalten will, benötigt entweder ein geeignetes EVG oder nutzt die 230V Relaisbox (s.o.), um das Licht nachts ganz auszuschalten. [Bearbeiten] Heizfolie und Ansteuerung (optional)Heizfolie, 12V, 36W, 137x320 mm kostet ca. 6,50€. Mit zwei Heizfolien Mosfet-Transistoren und Steckverbindungen kommte man also auf ca. 13€ für eine 72W-Heizung, natürlich muss noch der Preis für ein entsprechend starkes 12V-Netzteil hinzugerechnet werden. Für den, der auf die teure 230V Relaisbox verzichten möchte, ist die Heizfolie eine interessante Alternative. [Bearbeiten] Software[Bearbeiten] MSP430Die Basis-Version ist aus Kostengründen mit einem TI Lauchpad mit einem MSP430-Mikrocontroller für ca. 5€ implementiert. Der Quellcode besitzt Compiler-Schalter, die die Compilierung auf unterschiedliche Ziel-Prozessoren erlaubt, so z.B. auf den MSP430G2452 oder den MSP430G2553, die beide dem TI Lauchpad beiliegen. Für das I²C-Protokoll wird das "Universal Serial Interface" (USI-Modul) des MSP430G2452 bzw. das "Universal Serial Communication Interface" (USCI-Modul) des MSP430G2553 verwendet. Die API benutzt keine wait-Schleifen, sondern den Timer "Timer0_A3", der in beiden Prozessoren vorhanden ist. Dieser wird auch für das Timing des One-Wire-Protokolls verwendet:
[Bearbeiten] andere Mikrocontroller [1][Bearbeiten] Konzeption[Bearbeiten] Ideen, Anforderungen, VorschlägeDie folgenden gesammelten Anforderungen sind noch nicht priorisiert oder bewertet (To do): [Bearbeiten] Funktionen
[Bearbeiten] offene Punkte
[Bearbeiten] ToDo
[Bearbeiten] Hardware-Design[1][Bearbeiten] Software-Entwicklung[1][Bearbeiten] Downloads[1]
|