Via Antonio Amato, 20/22 84131 Salerno (SA)

Apache Kafka per le Smart Grid: la rete elettrica intelligente

Apache Kafka per le Smart Grid

(articolo redatto da Fabio Cervino e Maurizio Migliore)

Siamo stati spesso coinvolti in progetti di Digital Transformation nel settore energia. In diversi casi abbiamo lavorato su componenti software in grado di raccogliere dati da sistemi (spesso legacy), di elaborarli attraverso processi batch temporizzati e di renderli quindi fruibili agli attori del sistema.

Nei progetti più recenti sono stati utilizzate architetture software basate su ELK (Elasticsearch, Logstash e Kibana) in cui un primo sistema (Logstash) è delegato alla raccolta dei dati (log) dalle varie fonti, un secondo sistema (Elasticsearch) è delegato alla ricerca ed all’analisi dei dati ed un terzo sistema (Kibana) fornisce (ai sistemi esterni) l’accesso ai dati gestiti da Elasticsearch. L’utilizzo di ELK si è dimostrato molto efficace in termini di raccolta di dati da fonti eterogenee e di fornitura di tutte le informazioni utili alla rete intelligente. Il giudizio in termini di efficienza, invece, non può essere il medesimo: i flussi delle informazioni fornite ai sistemi esterni non sono continui ma avvengono su processi temporizzati e le stesse informazioni fornite ai sistemi intelligenti sono spesso ridondanti.

In questo articolo viene descritto l’utilizzo di tecniche alternative basate su tecnologia Kafka che permettono, a nostro giudizio, di superare i limiti in termini di efficienza che si riscontrano nel caso di utilizzo di sistemi ELK.

Introduzione

Il mondo dell’energia sta subendo un cambiamento radicale, spinto soprattutto dai costi elevati e dagli impatti negativi che ha avuto a livello ambientale e che, ancor peggio, può avere in futuro.

Per adeguarsi agli obiettivi di efficienza e sostenibilità dei sistemi energetici mondiali (entro il 2050 il 90% dell’energia che alimenta le economie globali dovrà essere prodotta da fonti rinnovabili), le industrie energetiche hanno iniziato ad attuare una mutazione infrastrutturale in grado di rendere intelligente tutto l’ecosistema di distribuzione dell’energia.

Infatti, con l’ampliarsi della distribuzione proveniente da fonti rinnovabili, anche in ambito domestico si deve far spazio ad una rete di produzione aggiuntiva, ripartita sul territorio con flussi di potenze bidirezionali e reti attive. Di conseguenza, non sarà più sufficiente avere un controllo centralizzato della produzione, ma diventerà necessario monitorare, gestire ed integrare la distribuzione di energia anche a livello locale.

Questo cambiamento implica il passaggio da un sistema centralizzato su scala ridotta ad un sistema più complesso, distribuito su reti intelligenti e microreti. Esso richiede un’infrastruttura cloud-native che sia flessibile, scalabile, elastica, resiliente ma anche affidabile: tali requisiti diventano fondamentali per l’integrazione e l’elaborazione dei dati in tempo reale.

Da qui nasce l’idea delle Smart Grid.

Che cos’è una Smart Grid?

Una Smart Grid (o rete intelligente) è una rete elettrica che include una varietà di operazioni e misure energetiche, provenienti da contatori smart, elettrodomestici intelligenti, risorse di energia rinnovabile e altre componenti, che le consentono il controllo e la gestione interattiva in tempo reale del flusso di energia della rete stessa.

Tali operazioni rendono efficiente la distribuzione di elettricità, evitando black-out e sovraccarichi, minimizzando le variazioni di tensione e mettendo in comunicazione i vari impianti con le centrali, ottimizzando così sia la domanda che l’offerta di energia.

Gli aspetti più importanti che rendono una rete smart sono: il “condizionamento elettronico”, il “controllo della produzione” ed il “controllo della distribuzione” dell’energia. Si fa presto a capire come questi aspetti possano diventare strategici se utilizzati nel modo corretto e con l’ausilio delle moderne tecnologie (come vedremo più avanti).

Riprendendo una definizione della Commissione Europea (European Union Commission Task Force for Smart Grids), si possono estrarre dei concetti importanti in merito, che ci fanno capire sia l’importanza sia il significato del concetto di “Smart Grid”.

