Der Flowgrow Aquacomp

MajorMadness

Active Member
Also ich find dein Becken geil, Echt stimmig mit den Pflanzen...

Zu dem LM2596:
Ja die Chinesen Produzieren den in Massen zu billigpreisen. Für mich hat er aber einen entscheidenen Nachteil: Nicht für LED Optimiert, zu hoher drop... Bei 30V eingang liefern die Max 28V, es wird aber oft geraten die mit Maximal 24/26 zu betreiben.

Ich persöhnlich denke das es besser ist die dinger zu nehmen die auch für eine Anwendung gedacht sind. Preislich sind die natürlich unschlagbar, doch ich gehe bei meiner Planung in die Richtung "echte" LED treiber zu verwenden, ohne löten und ablöten von teilen. Dafür muss man dann leider in kauf nehmen das die einen festen ausgansstrom haben, aber wiederrum sparsammer mit Energie und Wärme umgehen.

Fertige folientastaturen kann man leider nicht verwenden. Die sind "interessant" angeschlossen und belegen zu viele pins. Detlef ist mit mir an ner lösung dran... Stay patient :kaffee1:
 

woldeu

New Member
Hallo Moritz

Ich habe die LM2596 für eine externe Beleuchtung für 12 V LED´s direkt an ein 12 Volt Schaltnetzteil
angeschlossen.Die Spannung am Netzteil auf 12,5 V eingestellt. 900 mA am LM eigestellt.
Der Verlust ist zu vernachlässigen.
Die fertigen Stromregler mußt du ja auch auf Platine löten und es gibt sie nicht für alle Ströme (350mA)
wird oft gebraucht.

MFG Wolfgang
 

MajorMadness

