Skip to Content
ArchitetturaPanoramica

Architettura

IronFlock è un sistema distribuito con due livelli: dispositivi edge autonomi che eseguono applicazioni nel punto di operazione e servizi centrali che forniscono storage dei dati a livello di flotta, dashboard, AI e coordinamento. Un message broker in tempo reale connette tutto.

Non è una piattaforma puramente edge né puramente cloud. È entrambe le cose — e l’architettura è progettata affinché ogni livello faccia ciò che sa fare meglio.

Come il Sistema si Integra

┌─────────────────────────────────────────────────────────┐ ┌──────────┐ │ Central Services │ │ Virtual │ │ │ │ Device │ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌────────┐ │ │┌────────┐│ │ │ FleetDB │ │ Backend │ │ AI │ │ Web │ │ ││ Custom ││ │ │ Cluster │ │ Service │ │ Service │ │ UI │ │ ││ Service││ │ │(Timescale│ │ │ │ │ │ │ │ │└────────┘│ │ │ DB) │ │ │ │ │ │ │ │ │ Agent │ │ └────┬─────┘ └────┬─────┘ └────┬─────┘ └───┬────┘ │ └────┬─────┘ │ │ │ │ │ │ │ │ └─────────────┴──────┬──────┴────────────┘ │ │ │ │ │ │ │ ┌───────┴───────┐ │ │ │ │ WAMP Message ├────────────────────────────┘ │ │ Broker │ │ │ └───────┬───────┘ │ │ │ │ └────────────────────────────┼────────────────────────────┘ ┌──────────────┼─────────────┐ │ │ │ ┌───────┴──┐ ┌───────┴──┐ ┌──────┴───┐ │ Edge │ │ Edge │ │ Edge │ │ Device 1 │ │ Device 2 │ │ Device 3 │ │┌────────┐│ │┌────────┐│ │┌────────┐│ ││ Apps ││ ││ Apps ││ ││ Apps ││ ││(Docker)││ ││(Docker)││ ││(Docker)││ │└────────┘│ │└────────┘│ │└────────┘│ │ Agent │ │ Agent │ │ Agent │ └──────────┘ └──────────┘ └──────────┘

I Tre Livelli

1. Dispositivi Edge — Nodi di Esecuzione Autonomi

I dispositivi edge sono i nodi di esecuzione principali in IronFlock. Ogni dispositivo esegue un agent leggero e una o più applicazioni containerizzate (Docker). I dispositivi sono autonomi: continuano a funzionare anche quando sono disconnessi dai servizi centrali e si riconnettono automaticamente quando la rete viene ripristinata.

I dispositivi edge possono essere qualsiasi hardware compatibile con Linux — Raspberry Pi, PC industriali, NVIDIA Jetson, gateway x86 o schede ARM personalizzate.

Cosa gira sui dispositivi edge:

  • L’agent IronFlock — gestisce il ciclo di vita del dispositivo, gestisce gli aggiornamenti OTA, esegue i container e mantiene la connessione al message broker
  • Le tue applicazioni — distribuite come container Docker in qualsiasi linguaggio di programmazione. Queste app raccolgono dati da PLC e sensori, eseguono logica di controllo, servono HMI locali, eseguono modelli AI o fanno qualsiasi altra cosa possa fare un’applicazione Linux I dispositivi edge avviano tutte le connessioni in uscita per impostazione predefinita — non è necessario aprire porte in entrata. Tuttavia, le porte del dispositivo possono essere aperte selettivamente quando necessario, ad esempio per esporre un HMI locale o un endpoint API. Consulta Dispositivi Edge & Agent per i dettagli.

2. Servizi Centrali — Dati, UI e Intelligenza a Livello di Flotta

Il livello centrale fornisce funzionalità che richiedono una visione a livello di flotta o un’infrastruttura persistente. Ogni servizio centrale è scalabile in modo indipendente — i servizi possono essere scalati orizzontalmente per gestire flotte in crescita senza influenzare gli altri:

  • FleetDB — Un cluster di database PostgreSQL/TimescaleDB che memorizza tutti i dati di telemetria raccolti dai dispositivi. Ogni progetto ottiene la propria istanza di database isolata con tabelle e credenziali dedicate. L’architettura a cluster consente la scalabilità orizzontale tra i progetti. FleetDB gestisce lo storage di serie temporali, le aggregazioni pianificate e funge da backend dati per dashboard e query AI.
  • Backend Service — Gestisce dispositivi, progetti, app, account utente, release e tutte le operazioni a livello di flotta. Espone l’API web e gestisce il livello di logica di business. Scala orizzontalmente per gestire il carico API crescente e le registrazioni dei dispositivi.
  • FleetDB Service — Elabora i flussi di dati in entrata dai dispositivi, gestisce le trasformazioni dei dati, fornisce dati dashboard in tempo reale al frontend e gestisce la valutazione degli allarmi. Scala in modo indipendente per corrispondere al volume di ingestione dei dati.
  • AI Service — Orchestra le conversazioni degli agenti AI, aggiungendo e rimuovendo dinamicamente agenti specializzati man mano che la conversazione evolve. Instrada le query in linguaggio naturale, invoca funzioni lato dispositivo tramite il message broker e genera grafici e analisi in tempo reale. Scala per supportare conversazioni AI concorrenti tra i progetti.
  • Web UI — Il pannello di controllo basato su browser dove gli operatori gestiscono la loro flotta, visualizzano dashboard, configurano allarmi, sviluppano app e interagiscono con l’assistente AI.
  • Container Registry — Memorizza le immagini Docker per tutte le app, consentendo la distribuzione OTA a qualsiasi dispositivo della flotta. Scala storage e throughput in modo indipendente man mano che il catalogo delle app cresce.

