Protokoll-Auswertungen

Ab Version 3.0 kann UniPlot zur Erstellung von Messdatentabellen verwendet werden. UniPlot nutzt dazu die Fähigkeiten des Programms Excel von Microsoft. Auf Ihrem Rechner muss dazu MS-Excel 97, MS-Excel 2000 oder höher verfügbar sein. UniPlot verwendet die ActiveX-Schnittstelle von Excel um die Daten in die Excel-Vorlage einzufügen.

Eine Excel-Vorlage kann aus mehreren Blättern bestehen. Es können Daten aus mehreren Datendateien in die Vorlage eingefügt werden. Damit können beispielsweise Stammdatenvergleiche durchgeführt werden.

Die Excel-Vorlage enthält Platzhalter für Stammdaten und Kanäle sowie die gesamte Formatierung des Protokolls. Ein Platzhalter besteht aus dem Namen eines Kanals oder Stammdatums sowie aus den Steuerzeichen * und $.

Kleine Tabellen können in eine UniPlot-Seite eingebettet sein. Mehr dazu im Kapitel Einbetten einer Tabelle in eine UniPlot-Dokument-Seite.

Eine Vorlage kann von Hand erstellt werden oder mit Hilfe eines Vorlagen-Erstellers, siehe Erzeugung einer Vorlage.

Beispiel für eine eingebettete Excel-Tabelle:

../../_images/XLSReportExample-Embed.png

Erzeugung einer Vorlage

Um eine neue Vorlage zu erstellen, wählen Sie

  • Wählen Sie Datei=>Weitere Datei-Funktionen

  • Wählen Sie Excel-Report: Erzeuge neue Excel-Protokoll-Vorlage. Das folgende Dialogfeld wird angezeigt:

    ../../_images/ReportTemplateCreator-de.png

    Geben Sie den Namen der zu erstellenden Vorlage ein. Bei der späteren Verwendung der Vorlage wird der Name im Auswahldialog angezeigt. Deshalb sollten Sie einen Namen wählen, der die Auswertung gut beschreibt. Der Name sollte nicht länger sein, als das Textfeld im Dialog.

    Eine Vorlage kann sowohl fest definierte Kanalnamen als auch Platzhalter für Kanäle enthalten, die erst bei der Erstellung eines Protokolls festgelegt werden. Die Anzahl der Kanäle legen Sie im Feld Freie Kanäle fest.

    Um die gewünschten Stammdaten und Kanalnamen auszuwählen, müssen Sie eine typische Dateidatei im Feld Beispiel Datendatei angeben. Drücken Sie dazu die Schaltfläche und wählen eine Datendatei aus.

    Wenn Sie alle Eingaben gemacht haben, drücken Sie OK.

  • Im folgenden Dialogfeld wählen Sie die Stammdaten aus. Stellen Sie die gewünschten Stammdaten in die rechte Liste.

    ../../_images/ReportTemplateCreator-SelectHeaderData-de.png
  • Im folgenden Dialogfeld wählen Sie die Kanalnamen aus. Stellen Sie die gewünschten Kanäle in die rechte Liste.

    ../../_images/ReportTemplateCreator-SelectChannelData-de.png
  • Nachdem Sie sowohl Stammdaten und Kanalnamen ausgewählt haben, wird die Vorlage erzeugt.

    ../../_images/ReportTemplateCreator-ExcelSheet-de.png
  • Die Vorlage wird in Excel angezeigt. Sie können sie nun Ihren Wünschen anpassen. Speichern Sie dann die Änderungen und schließen die Vorlage.

Wie die erzeugte Vorlage nun mit Daten bestückt wird, wird im Kapitel Beispiel für eine Protokollauswertung beschrieben.

Aufbau der Excel-Vorlage

Platzhalter

