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
Parametername | Erforderlich | Datentyp | sinnvoller Wertebereich | Default | Beschreibung |
---|---|---|---|---|---|
filename | Nein | STRING | siehe unten | "/sde/"TAG"/"DATE"/"DATE"_"TIME".osf" | Dateiname bzw. Struktur des Dateinamens (siehe unten) |
tag | Nein | STRING | "preview" | Tag-Bezeichnung | |
pollingInterval | Nein | INT | 1 - | 1000 | Polling Interval [ms] |
samplesPerConsume | Nein | INT 1 - | 1024 | max. Anzahl konsumierter Samples pro Polling Interval | |
newfile | Nein | STRING | "time", "volume" | "time" | Grund für Aufteilung der Aufzeichnung in mehrere Dateien |
time | Nein | INT | 1 - | 900000 (15 min) | ungefähres maximales Zeitinterval [ms], bevor neue OSF Datei erstellt wird |
volume | Nein | INT | 1 - | 10 MB | ungefähre Dateigröße [Bytes], bevor neue OSF Datei erstellt wird |
maximumAncientRangeMs | Nein | INT | 0 - | 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 |
channels | Nein | JSON Array | [ "*" ] | JSON Array mit Kanalnamen als String | |
ignore | Nein | JSON Array | [ ] | JSON Array mit ignorierten Kanalnamen als String | |
refreshIntervalMs | Nein | INT | 1 - | 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
Information | Wert |
---|---|
Autoren | optiMEAS Measurement and Automation Systems GmbH |
seit smartCORE | 0 |
Modultyp | Fast Message Receiver, Producer |
Abhängigkeiten | Fast Message Sendemodul (z.B. fmudp, canbus, smartmvb, ...) |