Norm-Namen¶
Das Addin rs_norm ist eine Erweiterung für UniPlot um Kanalnamen und globale Attributnamen in NC-Dateien in Norm-Namen umzuwandeln. Damit können die Namen von unterschiedlichen Prüfstandssystemen auf einheitliche Namen konvertiert werden. Das vereinfacht die Auswertung der Daten erheblich.
Die folgenden Import-Filter verwenden das Norm-Namen Addin:
Typ |
Standard Schema Name |
---|---|
UTX |
Wert des Attributs „scheme“, z. B. scheme=PST1 |
ASAM ODS 3 |
„PumaOpen“ |
Anstatt des Attributs scheme
kann ein globales Attribut festgelegt werden,
das den entsprechenden Schema-Namen enthält.
Beispiel: Pruefstand = TC12
. Das bedeutet, dass die Original-Datei ein
Attribut mit dem Namen Pruefstand
enthält, das den Wert TC12
besitzt.
In der Norm-Namen-Tabelle sollte nun eine Spalte mit den Text TC12
existieren. Die Kanalnamen der entsprechenden Spalte werden dann in die
Normnamen umgesetzt. Kanalnamen, die in der Norm-Namen-Tabelle nicht
vorhanden sind, werden nicht verändert. Falls das Schema in der
Norm-Namen-Tabelle nicht vorhanden ist, werden die Original-Kanalnamen nicht
verändert.
Mit den folgenden Aufrufen können die Attributnamen festgelegt werden:
UTX-Dateien:
WriteProfileString("NormName", "utx_scheme_name", "Pruefstand");
ASAM-ODS-3 Daten:
WriteProfileString("NormName", "aods3_scheme_name", "Pruefstand");
Für ASAM-ODS-3 Daten kann der Schema-Wert auch alternativ in der Windows Registry gespeichert werden:
WriteProfileString("AODS_BROWSER_3", "NormNameScheme", "PumaOpen")
Installation¶
Markieren Sie im Add-In-Manager (Extras=>Add-In Manager) das Addin
Norm-Namen
. Danach finden Sie im Extras-Menü einen neuen
Eintrag „Norm-Namen Konfiguration“.
Norm-Namen Tabelle¶
Für die Erstellung der Normnamen-Datei benötigen Sie Excel. Eine Beispieldatei
finden Sie im Verzeichnis uniplot\addin\rs_norm
. Die Datei hat den
Namen norm_example.xls
.
Die Excel-Datei besteht aus 2 Blättern mit den Namen Headernames und Channelnames.
In der Zelle A1 muss der Text XLS-NormHeaderNames:v1 bzw. XLS-NormChannelNames:v1 stehen.
Beispiel:
Die Normnamen müssen den Konventionen für NC-Dateien entsprechen: Der Name muss
mit einem Buchstaben oder einem Unterstrich beginnen, gefolgt von 0 oder mehr
Buchstaben oder Zahlen sowie dem Unterstrich(_
). Groß- und Kleinbuchstaben
werden unterschieden. Sonderzeichen im Namen werden durch Unterstriche ersetzt.
Umlaute werden wie folgt umgesetzt: Ä->A, ä->a, Ö->O, ö->o, Ü->U, ü->u, ß->s.
Die Header- und Kanalnamen für die Schema müssen in der Schreibweise mit den Namen übereinstimmen, wie sie in der Quelle definiert sind. Groß- und Kleinschreibung muss beachtet werden.
Die Excel-Datei wird über den Konfigurationsdialog ausgewählt und in eine neue Datei mit der Endung .unt konvertiert. Beim Import von Daten greift UniPlot dann auf die .unt-Datei zu.
Konfiguration¶
Im Konfigurationsdialog kann die Normnamen-Umsetzung eingeschaltet werden.
Schema-Namen beim CSV-Export exportieren: Der CSV-Export enthält eine zusätzliche (zweite) Zeile mit den Schema-Namen. Die Einstellung kann auch über UniScript aktiviert werden:
WriteProfileString("NormName", "ExportSchemeName", "1");
Beispiel-CSV-Export:
Channel1-NormName, Channel2-NormName, Channel3-NormName
Channel1-SchemaName, Channel2-SchemaName, Channel3-SchemaName
Channel1-Unit, Channel2-Unit, Channel3-Unit
1, 0, 1.1
2, 0, 1.2
Die Excel-Datei mit den Norm-Namen wird über den Schalter Import… geladen.
Falls keine Norm-Namen-Datei mit der Endung .unt
angegeben ist, erstellt
die Funktion eine neue Datei im Verzeichnis der Excel-Datei mit Endung
.unt
.
Wenn die Option Norm-Namen-Datei mit folgenden Excel Datei automatisch
synchronisieren markiert ist, wird die .unt
-Datei automatisch
aktualisiert, wenn sich die Excel-Datei geändert hat.
UniScript¶
Beispiel, wie die Normnamen auf eine existierende NC Datei angewendet werden können:
def NC_ApplyNormNames1(ssNCFile)
{
ssScheme = "PumaOpen"; // must be scheme in the norm name file.
ncid = nc_open(ssNCFile, NC_WRITE);
if (ncid == -1) {
return FALSE;
}
nc_redef(ncid);
NC_ApplyNormNames(ncid, ssScheme)
nc_endef(ncid);
nc_close(ncid);
return TRUE
}
Im folgenden Beispiel wird die Callback-Funktion OnImportUpdateNCFile
verwendet, um die Normnamen auf eine NC-Datei anzuwenden.
OnImportUpdateNCFile
wird beim Öffnen einer NC-Datei aufgerufen, zum
Beispiel beim Aufruf von auto_ImportData.
def OnImportUpdateNCFile(ssNCName)
{
global _hNN;
if (NN_IsActive() == FALSE) {
return TRUE;
}
if (_hNN == 0) {
return TRUE;
}
svData = MapLookup(_hNN, "$AvailableScheme");
ssInit = CreateListBoxText(svData);
ssScheme = DialogBox("|C10 ", ssInit, ..
"Wählen Sie ein Normnamen-Schema aus");
if (ssScheme == "DLG_CANCEL") {
return TRUE;
}
ncid = nc_open(ssNCName, NC_WRITE);
if (ncid == -1) {
MessageBoxError("Cannot open NC file: %s", ssNCName);
return TRUE
}
nc_redef(ncid);
NC_ApplyNormNames(ncid, ssScheme);
nc_endef(ncid);
nc_close(ncid);
return TRUE;
}
History
Version |
Beschreibung |
---|---|
R2018.10 |
Excel 2007 Dateien (XLSX) können verwendet werden. |
Probleme¶
Falls Probleme auftreten, zögern Sie bitte nicht und melden Sie sich bei uns.
id-256545