Obsah:

Otvírač garážových vrat Raspberry Pi: 5 kroků
Otvírač garážových vrat Raspberry Pi: 5 kroků

Video: Otvírač garážových vrat Raspberry Pi: 5 kroků

Video: Otvírač garážových vrat Raspberry Pi: 5 kroků
Video: Raspberry pi opens garage door 2024, Červenec
Anonim
Otvírač garážových vrat Raspberry Pi
Otvírač garážových vrat Raspberry Pi

Naše patnáctiletá klávesnice, která nám umožňuje otevřít garážová vrata, pomalu umírá, s několika tlačítky, která se téměř nezaregistrují, což našim dospívajícím (nebo psovodům) ztěžuje vstup do domu, když zapomněli klíč.

Místo toho, abych to vyměnil a skákal po obručích jeho přeprogramování, rozhodl jsem se jít trochu více do špičkové technologie a nahradit to něčím, co k používání vyžadovalo pouze přístup k naší wifi a telefonu.

Použil jsem Pi Zero Wireless a 2kanálové relé, které mi zbylo z jiného projektu, což mi umožňuje ovládat jak dveře, tak světla zabudovaná v otvírači garážových vrat. Protože jsem kolem sběrného prachu ležel starý/náhradní USB fotoaparát, použil jsem to místo PiCamu, ale to bylo jen z pohodlí. To by fungovalo dobře s jakoukoli podporovanou kamerou - na mém není nic zvláštního, jen to podporoval Raspbian.

Na rozdíl od některých jiných podobných projektů jsem se snažil, aby to bylo co nejjednodušší, pomocí "standardních" softwarových balíků, které je docela snadné zprovoznit, pokud budete postupovat podle pokynů. Tato fotografie ukazuje moji konečnou (vůbec ne hezkou, ale je to moje garáž) instalaci, včetně Pi, reléového modulu a USB webové kamery namířené na dveře. Neexistuje žádný konkrétní důvod pro použití Pi Zero - jakýkoli Pi by to udělal, pokud jej můžete připojit k vaší vnitřní síti a wifi to usnadňuje.

Krok 1: Připojení k existujícímu ovládacímu panelu

Připojení ke stávajícímu ovládacímu panelu
Připojení ke stávajícímu ovládacímu panelu

Za prvé, VAŠE MOHOU BÝT JINÉ! Ten můj má jediný pár vodičů, které vedou od otvírače garážových vrat k ovládacímu panelu na zdi. Jelikož existují pouze dva vodiče, které při testování vypadaly na přibližně 18 voltů, byl jsem nejprve trochu zmatený z toho, jak přesně tato věc může ovládat více funkcí. MYSLÍM SI, že každé momentální tlačítko jednoduše dokončí obvod, ale s různými úrovněmi odporu. Poté hlavní jednotka může přečíst tento odpor prostřednictvím různých poklesů napětí a provést správnou akci. Na ničem z toho však nezáleží, pokud se nepokoušíte zcela vyměnit řídicí jednotku za Pi. Nejste si jisti, proč byste to chtěli dělat, protože je hezké mít stále fyzickou jednotku na místě.

AAAAAnnnyway, vše, co musíte udělat, je replikovat různá stisknutí tlačítek připojením momentálních spínačů na desce plošných spojů k vašemu reléovému modulu. Toto bylo jediné pájení, které jsem musel udělat, a podložky na DPS byly dost velké, takže to bylo docela jednoduché. Nechte tyto dráty prozatím dlouho, protože je mnohem snazší zkrátit drát, než jej později prodloužit, pokud nemáte kolem sebe položená drátěná nosítka ACME, ale jsou poměrně vzácná.

Krok 2: Zapojení reléové desky

Zapojení reléové desky
Zapojení reléové desky
Zapojení reléové desky
Zapojení reléové desky

Tady není moc co říct, prostě vše propojte jako na obrázcích. Na 2-reléovém modulu Sainsmart musí být piny JC-VCC a VCC propojeny dohromady, pokud pro ně nechcete použít zcela oddělené napájení, ale pro toto použití je to přehnané. Připojte GND ke kolíku Pi GND, VCC k 5v pinu a IN1 a IN2 k jakýmkoli kolíkům GPIO, které chcete použít. Vzhledem k tomu, že je budete používat pouze jako přepínače VYSOKÉ/NÍZKÉ, nezáleží na tom, jaké.

Krok 3: Instalace softwaru

Instalace softwaru
Instalace softwaru

Toto je pravděpodobně časově nejnáročnější krok, protože budete chvíli sledovat stahování a instalaci věcí. Když jsou některé z těchto věcí nainstalovány, sledujte YouTube nebo něco podobného.

Nebudu vysvětlovat, jak nainstalovat Raspbian. Pokud ještě nevíte, jak na to, možná si nejdřív najděte na Googlu nějaký návod typu „ahoj svět“. V každém případě je pravděpodobně nejlepší použít novou instalaci Raspbian Lite. Pro tento projekt není potřeba gui a je to jen extra režie. raspberrypi.org vás tímto procesem může provést.

Povolte SSH a (chcete -li) buď nakonfigurujte pro svůj Pi statickou IP adresu (opět existuje několik návodů, jak to udělat, které napsali lepší autoři než já), nebo ještě lépe nakonfigurujte router/server DHCP přiřadit vašemu Pi statickou IP.