Una Smart Grid è una rete elettrica economicamente efficiente in grado di integrare i comportamenti e le azioni di tutti gli utenti ad essa collegati (generatori, consumatori o entrambi), per garantire un sistema elettrico economico, efficiente e sostenibile, con basse perdite di energia e alti livelli di qualità, assicurando la sicurezza dell’approvvigionamento.

In sostanza, una Smart Grid è composta da prodotti e servizi innovativi con l’ausilio di tecnologie intelligenti di monitoraggio, controllo, comunicazione e autoriparazione per:

  1. Facilitare la connessione ed il funzionamento di generatori di qualsiasi dimensione o tecnologia.
  2. Consentire ai consumatori di svolgere un ruolo nell’ottimizzazione del funzionamento del sistema.
  3. Fornire ai consumatori maggiori informazioni e opzioni, su come utilizzare la loro fornitura.
  4. Ridurre significativamente l’impatto ambientale dell’intero sistema di alimentazione elettrica.
  5. Mantenere o addirittura migliorare gli elevati livelli esistenti di affidabilità, qualità e sicurezza dell’approvvigionamento del sistema.
  6. Mantenere e migliorare i servizi esistenti in modo efficiente.”

Una rete elettrica, quindi, non è più un solo canale per trasmettere e distribuire energia dal produttore al consumatore, ma diventa una rete in grado di far interagire gli attori e di determinare in anticipo le richieste di consumo, adattando con maggiore flessibilità la produzione e, di conseguenza anche il consumo, di energia elettrica. Allo stesso tempo, le smart grid diventano abilitanti anche per sistemi di tele gestione e tele lettura dell’energia erogata (smart metering).

Questo ha un duplice vantaggio: da un lato si riducono i costi per la lettura e la gestione dei contratti dell’energia elettrica e dall’altro l’utente finale riesce ad avere sempre sotto controllo i consumi.

Tecnologie ed evoluzioni di una Smart Grid

Il passaggio a questo tipo di soluzione architetturale implica una fondamentale reingegnerizzazione dell’intero servizio elettrico industriale e non della sola infrastruttura tecnica. Infatti, una smart grid può essere composta da energia rinnovabile, dispositivi smart, generatori, processori, sensori IoT, microreti e sistemi auto-ottimizzati (self-optimizing), come possiamo vedere dalla seguente figura:

Tecnologie Smart Grid

Riorganizzata il modello della rete elettrica, l’infrastruttura ottenuta dovrà essere in grado di rispettare i seguenti requisiti:

  • Affidabilità: Utilizzando tecnologie che valutano istante per istante lo stato della rete, è possibile migliorare il rilevamento dei guasti (fault detection) e consentire l’auto-riparazione (self-healing) della rete stessa senza l’intervento di tecnici specializzati. Ciò garantirà l’affidabilità della fornitura di elettricità e una minore vulnerabilità a disastri naturali o ad eventuali attacchi dolosi.
  • Flessibilità nella topologia della rete: l’infrastruttura di trasmissione e distribuzione di nuova generazione sarà in grado di gestire meglio i possibili flussi di energia bidirezionali, consentendo la produzione distribuita da fonti rinnovabili, come i pannelli fotovoltaici sui tetti degli edifici, oppure la ricarica da/verso le batterie di auto elettriche, turbine eoliche, l’uso di celle a combustibile e altre fonti.
  • Efficienza: al fine di migliorare l’efficienza dell’infrastruttura energetica e quindi ottimizzare la gestione della domanda, possono essere applicate particolari tecniche innovative tali da apportare notevoli vantaggi a tutto il processo elettrico. Ad esempio, lo spegnimento dei condizionatori d’aria durante le ore di punta in cui i prezzi sono più alti, oppure gli eventuali surplus di energia di alcune zone possono essere ridistribuiti dalla rete laddove vi sia la necessità, ma anche diminuire gli interventi di riparazione grazie ad una migliore gestione delle interruzioni utilizzando i dati di misurazione avanzata (Advanced Metering Infrastructure). L’effetto complessivo è una minore ridondanza nella trasmissione e distribuzione delle linee e un maggiore utilizzo dei generatori, con conseguente riduzione dei prezzi dell’energia.
  • Sostenibilità: la maggiore flessibilità delle smart grid consente una maggiore diffusione delle fonti di energia rinnovabile come quella solare ed eolica, anche senza l’aggiunta di accumulo di energia.
  • Abilitazione al mercato: la rete intelligente consente una comunicazione sistematica tra fornitori (con il loro prezzo dell’energia) e consumatori (con la disponibilità a pagare). Consente quindi, ad entrambi strategie operative più flessibili e sofisticate.
  • Cybersecurity: con le smart grid è possibile fornire un’infrastruttura sicura, con comunicazioni crittografate ed autenticate, con il rilevamento di anomalie in tempo reale.

In sintesi, una smart grid possiede strumenti di monitoraggio intelligenti per tenere traccia di tutto il flusso elettrico del sistema, permette lo scambio di informazioni, rendendo quindi tutto il processo efficiente sotto vari punti di vista. Efficienza, quindi, è la parola chiave che meglio descrive queste reti.

Le Smart Grid in Italia

Il nostro paese risulta essere molto attivo nello sviluppo e nella diffusione delle Smart Grid: l’autorità di Regolazione per Energia Reti e Ambiente ha avviato la selezione e poi l’approvazione di una serie di progetti che risultino essere all’avanguardia per la realizzazione di una rete elettrica intelligente.

Ad oggi sono sette i progetti approvati dall’autorità di regolazione. Il principale riguarda il campus di Savona dell’università di Genova che ha realizzato una rete elettrica interna, in comunicazione con quella pubblica, affiancata da sistemi software evoluti che permettono lo scambio di informazioni, il controllo dei dati ed il monitoraggio in tempo reale, per ottimizzarne i consumi. Con questa soluzione oltre a ridurre i costi, hanno potuto anche usufruire degli impianti di produzione rinnovabili, così da coprire circa il 12% del fabbisogno della Smart Grid.

L’italia oltre all’impegno per le Smart Grid è stata anche il primo paese in Europa ad introdurre su larga scala gli Smart Meter per i clienti finali, consentendo quindi uno scambio bidirezionale di informazioni con il fornitore di energia.

Realizzare un’architettura per una Smart Grid con Kafka

Gli argomenti affrontati fino a questo punto ci fanno capire quanto sia, dal punto di vista tecnico, difficile rispondere alle esigenze di una Smart Grid. Ad esempio, il bilanciamento e l’adeguamento del carico, il livellamento dei picchi e la determinazione del prezzo sul tempo di utilizzo, non possono essere certo soddisfatti con un’architettura monolitica, soluzione fino ad oggi adottata dalle industrie del settore energetico.

La costruzione di una rete intelligente invece, richiede che tutto venga realizzato con un’infrastruttura cloud-native flessibile, in grado di integrare ed elaborare i dati in tempo reale provenienti dai sistemi installati in locale. Questa combinazione permette al sistema smart di poter applicare le strategie inizialmente prefissate, avendo ora a disposizione gli strumenti ed i dati di cui necessita.

Proprio per le esigenze nate dall’evoluzione della propria infrastruttura, le aziende energetiche dopo il passaggio al cloud hanno dovuto individuare una soluzione che permetta loro di effettuare lo streaming continuo dei dati con l’elaborazione in real-time: Apache Kafka si è rilevata la scelta più adeguata.

Kafka, consente di pubblicare, sottoscrivere ed archiviare flussi di record in tempo reale ed è stata progettata per gestire le informazioni provenienti da più fonti (come il cloud ad esempio).

L’ecosistema Kafka vede il suo maggiore successo con il diffondersi dei microservizi, ma è riuscita a farsi spazio anche in altri settori proprio per le caratteristiche appena specificate. Basti pensare che è stato ideato da Linkedin come sistema interno, ed oggi riesce a gestire 1,4 trilioni di messaggi al giorno, fattore che ha spinto anche altre società ad adottare la stessa soluzione.

Applicata ad un contesto tecnologico moderno, in cui la velocità di elaborazione dei dati sembra essere l’approccio più funzionale per la gestione di moltissimi servizi, Kafka si offre come una delle soluzioni più performanti e scalabili. Permette infatti di superare un modello di elaborazione di dati in Batch, eseguita in background e a intervalli prestabiliti. Fornisce un processing e un arricchimento dei dati in real time, garantendo al contempo robustezza e semplicità d’uso.

Nel momento della stesura di questo articolo , Kakfa ha raggiunto la versione 3.0 che ha apportato quasi 90 punti migliorativi rispetto alla versione precedente, oltre alla risoluzione di quasi 140 bug noti. Questi dati rappresentano il lavoro continuo svolto dall’Apache Software Foundation per offrire una soluzione sempre più in linea con le esigenze degli utilizzatori.

Produzione e distribuzione di energia con architettura ibrida

