Design e sviluppo per le operazioni manifatturiere
Vista live di linea con OEE. Distinta multilivello con propagazione delle mancanze. Andon che scrive in manutenzione. La cabina di regia che il tuo stabilimento immagina da anni, al posto dei quattordici fogli di calcolo che tollera.
I problemi che sentiamo più spesso
Quattordici fogli di calcolo su SharePoint e un gruppo Telegram per il cambio turno
La mancanza che si vede al banco di assemblaggio il martedì è la stessa che chiunque in acquisti avrebbe letto dalla distinta base tre giorni prima. Niente è collegato a niente, e gli operatori portano il sistema in testa.
Un valore di OEE che vive dentro un PDF mensile
Quando il responsabile di linea vede una linea al 41 per cento, il turno che la descrive è già finito. Il numero è corretto, ed è inutile.
Un registro manutenzione che vive su un quaderno di carta vicino alla pressa
Andon a voce, fermi macchina annotati a mano, il turno che segue legge il quaderno se si ricorda di guardarlo. Lo stesso fermo la settimana dopo sembra un caso a tutti tranne all'operatore in turno.
Un foglio di pianificazione che nessuno aggiorna e nessuno crede
Il Gantt è quello di venerdì scorso, la produzione vera vive nella testa di qualcuno, e il servizio clienti telefona ad acquisti per chiedere le date.
Industria · la cabina di regia che lo stabilimento aspettava
Una cabina di regia operativa per uno stabilimento manifatturiero a Brescia con sei linee di produzione. Otto moduli in un solo prodotto, al posto di quattordici fogli di calcolo, un gruppo Telegram per il cambio turno e un kanban di carta appeso al muro accanto alla pressa.
Dentro la build di Industria
Lo stabilimento gestisce sei linee e un magazzino a Brescia. Quando siamo arrivati, gli strumenti digitali erano un SharePoint con quattordici fogli di calcolo, un gruppo Telegram per il cambio turno, e un kanban di carta appeso al muro accanto alla pressa. Le mancanze che si vedevano al banco di assemblaggio una settimana sì e una no erano le stesse che chiunque in acquisti avrebbe letto dalla distinta base tre giorni prima. Il brief diceva una sola cosa, ovvero rifare la cabina di regia che lo stabilimento aveva immaginato per anni.
Ogni richiesta consegnata
Non c'era un tetto allo scope. Il brief si è aperto su una vista Live floor con l'OEE per linea. Alla seconda settimana c'era anche un flusso degli ordini con kanban e Gantt. Alla quarta una distinta base multilivello con propagazione delle mancanze. Al secondo mese una sezione Magazzino con la mappa delle ubicazioni, un modulo Qualità, un registro Manutenzione, e una sezione Report sopra tutto il resto. Abbiamo assorbito ogni richiesta e l'abbiamo portata in produzione. Nessuna richiesta è stata rimandata a una fase due, nessun modulo è stato tagliato per il budget, nessuna funzionalità è tornata indietro segnata come fuori scope.
Fino al singolo ciclo, stazione per stazione
La pagina di dettaglio linea si legge come la checklist dell'operatore. OEE del turno in corso, throughput rispetto all'obiettivo in tempo reale, ciclo corrente in secondi, tempo di funzionamento da inizio turno. Sotto, la fascia delle stazioni, dove ogni cella della linea porta il proprio ciclo, il proprio obiettivo e l'operatore assegnato.
Abbiamo voluto andare oltre il livello dashboard, di proposito. Una linea al 41 per cento è un dato. Una linea al 41 per cento con la stazione S4 ferma, senza operatore, e la S2 che tira a 26 secondi contro un obiettivo di 25 è una conversazione diversa. Il bottone Raise Andon sull'header della linea scrive un evento vero nella coda di manutenzione, con la cella, l'anomalia di ciclo e l'ordine attivo già compilati, e così l'operatore non riscrive mai quello che il sistema già sa.
La mancanza si vede prima dell'ordine
Il modulo distinta è multilivello. Ogni prodotto ha il suo albero di sotto-assemblati, parti e materie prime, con la revisione e i lead time dei fornitori tracciati a ogni nodo. Le segnalazioni di mancanza non restano ferme sul pezzo dove si apre il buco. Risalgono l'albero fino all'assemblato che le usa, e finiscono nel flusso degli ordini che dipende da quell'assemblato.
Una bobina che si sta esaurendo a monte arriva al pianificatore di produzione prima che l'ordine in linea legga zero. La settimana in cui lo stabilimento aveva preso cinque mancanze al banco di assemblaggio col sistema vecchio è stata la settimana in cui abbiamo scritto la propagazione. Nella stessa settimana, due di quelle mancanze sarebbero state visibili dalla distinta live, con tre giorni di anticipo davanti.
Entrambi i temi, ogni breakpoint
Chiaro e scuro non sono una scelta legata al dispositivo. Ogni superficie della cabina di regia, dal desktop al telefono, è rifinita in entrambi i temi. La superficie di pianificazione desktop e la superficie di linea mobile condividono la stessa libreria di componenti e gli stessi design token, ed entrambe si risolvono in chiaro e in scuro. Abbiamo trattato ogni componente due volte, con due obiettivi di contrasto distinti, due scale di peso del testo, e gli stessi componenti React che alimentano quattro varianti completamente risolte.
Andon, stato della linea, e avvio ordine sono raggiungibili da mobile in due tap dalla home. Il desktop ha la superficie di pianificazione, il mobile ha la superficie di linea. Nessuna delle due è una versione ridotta dell'altra, e nessuna è legata a un solo tema.
Perché questa forma conta per un manifatturiero
Una cabina di regia operativa non è un dashboard di BI con colori più curati. È l'andon che l'operatore tira quando la stazione tre va indietro, l'ordine di lavoro che il pianificatore sposta da una linea all'altra alle 9.40 perché il portafoglio ordini è cambiato, la distinta che il buyer guarda il martedì perché la mancanza non si veda al banco di assemblaggio il venerdì, e il report che il direttore di stabilimento legge il lunedì perché il colloquio col cliente sia informato prima della chiamata. Industria è la forma di lavoro che fa tutto questo da un solo prodotto, non otto strumenti che vedono ognuno una fetta della linea.
Quello che il lavoro ha consegnato
Otto moduli in un solo prodotto. Sei linee tracciate in tempo reale, con ciclo e andon per cella, su più di trenta stazioni. Entrambi i temi risolti su ogni breakpoint, dal desktop al telefono. Il cambio turno che prima viveva in un gruppo Telegram ora vive nell'app, e l'operatore del turno notturno non strizza gli occhi su uno schermo bianco per leggerlo.
Cosa consegniamo in questo verticale
Vista live di linea con OEE
Disponibilità, performance e qualità in tempo reale. Le anomalie di ciclo a livello di stazione emergono prima che parta il report di turno.
Distinta base multilivello con propagazione delle mancanze
Ogni sotto-assemblato, parte e materia prima su un albero. Le segnalazioni di mancanza risalgono l'albero fino agli ordini che bloccano.
Flusso ordini con kanban e Gantt
Un solo dataset, due viste. Trascini una card e il Gantt si aggiorna. Sposti una data e il kanban si muove.
Andon in un tap solo
L'operatore preme, e la coda di manutenzione riceve un evento tipizzato con la cella, l'anomalia di ciclo e l'ordine attivo già compilati.
Registro manutenzione per macchina
Fermi, manutenzione programmata, parti sostituite, MTTR per asset, scritto da chi gestisce le macchine.
Segnalazioni di non conformità qualità
Difetto registrato alla stazione, campo causa, foto allegata, tracciabilità fino al lotto e all'operatore.
Mappa del magazzino
Una rappresentazione del magazzino con le ubicazioni, le giacenze per SKU e il percorso di prelievo disegnato sopra.
Riepilogo del cambio turno
Una sola schermata per il turno entrante, con andon aperti, linee in linea con il piano, linee in ritardo, materiali mancanti, fermi qualità.
Sezione report
Trend OEE, Pareto dei fermi, throughput per linea e per turno, scarto. I quattro report che il direttore di stabilimento legge prima della riunione del lunedì.
Connettori ERP e MES
Hook per il sistema che usi già. SAP, Microsoft Dynamics o Sage X3 sul lato ERP, Siemens Opcenter o un MES custom sul lato linea.
Connettività SCADA e PLC
OPC-UA dove esiste, un piccolo gateway on-prem con un contratto chiaro dove non esiste. I dati di linea entrano nella cabina di regia, le decisioni escono.
Modello dati ISA-95
Equipment, work centre, operation, work order, batch, lot. Il vocabolario che l'auditor si aspetta, e lo schema che il team già parla.
Light e dark a ogni breakpoint
Pianificazione desktop e linea mobile, entrambi i temi risolti. Il capolinea del turno notturno non strizza gli occhi su uno schermo bianco.
App mobile di linea per l'operatore
Salute della linea, ciclo corrente, raise andon, segnalazione qualità, tutto raggiungibile in due tap dalla home.
Uno stack che regge la linea, non solo l'ufficio
Ogni livello qui esiste per ripagarsi due volte: la prima quando stai portando online il primo stabilimento, la seconda quando arrivi al secondo sito o sopravvivi a un audit sul primo. Scegliamo lo stack che regge proprio in quel secondo momento.
Next.js App Router su Vercel Edge per il lato ufficio. Pianificazione, gestione distinta, report, programmazione, le superfici in cui il pianificatore di produzione e il direttore di stabilimento passano la giornata. I nodi edge tengono i dashboard reattivi da qualunque ufficio di stabilimento, e le stesse rotte rendono in versione mobile per il capolinea che vuole vedere la pianificazione tra un giro e l'altro.
Supabase Postgres con sicurezza a livello di riga ed event sourcing sul log degli ordini di lavoro. L'isolamento multi-sito è imposto sulla riga, non nel codice applicativo, perché il secondo stabilimento non vuole condividere dati col primo per sbaglio. L'event sourcing sugli ordini di lavoro significa che ogni cambio è replayable, ogni stato è derivabile, e ogni tracciatura dalla materia prima all'unità spedita si ricostruisce con una query invece che con archeologia di Excel.
Sottoscrizioni realtime per la vista live della linea. Cicli, andon, stato stazione e salute della linea si aggiornano senza un polling che soffoca il gateway on-prem. L'app mobile di linea legge dallo stesso canale realtime, e operatore e pianificatore vedono la stessa linea nello stesso secondo.
Gateway on-prem per PLC e SCADA. OPC-UA dove c'è, un piccolo daemon Node.js con un contratto chiaro dove non c'è. I dati di linea salgono verso la cabina di regia, i cambi di ricetta e gli start degli ordini di lavoro scendono. Il gateway è l'unico pezzo sull'hardware del cliente, e il resto è cloud-native e si aggiorna senza una visita allo stabilimento.
Cloudflare R2 per tracciabilità e qualità. Foto delle non conformità, manuali macchina, documentazione di lotto, report regolatori. Cifrati a riposo con chiavi gestite dal sito, accesso solo tramite URL firmata, niente costi di egress quando l'auditor chiede due anni di NCR in un solo zip.
TypeScript strict dalle definizioni dei payload PLC ai componenti UI. I rename restano sicuri, le migrazioni di schema restano verificabili, il bus factor resta a zero. Quando il capoturno che aveva costruito le regole della linea 4 lascia il team, la cabina di regia non perde quello che la linea 4 aveva imparato a fare bene.
Domande che fanno i founder
Sostituite il nostro MES esistente?
Di solito ci stiamo accanto. L'MES resta la fonte di verità per ordini di lavoro e ricette, e la cabina di regia è la superficie che la linea e l'ufficio guardano davvero. Se l'MES è un'installazione di cinque anni fa che nessuno ama, ne abbiamo già sostituito uno. Entrambe le strade restano sul tavolo.
Come vi collegate a PLC e SCADA?
OPC-UA dove il controllore lo parla nativamente, un piccolo gateway Node.js su un server di stabilimento dove non lo parla. Il gateway pubblica eventi tipizzati verso la cabina di regia e accetta comandi di ordine di lavoro in ingresso. Il contratto è documentato e versionato, non un blob binario su misura.
La cabina di regia regge se cade il WiFi dello stabilimento?
Il gateway on-prem continua a scrivere su un journal locale durante l'interruzione e ripropaga quando il link torna. L'app mobile di linea tiene in cache l'ultimo stato live e mette in coda le azioni, e niente sul lato dell'operatore si blocca aspettando un round trip al server.
Come gestite un rollout multi-sito?
La sicurezza a livello di riga isola ogni sito di default, con un unico identity provider davanti. Il catalogo condiviso (parti, fornitori, ricette) sta in uno schema, i dati operativi (ordini di lavoro, cicli, andon) stanno per sito. Il secondo stabilimento riceve la stessa cabina di regia del primo, non un fork.
Dove entra ISA-95?
Come vocabolario, non come religione. Equipment, work centre, operation, work order, batch, lot mappano direttamente su tabelle Postgres. L'auditor legge lo schema e riconosce le parole. Se il vostro MES usa un modello diverso, mappiamo al confine, non riscriviamo la storia.
Si integra con il nostro ERP, o teniamo due verità?
Una verità sola. Gli ordini di lavoro nascono nell'ERP e arrivano in cabina di regia, la produzione torna verso l'ERP via job pianificato o webhook, a seconda di cosa l'ERP espone. Abbiamo fatto SAP, Dynamics e Sage X3 in questo modo.
Dove vivono le foto qualità e le revisioni della distinta?
Cloudflare R2, cifrati a riposo, solo con URL firmata. L'NCR ha la foto inline, la storia della distinta ha ogni revisione con autore, data e motivo. Entrambi sono interrogabili dalla cabina di regia, e nessuno vive sul telefono di qualcuno.
Vi occupate del training sul campo?
Scriviamo la documentazione di linea nel linguaggio che usano i capolinea, e i primi turni li passiamo in linea per correggere quello che ci è sfuggito. Il capolinea diventa il formatore di seconda linea. Non gestiamo un training permanente in stabilimento.
Raccontaci il tuo stabilimento
Una chiamata per inquadrare il progetto, un numero concreto nella prima risposta, zero teatro da agenzia e zero pitch deck di case study tutti uguali.