Active Member
Ich Plane 3 Verschiedene Treiber Chips mit unterschiedlichen Configurationen. Minimum wird sein (laut plan) 100mA, dann fast natlos hoch bis 1,6A (mehr halte Ich vom LED Watt/wärme Verbrauch nix von. Selbst wenn LED's 3A können ist alles über 2A Nonsins). Von Volt ist das niedtigste LED Spannung + 0,8 (also 3,5V) und das Höchste 60V. Dazwischen muss man sich halt anhand einer Tabelle raussuchen welches Modul das passende ist...
Mir ist bei der Treiber geschichte genau wie bei der Platine wichtig das es günstig ist (Ich strebe <4€ an), sinnvoll aufgebaut (Direkt einsetzbar in verbindung mit Controller Platine, kein Modivizieren bestehender Bauteile), für Laien verständlich und ohne Elektrokenntnisse verwendbar. (An dieser Stelle dann nochmal der Hinweis: Auch wenn etwas für nicht Elektroniker einfach einzubauen ist, so sollte es doch nur von Fachfrauen gemacht werden und/oder von diesen Beaufsichtigt werden. Garnelen mögen auch keine Nebelmaschinen über Ihren Köpfen!)
 

woldeu

New Member
Hallo

Ich habe mir überlegt das Eure automatische Düngung garnicht so schlecht ist.
Habe heute 2 Drucker ausgeschlachtet.Die Schlauchpumpen zum Druckkopfreinigen
sind gut zum düngen zu benutzen.Ich habe sie vorsorglich mal aufgehoben.

An Moritz,läuft alles gut

MFG Wolfgang
 

MajorMadness

Active Member
Die Idee ist mir ja noch garnicht gekommen... Ich glaub ich zertrete gleich erstmal das alte ding im Keller. Hat es endlich nen Grund warum ich den seit 4 Jahren im Keller lagere. :lol:
 

Skibbie

Member
Wie siehts eigentlich gerade aus, also sowohl softwaretechnisch als auch an Hardware zwecks Lieferung. Kannst du sagen, wann wir in etwa unsere Pakete von dir bekommen? Evtl. zu Ostern? :paket: --- aber jetzt keine Panik, ich hab Zeit. :kaffee1:

Moritz hast du eigentlich E-Technik studiert oder learning by doing ? Wird ja langsam immer komplexer. :thumbs:
 

MajorMadness

Active Member
Also:
Hardware warte Ich auf die Platinen und paar Arduinos(3 beim Zoll, schon wieder 3 in China bestellt gestern), Relays (Die hängen beim Zoll), sonst ist alles da.

Menü lässt grade zu wünschen übrig, da finde Ich keinen Einstieg der mir nicht meinen Speicher weg frisst, hab aber in der Zwischenzeit einiges umgebaut um Ram zu schonen. Wer auf Display Programmierung und änderung der Werte am Display verzichten kann, der hat jetzt schon ne fertige Steuerung. :lol: Da Ich 3 Tage Krank geschrieben bin denke Ich aber das es diese Woche was gibt...

Gelernt habe Ich Software Entwicklung und dabei auch E-Technik gehabt. War aber für mich immer nur frei nach dem Motto kleine Widerstände werden ignoriert, ein großer Widerstand ist eine Revolution und wird blutig niedergeschlagen... :pfeifen:
Ich hab halt nen gutes Grundverständniss für sowas und mag Dinge die logisch aufgebaut sind wie Schaltungen und Programmcode (was evt erklärt warum ich 85% der Menschheit nicht mag :lol: ). Fast alle von diesem Projekt habe Ich mir selber beigebracht, ausser C/C++, das kann ich von der Arbeit her.
 

Skibbie

Member
MajorMadness":1hsi48wy schrieb:
(3 beim Zoll, schon wieder 3 in China bestellt gestern), Relays (Die hängen beim Zoll)
Wie sieht das überhaupt aus, zahlst du dafür etwas oder ist das zu wenig? Ich hab immer Angst dass ich da hin rennen muss, und zusätzlich blechen. Deshalb hab ich bis jetzt immer versucht unter 20 euro zu bleiben...

MajorMadness":1hsi48wy schrieb:
Wer auf Display Programmierung und änderung der Werte am Display verzichten kann, der hat jetzt schon ne fertige Steuerung.
Ok ... kann ich - solange man eingestellte Werte sehen kann, wäre es mir vorerst egal.

MajorMadness":1hsi48wy schrieb:
Da Ich 3 Tage Krank geschrieben bin denke Ich aber das es diese Woche was gibt...
:flirt:

MajorMadness":1hsi48wy schrieb:
Fast alle von diesem Projekt habe Ich mir selber beigebracht
Hut ab - wirklich eine feine Sache. Ich bin da immer recht träge und scheue da immer das anfangs hohe Lehrgeld :D wobei ich bei diesem Projekt auch gerne alles selbst verstehen und erweitern können möchte - nur dazu brauche ich immer etwas zum anfassen. Ich bin übrigens gerade frisch im 3. Semester E-Technik ... es reimt sich so langsam alles zusammen - aber vieles fehlt auch noch. :D
 

MajorMadness

Active Member
Skibbie":231bf3rz schrieb:
Wie sieht das überhaupt aus, zahlst du dafür etwas oder ist das zu wenig? Ich hab immer Angst dass ich da hin rennen muss, und zusätzlich blechen. Deshalb hab ich bis jetzt immer versucht unter 20 euro zu bleiben...
Wenn ich glück habe Zahle ich keinen, wenn Pech dann schon... Bei den Mengen die Ich im Moment einkaufe rechne Ich immer nen kleinen %-Satz mit drauf für wenn Ich Pech habe. So Zahlt also eigentlich der dessen Bestellung durch geht ein bisschen zuviel, der wo ne Bestellung beim Zoll hängen bleibt nen bisschen weniger. In der Summe gesehen, nur von den Protoypen sieht es momentan so aus als ob nur Ich Minus mache. :-/ Insgesammt aber kommt es mich immer noch billiger als wenn Ich nur 2 Platinen für mich bestellt hätte...

Skibbie":231bf3rz schrieb:
solange man eingestellte Werte sehen kann, wäre es mir vorerst egal.
Kannste leider noch nicht :pfeifen: es ist schwer nen Display zu testen wenn Ich keinen Prototypen da habe. Aber versprochen: Spätestens eine Woche nachdem Ich die erste Platine fertig habe werde Ich auch die Steuerung fertig haben. Ich kann im moment halt selber nur blind programmieren da ich kein passendes Display und Sensoren verbaut habe...


So und dann wieder zum alltag zurück:
Ic hhab mal nen bisschen mit dem Menü experimentiert um zu sehen ob es so klappen könnte wie Ich denke. Problem ist das es zwar fertige libarys gibt, die aber entweder für ein so großes Menü zuviel speicher fressen oder so kompley sind das ein "normaler" user es nie anpassen könnte ohne sich Tage rein zu lesen.
Also bin Ich hingegangen und habe mal bisschen pseudocode selber geschrieben, nur um euch zu fragen ob nicht programmierer diesen verstehen und ihn anpassen könnten:
Code:
void showMenu(int *menudeep, int *menulevel[4], int *key){
	String mDisplay[4]; 
        
	switch (*menulevel[0]){
	// Level 0, oberste Zeile
	case 1:
		mDisplay[0] = showString(PSTR("Menu 1"));
		sub_Menu1_1(&menudeep, &menulevel, mDisplay, &key);
		break; 
	case 2:
		mDisplay[0] = showString(PSTR("Menu 2"));
		break; 
	}
    lcd1.clearLine(*menudeep);
    lcd1.print(mDisplay[*menudeep]);
}

void sub_Menu1_1(int **menudeep, int **menulevel[4],String mDisplay[4], int **key){
	switch (**menulevel[1]){
	// Level 1, 2te Zeile
		case 0:
			break; 
		case 1:
			mDisplay[1] = showString(PSTR("Menu 1.1"));
		        sub_Menu1_1_1(&menudeep, &menulevel, mDisplay, &key);
			break; 
		case 2:
			mDisplay[1] = showString(PSTR("Menu 1.2"));
                        setLightC1(**key);
			break; 
	}
}

void sub_Menu1_1_1(int ***menudeep, int ***menulevel[4],String mDisplay[4], int ***key){
	switch (***menulevel[2]){
	// Level 2, 3te Zeile
		case 0:
			break; 
		case 1:
		mDisplay[2] = showString(PSTR("Menu 1.1.1"));
		break; 
	}
}
showMenu ist der Aufruf des Menüs selbst. Dieser kommt wenn man den Menü button drückt. Jetzt kann man mit hoch/runter durchs menü und mit rechts eine ebene tiefer. Links geht eine ebene höher. enter hat keine funktion hier.
Alle Menü einträge folgen dem gleichen schema:
- Nummer des Eintrags
- Text der auf das display kommt
- Aktion hinter dem menü

Für untermenü ist das z.b. sub_Menu1_1(&menudeep, &menulevel, mDisplay, &key);, wobei der Name egal ist, ich hab jetzt auf die schnelle nur sub_Menu genommen und ne nummerrierung 1_1 -> submenu von 1, erster punkt oder 1_2 -> submenu von 1, 2ter punkt.
jetzt kommt wieder das gleiche eigentlich. nummer, text, aktion... das kann man so auf 4 ebenen machen, wobei die aktion immer nen weiteres menü sein kann oder ne einstellung.
setLightC1(**key); wäre dann z.B. die funktion um das Licht vom ersten kanal ein zu stellen. hier kann man dann mit (rechts,links, das nur z.b. bei uhrzeiten) hoch,runter den wert ändern und mit enter speichert man und ist wieder auf der ebene zuvor im menü.
wer das menü erweitern möchte muss nur
Code:
void sub_Menu1_2_1(int ***menudeep, int ***menulevel[4],String mDisplay[4], int ***key){
	switch (***menulevel[2]){
		case 0:
			break; 
		case 1:
		mDisplay[2] = showString(PSTR("Menu 2.1.1"));
	break; 
	}
}
kopieren, umbenennen und für sich anpassen. An der stelle wo das aufgerufen wird ersetzt man dann einfach den eintrag mit seinem oder fügt ihn hinzu:
Code:
void sub_Menu1_1(int **menudeep, int **menulevel[4],String mDisplay[4], int **key){
	switch (**menulevel[1]){
	// Level 1, 2te Zeile
		case 0:
			break; 
		case 1:
			mDisplay[1] = showString(PSTR("Menu 1.1"));    // das ist von mir programmiert
		        sub_Menu1_1_1(&menudeep, &menulevel, mDisplay, &key);
			break; 
		case 2:
			mDisplay[1] = showString(PSTR("mein_eigenes_Menu"));
		        mein_eigenes_Menu(&menudeep, &menulevel, mDisplay, &key);
			break; 
		case 3:
			mDisplay[1] = showString(PSTR("Noch eine neue einstellung"));
		        say_hello(**key);
			break; 
	}
}

void mein_eigenes_Menu(int ***menudeep, int ***menulevel[4],String mDisplay[4], int ***key){
	switch (***menulevel[2]){
		case 0:
			break; 
		case 1:
			mDisplay[3] = showString(PSTR("Ich bin ein neues Menü"));
			break; 
	}
}
Macht das Sinn für euch und ist das verständlich?
Falls nicht komm ich wohl nicht drum herrum das ganze in ne eigene Libary zu schreiben damit alles automatisiert wird... Ist zwar eh der Plan für später, aber sowas kostet mehr zeit als mal schnell nen Menü fest einzuprogrammieren... :roll:
 

Skibbie

Member
...ich komme damit klar.
Finde es auch zum lernen besser, wenn sich nicht alles in librarys versteckt. Dann versteht man besser, wie alles funktioniert. ;-) Und wenn die Menüs auch Namen haben, dann erkennt man ja schon daran, worum es sich handelt, und was man an welche stelle kopieren muss.
 

RobertS

Member
Ich muss Dinge anfassen/ausprobieren, um sie zu kapieren. Aber ich denke auch, dass man mit der Struktur klarkommen kann.
Gruß
-Robert
 

oophaga

Member
finds soweit übersichtlich und sehr gut erklärt :thumbs:
checks zwar noch nicht ganz bis ins detail, mach mir aber auch keine sorgen...
mir geht's da ähnlich wie robert :bier:
tuh mir da auch wesentlich leichter, wenn ich die hardeware in händen halte und mir ein bild dazu machen kann..
 

Tiegars

Member
Huhu,

das wird schon. Mir gehst genau gleich. Wen ich das Zeugs in den Händen habe kann man dann spezifisch Fragen stellen.
 

MajorMadness

Active Member
SIE SIND DAAAAA!!!! Heute kam mir vor wie Weihnachten. :lol: :lol: :lol:
Endlich war Post da und 13 Wunderschöne Platinen liegen bei mir. Ich werde die erste schnellstmöglich aufbauen und dann testen. Übers WE verpacke Ic hdann alle Packete für die die mit bestellt haben und dann geht alles nach Ostern auf die Reise. Leider fehlt für manche noch 1 Teil aus China, da müssen wir dann sehen wie wir das machen.
Achja, bitte keine Fragen warum den schwarze Platinen... Das erschien mir logisch. :D

 
Ähnliche Themen
Themenersteller Titel Forum Antworten Datum
Ewald Flowgrow Forum Uhr - der Zeit voraus? Kein Thema - wenig Regeln 2
HaManFu HaManFu grüßt den Rest der Welt@Flowgrow Mitgliedervorstellungen 15
Tobias Coring Der Flowgrow Dünger ist da ;) Nährstoffe 127
J Tropica Dünger in der Einfahrphase Nährstoffe 16
B4m8i Aquarium in der Arbeit - Proxima 250 ohne allem Aquarienvorstellungen 0
E Wasserfluss in der Cristalprofi I-Linie (Innenfilter) Technik 6
S Verzweifel bei der Dosierung von Nährstoffen Nährstoffe 24
Wuestenrose Entkarbonisierung – was passiert mit der Leitfähigkeit? Kein Thema - wenig Regeln 11
F Pflanzen wachsen schlecht seit Umstellung der Beleuchtung Erste Hilfe 20
M Krasses Wachstum nach Auslichtung der Anubias Nana Aquarienvorstellungen 12
C Schädlinge - Nützlinge im Nanoaquarium - Hilfe bei der Bestimmung Erste Hilfe 1
C Hallo, ich bin in der "Findungsphase" Mitgliedervorstellungen 12
Andrej Neue Bewohner an der Oberfläche Kein Thema - wenig Regeln 2
E Was kommt nach der JBL Solar Natur LED? Kein Thema - wenig Regeln 2
M Wachsen Pflanzen langsamer und schlechter während der Einfahrphase? Pflanzen Allgemein 1
R Woher kommt der üble beißende Gestank? Erste Hilfe 12
P Erfahrung mit der Fa. WIO. Äste ins Aquarium - wässern Kein Thema - wenig Regeln 14
F Hallo aus der Voreifel Mitgliedervorstellungen 3
Pavelix Grüße aus der Sächsischen Schweiz Mitgliedervorstellungen 3
J Neuer aus der Eifel Mitgliedervorstellungen 1

Ähnliche Themen

Oben