L’architettura rappresentata fino a questo punto può essere definita concettualmente “ibrida”: infatti, nonostante abbia molto senso per le aziende energetiche orientarsi al cloud (cloud-first) e costruirci le loro soluzioni innovative, la chiave del successo è comunque un’elaborazione dei dati elastica e scalabile. Questo ovviamente non può essere fatto completamente nel cloud. Anzi, la maggior parte dei casi d’uso relativi all’energia richiede l’elaborazione dei dati ai margini (Edge Computing).

Nella figura seguente si può vedere un esempio di architettura che sfrutta Kafka, sviluppata in cloud e con l’ausilio dell’Edge computing:

esempio di architettura Kafka

L’immagine mostra come, l’integrazione in un sistema cloud innovativo fornisce la possibilità di connettersi a tecnologie moderne come un Data Warehouse (Snowflake), servizi di Machine Learning oppure servizi SaaS di terze parti (Salesforce). Ad esempio, si può pensare di fare riferimento a Google per sfruttare gli strumenti basati su TenserFlow per applicare algoritmi predittivi di intelligenza artificiale, così da ottimizzare tutto il processo di produzione e consumo dell’energia.

Per connettere le diverse tipologie di componenti poi, come ad esempio macchine, apparecchiature digitali, sensori, PLC, sistemi SCADA e molto altro, il tool Kafka Connect svolge un ruolo fondamentale, in quanto, consente l’integrazione su larga scala e in real-time di dispositivi tecnologicamente diversificati.

Altro aspetto importante che Kafka riesce a soddisfare è quello della replica tra edge e cloud: infatti, uno strumento come MirrorMaker 2 riesce ad adattarsi perfettamente allo scopo delle società di energia. È stato pensato per gli use-case di replica geografica complessi, in cui si vogliono risolvere problematiche di migrazione, backup, disaster-recovery e fail-over.

Delineata l’infrastruttura con gli strumenti di connessione e di replica, il flusso di dati viene poi elaborato in modo continuativo con gli altri componenti (nativi) dell’ecosistema Kakfa: i Kafka Streams. Essi, con una velocità di elaborazione elevata, consentono di trasferire i dati ricevuti, filtrarli e renderli disponibili al cloud. È noto, infatti, come Kafka sia la soluzione migliore come performance e scalabilità, fornendo un processing e un arricchimento dei dati in real-time, garantendo al contempo robustezza e semplicità d’uso.

Streaming di eventi per la produzione di energia nell’Edge con una rete 5G

Lo sviluppo di un’architettura di questo tipo consente alle società di energia di introdurre e sfruttare le potenzialità dell’Edge Computing: ovvero, un modello di calcolo distribuito, capace di elaborare e memorizzare dati localmente e di trasmetterli ai data center (in cloud). Questo approccio diventa fondamentale per le industrie energetiche, poiché riescono a gestire e trattare anche tutte le informazioni prodotte localmente da generatori, contatori smart, centrali, impianti fotovoltaici, e così via.

Il processo di scambio dei dati sarà agevolato dalla tecnologia 5G che con la sua velocità di trasmissione può raggiungere i 10 gigabit al secondo (Gbit/s), latenza bassissima per garantire tempi di risposta in real-time, ma anche la possibilità di riuscire a gestire una quantità elevatissima di dispositivi per unità di superficie (circa 1.000.000 di dispositivi per km²). Tutte queste caratteristiche sono accompagnate anche da un basso consumo energetico (90% in meno rispetto alla 4G per ogni bit trasmesso).

Un Edge Computing è solitamente disconnesso dal cloud ma le applicazioni di controllo (mission-critical) devono comunque funzionare 24 ore su 24 e 7 giorni su 7 anche in assenza o instabilità della connessione internet. Vediamo nella seguente figura una possibile implementazione:

Produzione Energia - Edge Computing

Gestione delle interruzioni in tempo reale con Kafka

Tra i motivi principali per cui si orienta verso una soluzione architetturale per la realizzazione di una Smart Grid, c’è sicuramente quello della gestione delle interruzioni. Infatti, gli strumenti utilizzati svolgono un ruolo importante e consentono di ottimizzare la fase di gestione dei guasti, mantenendo costantemente aggiornato il canale di comunicazione tra l’azienda che produce energia ed il consumatore finale.

Nella seguente immagine possiamo vedere come lo scambio di dati in una fase critica del sistema, rimanga comunque attivo e diventi un aspetto fondamentale per la gestione dell’evento, delineando anche in questo caso l’importanza di avere uno strumento di streaming continuo dei dati:

Smart Meters

