Forum: Mikrocontroller und Digitale Elektronik Konzeptentscheidung: eure Meinung , "modern UI"


von Marc Rupprath (Gast)


Lesenswert?

Hallo zusammen;

ich hätte mal eure Meinung gehört, was haltet ihr für sinnvoller und 
warum.


Einleitung:

Derzeit befasse ich mich mit Microcontroller Programmierung auf der 
Basis von
STM34F417 controllern. Ich habe bislang mit Linux und embedded Linux und 
Android keinerlei Erfahrungen.

Ich habe ein System von mehreren Boards welche zur Zeit über CAN Daten 
austauschen. Am "Master" befindet sich ein klassiches Touch LCD mit 
einer Oberfläche auf der Basis der STM graphics library.

Zur Kommunikation mit "der Aussenwelt" stehen USB Device und Host, auch 
OTG, und Ethernet bereit.

Ich würde nun eine gerne eine modernere Oberflächentechnologie 
verwenden.

Möglichkeiten:
1. Erwerb einer kommerziellen Bibliothek für das klassische Pannel 
(Segger EMwin oder ähnlich -> Kosten)


2. Erwerb eines intelligenten Touchpanels (Konfiguration des HMI am PC) 
es erfolgt nur der Datenaustausch mit dem Board, HMI am PC designed).
Das Panel ist eine Art "Minicomputer"
Beispiel: Amulett technologies, und andere.




3.
Verwendung eines anderen / zusätzlichen Controllerboards, welches Linux 
/ Android unterstützt.


4. Tablett PC / Handy als "inteligentes HMI Panel", angebunden an USB, 
Ethernet,Bluetooth,...



Mir erscheint die letzte Variante handwerklich am vernünftigsten, aber:

Was waren eure Gründe, etwa die gesammte Automatisierung 
(CAN,I2C,SPI,GPIO)
und das HMI auf einem LINUX / Android board zu implementierten statt der 
Trennung: (Contollerboard = Automatisierung) <--> (Linux/Android 
=HMI,Server,Netzwerk...)


Denn mein Eindruck ist folgender:

"klassische Microcontroller" (STM32 als Beispiel) sind gut darin wenn es 
um die Automatisierung und hardwarenahe Programmierung, Anbindung von 
Elektronischen Komponenten sind

Jedoch ist etwas die Implementierung eines HMI mit modernem look and 
feel unverhältnismäßig aufwendig im Vergleich zu: Rasperry PI, und 
anderen Linux / Android boards.


Die Linux / Android boards welche ich bislang nur "vom höhrensagen, 
Studium verschiedener Blogs, kenne:

Sind gut darin, klassische IT Themen (Webserver, FTP,HMI.....) 
kostengünstig darzustellen. Mir erscheint hier jedoch der Aufwand 
"klassische Elektrotechnik, Elektronik, Busse,Sensoren) anzubinden recht 
hoch(Treiberentwicklung,Einbindung der peripherie in die "Kernel"....


Also, Mein Bauchgefühl:

"Microcontrollerboards" und "Linux/Abdroidboards" sind jeweils in 
besonderen Bereichen besonders geeignet.
Bis zu einem gewissem Grad kann das eine System, die Funktionen des 
anderen Systems realisieren, die Grenzen verschwimmen zum Teil, der 
jeweilige Aufwand wird größer umso mehr ich versuche mit der der einen 
Hardware, das "spezialgebiet" der anderen Hardware zu realisieren.

Daher bin ich unsicher und wollte, fragen:
Wo belasst ihr es bei einer Trennung, wo habt ihr/ euch bewusst für oder 
gegen Linux / Android als Ersatz für "klassische" Microcontroller 
endschieden.

Danke für eure Gedanken ;-)

Gruß Marc

von Peter D. (peda)


Lesenswert?

Wenn man sich anmeldet, kann man eigene Beiträge editieren/löschen.