Die Excel-Vorlage kann mehrere Tabellenblätter enthalten. Jedes Blatt kann Platzhalter enthalten, die von UniPlot durch den Wert eines Attributes oder durch die Zahlen oder Texte eines Kanals ersetzt werden. Es können Platzhalter für globale Attribute als auch für Kanalattribute definiert werden. Die Daten können auch aus verschiedenen Datendateien gelesen werden.

Stammdaten-Platzhalter

Von UniPlot werden die Platzhalter in der Vorlage (XLS-Datei) gesucht und durch den Text aus der Messdaten-Datei ersetzt. Man kann Platzhalter für globale Attribute und für Kanalattribute definieren. Ein globales Attribut ist z. B. Messungsname. Ein Beispiel für ein Kanalattribute die Einheit. Dieses Attribut hat den Namen units.

Ein Platzhalter beginnt mit einem $-Zeichen und endet mit einem $-Zeichen. Beispielsweise ist der Text $Vers_Nr$ ein Platzhalter für ein globales Attribut. Für ein Kanalattribut wird der Kanalname gefolgt von einem Punkt (.) vor den Attributnamen gesetzt, z. B. $EngSpd.units$.

Der in $-Zeichen eingeschlossene Text muss exakt mit einem Attributnamen in der konvertierten Messdaten-Datei übereinstimmen.

Bemerkung

UniPlot konvertiert alle Messdaten-Dateien in das netCDF-Format. Die erzeugten Dateien haben die Namenserweiterung .nc. Da die Namen in den netCDF-Dateien keine Sonderzeichen enthalten dürfen, werden diese Zeichen bei der Konvertierung durch Unterstriche ersetzt. Die erzeugten Namen kann man über das Dialogfeld Datei=>Daten importieren anschauen.Vor dem Attributnamen kann noch ein Datei-Alias getrennt duch einen Doppelpunkt gestellt werden, z. B.: $File1:Vers_Nr$. Der Platzhalter $File2:Vers_Nr$ wird z. B. durch den Text des Attributs Vers_Nr aus der zweiten Datendatei ersetzt. Der Datei-Alias setzt sich zusammen aus dem Wort File und einer folgenden Nummer. Die Nummerierung beginnt mit 1.

Eine Zelle in der Excel-Tabelle kann mehrere Platzhalter enthalten.

Kanaldaten-Platzhalter

Der Kanalname wird in Sternchen eingeschlossen, z. B.: *n_ATL*. UniPlot trägt dann die Daten des Kanals als Spalte in die Tabelle ein. Der erste Wert eines Kanals wird an die Stelle des Platzhalters geschrieben. Die Formatierung der Daten, z. B. Nachkommastellen oder Font und Farbe, werden in der Zelle eingestellt. UniPlot kopiert die Formatierung in alle weiteren Zellen, die für die Messdaten erforderlich sind.

Wenn die konvertierte netCDF-Datei das Kanalattribut C_format enthält, wird die Formatierung der Zahlenwerte (Nachkommastellen) in der Excel-Tabelle überschrieben. Bei Pasy-Dateien und bei Messungen aus der X-One-Datenbank enthält die netCDF-Datei das Kanalattribut C_format.

Das folgende Bild zeigt eine Excel-Vorlage. Der obere Teil der Tabelle stehen Platzhalter für Kopfdaten (Globale Attribute), weiter unten stehen die Platzhalter für Datenkanäle.

../../_images/XLSReportExample.png

Freie Kanaldaten-Platzhalter

Die Vorlage kann auch Platzhalter enthalten, die erst während der Bedienung mit Kanälen belegt werden. Die Platzhalter haben den folgenden Aufbau: ***UCHxx***, wobei xx für eine laufende Nummer steht.

Beispiel: ***UCH1***.

Bei der Bedienung wird dann ein Dialogfeld mit den Kanalnamen angezeigt, die in der Vorlage noch nicht eingetragen worden sind. Falls die Vorlage alle Kanäle der ausgewählten Datendatei enthält, wird der Dialog nicht angezeigt.

