První verze webkamery nefungovala zcela spolehlivě. Stávalo se, že Raspi sice žilo, ale síťové rozhraní bylo mrtvé a tak nefungoval ani upload na web…
Bohužel jsem nedokázal zjistit proč tomu tak bylo, někdy to vytuhlo třikrát během hodiny a někdy ani jednou za měsíc. Vždycky stačilo Raspberry restartovat a zase to jelo. Uvažoval jsem o chybě hardware (karta? Raspi?) nebo útoku zvenčí (kdo a proč?) nebo závadě v komunikaci s čidly. Fakt nevím. Až to nakonec v létě 2019 vytuhlo úplně a provoz se nedařilo obnovit ani po restartu. Stejně jsem měl v plánu pár věcí předělat, tak jsem se do toho pustil jakmile byla trocha času.
Hardware – Raspi a SD karta zůstaly totožné, Raspbian povýšil na verzi Stretch a místo tří samostatných senzorů jsem investoval tři stovky do čidla BME280, které slučuje snímač teploty, tlaku a vlhkosti do jednoho plošáku. Zkušební provoz na stole se jevil zcela bezproblémově a tak jsem to dal na střechu no a tam to běží doposud bezchybně, přestože BME280 bez jakékoliv ochrany pouze visí na drátech pod přesahem střechy. To ještě někdy dodělám, no 🙂
Proto aby vše fungovalo se musí kromě rozchození kamery a Raspi jako takového vytvořit ramdisk z části paměti RAM – do /etc/fstab doplnit řádek…
tmpfs /mnt/ramdisk/ tmpfs defaults,size=20m 0 0
Dále je nutné upravit skript dodávaný k čidlu BME280 doplněním řádku upravujícího výstup skriptu…
print "Teplota:",round(temperature,1),"C", " Tlak:",round(pressure,2),"hPa"," Vlhkost:", round(humidity,2),"%"
A má-li Raspi fungovat jako FTP klient, pak je nutné do čistého Raspbianu doinstalovat podporu ftp protokolu…
apt-get install ftp
Skript, který to celé řídí ve stanovených intervalech snímá fotku, vloží do ní údaje ze senzorů, resizuje ji do několika rozměrů podle potřeb mého webu a nakonec ji uploaduje do příslušného adresáře na web. Jediná větší změna spočívá v jiném způsobu zadávání přístupových údajů k FTP – nyní již není nutné využívat soubor .netrc
, protože přístupové údaje jsou uloženy přímo v těle skriptu. Proto aby to fungovalo i jinde je samozřejmě nutné upravit cesty ve skriptu, vytvořit pomocné adresáře a doplnit nějaké reálné údaje k FTP.
Automatické spouštění skriptu po startu Raspberry a přesměrování standardního i chybového výstupu do logovacího souboru jsem zapsal do /etc/rc.local…
/home/michal/prg/webka/kamera_ver18.sh >> /home/michal/prg/webka/log_kamera_std_error 2>&1 &
Pokud web běží na WordPressu, lze k zobrazení obrázků v adresáři pohodlně využít plugin Folder Gallery.