Ich hab mich schon gewundert, was "moderne Spannung und Strom" sein 
soll.

von Purzel H. (hacky)


Lesenswert?

Ich binde meine Systeme jeweils per serieller Schnittstelle, welches 
auch eine USB-to-Serial sein kann, an einen PCs. Das Userinterface 
schreib ich jeweils in Delphi, weil's schnell geht und wenig Arbeit 
erfordert.
Libraries sind keine erforderlich, resp mit der Zeit hat man seine 
Komponenten.
Falls ich in Zukunft mit einen Tablet verbinden werde, dann wird meine 
Wahl auf Bluetooth fallen.

Die Wahl der seriellen Schnittstelle, moeglicherweise ueber USB oder 
Bluetooth, spart mir den Treiber auf der PC Seite, und das Interface auf 
der Controller Seite ist auch einfach. Die Datenrate ist limitiert, aber 
bisher genuegend.

von Max G. (l0wside) Benutzerseite


Lesenswert?

Welche Stückzahlen hast du denn? 10, 100, 1000, Millionen?
Wie viel sind die Kunden bereit für die GUI zu zahlen?
Was kostet deine eigene Entwicklungsleistung?

Deine Frage lässt vermuten, dass deine Anfrage einen kommerziellen 
Hintergrund hat. Dann rechne auch so. Für eine Bauchentscheidung ist das 
das falsche Thema.

Am Rande: Android hat mir zur Oberflächenentwicklung bisher einen recht 
guten Eindruck gemacht, die Tools kosten nichts und sind recht mächtig. 
Ob es für dich aber die richtige Lösung ist, kannst du nur selbst 
beurteilen.

Max

von Marc Rupprath (Gast)


Lesenswert?

Peter Dannegger schrieb:
> Wenn man sich anmeldet, kann man eigene Beiträge editieren/löschen.
>
> Ich hab mich schon gewundert, was "moderne Spannung und Strom" sein
> soll.

Hallo Herr Danneger;

Menschen welche sich mit Bediensystemen auseinandersetzen unter 
umständen bekannt: "modern UI" steht für "modern user interface" was ich 
vergessen hatte zu erläutern.

Modern UI / modern UI ist eine "Phrase" für alle Arten von 
Bediensystemen
welche in "Look and feel" dem bekannt ist was man von modernen 
Oberflächen
vom "normalen" PC /Tablett/Smartphone kennt.

Gruß

PS:
Peter Dannegger schrieb:
> Wenn man sich anmeldet, kann man eigene Beiträge editieren/löschen.
>
Dann würde ich sie hiermit bitten Ihren Beitrag zu löschen.

von Marc Rupprath (Gast)


Lesenswert?

Hallo Max;
> Deine Frage lässt vermuten, dass deine Anfrage einen kommerziellen
> Hintergrund hat. Dann rechne auch so. Für eine Bauchentscheidung ist das
> das falsche Thema.

Falsch vermutet.

Es ist ein rein privates Thema.
Aber auch im privaten verfolge ich denn Ansatz etwas nicht nur deshalb 
zu machen, weil man es machen könnte.

Ich werde zunächst mal den Ansatz verfolgen das UI für den PC unter 
Windows 7 zu erstellen.

Im nächsten Schritt für ein Tablett unter Android.
Kopplung eben über die vorhandenen Schnittstellen.
Die Idee mit der seriellen Kommunikation über Bluetooth finde ich gut, 
ist vermutlich ausreichend.

von Max G. (l0wside) Benutzerseite


Lesenswert?

Im Allgemeinen duzt man sich übrigens hier im Forum.

Bei privatem Hintergrund würde ich ganz klar auf das Android-Tablet 
gehen. Tablets gibt es für 100 EUR, und die Programmierung ist nicht 
wirklich schwierig.

Max

von c-hater (Gast)


Lesenswert?

Marc Rupprath schrieb:

> Modern UI / modern UI ist eine "Phrase" für alle Arten von
> Bediensystemen
> welche in "Look and feel" dem bekannt ist was man von modernen
> Oberflächen
> vom "normalen" PC /Tablett/Smartphone kennt.

Ist das so?

Eher nicht. Microsoft, Apple, Canonical und Co. versuchen zwar, die 
Bedienphilosophie von Smartphones und Tablets in den PC zu drücken, aber 
dieses Vorhaben ist in all den Bereichen zum Scheitern verurteilt, wo 
mit dem PC wirklich (mehr oder weniger schöpferisch) GEARBEITET werden 
soll.

Sprich: die sog. "modern UI" sind nutzlose Gimmicks, die nur die 
stumpfsinnige gehirnkastrierte Masse des Konsumentenviehs geil findet. 
Wahrscheinlich, weil es so einfacher ist, die effektiv vorhandenen drei 
oder vier Funktionen einer "App" zu benutzen...

Ich für meinen Teil sehe eine gewisse Lebensberechtigung für solche UIs 
vielleicht noch im Unterhaltungsbereich. Aber auch da hakelt es schnell. 
Man sehe sich als abschreckendes Beispiel mal MythTV an. Solange es nur 
um das reine kritiklose Konsumieren bereits aufbereiteter Medien geht, 
ist das UI der Sache gewachsen und funktioniert recht ordentlich. Aber 
wehe, man ist der Arsch, der mit alleiniger Hilfe des "modern UI" den 
Content erlangen, aufbereiten und managen muß oder gar die Konfiguration 
damit vornehmen soll. Da merkt man schnell, WIE FURCHTBAR SCHEISSE UND 
UNFLEXIBEL so ein UI eigentlich ist.

Und MythTV ist nur ein Beispiel von vielen, und zwar bei weitem noch 
nicht das abschreckendste...

von Frank K. (fchk)


Angehängte Dateien:

Lesenswert?

Marc Rupprath schrieb:

> Daher bin ich unsicher und wollte, fragen:
> Wo belasst ihr es bei einer Trennung, wo habt ihr/ euch bewusst für oder
> gegen Linux / Android als Ersatz für "klassische" Microcontroller
> endschieden.


Hier ein Beispiel: Fernsteuerung eines PCs übers Netzwerk, Anschalten, 
Ausschalten, Reset, Überwachung von Spannungen und Temperatur, ggf 
durchleiten einer seriellen Schnittstelle. Serverboards haben so etwas 
schon von sich aus drauf, sind aber sehr viel teurer.

Es gibt solche Produkte zu kaufen. Die haben ein Linux mit Webserver etc 
drauf und haben einen dreistelligen Euro-Preis. Meine Lösung erreicht 
das gleiche mit einem 8-Bit PIC und ist damit viel günstiger. Das 
teuerste Bauteil auf dem Board ist der Ethernet-Steckverbinder.

Es muss nicht immer Linux sein. Viele Leute nehmen das nur, weil sie die 
Alternativen nicht kennen.

Eine Touch UI ist eigentlich so schwierig nicht. Der wichtigste Teil ist 
eine schnelle Bitblit-Funktion, die rechteckige Bildbereiche kopiert. 
Damit kannst Du dann Textausgabe mit Proportionalschriften bauen, 
Buttons, Fenster und all den anderen Kram. So viel ist das eigentlich 
gar nicht, wenn man das geschickt macht. Punkte, Linien, Kreise, Flächen 
füllen brauchst Du oft nicht einmal.

Dein STM32F417 ist allerdings für solche Dinge nicht die optimale Wahl. 
Du brauchst einen Prozessor, der einen TFT-Controller schon mitbringt 
und idealerweise schon einen Rasterprozessor hat und damit den 
Hauptprozessor entlastet. Dein STM hat das nicht. Es gibt Displays mit 
eigenen Controllern, die wie ein SRAM an den externen Adress/Datenbus 
angeschlossen werden, aber die sind deutlich langsamer und nicht die 
optimale Lösung.

