ecu.test lab

Zusammenfassung

Mit ecu.test lab können webbasierte Benutzerobeflächen für den intuitiven Zugriff auf eine von ecu.test gesteuerte Testumgebung erstellt werden.

../_images/ecuTestLab_intro.png

Die Benutzeroberfläche kann passgenau auf die Bedürfnisse der jeweiligen Anwendergruppen zugeschnitten werden. Verschiedene Widgets ermöglichen die Anzeige von Informationen oder die Manipulation von Werten und Zuständen des Prüfplatzes.

Die Widgets werden für

  • globale Mappings,

  • Packages oder

  • Expressions

konfiguriert. Die entsprechenden Toolzugriffe, Packageausführungen oder Expression- Auswertungen erfolgen in ecu.test.

Info

Die Weboberfläche von ecu.test lab ist ausschließlich in englischer Sprache verfügbar.

Lizenz

Für ecu.test lab wird die Lizenzoption „ecu.test lab“ benötigt.

Ein Demo-Modus von ecu.test lab steht in ecu.test zur Verfügung. Fast alle Funktionalitäten können genutzt und evaluiert werden. Jedoch können im Demo-Modus nur fünf Widgets in einer View enthalten sein.

Setup in ecu.test

Die Webanwendung ecu.test lab kommuniziert über einen Web-Server mit ecu.test. Dieser Server muss in ecu.test gestartet werden, damit ecu.test lab genutzt werden kann.

Ein Klick auf den ecu.test lab Icon in der Fußzeile von ecu.test öffnet den ecu.test lab Dialog. Alternativ kann der Dialog über das Extras-Menü erreicht werden.

../_images/ecuTestLab_icon_in_ecu.test.png

In diesem Dialog kann nun der Web-Server für ecu.test lab durch einen Klick auf die Server starten-Schaltfläche gestartet werden.

../_images/ecuTestLab_dialog.png

Der Dialog zeigt einen Link an, der zur ecu.test lab Weboberfläche führt. Ein Klick auf den Link öffnet nun ecu.test lab im Webbrowser.

Bei gestartetem Server wird auch über den ecu.test lab-Eintrag im Extras-Menü der Browser geöffnet.

Info

Falls ein bestimmter Port für den Server genutzt werden soll, kann dieser in den Einstellungen für ecu.test lab gesetzt werden. In der Einstellungen kann auch ausgewählt werden, ob der ecu.test lab Server standardmäßig mit ecu.test gestartet werden soll.

ecu.test lab Startseite

Beim Start von ecu.test lab wird die Startseite angezeigt. Dort werden alle verfügbaren Views aufgelistet.

Der Begriff View bezeichnet eine konfigurierbare Benutzeroberfläche in ecu.test lab, die mehrere Widgets enthält. Für die verschiedenen Anwendungsfälle können beliebig viele Views konfiguriert werden. Zu einem Zeitpunkt kann nur eine View aktiv sein.

Von der Startseite aus können Views

  • geöffnet,

  • gelöscht oder

  • hizugefügt

werden.

../_images/view_selection.png

Arbeiten in einer View

Ist eine View geladen, wird die Navigationsleiste im oberen Bildbereich und der Arbeitsbereich darunter angezeigt.

Die Navigationsleiste enthält:

Startseite

Über den „Home“-Button kann die Startseite wieder aufgerufen werden.

Name der View

Zeigt den Namen der aktuellen View.

Editieren-Modus

Durch einen Klick auf das Zahnrad-Symbol kann der Editieren-Modus aktiviert oder deaktiviert werden. Das Editieren wird im Abschnitt zum Editieren einer View genauer beschrieben.

../_images/start_edit.png
Konfiguration starten oder stoppen

Die meisten Anwendungsfälle erfordern eine aktive Konfiguration in ecu.test. Die Konfiguration kann über die Wiedergabe-Schaltfläche („Play“) in der Navigationsleiste von ecu.test lab gestartet werden.

../_images/start_config.png

Ein Klick auf diese Schaltfläche startet die ecu.test-Konfigurationen, die für die aktuelle View hinterlegt wurden (siehe auch Views). Wenn keine Konfigurationen konfiguriert wurden, werden die in ecu.test ausgewählten Konfigurationen gestartet.

Monitoring starten oder stoppen

ecu.test lab bietet mit dem „Monitoring-Modus“ eine Live-Überwachung von Tool-Variablen über ecu.test an. Die Überwachung kann über die Schaltfläche LIVE in der Navigationsleiste aktiviert werden. Sie ist aktiv, sobald die Schaltfläche LIVE orange angezeigt wird. Bei einem erneuten Klick wird die Überwachung deaktiviert.

../_images/start_monitoring.png