I servizi centrali possono essere eseguiti nel cloud IronFlock (gestito da IronFlock) o sulla propria infrastruttura per le distribuzioni on-premises. Consulta Servizi Centrali per i dettagli.

3. Dispositivi Virtuali — Nodi di Calcolo Centrali Personalizzati

Oltre ai dispositivi edge fisici, IronFlock consente di distribuire dispositivi virtuali — nodi di calcolo ospitati nel cloud che si uniscono al tuo progetto insieme alla tua flotta fisica. Un dispositivo virtuale esegue lo stesso agent IronFlock di un dispositivo fisico, partecipa allo stesso instradamento dei messaggi e può eseguire qualsiasi applicazione containerizzata.

Usi comuni per i dispositivi virtuali:

  • Eseguire servizi di flotta centrali come Grafana, Node-RED, Netdata o Jupyter che necessitano di una prospettiva a livello di flotta
  • Ospitare pipeline di elaborazione dati che aggregano dati da più dispositivi fisici
  • Eseguire servizi di inferenza AI troppo intensivi in termini di calcolo per l’hardware edge
  • Agire come bridge di protocollo che connettono sistemi esterni (SAP, ERP, API cloud) al tuo progetto IronFlock

I dispositivi virtuali non sono una funzionalità separata — sono partecipanti a pieno titolo nel tuo progetto. Appaiono nell’elenco dei dispositivi, ricevono aggiornamenti OTA e le loro app comunicano con le app dei dispositivi edge attraverso lo stesso message broker.

Consulta Dispositivi Virtuali per i dettagli.

Il Message Broker — Il Collante

Tutti i componenti di IronFlock comunicano attraverso un message broker WAMP (Web Application Messaging Protocol) centrale. Il broker fornisce:

  • Messaggistica pub/sub in tempo reale — I dispositivi pubblicano la telemetria, i dashboard si abbonano ai dati live, le app comunicano in modo bidirezionale
  • RPC (Remote Procedure Calls) — Il servizio AI chiama funzioni lato dispositivo, il backend attiva operazioni container sui dispositivi, gli operatori inviano comandi
  • Isolamento del progetto — Ogni combinazione progetto-app ottiene il proprio realm di messaggistica crittograficamente isolato. I dispositivi in un progetto non possono vedere i messaggi di un altro
  • Autenticazione — Ogni connessione al broker richiede credenziali valide

Il message broker è ciò che rende IronFlock un sistema distribuito piuttosto che una raccolta di parti disconnesse. Un agente AI in esecuzione nel cloud centrale può invocare una funzione su un dispositivo fisico in uno stabilimento — e ottenere il risultato in tempo reale — perché entrambi sono connessi allo stesso broker.

Consulta Message Broker (WAMP) per i dettagli.

Scalabilità e Aggiornamenti Senza Interruzioni

Ogni componente dell’architettura IronFlock è progettato per la scalabilità orizzontale. Il backend, FleetDB, il servizio AI, il message broker e il registro dei container possono essere scalati in modo indipendente per gestire flotte in crescita, volumi di dati crescenti e più utenti concorrenti — senza influenzare altre parti del sistema.

Tutti i componenti del sistema ora supportano gli aggiornamenti a downtime quasi nullo — possono essere aggiornati a nuove versioni praticamente senza interrompere le connessioni attive o i flussi di dati. Il message broker in cluster è stato l’ultimo componente a compiere questo passo, quindi l’intera piattaforma è ora aggiornabile con quasi nessuna interruzione del servizio.

Architettura vs. SCADA Tradizionale

Le piattaforme SCADA tradizionali (Ignition, WinCC, Wonderware) seguono un modello gateway-centrico: un server centrale fa tutto — raccolta tag, storage della cronologia, visualizzazione schermate, elaborazione allarmi e scripting. L‘“edge” sono solo i PLC che alimentano i dati a quel server centrale.

IronFlock inverte questo schema. I dispositivi edge sono nodi di esecuzione autonomi con piena capacità di calcolo. I servizi centrali gestiscono ciò che richiede una visione a livello di flotta: storage persistente dei dati, dashboard, orchestrazione AI e gestione della flotta. Nessuno dei due livelli è subordinato all’altro — sono complementari.

AspettoSCADA TradizionaleIronFlock
Ruolo edgeSorgente dati passiva (PLC → gateway)Nodo di calcolo autonomo che esegue applicazioni complete
Ruolo centraleFa tutto (server gateway)Dati di flotta, UI, AI e coordinamento
Distribuzione appModuli sul gateway centraleContainer Docker sui dispositivi edge
Comportamento offlineL’edge smette di funzionare senza gatewayI dispositivi edge continuano a funzionare autonomamente
ScalabilitàAggiungere più server gatewayAggiungere più dispositivi edge
ComunicazionePolling/OPC dal gateway al PLCMessaggistica bidirezionale in tempo reale (WAMP)

Opzioni di Distribuzione

I servizi centrali di IronFlock possono essere eseguiti in tre configurazioni:

ModalitàServizi CentraliDispositivi EdgeCaso d’uso
Cloud (predefinito)Cloud gestito IronFlockConnessione tramite internetLa maggior parte delle distribuzioni
ApplianceBox pre-configurato in loco — funziona anche come dispositivo edgeConnessione tramite rete localeProduttori di macchine / OEM
Cloud privatoLa tua DMZ / VPC / datacenterConnessione tramite rete localeAir-gapped, regolamentati

Consulta Opzioni di Distribuzione per un confronto completo dei tre modelli.

Last updated on