Weitere Steuerzeichen

Wenn eine Rekord-Nummerierung benötigt wird, kann das Schlüsselwort **ROWCOUNTER** als Kanalname in die Tabelle eingefügt werden.

Aubau einer Vorlage

Je nach Aufbau der Excel-Tabelle werden drei Typen unterschieden:

  • Einzeilig
  • Mehrzeilig
  • Einzeilig-Platzsparend

Die Tabelle kann auch in eine UniPlot-Dokumentseite eingebettet sein.

Einzeilige Tabellen

Das folgende Bild zeigt die Excel-Vorlage und darunter das Ergebnis einer Auswertung. Im oberen Teil der Tabelle stehen Platzhalter für Stammdaten, weiter unten stehen die Platzhalter für Datenkanäle.

../../_images/Protocol-SingleLineTemplate.png ../../_images/Protocol-SingleLineFilled.png

Bei einzeiligen Tabellen kann man den Kanal-Header (Kanalname und Einheit) in Excel als Wiederholungszeilen markieren (Excel-Befehl Seite Einrichten=>Tabelle=>Wiederholungszeilen oben).

Mehrzeilige Tabellen

Bei Messungen, bei denen ein Record auf mehrere Zeilen verteilt ausgeben werden soll, schreibt man die Kanalnamen untereinander in die gewünschten Zellen. Um zwischen den Blöcken für jeden Record eine Leerzeile einfügen zu können, kann der Platzhalter **EMPTYROW** in eine Zelle eingetragen werden.

../../_images/Protocol-MultiLineTemplate.png ../../_images/Protocol-MultiLineFilled.png

Die Zellen, die die Kanal-Platzhalter enthalten, enthalten auch die gesamte Formatierung (Füllfarbe, Fontfarbe, Dezimalstellen, Font, Rahmen, Ausrichtung, etc.) UniPlot kopiert die Formatierung in alle weiteren Zellen.

Jeder Kanal kann beliebig oft in der Tabelle auftauchen. Falls eine Zeilennummerierung erwünscht ist und kein Kanal wie z. B. ZeilNr vorhanden ist, kann der vordefinierte Platzhalter **ROWCOUNTER** an der gewünschten Stelle in der Excel-Vorlage eingetragen werden.

Bei mehrzeiligen Tabellen kann man den Kanal-Header (Kanalname und Einheit) in Excel als Wiederholungszeilen markieren (Excel-Befehl Seite Einrichten=>Tabelle=>Wiederholungszeilen oben).

Einzeilig-Platzsparende Tabellen

Bei dieser Formatierung wird ein Record auf mehrere Blöcke verteilt. Ein Block besteht aus einem Header und den Kanalnamen-Platzhaltern. Die erste Zeile eines Headers wird in der Spalte A durch das Schlüsselwort **CHANNELNAMES** markiert. Die Zeile mit den Kanalname-Platzhaltern wird mit dem Schlüsselwort **CHANNELS** markiert. Die Anzahl der Blöcke ist nicht begrenzt. Zwischen die Blöcke wird eine Leerzeile eingefügt. Der Header kann auch Attribut-Platzhalter enthalten.

Falls ein Block mehr Zeilen benötigt, als auf der Seite verfügbar ist, wird der Header an den Seitenanfang kopiert.

Damit die eingefügten Header sich nicht verschieben, sollten die Blattränder, Seitenformat und -größe und die Zeilenhöhe gegenüber der Vorlage nicht verändert werden.

Bei Füllen der Vorlage werden die Schlüsselwörter **CHANNELNAMES** und **CHANNELS** gelöscht. Die Spaltenbreite kann man beliebig einstellen.

Das Schlüsselwörter **CHANNELNAMES** kann zu Steuerung der Reporterstellung noch um die in der folgenden Tabelle aufgelisteten Schlüsselwörter ergänzt werden. Die Schlüsselwörter werden durch einen Doppelpunkt voneinander getrennt.

STARTNEWPAGE Block so verschieben, das er auf einer neuen Seite beginnt.
NEWPAGE Falls ein Block vollständig auf eine Seite passt, wird der Block so verschoben, das er auf einer neuen Seite beginnt.
EMPTYREMOVE Falls ein Block freie Kanäle enthält, von denen keiner verwendet wird, wird der Block vollständig entfernt.

Beispiel: **CHANNELNAMES:NEWPAGE:EMPTYREMOVE**

../../_images/Protocol-BlockTemplate.png

Im Bild oben ist die Spalte A nur deshalb so breit, damit man die Schlüsselwörter erkennt. Nachdem die Tabelle gefüllt wurde, werden die Elemente in Spalte A gelöscht. Sie können die Breite der Spalte A in der Vorlage bis auf 0 verringern.

../../_images/Protocol-BlockFilled.png

Einbetten einer Tabelle in eine UniPlot-Dokument-Seite

Eine eingebettete Excel-Tabelle kann z. B. als Schriftfeld verwendet werden.

Um eine Tabelle in eine UniPlot-Seite einzufügen, gehen Sie wie folgt vor:

  • Wählen Sie den Befehl Bearbeiten=>Objekt einfügen.

  • Wählen Sie aus der Liste Microsoft Excel-Arbeitsblatt und drücken OK. Die Excel-Tabelle wird in die obere linke Ecke der Seite eingefügt.

    ../../_images/Protocol-ActivtedEmbeddedTable.png

    Klicken Sie außerhalb der Tabelle um sie zu deaktivieren.

  • Mit einem rechten Mausklick auf der eingefügten Tabelle öffnen Sie das Kontext-Menü. Wählen Sie Umbenennen und geben im folgenden Dialogfeld als Namen den Text Exceltabelle ein. Über diesen Namen erkennt UniPlot, dass diese Tabelle Platzhalter enthält. Beachten Sie dabei Groß-/Kleinschreibung. Drücken Sie dann OK.

    ../../_images/Protocol-EmbeddedTableRename.png
  • Doppelklicken Sie nun die Tabelle um sie zu aktivieren.

  • Geben Sie nun die Platzhalter für Attribute und Kanäle ein. Attributplatzhalter werden in $-Zeichen und Kanalplatzhalter in *-Zeichen eingeschlossen. Weitere Informationen zu den Platzhaltern finden Sie im Kapitel Text-Platzhalter.

    Geben Sie für dieses Beispiel die folgenden Platzhalter ein:

    $Origin$    
    rpm SAETrq be
    [$EngSpd.units$] [$SAETrq.units$] [$Fuel.units$]
    *EngSpd* *SAETrq* *Fuel*

    Ihre Tabelle sollte dann etwa so aussehen:

    ../../_images/Protocol-EmbeddedTableWithPlaceholder.png

    Beim Eingeben der Platzhalter können Sie den Datenbrower verwenden, um die Namen der Attribute und Kanäle nachzuschauen.

  • Nachdem Sie alle Platzhalter eingegeben haben, klicken Sie außerhalb der Tabelle. Sie wird dadurch deaktiviert.

  • Nun sollen Daten aus einer Datei in die Tabelle eingelesen werden. Mit einem rechten Mausklick auf der Tabelle öffnen Sie das Kontextmenü. Das Menü zeigt einen weiteren Menüeintrag Daten laden…. Wählen Sie den neuen Menüeintrag und wählen die Datei uniplot\samples\test1.xls aus. Die Daten werden in die Tabelle eingetragen.

    Nun könnte Ihre Seite beispielsweise so aussehen:

    ../../_images/Protocol-EmbeddedTableInPage.png

Bemerkung

