Saltar al contenido principal

Módulo receptor UDP "fmudp"

Descripción​

El módulo 'fmudp' proporciona un socket UDP. Por lo general se utiliza con el módulo fmproducer, que extrae adecuadamente los datos "en bruto" de los paquetes UDP y los produce en canales. (No obstante, en principio también es posible utilizar, por ejemplo, un módulo receptor "dbc", es decir, especificar los canales como archivo DBC de bus CAN, ...)

Interfaces y protocolos utilizados​

  • Comunicación de red UDP

Configuración JSON​

En la siguiente sección se describe la configuración JSON completa del módulo y se explican los distintos parámetros.

Configuración de ejemplo (configuración para un único formato de paquete UDP)​

Si se debe recibir un único formato de paquete UDP, solo es necesario definir el registro de las funciones o módulos Fast Message Receiver independientemente de la identificación. Normalmente esto se hace de forma distinta para cada módulo Fast Message Receiver. Sin embargo, si, como en el ejemplo, se utiliza un módulo fmproducer, esta definición puede hacerse mediante el parámetro "messageKey": 0).

{
"module":"UDP",
"factory":"fmudp",
"config":{
"port":12345
}
},
{
"module":"Producer",
"factory":"fmproducer",
"config":{
"fmd":"UDP",
"channelPrefix":"UDP",
"channels":[
{
"name":"Some Channel Name",
"dataType":"int8",
"scale":1,
"offset":0,
"physicalUnit":"",
"messageKey":0,
"bitOffset":0,
"bitLength":8,
"imageType":"signed"
},

[...]

]
},

Configuración de ejemplo (configuración para varios formatos de paquete UDP distintos)​

Si, por el contrario, se deben recibir paquetes UDP con formatos distintos, es necesario que estos contengan un área común para la transmisión de una clave de identificación (key). Esta área debe configurarse en el módulo fmudp. Además, todas las funciones/módulos receptores (eventualmente por canal) deben configurarse con los valores correspondientes de la clave de identificación (definidos en el siguiente ejemplo en cada caso en messageKey).

{
"module":"UDP",
"factory":"fmudp",
"config":{
"port":12345,
"keyBitOffset":0,
"keyBitLength":32,
"keyByteOrder":"bigendian"
}
},
{
"module":"Producer",
"factory":"fmproducer",
"config":{
"fmd":"UDP",
"channelPrefix":"UDP",
"channels":[
{
"name":"Some Channel from Message Format 1 (42) Name",
"dataType":"int8",
"scale":1,
"offset":0,
"physicalUnit":"",
"messageKey":42,
"bitOffset":32,
"bitLength":8,
"imageType":"signed"
},
{
"name":"Some Channel from Message Format 2 (43) Name",
"dataType":"double",
"scale":1,
"offset":0,
"physicalUnit":"",
"messageKey":43,
"bitOffset":32,
"bitLength":64,
"imageType":"float"
},

[...]

]
},

Parámetros globales del módulo​

Nombre del parámetroObligatorioTipo de datosRango de valores razonableValor predeterminadoDescripción
fmdNoSTRINGNombre de la instancia del módulo (especificado en la sección de configuración en module)Nombre del Fast Message Dispatcher proporcionado para conectar un Fast Message Receiver (como, por ejemplo, un módulo fmproducer)
priorityNoINT20 - 8080Prioridad del hilo del bucle de consulta
portSÍINT160 - 65535Puerto UDP para la recepción de paquetes
keyBitOffsetNoINTdentro de la longitud del paquete UDP0Desplazamiento de la clave de identificación, si los distintos paquetes UDP deben interpretarse de forma diferente
keyBitLengthNoINTde modo que keyBitOffset + keyBitLength quede dentro del paquete UDP0Longitud de la clave de identificación, si los distintos paquetes UDP deben interpretarse de forma diferente
keyByteOrderNoSTRING"bigendian", "littleendian""bigendian"Orden de los bytes de la clave de identificación

Información del módulo​

InformaciónValor
AutoresoptiMEAS GmbH
desde smartCORE0.103
Tipo de móduloProducer (Dispatcher)
DependenciasFast Message Receiver