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:
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:
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.
Im folgenden Dialogfeld wählen Sie die Kanalnamen aus. Stellen Sie die gewünschten Kanäle in die rechte Liste.
Nachdem Sie sowohl Stammdaten und Kanalnamen ausgewählt haben, wird die Vorlage erzeugt.
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.
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.
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.
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**
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.
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.
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.
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:
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:
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
:
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.
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:
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 Verzeichnisc:\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:
Weitere Informationen über die Automatisierung mit UniPlot finden Sie im Kapitel Überblick Automatisierung der Diagrammerstellung.
id-319975