Falls es zu Darstellungsfehlern kommt, verschieben Sie die Tabelle ein wenig.Bei eingebetteten Tabellen wird nur die erste Seite der Arbeitsmappe gefüllt. Bevor UniPlot mit dem Füllen beginnt, wird eine Kopie der Tabelle erzeugt. Die Kopie trägt den Namen der Tabelle gefolgt von dem Text -UPT. Sie enthält die Platzhalter und die Formatierung der Tabelle. Da damit der Aufbau der Tabelle weiterhin bekannt ist, können nun andere Daten in die Tabelle eingelesen werden, ohne das man die Platzhalter neu eingeben müßte.

Falls Sie die Tabelle noch bearbeiten möchten, sollten Sie immer die Änderungen an der Kopie (xxx-UPT) durchführen und danach das Kommando Tabelle aktualisieren aufrufen. Dieses Kommando löscht die Anzeigeseite, kopiert die Platzhalter einschließlich der Formatierung aus Kopie und lädt erneut die Daten aus der NC-Datei.

Hier ein Beispiel aus der der Datei UniPlot\samples\sample.ipw:

../../_images/Protocol-sampleEmbeddedTable.png

Einrichten einer Auswertung

Die Excel-Vorlagen sollten im Verzeichnis UniPlot\template\report\ gespeichert werden. Im Auswahldialog werden die Excel-Dateinamen alle XLS-Dateien aus diesem Verzeichnis angezeigt.

../../_images/Protocol-SelectDlg-de.png

Bei der Bedienung einer Auswertung können Record-Filter definiert werden. Beispielsweise kann ein Filter definiert werden, sodass nur Records in die Tabelle eingetragen werden, bei denen die Drehzahl im Bereich 990 bis 1010 1/min liegt.

Missing Values werden in der Excel-Tabelle als leere Zellen dargestellt.

Stammdaten-Platzhalter, die in der entsprechenden Datendatei nicht vorhanden sind, werden in der Auswertung durch eine leere Zelle ersetzt.

Bei Kanälen, die in der entsprechenden Datendatei nicht gefunden werden, wird in der Auswertung eine leere Spalte eingfügt. Im Ereignisfenster wird eine Warnung mit dem Kanalnamen ausgegeben.

Beispiel für eine Protokollauswertung

  • Wählen Sie Datei=>Weitere Datei-Funktionen

  • Wählen Sie Excel-Report: Erzeuge Protokoll. Das folgende Dialogfeld wird angezeigt:

    ../../_images/Protocol-SelectDlg-de.png

    Wählen Sie den Report Example 1 aus.

  • Danach wird ein Dialogfeld angezeigt um die Messdaten auszuwählen. Für die Vorlage wählen Sie bitte die Datei WOT_UTX.XLS aus. Die Datei finden Sie im Verzeichnis c:\programme\uniplot\samples\automate\. Damit die Datei geladen werden kann, muss der UTX-Import-Filter geladen worden sein. Siehe Extras=>Add-In Manager. Wenn Sie die Datei ausgewählt haben, drücken Sie OK.

Nun werden die Daten geladen, Excel gestartet und die Daten in die Vorlage eingetragen. Sobald die Auswertung fertig gestellt ist, wird Excel angezeigt.

Protokollerstellung innerhalb einer Automatisierung

Die Vorlagen können auch innerhalb einer Automatisierung verwendet werden.

Hier ein einfaches Beispiel:

auto_AddToUI("Example Excel-Report", "Report1", "RSXLS_Template1");
def RSXLS_Template1()
{
    ssXLSTemplate = "UP_Temp.xls"
    svFile = auto_GetFileNameDialog(1, "Excel-Report");
    XLSREPORT_CreateFromTemplate(ssXLSTemplate, svFile);
}

Um die Auswertung zu starten, wählen Sie Auswertung=>Excel-Report. Das folgende Bild zeigt eine fertige Auswertung:

../../_images/XLSReportExample-Erg.png

Weitere Informationen über die Automatisierung mit UniPlot finden Sie im Kapitel Überblick Automatisierung der Diagrammerstellung.

id-319975