Es geht also auch ohne Linux, und das mit deutlich weniger Speicher. 
Plus: So ein System ist sofort da und muss nicht erst booten.

fchk

von Marc Rupprath (Gast)


Lesenswert?

Hallo c-hater;
ist ein wenig off topic, jedoch:

Scheiße und abschreckend ist eigentlich nur die Ausdrucksweise hier im 
Forum.


Zur Sache:
Ich gebe dir mal recht, das die modernen Technologien mit ihren 
vielfältigen
Bedien- und Grafikmöglichkeiten nicht zwangsläufig zu einer guten, 
zufriedenstellen Bedienbarkeit führen.

Jedoch ist es meine  Meinung, das es mit den erweiterten Möglichkeiten 
in Gestaltung und Bedienung leichter Möglich ist auf die Bedürfnisse der 
Bediener einzugehen.

Im Gegenzug gab es sicherlich auch früher schon gut durchdachte 
Oberflächen.
Wie gesagt , was Bedienphilosophie angeht gebe ich dir in Teilen recht.

Daher wird in meinem Berufszweig auch oft auf die Hilfe von Analysten 
aus dem Bereich Usability Design hinzugezogen.
Das ist aber eine ganz andere Diskussion und hier der falsche Ort dafür.

von c-hater (Gast)


Lesenswert?

Marc Rupprath schrieb:

> Scheiße und abschreckend ist eigentlich nur die Ausdrucksweise hier im
> Forum.

Wenn man etwas, was wie Scheiße stinkt und wie Scheiße aussieht, nicht 
mehr als Scheiße bezeichnen darf, dann haben wir die perfekte Zensur. 
"Neusprech" ist dann angesagt.

> Ich gebe dir mal recht, das die modernen Technologien mit ihren
> vielfältigen
> Bedien- und Grafikmöglichkeiten nicht zwangsläufig zu einer guten,
> zufriedenstellen Bedienbarkeit führen.

Das wirklich Schlimme ist, daß die Bedienmöglichkeiten bei genauerer 
Betrachtung eben garnicht so vielfältig sind. Nur die sinnlosen und 
nutzlosen Grafik- und Animationseffekte sind vielfältig. Nicht die 
Bedienmöglichkeiten.

> Jedoch ist es meine  Meinung, das es mit den erweiterten Möglichkeiten
> in Gestaltung und Bedienung leichter Möglich ist auf die Bedürfnisse der
> Bediener einzugehen.

Ja klar. Wer sein Geld damit verdient, es geistig Amputierten aus dem 
Kreuz zu leiern, für den ist sowas natürlich immens wichtig, das ist 
absolut einsehbar.

> Daher wird in meinem Berufszweig auch oft auf die Hilfe von Analysten
> aus dem Bereich Usability Design hinzugezogen.

Klar. Eine Herde Schlipsträger mit weißen Hemden, je mehr, desto besser. 
Und praktisch alle haben einen master in Medien-Design oder ähnlich 
relevante Abschlüsse. Das Produkt muß ja was werden. Und diese Typen 
werden das mit ihrer Kompetenz sicherstellen. Unbedingt...

von Marc Rupprath (Gast)


Lesenswert?

c-hater schrieb:
> Marc Rupprath schrieb:
>
>> Scheiße und abschreckend ist eigentlich nur die Ausdrucksweise hier im
>> Forum.
>
> Wenn man etwas, was wie Scheiße stinkt und wie Scheiße aussieht, nicht
> mehr als Scheiße bezeichnen darf, dann haben wir die perfekte Zensur.
> "Neusprech" ist dann angesagt.


Hallo c-hater;
Ich versuche Sie respektvoll zu behandeln, versuchen Sie es doch auch 
mal,
auch sich selber gegenüber. Ich wähle hier mit Absicht mal das "Sie".

