Integrazione tra ERP e IoT
Il paradigma dell’Industria 4.0 in questi ultimi anni ha generato un incremento del parco IoT della realtà produttiva nazionale. I device IoT sono in grado di apportare numerosi benefici in termini di riduzione dei costi, manutenzione degli impianti, ottimizzazione dei processi produttivi.
Per sfruttare tutte le loro potenzialità è però necessario dotare la propria azienda di una infrastruttura informatica capace di interfacciarsi con questo tipo di tecnologia. Uno dei fattori chiave per raggiungere questi risultati è l’implementazione di una corretta strategia di aggregazione dei dati IoT: le informazioni raccolte da questi sensori sono infatti complesse da gestire, sia per la frequenza del campionamento, sia per i formati utilizzati.
Vantaggi di una soluzione Edge
Uno dei principali ostacoli che si incontrano nell’integrare un software ERP con un sistema IoT è dato dalla specificità e dalle dimensioni dei flussi di dati raccolti dai sensori dei device. Realizzare un’interfaccia tra i due sistemi si rivela spesso un’operazione complessa, soprattutto se l’ERP impiegato risiede in cloud oppure se è di tipo legacy. Nel primo caso, la quantità e la velocità di raccolta dei dati potrebbero causare latenze o sovraccarichi nei web service; nel secondo, la dimensione dei dati potrebbe rendere complesso il tentativo di sviluppare un’interfaccia basata su scambi di file CSV.
Una strategia più efficace, rispetto alla realizzazione di una comunicazione diretta tra device IoT e ERP, consiste nell’impiegare una piattaforma Edge che si posizioni come tramite tra i due sistemi. permettendo di ovviare a questo tipo di problemi.
Il dispositivo Edge risiede in prossimità dei device IoT e ha un software ottimizzato per gestire una prima fase di raccolta dati dai sensori, attraverso una pipeline che effettua delle operazioni di trasformazione, normalizzazione e aggregazione dei dati, in modo da creare un flusso più facilmente fruibile da un software ERP.
Il sistema Edge si occupa anche della storicizzazione dei dati IoT, che può decorare con meta data in modo da facilitare le operazioni di ricerca. Il software Edge è anche in grado di semplificare la comunicazione in cloud dei dati IoT, producendo flussi aggregati e ottimizzati per web app o per il salvataggio su database no-SQL o Data Lake.
Analisi e sviluppo delle interfacce
Non sempre il flusso di dati proveniente dal sistema Edge è già strutturato in modo compatibile con il gestionale. Spesso il software Edge produce uno stream di dati di basso livello, con informazioni molto tecniche che difficilmente l’ERP può utilizzare come KPI per le dashboard di analisi o trigger per l’attivazione di workflow. In questi casi è necessario implementare un processo di ETL sui dati in entrata, in modo da convertire le misurazioni dei sensori in variabili significative per le procedure ad alto livello dell’ERP.
Spesso l’ambiente di sviluppo standard del gestionale potrebbe offrire un supporto limitato alle librerie necessarie per l’implementazione di queste funzionalità (ad esempio per la manipolazione di file JSON o la fruizione di servizi REST).
In questo caso un’alternativa valida all’IDE del software ERP potrebbe essere un framework in Python. Questo linguaggio di sviluppo è dotato di potenti librerie per gestire acquisizione e trasformazione di flussi di informazioni e riesce anche a gestire dati in formato non strutturato, come ad esempio gli stream prodotti da una telecamera. Inoltre, utilizzare il Python per realizzare queste interfacce potrebbe già predisporle a una futura integrazione con delle pipeline di Machine Learning, altro ambito che questo linguaggio è in grado di supportare ottimamente.
Nella realizzazione di queste interfacce occorre anche porre particolare attenzione alle logiche relative a sfridi, scarti ed errori, definendo dei range significativi affinché l’ERP sia in grado di attivare le verifiche concordate in fase di analisi funzionale, ad esempio un Three Way Match per filtrare valori fuori da certi range, oppure l’assegnazione di particolari label propedeutiche al Controllo Qualità.
Attivazione di trigger
Una delle feature più interessanti della creazione di un circuito tra ERP e device IoT è la possibilità di attivare trigger. Quando il gestionale rileva certi range di valori, il sistema potrebbe inviare un comando all’impianto di produzione magari sfruttando un sistema MES interfacciato con il PLC.
Un device IoT potrebbe per esempio rilevare una temperatura troppo alta su un rullo di produzione, e comunicare questo dato all’ERP che invierebbe al MES l’istruzione di bloccare l’impianto. In questo modo, oltre alla raccolta dati, è possibile realizzare anche un sistema di gestione capace di eseguire alcuni compiti autonomamente, con ridotta supervisione umana.
La comunicazione tra ERP e MES può avvenire con brevissimi scarti di tempo grazie all’impiego della tecnologia dei web service: in questo modo il gap temporale che intercorre tra la segnalazione di un device IoT e l’azione del MES/PLC risulta estremamente ridotto.
High availability e gestione degli errori
Data la criticità della gestione di un impianto di produzione, è consigliabile sottomettere le interfacce a sistemi di HA (High Availability, ossia Alta Disponibilità), prevedendo anche una soluzione basata su cluster e sistemi di auto scalabilità, per garantire che l’interfaccia sia sempre online ed evitare interruzioni del servizio.
E’ necessario che l’interfaccia implementi notifiche in tempo reale degli errori, magari recapitandole via SMS o scrivendo un messaggio su un canale Telegram dedicato, in modo che il personale di supporto possa essere allertato in caso di bisogno. La gestione degli errori può essere implementata con una pipeline a due step: il primo step direttamente sulla piattaforma Edge per le anomalie di misurazione dei sensori, e un secondo step sull’ERP, per intercettare invece errori logici ad alto livello.