Passaggio Automatico Giorno/Notte con GPhoto2
Per fare in modo che il nostro "Muletto" sappia gli oari delle effemeridi, necessari per stabilire il passaggio dalla modalità diurna a quella notturna dobbiamo prima di tutto far creare a wview un file .htm con all'interno gli orari delle effemeridi.
Accediamo da terminale e spostiamoci nella cartella dove sono contenuti i template html che si trova normalmente in /etc/wview/ oppure in /user/local/etc/wview
Digitiamo:
cd /etc/wview/html nano luce.htx
Entrati nell'editor scriviamo:
<br> <!--civilriseTime--><br> <!--civilsetTime--><br>
Salviamo ora il file con CTRL+O e premiamo invio e usciamo dall'editor nano con CTRL+X
Andiamo ora a modificare il file html-templates.conf per far generare a wview il file luce.htm.
Spostiamoci nella cartella /etc/wview/ (o dove si trova il nostro file html-templates.conf) editiamo il file con nano e aggiungiamo una riga con scritto luce.htx, come mostrato nell'immagine qui sotto:
Registriamo il file con CTRL+O e usciamo dall'editor Nano con CTRL+X
Riavviamo wview in modo da far generare il file digitando
/etc/init.d/wview start
Spostiamoci ora nella cartella dove sono contenuti gli script bash della nostra webcam. Negli altri esempi li avevamo posizionati in /var/www/
e creiamo due script diversi, il primo con le impostazioni di scatto diurne che chiameremo scattogiorno.sh e l'altro con le impostazioni per lo scatto notturne che chiameremo scattonotte.sh
Digitiamo:
cd /var/www nano scattogiorno.sh
E incolliamo il testo seguente che è valido per un Canon A520 collegata alla porta USB 001,005 - Per verificare la nostra fotocamera a quale porta USB è collegata dobbiamo digitare
gphoto2 --auto-detect
e modificare lo script inserendo la porta USB corretta. Per altri tipi di fotocamere dobbiamo adattare i comandi in base all'output del comando gphoto2 --list-config
gphoto2 --camera "Canon PowerShot A520 (PTP mode)" --port usb:001,005 --set-config canonimgsize=2 --set-config canonimgquality=1 --set-config iso=0 --set-config whitebalance=0 --set-config photoeffect=1 --set-config shootingmode=0 --capture-image-and-download --force-overwrite --filename webcam.jpg
Salviamo lo script appena creato con CTRL+O e usciamo dall'editor con CTRL+X
Creiamo ora lo script per lo scatto in modalità notturna digitando
nano scattonotte.sh
e incolliamo
gphoto2 --camera "Canon PowerShot A520 (PTP mode)" --port usb:001,005 --set-config canonimgsize=2 --set-config canonimgquality=1 --set-config iso=1 --set-config whitebalance=0 --set-config shootingmode=3 --set-config shutterspeed=3 --set-config aperture=0 --capture-image-and-download --force-overwrite --filename webcam.jpg
Salviamolo come abbiamo fatto precedentemente (CTRL+O e poi CTRL+X)
rendiamo gli script eseguibili digitando i comandi
chmod 755 scattogiorno.sh chmod 755 scattonotte.sh
Ora andiamo a creare uno script che in base all'ora in cui viene eseguito sceglie se mandare in esecuzione lo script per lo scatto diurno o quello notturno, utilizzando il file luce.htm come riferimento.
Prima di tutto andiamo a creare un collegamento simbolico con il file luce.htm nella cartella dove sono inseriti gli script
ln -s /var/www/weather/luce.htm /var/www/luce.htm
Se non sappiamo dove si trova in locale il file luce.htm possiamo cercarlo con il comando find / -name luce.htm
Creiamo lo script scattoauto.sh digitando
nano scattoauto.sh
e incolliamo:
#!/bin/bash FILE=/var/www/luce.htm x=0 for utente in $(cut -d "<" -f1 $FILE) do let "x += 1" riga[$x]=$utente done alba=${riga[1]/:0/} tram=${riga[2]/:0/} alba=${alba/:/} tram=${tram/:/} a=${alba:0:2} b=${alba:2:2} c=${tram:0:2} d=${tram:2:2} g=0 if [ $b -lt 0 ] then let "a -= 1" let "b += 60" fi if [ $b -ge 0 ] && [ $b -le 9 ] then alba=$a$g$b else alba=$a$b fi if [ $d -ge 60 ] then let "c += 1" let "d -= 60" fi if [ $d -ge 0 ] && [ $d -le 9 ] then tram=$c$g$d else tram=$c$d fi echo $alba echo $tram ora=$(date +%H)$(date +%M) echo $ora if [ $ora -gt $alba ] && [ $ora -lt $tram ] then /var/www/./scattogiorno.sh echo "giorno" else /var/www/./scattonotte.sh echo "notte" fi touch webcam.jpg ncftpput -u utenteftp -p passwordftp -S .tmp ftp.miosito.it /cartella webcam.jpg exit 0
Le ultime righe per l'upload del file con le impostazioni di ncftp vanno personalizzate con i propri dati. Vedere al riguardo Installazione_Gphoto2
Rendiamo ora anche questo file eseguibile con chmod 755 scattoauto.sh
Per farlo eseguire ogni 5 minuti andiamo a modificare la crontab come descritto in I_comandi_in_Gphoto2