Es liegt mit fern Sie zu belehren, und Sie dürfen auch Ihre Meinung 
Äußern aber: Auf eine Solche Ausdrucksweise kann man sicher auch 
verzichten, oder ist das etwas auf das Sie besonders stolz sind ?


> Das wirklich Schlimme ist, daß die Bedienmöglichkeiten bei genauerer
> Betrachtung eben garnicht so vielfältig sind. Nur die sinnlosen und
> nutzlosen Grafik- und Animationseffekte sind vielfältig. Nicht die
> Bedienmöglichkeiten.


Wie gesagt: Ich gebe Ihnen damit recht, das Entwickler dazu neigen, vor 
lauter technischer Möglichkeiten das eigentliche Ziel einer Oberfläche, 
den Bedienern eine effektive Bedienung zu ermöglichen aus den Augen 
verlieren.


>
> Ja klar. Wer sein Geld damit verdient, es geistig Amputierten aus dem
> Kreuz zu leiern, für den ist sowas natürlich immens wichtig, das ist
> absolut einsehbar.

Wie gesagt: Die Anfrage hier war privat und sachbezogen auf meine 
konkrete Anfrage, ich kann Ihrem Artikel diesbezüglich keine Hinweise 
entnehmen.
Vorschlag: Machen Sie für Ihre wichtigen Anmerkungen aus Anwendersicht 
einen eigenen Thread auf.

Ansonsten:
Beruflich arbeite ich seit nunmehr 2 Jahrzehnten im Bereich 
Anlagenautomatisierung als Entwickler und Projektleiter für HMI Systeme 
der Entsprechenden Maschinen.

Ich halte "geistig Amputiert" für keine geeignete Bezeichnung, weder für 
unsere Kunden, noch die Bediener und Maschinenführer an den Anlagen 
selber.


>> Daher wird in meinem Berufszweig auch oft auf die Hilfe von Analysten
>> aus dem Bereich Usability Design hinzugezogen.
>
> Klar. Eine Herde Schlipsträger mit weißen Hemden, je mehr, desto besser.
> Und praktisch alle haben einen master in Medien-Design oder ähnlich
> relevante Abschlüsse. Das Produkt muß ja was werden. Und diese Typen
> werden das mit ihrer Kompetenz sicherstellen. Unbedingt...

1. Nicht alle Designer tragen Schlips
Es war eine Zeit in Mode als Designer besonders lässig angezogen zu 
sein.
Wie wir beide wissen: Kleider machen noch keine Leute, gilt für alle 
Stilrichtungen.


2. Zur Herde:
Manchmal macht es die Größe eines Projektes / die Terminsituation 
erforderlich mit mehreren Leuten zusammenzuarbeiten.
Die optimale Mannstärke zu finden ist dabei nicht immer leicht.
Was Sie als "Herde bezeichnen kenne ich als "Projektteam" oder 
"Abteilung" oder auch "Arbeitsgruppe".

Dennoch, Ihnen ein feines Wochenende.

@Moderator:

Meine Frage wurde beantwortet, ich habe das Gefühl, das hier zur Sache 
alles gesagt ist, Thread löschen, bitte.


Ihnen auch ein prima Wochenende.

von iTroll (Gast)


Lesenswert?

Marc Rupprath schrieb:
> Ich werde zunächst mal den Ansatz verfolgen das UI für den PC unter
> Windows 7 zu erstellen.

Ich stell mir gerade ein CAD-System mit "mUI" vor.
Lol

von Marc Rupprath (Gast)


Lesenswert?

iTroll schrieb:

" Ich stell mir gerade ein CAD-System mit "mUI" vor."

Du arbeitest also im Bereich der Softwarentwicklung für CAD Systeme, und 
auch ihr arbeitet an neuen Konzepten ?. Sicherlich interessant, aber 
hier ging es um UI/ HMI Systeme für Microcontroller und /oder 
Automatisierungstechnik.



