Módulo smartIO MVB "smartmvb"
Descripción
El módulo "smartmvb" se comunica con la interfaz smartIO MVB. En general se utiliza junto con el módulo fmproducer, que extrae de forma adecuada los datos "sin procesar" de los paquetes MVB y los produce en canales. (Sin embargo, en principio también es posible utilizar, p. ej., un módulo receptor "dbc", es decir, especificar los canales como archivo DBC de bus CAN, ...)
Interfaces y protocolos utilizados
- USB
- MVB
- Fast Message Dispatching
Configuración JSON
En la sección siguiente se describe la configuración JSON completa del módulo y se explican los distintos parámetros.
Configuración de ejemplo (mínima)
{
"module":"SmartMVB",
"factory":"smartmvb",
"config":{}
},
Configuración de ejemplo (máxima)
A continuación se muestra una configuración de ejemplo de "opticloud". Esta incluye además un FmProducer que produce en canales la información de diagnóstico MVB correspondiente (véase la documentación del módulo "fmproducer").
{
"module":"SmartMVB",
"factory":"smartmvb",
"config":{
"fmd":"smartmvb0",
"logEnabled":false,
"logPath":"/sdi/log/",
"logPrefix":"smartmvb_",
"logSuffix":".log",
"logMaxFileSize":512000,
"logMaxFileCount":10,
"logBufferSize":1000000,
"mvbLines":"AB",
"esdMode":false,
"slaveResponseTimeoutUs":43,
"timebase48Port":-1,
"timebase48ByteOffset":-1,
"errorFramesEnabled":false,
"crcEnabled":false,
"operatingMode":"dispatch",
"eosRestartTimeoutMs":0,
"mvbPorts":[
],
"portFilterDisabled":false,
"mvbMessageDevices":[
],
"messageFilterDisabled":false,
"programFile":"",
"programFileString":"",
"programFileMode":"off"
}
},
{
"module":"FmProducerSmartMVB",
"factory":"fmproducer",
"config":{
"fmd":"smartmvb0",
"bufferSize":1024,
"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
},
{
"name":"SmartMVBgroupEvent",
"dataType":"bytearray",
"bufferSize":1024,
"scale":1,
"offset":0,
"physicalDimension":"",
"physicalUnit":"",
"messageKey":10013,
"bitOffset":0,
"bitLength":0,
"imageType":"bytearray",
"produceOnChangeOnly":true,
"absoluteTolerance":0
},
{
"name":"SmartMVBsingleEvent",
"dataType":"bytearray",
"bufferSize":1024,
"scale":1,
"offset":0,
"physicalDimension":"",
"physicalUnit":"",
"messageKey":10014,
"bitOffset":0,
"bitLength":0,
"imageType":"bytearray",
"produceOnChangeOnly":true,
"absoluteTolerance":0
}
]
}
},
Parámetros del módulo
| Nombre del parámetro | Obligatorio | Tipo de datos | Rango de valores razonable | Valor por defecto | Descripción |
|---|---|---|---|---|---|
| fmd | No | STRING | Nombre de la instancia del módulo | Denominación del Fast Message Dispatcher al que se puede conectar un receptor | |
| logEnabled | No | BOOL | false, true | false | Activación del registro específico del módulo |
| logPath | No | STRING | ruta de directorio válida | "/sdi/log/" | Directorio de los archivos de registro MVB |
| logPrefix | No | STRING | "smartmvb_" | Prefijo de los archivos de registro MVB | |
| logSuffix | No | STRING | ".log" | Sufijo de los archivos de registro MVB | |
| logMaxFileCount | No | INT | 1 - 127 | 10 | Número máx. de archivos de registro MVB |
| logMaxFileSize | No | INT | 1 - 2GB | 512.000 bytes | Tamaño máx. de archivo [bytes] del archivo de registro MVB |
| logPollingIntervalMs | No | INT | 1 - | 1000 | Intervalo de sondeo [ms] para la escritura de los archivos de registro MVB |
| logBufferSize | No | INT | 1 - | 1MB | Tamaño del búfer [bytes] del registro MVB por intervalo de sondeo |
| mvbLines | No | STRING | "A", "B", "AB" | "AB" | Líneas MVB activas |
| esdMode | No | BOOL | false, true | false | Modo EMD (false) o ESD (true) |
| slaveResponseTimeoutUs | No | INT | 43 | Timeout de respuesta del esclavo MVB [us] | |
| timebase48Port | No | INT | puerto MVB válido | desactivado | Puerto de la señal horaria de MVB |
| timebase48ByteOffset | No | INT | desplazamiento de bytes MVB válido | desactivado | Desplazamiento de bytes de la señal horaria de MVB |
| errorFramesEnabled | No | BOOL | false, true | false | Dispatching de tramas de error MVB |
| crcEnabled | No | BOOL | false, true | false | Dispatching de la información CRC |
| enhancedLogging | No | BOOL | false, true | false | Registro ampliado |
| statusChannels | No | BOOL | false, true | false | Dispatching de los canales de estado MVB (para una configuración adecuada de FmProducer, véase el ejemplo) |
| operatingMode | No | STRING | "dispatch", "dump" | "dispatch" | Producción en canales (mediante Dispatcher/Producer) o registro en archivos de registro ("dump") |
| eosRestartTimeoutMs | No | INT | -1, 0 - | 60000 (60s) | Retardo del reinicio de smartIO en caso de EOS (-1 = sin reinicio) |
| mvbPorts | No | JSON Array of UINT16 | JSON Array vacío | Especificación de los puertos MVB recibidos (array vacío => TODOS) | |
| portFilterDisabled | No | BOOL | false, true | false | Desactivación del filtro de tramas de puerto MVB |
| mvbMessageDevices | No | JSON Array con objetos JSON | JSON Array vacío | Especificación de los Message Devices MVB considerados (véase más abajo) | |
| messageFilterDisabled | No | BOOL | false, true | false | Desactivación del filtro de tramas de mensaje MVB |
Especificación de 'mvbMessageDevices'
Los mvbMessageDevices se configuran, cada uno, mediante un objeto JSON con los siguientes atributos
| Nombre del parámetro | Obligatorio | Tipo de datos | Rango de valores razonable | Valor por defecto | Descripción |
|---|---|---|---|---|---|
| id | SÍ | INT | 1 - 255 | ||
| isSingleCastSender | No | BOOL | false, true | false | |
| isBroadCastSender | No | BOOL | false, true | false | |
| isSingleCastReceiver | No | BOOL | false, true | false | |
| isSingleCastTransceiver | No | BOOL | false, true | false |
Información del módulo
| Información | Valor |
|---|---|
| Autores | optiMEAS GmbH |
| desde smartCORE | 0.136 |
| Tipo de módulo | Dispatcher (Producer) |
| Dependencias | cualquier módulo Fast Message Receiver (por lo general "fmproducer") |