Come alimenti la fotocamera? c’è solo la batteria, oppure un alimentatore esterno?
In ambiente Linux se vogliamo pilotare da remoto una fotocamera possiamo utilizzare Gphoto2 oppure Digital Camera Remote Capture.
Con il primo, più generico, è possibile scaricare le foto dalla maggior parte delle fotocamere, tuttavia non tutte sono comandabili e su queste ultime non è detto che siano controllabili tutti gli aspetti.
Capture al contrario è scritto in modo specifico per la cattura remota delle immagini e funziona su un set abbastanza esteso di fotocamere Canon.
Non essendo integrato tra i pacchetti Ubuntu per provarlo occorre compilarlo.
Questi sono i passi che ho seguito sulla mia Linux Box.
Installare questi pacchetti:
sudo apt-get install libreadline-dev sudo apt-get install libusb-dev sudo apt-get install libgtk2.0-dev
Scaricare libptp2.
Una volta scaricato:
tar -xzvf libptp2-1.1.10.tar.gz cd libptp2-1.1.10 ./configure make sudo make install sudo ldconfig
A questo punto dovremmo avere tutti i prerequisiti per compilare e installare capture.
Dopo aver scaricato capture
tar -xzvf capture-1.0.4-cvs-20071123.tar.gz cd capture-1.0.4-cvs-20071123 make sudo make install sudo ldconfig
A questo punto se lanciate “capture” si aprirà uno shell interattivo tramite il quale è possibile comandare la fotocamera che avrete collegato al PC tramite cavetto USB.
Ricordate di dare il comando “start”, a questo punto potete controllare tutti gli aspetti della fotocamera e scattare delle foto con il comando “capture”.
Il comando “help” elenca tutti i comandi disponibili, “help <comando>” fornisce informazioni su quel comando.
capture> iso iso info: Current value = "50". capture> aperture aperture info: Current value = "4.0". capture> aperture 4.0 capture> aperture aperture info: Current value = "4.0". capture>
Gli stessi comandi possono essere dati via shell script.
Sto utilizzando correntemente capture per scattare delle foto al cielo su Meteo Valle Muricana.
La fotocamera, una Canon PowerShot A520, viene pilotata da uno script che provvede anche ad adattare le impostazioni di scatto al giorno o alla notte.
Per sapere se è giorno o notte viene utilizzato un semplice script php che ho chiamato “dayornight.php“.
fabrizio@fabrizio-laptop:~/scripts/canon$ cat dayornight.php
<?php
date_default_timezone_set('Europe/Rome');
$uT=time();
$sun_info = date_sun_info($uT, 42.01,12.47);
$sunrise = $sun_info['civil_twilight_begin'];
$sunset = $sun_info['civil_twilight_end'];
if ($uT>$sunrise && $uT<$sunset) echo "Day"; else echo "Night";
?>
La scelta del php è dovuta al fatto che è presente già a costo 0 la funzione date_sun_info che, data la posizione geografica di una località ne calcola, oltre che l'alba e il tramonto, il crepuscolo civile, nautico ed astronomico.
Io ho usato gli orari di crepuscolo civile per cambiare la modalità di scatto.
Lo script si lancia con il comando:
php dayornight.php
Chiaramente occorre cambiare la latitudine e la longitudine mettendo quella del posto dove è installata la fotocamera che nel mio caso è Roma Nord.
Il prerequisito è l'aver installato php5-cli
sudo apt-get install php5-cli
A questo punto uno script in crontab provvede, ogni 5 minuti, a scattare la foto e a caricarla su un server.
Eccone una parte:
#/bin/bash
capture aperture
if [ $? != '0' ]; then
rm -f cameradayornight.txt
capture start
if [ $? != '0' ]; then
echo "capture failure"
exit 1
fi
capture 'size large'
capture 'zoom 0'
fi
dayornight=$(php dayornight.php)
if [ -e cameradayornight.txt ]; then
cameradayornight=$(cat cameradayornight.txt)
else
cameradayornight='Undefined'
fi
echo "DayOrNight: $dayornight"
echo "CameraDayOrNight: $cameradayornight"
if [ "$dayornight" != "$cameradayornight" ]; then
#switch mode
if [ "$dayornight" = "Day" ]; then
echo "Switching to day mode"
capture 'qual fine'
capture 'shutter 1/125'
capture 'tv/av program'
else
echo "Switching to night mode"
capture 'tv/av manual'
capture 'shutter 15"'
capture 'aperture 4.0'
capture 'qual normal'
fi
fi
echo -n $dayornight > cameradayornight.txt
#
# now capture the image
capture 'capture /home/helios/scripts/canon/latest.jpg'
if [ $? != '0' ]; then
echo "capture failure"
capture quit
exit 1
fi
#
# do something with image ......
Di giorno si usa la modalità auto, di notte manuale, esposizione di 15 secondi e apertura f/4.0.
Stai leggendo “ Comandare una fotocamera Canon con Capture ”, un post di Fabrizio Zellini
Come alimenti la fotocamera? c’è solo la batteria, oppure un alimentatore esterno?
@lucapost: con un alimentatore esterno
XHTML: Puoi usare questi tag: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
2 Commenti
commenta | feed commenti [?] | trackback uri [?]