Passa al contenuto principale

Modulo ricevitore UDP "fmudp"

Descrizione​

Il modulo 'fmudp' mette a disposizione un socket UDP. Viene utilizzato in generale insieme al modulo fmproducer, che estrae in modo appropriato i dati "grezzi" dei pacchetti UDP e li produce in canali. (In linea di principio è tuttavia possibile utilizzare anche, ad es., un modulo ricevitore "dbc", cioè specificare i canali come file DBC del CAN bus, ...)

Interfacce e protocolli utilizzati​

  • Comunicazione di rete UDP

Configurazione JSON​

Nella sezione seguente viene descritta l'intera configurazione JSON del modulo e vengono illustrati i singoli parametri.

Configurazione di esempio (configurazione per un unico formato di pacchetto UDP)​

Se deve essere ricevuto un unico formato di pacchetto UDP, è sufficiente stabilire la registrazione delle funzioni o dei moduli Fast Message Receiver indipendentemente dall'identificazione. Questo avviene in genere in modo diverso per ciascun modulo Fast Message Receiver. Se invece, come nell'esempio, viene utilizzato un modulo fmproducer, tale impostazione può essere effettuata tramite il parametro "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"
},

[...]

]
},

Configurazione di esempio (configurazione per più formati di pacchetto UDP diversi)​

Se invece devono essere ricevuti pacchetti UDP con formati diversi, è necessario che questi contengano un'area comune per la trasmissione di una chiave di identificazione (key). Questa area deve essere configurata nel modulo fmudp. Inoltre tutte le funzioni/i moduli Receiver devono essere configurati (eventualmente per canale) con i valori corrispondenti della chiave di identificazione (nell'esempio seguente definiti ciascuno in 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"
},

[...]

]
},

Parametri globali del modulo​

Nome del parametroObbligatorioTipo di datiIntervallo di valori sensatoValore predefinitoDescrizione
fmdNoSTRINGNome dell'istanza del modulo (specificato nella sezione di configurazione in module)Nome del Fast Message Dispatcher messo a disposizione per il collegamento di un Fast Message Receiver (ad es. un modulo fmproducer)
priorityNoINT20 - 8080Priorità del thread del ciclo di interrogazione
portSÌINT160 - 65535Porta UDP per la ricezione dei pacchetti
keyBitOffsetNoINTall'interno della lunghezza del pacchetto UDP0Offset della chiave di identificazione, se pacchetti UDP diversi devono essere interpretati in modo diverso
keyBitLengthNoINTtale che keyBitOffset + keyBitLength rientri nel pacchetto UDP0Lunghezza della chiave di identificazione, se pacchetti UDP diversi devono essere interpretati in modo diverso
keyByteOrderNoSTRING"bigendian", "littleendian""bigendian"Ordine dei byte della chiave di identificazione

Informazioni sul modulo​

InformazioneValore
AutorioptiMEAS GmbH
da smartCORE0.103
Tipo di moduloProducer (Dispatcher)
DipendenzeFast Message Receiver