Module smartIO MVB « smartmvb »
Description
Le module « smartmvb » communique avec l'interface smartIO MVB. Il est en général utilisé avec le module fmproducer, qui extrait de manière appropriée les données de paquets MVB « brutes » et les produit dans des canaux. (Il est toutefois aussi possible en principe d'utiliser p. ex. un module récepteur « dbc », c'est-à-dire de spécifier les canaux sous forme de fichier DBC de bus CAN, ...)
Interfaces et protocoles utilisés
- USB
- MVB
- Fast Message Dispatching
Configuration JSON
La section suivante décrit l'intégralité de la configuration JSON du module et explique chacun des paramètres.
Exemple de configuration (minimale)
{
"module":"SmartMVB",
"factory":"smartmvb",
"config":{}
},
Exemple de configuration (maximale)
Voici un exemple de configuration « opticloud ». Il comprend en plus un FmProducer qui produit dans des canaux les informations de diagnostic MVB correspondantes (voir la documentation du module « 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
}
]
}
},
Paramètres du module
| Nom du paramètre | Obligatoire | Type de données | Plage de valeurs utile | Défaut | Description |
|---|---|---|---|---|---|
| fmd | Non | STRING | Nom de l'instance du module | Désignation du Fast Message Dispatcher auquel un récepteur peut être rattaché | |
| logEnabled | Non | BOOL | false, true | false | Activation du journal propre au module |
| logPath | Non | STRING | chemin de répertoire valide | "/sdi/log/" | Répertoire des fichiers journaux MVB |
| logPrefix | Non | STRING | "smartmvb_" | Préfixe des fichiers journaux MVB | |
| logSuffix | Non | STRING | ".log" | Suffixe des fichiers journaux MVB | |
| logMaxFileCount | Non | INT | 1 - 127 | 10 | Nombre max. de fichiers journaux MVB |
| logMaxFileSize | Non | INT | 1 - 2GB | 512.000 octets | Taille max. de fichier [octets] du fichier journal MVB |
| logPollingIntervalMs | Non | INT | 1 - | 1000 | Intervalle d'interrogation (polling) [ms] pour l'écriture des fichiers journaux MVB |
| logBufferSize | Non | INT | 1 - | 1MB | Taille du tampon [octets] du journal MVB par intervalle d'interrogation |
| mvbLines | Non | STRING | "A", "B", "AB" | "AB" | Lignes MVB actives |
| esdMode | Non | BOOL | false, true | false | Mode EMD (false) ou ESD (true) |
| slaveResponseTimeoutUs | Non | INT | 43 | Timeout de réponse esclave MVB [us] | |
| timebase48Port | Non | INT | port MVB valide | désactivé | Port pour le signal horaire issu du MVB |
| timebase48ByteOffset | Non | INT | décalage d'octet MVB valide | désactivé | Décalage d'octet (byte offset) pour le signal horaire issu du MVB |
| errorFramesEnabled | Non | BOOL | false, true | false | Dispatching des trames d'erreur MVB |
| crcEnabled | Non | BOOL | false, true | false | Dispatching des informations CRC |
| enhancedLogging | Non | BOOL | false, true | false | Journalisation étendue |
| statusChannels | Non | BOOL | false, true | false | Dispatching des canaux de statut MVB (pour une configuration FmProducer appropriée, voir l'exemple) |
| operatingMode | Non | STRING | "dispatch", "dump" | "dispatch" | Production dans des canaux (via Dispatcher/Producer) ou journalisation dans des fichiers journaux ("dump") |
| eosRestartTimeoutMs | Non | INT | -1, 0 - | 60000 (60s) | Délai avant le redémarrage du smartIO en cas d'EOS (-1 = pas de redémarrage) |
| mvbPorts | Non | JSON Array of UINT16 | tableau JSON vide | Spécification des ports MVB reçus (tableau vide => TOUS) | |
| portFilterDisabled | Non | BOOL | false, true | false | Désactivation du filtre de trames de port MVB |
| mvbMessageDevices | Non | JSON Array mit JSON Objekten | tableau JSON vide | Spécification des MVB Message Devices pris en compte (voir ci-dessous) | |
| messageFilterDisabled | Non | BOOL | false, true | false | Désactivation du filtre de trames de message MVB |
Spécification des 'mvbMessageDevices'
Les mvbMessageDevices sont configurés chacun au moyen d'un objet JSON avec les attributs suivants
| Nom du paramètre | Obligatoire | Type de données | Plage de valeurs utile | Défaut | Description |
|---|---|---|---|---|---|
| id | OUI | INT | 1 - 255 | ||
| isSingleCastSender | Non | BOOL | false, true | false | |
| isBroadCastSender | Non | BOOL | false, true | false | |
| isSingleCastReceiver | Non | BOOL | false, true | false | |
| isSingleCastTransceiver | Non | BOOL | false, true | false |
Informations sur le module
| Information | Valeur |
|---|---|
| Auteurs | optiMEAS GmbH |
| depuis smartCORE | 0.136 |
| Type de module | Dispatcher (Producer) |
| Dépendances | tout module Fast Message Receiver (en général "fmproducer") |