Sensore PixyCam per Arduino e Raspberry Pi

Il modulo PixyCam con microcontrollore della NXP e sensore immagine della OminiVision è adatto per diverse applicazioni di elaborazione immagini da impiegare nei robot o in altre soluzioni. L'elaborazione dati richiesta è notevolmente elevata: decine di megabyte al secondo, con il coinvolgimento di una elettronica di processori tale da soddisfare le richeste in un determinato tempo. L'elaborazione avviene per mezzo di un microcontrollore che elabora le immagini del sensore con un frame rate di 50 Hz. L'informazione può viaggiare su diverse interfacce, quali UART, SPI, I2C e USB. Una serie di accessori facilita il posizionamento e il controllo.

Introduzione

Il modulo PixyCam è un sensore di immagini da impiegare per le principali schede open source quali, Arduino, Raspberry Pi, Banana Pi e pcDuino. Il sensore Pixy utilizza un algoritmo di filtraggio del colore, con la possibilità di impiegare ben 4 moduli per un rilevamento a 360°. Opportunamente programmato, Pixy riesce a riconoscere centinaia di oggetti, calcolando la tonalità e la saturazione di ogni pixel RGB del sensore di immagine e utilizzando tutte le informazioni come parametri primari per il rilevamento dell'immagine. Ciò significa che l'illuminazione o esposizione non influenzerà il rilevamento di un elemento, che è un problema frustrante con molti sensori di immagine. Il dispositivo riesce a catturare 50 fotogrammi al secondo e si adatta perfettamente alle librerie di Arduino, Raspberry Pi, Banana Pi e pcDuino con supporto per C/C++ e Python.   Pixy ricorda fino a 7 diverse firme di colore, il che significa che se si dispone di 7 oggetti diversi con colori unici, l'algoritmo di filtro colore della scheda Pixy non avrà alcun problema di identificazione. Il PixyCam è anche programmabile in modo da poter inviare solo determinate immagini, ovvero come un "cerca oggetti". E' facile e veloce e ha un programma open source chiamato PixyMon. PixyMon è un'applicazione che gira su Windows, MacOS e Linux. Esso permette di vedere ciò che vede Pixy. Consente inoltre di configurare il modulo sensore, impostare la porta di uscita e di gestire le firme di colore. L'applicazione PixyMon comunica con il sensore PixyCam con un mini-cavo USB standard.

Caratteristiche

Il PixyCam è un sensore per immagini da implementare nel riconoscimento di oggetti con firmware completamente open source. Il sistema è basato sul processore NXP LPC4330 204 MHz Dual Core con sensore Omnivision OV9715 e lente standard M12, con angolo lente di 75° orizzontale, 47° verticale (Figura 1 e 2). In tabella 1 riportiamo alcune caratteristiche.

Categoria Pixy
Compatibilità Arduino, Raspberry Pi, Banana Pi, pcDuino
Interfacce UART, SPI, I2V, USB
Tensione ingresso max. 10 V
Tensione di lavoro 6 - 10 V
Tensione di lavoro 6V/DC, 10 V/DC
Tensione di ingresso min. 6 V
Uscite digitali UART seriale, SPI, I2C, USB, digitlae
Larghezza 53 mm
Altezza 50 mm
Memoria Flash 1 MB
Assorbimento di corrente 140 mA
Lunghezza 36 mm

Tabella 1: Caratteristiche del PixyCam

LPC4330 è un microcontrollore con core ARM Cortex-M 4 rivolto particolarmente per applicazioni Embedded, che include ARM Cortex-M0 coprocessor, fino a 264 kB di SRAM, SCTimer/PWM, Serial General-Purpose I/O (SGPIO) interface, 2 high-speed  USB controllers, Ethernet, LCD e varie periferiche analogiche e digitali.

Figura 1: Pixy Cam

Figura 1: PixyCam

 

Figura 2: Pixy Cam, la board

Figura 2: PixyCam in dettaglio

Il microcontrollore (MCU) della NXP opera a frequenze fino a 204 MHz. L'ARM Cortex-M4 è un core a 32 bit che offre miglioramenti del sistema in termini energetici (low power), funzionalità di debug avanzate e un alto livello di integrazione. ARM Cortex-M4 utilizza un'architettura di Harvard con istruzioni e dati bus locali separati, nonché un terzo bus per le periferiche e una prefetch unit (Figura 3).

Figura 2: Schema a blocchi del microcontrollore NXP

Figura 3: Schema a blocchi del microcontrollore NXP LPC4330

Il sensore OV9715 offre una soluzione 720p video HD a 30/50 fotogrammi al secondo (fps), con tecnologia proprietaria della OminiVision ad alta sensibilità ideale per l'uso in telecamere di sicurezza e sorveglianza. Il sensore OV9715 1/4-inch fornisce full-frame con le immagini sub-campionati o finestrate 8-bit / 10-bit in formato RAW RGB tramite la porta video digitale, e con un controllo completo da parte dell'utente sulla qualità delle immagini, la formattazione e il trasferimento dei dati in uscita. OV9715 incorpora funzioni avanzate di elaborazione delle immagini, compreso il controllo di esposizione, bilanciamento del bianco, correzione lente e la correzione dei pixel difettosi, programmabile tramite l'interfaccia seriale bus di controllo della fotocamera (SCCB).  OV9715 è disponibile in un package CSP2 ed è in grado di funzionare in un intervallo di temperatura da -30 °C a + 85 °C (Figura 4).

Figura 3: Diagramma a blocchi del sensore immagine OminVision

Figura 4: Diagramma a blocchi del sensore immagine OminiVision

Il sensore PixyCam è dotato di un accessorio per il facile montaggio e per un controllo servo ottimale a due assi che ne facilita la gestione. L'accessorio Pixy Linker Kit supporta un servomotore a due assi, quest'ultimo attraverso la sua elettronica di controllo gestisce le operazioni di acquisizione immagine per il pilotaggio successivo di un sistema robotico (Figura 5).

Figura 4: Sensore Pixy cam con il suo supporto

Figura 5: Sensore PixyCam con il suo supporto

Conclusioni e considerazioni

Il sensore di immagine PixyCam di dimensioni circa 50 x 50 mm è un dispositivo di visione che può rapidamente essere programmato come "cerca oggetti" o "identifica oggetti", collegandosi direttamente ad Arduino e altri controller. Un ottimo impiego è quello della robotica per l'implementazione intelligente del riconoscimento oggetti, con conseguente azione del raccogliere un oggetto, inseguire una palla, localizzare una stazione di ricarica. Da implementare anche con altri moduli per migliorare l'identificazione della posizione attraverso soluzioni ad ultrasuoni. PixyCam elabora un intero frame immagine 640x400 ogni 1/50° di secondo (20 millisecondi), ottenendo così un aggiornamento completo delle posizioni di tutti gli oggetti rilevati ogni 20ms.

IL SENSORE VISIVO PIXY SAINT SMART E IL SUPPORTO PIXY LINKER KIT SONO DISPONIBILI A CATALOGO CONRAD CON SPEDIZIONE 24 H

 

 

5 Commenti

  1. Maurizio Di Paolo Emilio Maurizio 3 giugno 2016
  2. rodolfok 24 gennaio 2017

Scrivi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *