Sistema di visione industriale: 2D e 3D a confronto
L’utilizzo pervasivo di robot a livello industriale nei settori più disparati (dal meccanico all’elettronico, dal food al medico) spinge ad utilizzarli in variegate applicazioni, il cui livello di difficoltà spesso richiede l’utilizzo di tools e tecnologie su misura. Uno degli strumenti sempre più richiesto è quello del sistema di visione artificiale, che troviamo in due versioni (2D e 3D), ciascuno con i suoi pro e contro. Scopriamo qualcosa di più sulla visione robotica.
Visione artificiale: caratteristiche
In un articolo sul sito Zivid (che qui potete leggere in versione integrale in inglese) si è discusso in maniera approfondita delle caratteristiche dei sistemi di visione artificiale per robot: qui riassumiamo i punti salienti, iniziando dalle caratteristiche generali di queste tecnologie.
Sia che si tratti di un sistema di visione 2D o 3D, le capacità e le performance di queste tecnologie dipendono in modo diretto da 5 componenti principali:
- illuminazione
- lenti ottiche
- sensore digitale cattura immagini (CMOS o CCD)
- software di trattamento immagini
- interfaccia di comunicazione
Ad oggi le applicazioni consentite dai sistemi di visione prevedono controllo delle parti, misurazione, pick and place e molti altri compiti. Comunque, qualsiasi attività il sistema debba svolgere, come prima cosa esso deve individuare in modo preciso l’oggetto target entro il suo raggio di visione, comparando (e facendo combaciare) la sua immagine con un pattern predefinito.
Negli ultimi decenni il largo utilizzo di sistemi di visione 2D ne ha testimoniato il valore: hanno svolto un lavoro impeccabile in un ampio raggio di applicazioni, e non c’è nulla che non vada in queste tecnologie. Per contro, sono molti gli ambiti produttivi in cui le limitazioni intrinseche del 2D lasciano spazio all’introduzione di sistemi 3D.
Visione artificiale a due dimensioni
Nel caso di un sistema di visione 2D, l’immagine dell’oggetto target acquisita è effettivamente piatta, a due dimensioni. L’immagine non fornisce nessuna informazione relativa all’altezza: ci sono dati per gli assi X e Y ma non per quello Z di profondità. Ciò che vediamo effettivamente è il contorno di un oggetto 3D visto da uno specifico punto di osservazione. Diversi punti di osservazione e diversi oggetti creano contorni completamente diversi, rendendo molto limitato l’utilizzo di un sistema 2D per le applicazioni dove le informazioni sulla forma sono fondamentali per lo svolgimento di un compito.
La mancanza di informazioni sulla forma reale e sull’altezza non rappresenta però un grosso problema per molte applicazioni. Come risultato, il sistema di visione 2D (sia esso uno scanner dell’area o di linea) viene ampiamente utilizzato nel settore industriale per molte mansioni come:
- verifica di caratteristiche e posizione
- controllo delle dimensioni
- lettura del codice a barre
- riconoscimento caratteri
- verifica dell’etichetta
- controllo qualità
- rilevatore di presenza
In tutti questi casi l’immagine 2D viene ottenuta attraverso la variazione dei riflessi di luce lungo la superficie degli oggetti. Il contrasto dell’oggetto identificato, sia in scala di grigi che a colori rappresenta la prima sfida per il sistema di visione 2D.
Le limitazioni della visione 2D
– Sensibilità alla luce: dato che l’immagine dell’oggetto target è ottenuta a partire dai riflessi di luce che lo colpiscono, variazioni nella luminosità del raggio di visione, dovute a cambiamenti delle condizioni ambientali o a luci artificiali, possono avere un impatto negativo sul livello di accuratezza. Troppa luce, poca luce o oscuramenti nell’ambiente di lavoro possono influire negativamente sulla chiarezza dei bordi e dei lineamenti che appaiono nell’immagine 2D.
– Assenza di contrasto: dato che è dai contrasti definiti sulla superficie dell’oggetto che dipende il sistema di visione 2D, c’è da tenere in conto anche la difficoltà nel gestire oggetti molto chiari o molto scuri.
– Informazioni sull’altezza: non avendo a diposizione nessuna informazione sull’altezza, gli errori dovuti al movimento dell’oggetto sull’asse Z del piano rappresentano un ulteriore limite. Se un oggetto fosse sempre fermo su una superficie perfettamente piatta, ad una precisa distanza focale dal sensore immagine, allora non sarebbe un problema ottenere una buona accuratezza nella produzione di immagini.
In tutte le seguenti situazioni la visione 2D non riesce a riconoscere la forma e ad assolvere il compito:
– con parti complesse o assemblate, dove le dimensioni devono essere misurate oltre i piani X e Y;
– quando deve essere determinato il volume delle parti;
– quando un oggetto deve essere preso e spostato in maniera precisa.
Le capacità delle tre dimensioni
Con un sistema di visione 3D, l’immagine dell’oggetto target non è più una figura piatta, bensì un’immagine tridimensionale composta da precise coordinate, dove la posizione di ogni pixel nello spazio è conosciuta, e fornisce simultaneamente dati per gli assi X, Y e Z.
Esistono 4 tecniche per realizzare un sistema di visione 3D: triangolazione laser, visione stereoscopica, tempo di traiettoria e luce strutturata. La camera Pick-it ad esempio si basa sulla visione stereoscopica.
Certo, comparato con l’elaborazione d’immagine a due dimensioni, il lavoro in tre dimensioni richiede più tempo e un utilizzo intenso di processori e software avanzati (come processori multi-core, algoritmi 3D) nella gestione dei volumi della linea di produzione. Però, in virtù della capacità di catturare in modo affidabile la terza dimensione extra, i sistemi di visione 3D sono immuni ai fattori ambientali che creano difficoltà al sistema 2D: gli aspetti di luminosità, contrasto e distanza dall’oggetto sopracitati non sono più un problema.
Dato che lavoriamo con un accurato modello digitalizzato tridimensionale dell’oggetto target, le nostre macchine possono ora gestire sia la forma che la posizione.
Queste infatti conoscono la precisa posizione dell’oggetto nello spazio, il suo volume esatto, la superficie degli angoli, i gradi di planarità, a prescindere dalle condizioni dell’ambiente di lavoro o dal fatto che l’oggetto sia parzialmente lucido o nero che assorbe la luce.
Come risultato di questa ulteriore capacità, il sistema di visione 3D viene applicato ad un ampio spettro di applicazioni in cui le caratteristiche del sistema 2D non sono sufficienti:
– misurazione di spessore, altezza e volume
– dimensionamento e gestione dello spazio
– misurazione di forma, fori, angoli e curve
– rilevamento della superficie o difetti di assemblaggio
– controllo qualità e verifica rispetto a modelli CAD 3D
– orientamento del robot e tracciamento della superficie (es. per saldatura, incollaggio, sbavatura e altro)
– presa contenitore per spostamento, confezionamento o assemblaggio
– Scanner e digitalizzazione oggetto
Considerando il peggior scenario, immaginiamo un contenitore pieno di parti d’acciaio coniche semi lucide. Non solo un robot ha bisogno di scegliere un singolo pezzo da un insieme disordinato e capire come meglio prenderlo, ma deve anche considerare la dimensione della pinza, i lati del contenitore e delle parti adiacenti in modo da evitare collisioni o grovigli.
Per fare questo il robot ha bisogno di vedere le parti, e molto bene! Deve determinare come sono sistemati tutti i pezzi, l’assetto tridimensionale, se sono interamente o parzialmente una sopra l’altro. E se questi oggetti sono opachi o assorbono la luce, sono lucidi e riflettono la luce, il robot ha bisogno di gestire i cambi ambientali.
Questo processo deve avvenire in modo veloce e accurato, per numerose volte, con un livello di complessità operativo che non deve essere sottovalutato.
Insomma, i sistemi di visione 2D e 3D sono entrambe tecnologie con ottime qualità, le cui potenzialità sono ovviamente ancora in fase di sviluppo e miglioramento, in modo che sempre più applicazioni possano essere svolte da un robot con camera.
Di fatto non esiste una scelta giusta o sbagliata, solo quella più adatta per l’esigenza richiesta.