Projektvorstellung: WohnwagenKontrollZentrum (WKZ)....

Ihr Lieben,

mein Projekt ist fast abgeschlossen; ein Baustein fehlt noch, aber mir fehlt gerade die Energie.... Dennoch möchte ich euch von meinem Projekt berichten und auch die Codes / HMI bereitstellten.

Was habe ich gemacht:

  • Eine Übersichtsseite, auf der alle wesentlichen Infos wiedergespiegelt werden.
  • Lichtsteuerung via Schieberegler und Timer (verdunkelt nach xx Minuten automatisch).
  • Lüftersteuerung für die Kühlung der Kühlrippen des Kühlschranks (3x "Kühl"... naja), die entweder automatisch geregelt wird (Starttemperatur / Maximaltemperatur) ODER ebenfalls via Schieberegler.
  • Batterieanzeige (leer/fast leer/ fast voll/ voll) (noch nicht fertig) und
  • Einstellungen (Datum/Uhrzeit, Temperaturbereiche für den Lüfter und die Displayhelligkeit)

Das ganze wird auf insgesamt 4 Seiten eines Nextion-Displays verwirklicht. Dieses Display habe ich gewählt, weil nur 4 Kabel/Litzen zum Ansprechen benötigt werden. Obwohl dieses Display über eine eigene Rechnereinheit verfügt, habe ich bis auf den automatischen Dimmer ALLES via Arduino programmiert. Das hin und her - was macht welcher Rechner war mir irgendwann zu aufwändig und ich habe alles dem Arduino überlassen.

Zur Kühlung der Kühlrippen: Der Wirkungsgrad eines Kühlschranks ist größer, wenn die Kühlrippen die Wärme auch wirklich gut ableiten. Dazu der Lüfter..

Zu meinen Problemen und den Lösungen: Auf der ersten Seite (der InfoSeite) sollten alle Informationen wie Drehzahl wiedergegeben werden, obwohl ich diese auf einer anderen Seite einstelle.... Die Lösung war eigendlich ganz einfach:

ALLE Nextion-Befehle, wie >>NexButton<< oder >>NexProgressBar<< wurden mit der Seite und der ID angegeben!

Statt NexButton Button_CP_FAN = NexButton(0, 5, "b2"); habe ich NexButton Button_CP_FAN = NexButton(0, 5, "page0.b2"); verwendet! Also mit Seite. Damit kann von jeder beliebigen Seite der Wert auf einer anderen Seite des Nextion-Displays verändert werden... Boah, das hat lange gedauert.

Datum und Uhrzeit... Zuerst hatte ich z.B. für den Tag, den Monat und das Jahr einzelne Nummernfelder zusätzlich die Punkte für die Trennung verwendet... Viel zu aufwendig, diese zu platzieren... Stattdessen habe ich diese in einen TextString gepackt und dem Nextion mitgeteilt..

Die einzelnen Seiten... Den Wohnwagen habe ich mir gekauft, weil ich beim Tauchen kein Bock mehr zum Zelten hatte. Daher sind alle Seiten mit Unterwasser-Aufnahmen im Hintergrund.

Weiter habe ich mit GIMP gearbeitet und mit den (transparenten) Ebenen weiter gearbeitet. DAzu kann ich euch aber (wenn gewünscht) später mehr schreiben.....

Zu den Arduino-Sketchen... Ich habe diese Sketche nur sehr oberflächlich dokumentiert. Wenn ihr etwas nicht versteht fragt bitte nach.. ABER bitte nicht vierteilen, weil es bestimmt hier und da sehr unprofessionel geschrieben / programmiert wurde. ABER ICH HABE ES SELBER GEMACHT und es klappt... Daher EGAL!

So nun erst mal genug. Schnell noch ein paar Bilder und die Dateien und... VIEL SPASS!

Ralf

180807.zip <- Bilder und Sketch
180807.HMI.zip <- Nextion hmi-Datei
180807.tft.zip <- Nextion tft-Datei

PS: Die Bilder passen nicht mehr ganz zum Code, weil dieser noch etwas verfeinert wurde.
PPS: Die Nextion.Dateien (HMI und tft) muss ich gleich in Extra-Posts ablegen, weil ich nur 2 MB frei habe..

180807.HMI.zip (1.43 MB)

180807.zip (572 KB)

Hier noch die TFT-Datei, und ein paar weitere Infos:

Verwendet habe ich einen Arduino Mega 2560 und für die Drehzahlsteuerung bzw. LED Helligkeit die PWM-Optionen und insgesamt 6 Mosfet(s)... Ich weiß aber nicht mehr genau, welche. Schaue aber gerne nach, wenn gewünscht.

Gruß Ralf

180807.tft.zip (757 KB)

Hier die Bilder...

Seite0.png

Seite1.png

Seite2.png

Seite3.png

Seite4.png

Seite0.png

Seite1.png

Seite2.png

Seite3.png

Seite4.png

(deleted)

Was ich bei den Nextion-Display und dem dazugehörigen Nextion-Editor bemängel könnte, ist die fehlende Transparenz für die Bilder (Schieberegler) und es wäre noch sehr nett, wenn man die "pages" zoomen (also vergrößern) könnte..

Ansonsten genial. Gerade die vier Adern, die mehr oder weniger beliebig verlängert werden können.

Etwas fummelig war es, beim Mega den korrekten Tx und Rx Anschluss zu finden. Ich glaube es waren PIN 16/17...

Ansonsten wollte ich es mir sehr einfach machen und habe alle IDs im Nextion umbenannt. aus "n0" habe ich "tag" gemacht und so.

Das war bei der anschließenden Arduino-Programmierung eher strörend. Das würde ich nächstes mal lassen.

Vielleicht finde ich auch noch ein Bild von der fertigen Hardware!

Gruß Ralf

PS Was habt ihr so für fertige Projekte?

BastelRalf:
.....
PS Was habt ihr so für fertige Projekte?

Dann schau doch mal hier rein.
Da sind so einige Projekte zu finden.

Edit:
Optisch sehr gelungen, dein Projekt.