Melde dich mal wenn euer Projekt entsprechend fortgeschritten ist in 
einem entsprechendem Forum.

Gruß

von MaWin (Gast)


Lesenswert?

Marc Rupprath schrieb:
> Wo belasst ihr es bei einer Trennung

Die Automatisierungs-Funktion bleibt in einem Microcontroller ohne 
Betriebssystem und Ethernet, betriebssicher, echtzeitfägig, klein und 
ohne Updates.

Die Parametrisierung und Visualisierung sollte wenn das Gesamtsystem 
eine Ethernet-Schnittstelle hat per Browser von Überall in der Welt 
erfolgen können.

Bleibt die Frage, wie die Schnittstelle entsteht, auf der der TCP/IP 
Stack und Mini-WebServer mit Firewall und Authentifizierung per https 
läuft. Das wäre dein Touchcomputer der mit dem autonomen 
Automatisierungs-uC per CAN redet. Dort kann ein Linux laufen, wenn du 
die Quellen der Schnittstelle zum uC freigibst. Ohne Quellenfreigabe 
halte ich Verwendung von Linux für eine Schweinerei.

von Marc Rupprath (Gast)


Lesenswert?

Hallo MaWin;


Danke für deine Antwort:
Das ist momentan auch der beste Ansatz: Mikrocontroller + 
(Touch)-Computer
zur Bedienung






"Dort kann ein Linux laufen, wenn du
die Quellen der Schnittstelle zum uC freigibst. Ohne Quellenfreigabe
halte ich Verwendung von Linux für eine Schweinerei."

Hab ich nicht so genau verstanden wie du das meinst.
Kannst du mir das noch mal erläutern bitte?
Wann genau hältst du die Verwendung  von Linux für Schweinerei ?

Danke dir nochmal.

von MaWin (Gast)


Lesenswert?

Linux ist open sources. Wer es einsetzt, sollte auch seine Quellen 
veröffentlichen. Nur damit ist es möglich, diesen steuernden 
Touch-Computer auch in 10 Jahren zu ersetzen, wenn deine heutuge 
Softward mangels Aufwärts-Komoatibilität schon längst nicht mehr unter 
dem dann üblichen Linux läuft. Dein Microcontroller mit dem 
Echtzeitprogramm wird nämlich auch dann noch kaufen. Dessen Sourcen muss 
du nicht veröffentlichen, aber durch den veröffentlichten Source auf dem 
Touch-Computer ist die Schnittstelle dokumentiert.

von Marc Rupprath (Gast)


Lesenswert?

Hallo MaWIn;

Open Source ist, soweit ich das bei Linux / Android verstandne habe nur 
der Basis Kernal, am Hardware angepasste Images  Packete  
Distributionen sind das nicht unbedingt.

Was auch nicht die Frage ist: Für eine Vielzahl von Firmen ist Android / 
Linux eben auch die Basis Ihrer Geschäfte, verbunden mit spezifischem 
know how und Geschäftsgeheimnissen.

Nicht mal beim Rasberry PI ist alles offengelegt, soweit ich weiss ?!
Dem gegenüber steht das Open Linzx Projekt von Olimex, wo selbst das 
Hardwaredesign open Source ist.

Ich bin aber eher bereit für ein Linux Development kit etwas mehr zu 
bezahlen, wenn für die gesammte Hardware und Schnittstellen gut in das 
system integrierte Treiber nebst API vorhanden sind und ich diese nicht 
noch erst selber schreiben muss.


Für mich steht nicht der open Soure gedanke im Vordergrund, auch nicht 
als Hobby.

Mich interessiert vielmehr warum jemand aus technischer Sicht:
eher Win7,oder Android,oder Linux für seine Lösung verwendet hatte.
Das wurde hier schon hinreichend beantwortet.

Dennoch danke für deine Meinung.



Dennoch danke für deine Hinweise.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.