Get your Shrimp here

DIY Technik-Controller - Ein Mitmach- und Entstehungsbericht

LarsP

LED-Erleuchteter
GF Supporter
Spezial Mitglied
Mitglied seit
09. Jan 2014
Beiträge
1.229
Bewertungen
4.204
Punkte
10
Garneleneier
89.431
Hallo,

da man mich eh schon liebgemeint als kleiner Technikfreak bezeichnet hat (:thumbup: @shrimpfarmffm) und hier der Wunsch aufkam berichte ich mal ein wenig über mein neues Bastelprojekt.

Über meine DIY-LED kam der Wunsch auf auch die zu steuern. Meine Daytime LED's steuere ich ja über den TC420. Das geht leider bei mit Konstrantstromquellen betriebenen LED's nicht.

Mehrere Projekte, die im Net vorgestellt wurden, haben mich angespornt es auch einfach mal zu probieren.

Gedanklich wuchs das dann immer weiter.
Auf dem Wunschzettel stehen bis jetzt:

  • Temperaturmessung
  • Lüfterregelung
  • LED Steuerung
Mit Fragezeichen versehen noch
  • Leitfähigkeitsmessung
  • PH-Messung
Dafür sind aber die Sensoren recht teuer. Die PH-Elektroden sind mir auch viel zu groß. Es gibt zwar auch kleinere, aber die sind unbezahlbar. Ich bin mir noch nicht sicher, mal schauen was noch so kommt.

Im Threadtitel spreche ich ja von einem Mitmachprojekt.
Also sind Ideen und Vorschläge natürlich sehr willkommen!

Gedanklich standen also die Wunschfunktionen. Nun musste die entsprechende Hardware her.
Ich habe mich für ein Arduino System entschieden.
Arduino ist ein quelloffenes OpenSource Projekt. Man bekommt die Boards und auch die Sensorik sehr günstig. Man findest etliche Programmiertutorials im Net.

Als Display stand von Anfang an ein TouchDisplay auf dem Wunschzettel. Auch das gabs für das ausgewählte System in einem erschwinglichen Rahmen.

Als Board habe ich mich für ein Arduino Mega entschieden. Grund waren die zahlreichen Ein- und Ausgänge.

  • 54 Digitale I/O Pins (15 PWM fähig)
  • 16 Analoge Input Pins
Dazu gab es ein 3,2 Zoll Touchdisplay mit einer Auflösung von 320x240 Pixeln und ~65.000 Farben.

Mega, Shield (mehr oder weniger eine Adapterplatine um das Display an den Mega anzuschließen) und Display gabe für erschwingliche 23,67€ in China. Dafür bekommt man in Deutschland noch nicht mal den Mega, man muss aber Wartezeit in Kauf nehmen.

Für die LED Steuerung braucht man einen Echtzeituhrenbaustein. Ausgewählt habe ich eine mit einem DS3231 Baustein. Da ich grade auf den chinesischen Seiten war gabs den dort auch für 1,13€.
Dieser Baustein hat den Vorteil, dass er den I²C Bus geherrscht. Damit kann man mehrere Komponenten an einem Ditital-In des Megas betreiben.

I²C ist auch das Stichwort für die Temperatursensorik. Man könnte nun sicherlich auch über PT100 arbeiten, aber ich habe auch einen busfähigen Temperatursensor gewählt um Pins zu sparen.
Ich habe mir (wieder in China) Sensoren auf Basis vom DS18B20 in Edelstahlhülle gekauft. Stückpreis 1€.

Benötigt wird noch ein Netzteil. Da bieten sich Netzteile aus den Computerzubehör an. Ich habe eines mit 5V und mit 12V. Die 5V benötigt man für den Mega, mit den 12V kann man die Lüfter betreiben.

Zum experimentieren empfiehlt sich immer ein sogenanntes Breadboard. Darauf kann man mit passenden Leitungen schnell mal die Schaltungen stecken. Drahtbrücken sollte man dazu auch haben.

Zum experimentieren braucht man dann noch ein paar LED's, Transistoren und Widerstände. Dazu aber später mehr.

So, zur Einführung war das dann jetzt doch eine ganze Menge. Hier schon mal vorab ein Bild wie es zur Zeit so aussieht:

2014-11-01-18.23.00.jpg

Hier kann man links den Arduino Mega, das Display und im Vordergrund das Breadboard mit aufgesteckter RTC sehen. Davor liegt noch ein Temperatursensor.

Auf dem Display zu sehen sind Links die Temperaturen, ich habe erst mal für vier Becken geplant. Ja, ja... ich habe erst drei... :innocent:
Rechts daneben sieht man die Anzeigen für die Lüfter. Zur zeit gibt es dort drei Status (habe extra im Duden geschaut. Plural von Status ist tatsächlich Status). Aus (<24°C), Warnung (zwischen 24°C und 25°C) und An (>25°C). Jeweils farbig hinterlegt. Die Farbe der Temperatur wechselt auch bei erreichen der 24°C von grün auf rot und rechts oben der rote Kreis ist eine 'Alarmanzeige'. So sieht man auf dem ersten Blick, ob irgendwas ansteht.
Unten Datum und Uhrzeit. Die Sekunden sind bereits ausgeblendet, da die ja nicht wirklich benötigt werden.


Nun bin ich auf euch gespannt.

Weiter geht es, wenn es Fortschritte gibt.

LG
Lars
 
Zuletzt bearbeitet:
Hi,
Habe selbst schon 2 ähnliche Systeme gebastelt, jedoch 3 Nummern kleiner (nur ein Becken pro Steuerung).
Das erste hat das Licht gesteuert (ein/aus mit ca 30 min Dimmdauer), Temperatur ausgelesen (selber Sensor wie bei dir, allerdings selbst abgedichtet) und Steuerung einer Luftpumpe des Lufthebers. Ausgabe auf 4-Zeilen-LCD.

Der zweite ist relativ ähnlich, allerdings hab ich Temperatur und Luftpumpe weggelassen. Stattdessen habe ich ein Magnetventil für CO2, ein DCF77 Empfänger für die Uhrzeit und einen Drehimpulsgeber (statt Tasten) verbaut.
Ausgabe auf 2-Zeilen-LCD mit Beleuchtung. Die Hauptbeleuchtung kann jetzt auf 0 bis 3h Dimmdauer eingestellt werden, das wird je nach eingestellter Helligkeit individuell berechnet. Das DCF77 habe ich mir hauptsächlich aus Faulheit gegönnt, damit ich mir das Uhrzeit eingeben erspare, insbesondere die sinnfreie Umstellung jedes halbe Jahr.

Programmiert hab ich beide mit Bascom. Den zweiten wollte ich eigentlich in C programmieren, hatte dann aber zu wenig Zeit und Lust mich umzugewöhnen.
Vielleicht sind ja ein paar Ideen dabei die dir gefallen.

Gruß Anton.
 
Moin Anton,

ein paar Nette Ideen sind da bei! Danke!
Das CO2 Magnetventil steht auch schon auf der gedanklichen Liste. Das habe ich oben nur vergessen auszunehmen.
Eine DCF wäre natürlich prima. Habe mal geschaut, da gibt es auch eine Library für.
Habe auf die Schnelle allerdings nur einen Bausatz mit I2C gefunden. 15,95€ und dann noch selber löten... Ganz schön happig.
Weißt Du noch, welches Modul Du damals eingesetzt hast?


Und nun an den Rest der Mitleser:
Gibt es denn bastelwütige Mitleser, die das dann auch mit bauen möchten?
Wo soll es dafür hier denn dann los gehen?

LG
Lars
 
Moin!
Auf ein LCD habe ich bewusst verzichtet. Dann benötigt man ja auch wieder eine wie auch immer geartete Tastatur.
Ebenso finde ich die Darstellung auf einem größeren Farbdisplay schöner. Und bei den Preisen kann man da echt diesen schöne Touchscreen nutzen.