Der Monitoring-Modus wirkt sich nur auf Widgets aus, für die ein Global Mapping- oder Package-Zugriff als „Read Configuration“ konfiguriert wurde. Die Werte werden zyklisch aktualisiert. Das Intervall für die Abfrage entspricht dem Messraster, das im jeweiligen Widget als „Acquisition Rate“ eingestellt wurde.

Pages wechseln

Eine View kann aus mehreren Pages bestehen. Diese werden am unteren Bildschirmrand aufgelistet. Durch Wechseln der Page kann schnell zwischen verschiedenen Widget-Anordnungen gewechselt werden, ohne die aktuelle Testumgebung zu beeinflussen.

../_images/pages.png

Im Arbeitsbereich werden die konfigurierten Widgets angezeigt. Im Editieren-Modus kann dieser Bereich frei umgestaltet werden.

Editieren einer View

Dieser Modus ermöglicht es, die View umzubenennen. Optional können eine ecu.test-Konfiguration und eine ecu.test-Testbenchkonfiguration hinterlegt werden. Wird außerhalb des Editieren-Modus der Start config button betätigt, werden die hinterlegten Konfigurationen in ecu.test gestartet. Falls keine Konfigurationen in der View hinterlegt sind, werden die Konfigurationen gestartet, die zu dem Zeitpunkt in ecu.test ausgewählt sind.

../_images/edit_mode_save.PNG

Im Editieren-Modus können Größe und Position sowie die Konfigurationen der einzelnen Widgets bearbeitet werden.

Änderungen innerhalb einer Page können rückgängig gemacht (Ctrl + Z) und wiederhergestellt (Ctrl + Y) werden. Mit einem Klick auf die Discard changes-Schaltfläche werden alle Änderungen verworfen und der Editieren-Modus verlassen. Mit einem Klick auf die Save changes-Schaltfläche wird die View gespeichert und der Editieren-Modus verlassen.

Pages können erstellt, gelöscht, umbenannt oder verschoben werden.

../_images/pages_edit.png

Neue Widgets

../_images/new_widget_bar.png

Im Editieren-Modus erscheint eine Leiste mit Symbolen auf der linken Seite des Bildschirms. Jedes dieser Symbole stellt ein Widget dar (siehe Widgets). Wenn die Maus sich über einem der Symbole befindet, wird ein Tooltip angezeigt, der den Namen des Widgets anzeigt.

Um eines der Widgets zu verwenden, muss das Symbol per „Drag and Drop“ auf die gewünschte Position im Arbeitsbereich neben der Leiste gezogen und abgelegt werden. Beim Loslassen öffnet sich die Widget-Konfigurationsansicht. Sobald das neue Widget konfiguriert und gespeichert ist, wird es an der gewünschten Position angezeigt.

Mitgelieferte Widgets

ecu.test lab bietet Widgets für unterschiedliche Anwendungsfälle. Sie werden im Folgenden kurz erklärt.

Widget type

Icon

Indikator (Indicator)

Liest den Wert des konfigurierten globalen Mappings und interpretiert ihn als boolschen Wert. Zeigt diesen Wert an.

Das Widget unterstützt den Zugriffstyp „Global Mapping“ und „Package“.

../_images/indicator.png
Wert Lesen (Read Value)

Zeigt einen gelesenen Wert an.

Das Widget unterstützt die Zugriffstypen „Global Mapping“, „Package“ und „Expression“.

../_images/read_value.png
Balken (Bar)

Visualisiert einen gelesenen Wert in einem definierten Wertebereich. Die Darstellung erfolgt als Balken („Bar“).

Das Widget unterstützt den Zugriffstyp „Global Mapping“ und „Package“.

../_images/bar.png
Rundinstrument (Gauge)

Visualisiert einen gelesenen Wert in Form eines Rundinstruments („Gauge“).

Das Widget unterstützt den Zugriffstyp „Global Mapping“ und „Package“.

../_images/gauge.png
Signalverlaufsdiagramme (Signal Graph)

Visualisiert mehrere gelesene Werte in Form eines Signalverlaufdiagramms („Signal Graph“).

Das Widget unterstützt die Zugriffstypen „Global Mapping“, „Package“ und „Expression“.

../_images/signal_graph.png
Schalter (Toggle)

Zeigt einen Schalter („Toggle“), um zwischen boolschen Werten hin und her zu schalten. Der aktuelle Wert wird von der „Read Configuration“ eingelesen und angezeigt. Eine Betätigung des Schalters wirkt sich auf die „Write Configuration“ aus.

Das Widget unterstützt die Zugriffstypen „Global Mapping“, „Package“ und „Expression“.

../_images/toggle.png
Schieberegler (Slider)

