Tartalomjegyzék:

Raspberry Pi garázskapu nyitó: 5 lépés
Raspberry Pi garázskapu nyitó: 5 lépés

Videó: Raspberry Pi garázskapu nyitó: 5 lépés

Videó: Raspberry Pi garázskapu nyitó: 5 lépés
Videó: Raspberry pi opens garage door 2024, Július
Anonim
Raspberry Pi garázskapu -nyitó
Raspberry Pi garázskapu -nyitó

Tizenöt éves billentyűzetünk, amely lehetővé teszi, hogy kinyissuk a garázskaput, lassan haldoklik, több gombbal, amelyek alig regisztrálnak, ami megnehezíti a tizenévesek (vagy kutyafogók) bejutását a házba, amikor elfelejtik a kulcsukat.

Ahelyett, hogy kicseréltem volna, és átugrottam volna az újraprogramozás karikáin, úgy döntöttem, hogy egy kicsit csúcstechnológiát választok, és lecserélem valamire, aminek a használatához csak a wifi -hez és a telefonhoz kell hozzáférni.

Egy Pi Zero Wireless-t és egy 2 csatornás relét használtam, amit egy másik projektből hagytam, ami lehetővé teszi, hogy vezéreljem az ajtót és a garázskapu-nyitóba épített lámpákat. Mivel egy régi/tartalék USB -kamerám feküdt a porgyűjtés körül, ezt használtam a PiCam helyett, de ez csak a kényelem miatt volt. Ez minden támogatott kamerával tökéletesen működne - az enyémben nincs semmi különös, csak a Raspbian támogatta.

Más hasonló projektekkel ellentétben megpróbáltam a lehető legegyszerűbbé tenni, "szabványos" szoftvercsomagokat használva, amelyek meglehetősen könnyen üzembe helyezhetők, ha követi az utasításokat. Ez a fotó az utolsó (egyáltalán nem szép, de ez a garázsom) telepítést mutatja, beleértve a Pi -t, a relé modult és az ajtóra mutató USB webkamerát. Nincs konkrét ok a Pi Zero használatára - bármelyik Pi megtenné, ha csatlakoztatná a belső hálózatához, és a wifi megkönnyíti ezt.

1. lépés: Csatlakozás a meglévő vezérlőpulthoz

Csatlakozás a meglévő vezérlőpulthoz
Csatlakozás a meglévő vezérlőpulthoz

Először is, a tied lehet más! Az enyémben egyetlen vezetékpár megy a garázskapu -nyitótól a falon található vezérlőpulthoz. Mivel csak két vezeték van, amelyek teszteléskor körülbelül 18 voltosnak tűntek, először kissé zavart voltam, hogy ez a dolog pontosan hogyan képes több funkció vezérlésére. SZERINTEM, hogy minden pillanatnyi gomb egyszerűen befejezi az áramkört, de különböző szintű ellenállással. Ezután a fő egység le tudja olvasni ezt az ellenállást különböző feszültségcsökkenéseken keresztül, és végre tudja hajtani a megfelelő műveletet. Ennek azonban semmi jelentősége, hacsak nem a vezérlőegységet akarja teljesen kicserélni a Pi -re. Nem tudom, miért akarja ezt megtenni, mivel jó, ha a fizikai egység még mindig a helyén van.

ÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁÁRÓRAHOZ: A PCB -n lévő pillanatnyi kapcsolókat a relémodulhoz kell csatlakoztatni. Ez volt az egyetlen forrasztás, amit meg kellett tennem, és a PCB -n lévő betétek elég nagyok voltak, tehát elég egyszerű. Hagyja sokáig ezeket a vezetékeket, mivel sokkal könnyebb lerövidíteni a vezetéket, mint később meghosszabbítani, kivéve, ha van ACME huzalhúzója, de ezek elég ritkák.

2. lépés: A relé tábla bekötése

A relé tábla bekötése
A relé tábla bekötése
A relé tábla bekötése
A relé tábla bekötése

Itt nincs túl sok mondanivaló, csak kapcsoljon össze mindent, mint a képeken. A Sainsmart 2 relés modulon a JC-VCC és a VCC csapokat össze kell kapcsolni, kivéve, ha teljesen külön tápegységet szeretne használni, de ehhez a használathoz ez túlzás. Csatlakoztassa a GND -t egy Pi GND érintkezőhöz, a VCC -t egy 5 voltos tűhöz, az IN1 és IN2 csatlakozást pedig a használni kívánt GPIO tűkhöz. Mivel csak HIGH/LOW kapcsolóként fogja használni őket, teljesen mindegy, hogy melyiket.

3. lépés: A szoftver telepítése

A szoftver telepítése
A szoftver telepítése

Ez valószínűleg a legidőigényesebb lépés, mivel egy ideig nézni fogja a letöltött és telepített dolgokat. Nézd meg a youtube -ot vagy ilyesmit, amíg ezek közül néhány telepítve van.

Nem fogom elmagyarázni a Raspbian telepítését. Ha még nem tudja, hogyan kell ezt megtenni, akkor először google -ban keresse meg a "hello world" típusú oktatóanyagokat. Mindenesetre valószínűleg a legjobb a Raspbian Lite friss telepítése. Ehhez a projekthez nincs szükség gui -ra, és ez csak többletköltség. A raspberrypi.org végigvezeti Önt ezen a folyamaton.

