Home
Accesso / Registrazione
 di 

Dare la vista ai nostri progetti, grazie ad AVRcam oggi si può

AVRcam_fai da te

Grazie ad AVRcam possiamo aggiungere un modulo per il riconoscimento ed il tracking degli oggetti ai nostri progetti in modo semplice e veloce.

AVRcam nasce appositamente per venire incontro alle esigenze di tanti come noi che si dedicato alla progettazione ed allo sviluppo elettronico fai da te. Consente di acquisire immagini a colori e di fare il tacking di oggetti. Come si vede nella immagine sottostante

il sistema è basato su di un controllore Atmet AVR mega8 ed usa un sensore CMOS per le immagini Omnivision OV6620. Le sue potenzialità sono notevoli:

    - tracking di otto oggetti con otto colori diversi indicati dall'utente con 30 fps

    - statistiche in real time dell'attività tramite una porta seriale standard

    - risoluzione delle immagini 88x144 pixels

    - basso consumo di potenza

    - possibilità di ampliare il software esistente con nuovi moduli

    - dulcis in fundo: completamente open source, quindi abbiamo a disposiozione tutto ciò che serve per costruirlo.

Inoltre è disponibile per il libero download un programma di gestione per il PC (AVRcam VIEW) che consente di acquisire immagini dal dispositivo con una risoluzione di 176x144 pixel e di monitorare le statistiche di funzionamento in tempo reale. Tale programma è multi piattaforma, poichè scritto in Java, ed è stato testato sia su Linux che su Windows. Il tutto è ancora una volta completamente open source.

Vediamo nel dettaglio l'architettura hardware di questo piccolo miracolo

Il microcontrollore Atmel AVR mega8 fornisce la potenza di calcolo. Il sensore CMOS Omnivision OV6620 è usato come già detto per l'acquisizione delle immagini. I due vi costeranno intorno ai 20 €, il componente più costoso è il sensore CMOS. Lo schema della AVRcam è mostrato in figura sotto.

Il sensore CMOS per le immagini è collegato direttamene al ATmega8 che lo gestisce. Un ATtiny12 viene usato come supporto per la configurazione del sensore CMOS OV6620. Il segnale di clock è condiviso tra ATmega8 e OV6620 consentendo la necessaria sincronizazione per la gestione dello strem in real-time di dati provenienti dal OV6620.

Vediamo adesso lo schema a blocchi del software di gestione per il microcontrollore. Il codice è stato sviluppato in modo modulare di modo da consentire una facile espansione e gestione del codice esistente. Lo schema sottostante illustra i vari moduli software.

Le strutture dati usate da ogni modulo (indicato con rettangolo nero grassetto) sono racchiuse in rettangoli con i bordi tratteggiati.

Lo schema sopra risulta molto utile in fase di gestione ed estensione del codice poichè è facile evincere il ruole della varie componenti anche solo dal nome di ogni blocco in figura.

Il codice è scritto quasi interamente in C e compilato usando il compilatore gratuito AVR-GCC. Le routines più critiche da un punto di vista delle prestazioni, in particolar modo quelle relative alla gestione del flusso dati del OV6620 sono in assembler.

Vediamo le caratteristiche del software di gestione lato PC, cioè di AVRcamVIEW PC.

Si può testare e calibrare in modo semplice l'AVRcam sia da windows che da Linux come già detto prima. Il software è in Java e l'interfaccia grafica è mostrata nella figura sotto.

Si può definire una color map ed inviarla ad AVRcam. Nella modalità di tracking vengono visualizzati gli oggetti seguiti visualizzando la loro bounding box ed il relativo colore di riferimento.

Tutto il software citato sopra è disponibile a questo link.

La versione attuale del codice usa solo 4KB dei 7KB disponibili sulla memoria flash riprogrammabile, 700bytes su 1KB di RAM disponibile e 48 bytes di 512 byted di EEPROM. Rimane quindi ampio spazio per sviluppare le proprie applicazioni per il processamento delle immagini. Il software è molto chiaro e ben commentato ma per eventuali dubbi è possibile contattare l'autore direttamente tramite il forum.

Una ultima nota sulla licenza. Il tutto è rilasciato sotto licenza GNU GPL, quindi se usate tale materiale a scopo commerciale informatevi bene prima di procedere.

Abbiamo visto come realizzare un sistema per il riconoscimento ed il tracking degli oggetti molto interessante e ben fatto che consente con poche modifiche di ottenere nuovi interessanti risultati.

 

 

Scrivi un commento all'articolo esprimendo la tua opinione sul tema, chiedendo eventuali spiegazioni e/o approfondimenti e contribuendo allo sviluppo dell'argomento proposto. Verranno accettati solo commenti a tema con l'argomento dell'articolo stesso. Commenti NON a tema dovranno essere necessariamente inseriti nel Forum creando un "nuovo argomento di discussione". Per commentare devi accedere al Blog
ritratto di Bazinga

Un progetto senza Arduino?

Un progetto senza Arduino? addirittura con un Atmel ma di Arduino nemmeno l'ombra??
Finalmente direbbe qualcuno :-)

P.S. a quando il porting???

ritratto di arduinonono

..come hai ben capito,

..come hai ben capito, Bazinga, i ragazzi di Elettronica Open Source sono dei veri FAN della scheda Arduino...

ritratto di Lenny

Leggendo sul sito ufficiale....

Comunque se leggete sul sito pare che il progetto AVRCam, che è di diversi anni fà, sia stato abbandonato dal suo creatore e non è chiaro se continuerà a svilupparsi.
Ciò non significa comunque il progetto non sia valido.

ritratto di divivoma

sapete quanto costa tutto

sapete quanto costa tutto l'ambaradan con la video camera?

grazie

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ultimi Commenti