Fast Message Producer Modul "fmproducer"
Beschreibung
Das "fmproducer" Modul empfängt (im Allgemeinen rohe) Datenpakete aus dem Fast Message Dispatcher des "dispatchenden" (=Sende) Moduls (z.B. fmudp, canbus, smartmvb, ...) und produziert aus diesen Datenblöcken Kanalwerte in entsprechend konfigurierte Kanäle.
Verwendete Schnittstellen & Protokolle
- Fast Message Dispatching
JSON-Konfiguration
Im folgenden Abschnitt soll die gesamte JSON-Konfiguration des Moduls beschrieben und die einzelnen Parameter erläutert werden.
Beispielkonfiguration (minimal)
{
"module":"FmProducer",
"factory":"fmproducer",
"config":{
"fmd":"FastMessageDispatcher",
"channels":[
{
"name":"Channel",
"dataType":"double",
"messageKey":42,
"bitOffset":0,
"bitLength":64,
"imageType":"float"
},
[...]
]
}
}
Beispielkonfiguration (maximal)
{
"module":"FmProducerSmartMVB",
"factory":"fmproducer",
"config":{
"fmd":"smartmvb0",
"bufferSize":1024,
"namespace":["directory","subDirectory"],
"channelPrefix":"SmartMVB",
"channels":[
{
"name":"SmartMVBmessageData",
"dataType":"bytearray",
"bufferSize":1024,
"scale":1,
"offset":0,
"physicalDimension":"",
"physicalUnit":"",
"messageKey":10012,
"bitOffset":0,
"bitLength":0,
"imageType":"bytearray",
"produceOnChangeOnly":true,
"absoluteTolerance":0
},
[...]
]
}
}
Globale Modulparameter
Parametername | Erforderlich | Datentyp | sinnvoller Wertebereich | Default | Beschreibung |
---|---|---|---|---|---|
fmd | JA | STRING | Fast Message Dispatcher des Sendemoduls | ||
bufferSize | Nein | INT | 1 - | 1024 | (default) Puffergröße der angelegten Kanäle |
channelPrefix | Nein | STRING | Kanal Präfix (sinnvoll, wenn mehrere DBC Module verwendet werden und die DBC Dateien überlappende Kanalnamen besitzen) | ||
namespace | Nein | ARRAY [ STRING ] | Kanal Präfix in Form hierarchisch verketteter Namespaces | ||
channels | JA | JSON Array | Liste von JSON Objects konfigurierter Kanäle |
Konfiguration eines Kanals (JSON Object)
Parametername | Erforderlich | Datentyp | sinnvoller Wertebereich | Default | Beschreibung |
---|---|---|---|---|---|
name | JA | STRING | Name der Kanals | ||
dataType | Nein | STRING | Datentyp des Kanals | ||
bufferSize | Nein | INT | 1 - | 1024 | Puffergröße des angelegten Kanals |
scale | Nein | FLOAT | 1 | Skalierungsfaktor des produzierten Werts | |
offset | Nein | FLOAT | 0 | additiver Offset des produzierten Werts | |
physicalDimension | Nein | STRING | physikalische Größe | ||
physicalUnit | Nein | STRING | physikalische Einheit | ||
messageKey | Nein* | UINT | ID der empfangenen Botschaft (z.B. CAN-Bus Message ID, MVB Port, ...) | ||
bitOffset | JA | UINT | Bit-Offset des in der Botschaft hinterlegten Wertes | ||
bitLength | Nein** | UINT | Bit-Länge des in der Botschaft hinterlegten Wertes | ||
imageType | JA | STRING | untertsützter Quelldatentyp des hinterlegten Wertes (siehe unten) | ||
byteOrder | Nein | STRING | "bigendian", "littleendian" | "bigendian" | Byte-Order des hinterlegten Wertes |
*ist der "messageKey" nicht konfiguriert, so werden Daten aus allen Messages weiterverarbeitet (dies ist z.B. sinnvoll für CAN RAW und Debugging-Anwendungen).
**ist die "bitLength" nicht konfiguriert, wird diese aus der Länge der weitergeleiteten Botschaft bestimmt.
Unterstützte Kanaldatentypen (Zieldatentypen) 'dataType'
- string
- bytearray
- double
- float
- int64, int32, int16, int8
- uint64, uint32, uint16, uint8
- bool
Unterstützte Quelldatentypen 'imageType'
- "signed"
- "unsigned"
- "float"
- "timedate48"
- "time64"
- "bytearray"
- "string"
unipolar<M>.<N>
bipolar<M>.<N>
Modul-Informationen
Information | Wert |
---|---|
Autoren | optiMEAS Measurement and Automation Systems GmbH |
seit smartCORE | 0.103 |
Modultyp | Fast Message Receiver, Producer |
Abhängigkeiten | Fast Message Sendemodul (z.B. fmudp, canbus, smartmvb, ...) |