it-swarm.com.de

Benutzeroberfläche für die Anbindung an Hardware

Ich bin kürzlich auf eine interessante Frage gestoßen, die meiner Meinung nach zum Nachdenken anregt. Die ursprüngliche Frage war, wie die betreffende Person ein Optionsfeld aktivieren und aktivieren kann, aber nicht in dem Moment überprüft, in dem sie darauf geklickt hat. Der Grund war, dass die Optionsfelder tatsächlich eine Hardware-Geräteeinstellung (eine SPS) steuerten und dass er wirklich wollte, dass der Status der Optionsfelder den Status Hardware widerspiegelt. Wenn die SPS den Status ändert, wird der ausgewählte Status der Optionsfelder aktualisiert.

Das hat mich gefragt. Obwohl ich die Absicht für gut halte, bezweifle ich, dass dies die beste Lösung ist, um dem Benutzer mitzuteilen, dass sich der Hardwarestatus noch nicht geändert hat. Ich glaube, ich würde mit einem Optionsfeld frustriert sein, das sich nicht sofort zu dem Element ändert, auf das ich geklickt habe. Zuerst würde ich versuchen, erneut darauf zu klicken, aber je nachdem, wie lange es dauert, kann ich aufgeben und dann ziemlich überrascht sein, dass die Änderung ohnehin Sekunden später auftritt.

Meine Frage wäre: Was wäre ein guter Weg, um Feedback zu geben? Sollte die Kontrolle nicht angeben, dass sie die Anfrage zumindest registriert hat? Und wie kommunizieren Sie, dass der Zustandswechsel erfolgreich war oder schlimmer noch fehlgeschlagen ist? Beachten Sie, dass diese Art von Szenario nicht nur beim Umgang mit SPS oder anderer Hardware auftreten kann, sondern auch, wenn eine solche Statusänderung einen komplizierten Softwarepfad auslöst, dessen Abschluss eine Weile dauern kann und der fehlschlägt.

5
André

Es gibt Spielraum für Variationen des folgenden Prozesses, aber es definiert das Grundprinzip

enter image description here

Im Besetztzustand kann keine der Schaltflächen angeklickt werden, bis das Ergebnis ermittelt wurde.

6
Roger Attrill

Ich kann mir ein paar mögliche Lösungen vorstellen, obwohl vieles von der jeweiligen Umgebung usw. abhängen wird.

  1. Deaktivieren Sie das Steuerelement, bis die Hardware meldet, dass es aktualisiert wurde.

    Dies würde funktionieren, wenn Sie den Status der Hardware über einen Schalter oder ein Optionsfeld ändern. Wenn die Steuerelemente ausgegraut sind, wird angezeigt, dass die Nachricht gesendet wurde, und durch erneutes Aktivieren der Steuerelemente wird angezeigt, dass die Nachricht empfangen wurde.

  2. Haben Sie ein zweites Steuerelement, das den tatsächlichen Wert schattiert.

    Dies ist möglicherweise besser für kontinuierliche Variablen (z. B. Hochfrequenz) geeignet. Der Benutzer würde den erforderlichen Wert einstellen und dann würde ein zweites Steuerelement (z. B. ein äußerer Ring eines Zifferblatts, ein "Schatten" auf einem Schieberegler oder ein zweites Textfeld) den tatsächlichen Wert anzeigen und dies würde nur aktualisiert, wenn die Hardware dies meldet neuer Wert.

enter image description here

1
ChrisF

Ich würde "was sagen Sie der Hardware zu tun" und "was macht die Hardware tatsächlich" als unabhängige Aspekte des Zustands betrachten. Obwohl es normalerweise eine starke Korrelation zwischen ihnen gibt, kann ein UI-Design, das angenommen eine Korrelation ist, in vielen Eckfällen, in denen die Korrelation fehlschlägt, Schwierigkeiten haben. Im Gegensatz dazu, wenn man Tasten für "Ventil öffnen", "Ventil schließen" und möglicherweise "Ventilaktion abbrechen" und eine Anzeige mit der Aufschrift "Ventil öffnen", "Ventil ist offen", "Ventil schließt", "Ventil ist" hat geschlossen "und möglicherweise" Ventil beim Öffnen gestoppt "und" Ventil beim Schließen gestoppt ". Eine solche Benutzeroberfläche ermöglicht es, klar anzuzeigen, was gerade passiert.

Ein zusätzlicher Vorteil der Trennung von Befehlen von Rückkopplungen besteht darin, dass eine solche Trennung den Umgang mit Hardware erleichtert, die unterschiedliche Mengen an Rückkopplungen zur Verfügung stellt (z. B. wenn Endschalter durch analoge Positionssensoren ersetzt werden oder umgekehrt). Dies hilft auch dabei, Schwierigkeiten zu vermeiden, die auftreten können, wenn sich der Hardware-Status ändert, während ein Benutzer darauf klickt. Wenn man die Schaltflächen "Ventil öffnen" und "Ventil schließen" hat, denen es egal ist, ob das Ventil geöffnet oder geschlossen ist [und eine Aufforderung zum Öffnen eines bereits geöffneten Ventils ist harmlos], dann ist der "Befehl" -Teil der Benutzeroberfläche kann von "aktuellen Status anzeigen" entkoppelt werden.

0
supercat