LG
Lars
 
Die Bauteile…

Hier nun werde ich euch ein wenig die verbauten Komponenten nahe bringen.

Das dieses gesamte Arduinoprojekt Open Source ist habe ich ja oben schon erwähnt.
Dadurch findet man auch sehr viele Informationen im Netz. Die Originale stammen von Smart Projects aus Italien, aber da es ja Open Source ist findet man sehr viele Nachbauten.

Diese Beschreibung basiert nur auf dem Arduino Mega. Andere Boards unterscheiden sich in einigen Punkten.

Den Kern bildet ein ATmega-Controller aus Atmels 8-Bit-AVR-Familie. Dazu kommen ein paar Komponenten zur Stromversorgung und eine serielle Schnittstelle. Beim Mega ist sie als USB-Interface ausgelegt. Hierüber kommuniziert der Mega mit dem PC.

So schaut der Mega aus:

2014-11-02 08.32.59.jpg
(Zum Glück habe ich noch einen liegen und musste nicht mein Gebastel auseinanderfrickeln :cool2:)

Man kann an der linken Seite unten die Buchse für den Spannungsanschluss und darüber den USB-Anschluss erkennen. Rund herum sind die Steckanschlüsse für die ganzen Ein- und Ausgänge.
Außerdem erkennt man noch ganz gut den Reset-Taster und den Prozessor.

Ein paar technische Daten liefere ich euch auch.

· Microcontroller: ATMega2560

· Betriebsspannung: 5 V

· Eingangsspannung (empfohlen): 7-12 V

· Eingangsspannung (maximal): 6-20 V

· Digitale I/O-Pins: 54 (14 für PWM-Output nutzbar)

· Analoge Eingangs-Pins: 16

· Gleichstrom je I/O-Pin: 40 mA

· Gleichstrom am 3,3-V-Pin: 50 mA

· Flash-Speicher: 256 KB von denen 8 KB vom Bootloader genutzt werden

· SRAM: 8 KB

· EEPROM: 4 KB

· Taktung: 16 MHz

Da auf der Hauptplatine eigentlich so gut wie nichts drauf ist gibt es verschiedenste Funktionen als so genannte Shields. Motortreiber, Bluetooth, WiFi, Ethernet, Zusatzspeicher und, wie hier im Projekt verbaut, Uhrenbausteine, um nur mal einige zu nennen.



LG
Lars
 
Das DCF77-Modul hab ich für 5 Euro, die Luftpumpe und Magnetventile für etwa 2-3 Euro bei Pollin bestellt. Hast aber schon recht mit dem DCF77, die Dinger halte ich auch für “leicht“ überteuert. Alternativ kann man auch eine Funkuhr zerlegen, ist dann mit etwas Arbeit verbunden.
 
Danke, Anton!
Das DCF-Modul habe ich nun gefunden. Eventuell noch eine Option!

LG
Lars
 
Für den Fall hätte ich eher an ein WiFi - Shield gedacht. Damit könnte man Daten auf einen Server bzw. Cloudspeicher schicken. Ober einen Arduino mit Webserver, der dann auch Mails verschicken könnte. Da sind die Möglichkeiten ja unbegrenzt. GSM Modul benötigt ja wieder eine Simkarte. WLAN ist ja oft vorhanden. Aber das habe ich für mich mehr oder weniger abgehakt.

LG
Lars
 
Ja gibt ja beide Varianten.
Zu deinem Ph und Leitwert habe ich bis dato auch noch nichts passendes gefunden.

Werde meins auch bald umbauen müssen.
Aktuell 2 Becken verbunden. Allerdings stehen ende des Monats 6 Becken an der Stelle. Evtl werde ich dann auch auf ein großes Touchscreen umsteigen.
 
Hallo,

