Nella stampa 3D FFF il file digitale e il pezzo fisico non sono sempre la stessa cosa. Il modello CAD descrive ciò che si vorrebbe ottenere, il G-code descrive il percorso che la macchina dovrebbe seguire, ma il componente stampato può presentare differenze dovute a materiale, temperatura, umidità, vibrazioni, adesione tra strati, errori di estrusione, piccole deformazioni o variazioni meccaniche della macchina.
Per questo il tema del controllo qualità sta diventando sempre più importante anche nelle tecnologie a filamento. Una stampante FFF può produrre prototipi, attrezzature, dime, componenti funzionali e piccole serie, ma quando il pezzo deve essere documentato o verificato non basta dire che la macchina ha eseguito un determinato G-code. Bisogna capire cosa è stato realmente depositato.
Un gruppo di ricerca della Universität Hamburg ha lavorato proprio su questo problema, proponendo un sistema basato su immagini acquisite durante la stampa. L’obiettivo è creare un gemello digitale del pezzo realmente stampato, non una semplice copia del modello originale.
Il lavoro è stato firmato da Daniel Ahlers, Niklas Fiedler, Florens Wasserfall e Jianwei Zhang ed è stato pubblicato sul Journal of Intelligent Manufacturing con il titolo “Camera based in situ layer segmentation and object reconstruction for digital twins in FFF 3D printing”.
Dal modello previsto al modello realmente costruito
Quando si parla di gemello digitale nella stampa 3D bisogna distinguere due concetti. Il primo è il modello previsto: il file CAD o STL che si vuole produrre. Il secondo è il modello “as-built”, cioè una ricostruzione di ciò che la macchina ha davvero realizzato.
La differenza è essenziale. Se una parete è sottile, se una zona viene stampata con meno materiale, se un infill presenta un vuoto, se un contorno non viene chiuso bene, il G-code non racconta necessariamente l’errore. Il G-code indica l’intenzione della macchina, non il risultato fisico.
Il metodo sviluppato ad Amburgo cerca di colmare questa distanza. Dopo ogni strato, la stampante acquisisce immagini ad alta risoluzione della superficie appena stampata. Un algoritmo di segmentazione individua soltanto il materiale depositato nello strato corrente. Queste informazioni vengono poi trasformate in geometria e impilate fino a ricostruire l’intero oggetto.
In questo modo si ottiene un modello tridimensionale che non deriva dal file originale, ma dall’osservazione del processo di stampa.
Una stampante E3D ToolChanger modificata
Per realizzare il sistema, i ricercatori hanno modificato una E3D ToolChanger, una stampante FFF desktop pensata per lavorare con più utensili intercambiabili. Questa architettura è adatta all’esperimento perché permette alla macchina di parcheggiare l’estrusore e prelevare uno strumento dedicato all’acquisizione delle immagini.
La stampante usata nello studio è stata equipaggiata con un toolhead FFF con ugello da 0,4 mm, una camera RGB, un sistema di illuminazione e l’hardware necessario a gestire acquisizione e controllo.
Nel sistema compaiono diversi nomi noti del mondo della stampa 3D e dell’elettronica: E3D per la piattaforma ToolChanger e il toolhead, Duet3D per la scheda di controllo Duet 3 6HC, Raspberry Pi per la gestione della camera, OctoPrint per il controllo della stampa, Intel per la camera di profondità RealSense D405 testata nelle prime fasi, Adafruit per l’anello LED RGBW, Prusa Research per PrusaSlicer, oltre a strumenti software come Potrace e OpenSCAD nella fase di ricostruzione.
Non si tratta quindi di una macchina commerciale pronta da installare, ma di una piattaforma sperimentale costruita con componenti relativamente accessibili rispetto a sistemi di scansione industriale, tomografia computerizzata o sensori 3D di fascia alta.
Perché non è stata usata una camera di profondità
All’inizio il gruppo ha valutato anche una Intel RealSense D405, una camera di profondità compatta. L’idea era naturale: se si vuole distinguere uno strato appena stampato da quello precedente, la profondità potrebbe sembrare il dato più utile.
Nella pratica, però, la precisione ottenuta non è stata sufficiente. Secondo lo studio, la camera ha mostrato deviazioni fino a circa 1 mm. Per una stampa FFF, dove lo spessore di uno strato può essere di 0,2 o 0,3 mm, un errore di questo tipo rende difficile separare in modo affidabile il nuovo materiale da quello già presente.
Per questo i ricercatori hanno scelto un’altra strada: una camera RGB ad alta risoluzione con lente telecentrica. La lente telecentrica riduce le distorsioni prospettiche e mantiene una scala più costante nell’immagine, un punto importante quando le immagini devono essere usate per ricostruire la geometria.
La camera usata nello studio è basata su un modulo Raspberry Pi HQ abbinato a una lente telecentrica Opto Engineering TC12024. Il campo visivo è limitato, circa 24 × 18 mm, ma la risoluzione è molto elevata, circa 6 µm per pixel. Questo significa che per coprire oggetti più grandi la macchina deve acquisire più immagini e unirle, ma in cambio ottiene un livello di dettaglio molto alto.
Come funziona il processo strato per strato
Il flusso di lavoro può essere descritto in modo abbastanza semplice.
La stampante deposita uno strato del pezzo. Alla fine dello strato, il processo si interrompe. L’estrusore viene parcheggiato. La macchina preleva il tool con la camera. La camera si sposta sulle posizioni necessarie per coprire l’area stampata. Vengono acquisite una o più immagini con diverse configurazioni di illuminazione. Poi la camera viene parcheggiata, l’estrusore torna in posizione e la stampa riparte.
Questo ciclo si ripete per ogni strato.
Il sistema non guarda solo l’immagine corrente. Per aiutare la rete neurale a capire quale materiale è stato appena depositato, l’algoritmo riceve anche l’immagine dello strato precedente. In questo modo può confrontare la scena prima e dopo la nuova deposizione.
È un passaggio importante perché, vista dall’alto, una linea appena stampata può somigliare molto alle linee già presenti. La differenza può essere minima, soprattutto con materiali chiari, superfici lucide o geometrie dense. L’uso dell’immagine precedente dà al software un contesto migliore.
Il ruolo della rete U-Net++
La segmentazione viene eseguita con una rete neurale basata su U-Net++, un’architettura usata spesso per separare aree di interesse all’interno di immagini complesse. In questo caso il compito è isolare solo il materiale dello strato appena stampato.
Il risultato della rete non è ancora un modello 3D. È una maschera bidimensionale: una sorta di sagoma che indica dove si trova il nuovo materiale. Questa maschera viene poi ripulita, convertita in grafica vettoriale e trasformata in volume.
Per la conversione viene usato Potrace, che trasforma le maschere in file SVG. Successivamente OpenSCAD estrude ogni sagoma secondo l’altezza dello strato indicata nel G-code. Tutti gli strati vengono collocati alla quota corretta e uniti in un unico modello STL.
Il risultato è un modello tridimensionale che conserva non solo il contorno esterno, ma anche strutture interne come infill, vuoti e geometrie nascoste.
Questo è uno degli aspetti più interessanti del metodo. Molti sistemi di monitoraggio osservano solo l’esterno del pezzo o controllano la stampa da una singola prospettiva. Qui invece ogni strato viene documentato prima che venga coperto dallo strato successivo.
Un gemello digitale diverso dal file STL originale
Il modello ricostruito non è una copia del file di partenza. È un modello ottenuto dalle immagini del pezzo durante la sua costruzione.
Se una linea non viene depositata, il sistema può rilevare quella mancanza nella maschera dello strato. Se una geometria viene stampata in modo leggermente diverso dal previsto, la ricostruzione può incorporare quella differenza. Se l’infill presenta una forma reale diversa da quella ideale, il gemello digitale può conservarne traccia.
In teoria questo tipo di informazione può essere usato per diversi scopi: documentazione di produzione, controllo geometrico, confronto tra pezzo previsto e pezzo reale, analisi delle deviazioni, simulazioni meccaniche sul componente effettivamente prodotto, archiviazione dei dati di qualità e sviluppo di controlli automatici.
Nel settore FFF, dove molte macchine lavorano ancora in modo sostanzialmente aperto, senza una vera misura del materiale depositato, questa impostazione può aprire una strada interessante.
I risultati ottenuti
Nel lavoro pubblicato, la rete neurale ha raggiunto una precisione di segmentazione pari a 0,94 in termini di Intersection over Union sul set di validazione. L’Intersection over Union, spesso abbreviata in IoU, misura quanto la maschera prevista dall’algoritmo coincide con la maschera corretta.
Il sistema è stato provato anche su oggetti e materiali non presenti nel set di addestramento. Tra questi compaiono uno scoiattolo low-poly e una 3D Benchy stampata in PLA traslucido. Anche in questi casi la rete ha continuato a riconoscere le parti depositate, pur con una precisione inferiore rispetto al set di validazione.
Lo studio riporta anche una misura interessante sulla precisione dimensionale: il confronto tra parti fisiche e gemelli digitali ricostruiti ha mostrato uno scostamento medio di 58,2 µm. È un dato che va letto con attenzione. Non significa che ogni punto del modello sia garantito con quella tolleranza, perché entrano in gioco errori di misura, posizionamento della camera, stitching delle immagini e segmentazione. Tuttavia indica che la ricostruzione può raggiungere un livello di precisione utile per valutazioni serie.
La prova ricorsiva con l’Ultimaker Robot
Un esperimento curioso riguarda la ristampa ricorsiva di un modello. I ricercatori hanno stampato un Ultimaker Robot, ne hanno ricostruito il gemello digitale e hanno usato quella ricostruzione come base per una nuova stampa. Il processo è stato ripetuto più volte.
Come prevedibile, alcuni dettagli fini si sono ammorbiditi nel passaggio da una generazione all’altra. Ogni ricostruzione e ogni nuova stampa introduce piccole perdite o variazioni. Nonostante questo, la forma generale e molte caratteristiche del modello sono rimaste riconoscibili anche dopo più iterazioni.
Questo test mostra che la pipeline non sta semplicemente creando una forma approssimativa del pezzo, ma sta catturando una parte rilevante della geometria reale.
Il problema del tempo di acquisizione
Il limite più evidente del sistema è il tempo.
Per ogni strato la stampante deve fermarsi, cambiare utensile, spostare la camera, acquisire le immagini, salvare i dati, rimettere la camera in posizione di parcheggio, riprendere l’estrusore e continuare la stampa. Questo introduce un sovraccarico significativo.
Nel caso descritto nello studio, per uno strato con sei posizioni di acquisizione, il tempo aggiuntivo è di circa 132 secondi se vengono registrate sei immagini per posizione con diversi schemi di illuminazione. Con una sola immagine per posizione il tempo aggiuntivo scende a circa 43,5 secondi.
Il caso della 3D Benchy rende bene il problema. Senza acquisizione immagini, la stampa richiede 93 minuti. Con l’acquisizione completa sale a 437 minuti. Con un solo schema di illuminazione arriva comunque a 210 minuti.
Questo dato non rende il metodo inutilizzabile in assoluto, ma lo colloca in una fase sperimentale. Per una produzione quotidiana, soprattutto su stampanti FFF moderne e veloci, un rallentamento di questo tipo è troppo pesante. Per attività di ricerca, validazione, documentazione critica o sviluppo di processo, invece, può essere accettabile.
Dove il sistema deve migliorare
Lo studio indica alcune strade per ridurre i tempi. Una possibilità è rendere il processo di acquisizione non bloccante, cioè evitare che la stampante debba aspettare il completamento di ogni salvataggio prima di passare all’operazione successiva.
Un’altra possibilità è fotografare solo le zone in cui è stato depositato nuovo materiale, invece di coprire tutta l’area occupata dal pezzo. Questo richiederebbe un sistema più intelligente di pianificazione delle posizioni camera, basato sulla geometria dello strato.
Si può anche immaginare una camera con campo visivo più ampio, oppure una camera fissa ad alta risoluzione capace di osservare l’intera area di stampa dall’alto. In quel caso si perderebbe forse una parte della risoluzione per pixel, ma si ridurrebbero i movimenti e i tempi morti.
Il punto di equilibrio dovrà essere trovato tra precisione, velocità, costo e facilità di integrazione.
Cosa il metodo non vede
Il sistema osserva la stampa dall’alto. Questo porta vantaggi, ma anche limiti.
Non misura direttamente la quota reale dello strato. Per estrudere le maschere in 3D usa l’altezza layer indicata dal G-code. Se la macchina deposita uno strato più alto o più basso del previsto, il sistema non lo misura in modo diretto.
Non può vedere bene problemi di adesione tra strati se questi non si manifestano sulla superficie superiore. Non può analizzare completamente il cedimento di un overhang nascosto, una delaminazione interna o una deformazione lungo Z se non produce un effetto visibile sulla superficie osservata.
Può però documentare molto bene ciò che accade piano per piano. Per strutture interne, riempimenti, contorni, vuoti e materiale mancante in XY, il metodo ha un valore evidente.
Perché può essere utile per il controllo qualità FFF
Nel mondo industriale la qualità non dipende solo dal pezzo finale, ma anche dalla capacità di dimostrare come è stato prodotto. Questo vale in particolare per settori come aerospazio, medicale, automotive, attrezzature di produzione e componenti funzionali.
La FFF è una tecnologia molto diffusa perché è accessibile, flessibile e relativamente economica. Proprio per questo viene usata in contesti molto diversi, dal laboratorio alla fabbrica. Il problema è che molte applicazioni avanzate richiedono più controllo di quanto una stampante standard possa offrire.
Un gemello digitale costruito dalle immagini di ogni strato può diventare una sorta di registro del processo. Non sostituisce tutti i controlli meccanici o dimensionali, ma aggiunge una documentazione interna che oggi spesso manca.
Per un service di stampa 3D potrebbe essere utile per certificare meglio un lotto. Per un laboratorio universitario potrebbe servire a studiare l’effetto dei parametri di processo. Per un reparto R&D potrebbe aiutare a confrontare materiali, strategie di infill e condizioni di stampa. Per un produttore di macchine potrebbe diventare la base di un sistema di correzione automatica.
Verso una stampa FFF più chiusa e controllata
Molte stampanti FFF funzionano ancora con una logica aperta: il software calcola il percorso, la macchina lo esegue e l’utente controlla il risultato. Alcune macchine integrano sensori, camere, rilevamento di spaghetti, controllo del primo strato o compensazioni automatiche, ma il deposito effettivo del materiale resta spesso poco misurato.
La ricerca della Universität Hamburg va in una direzione diversa: osservare il processo mentre avviene e trasformare l’osservazione in un modello utilizzabile.
Il passaggio successivo potrebbe essere il controllo ad anello chiuso. Se il sistema riconosce che una linea non è stata depositata correttamente, in futuro la macchina potrebbe correggere i parametri, ripassare una zona, modificare il flusso, cambiare velocità o interrompere la stampa prima di sprecare ore di lavoro e materiale.
Non è ancora il punto raggiunto da questo esperimento, ma la logica è quella.
Un approccio interessante perché usa componenti accessibili
Un altro aspetto importante è il costo relativo. La soluzione non usa tomografia computerizzata, scanner laser industriali o sensori 3D complessi. Utilizza componenti disponibili sul mercato, software aperti o diffusi e una piattaforma FFF adattabile.
Questo non significa che chiunque possa replicare il sistema in modo immediato. L’integrazione richiede competenze di meccanica, elettronica, controllo macchina, visione artificiale e machine learning. Però il concetto mostra che una parte del controllo qualità avanzato può essere sviluppata anche attorno a hardware meno costoso rispetto alle soluzioni industriali tradizionali.
La presenza di strumenti come OctoPrint, Raspberry Pi, PrusaSlicer, OpenSCAD e Potrace rende il progetto interessante anche per la comunità open source e per i laboratori che vogliono sperimentare su piattaforme FFF.
Il lavoro della Universität Hamburg mostra un percorso concreto per creare gemelli digitali delle stampe FFF partendo da immagini acquisite durante la costruzione del pezzo. La macchina osserva ogni strato, una rete neurale separa il nuovo materiale, il software ricostruisce la geometria e il risultato diventa un modello 3D del pezzo realmente prodotto.
Il metodo ha ancora limiti pratici, soprattutto sul fronte della velocità. Il tempo aggiuntivo per l’acquisizione delle immagini è troppo alto per molte applicazioni quotidiane. Inoltre la visione dall’alto non misura direttamente tutti i difetti lungo Z e non sostituisce controlli meccanici o prove distruttive quando queste sono richieste.
Il valore della ricerca sta però nel concetto: passare da una stampa FFF eseguita alla cieca a una stampa documentata strato per strato. Se il sistema verrà reso più rapido e più facile da integrare, potrà diventare una base utile per il controllo qualità, la tracciabilità e la correzione automatica nelle stampanti a filamento.
