Zum Hauptinhalt springen

OSF Writer

Beschreibung

Das "osfwriter" Modul konsumiert Kanaldaten und schreibt diese Daten in OSF Streaming Format V4 Dateien.

Verwendete Schnittstellen & Protokolle

  • OSF 4 Dateiformat

JSON-Konfiguration

Im folgenden Abschnitt soll die gesamte JSON-Konfiguration des Moduls beschrieben und die einzelnen Parameter erläutert werden.

Beispielkonfiguration (minimal)

Im Folgenden sei eine OSF Writer Beispielkonfiguration dargestellt:

    {
"module":"OSFWriter",
"factory":"osfwriter",
"config":{
}
}

Beispielkonfiguration (maximal)

Im Folgenden sei eine OSF Writer Beispielkonfiguration dargestellt:

    {
"module":"OSFWriter",
"factory":"osfwriter",
"config":{
"filename":"/sde/<tag>/<date>/<date>_<time>.osf",
"tag":"preview",
"pollingInterval":1000,
"samplesPerConsume":1024,
"newfile":"time",
"time":900000,
"volume":10000000,
"channels":[
"mvb*",
"can*",
"gps*"
],
"ignore":[
"Some.Ignored.Namespace*",
"someIgnoredChannel"
],
"refreshIntervalMs":60000
}
}

Globale Modulparameter

ParameternameErforderlichDatentypsinnvoller WertebereichDefaultBeschreibung
filenameNeinSTRINGsiehe unten"/sde/"TAG"/"DATE"/"DATE"_"TIME".osf"Dateiname bzw. Struktur des Dateinamens (siehe unten)
tagNeinSTRING"preview"Tag-Bezeichnung
pollingIntervalNeinINT1 -1000Polling Interval [ms]
samplesPerConsumeNeinINT 1 -1024max. Anzahl konsumierter Samples pro Polling Interval
newfileNeinSTRING"time", "volume""time"Grund für Aufteilung der Aufzeichnung in mehrere Dateien
timeNeinINT1 -900000 (15 min)ungefähres maximales Zeitinterval [ms], bevor neue OSF Datei erstellt wird
volumeNeinINT1 -10 MBungefähre Dateigröße [Bytes], bevor neue OSF Datei erstellt wird
maximumAncientRangeMsNeinINT0 -15000 (15 s)maximal zulässiger Bereich vor Dateibeginn, in dem sich vertrauenswürdige Samples befinden. Liegen diese Samples davor, werden sie an den Beginn dieses Bereichs verschoben. Falls auf -1 gesetzt, so KEINE Verschiebung
channelsNeinJSON Array[ "*" ]JSON Array mit Kanalnamen als String
ignoreNeinJSON Array[ ]JSON Array mit ignorierten Kanalnamen als String
refreshIntervalMsNeinINT1 -60000 (60 s)Erneutes Schreiben gleicher Werte nach Ablauf eines Intervalls, falls ihr zugehöriger vertrauenswürdiger Zeitstempel aktualisiert wurde

Bei den spezifizierten Kanalnamen können reguläre Ausdrücke in der vereinfachten Schreibweise, d.h. '?' (ersetze ein einzelnes Zeichen) oder '*' (ersetze eine beliebig lange Zeichenkette) benutzt werden.

Spezifikation des Dateinamens 'filename'

Der Dateiname wird hierbei über eine Pfadangabe spezifiziert, z.B.

/sde/<tag>/<date>/<date>_<time>.osf

Mögliche Variablen sind:

  • <year> (z.B. 2022)
  • <month> (z.B. 01)
  • <day> (z.B. 01)
  • <hour> (z.B. 01, 23)
  • <minute> (z.B. 01)
  • <second> (z.B. 01)
  • <msecond> (z.B. 001)
  • <date> := "<year><month><day>"
  • <time> := "<hour><minute><second>"
  • <tag> (siehe Parameter 'tag')

Modul-Informationen

InformationWert
AutorenoptiMEAS Measurement and Automation Systems GmbH
seit smartCORE0
ModultypFast Message Receiver, Producer
AbhängigkeitenFast Message Sendemodul (z.B. fmudp, canbus, smartmvb, ...)