macht hier jemand mit?
Falls ja, poste ich hier mal eine Einkaufsliste für den Anfang.
Die ein oder andere Komponente kommt noch hinzu, wie z.B. ein Motorshield, das habe ich aber selber noch nicht endgültig ausgesucht.

  • Netzteil mit 5V und 12V z.b. aus dem beliebigen Auktionshaus für 14,95€ zu finden unter dem Suchbegriff 'Netzteil 12V 1.5A 5V 2A f. externe Festplatte TR-05HDD AD-1215 MR750S 6Pin #U5L'
  • Arduino Mega 2560 R3 mit 3.2'' TFT Touchdisplay und Shield z.B. hier für 23,67€
  • Echtzeituhrenbaustein RTC DS3231 AT24C32 IIC z.B. hier für 1,49€
  • Wasserdichte Digital Temperatursensor Probe DS18B20z.B. aus dem beliebigen Auktionshaus für 1€ zu finden unter dem Suchbegriff 'Neu Wasserdicht Digital Thermal Arduino Sensor Temperatursensor Probe DS18B20 1M'
  • 80 Jumperleitungen z.b. aus dem beliebigen Auktionshaus für 1,46€ pro 40Stck zu finden unter dem Suchbegriff 'Female 1P-1P Jumper Dupont Kabel 40 Stk.'
  • Breadboard für den experimentellen Aufbau. Z.B. aus dem beliebigen Auktionshaus für 5,59€ zu finden unter dem Suchbegriff 'MB102 MB-830 Steckbrett Breadboard + 65 Drahtbrücken + 3.3V/ 5V Netzteil-Adapter', hier schon im Set mit einigen Drahtbrücken.
Und noch ein paar Cent-Artikel:
  • mindestens einen Widerstand 4.700 Ohm
  • mindestens einen Widerstand 220 Ohm
  • Ein paar Standard LED zum experimentieren
  • Drahtbrücken
LG
Lars
 
Moin Daniel,

wie so immer hilft technisches Verständnis. Der Zusammenbau ist recht einfach. Wird anfangs alles nur gesteckt. Also Lego-Technik-Niveau. Wenn es dann ans programmieren geht müsste man sich schon ein wenig damit beschäftigen.
Man kann hier natürlich auch den Quellcode posten, aber wenn es zu problemen kommt, sollte man zumindest verstehen, worum es geht.

Wenn alles fertig ist, soll es natürlich aus dem Experimentalstatus in ein fertiges System überführt werden.
Dazu sollte man zumindest Leitungsverbindungen löten können. Einbauen in ein Gehäuse muss man dann natürlich auch, aber da gibt es ja unterschiedlichste Ansprüche.

Alles in allem... Ran an den Speck!

LG
Lars
 
Hi Lars,

Danke für deine schnelle Antwort.

Wenn es dann ans programmieren geht müsste man sich schon ein wenig damit beschäftigen.
Man kann hier natürlich auch den Quellcode posten, aber wenn es zu problemen kommt, sollte man zumindest verstehen, worum es geht.

Da wird das Problem liegen, davon verstehe ich absolut Null.Bin froh eine SMS schreiben zu können.:hurray:

Wenn alles fertig ist, soll es natürlich aus dem Experimentalstatus in ein fertiges System überführt werden.
Dazu sollte man zumindest Leitungsverbindungen löten können. Einbauen in ein Gehäuse muss man dann natürlich auch, aber da gibt es ja unterschiedlichste Ansprüche.

Handwerklich sehe ich da keine Probleme, auch beim Löten.

Arduino ist ein quelloffenes OpenSource Projekt. Man bekommt die Boards und auch die Sensorik sehr günstig. Man findest etliche Programmiertutorials im Net.

Werde das Thema mal noch weiter verfolgen, und etwas im Netz nach den Tutorials schauen ob ich das überhaupt hinbekommen würde.
 
Werde das Thema mal noch weiter verfolgen, und etwas im Netz nach den Tutorials schauen ob ich das überhaupt hinbekommen würde.

Schau mal z.B. bei Anrduinospielwiese vorbei. Unter Experimente & Projekte kannst Du den Einstieg in die Programmierung sehen. Die Programmiersprache ist sehr an C angelehnt.

LG
Lars
 
Zurück
Oben