Architettura
Questa sezione presenta i componenti del software smartCORE per edge device.
Architettura
Il software smartCORE si basa su un'architettura a flusso di dati di tipo producer-consumer. In essa, i moduli produttori (sorgenti) vengono collegati ai moduli consumatori (destinazioni) tramite canali gestiti in smartCORE. Questi moduli possono essere configurati o parametrizzati dall'utente in molteplici modi.
I moduli vengono normalmente adattati al compito dell'utente tramite la configurazione di misura. La configurazione di misura è salvata sul dispositivo di misura nel file di configurazione
/sdi/config/smartcore_dynamic.json
e viene mantenuta in particolare anche in caso di aggiornamento sia di smartCORE sia del sistema operativo.
Tipi di modulo
Dal punto di vista del software si distingue fondamentalmente tra moduli produttori e consumatori, dove
- i moduli produttori creano canali e scrivono campioni di dati in tali canali
- i moduli consumatori leggono campioni di dati dai canali
Oltre ai moduli puramente consumatori e puramente produttori esistono anche numerosi moduli che sono sia producer sia consumer, per consentire la comunicazione bidirezionale.
Dal punto di vista dell'utente è tuttavia più opportuno categorizzare i moduli in base alla loro funzionalità. Si è rivelata utile una categorizzazione in moduli orientati all'applicazione e moduli orientati all'utente. Mentre i moduli orientati all'applicazione garantiscono la comunicazione con il lato della tecnica di misura e controllo, i moduli orientati all'utente sono responsabili (almeno indirettamente) della comunicazione con l'utente.
Moduli orientati all'applicazione
| Modulo | Descrizione |
|---|---|
| accelerometer | Interfaccia al sensore di accelerazione |
| batmon | Interfaccia a batMON |
| canbus | Interfaccia alle interfacce CAN bus per la comunicazione di dati CAN bus grezzi |
| dbc | Interprete/decodificatore per l'estrazione di dati di canale da dati CAN bus grezzi in base a una specifica DBC |
| fmconsumer | Encoder di dati di canale per la fornitura di dati grezzi che possono essere inviati tramite interfacce esterne, come ad es. CAN bus |
| fmproducer | Interprete/decodificatore per l'estrazione di dati di canale da dati grezzi che possono essere letti da interfacce esterne, come ad es. CAN bus o MVB |
| fmudp | Interfaccia UDP che fornisce dati grezzi interpretabili (solo in direzione di lettura) |
| gps | Interfaccia al GPS (servizio GPSD sul dispositivo o in Internet) |
| hwio | Interfaccia per la rappresentazione degli ingressi e delle uscite digitali nonché dei LED del dispositivo di misura |
| modbus | Interfaccia a ModBus |
| smiohp | Interfaccia all'hardware optiMEAS smartIO High Performance |
Moduli orientati all'applicazione per veicoli ferroviari
| Modulo | Descrizione |
|---|---|
| mvb | Interfaccia per la lettura di MVB tramite protocollo UDP, come fornito da duagon D503 |
| smartmvb | Interfaccia per la lettura di MVB tramite l'hardware optiMEAS smartIO MVB |
Moduli orientati all'utente
| Modulo | Descrizione |
|---|---|
| csvwriter | Modulo per la creazione di file CSV a partire da dati di canale (incl. molteplici possibilità di registrazione con trigger) |
| diagnostics | Modulo per il monitoraggio dei canali e la conseguente generazione di allarmi |
| eventcounter | Contatore di eventi |
| geofencing | Modulo per le funzioni di geofencing |
| http | Modulo per la comunicazione tramite richieste HTTP |
| math | Modulo per l'elaborazione matematica di dati di canale in dati di canale |
| mqtt | Modulo per la comunicazione tramite MQTT |
| odometer | Modulo per la rilevazione della distanza percorsa |
| opticloud | Modulo per la comunicazione con optiCLOUD di optiMEAS |
| osfudpstreamer | Modulo che invia dati di canale sotto forma di data stream OSF tramite UDP |
| osfwriter | Modulo che scrive dati di canale in file sotto forma di data stream OSF |
| sms | Modulo che invia un SMS in reazione a un segnale di trigger |
| smsalarms | Modulo che invia un SMS in reazione a un nuovo messaggio di allarme |
| ssh | Modulo per la comunicazione tramite SFTP e SSH |
| systeminfos | Modulo per la fornitura di informazioni di sistema del dispositivo di misura |
| uptime | Modulo per la rilevazione di valori dei contatori (ad es. le ore di funzionamento di un sistema) |
Moduli utilizzabili sia in ambito applicativo sia in ambito utente
| Modulo | Descrizione |
|---|---|
| opcuaclient | Client per la comunicazione con server OPC/UA |
| opcuaserver | Server per la comunicazione con client OPC/UA |
| remote | Modulo che fornisce una comunicazione bidirezionale di dati di canale tramite IPC |
Moduli per scenari di test
| Modulo | Descrizione |
|---|---|
| functiongenerator | Generatore di funzioni per la produzione di dati di canale |
| playback | Modulo per la produzione sintetica di dati di canale in base a un protocollo di playback |