Engedélyezze az SSH -t, és (ha úgy tetszik) vagy állítson be egy statikus IP -t a Pi -hez (ismételten több oktatóanyag is található arról, hogyan kell ezt megtenni, nálam jobb szerzők írták), vagy még jobb, konfigurálja az útválasztót/DHCP -kiszolgálót hogy statikus IP -t rendeljen a Pi -hez.

Ha szép, könnyen telepíthető és használható videoszolgáltatást szeretne, akkor telepítse a MotionEye programot. Valószínűleg túlzás, de ez az egyik olyan telepítés, amely minden alkalommal "csak működik", és van egy könnyen használható webes felülete. Nézd meg itt:

github.com/ccrisan/motioneye/wiki/Install-… Kövesse ezeket az utasításokat a sudo használatával minden parancs előtt, és egy szép videó streamer lesz beállítva. Nem feltétlenül szükséges videó stream, ha csak az ajtót nyitja, amikor látja, de jó, ha visszajelzést kap.

A Motioneye telepítése után látogasson el a https:// YourIPAddress: 8765 oldalra, és jelentkezzen be az "admin" felhasználónévvel és egy üres jelszóval. Valószínűleg hozzá kell adnia egy kamerát, aminek megint csak "csak működnie" kell, és túlmutat ezen utasítások keretein.

Amíg rendszergazdaként van bejelentkezve, kattintson a "Speciális beállítások" kapcsolóra, majd állítsa be a videóbeállításokat - 320x240 -es méretet használtam a videómhoz, mert jobban érdekelnek a gyorsabb frissítések, mint a minőség, mivel tényleg csak látni akartam az ajtó nyitva volt -e vagy sem, és nem kell olvasni a postafiók számát az utca túloldalán.

A "Video Streaming" beállítási területen kattintson a "Streaming URL" linkre, és jegyezze fel az Ön által megadott címet. Szüksége lesz rá később, ha az Interfészt úgy kívánja beállítani, mint én.

A GPIO csapok vezérlésének több módja is van. Ehhez a projekthez a WiringPi -t használtam, a telepítéséhez használja a webhelyen található utasításokat:

wiringpi.com/download-and-install/

Vagy csak adja ki a következő parancsokat a Pi -n:

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

Ennek listát kell adnia arról, hogy mi történik a GPIO csapokkal.

Ha a 4. és 17. tüskét használja (a BCM számozási sémában), akkor a következő parancsokkal tesztelheti kapcsolatait. Ne feledje, hogy a LOW érintkező beállítása aktiválja a reléket, ha ezt a Sainsmart modult használja. A tied lehet más, és ehhez igazodnod kell. Ezen parancsok futtatásakor hallani kell a relék kattanását, és a LED -eknek világítaniuk kell.

gpio -g mód 17 kimenet

gpio -g write 17 0 gpio -g write 1 1 gpio -g mode 4 out gpio -g write 4 0 gpio -g write 4 1

Rendben, most áttérhetünk a felhasználói felület létrehozására.

4. lépés: Az interfész elkészítése

Az interfész elkészítése
Az interfész elkészítése

Apache -t és PHP -t használtam. Szép és egyszerű, semmi különös. Ismét máshol már jobban kifejtettük, ezért kövesse az itt található utasításokat:

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

A webszerver "gyökere" alapértelmezés szerint a/var/www/html/, és egy alapértelmezett index.html, amely információt nyújt a webszerveréről. Lecseréli ezt az index.html fájlt, így törölheti vagy átnevezheti másra, például index.copy. A "pi" felhasználót is a html könyvtár tulajdonosává tettem, csak hogy lusta legyek az engedélyekkel kapcsolatban. Végül létrehoztam egy könyvtárat a képeim tárolására, amelyből kettő van. Az egyik csak ostoba visszajelzés, hogy megnyomtak egy gombot, a másik pedig egy ikon a telefon kezdőképernyőjén.

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

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

Végtelen sok módja van egy weboldal létrehozásának, de én úgy döntöttem, hogy a lehető legegyszerűbb és legegyszerűbb lesz, a MY skillset alapján. Ezért PHP, mivel ismerem. Ha python guru vagy más szkriptnyelv vagy, használd bátran.

Létrehoztam egy "konténer" index.html oldalt, amely valójában két iframe -et tartalmaz, amelyek elvégzik a munkát. Az egyik iframe tartalmazza azokat a gombokat/linkeket, amelyek ténylegesen kiváltják a reléket a GPIO -n keresztül, és egy másik iframe, amely megjeleníti a videót. Tartalmaz egy-p.webp

A gombokat tartalmazó index.html iframe tartalom tartalma a buttons.html fájl. (vicces, hogy ez működik, mi?) A button.html mindkét linkje az action.php fájlhoz vezet, egyedi GET változó értékkel. Az átadott érték alapján az action.php vagy elindítja az ajtót, vagy a világító gombot. A HTML és a PHP kódot a githubomból szerezheti be:

Helyezze el az összes HTML-t és PHP-t a gyökérkönyvtárban (/var/www/html/), szükség esetén frissítse a kódot a gomb megnyomására használt kép nevével és a videófolyam címével. Emlékszel, amikor az előző lépésben mondtam, hogy erre szükséged lesz?

5. lépés: Próbáld ki

OK, most, hogy mindent bekötött és telepített, az első próbálkozáskor minden tökéletesen működik, igaz? Édes!

Ajánlott: