Jak si udělat vlastní fotopast

Vytvoř si vlastní fotopast. Poradíme jaké součástky budeš na fotopast potřebovat. Kompletní návod si přečti v článku na blogu.
 

Rozhodli jsme se postavit jednoduchou online fotopast, která na signál z PIR čidla pořídí fotku a tu následně pošle přes WiFi na Google disk. Snímky z této fotopasti budou tedy k dispozici ihned po pořízení a dostupné prakticky odkudkoli. Z toho vyplývá, že pro správné fungování je nutný signál WiFi a Google účet. Taková fotopast bude tedy vhodná k zabezpečení objektů, kde je tento signál dostupný.

Hardware který budeme potřebovat

Společnost LilyGo vyrábí zajímavé vývojové desky LILYGO® TTGO T-Camera ESP32 WROVER. Na desce je integrován dvoujádrový mikrokontroler ESP32-WROVER-B, 0,96“ I2C OLED displej s rozlišením 128×64, OV2640 2Mpx kamera, PIR senzor AS312, nabíjecí čip IP5306 pro možnost napájení z Li-Ion baterie a konektor pro připojení přídavných modulů komunikujících po sběrnici I2C. Obsahuje též USB-UART převodník pro datovou komunikaci a programování a dvě tlačítka – RESET a IO15(IO34), které lze využít ve vlastním programu. Modul existuje ve dvou variantách – s I2S mikrofonem a bez. Jinak se varianty liší jen vnitřním zapojením, rozložení součástek a konektorů je stejné.

Díky této desce kde máme prakticky vše v jednom nám zbývá vymyslet pouze napájení a zapouzdření do nějaké vhodné krabičky. Desku lze napájet buď z baterie, microUSB, nebo 5V na konektoru pro přídavné moduly. My v konečné konstrukci použijeme variantu s mikrofonem a napájení 5V z konektoru pro přídavné moduly, protože máme k dispozici trvalé napájení a nebudeme žádné přídavné moduly používat. Musíme ještě upozornit na trochu nepříjemný fakt u varianty s mikrofonem – tato varianta má z nějakého důvodu zapojeno PIR čidlo na jiný pin mikrokontroleru než varianta bez mikrofonu. Konkrétně na pin IO19. Na tomto pinu bohužel není možné zprovoznit probouzení mikrokontroleru ze spánku, a tak je tento modul v tomto případě vhodný jen pro napájení z trvalého zdroje.

Zapouzdření do krabičky si každý zpracuje podle svých možností a plánovaného umístění.

Připojíme desku USB kabelem do počítače a nainstalujeme ovladače USB převodníku CP2102. Jak na to si můžete přešít v článku o zapojení ovladače převodníku USB.

Software a programování Arduino

Programovat budeme ve vývojovém prostředí Arduino IDE. Jak jsme psali, tato varianta neumožňuje PIR čidlem probouzet mikrokontroler a tak použijeme testování signálu z PIR čidla za běhu programu.

Budeme potřebovat podporu pro vývojové desky ESP32 pro Arduino, knihovnu ESP8266 and ESP32 OLED driver for SSD1306 displays od ThingPulse a knihovnu arduino-base64.

Vytvoříme nový projekt a pojmenujeme ho např. fotopast. Knihovnu arduino-base64 rozbalíme a nakopírujeme soubory Base64.h a Base64.cpp do stejné složky se souborem projektu. Ve stejné složce vytvoříme soubor wifikeys.h a uložíme do něho následující dva řádky:

 Tím je příprava na samotné programování hotová. Nyní musíme na straně Googlu vytvořit skript, který nám přijme data obrázku z pasti a uloží ho na Google disk.

Přejdeme na stránku https://script.google.com/home a přihlásíme se do Google účtu. Potom vytvoříme nový skript klepnutím na tlačítko Nový projekt. Klepneme na název projektu, který je nyní automaticky pojmenován jako „Projekt bez názvu“ a pojmenujeme ho jako např. „Fotopast“.

V poli pro zadávání kódu vše smažeme a vložíme následující kód:

Uložíme! Potom klikneme vpravo nahoře na tlačítko „Implementovat“ a vybereme možnost „Nová implementace“. Jako typ implementace vybereme možnost „Webová aplikace“. V rozbalovacím poli „Kdo má přístup“ vybereme položku „Kdokoli“ a klepneme na tlačítko „Implementovat“. Na dalším okně si zkopírujeme „ID implementace“ a uložíme si ho do nějakého textového souboru. Toto ID budeme pak zadávat do kódu v Arduino IDE. Klepneme na tlačítko „Hotovo“ a máme hotovo.

 Do otevřeného souboru projektu v Arduino IDE vložíme následující kód:

V menu Nástroje  Vývojová deska vybereme ESP32 Arduino  ESP32 Wrover Module a v Nástroje  Port vybereme sériový port, na který se nám nainstaloval USB převodník desky. Např. COM3.

Klepnutím na tlačítko se šipkou doprava – Nahrát se provede kompilace programu a pokud proběhla bez chyb dojde k nahrání programu do desky.

Pokud vše proběhlo bez problémů, tak by deska měla po detekování pohybu PIR čidlem vyfotit obrázek a poslat jej na Google disk.

Zda vše probíhá v pořádku lze sledovat na sériové konzoli a na displeji. Na displeji se však nezobrazují všechny informace jako v sériové konzoli, ale pouze základní informace – Startuji, Připraven, Vyfoceno a posílám, Posláno/Neposláno.

Jak si někteří mohli povšimnout, tak se v textu nikde nepíše o provozu v noci. Jelikož vývojová deska nedisponuje žádným infračerveným přisvěcováním, je nutné pro noční provoz toto přisvěcování přidat zvlášť.