NC_SynchronizeTime¶
Die Funktion berechnet die zeitliche Verschiebung zwischen zwei Datendateien, die über der Zeit aufgenommen worden sind. Beispielsweise um die Daten von zwei Messgeräte zu synchronisieren, die von Hand ausgelöst wurden.
Beide Dateien müssen jeweils einen Zeitkanal sowie eine Messgröße enthalten, die in beiden Dateien vorhanden ist, z. B. Motordrehzahl oder Fahrzeuggeschwindigkeit.
Die Zeitachse muss in der gleichen Einheit, z. B. Sekunde gemessen worden sein. Die Auflösung der Zeitachse darf unterschiedlich sein. Die Zeitachse muss aber mit konstanter Abtastfrequenz erzeugt worden sein.
Der Zeit-Offset wird über eine Kreuzkorrelation berechnet. Die dafür verwendeten Signale, z. B. die Motordrehzahl darf nicht konstant sein. Fall die Berechnung des Zeit-Offsets nicht möglich ist, kann der Offset vorgegeben werden.
Die Funktion berücksichtigt nur die ersten 250000 Punkte der Signale für die Berechnung der zeitlichen Verschiebung.
- ssNCNewFile = NC_SynchronizeTime(ssNCFile1, ssTime1, ssSyncChannel1, ssNCFile2, ssTime2, ssSyncChannel2)
- ssNCNewFile = NC_SynchronizeTime(ssNCFile1, ssTime1, ssSyncChannel1, ssNCFile2, ssTime2, ssSyncChannel2, bMerge)
- ssNCNewFile = NC_SynchronizeTime(ssNCFile1, ssTime1, ssSyncChannel1, ssNCFile2, ssTime2, ssSyncChannel2, bMerge, bInterpolate)
- ssNCNewFile = NC_SynchronizeTime(ssNCFile1, ssTime1, ssSyncChannel1, ssNCFile2, ssTime2, ssSyncChannel2, bMerge, bInterpolate, bUseOffset)
- ssNCNewFile = NC_SynchronizeTime(ssNCFile1, ssTime1, ssSyncChannel1, ssNCFile2, ssTime2, ssSyncChannel2, bMerge, bInterpolate, bUseOffset, rsOffset)
- ssNCNewFile = NC_SynchronizeTime(ssNCFile1, ssTime1, ssSyncChannel1, ssNCFile2, ssTime2, ssSyncChannel2, bMerge, bInterpolate, bUseOffset, rsOffset, nUseTimeChannel)
- ssNCNewFile = NC_SynchronizeTime(ssNCFile1, ssTime1, ssSyncChannel1, ssNCFile2, ssTime2, ssSyncChannel2, oParameter)
Returnwert
Ist der Name der synchronisierten NC-Datei oder ein leerer String, falls ein Fehler aufgetreten ist.
Parameter
- ssNCFile1
ssNCFile1 ist der Name einer NC-Datei.
- ssTime1
ssTime1 ist der Name des Zeitkanals von Datei 1.
- ssSyncChannel1
ssSyncChannel1 ist der Name des Signals von Datei 1.
- ssNCFile2
ssNCFile2 ist der Name einer NC-Datei.
- ssTime2
ssTime2 ist der Name des Zeitkanals von Datei 2.
- ssSyncChannel2
ssSyncChannel2 ist der Name des Signals von Datei 2.
- oParameter
Ist ein Objekt mit den folgenden optionalen Elementen:
Element
Default Wert
Beschreibung
bMerge
TRUE (1)
Falls bMerge TRUE (1) ist, werden die Kanäle der beiden Dateien in ein Datei kopiert.
bInterpolate
TRUE (1)
Falls bInterpol TRUE (1) ist, werden alle Kanäle auf ein Zeitraster interpoliert.
bUseOffset
FALSE (0)
Falls bUseOffset TRUE (1) ist, kann die zeitliche Verschiebung zwischen den beiden Zeitkanälen im Parameter rsOffset in der Einheit der Zeitkanäle angegeben werden. Falls bUseOffset FALSE (0) ist, wird die zeitliche Verschiebung mit Hilfe einer Kreuzkorrelation berechnet.
rsOffset
kein Defaultwert
Ist der zeitliche Offset. Wird verwendet, wenn bUseOffset gleich TRUE (1) ist. Dann erfolgt keine Berechnung der Verschiebung.
nUseTimeChannel
0
Der Parameter nUseTimeChannel legt fest, auf welchen Zeitkanal die Daten interpoliert werden sollen. Für den Wert 0 wird ein Dialogfeld angezeigt, in dem der Zeitkanal ausgewählt werden kann. Beim Wert 1 wird der Zeitkanal1 ssTime1 und beim Wert 2 der Zeitkanal2 ssTime2 verwendet.
rsXStartSync
nicht definiert
Der Parameter soll nur angegeben werden, wenn nur ein Ausschnitt der Daten für die Berechnung der zeitlichen Verschiebung berücksichtigt werden soll. Der Wert so angegeben, als og die Daten bei 0 beginnen.
rsXEndSync
nicht definiert
Der Parameter soll nur angegeben werden, wenn nur ein Ausschnitt der Daten für die Berechnung der zeitlichen Verschiebung berücksichtigt werden soll. Der Wert so angegeben, als og die Daten bei 0 beginnen. Wenn ein Ausscnitt definiert werden soll, müssen beide Parameter angegeben werden.
- bMerge
Falls bMerge TRUE (1) ist, werden die Kanäle der beiden Dateien in ein Datei kopiert. Default-Wert ist TRUE (1).
- bInterpolate
Falls bInterpol TRUE (1) ist, werden alle Kanäle auf ein Zeitraster interpoliert. Default-Wert ist TRUE (1).
- bUseOffset
Falls bUseOffset TRUE (1) ist, kann die zeitliche Verschiebung zwischen den beiden Zeitkanälen im Parameter rsOffset in der Einheit der Zeitkanäle angegeben werden. Falls bUseOffset FALSE (0) ist, wird die zeitliche Verschiebung mit Hilfe einer Kreuzkorrelation berechnet. Default-Wert ist FALSE (0).
- rsOffset
Ist der zeitliche Offset. Wird verwendet, wenn bUseOffset gleich TRUE (1) ist. Default-Wert ist 0.
- nUseTimeChannel
Der Parameter nUseTimeChannel legt fest, auf welchen Zeitkanal die Daten interpoliert werden sollen. Für den Wert 0 wird ein Dialogfeld angezeigt, in dem der Zeitkanal ausgewählt werden kann. Beim Wert 1 wird der Zeitkanal1 ssTime1 und beim Wert2 der Zeitkanal2 ssTime2 verwendet. Default-Wert ist 0.
Beispiel
bMerge = TRUE
bInterpolate = TRUE
bUseOffset = FALSE
rsOffset = 0
nUseTimeChannel = 1;
ssNC1 = auto_ImportData("c:/a.xls")
ssNC2 = auto_ImportData("c:/b.xls")
ssNCNew = NC_SynchronizeTime(ssNC1, "Zeit", "nmot", ...
ssNC2, "Zeitstempel_QP1", "Drehzahl", ...
bMerge, bInterpolate, bUseOffset, rsOffset, nUseTimeChannel);
if (ssNCNew == "") {
// Fehler
}
Beispiel2
oParameter = [.];
oParameter.bMerge = TRUE;
oParameter.bInterpolate = FALSE;
oParameter.bUseOffset = FALSE;
oParameter.rsOffset = 0;
oParameter.nUseTimeChannel = 1;
oParameter.rsXStartSync = 0.0;
oParameter.rsXEndSync = 100.0;
ssNC1 = auto_ImportData("c:/a.xls")
ssNC2 = auto_ImportData("c:/b.xls")
ssNCNew = NC_SynchronizeTime(ssNC1, "Zeit", "nmot", ...
ssNC2, "Zeitstempel_QP1", "Drehzahl", ...
oParameter);
if (ssNCNew == "") {
// Fehler
}
History
Version |
Beschreibung |
---|---|
R2014.3 |
Neuer Parameter oParameter |
5.14.8 |
Neu. |
Siehe auch
Überblick UniPlot-Datendateien, Datei=>Weitere Datei-Funktionen=>Datendateien synchronisieren Datei=>Daten exportieren, nc_create
id-653736