Pokud chcete pěknou, snadno instalovatelnou a používanou videoslužbu, jděte a nainstalujte MotionEye. Je to pravděpodobně přehnané, ale je to jedna z instalací, která pokaždé „prostě funguje“a má pěkné snadno použitelné webové rozhraní. Podívejte se zde:

github.com/ccrisan/motioneye/wiki/Install-… Postupujte podle těchto pokynů pomocí sudo před každým příkazem a budete mít nastaveno pěkné video streamer. Není nutné mít video stream, pokud vám jde jen o to, abyste otevřeli dveře, když to vidíte, ale je příjemné mít zpětnou vazbu.

Jakmile máte nainstalovanou Motioneye, navštivte https:// YourIPAddress: 8765 a přihlaste se pomocí uživatelského jména „admin“a prázdného hesla. Pravděpodobně budete muset přidat kameru, která by měla opět „jen fungovat“a přesahovat rámec těchto pokynů.

Zatímco jste přihlášeni jako administrátor, klikněte na přepínač „Pokročilá nastavení“a poté nastavte možnosti videa - pro své video jsem použil 320 x 240, protože mi více záleží na rychlejších aktualizacích než na kvalitě, protože jsem to opravdu chtěl jen vidět dveře byly otevřené nebo ne, a nepotřebovali jste číst čísla poštovních schránek přes ulici.

V oblasti nastavení „Streamování videa“klikněte na odkaz „URL pro streamování“a poznamenejte si adresu, kterou vám představuje. Budete to potřebovat později, pokud plánujete nastavení rozhraní stejným způsobem jako já.

Piny GPIO můžete ovládat několika způsoby. Pro tento projekt jsem použil WiringPi, k jeho instalaci použijte pokyny na webu:

wiringpi.com/download-and-install/

Nebo na svém Pi jednoduše zadejte následující příkazy:

wget https://lion.drogon.net/wiringpi-2.50-1.debsudo dpkg -i wiringpi-2.50-1.deb gpio -v gpio readall

Tím byste měli získat seznam toho, co se děje s vašimi piny GPIO.

Pokud používáte piny 4 a 17 (ve schématu číslování BCM), můžete otestovat svá připojení pomocí následujících příkazů. Všimněte si, že nastavením LOW LOW aktivujete relé, pokud používáte tento modul Sainsmart. Váš může být jiný a budete se tomu muset přizpůsobit. Při spouštění těchto příkazů byste měli slyšet cvaknutí relé a LED diody by se měly rozsvítit.

gpio -g režim 17 out

gpio -g zápis 17 0 gpio -g zápis 1 1 gpio -g režim 4 výstup gpio -g zápis 4 0 gpio -g zápis 4 1

Dobře, nyní můžeme přejít k vytváření uživatelského rozhraní.

Krok 4: Vytvoření rozhraní

Vytváření rozhraní
Vytváření rozhraní

Použil jsem apache a PHP. Pěkné a jednoduché, nic moc efektního. Ještě jednou to bylo lépe vysvětleno jinde, takže postupujte podle pokynů zde:

www.raspberrypi.org/documentation/remote-a…

"Kořen" vašeho webového serveru je ve výchozím nastavení na/var/www/html/s výchozím indexem.html, který vám poskytne informace o vašem webovém serveru. Budete nahrazovat tento index.html, takže jej můžete buď odstranit, nebo přejmenovat na něco jiného, například index.copy. Také jsem z uživatele „pi“udělal vlastníka adresáře html, jen abych byl líný ohledně oprávnění. Nakonec jsem vytvořil adresář pro ukládání mých obrázků, kterých jsou dva. Jeden, který je jen hloupou zpětnou vazbou, že bylo stisknuto tlačítko, a druhý, který lze použít pro ikonu na domovské obrazovce telefonu.

pi@garagedoor: ~ $ cd/var/www/html/

pi@garagedoor:/var/www/html $ sudo chown pi.pi@garagedoor:/var/www/html $ mv index.html index.copy pi@garagedoor:/var/www/html $ mkdir images

Existuje nekonečné množství způsobů, jak vytvořit webové stránky, ale rozhodl jsem se, aby to bylo co nejjednodušší a nejjednodušší na základě MÉ sady dovedností. Proto PHP, protože to znám. Pokud jste guru pythonu nebo jiný skriptovací jazyk, použijte jej.

Vytvořil jsem stránku „kontejner“index.html, která ve skutečnosti obsahuje dva rámce iframe, které vykonávají veškerou práci. Jeden z rámců iframe obsahuje tlačítka/odkazy, které ve skutečnosti spouštějí relé prostřednictvím GPIO, a další prvek iframe, který zobrazuje video. Obsahuje také odkazy na obrázek ve formátu.png, který lze použít jako ikonu domovské obrazovky telefonu.

Iframe index.html obsahující tlačítka má jako svůj obsah soubor buttons.html. (vtipné, jak to funguje, co?) Oba odkazy v button.html vedou na action.php s jedinečnou hodnotou proměnné GET. Na základě předané hodnoty action.php buď aktivuje dveře nebo tlačítko osvětlení. HTML a PHP kód můžete získat z mého github:

Umístěte všechny HTML a PHP do kořenového adresáře (/var/www/html/), podle potřeby aktualizujte kód názvem obrázku, který možná používáte pro potvrzení stisknutí tlačítka, a adresou vašeho video streamu. Pamatujete si, když jsem vám v předchozím kroku řekl, že to budete potřebovat?

Krok 5: Vyzkoušejte to

Dobře, teď, když máte vše zapojené a nainstalované, vše funguje perfektně na první pokus, že? Bonbón!

Doporučuje: