GUI für Arduino

Hallo

Mittels App Inventor und Co. ist es mit wenig Aufwand möglich für eine Steuerung ein ansprechendes GUI auf dem Smartphone zu erzeugen. Das hat für mich aber die beiden Nachteile:

  • Abhängigkeit zum Betriebssystem auf dem Smartphone
  • Keine Permanente Anzeige wie auf einem fix installierten TFT Screen

Es gibt diverse 7" oder 10.4" Displays für den Arduino. Kennt jemand von Euch einen smarten Weg auf diesen TFT Dispalys eine ansprechende Visualisierung im Industriedesign zu entwickeln? Ich Suche dabei eher nach dem Weg, wo die Visu auf dem PC designet wird und dann das Interface zum Arduino generiert werden kann.

Gruss, Mark

hi,

Ich Suche dabei eher nach dem Weg, wo die Visu auf dem PC designet wird und dann das Interface zum Arduino generiert werden kann.

das wären dann die nextion displays:

https://nextion.itead.cc/

gruß stefan

Hi Stefan

Nextion sieht vielversprechend aus. Werde mich da mal einlesen, danke!

Die Hardwarekosten könnte ich weiter senken, wenn ich anstelle des Nextion Displays halt wirklich auf Smartphone oder Tablet zurück greife. Wie eingangs beschrieben möchte ich dann aber ein GUI, welches auf iOS, Android und Windows läuft realisieren. Kennt Ihr hier einen guten Weg wie ich mit vernünftigem Aufwand ein ansprechendes GUI für den Arduino hinbekommen kann? z.B. Web-Server?

Gruss und danke, Mark

Der Arduino wird da sicherlich am Anschlag, bzw. schon nicht mehr flüssig laufen. Da brauchst du schon eher was aus dem ARM Lager, z.b. den Due oder preiswerter dann der Raspi, der auch eine größere Fangemeinde im Internet hat

Zum Nextion gibt es auch ein guters Tutorial in deutsch bei einem Händler.

Gruß Tommy

CometVisu, FHEM, OpenHAB. Brauch alles nen Raspi.

Der Vollständigkeit halber: Mit Processing kann man auch SteuerGUIs für den Arduino über seriell oder UDP bauen.

Gruß Tommy

Läuft es auf allen Systemen?

Processing basiert auf Java. Die Arduino-IDE ist in Processing geschrieben.

Gruß Tommy

Hallo,

die IDE ist in Java programmiert. Processing ist nur eine Krücke.

Ich habe ein Festes Kinco HMI 7" bei mir fest Laufen mi nem MEGA über Modbus RTU läuft super sauber. Die HMI-Umgebung ist Kostenlos. Größeter Vorteil man muss sich nur um die Register kümmern und der Rest ist auf dem Panel. Eine Echtzeit Uhr ist auch auf dem Panel an die man auch einfach kommt.
Ich habe auf der Arbeit ein Mini Modell unserer Messsonde mit diesem Panel und Arduino Cores umgesetzt ohne Probleme.

Link

Gruß
DerDani

Doc_Arduino: Processing ist nur eine Krücke.

Quatsch.

Processing is a flexible software sketchbook and a language for learning how to code within the context of the visual arts. Since 2001, Processing has promoted software literacy within the visual arts and visual literacy within technology. There are tens of thousands of students, artists, designers, researchers, and hobbyists who use Processing for learning and prototyping.

» Free to download and open source » Interactive programs with 2D, 3D or PDF output » OpenGL integration for accelerated 2D and 3D » For GNU/Linux, Mac OS X, and Windows » Over 100 libraries extend the core software » Well documented, with many books available

Processing hat seine Stärke bei der Visualisierung von Daten. Durch die Libraries die dabei sind.

Für einfache GUIs hat es kaum Vorteile gegenüber anderen Frameworks

Hallo,

wenn wir von dem Processing reden was man im Zusammenhang mit Arduino verwenden soll und kann, damit habe ich nur schlechte Erfahrung gemacht. Die 64Bit Version lief nie stabil, immer Abstürze. Die 32Bit lief zwar aber spürbar langsamer in der Reaktion. War alles unter Windows 7. Kann mir echt nicht vorstellen wie man damit ernsthaft arbeiten sollte. Oder gibt es noch ein anderes Processing? Zur Datenauswertung kann man sich mal "R" anschauen. https://www.r-project.org/

Doc_Arduino: Hallo,

die IDE ist in Java programmiert. Processing ist nur eine Krücke.

Processing ist JAVA. Es steht zu nativem JAVA im gleichen Verhältnis, wie die Arduino-IDE-Libs zu nativem C++/C.

Um mal schnell ne GUI zusammen zu klöppeln finde ich es ganz ok, zumal die G4P-GUI-Lib einen rudimentären GUI-Editor mitbringt. Ich hasse es eigentlich GUIs zu entwickeln.

Stabilitätsprobleme (64Bit Version Win 7) hatte ich nie.

Gruß Tommy

ach menno Tommy,

ich hatte nie was anderes geschrieben.

Tommy56: Processing basiert auf Java. Die Arduino-IDE ist in Processing geschrieben.

Gruß Tommy

Ich wollte nur dieses Kuttelmuttel entwirren. Die Arduino IDE ist in Java geschrieben. Nicht mehr und nicht weniger. Processing ist, wenn man es ganz genau nimmt, sogar eine eigene Programmiersprache. Das ist mein Wissensstand. Dürft ihr gern korrigieren wenn es falsch ist, glaube ich aber kaum. ;)

Doc_Arduino: Processing ist, wenn man es ganz genau nimmt, sogar eine eigene Programmiersprache.

Genauso wie 'Arduino' eine eigene Sprache ist, nämlich nicht. Das eine is C++ das andere Java.

Dann korrigiere ich mal. Processing ist JAVA - keine eigene Sprache. Mit einem zusätzlichen Satz an Libs, die die Darstellung vereinfachen, wird von JAVA abstrahiert, so wie die Arduino-IDE in einigen Sachen von C/C++ abstrahiert (wi z.B. digitalWrite). Du kannst dabei aber problemlos JAVAcode mit rein schreiben. Mache ich zum Exceptionhandling oder um einen Connector zu MySQL einzubinden. Das ist genau so, wie wenn Du in der Arduino IDE normales C++/C benutzt, z.B. um das Pin direkt zu setzen..

Evtl. ist der aktuelle Code der Arduino-IDE mehr reines JAVA, als früher. Die Urversion war JAVA mit den Processingvereinfachungen für die GUI.

Gruß Tommy

Hi Leute

Vielen Dank für die Hilfe.

Ich werde mit Processing und der G4P Library mal erste Erfahrungen sammeln. Sollte es tatsächlich möglich sein eine Programm ohne viel Tricks und Kniffs für Android und iOS generieren zu können, so wäre das eine super Sache.

Die Variante mit dem Kinco HMI wäre ebenfalls spannend, hier sind die Panels aber relativ teuer. Wenn ich das z.B. mit Nextion und co. vergleiche. Ok, man hat mit der HMI Umgebung auch ein professionelleres Erscheinungsbild, gebe ich zu.

Gruss, Mark

Zum Thema Kinco. Man hat nix mit dem Handling zu tun einfach einen RS485 via MAX485 an das Panel. 10 Words als Array die ersten zwei Words als Steue-r und Zustandsbits der Rest "Werte". Am Ende des Programms einen Modbus.poll() und mehr hast du mit dem Panel nicht zu tun. Und ein Industrietaugliches Einbaugehäuse Gruß DerDani