Morgen zusammen,
ich habe vor kurzem damit angefangen mir meinen Aquariencomputer selber zu bauen und würde dieses Projekt gerne mit euch teilen und euch um Beteiligung bitten. Ziel war es dabei möglichst auf Standardkomponenten zurückzugreifen und den zur Steuerung und Regelung entwickelten Code als Open Source zentral bei Sourceforge abzulegen. Dabei ist mir das Arduinoprojekt aufgefallen. Arduino ist Open Source und basiert auf den ATMEL AVR Mikrocontrollern und ist damit äußerst kostengünstig (Arduino Mega 2560 Basis Board liegt bei ca. 38€). Mittlerweile hat sich eine große Community um Arduino gebildet was dazu geführt hat, dass man sehr viele Bibliotheken für die unterschiedlichste Hardware bekommt und dass auch verschiedene Hardwarehersteller (DFRobot, Adafruit, ITeadstudio, ...) Arduino Erweiterungsboards (Shields) oder externe Hardware (Breakouts) bekommt. Es ist jedoch auch ohne weiteres möglich, sich selber Komponenten zu bauen, um diese am Arduino zu nutzen.
Meine ersten Ziele sind folgende:
- simple Steuerung meiner Steckdosen im Unterschrank über normale Relais
- Zeitsynchronisierung der internen Softwareuhr über NTP
- Programmierbare Zeitschaltuhren für die Steckdosen
- Nachfüllautomatik mittels Levelsensor und schaltbarer Steckdose
- Dauermessung der Temperatur mittels Dallas DS18S20 von Reichelt
- Logging der Messdaten auf SD Karte
- Webinterface
Zur Realisierung dieser Ziele habe ich auf folgende Hardware zurückgegriffen
- 1x Arduino Mega 2560 (Deutlich mehr In/Outputs als der Arduino Uno und nich wesentlich teurer) (Preis: 38,00€)
- 1x Arduino Ethernetshield mit microSD Slot (Preis: 33,00€)
- 6x 4 Kanal Relais Modul von ITeadstudio (Preis: 9,50€ / Modul)
- 1x Levelsensor mit Schwimmer von Reichelt (Preis ca. 7€)
- 1x Dallas DS18S20 Temperatursensor von Reichelt (Preis ca. 3€)
Die Entwicklung der Software habe ich basierend auf der Arduinosoftware 0023 in Eclipse als reines C++ Projekt gestartet. C++ hab ich gewählt, da es eine gut lesbare Programmierung erlaubt und man die Softwarearchitektur sehr einfach gestalten kann, um die Software wartbar und erweiterbar zu realisieren. Dabei habe ich bewusst die eventuellen Größennachteile und Performancenachteile in Kauf genommen, da diese meiner Erfahrung nach nicht so schwerwiegend sind. Der gesamte Quellcode ist unter dem Projektnamen Aquaduino zu finden. Dort sind Eclipse Helios Projekte abgelegt, die man einfach mittels SVN auschecken kann. Mittlerweile gibt es eine neuere Version der Arduinosoftware, die jedoch einige Änderungen in der derzeitigen Aquaduino Software erforden würde und ich deshalb noch nicht gemacht habe. Die Dokumentation, wie man die Arduino Entwicklungsumgebung in Eclipse einrichtet findet man hier.
Folgende Ziele sind mittlerweile vollständig bzw. teilweise realisiert
- simple Steuerung meiner Steckdosen im Unterschrank über normale Relais
- Zeitsynchronisierung der internen Softwareuhr über NTP
- Programmierbare Zeitschaltuhren für die Steckdosen (Nur Anfangs und Ende Zeitpunkt)
- Nachfüllautomatik mittels Levelsensor und schaltbarer Steckdose
- Dauermessung der Temperatur mittels Dallas DS18S20 von Reichelt
- Webinterface (Teilweise)
Wer Lust und Zeit hat kann sich gerne an der Entwicklung beteiligen. Vielleicht bekommt man am Ende ja einen schönen Aquariencomputer fertig, der für viele erschwinglich und leicht einsetzbar ist.
So ich bin mal auf eure Meinungen gespannt.