Über einen grafischen Schieberegler können Werte für den Schreibzugriff ausgewählt werden. Der aktuelle Wert wird von der gleichen Größe eingelesen, die in der „Read / Write Configuration“ konfiguriert wurde, und über die Position des Schiebereglers dargestellt.

Das Widget unterstützt den Zugriffstyp „Global Mapping“ und „Package“.

../_images/slider.png
Schaltfläche (Button)

Schreibt einen konfigurierbaren Wert.

Das Widget unterstützt die Zugriffstypen „Global Mapping“, „Package“ und „Expression“.

../_images/button.png
Zahl Schreiben (Write Number)

Schreibt einen Wert, der über ein Eingabefeld für Zahlen eingegeben werden kann.

Das Widget unterstützt die Zugriffstypen „Global Mapping“, „Package“ und „Expression“.

../_images/write_number.png
Text Schreiben (Write Text)

Schreibt einen Wert, der über ein Eingabefeld für Texte eingegeben werden kann.

Das Widget unterstützt die Zugriffstypen „Global Mapping“, „Package“ und „Expression“.

../_images/write_text.png
Auswahl (Selection)

Schreibt einen wählbaren Wert.

Das Widget unterstützt die Zugriffstypen „Global Mapping“, „Package“ und „Expression“.

../_images/selection.png
Job aufrufen (Call)

Ruft einen Job mit den angegebenen Parametern auf und zeigt das Ergebnis an.

Das Widget unterstützt den Zugriffstyp „Global Mapping (Job)“.

../_images/call.png
Bild (Image)

Zeigt ein Bild an, das dynamisch gelesen oder generiert wurde.

Das Widget unterstützt die Zugriffstypen „Global Mapping“, „Package“ und „Expression“.

../_images/image.png
Video

Zeigt einen Videostream an. Das Widget benötigt eine URL und den Typ des Videos. Der Typ des Videos muss vom Browser unterstützt werden (derzeit: MP4, WebM und OGG). Für einen Stream, der von ecu.test bereitgestellt wird, kann der Typ-Parameter weggelassen werden.

../_images/video.png
HTML

Zeigt je nach Konfiguration des Widgets entweder den HTML-Text oder die referenzierte HTML-Datei an.

../_images/html.png
ecu.test log

Zeigt die aktuelle Log-Ausgabe von ecu.test an. Der angezeigte Text entspricht dem Inhalt des ecu.test-Meldungsfensters und ist immer aktuell.

../_images/ecu.test_log.png
Page-Referenz (Page Reference)

Zeigt die Widgets einer anderen View Page an. Dadurch ist es möglich, eine bestimmte Anordnung von Widgets in mehreren Views wiederzuverwenden. Es kann wahlweise ein View des aktuellen oder eines eingebundenen Bibliotheksworkspaces referenziert werden.

../_images/pagereference.png

Eigene Widgets (Custom Widgets)

Zusätzlich zu den mitgelieferten Widgets besteht die Möglichkeit, Widgets selbst zu gestalten. Diese können sehr flexibel in HTML, JavaScript und CSS entwicklet werden und verfügen über die selben Möglichkeiten für Schreib- und Lesezugriffe mittels Packages oder globalen Mappings.

Hier einige Beispiele für eigene Widgets:

../_images/custom_widgets.png

Die eigenen Widgets werden unterhalb der mitgelieferten Widgets in der Seitenleiste zur Auswahl angeboten und können ganz analog zu mitgelieferten Widgets verwendet werden.

Die Integration in lab ist hier beschrieben (setzt lokal gestartetes ecu.test und lab voraus): Custom Widget API documentation

Info

Custom Widgets werden im Demo-Modus nicht unterstützt

Widget-Konfiguration

Ein bestehendes Widget kann über einen Klick darauf konfiguriert werden. Dies öffnet eine Konfigurationsseitenleiste, in der alle Widget-spezifischen Einstellungen vorgenommen werden können.

Mit einem Klick auf die OK-Schaltfläche, einen leeren Bereich auf der Arbeitsfläche oder ein anderes Widget wird die Widget-Konfiguration übernommen. Falls die Konfiguration nicht valide ist, wird eine Fehlermeldung angezeigt und die Seitenleiste kann nur per Cancel geschlossen werden.

Zugriffstypen in ecu.test

In der „Read Configuration“ oder der „Write Configuration“ eines Widgets kann eingestellt werden, wie auf Werte in ecu.test zugegriffen werden soll. Welche Zugriffstypen verfügbar sind, ist vom Widget-Typ abhängig.

Globales Mapping

ecu.test lab ermöglicht einen hochperformanten Zugriff auf Variablen eines angebundenen Tools. Der Zugriff erfolgt über das in ecu.test aktive globale Mapping. Sobald eine Variable als globales Mapping verfügbar ist, kann sie in Widgets für Lese- oder Schreibzugriffe unter Global mapping konfiguriert werden.

../_images/widget_configuration_read_mapping.png

Um alle benötigten globalen Mappings für den Zugriff in ecu.test lab vorzubereiten, sollten sie zunächst in einer oder mehreren globalen Mapping-Dateien (.xam) hinterlegt werden. Diese Dateien können nun in der Testkonfiguration hinzugefügt werden, die auch in der View hinterlegt ist. Auf diese Weise sind die Mappings bei der Konfigurationsstart auch in ecu.test *lab verfügbar.

Widgets, für die in der „Read Configuration“ ein lesender Zugriff auf ein globales Mapping eingestellt wurde, werden im Monitoring-Modus zyklisch aktualisiert.

Für Widgets, in deren „Write Configuration“ ein globales Mapping für den Schreibzugriff eingestellt wurde, wird der vom Anwender gesetzte Wert auf das Mapping geschrieben.

Info

Bis auf Weiteres werden nur skalare Werte und Bilder für den globalen Mappingzugriff unterstützt.

Package

Wird in der „Read Configuration“ bzw. „Write Configuration“ der Typ Package ausgewählt, kann im Folgenden ein Package inkl. seiner Parameter vorgegeben werden, dass bei einem Klick auf die Ausführungsschaltfläche des Widgets ausgeführt wird.

Für Schreibzugriffe kann, abhängig vom Widget-Typ, einer der Parameter als „dynamic“ gekennzeichnet werden, z.B. für das Number-Widget. Der im Widget vorgegebene Wert wird dann bei der Ausführung des Packages für diesen Parameter verwendet.

../_images/widget_configuration_write_package.png

Für Lesezugriffe muss der Name einer Packagevariablen vom Typ „Rückgabewert“ angegeben werden. Nach der Packageausführung wird der Wert dieser Variablen im Widget angezeigt. Wenn der Monitoring-Modus aktiviert ist, wird das konfigurierte Package entsprechend der „acquisition rate“ zyklisch ausgeführt, um das Widget zu aktualisieren.

../_images/widget_configuration_read_package.png

Die Packageausführung in ecu.test lab verwendet eine minimalistische, aber schnellere Ausführungs-Engine. Dadurch können Packages auch im Monitoring-Modus verwendet werden. Dies bedeutet auch, dass nicht alle Testschritte unterstützt werden. Wenn ein Package einen nicht untersützten Testschritt enthält, wird dies in ecu.test lab als Warnung angezeigt.

Offiziell nicht unterstützt in dieser Version:

Expression

ecu.test lab kann Expressions von ecu.test auswerten lassen. Diese sind mit den Python-Ausdrücken vergleichbar, die auch in Berechnungsschritten in ecu.test enthalten sein können. In ecu.test lab kann nur auf die Namespaces der internen API (api.) und UserPyModules (user.) zugegriffen werden.

Wenn Expression in der „Read Configuration“ oder „Write Configuration“ ausgewählt wurde, kann eine Expression im darunter liegenden Textfeld eingegeben werden. Falls die Expression für Schreibzugriffe parametriert ausgeführt werden soll, kann optional der Name des Parameters der Funktion angegeben werden. Der eingetragene Wert des Widgets wird dann als Schlüsselwort-Argument an die Funktion übergeben.

../_images/configuration_of_expressions.png

Das obige Beispiel mit „test“ als Eingabe für das Widget würde zu folgendem Aufruf führen:

user.MyModule.SetValue(some_value="test")

Widget-Position und Größe

Im Editieren-Modus kann die Position der Widgets angepasst werden. Widgets können entlang eines Rasters frei auf der Seite platziert werden. Zusätzlich kann die Größe der Widgets angepasst werden. Dazu muss die untere rechte Ecke des Widgets mit der Maus angeklickt und gehalten werden. Dann kann die Größe des Widgets durch Ziehen der Maus angepasst werden.

../_images/widget_resize.png

Widgets kopieren

Im Editieren-Modus können Widgets innerhalb der gleichen View kopiert werden. Für eine Kopie eines Widgets, muss das bestehende Widget

  • mit gedrückter Strg-Taste

  • anggeklickt,

  • an eine neue Position gezogen und

  • die Kopie losgelassen werden.

Widgets löschen

Widgets können über das Papierkorb-Icon in der rechten oberen Ecke gelöscht werden. Alternativ können Sie das Widget anklicken und mit der Entf-Taste löschen.

Konfigurationsdatei

ecu.test lab speichert die Konfiguration in der Datei ecuTestLab.json im .workspace-Verzeichnis. Diese Datei beinhaltet alle Views und ihre Widgets.