Unmanned guided veicle
 
 

 

 

 

Home

Immagini e Video

Motori a passo

Visione Artificiale

Schede di controllo

La visione artificiale

 

Per quanto riguarda la visione artificiale, è stata maturata una vasta esperienza che consente la produzione di hardware special purpose, che interessa una vasta tipologia di applicazioni industriali. Gran parte delle applicazioni più avanzate della visione artificiale appartengono alla robotica, dal momento che il senso della vista fornisce, anche ad un robot oltre che all'uomo, la stragrande maggioranza d'informazioni necessarie per la navigazione, per evitare ostacoli e per l'interazione con il mondo esterno. Tuttavia le medesime esigenze riguardano sempre più il campo industriale data la crescente diffusione di automazione flessibile e la disponibilità di hardware a costi competitivi.
Esistono applicazioni della visione anche in campi diversi da quello industriale, come nella guida di autoveicoli. Gli algoritmi sono basati in misura crescente non più esclusivamente sulla logica tradizionale, cioè su sistemi del tipo IF-THEN-ELSE con albero delle decisioni, ma anche su logica fuzzy o su sistemi di classificazione di tipo neurale o in alternativa su sistemi esperti, detti knowledge-based.
Se la potenza di calcolo e la complessità dell'algoritmo lo consentono, il sistema può operare in tempo reale, o real-time, altrimenti è possibile effettuare dei controlli a campione.

L'impiego di immagini a colori è relativamente recente per la disponibilità e i costi delle telecamere e soprattutto per l'esigenza di maggiore potenza di calcolo dovuta all'elaborazione di tre immagini in luogo di una, in quanto, come è noto, per la legge della composizione dei colori sono necessarie e sufficienti tre bande o colori fondamentali. Le immagini digitali a colori possono essere ottenute con telecamere basate sulle seguenti tecnologie:
" con singolo sensore matriciale CCD, dispositivo ad accoppiamento di carica o Charge Couplet Device, in cui sono presenti alternativamente elementi drogati sensibili alle diverse radiazioni luminose.
" con tre CCD e un prisma per la scomposizione ottica;
" in alternativa ad una telecamera a colori, può essere sufficiente un filtro ottico per evidenziare o eliminare la componente che interessa.

La configurazione di un sistema di visione tridimensionale può essere ad una, a due o più telecamere. Se la scena da osservare non è nota, cioè non è possibile contare su informazioni pregresse, come spesso accade in ambienti strutturati come quello industriale, sono necessarie almeno due telecamere, in quanto due proiezioni di un punto permettono di conoscerne la posizione nello spazio. Esistono anche configurazioni artificiose con l'impiego di specchi, in cui è possibile la localizzazione con una sola vista che include l'oggetto e la sua immagine riflessa.

Nel caso particolare, comunque molto diffuso in ambito industriale, in cui sono note le caratteristiche geometriche di un oggetto osservato, è possibile conoscerne la posizione attraverso una sola vista, e viceversa, data la posizione, è possibile eseguire delle misure.
La diffusione di tali tecnologie dipende non solo dalla loro economicità, ma, soprattutto, dalla loro affidabilità. Tuttavia il futuro della visione artificiale per impieghi in campo industriale, è legata soprattutto allo sviluppo della ricerca sulla visione 3-D, che è, per molti aspetti, ancora un problema aperto.

Algoritmi di visione artificiale del robot

Procediamo alla descrizione delle funzioni realizzate in ambiente MATLAB per l'inseguimento di una sfera di colore scuro su sfondo bianco. A tale proposito forniamo l'elenco delle funzioni Matlab implementate, di cui sarà possibile reperire il codice su richiesta:

  • totale.m, che setta dei parametri iniziali riguardanti la velocità di crociera dei motori e sovrintende a tutte le altre funzioni, provvedendo inoltre a gestire le fasi di ricerca del target; tale funzione verrà discussa nell'apposita sessione dedicata all'algoritmo di controllo.
  • imm_binaria.m, che si occupa di effettuare l'acquisizione, il filtraggio e la binarizzazione dell'immagine secondo il livello di soglia scelto o in automatico.
  • trovacerchi.m, che estrapola le grandezze di interesse dall'immagine binarizzata come area e posizione del centro della sfera.
  • ValutaPassiLaterali.m, che calcola il valore della torsione che dovrà effettuare il robot per allinearsi al centro della circonferenza.
  • ValutaAvanti.m, che calcola il numero di passi in avanti con i quali dovranno muoversi i motori.
    motor.m, che provvede a generare il numero di onde quadre, che vengono passate alla funzione attraverso un parametro, alla frequenza scelta.
  • aggancio.m, che gestisce la fase finale, di colloquio con il microprocessore, a bordo del robot, per catturare la pallina
    Esempio di riconoscimento di oggetti e calcolo di centromassa con algoritmi performanti:

 

 

Le informazioni ,opportunamente rielaborate, serviranno per comandare il movimento del ROBOT, grazie alla comunicazione tramite porta parallela, secondo il modello cinematico in figura:

 

 

Infine è fornito uno schema di principio del pregetto realizzato: