In diesem Projekt wird die Elektronik für ein Hydroponik-System vorgestellt. Die Elektronik kümmert sich darum, dass die Pflanzenlampe zur richtigen Zeit ein- und ausgeschaltet wird. Über Sensoren werden die Leitfähigkeit des Wassers, die Temperatur des Wassers, Lufttemperatur und Luftfeuchtigkeit sowie die Helligkeit gemessen. In regelmäßigen Abständen wird eine Pumpe für eine bestimmte Zeit eingeschaltet, um das Wasser umzuwälzen und mit Sauerstoff zu versorgen. Für ein gutes Wachstum ist vor allem die richtige Dosierung des Düngers und die Beleuchtung wichtig. Die Hydroponik-Methode ist für Kräuter und Salate sehr gut geeignet. Aber auch kleine Tomaten und Peperoni funktionieren gut. Ein anderer Einsatzbereich ist die Anzucht von Gemüsepflanzen für den Garten.
Ausführliche Information zum Thema Hydroponik erhält man bei
https://pflanzenfabrik.de/hydroponik/grundlagen/
Der Beitrag ist in zwei Teile gegliedert. Im ersten Teil wird die Schaltung und die Software beschrieben. Im zweiten Teil wird gezeigt, wie ein handelsübliches Hydroponik-System mit der hier vorgestellten Elektronik erweitert und verbessert werden kann.
Benötigte Bauteile
Anzahl | Bauteil | Anmerkung |
---|---|---|
1 |
|
|
1 |
|
|
1 |
|
|
1 |
|
|
1 |
|
|
1 |
optional |
|
1 |
optional |
|
1 |
|
Schaltung
Verbindungsliste
Modul |
Pin |
Modul |
Pin |
---|---|---|---|
StepDown Wandler |
IN+ |
Versorgungsspannung |
+7 bis +25V |
|
IN- |
|
GND |
|
OUT+ |
D1-Mini |
5V |
|
OUT- |
|
G |
TDS-Meter |
- |
|
G |
|
+ |
|
3V3 |
|
A |
|
A0 |
DS18B20 Temperatursensor |
Schwarz |
|
G |
|
Rot |
|
3V3 |
|
Gelb |
|
D4 |
2-Relais Modul |
GND |
|
G |
|
In1 |
|
D6 |
|
In2 |
|
D5 |
|
VCC |
|
5V |
HTU21 Klima Sensor |
Vin |
|
3V3 |
|
GND |
|
G |
|
SCL |
|
D1 |
|
SDA |
|
D2 |
BH1750 Helligkeitssensor |
VCC |
|
3V3 |
|
GND |
|
G |
|
SCL |
|
D1 |
|
SDA |
|
D2 |
Statt der direkten Verbindungen zum D1-Mini kann auch eine Verdrahtung über eine Lochrasterplatine oder über eine gedruckte Schaltung erfolgen.
Die Abbildung zeigt links die Verdrahtung von der Unterseite und rechts die Bestückung von der Oberseite.
WICHTIG!
Ehe der StepDown-Wandler mit dem D1-Mini verbunden wird, muss mit dem Potentiometer die Ausgangsspannung auf 5V eingestellt werden!
Software
Zur besseren Übersicht wurde der Sketch in mehrere Einheiten aufgeteilt. Dazu wird eine Funktion genutzt, die die Arduino IDE zur Verfügung stellt. Gibt es neben dem Hauptsketch, der denselben Namen wie der Ordner hat, noch weitere „.ino“ oder „.h“ Dateien im selben Ordner, so werden diese vom Compiler in alphabetischer Reihenfolge an den Hauptsketch angehängt.
Den gesamte Code gibt es zum Herunterladen.
Die ZIP-Datei enthält den Ordner mit allen zugehörigen Dateien Nach dem Entpacken kann der Sketch hydroponik.ino in der Arduino IDE zum Bearbeiten geöffnet werden. Im Folgenden werden die einzelnen Teile kurz beschrieben. Eine detaillierte Beschreibung finden Sie als Kommentare im Code.
-
ino: Das ist der Hauptsketch. Es werden Compiler-Definitionen und globale Variablen angelegt. Folgende Funktionen werden definiert.
- setupTime(): Die Real-Time-Clock wird eingestellt und mit dem NTP-Server synchronisiert.
- displayValues(): Sensordaten werden aktualisiert und auf die serielle Schnittstelle ausgegeben.
- readConfig(): Die Konfigurationsdaten werden aus dem Flash-Speicher zum einfacheren Zugriff in globale Variablen eingelesen.
- writeRelais(): Die Ausgangspins werden auf den Zustand der globalen Variablen light_on und pump_on Wenn ONISLOW definiert ist,wird für den Zustand „true“ „LOW“ ausgegeben, sonst „HIGH“.
- setup(): Es werden die serielle Schnittstelle und die verschiedenen Sensoren initialisiert. Dann wird versucht, eine Verbindung mit dem lokalen WLAN herzustellen. War das erfolgreich, werden die interne Uhr und der UDP-Server gestartet. Zum Abschluss werden die Sensoren eingelesen.
- loop(): Es wird auf Requests für OTA und für den Webserver geprüft. Vom TDS-Meter Modul, das die Leitfähigkeit des Wassers ermittelt, wird der aktuelle Wert gelesen. Jede Minute wird die Steuerung für die Relais aufgerufen. Einmal pro Stunde wird die Interne Uhr mit dem Zeitserver synchronisiert. Immer wenn das Updateintervall abgelaufen ist, werden die Messwerte der Sensoren eingelesen. Zum Abschluss wird der UDP-Server auf eingegangene Pakete geprüft. Wurde ein Paket mit der Nachricht „Hydroponik identify“ empfangen, so wird der Hostname und die lokale IP-Adresse an den Anfragenden gesendet. Damit ist es möglich, über einen UDP-Broadcast im WLAN aktive Hydroponik-Systeme zu finden.
-
ino: Diese Einheit steuert die Kommunikation mit dem Sensor HTU21, der zur Messung der Umgebungstemperatur und der Luftfeuchtigkeit verwendet wird.
- setupHTU(): Startet den Sensor.
- getKlima(): Speichert den aktuellen Wert der Temperatur in die globale Variable ktemp und den Wert der Luftfeuchtigkeit in die globale Variable khumd.
-
ino: Diese Einheit dient zum Einlesen der Messwerte des TDS-Meter Moduls.
- tds_loop(): Alle 40 Millisekunden wird die Spannung am Analogeingang gemessen und in einer Liste gespeichert. Alle 100 ms wir dann aus allen Werten in der Liste ein Mittelwert gebildet. Mit der vom Hersteller des Moduls vorgegebenen Formel tds = (133.42 * v³ - 255.86 * v² + 857.39 * v)/2 wird die Menge der im Wasser gelösten Stoffe ermittelt. Die gemessene Spannung ist proportional zur Leitfähigkeit im Wasser. Der Faktor ECCALIBRATION wurde experimentell ermittelt. Er dient zur Umrechnung der gemessenen Spannung in Millisiemens.
- int getMedianNum(int bArray[], int iFilterLen): Ermittelt den Mittelwert der Messwerte in einer Liste. Dazu werden zuerst die Messwerte nach ihrer Größe sortiert. Dann wird der Wert in der Mitte der Liste zurückgegeben.
-
ino: Diese Einheit steuert die Kommunikation mit dem Sensor BH1750, der zur Messung der Helligkeit verwendet wird.
- setupBH(): Initialisiert den Sensor.
- uint16_t getLux(): Liefert die Helligkeit in Lux.
-
ino: Diese Einheit ist für die zeitabhängige Steuerung der Relais zuständig.
-
control_loop(uint16_t minutes): Diese Funktion wird jede Minute aufgerufen. Der Parameter „minutes“ enthält die aktuelle Minute.
Ist die Lampe aus und liegt die aktuelle Minute im Zeitfenster, in dem die Lampe eingeschaltet sein soll, wird die Lampe eingeschaltet. Die verbleibende Restzeit wird berechnet.
Ist die Lampe eingeschaltet, wird die Restzeit um eins vermindert. Erreicht die Restzeit 0, so wird die Lampe ausgeschaltet.
Ist die Pumpe aus und entspricht die aktuelle Minute dem Beginn eines Intervalls, so wird die Pumpe eingeschaltet. Die verbleibende Restzeit wird auf die Einschaltdauer gesetzt.
Ist die Pumpe eingeschaltet wird die Restzeit um eins vermindert. Erreicht die Restzeit 0, so wird die Pumpe ausgeschaltet.
-
control_loop(uint16_t minutes): Diese Funktion wird jede Minute aufgerufen. Der Parameter „minutes“ enthält die aktuelle Minute.
-
ino: Diese Einheit steuert die Kommunikation mit dem Temperatursensor ds18b20, der zur Messung der Wassertemperatur verwendet wird. Diese Temperatur wird auch zur Temperaturkompensation im TDS-Meter Modul verwendet.
- printAddress(byte address[8]): Diese Funktion gibt die übergebene acht Byte Adresse im Hexadezimalformat auf die serielle Schnittstelle aus.
- setup_temp(): Auf dem OneWire Bus wird nach Geräten gesucht. Wurden ein oder mehrere Geräte gefunden, so wird die erste Adresse gespeichert. Von dieser Adresse werden dann die Messwerte eingelesen.
- readTemperature(): Es wird ein Messwert vom Sensor eingelesen und in der globalen Variablen „wtemp“ gespeichert.
- h: Diese Einheit definiert den HTML-Code, den der Webserver als Antwort auf den Root-Request liefert. Das Befüllen mit Daten und die Interaktion mit dem Anwender erfolgt dynamisch über JavaScript. Es werden dabei nur die Datenwerte übertragen und der Inhalt der Webseite aktualisiert. Diese Vorgangsweise ermöglicht auch die Erstellung einer Anwendung, die nur die aktuellen Daten vom Webserver beziehen möchte.
-
ino: Diese Einheit sorgt dafür, dass die Software auch über das Netzwerk aktualisiert werden kann. Das ist besonders dann nützlich, wenn eine Aktualisierung über USB-Kabel am fertigen Gerät nur erschwert möglich ist.
- setup_ota(): Der Hostname und das Passwort „aquaupdate“ werden gesetzt und Callback-Funktionen registriert. Dann wird der OTA-Server gestartet.
- ota_onStart(): Wird zu Beginn der Datenübertragung aufgerufen. Wird hier nicht verwendet.
- ota_onEnd(): Wird am Ende der Datenübertragung aufgerufen. Wird hier nicht verwendet.
- ota_onProgress(): Wird während der Datenübertragung aufgerufen. Wird hier nicht verwendet.
- ota_onError): Wird beim Auftreten eines Fehlers aufgerufen. Der Fehler wird auf die serielle Schnittstelle ausgegeben.
-
ino: diese Einheit behandelt die Bearbeitung von HTML-Anfragen.
- setup_webserver(): Der Webserver wird vorbereitet. Es werden alle Adressen registriert, auf die der Webserver reagieren soll. Alle Adressen, mit denen Daten gelesen oder gesendet werden, beginnen mit „/cmd/“.
- webserver_loop(): Diese Funktion muss in der Hauptschleife aufgerufen werden, damit Anfragen beantwortet werden.
- handleRoot(): Der Webserver liefert die Basisseite als HTML-Code. Ist noch keine Verbindung mit dem lokalen WLAN erfolgt, wird eine vereinfachte Webseite geliefert, die nur die Eingaben der Zugangsdaten ermöglicht. Damit kann die Erstkonfiguration vorgenommen werden.
- setAccessData(): Adresse „/cmd/access“. Der Webserver erwartet Parameter mit Zugangsdaten. Diese Daten werden dann in die entsprechenden globalen Variablen und in den Präferenzen abgespeichert. Die Anfrage wird mit „OK“ beantwortet.
-
getAccessData(): Adresse „/cmd/getaccess“. Der Webserver antwortet mit den Zugriffsdaten. Die einzelnen Werte werden durch Zeilenvorschub getrennt. Es sind diese:
SSID die SSID für das lokale WLAN
PKEY der PKEY zum Anmelden ans WLAN
NTP URL des Zeitservers
Hostname Hostname für das Gerät - setConfigData(): Adresse „/cmd/setconf“. Der Webserver erwartet Parameter mit Konfigurationsdaten. Diese Daten werden dann in den entsprechenden globalen Variablen und in den Präferenzen abgespeichert. Die Anfrage wird mit „OK“ beantwortet.
-
getConfigData(): Adresse „/cmd/getconf“. Der Webserver antwortet mit den Konfigurationsdaten. Die einzelnen Werte werden durch Zeilenvorschub getrennt. Es sind diese:
start_time Startzeit für die Lampe im Format „hh:mm“
duration Einschaltdauer für die Lampe in Stunden
ec_min Minimalwert für den Sollwert der Leitfähigkeit
ec_max Maximalwert für den Sollwert der Leitfähigkeit
interval Intervall zum Einschalten der Pumpe in Minuten
pump_duration Einschaltdauer für die Pumpe in Minuten
logfile Name für ein Log-File. (Derzeit nicht verwendet)
date Datum der Aussaat im Format „yyyy-mm-dd“ -
getValues(): Adresse „/cmd/getvalues“. Der Webserver antwortet mit den aktuellen Sensordaten. Die einzelnen Werte werden durch Zeilenvorschub getrennt. Es sind diese:
dat Aktuelles Datum im Format „yyyy-mm-dd“.
tim Aktuelle Uhrzeit im Format „hh:mm“.
ecValue Aktueller Wert der Leitfähigkeit in mS.
tdsValue Aktuelle Menge der gelösten Stoffe in ppm.
wtemp Aktuelle Wassertemperatur in °C
ktemp Aktuelle Umgebungstemperatur in °C
khumd Aktuelle Luftfeuchtigkeit in %
light Aktuelle Helligkeit in Lux
pump_on Zustand der Pumpe ein oder aus.
light_on Zustand der Lampe ein oder aus.
ec_min Minimalwert der Leitfähigkeit als Fließkommazahl.
ec_max Maximalwert der Leitfähigkeit als Fließkommazahl.
ecValue Aktueller Wert der Leitfähigkeit als Fließkommazahl.
d Tage seit der Aussaat.
Außer bei den drei Leitfähigkeitswerten, wird immer die Einheit angehängt, sodass eine direkte Anzeige der Strings erfolgen kann. - switchOnOff(): Adresse „/cmd/switch“. Der Webserver erwartet Parameter. Gibt es einen Parameter mit dem Namen „light“ und einen Parameter mit dem Namen „lstate“, so wird die Lampe entweder ein- (lstate = 1) oder ausgeschaltet (lstate = 0). Für die Pumpe gilt dasselbe mit den Parametern „pump“ und „pstate“. Die Anfrage wird mit „OK“ beantwortet.
- setStart(): Das Datum für die Aussaat wird auf das aktuelle Datum gesetzt. Die Anfrage wird wie bei getConfig() mit den Konfigurationsdaten beantwortet.
-
ino: Diese Einheit ist für die Verbindung ins lokale WLAN zuständig.
- boolean initWiFi(String ssid, String pkey): Mit den als Parameter angegebenen Zugangsdaten wird versucht eine Verbindung herzustellen. Gelingt dies nicht, wird der ESP8266 als Access-Point mit der SSID „aquaponikConf“ gestartet. Es kann dann eine Verbindung mit einem Smartphone hergestellt werden. Über diese Verbindung kann unter der URL „http://192.168.4.1“ mit einem Browser die Konfiguration der Zugangsdaten vorgenommen werden. Rückgabewert ist der Zustand der Verbindung.
Bedienung:
Bei der ersten Inbetriebnahme sind noch keine Zugangsdaten hinterlegt und das Gerät kann keine Verbindung herstellen. Es wird daher ein Access-Point mit der SSID „aquaponikConf“ gestartet. Nun kann über ein WLAN-fähiges Gerät eine Verbindung hergestellt werden. Über die URL http://192.168.4.1 kann mittels Browser die Konfiguration der Zugangsdaten vorgenommen werden.
Nachdem SSID, PKEY und ein beliebiger Hostname eingegeben wurden, kann der Knopf „Neustart“ geklickt werden. Dadurch werden die Zugangsdaten gespeichert und das Gerät neu gestartet. Nach dem Neustart sollte sich das Gerät mit dem WLAN verbinden. Für die weitere Konfiguration und Bedienung kann nun entweder ein Browser oder die Android App genutzt werden.
Browser:
Um die Interface-Seite mit einem Browser aufzurufen, kann einfach der gewählte Hostname verwendet werden. Die URL lautet also http://<hostname>. Es erscheint im Browser die Webseite zur Bedienung und Konfiguration des Systems.
Die Webseite zeigt die aktuelle Uhrzeit und die Sensorwerte. Es wird auch angezeigt, wie viele Tage seit der Aussaat vergangen sind. Mit den beiden Checkboxen kann man die Lampe und die Pumpe ein- und ausschalten. Mit dem Button „Startdatum setzen“ wird das Datum der Aussaat auf heute gesetzt. Die Bereiche „Konfiguration“ und „Zusatzdaten“ können expandiert werden, um ein Verändern der Einstellungen zu ermöglichen.
Im Bereich Konfiguration sind folgende Einstellungen möglich:
Einschaltzeit und Einschaltdauer für die Lampe. Ein Minimal- und ein Maximalwert für die Leitfähigkeit. Ist die Leitfähigkeit kleiner als der Minimalwert, wird der Wert in Hellblau angezeigt. Das bedeutet zu wenig Dünger. Ist die Leitfähigkeit größer als der Maximalwert, wird der Wert in Magenta angezeigt. Das bedeutet zu viel Dünger. Ist die Leitfähigkeit innerhalb der Grenzwerte, wird der Wert in Hellgrün angezeigt. Das bedeutet ausreichend Dünger.
Für die Pumpe kann ein Intervall und die Laufzeit eingestellt werden. Das Updateintervall gibt an in welchen Zeitabständen die Sensoren gelesen und die Messwerte aktualisiert werden. Der Name für ein Logfile wird aktuell nicht verwendet. Das Startdatum ist das Datum der Aussaat und wird zur Anzeige der vergangenen Tage herangezogen. Mit dem Button „Speichern“, werden die Änderungen an das Gerät übertragen und dort dauerhaft gespeichert. Mit dem Button „Rückgängig“ werden die Werte neu vom Gerät geladen und eventuelle Änderungen werden rückgängig gemacht.
Im Bereich Zugangsdaten können die Zugangsdaten, der Hostname und die URL des Zeitservers geändert werden. Mit dem Button „Speichern“ werden die Änderungen an das Gerät gesendet und dort dauerhaft gespeichert. Mit dem Button „Neustart“ wird das Gerät neu gestartet.
Android App:
Diese App steht zum Download gratis zur Verfügung.
Sie ermöglicht es auf einfache Weise, mehrere Hydroponik-Systeme zu überwachen. Nach dem Start wird ein UDP-Broadcast gesendet, um Hydroponik-Systeme im Netzwerk zu finden. Empfängt ein Hydroponik-System so eine Anfrage, so antwortet es mit der IP-Adresse und dem Hostnamen.
Nach dem Start erscheinen alle gefundenen Systeme. Sollte das gewünschte System nicht in der Liste sein, kann über den Button „System suchen“ eine neue Suche gestartet werden. Es können maximal vier Systeme verwaltet werden. Um mit einem der angezeigten Systeme zu arbeiten, tippt man einfach auf das entsprechende Symbol. Es wird die Seite mit den Messwerten angezeigt. Mit den beiden Pfeilen oben kann man zwischen den Seiten navigieren. Die Seiten sind im Aufbau und in der Funktion identisch mit den Browserseiten.
Umbau eines bestehenden Hydroponik Systems
Es gibt im Handel zahlreiche Hydroponik-Systeme. Die meisten davon haben zwar einen Timer für die Beleuchtung, der aber schlecht bedienbar ist. Der Betrieb der eingebauten Pumpe lässt sich nicht einstellen. Außerdem gibt es keine Sensoren, um Düngung und Umgebungsbedingungen zu erfassen. Ich habe ein preiswertes Modell gekauft und dann mit der hier vorgestellten Elektronik erweitert.
Benötigte Bauteile
Anzahl |
Bauteil |
Anmerkung |
---|---|---|
1 |
|
|
1 |
|
|
1 |
|
|
1 |
Aus dem 3D Drucker |
|
1 |
Aus dem 3D Drucker |
|
1 |
Aus dem 3D Drucker |
|
1 |
Aus dem 3D Drucker |
|
18 |
Zum Befestigen der Module |
|
4 |
Blechschrauben 2,2 x 10 mm |
Für den Deckel |
WICHTIGER HINWEIS!
Wenn Sie die folgenden Änderungen am Gerät vornehmen, verlieren Sie jeden Garantieanspruch!
Erster Schritt: Entfernung der vorhandenen Elektronik. Dazu muss erst die Schraube oben am Ende der Teleskopsäule entfernt werden.
Nun kann der Oberteil mit den LEDs abgenommen werden. Die Teleskopsäule schiebt man am besten ganz zusammen, um möglichst viel freies Kabel zu erhalten. Den Oberteil dreht man um, sodass die LEDs nach oben zeigen.
Nun kann man die acht Schrauben lösen und die ALU-Platte mit den LEDs abnehmen. Darunter befindet sich die Elektronik.
Nachdem die zwei Schrauben bei der Platine entfernt wurden, können die Anschlüsse abgelötet werden. Für das Ansteuern der Lampe muss nun der rote Draht der Lampe mit dem roten Draht des Kabels und der schwarze Draht der Lampe mit dem weißen Draht des Kabels verbunden werden. Am besten sichert man die Verbindung mit einem Schrumpfschlauch.
Nun das Kabel wieder in den Schlitz im Kunststoffteil einlegen und die ALU-Platte mit den acht Schrauben befestigen. Den Oberteil wieder umdrehen, auf das Teleskoprohr aufstecken und mit der Schraube fixieren.
An der Unterseite beim Anschluss für das Netzteil ist eine Abdeckung, die entfernt werden muss. Beide Buchsen werden vom Kabel abgelötet. Der rote und der weiße Draht müssen verlängert werden. Auch hier sollte die Lötstelle mit Schrumpfschlauch gesichert werden. Der rote Draht ist der Anschluss für +12V.
Zum Austausch der Pumpe müssen die beiden Schrauben an der Pumpenabdeckung entfernt werden. Dann kann die Pumpe einfach ausgetauscht werden. Die Pumpe wird am Boden mit Saugnäpfen gehalten.
Nun kann der Einbau der Elektronik erfolgen. Nachdem die vier Teile (Halterung links, Halterung rechts, Gerätebox, und Deckel) mit einem 3D-Drucker hergestellt wurden, werden die beiden Halterungen mit der Gerätebox verklebt. Dazu kann man die Halterungen über die Bohrlöcher ausrichten. Mit Schrauben durch diese Löcher können die Teile fixiert werden, bis der Kleber trocken ist.
Das Gehäuse wird mit den Schlitzen der Halterungen in die Wand des Wasserbeckens eingehängt und dann mit zwei Schrauben an Stelle der entfernten Abdeckung festgeschraubt. Zum Durchführen der Leitungen müssen Öffnungen in den Rand des Wasserbeckens geschnitten werden.
In die Halterungen wird der Helligkeitssensor geschraubt. Die Leitungen für die Pumpe, den Helligkeitssensor, den Wassertemperatur-Sensor und den Leitfähigkeitssensor können durch die Öffnungen oben in die Gerätebox geführt werden. Der Sensor für die Leitfähigkeit wird nach dem Einbau in die Halterung gesteckt. Der wasserdichte Temperatursensor wird einfach in die Wasserwanne gelegt.
In der Gerätebox sind Befestigungsfüße für die einzelnen Module vorhanden. Diese werden, wie die Abbildung zeigt, eingebaut. Der Klimasensor HTU21 wird rechts über der Bohrung angebracht. Die Buchse für die Versorgungsspannung wird unten links in die Wand geschraubt. Zum Abschluss erfolgt die Verdrahtung.
Die komplette Elektronik kann nun in den Rand des Wasserbeckens eingehängt und festgeschraubt werden. Nach einer Funktionsprüfung wird der Deckel aufgesetzt und verschraubt.
Viel Spass beim Pflanzen und Ernten.
4 comentarios
Gerald Lechner
@Lukas: Das ist kein Potentiometer sondern einfach die Buchse für das Netzteil. Das kann man am Foto schlecht erkennen. Der Stepdown Wandler verträgt bis zu 25V.
Lukas
Hallo,
auf dem Schaltbild sieht man einen Potentiometer oberhalb des Umwandlers. Ist dieser da, um die Eingangsspannung zu regulieren?
Lisa C.
Hallo,
vielen Dank für diese äußerst nützlichen Informationen.
@Roland M. In der Schule wird so ein Projekt durchaus ausgeführt und Websites wie diese helfe uns sehr bei der Arbeit. :)
Roland M.
Hallo,
guter Beitrag, ich frage mich nur wer sowas nachbaut. Das ist schon sehr speziell und individuell.