I contatori inviano informazioni ogni 2 ore, creando quindi un enorme flusso da gestire da parte dell’impianto energetico. Tuttavia, applicando una preelaborazione ed un filtraggio nell’Edge e, utilizzando degli strumenti come ksqlDB (pensato proprio per l’elaborazione dei flussi di dati in kafka), è possibile ridurre notevolmente la quantità di dati da gestire e trasmettere al cloud.

Con tale strategia è possibile processare le informazioni ricevute in real-time e disporli per i vari strumenti di monitoraggio presenti nel cloud, nonché algoritmi predittivi di intelligenza artificiale.

L’intero processo di scambio dati e monitoraggio diventa quindi un enorme valore aggiunto non solo per l’industria che produce energia, ma soprattutto per una migliore esperienza del cliente. Ad esempio, lo strumento per le operazioni di gestione delle interruzioni può avvisare il cliente in tempo reale in caso di emergenza e conseguente interruzione dell’elettricità:

Real Time Outage Management

L’utente, ricevuta la comunicazione, rimarrà costantemente informato sia sullo stato del ripristino che sulle stime di risoluzione del problema.

Impiego di Kafka nel mondo reale: l’esempio Tesla

Una delle principali aziende conosciute nel mondo per innovazione è sicuramente Tesla. Essa non è solo una casa automobilistica ma un’azienda tecnologica che produce software innovativi e all’avanguardia. Tesla fornisce un’infrastruttura energetica per le auto con il suo “Supercharger Tesla” e produce energia solare nelle loro “Gigafactories”.

L’elaborazione e l’analisi dei dati dalle loro reti intelligenti e, l’integrazione con i servizi backend IT in real-time, sono la chiave del loro successo:

Tesla ha costruito un’infrastruttura di piattaforma dati basata su Kafka per supportare i milioni di dispositivi e, trilioni di data points, gestiti ogni giorno. Proprio per evidenziare quanto fosse diventato importante effettuare tale scelta, in un Kafka Summit del 2019 hanno mostrato la storia e l’evoluzione nell’utilizzo di Kafka:

Case Study Tesla

Si evince dal grafico che la quantità di dati è cresciuta in modo esponenziale nel corso degli anni e si può vedere anche che ad un certo punto del percorso, c’è stato un passaggio da RabbitMQ a Kafka che ha consentito l’accelerazione in tal senso.

Futuro di Kafka nel settore energetico e nelle smart grid

In molti casi d’uso, Kafka è rilevante per la creazione di un’infrastruttura di rete intelligente, elastica e scalabile. Di conseguenza, in vari contesti la sua diffusione sta crescendo notevolmente, basti guardare ai sistemi di elaborazione dei pagamenti, al mondo dei trasporti, delle telecomunicazioni, del gaming e molto altro. Questo ci porta a capire come anche le società energetiche possono ampliare i loro casi d’uso e quindi riuscire a sfruttare sempre di più le potenzialità di uno strumento come Kakfa con continue evoluzioni delle loro Smart Grid.

Grazie a Kai Waehner che ci ha consentito di utilizzare e adattare il contenuto di un suo articolo sul nostro blog.

.


Se anche tu vuoi occuparti di progetti di sviluppo smart
dai un’occhiata alle nostre opportunità di lavoro e conosciamoci subito!

Questo sito utilizza cookies propri e si riserva di utilizzare anche cookie di terze parti per garantire la funzionalità del sito e per tenere conto delle scelte di navigazione.
Per maggiori dettagli e sapere come negare il consenso a tutti o ad alcuni cookie è possibile consultare la Cookie Policy.

USO DEI COOKIE

Se abiliti i cookie nella tabella sottostante, ci autorizzi a memorizzare i tuoi comportamenti di utilizzo sul nostro sito web. Questo ci consente di migliorare il nostro sito web e di personalizzare le pubblicità. Se non abiliti i cookie, noi utilizzeremo solo cookies di sessione per migliorare la facilità di utilizzo.

Cookie tecnicinon richiedono il consenso, perciò vengono installati automaticamente a seguito dell’accesso al Sito.

Cookie di statisticaVengono utilizzati da terze parti, anche in forma disaggregata, per la gestione di statistiche

Cookie di social networkVengono utilizzati per la condivisione di contenuti sui social network.

Cookie di profilazione pubblicitariaVengono utilizzati per erogare pubblicità basata sugli interessi manifestati attraverso la navigazione in internet.

AltriCookie di terze parti da altri servizi di terze parti che non sono cookie di statistica, social media o pubblicitari.