Filosofia di Progettazione Local-First
I sistemi di monitoraggio industriale tradizionali dipendono dalla presenza costante della rete: in caso di disconnessione dal cloud, l’acquisizione dei dati si interrompe o genera perdita di log.
L’architettura Kaspian / Sentinel ribalta questo modello mettendo la centralina periferica al centro della persistenza informatica.
1. Separazione tra Logging e Trasmissione
L’esecuzione del firmware è strutturata per disaccoppiare in modo netto il ciclo di lettura dei sensori dalla gestione dello stack di rete:
- Priorità di Scrittura: L’acquisizione e la registrazione su memoria non volatile (FRAM) avvengono a frequenza fissa determinata dal timer hardware, indipendentemente dallo stato del bus di comunicazione.
- Tolleranza alle Interruzioni: L’assenza di segnale Wi-Fi, Ethernet o la caduta dell’infrastruttura di rete locale non bloccano il ciclo di esecuzione principale.
- Pila di Ring Buffer: I log in attesa di invio vengono strutturati in una coda circolare persistente gestita direttamente sulla memoria di bordo.
2. Gestione dei Failover di Rete
In presenza di micro-interruzioni o blackout prolungati, la centralina opera in totale autonomia:
- Modalità Store-and-Forward: I dati acquisiti durante il periodo di offline vengono contrassegnati, sequenziati e memorizzati localmente.
- Integrità del Timestamp: Il Real-Time Clock (RTC) dedicato garantisce la marcatura oraria precisa di ogni misurazione anche in assenza di sincronizzazione NTP esterna.
- Zero Perdita di Misurazioni: La capacità di memorizzazione locale copre interruzioni prolungate (ore o giorni) senza saturazione e senza sovrascrittura indesiderata.
3. Sincronizzazione Asincrona e Re-Sync
Al ripristino della connettività verso la piattaforma SaaS, il sistema attiva la procedura di allineamento:
- Ingestion a Pacchetti: La centralina invia i log arretrati in blocchi sequenziali compressi per non saturare la banda disponibile.
- Handshake con Conferma: Il backend risponde con un ACK per ciascun blocco integrato con successo. La memoria locale libera lo spazio occupato solo dopo la conferma di avvenuta persistenza su database.
- Tracciamento dei Drop: Qualsiasi anomalia durante la trasmissione attiva tentativi di re-invio automatici senza alterare l’ordine cronologico dei log.