Passa al contenuto principale

Modulo generico di consumo "fmconsumer"

Descrizione​

Il modulo generico di consumo fmconsumer consente di consumare dati dei canali, inserirli in un messaggio definito e inviarli successivamente tramite un modulo socket (ad es. un modulo canbus). Poiché la specifica dei canali è facoltativa, è possibile inviare anche messaggi costanti nel tempo (ad es. messaggi di stimolo periodici). L'invio avviene

  • una sola volta dopo l'intervallo di invio specificato
  • periodicamente con l'intervallo di invio specificato
  • in modo controllato da eventi

L'invio controllato da eventi avviene

  • al verificarsi di un evento (e al più presto dopo la scadenza di un intervallo configurabile)
  • allo scadere di un intervallo configurabile, se fino a quel momento NON si è verificato alcun evento

Un evento si verifica quando il modulo socket ha ricevuto un messaggio specificato tramite una chiave di identificazione (messageKey).

È possibile configurare più messaggi da inviare.

Interfacce e protocolli utilizzati​

  • NESSUNO

Configurazione JSON​

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

Configurazione di esempio (configurazione tipica)​

{
"module":"Consumer",
"factory":"fmconsumer",
"config":{
"fmd": "canbus",
"messages":[
{
"messageKey": 42,
"defaultMessage": "0102 03 04ff06",
"sendMode": "OnTimer",
"sendIntervalMs": 1000
}
]
}
}

Parametri globali del modulo​

Nome del parametroObbligatorioTipo di datiIntervallo di valori sensatoValore predefinitoDescrizione
fmdSÌSTRINGNome dell'istanza del modulo socket utilizzato
messagesSÌJSON Array of JSON Objectvedere sotto
channelsNoJSON Array of JSON Objectvedere sotto

Configurazione dei messaggi "messages"​

I messaggi vengono specificati come oggetti JSON; ciascuno di questi oggetti può contenere i seguenti parametri

Nome del parametroObbligatorioTipo di datiIntervallo di valori sensatoValore predefinitoDescrizione
messageKeySÌINTChiave di identificazione univoca del messaggio
defaultMessageSÌSTRINGByte del modello di messaggio codificati in esadecimale (gli spazi vengono ignorati)
sendModeSÌSTRING"SingleShot", "OnTimer", "OnTriggerWhenTimeoutElapsed", "OnMissingTriggerWhenTimeoutElapsed"Modalità di invio del messaggio (singolo, periodico, controllato da eventi)
sendIntervalMsSÌINT0 -Ritardo/intervallo [ms] relativo all'invio del messaggio
triggeringMessageKeysNoJSON Array of INTEMPTY JSON ArrayChiavi di identificazione di tutti i messaggi che generano l'evento

Configurazione dei canali "channels"​

Nota: i dati dei canali vengono attualmente inseriti uno a uno nel modello di messaggio, cioè il tipo di dati effettivamente inserito corrisponde esattamente al tipo di dati di origine del canale. Inoltre l'utente deve definire obbligatoriamente un modello di messaggio sufficientemente lungo. Opzionalmente è possibile, tramite bitLength, inserire un numero inferiore di bit (in questo caso i bit di destra vengono scartati di conseguenza).

I canali vengono specificati come oggetti JSON; ciascuno di questi oggetti può contenere i seguenti parametri

Nome del parametroObbligatorioTipo di datiIntervallo di valori sensatoValore predefinitoDescrizione
nameSÌSTRINGNome del canale da consumare
bitOffsetSÌINTall'interno del modello di messaggioOffset relativo al posizionamento del canale nel modello di messaggio
bitLengthSÌINTtale che bitOffset + bitLength rientri nel modello di messaggioLunghezza relativa al posizionamento del canale nel modello di messaggio

Informazioni sul modulo​

InformazioneValore
AutorioptiMEAS GmbH
da smartCORE0.110
Tipo di moduloConsumer
DipendenzeModulo socket con accesso in scrittura (ad es. canbus)