Raspberry Pi
Board Camera V1.3 ultimo aggiornamento 9 dicembre 2018 |
|
Sino dal lancio della scheda Raspberry Pi è presente un connettore, siglato S5, per la connessione di una telecamera con l'unità di elaborazione grafica, GPU (Graphics Processing Unit) presente all’interno del processore BCM2835: si tratta di un VideoCore tecnologia IV che consente applicazioni come riproduzione multimediali, trattamento d’immagini, riprese video, visione streaming, grafica e giochi 3D.
Unofficial guide to getting up
and running with the Raspberry Pi Camera
La connessione utilizza il
protocollo CSI - 2 che è uno standard utilizzato nella maggior parte dei
cellulari.
La connessione è estremamente veloce permettendo alla Raspberry Pi di inviare
immagini a 1080p di dimensioni (1920x1080 x10bpp ) a 30 fotogrammi al secondo, o
con risoluzione inferiore a frame rate più elevati.
Dopo la realizzazione di alcuni prototipi e, a seguito delle primi test di Compatibilità elettromagnetica (EMC ), si procedeva ad alcune modifiche al circuito approdando infine alla versione che è ora in vendita. Il circuito attuale riporta il numero di revisione 1.3.
Installiamo la camera board sulla Raspberry Pi
L'articolo "Installiamo la camera board sulla Raspberry Pi" è stato pubblicato il 6 novembre 2013 sul blog Elettronica Open Source"
Si sta sempre più diffondendo l’utilizzo della piccola scheda embedded Raspberry Pi e si moltiplicano le applicazioni che la vedono protagonista. In questo articolo, analizzeremo la Raspberry Pi Camera che permette alla Raspberry Pi di scattare foto sino a una risoluzione di 2592 x 1944, di realizzare dei video a una risoluzione massima di 1920 x 1080 x 10bpp a 30 fps, oppure con risoluzione inferiore sino a 90 fps.
PDF articolo "Installiamo la camera board sulla Raspberry Pi"
La camera board misura 25X20x9 mm e pesa solo 3 grammi.
Questo lo rende ideale per progetti come
telecamere di sicurezza nascoste, esperimenti con palloni sonda ad alta quota,
oppure come macchina fotografica a bordo di un robot.
La fotocamera è pienamente supportata dalla più recente versione del sistema
operativo di Raspberry Pi, il Raspbian.
Il sensore d’immagine montato sul modulo è il modello OV5647 della OmniVision da 5 megapixel CMOS con una lente a fuoco fisso, e presenta le seguenti caratteristiche:
dimensione matrice attiva: 2592 x 1944
dimensione del pixel: 1.4 μm x 1.4 μm
Alimentazione del core: 1,5 V
Alimentazione analogica: 2,6-3V
I/O: 1,7-3V
Dimensione lente: 1/4”
Formati d’uscita: 8-/10-bit RGB RAW output
Controllo automatico dell'esposizione (AEC)
Bilanciamento automatico del bianco (AWB)
Filtro automatico banda (ABF)
Rilevamento automatico luminosità 50/60 Hz
Calibrazione del livello di nero automatico (ABLC)
Digital porta video (DVP) Interfaccia uscita parallela
32 byte embedded one-time programmable (OTP) memory
La camera board è in grado di catturare le immagini così come il video ad alta definizione. Le fotografie vengono catturate ad una risoluzione di 2592 x 1944, mentre il video è supportato a 1080p a 30 fps, 720p a 60 FPS e VGA 640x480 a 60 o 90 FPS.
Purtroppo la camera board non è "plug and play" e occorre
eseguire alcuni passaggi preparatori prima di poter essere utilizzata con il
Raspberry Pi.
Quelli che seguono sono i passi che ho utilizzato, ma in rete se ne possono
trovare altri.
Il presupposto è quello di disporre di una versione del sistema operativo
Raspbian "Wheezy" che eventualmente può essere scaricato a questo link:
http://www.raspberrypi.org/downloads e installato su una scheda SD che sia di
almeno 4 GB di capacità.
Dopo l’avvio, se non appare la pagina di configurazione, si potrà digitare il
comando:
pi@raspberrypi ~ $ sudo raspi-config
Apparso il menu ci sono due opzioni che bisogna impostare
prima di iniziare l'installazione del software della fotocamera:
1 . Espandere il file system per riempire la scheda SD.
L’avvenuta espansione sarà confermata al successivo riavvio.
2 . Impostare la memoria divisa di destinare 128 Mbyte alla GPU.
3. Una volta completato l’operazione, occorrerà selezionare <Finish> e quindi selezionare Yes alla richiesta “Would you like to reboot now?” per riavviare la scheda Raspberry Pi
Nel caso aveste già una versione del sistema operativo,
conviene verificare la presenza di qualche aggiornamento, per fare questo si
digiterà il comando:
pi@raspberrypi ~ $ sudo apt-get update
Quindi si proseguirà con il comando:
pi@raspberrypi ~ $ sudo apt-get upgrade –y
L'aggiornamento potrebbe richiedere alcuni minuti per
completarsi.
Il prossimo passo sarà quello di aggiornare il firmware del Raspberry
Pi,permettendo di installare tutti i driver necessari per eseguire il modulo
telecamera.
I passi sono:
1 . L'installazione
del pacchetto git-core:
pi@raspberrypi ~ $ sudo apt- get install git-core –y
2 . Scarica il ' RPI -update ' script
pi @ raspberrypi ~ $ sudo wget http://goo.gl/1BOfJ -O / usr / bin / RPI -update
3 . Cambiare i permessi in scrittura del ' RPI - update' in
modo da poter eseguire
pi @ raspberrypi ~ $ sudo chmod +x / usr / bin / rpi –update
4 . Esegui script ' RPI - update' di aggiornare il firmware
del Raspberry Pi
pi @ raspberrypi ~ $ sudo rpi-update
( Questo richiederà diversi minuti per essere completato)
Occorre ora aggiornare il file di configurazione caricato
all’avvio del sistema operativo; per fare questo si può utilizzare il seguente
comando:
pi@raspberrypi ~ $ sudo nano /boot/config.txt
Che aprirà tramite un semplice elaboratore di testi il file
config.txt; in questo file dovremo aggiungere le seguenti due righe alla fine
del file :
start_file = start_x.elf
fixup_file = fixup_x.dat
Inoltre assicuratevi che la seguente riga sia presente all'interno del file
(questa linea dovrebbe essere stata aggiunta quando l' allocazione della memoria
della GPU è stato fissato a 128 mega) . Se così non fosse aggiungere la seguente
riga alla fine del file :
gpu_mem = 128
A questo punto l’installazione per il software della fotocamera può dirsi
completato.
Possiamo arrestare il sistema e passare al collegamento fisico del modulo
pi@raspberrypi ~ $ sudo shutdwn -h now
Passiamo ora ad installare fisicamente il modulo, la
confezione in cui è contenuta la telecamera contiene al suo interno una busta
antistatica, in quanto come molti altri componenti elettronici sono molto
sensibili all’elettricità statica.
Per questo motivo conviene maneggiare la scheda possibilmente dopo aver
scaricato a terra eventuali cariche, magari toccando il rubinetto di un lavello
o un termosifone
La telecamera è già dotata di un cavo a nastro già connesso al connettore della
telecamera.
Il collegamento è molto semplice in quanto si limita alla connessione del cavo
piatto al connettore posto in prossimità di quello RJ45
Se è ancora presente occorrerà rimuovere una piccola pellicola che protegge il
connettore.
A questo punto, rivolgendo il lato del cavo colorato di blu verso la il
connettore ethernet, si dovrà inserire completamente il cavo a nastro nello
slot, assicurandosi che sia dritto, premendo delicatamente verso il basso sino
ad agganciarlo in posizione.
Sotto il video che mostra visivamente come
effettuare le connessioni.
E’ possibile eventualmente realizzarsi un proprio supporto per mantenere in posizione il modulo camera,oppure acquistarne uno, che può essere trovato in rete.
Utilizzo del software della fotocamera
Una volta che
il computer Raspberry Pi è stato riavviato, è possibile accedere al software
della fotocamera per scattare fotografie o registrare video.
Per l’elenco dei vari comandi disponibili è presente l'aiuto in linea che mostra
tutte le varie opzioni disponibili: per richiamarlo è sufficiente digitare il
comando senza opzioni.
pi@raspberrypi ~ $ raspistill
oppurepi@raspberrypi ~ $ raspivid
Potete ora provare ad effettuare una semplice fotografia
(risoluzione 2592x1944) tramite il comando, durante le operazioni saranno
mostrate delle informazioni sulle caratteristiche dell’immagine.
pi@raspberrypi ~ $ raspistill -v –o test.jpg
Durante l’operazione, il piccolo led rosso presente sulla scheda, si accenderà
segnalando il suo funzionamento: assicurarsi che il suo orientamento sia in
alto, con cavo in basso, in caso contrario l’immagina apparirà invertita.
Per registrare un filmato, considerando che conterrà solo immagini video HD
senza audio occorre digitare
pi@raspberrypi ~ $ raspivid –o video.h264
viene creato un filmato della lunghezza di 5 secondi con una risoluzione di
1920x1080.
Un’altra possibilità data dal programma è quella di scattare delle foto in
sequenza, per esempio se digitiamo questo comando
pi@raspberrypi ~ $ raspistill -o immagine_%04d.jpg -tl 5000 -t 60000
Viene scattata una foto ogni 5 secondi (5000 millisecondi)
per 1 minuto (60000 millisecondi) creando una sequenza di 12 immagini.
Il comando "% 04d" si tradurrà in un numero di quattro cifre che appare in ogni
nome del file.
immagine_0001.jpg
immagine _0002.jpg
...
immagine _0011.jpg
immagine _0012.jpg
E’ possibile a questo punto creare una sequenza di immagini unendole con uno
specifico programma.
Un esempio può essere utilizzato "avconv". che è un convertitore di sorgenti
audio/video ma che può anche convertire tra frequenze di campionamento
arbitrarie e ridimensionare il video al volo con un filtro polifase di alta
qualità.
Maggiori informazioni al link https://libav.org/index.html
È’ possibile installare questa utile libreria con il
seguente comando:
pi@raspberrypi ~ $ sudo apt-get -y install Libav-tools
Per costruire il file video dalla sequenza con delle
immagini con una risoluzione di 1280 × 720 si può utilizzare il comando seguente
che crea un filmato “timelapse” di formato mp4:
pi@raspberrypi ~ $ avconv -r 10 -i immagini_%04d.jpg -r 10 -vcodec libx264
-crf 20 -g 15 -vf crop=2592:1458,scale=1280:720 timelapse.mp4
Anche in questo caso è possibile avere l’help del programma
digitando il comando
pi@raspberrypi ~ $ avconv -h
Elenco revisioni | |
09/12/2018 | Aggiornato pagina |
01/08/2013 | Emissione preliminare |